@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..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;
  }
}
.mb0 {
  margin-bottom: 0 !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;
}

* {
  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
==================================================== */
body {
  color: #555555;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 1.6rem;
  color: #555;
}
@media screen and (max-width: 834px) {
  body {
    font-size: 1.5rem;
  }
}

a {
  color: inherit;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (any-hover: hover) {
  a:hover {
    opacity: 0.5;
  }
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  a {
    display: inline-block;
  }
}
@media screen and (min-width: 835px) {
  a[href^=tel] {
    pointer-events: none;
  }
}
@media screen and (max-width: 834px) {
  a {
    -webkit-tap-highlight-color: transparent;
  }
}

.clearfix {
  *zoom: 1;
}
.clearfix:before {
  content: "";
  display: table;
}
.clearfix:after {
  clear: both;
  content: "";
  display: table;
}

/* ====================================================
ページネーション
==================================================== */
.wp-pagenavi {
  clear: both;
  margin-bottom: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
}

span.pages {
  display: none;
}

a.page.larger,
a.page.smaller {
  border: 1px solid #555;
  padding: 3px 5px;
  margin: 0 5px;
  font-size: 2rem;
  display: inline-block;
  width: 35px;
  height: 35px;
  border: none;
  text-align: center;
}
@media screen and (max-width: 834px) {
  a.page.larger,
  a.page.smaller {
    width: 22px;
    height: 35px;
  }
}

.wp-pagenavi span.extend {
  border: none;
}

.wp-pagenavi a.last,
.wp-pagenavi a.first {
  display: inline-block;
  width: 60px;
  height: 60px;
  border: 1px solid #2CA6E0;
  border-radius: 50%;
  position: relative;
  text-align: center;
  padding-top: 4px;
  font-size: 3rem;
  color: #2CA6E0;
}
@media screen and (max-width: 834px) {
  .wp-pagenavi a.last,
  .wp-pagenavi a.first {
    width: 30px;
    height: 30px;
    padding-top: 0px;
    font-size: 2rem;
    line-height: 22px;
  }
}

.wp-pagenavi a.last {
  margin: 0 0 0 5px;
}

.wp-pagenavi a.first {
  margin: 0 5px 0 0;
}

.wp-pagenavi span.current {
  font-weight: bold;
  background: #F19500;
  border: none;
  border-radius: 50%;
  padding: 2px 10px 6px;
  color: #fff;
  font-size: 2rem;
  width: 35px;
  height: 35px;
  display: inline-block;
  text-align: center;
}
@media screen and (max-width: 834px) {
  .wp-pagenavi span.current {
    width: 30px;
    height: 30px;
    padding: 0px 8px 6px;
  }
}

.wp-pagenavi a.nextpostslink,
.wp-pagenavi a.previouspostslink {
  display: inline-block;
  width: 60px;
  height: 60px;
  border: 1px solid #2CA6E0;
  border-radius: 50%;
  position: relative;
  text-align: center;
  padding-top: 14px;
  font-size: 2rem;
  color: #2CA6E0;
}
@media screen and (max-width: 834px) {
  .wp-pagenavi a.nextpostslink,
  .wp-pagenavi a.previouspostslink {
    width: 30px;
    height: 30px;
  }
}

.wp-pagenavi a.nextpostslink {
  margin: 0 0 0 30px;
}
@media screen and (max-width: 834px) {
  .wp-pagenavi a.nextpostslink {
    margin: 0 0 0 0;
  }
}

.wp-pagenavi a.previouspostslink {
  margin: 0 30px 0 0;
}
@media screen and (max-width: 834px) {
  .wp-pagenavi a.previouspostslink {
    margin: 0 0 0 0;
  }
}

.wp-pagenavi a.nextpostslink::after {
  content: "";
  position: absolute;
  width: 15px;
  height: 15px;
  border: solid #2ca6e0;
  border-width: 2px 2px 0 0;
  top: 50%;
  right: 25px;
  transform: translateY(-50%) rotate(45deg);
  transition: 0.3s ease;
}
@media screen and (max-width: 834px) {
  .wp-pagenavi a.nextpostslink::after {
    width: 6px;
    height: 6px;
    right: 11px;
  }
}

.wp-pagenavi a.previouspostslink::after {
  content: "";
  position: absolute;
  width: 15px;
  height: 15px;
  border: solid #2ca6e0;
  border-width: 2px 2px 0 0;
  top: 50%;
  left: 25px;
  transform: translateY(-50%) rotate(-135deg);
  transition: 0.3s ease;
}
@media screen and (max-width: 834px) {
  .wp-pagenavi a.previouspostslink::after {
    width: 6px;
    height: 6px;
    left: 11px;
  }
}

.wp-pagenavi a:hover,
.wp-pagenavi span.current {
  border-color: unset !important;
}

/* ====================================================
詳細ページ
==================================================== */
#page-details h2 {
  position: relative;
  color: #2ca6e0;
  font-weight: bold;
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.3333333333;
  margin: 80px auto 40px;
}
#page-details h2::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  background: #f19500;
  border-radius: 10px;
  bottom: -8px;
  left: 0;
}
#page-details h2 time {
  position: absolute;
  bottom: -40px;
  left: 0;
  display: block;
  font-size: 1.4rem;
  color: #555;
  font-weight: 400;
}
@media screen and (max-width: 834px) {
  #page-details h2 {
    font-size: 2.2rem;
    line-height: 1.5;
    margin: 60px auto 30px;
  }
}
#page-details h3 {
  position: relative;
  color: #2ca6e0;
  font-weight: 700;
  font-size: 2.6rem;
  line-height: 1.3461538462;
  padding-left: 12px;
  margin: 60px auto 30px;
}
@media screen and (max-width: 834px) {
  #page-details h3 {
    font-size: 2rem;
    line-height: 1.4;
    margin: 40px auto 20px;
  }
}
#page-details h3::before {
  content: "";
  position: absolute;
  width: 2px;
  height: 100%;
  background: #f19500;
  border-radius: 10px;
  top: 1px;
  left: 0;
}
#page-details h4 {
  color: #2ca6e0;
  font-weight: bold;
  font-size: 2.4rem;
  line-height: 1.375;
  padding-top: 15px;
  margin: 50px auto 20px;
}
@media screen and (max-width: 834px) {
  #page-details h4 {
    font-size: 1.8rem;
    line-height: 1.4444444444;
    padding-top: 0;
    margin: 30px auto 10px;
  }
}
#page-details h5 {
  color: #2ca6e0;
  font-weight: bold;
  font-size: 2rem;
  line-height: 1.375;
  padding-top: 15px;
  margin: 50px auto 20px;
}
@media screen and (max-width: 834px) {
  #page-details h5 {
    font-size: 1.6rem;
    line-height: 1.4444444444;
    padding-top: 0;
    margin: 30px auto 10px;
  }
}
#page-details ul {
  margin-bottom: 30px;
}
@media screen and (max-width: 834px) {
  #page-details ul {
    margin-bottom: 20px;
  }
}
#page-details ul li {
  position: relative;
  font-size: 1.6rem;
  line-height: 1.5;
  padding-left: 20px;
}
@media screen and (max-width: 834px) {
  #page-details ul li {
    line-height: 1.6875;
    padding-left: 20px;
  }
}
#page-details ul li::before {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  background: #2ca6e0;
  border-radius: 50%;
  top: 8px;
  left: 0;
}
#page-details ul li:last-child {
  margin-bottom: 20px;
}
#page-details ol {
  margin-bottom: 46px;
  counter-reset: my-sec-counter;
}
@media screen and (max-width: 834px) {
  #page-details ol {
    margin-bottom: 30px;
  }
}
#page-details ol li {
  position: relative;
  font-size: 1.6rem;
  line-height: 1.5;
  padding-left: 24px;
}
#page-details ol li::before {
  counter-increment: my-sec-counter;
  content: counter(my-sec-counter) ".";
  position: absolute;
  color: #2ca6e0;
  top: 0;
  left: 0;
}
#page-details ol li:last-child {
  margin-bottom: 15px;
}
@media screen and (max-width: 834px) {
  #page-details ol li:last-child {
    margin-bottom: 23px;
  }
}
#page-details b {
  font-weight: 700;
}
#page-details a {
  display: inline-block;
  color: #2ca6e0;
  text-decoration: underline;
}
#page-details a.c-btn__01 {
  text-decoration: unset;
}
#page-details a.c-btn__01:hover {
  color: #fff;
}
#page-details p {
  font-size: 1.6rem;
  word-break: break-all;
  line-height: 1.8;
}
@media screen and (max-width: 834px) {
  #page-details p {
    font-size: 1.5rem;
  }
}
#page-details p.terra_details_recipe_ttl {
  color: #F19500;
  font-weight: 700;
  font-size: 2.5rem;
  margin-bottom: 20px;
}
@media screen and (max-width: 834px) {
  #page-details p.terra_details_recipe_ttl {
    font-size: 2.2rem;
  }
}
#page-details table {
  width: 100%;
  table-layout: fixed;
}
#page-details table th {
  background: #1a5d7d;
  color: white;
  text-align: center;
  border: 1px solid #4b7b92;
  padding: 10px 19px;
}
#page-details table td {
  text-align: left;
  height: 50px;
  border: 1px solid #4b7b92;
  padding: 10px 19px;
  font-size: 1.5rem;
}
#page-details img {
  display: block;
}
#page-details img.alignleft {
  margin: 0 auto 20px 0;
}
#page-details img.alignright {
  margin: 0 0 20px auto;
}
#page-details img.aligncenter {
  display: block;
  margin: 0 auto;
}
#page-details .page-details_terra h2.mg_top_0 {
  margin: 0 auto 40px;
}
#page-details .page-details_terra h2:first-of-type {
  margin: 0 auto 40px;
}
#page-details .page-details_terra h3.mg_top_0 {
  margin: 0 auto 30px;
}
#page-details .page-details_terra h3:first-of-type {
  margin: 0 auto 30px;
}
#page-details .page-details_terra h4.mg_top_0 {
  margin: 0 auto 20px;
}
#page-details .page-details_terra h4:first-of-type {
  margin: 0 auto 20px;
}
#page-details .page-details_terra h5:first-of-type {
  margin: 0 auto 20px;
}
#page-details .page-details_terra a.no_deco {
  text-decoration: unset;
}
#page-details .page-details_terra a.terra_details_recipe_link {
  color: #F19500;
}
#page-details .page-details_terra a.terra_details_recipe_link:hover {
  color: #fff;
}
#page-details .page-details_terra.material_cost_link a {
  display: block;
  color: #2CA6E0;
}
#page-details .page-details_terra .details_flex_item h2:first-of-type {
  margin: 0 auto 40px;
}
#page-details .page-details_terra .details_flex_item h3:first-of-type {
  margin: 0 auto 30px;
}
#page-details .page-details_terra .details_flex_item h4:first-of-type {
  margin: 0 auto 20px;
}
#page-details .page-details_terra .details_flex_item h5:first-of-type {
  margin: 0 auto 20px;
}
#page-details .terra_details_recipe_txt h4:first-child {
  display: none;
}
#page-details .details_content .details_flex_item h2:first-of-type {
  margin: 0 auto 40px;
}
#page-details .details_content .details_flex_item h3:first-of-type {
  margin: 0 auto 30px;
}
#page-details .details_content .details_flex_item h4:first-of-type {
  margin: 0 auto 20px;
}
#page-details .details_content .details_flex_item h5:first-of-type {
  margin: 0 auto 20px;
}

.mg_top_0 {
  margin: 0;
}
.mg_top_10 {
  margin: 10px auto 0 !important;
}
.mg_top_20 {
  margin: 20px auto 0 !important;
}
.mg_top_30 {
  margin: 30px auto 0 !important;
}
.mg_top_40 {
  margin: 40px auto 0 !important;
}
.mg_top_50 {
  margin: 50px auto 0 !important;
}
.mg_top_60 {
  margin: 60px auto 0 !important;
}
.mg_top_70 {
  margin: 70px auto 0 !important;
}
.mg_top_80 {
  margin: 80px auto 0 !important;
}
.mg_top_90 {
  margin: 90px auto 0 !important;
}
.mg_top_100 {
  margin: 100px auto 0 !important;
}

.details_content {
  margin-top: 90px;
}

.accordion__title {
  color: #fff;
  font-size: 2.2rem;
  background-color: #2ca6e0;
  padding: 20px 50px 20px 15px;
  position: relative;
  z-index: 0;
  font-weight: 700;
  margin-top: 30px;
}
.accordion__title:first-child {
  margin-top: 0;
}
@media screen and (max-width: 834px) {
  .accordion__title {
    font-size: 1.8rem;
  }
}
.accordion__title::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  width: 8px;
  height: 8px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: translateY(-50%) rotate(45deg);
  transition: transform 0.3s ease;
}
.accordion__title.is-open::after {
  transform: translateY(-50%) rotate(-135deg);
}
.accordion__content {
  display: none;
  padding: 20px 15px 40px 15px;
  background-color: #f2f2f2;
  color: #555;
}

/* ====================================================
Layout
==================================================== */
.wrapper:not(#page-index) {
  padding-top: 183px;
}
@media screen and (max-width: 1024px) {
  .wrapper:not(#page-index) {
    padding-top: 87px;
  }
}
.wrapper_02 {
  padding-top: 260px;
}
@media screen and (max-width: 1024px) {
  .wrapper_02 {
    padding-top: 140px;
  }
}

.inner {
  display: block;
  max-width: 1230px;
  padding: 0 15px;
  margin: 0 auto;
}
.inner--980 {
  max-width: 1010px;
}

.breadcrumb {
  position: relative;
  background: white;
}
.breadcrumb .inner {
  max-width: 100%;
  padding: 0 48px 13px;
  margin-top: -16px;
}
@media screen and (max-width: 1024px) {
  .breadcrumb .inner {
    padding: 0 15px 8px;
    margin-top: -3px;
  }
}
.breadcrumb .inner > span {
  display: block;
  font-size: 1.2rem;
}
.breadcrumb .inner > span > span:first-child a {
  position: relative;
  width: 13px;
  height: 10px;
  background: url(../img/common/home.svg) center no-repeat;
  background-size: contain;
}
.breadcrumb .inner > span > span:first-child a::after {
  top: 3px;
  right: -13px;
}
.breadcrumb .inner > span a {
  position: relative;
  display: inline-block;
  margin-right: 23px;
}
.breadcrumb .inner > span a::after {
  content: "";
  position: absolute;
  width: 3px;
  height: 3px;
  border: solid #555555;
  border-width: 1px 1px 0 0;
  transform: rotate(45deg);
  top: 6px;
  right: -14px;
  pointer-events: none;
}

.mv-page {
  background: #1a5d7d;
  color: white;
  padding: 29px 0 28px;
}
@media screen and (max-width: 834px) {
  .mv-page {
    padding: 30px 0;
  }
}
.mv-page__ttl {
  font-weight: bold;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.4166666667;
}
@media screen and (min-width: 835px) {
  .mv-page__ttl {
    text-align: center;
    font-size: 28px;
    font-size: 2.8rem;
    line-height: 1.4285714286;
  }
}
@media screen and (max-width: 359px) {
  .mv-page__ttl {
    font-size: 2.2rem;
  }
}
.mv-page__ttl--02 {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.4166666667;
}
@media screen and (max-width: 359px) {
  .mv-page__ttl--02 {
    font-size: 2.2rem;
  }
}

.sec-template p:not(:last-child) {
  margin-bottom: 30px;
}
.sec-template .list-btn {
  margin: 60px auto;
}

.template-img {
  max-width: 800px;
  margin: 0 auto 30px;
}
.template-img img {
  width: 100%;
  border-radius: 20px;
}

.block-split {
  margin-bottom: 30px;
}
.block-split__item {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 30px 0;
}
.block-split__item:not(:last-child) {
  margin-bottom: 40px;
}
.block-split__ct {
  width: 47%;
}
@media screen and (max-width: 834px) {
  .block-split__ct {
    width: 100%;
  }
}
.block-split__img {
  position: relative;
  width: 50%;
}
@media screen and (max-width: 834px) {
  .block-split__img {
    width: 100%;
  }
}
.block-split__img::before {
  content: "";
  display: block;
  padding-bottom: 66.7346938776%;
}
.block-split__img img {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 20px;
  top: 0;
  left: 0;
}

blockquote {
  position: relative;
  background: #eaf8ff;
  padding: 27px 30px 30px 62px;
  border-radius: 20px;
  margin-bottom: 30px;
}
@media screen and (max-width: 834px) {
  blockquote {
    padding: 30px 30px 30px 43px;
  }
}
blockquote::before {
  content: "";
  position: absolute;
  width: 2px;
  height: calc(100% - 60px);
  background: #2ca6e0;
  border-radius: 10px;
  top: 30px;
  left: 30px;
}
@media screen and (max-width: 834px) {
  blockquote::before {
    left: 21px;
  }
}
blockquote h3 {
  color: #2ca6e0;
  font-weight: bold;
  font-size: 2.4rem;
  margin-bottom: 18px;
}
@media screen and (max-width: 834px) {
  blockquote h3 {
    font-size: 1.8rem;
    margin-bottom: 11px;
  }
}
blockquote p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6875;
}
@media screen and (max-width: 834px) {
  blockquote p {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.6666666667;
  }
}

.list-img {
  margin-bottom: 30px;
}
@media screen and (min-width: 641px) {
  .list-img {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin-bottom: 29px;
  }
}
.list-img__item {
  position: relative;
}
@media screen and (max-width: 640px) {
  .list-img__item:not(:last-child) {
    margin-bottom: 30px;
  }
}
.list-img__item::before {
  content: "";
  display: block;
  padding-bottom: 66.7368421053%;
}
.list-img__item img {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 20px;
  top: 0;
  left: 0;
}

.list-dot {
  margin-bottom: 30px;
}
@media screen and (max-width: 834px) {
  .list-dot {
    margin-bottom: 20px;
  }
}
.list-dot__item {
  position: relative;
  font-size: 1.6rem;
  line-height: 1.5;
  padding-left: 20px;
}
@media screen and (max-width: 834px) {
  .list-dot__item {
    line-height: 1.6875;
    padding-left: 20px;
  }
}
.list-dot__item:not(:last-child) {
  margin-bottom: 20px;
}
.list-dot__item::before {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  background: #2ca6e0;
  border-radius: 50%;
  top: 8px;
  left: 0;
}

.list-number {
  margin-bottom: 46px;
  counter-reset: my-sec-counter;
}
@media screen and (max-width: 834px) {
  .list-number {
    margin-bottom: 30px;
  }
}
.list-number__item {
  position: relative;
  font-size: 1.6rem;
  line-height: 1.5;
  padding-left: 24px;
}
@media screen and (max-width: 834px) {
  .list-number__item {
    line-height: 1.6875;
  }
}
.list-number__item:not(:last-child) {
  margin-bottom: 15px;
}
@media screen and (max-width: 834px) {
  .list-number__item:not(:last-child) {
    margin-bottom: 23px;
  }
}
.list-number__item::before {
  counter-increment: my-sec-counter;
  content: counter(my-sec-counter) ".";
  position: absolute;
  color: #2ca6e0;
  top: 0;
  left: 0;
}

.btn-link {
  display: inline-block;
  color: #2ca6e0;
  text-decoration: underline;
}

.block-table {
  margin-bottom: 29px;
}
@media screen and (max-width: 640px) {
  .block-table {
    overflow-x: scroll;
    margin-right: -15px;
    padding-right: 15px;
  }
}
.block-table table {
  width: 100%;
  table-layout: fixed;
}
@media screen and (max-width: 640px) {
  .block-table table {
    width: 976px;
  }
}
.block-table table th,
.block-table table td {
  text-align: center;
  border: 1px solid #4b7b92;
  padding: 10px 19px;
}
@media screen and (max-width: 1250px) {
  .block-table table th,
  .block-table table td {
    padding: 10px;
  }
}
@media screen and (max-width: 834px) {
  .block-table table th,
  .block-table table td {
    text-align: left;
    height: 49px;
    padding: 10px 10px 10px 19px;
  }
}
.block-table table th {
  background: #1a5d7d;
  color: white;
}
.block-table--2s table th {
  height: 50px;
}
@media screen and (max-width: 834px) {
  .block-table--2s table th {
    height: 48px;
  }
}
.block-table--2s table td:first-child {
  text-align: left;
}
@media screen and (max-width: 834px) {
  .block-table--2s table td {
    height: 54px;
  }
}
.block-table--2s table th:first-child,
.block-table--2s table td:first-child {
  width: 75%;
}
.block-table--2s table th:nth-child(2),
.block-table--2s table td:nth-child(2) {
  width: 25%;
}
.block-table--left table td {
  text-align: left;
  height: 49px;
}

@media screen and (min-width: 641px) {
  .block-step {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
  }
}
.block-step__item {
  background: #2ca6e0;
  color: white;
  font-weight: bold;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.5714285714;
  padding: 9px 15px 30px;
}
@media screen and (max-width: 834px) {
  .block-step__item {
    padding-top: 11px;
  }
}
.block-step__item:nth-child(even) {
  background: #f19500;
}
@media screen and (max-width: 640px) {
  .block-step__item:not(:last-child) {
    margin-bottom: 20px;
  }
}
.block-step__count {
  text-align: center;
  display: block;
  font-size: 5rem;
  opacity: 0.5;
  margin-bottom: 19px;
}
@media screen and (max-width: 834px) {
  .block-step__count {
    margin-bottom: 16px;
  }
}
.block-step__ttl {
  text-align: center;
  font-weight: bold;
  font-size: 2.5rem;
  letter-spacing: 0.1em;
  margin-bottom: 11px;
}

.list-info {
  margin-bottom: 155px;
}
@media screen and (max-width: 834px) {
  .list-info {
    margin-bottom: 106px;
  }
}
@media screen and (min-width: 641px) {
  .list-info {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 35px 31px;
  }
}
@media screen and (max-width: 640px) {
  .list-info__item:not(:last-child) {
    margin-bottom: 25px;
  }
}
.list-info__item a {
  position: relative;
  display: block;
  background: white;
  color: #2ca6e0;
  height: 100%;
  border: solid #2ca6e0;
  border-width: 0 1px 1px;
  border-radius: 20px;
  box-shadow: #2ca6e0 0 5px 0;
  font-weight: 500;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.6666666667;
  top: 0;
}
@media (any-hover: hover) {
  .list-info__item a:hover {
    opacity: 1;
    top: 5px;
    box-shadow: #2ca6e0 0 0 0;
  }
}
.list-info__item a:has(.list-info__ct-tag) {
  border-radius: 30px;
}
.list-info__item a:has(.list-info__ct-tag) .list-info__img img {
  border-radius: 30px 30px 0 0;
}
.list-info__item a p {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  max-height: 50px;
}
.list-info__img {
  position: relative;
  margin: 0 -1px;
}
.list-info__img::before {
  content: "";
  display: block;
  padding-bottom: 56.2091503268%;
}
.list-info__img img {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 20px 20px 0 0;
  top: 0;
  left: 0;
  object-fit: cover;
}
.list-info__ct {
  padding: 20px 14px 19px;
}
.list-info__ct-ttl {
  font-weight: bold;
  font-size: 1.8rem;
  margin: -5px 5px -3px;
}
@media screen and (max-width: 834px) {
  .list-info__ct-ttl {
    margin: -10px 5px -8px;
  }
}
.list-info__ct-tag {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 10px;
}
.list-info__ct-tag span {
  border: 1px solid #2ca6e0;
  border-radius: 20px;
  font-weight: 500;
  font-size: 1.2rem;
  padding: 1px 11px 2px;
}

.list-topics {
  margin-bottom: 80px;
}
@media screen and (max-width: 834px) {
  .list-topics {
    margin-bottom: 100px;
  }
}
@media screen and (min-width: 641px) {
  .list-topics {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 50px 31px;
  }
}
.list-topics__item a {
  position: relative;
  display: block;
  background: white;
  color: #333333;
  height: 100%;
  font-weight: 500;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.6666666667;
  top: 0;
}
@media screen and (max-width: 834px) {
  .list-topics__item a {
    line-height: 1.2;
    margin-bottom: 30px;
  }
}
@media (any-hover: hover) {
  .list-topics__item a:hover {
    opacity: 1;
  }
  .list-topics__item a:hover .list-topics__img img {
    transform: scale(1.05);
  }
}
.list-topics__item a time {
  display: block;
  font-weight: 400;
  font-size: 1.5rem;
  margin-bottom: 7px;
}
@media screen and (max-width: 834px) {
  .list-topics__item a time {
    margin-bottom: 10px;
  }
}
.list-topics__item a p {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  max-height: 50px;
}
.list-topics__img {
  position: relative;
  border-radius: 20px;
  margin-bottom: 11px;
  overflow: hidden;
}
@media screen and (max-width: 834px) {
  .list-topics__img {
    margin-bottom: 15px;
  }
}
.list-topics__img::before {
  content: "";
  display: block;
  padding-bottom: 59.8039215686%;
}
@media screen and (max-width: 834px) {
  .list-topics__img::before {
    padding-bottom: 56.231884058%;
  }
}
.list-topics__img img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  object-fit: cover;
  transition: 0.3s ease;
}

.list-intro {
  margin-bottom: 150px;
}
@media screen and (max-width: 834px) {
  .list-intro {
    margin-bottom: 100px;
  }
}
@media screen and (min-width: 641px) {
  .list-intro__item {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.list-intro__item:not(:last-child) {
  margin-bottom: 5px;
}
@media screen and (max-width: 834px) {
  .list-intro__item:not(:last-child) {
    margin-bottom: 10px;
  }
}
.list-intro__ttl {
  background: #2ca6e0;
  color: white;
  font-weight: bold;
  padding: 16px 20px 17px;
}
@media screen and (min-width: 641px) {
  .list-intro__ttl {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 282px;
    padding: 15px 30px;
  }
}
.list-intro__ct {
  background: #efefef;
  padding: 20px;
}
@media screen and (min-width: 641px) {
  .list-intro__ct {
    width: calc(100% - 282px);
  }
}

.list-line {
  margin-bottom: 122px;
}
@media screen and (max-width: 834px) {
  .list-line {
    margin-bottom: 71px;
  }
}
.list-line__item {
  border-top: 1px solid #a5ddf8;
  padding: 25px 15px 30px;
}
@media screen and (min-width: 641px) {
  .list-line__item {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 29px 0 24px;
  }
}
@media screen and (max-width: 640px) {
  .list-line__item {
    line-height: 1.6875;
  }
}
.list-line__item:last-child {
  border-bottom: 1px solid #a5ddf8;
}
.list-line__ttl {
  color: #2ca6e0;
  font-weight: bold;
  letter-spacing: 0.13em;
}
@media screen and (min-width: 641px) {
  .list-line__ttl {
    width: 285px;
    padding: 0 60px;
  }
}
@media screen and (max-width: 640px) {
  .list-line__ttl {
    margin-bottom: 11px;
  }
}
@media screen and (min-width: 641px) {
  .list-line__ct {
    width: calc(100% - 285px);
  }
}

.list-news {
  margin-bottom: 151px;
}
@media screen and (max-width: 834px) {
  .list-news {
    margin-bottom: 98px;
  }
}
.list-news__item {
  border-bottom: 2px solid #a5ddf8;
}
.list-news__item a {
  position: relative;
  display: block;
  font-weight: 500;
  font-size: 1.8rem;
  padding: 25px 0 29px;
}
@media screen and (max-width: 834px) {
  .list-news__item a {
    font-size: 1.5rem;
    line-height: 1.54;
  }
}
@media screen and (min-width: 641px) {
  .list-news__item a {
    padding: 30px 20px 30px 130px;
  }
  .list-news__item a p {
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    max-height: 30px;
  }
}
.list-news__item a time {
  display: block;
  font-weight: 400;
  margin-bottom: 7px;
}
@media screen and (min-width: 641px) {
  .list-news__item a time {
    position: absolute;
    width: 100px;
    top: 31px;
    left: 0;
  }
}

.block-timeline {
  margin-bottom: 154px;
}
@media screen and (max-width: 834px) {
  .block-timeline {
    margin-bottom: 104px;
  }
}
.block-timeline__item {
  position: relative;
  padding: 0 0 43px 262px;
}
@media screen and (max-width: 640px) {
  .block-timeline__item {
    padding: 0 2px 37px 31px;
  }
}
.block-timeline__item::before {
  content: "";
  position: absolute;
  width: 2px;
  height: 100%;
  background: #2ca6e0;
  border-radius: 10px;
  top: 5px;
  left: 183px;
}
@media screen and (max-width: 640px) {
  .block-timeline__item::before {
    left: 7px;
  }
}
.block-timeline__item::after {
  content: "";
  position: absolute;
  width: 16px;
  height: 16px;
  background: #2ca6e0;
  border-radius: 50%;
  top: 0;
  left: 176px;
}
@media screen and (max-width: 640px) {
  .block-timeline__item::after {
    top: 6px;
    left: 0;
  }
}
.block-timeline__item:first-child::after {
  top: 5px;
}
.block-timeline__item:first-child .block-timeline__time {
  top: -2px;
}
.block-timeline__item:last-child {
  padding-bottom: 58px;
}
@media screen and (max-width: 640px) {
  .block-timeline__item:last-child {
    padding-bottom: 84px;
  }
}
.block-timeline__time {
  color: #2ca6e0;
  font-weight: bold;
  font-size: 2rem;
  margin-bottom: 8px;
}
@media screen and (min-width: 641px) {
  .block-timeline__time {
    position: absolute;
    width: 150px;
    top: -6px;
    left: 0;
  }
}
.block-timeline__ct {
  font-size: 1.5rem;
  line-height: 1.52;
}
.block-timeline__ct-img {
  margin-top: 32px;
}
@media screen and (max-width: 640px) {
  .block-timeline__ct-img {
    margin: -10px -1px 0 0;
  }
}

.block-gray {
  position: relative;
  padding: 27px 0 37px;
  margin: 33px 0 60px;
  z-index: 1;
}
@media screen and (max-width: 834px) {
  .block-gray {
    padding: 32px 0 32px;
    margin-top: 28px;
  }
}
.block-gray::before {
  content: "";
  position: absolute;
  width: 100vw;
  height: 100%;
  background: #8f8f8f;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}

.list-btn {
  margin: 0 auto;
}
@media screen and (min-width: 641px) {
  .list-btn {
    max-width: 710px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 20px 0;
  }
}
@media screen and (min-width: 641px) {
  .list-btn__item {
    width: calc(50% - 10px);
  }
}
@media screen and (max-width: 640px) {
  .list-btn__item:not(:last-child) {
    margin-bottom: 15px;
  }
}

.form-control {
  display: block;
  width: 100%;
  height: 45px;
  background: white;
  border: 1px solid #ccc;
  font-weight: 500;
  padding: 5px 10px;
  font-size: 1.5rem;
}
.form-control:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
}

.pure-list__input {
  position: relative;
}
.pure-list__input input {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  opacity: 0;
  cursor: pointer;
}
.pure-list__input input[type=checkbox] + span:after {
  background-color: transparent;
  top: 50%;
  left: 4px;
  width: 8px;
  height: 3px;
  margin-top: -4px;
  border-style: solid;
  border-color: #ffffff;
  border-width: 0 0 3px 3px;
  border-image: none;
  transform: rotate(-45deg) scale(0);
}
.pure-list__input input[type=checkbox]:checked + span:after {
  content: "";
  transform: rotate(-45deg) scale(1);
  transition: transform 200ms ease-out;
}
.pure-list__input input[type=checkbox]:checked + span:before {
  animation: borderscale 200ms ease-in;
  background: #4f8196;
}
.pure-list__input input[type=radio] + span:after, .pure-list__input input[type=radio] + span:before {
  border-radius: 50%;
}
.pure-list__input input[type=radio]:checked + span:before {
  animation: borderscale 300ms ease-in;
  background-color: white;
}
.pure-list__input input[type=radio]:checked + span:after {
  transform: scale(1);
}
.pure-list__input span {
  display: block;
  position: relative;
  padding: 10px 0 10px 40px;
  vertical-align: middle;
  user-select: none;
  cursor: pointer;
}
.pure-list__input span:before {
  box-sizing: content-box;
  content: "";
  color: #4f8196;
  position: absolute;
  top: 50%;
  left: 0;
  width: 14px;
  height: 14px;
  margin-top: -9px;
  border: 2px solid #4f8196;
  text-align: center;
  transition: all 0.4s ease;
}
.pure-list__input span:after {
  box-sizing: content-box;
  content: "";
  background-color: #4f8196;
  position: absolute;
  top: 50%;
  left: 4px;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  transform: scale(0);
  transform-origin: 50%;
  transition: transform 200ms ease-out;
}

.btn-group {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 78px;
}
@media screen and (max-width: 834px) {
  .btn-group {
    margin-bottom: 53px;
  }
}
.btn-group li {
  padding: 0 10px;
  width: 37%;
}
@media screen and (max-width: 834px) {
  .btn-group li {
    width: 50%;
  }
}
@media screen and (max-width: 640px) {
  .btn-group li {
    width: 100%;
    padding: 0;
    margin-bottom: 15px;
  }
  .btn-group li:last-child {
    margin-bottom: 0;
  }
}
.btn-group li:nth-child(1) .c-btn__04 {
  text-align: left;
}

.personal-view {
  padding: 61px 0;
  background: #e0f5ff;
}
.personal-view__block-item {
  margin-bottom: 30px;
}
.personal-view__block-item:last-child {
  margin-bottom: 0;
}
.personal-view__block-box {
  display: block;
  border-radius: 20px;
  overflow: hidden;
  background: #2CA6E0;
  box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.3);
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media (any-hover: hover) {
  .personal-view__block-box:hover {
    opacity: 1;
  }
  .personal-view__block-box:hover .personal-view__block-ct-btn {
    background: none;
    background: white;
    border: 1px solid transparent;
    color: #2CA6E0;
  }
}
.personal-view__block-box--green {
  background: #78ba49;
}
@media (any-hover: hover) {
  .personal-view__block-box--green:hover .personal-view__block-ct-btn {
    color: #78ba49;
  }
}
.personal-view__block-box--red {
  background: #be8f60;
}
@media (any-hover: hover) {
  .personal-view__block-box--red:hover .personal-view__block-ct-btn {
    color: #be8f60;
  }
}
.personal-view__block-img {
  width: 61.7%;
  position: relative;
}
@media screen and (max-width: 834px) {
  .personal-view__block-img {
    width: 100%;
  }
}
.personal-view__block-img:before {
  content: "";
  display: block;
  padding: 56.1% 0 0;
}
@media screen and (max-width: 834px) {
  .personal-view__block-img:before {
    padding: 66% 0 0;
  }
}
.personal-view__block-img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.personal-view__block-ct {
  width: 38.3%;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5625;
  font-weight: 500;
  color: white;
  padding: 28px 30px;
}
@media screen and (max-width: 834px) {
  .personal-view__block-ct {
    width: 100%;
    padding: 31px 16px 29px;
  }
}
.personal-view__block-ct p {
  letter-spacing: 1.5px;
  margin-bottom: 30px;
}
.personal-view__block-ct-ttl {
  display: block;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.2083333333;
  font-weight: bold;
  margin-bottom: 16px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 834px) {
  .personal-view__block-ct-ttl {
    letter-spacing: 2px;
  }
}
.personal-view__block-ct-btn {
  display: block;
  border: 1px solid;
  border-radius: 10px;
  padding: 17px 13px;
  font-size: 1.5rem;
  transition: all 0.3s ease;
}
.personal-view__block-ct-note {
  display: inline-block;
  background: white;
  line-height: 1.2;
  color: #be8f60;
  padding: 10px 20px;
  font-size: 2rem;
  font-weight: 500;
  border-radius: 60px;
  margin-bottom: 27px;
}

.personal-support {
  padding: 50px 0 58px;
}
@media screen and (max-width: 834px) {
  .personal-support {
    padding: 30px 0 58px;
  }
}
.personal-support__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 15px 20px;
}
@media screen and (max-width: 834px) {
  .personal-support__list {
    grid-template-columns: 1fr;
    gap: 14px 20px;
  }
}
.personal-support__list li a {
  display: block;
  border: 1px solid #2CA6E0;
  border-radius: 10px;
  position: relative;
  height: 100%;
  color: #2CA6E0;
  padding: 18px 10px 18px 54px;
  font-size: 1.4rem;
  font-weight: bold;
  background: white;
}
@media (any-hover: hover) {
  .personal-support__list li a:hover {
    background: #e0f5ff;
    opacity: 1;
  }
}
.personal-support__list-icon {
  width: 30px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  text-align: center;
  left: 14px;
}

.personal-iso {
  padding: 57px 0 0;
}
@media screen and (max-width: 834px) {
  .personal-iso {
    padding: 29px 0 0;
  }
}
.personal-iso--02 {
  padding: 60px 0 0;
}
@media screen and (max-width: 834px) {
  .personal-iso--02 {
    padding: 29px 0 0;
  }
}
.personal-iso__block {
  border: 1px solid #f19500;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 50px;
  border-radius: 20px;
  padding: 26px 10.8%;
}
@media screen and (max-width: 834px) {
  .personal-iso__block {
    padding: 20px 14px;
    margin-bottom: 30px;
  }
}
.personal-iso__block-img {
  width: 160px;
}
@media screen and (max-width: 834px) {
  .personal-iso__block-img {
    width: 154px;
    margin: 0 auto 28px;
  }
}
.personal-iso__block-ct {
  width: calc(100% - 160px);
  font-size: 1.5rem;
  line-height: 1.4666666667;
  color: #555;
  padding: 0 0 0 39px;
}
@media screen and (max-width: 834px) {
  .personal-iso__block-ct {
    width: 100%;
    padding: 0;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4285714286;
  }
}
.personal-iso__block-ct-ttl {
  display: block;
  font-size: 1.8rem;
  font-weight: bold;
  color: #f19500;
  margin-bottom: 18px;
}
@media screen and (max-width: 834px) {
  .personal-iso__block-ct-ttl {
    font-size: 1.5rem;
    margin-bottom: 13px;
  }
}
@media screen and (min-width: 835px) {
  .personal-iso__block--heading {
    padding: 41px 6%;
    margin-bottom: 78px;
  }
  .personal-iso__block--heading .personal-iso__block-img {
    width: 180px;
  }
  .personal-iso__block--heading .personal-iso__block-ct {
    width: calc(100% - 180px);
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.6875;
    padding-top: 24px;
  }
  .personal-iso__block--heading .personal-iso__block-ct-ttl {
    font-size: 2rem;
    margin-bottom: 6px;
  }
}
@media screen and (max-width: 834px) {
  .personal-iso__block--heading {
    margin-bottom: 60px;
  }
}
.personal-iso__note p {
  margin-bottom: 28px;
}
.personal-iso__note p:last-child {
  margin-bottom: 0;
}
.personal-iso__note ul {
  margin-bottom: 58px;
}
@media screen and (max-width: 834px) {
  .personal-iso__note ul {
    line-height: 1.8;
    margin-bottom: 53px;
  }
}
.personal-iso__note ul li {
  position: relative;
  padding: 0 0 0 20px;
  margin-bottom: 17px;
}
.personal-iso__note ul li:last-child {
  margin-bottom: 0;
}
.personal-iso__note ul li:before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #2CA6E0;
  position: absolute;
  top: 8px;
  left: 0;
}
@media screen and (max-width: 834px) {
  .personal-iso__note ul li:before {
    top: 10px;
  }
}
.personal-iso .c-btn__01 {
  margin-left: 0;
}

.sec-btn {
  padding: 50px 0 100px;
}

.hide-btn {
  display: none !important;
}

/* ====================================================
Control
==================================================== */
.c-fc--white {
  color: white !important;
}
.c-fc--blue {
  color: #2CA6E0 !important;
}
.c-fc--orange {
  color: #F19500 !important;
}

.c-ft--jp {
  font-family: "Noto Sans JP", sans-serif;
}

.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;
  writing-mode: vertical-rl;
}
@media screen and (min-width: 835px) {
  .c-tx--v-pc {
    -ms-writing-mode: tb-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__basic {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6875;
}
@media screen and (max-width: 834px) {
  .c-txt__basic {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.6666666667;
  }
}
.c-txt__02 {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
}
.c-txt__03 {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6428571429;
}
.c-txt__04 {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.6666666667;
}

.c-ttl__01 {
  position: relative;
  color: #2ca6e0;
  font-weight: bold;
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.3333333333;
  margin: 80px auto 40px;
}
@media screen and (max-width: 834px) {
  .c-ttl__01 {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.5;
    margin: 60px auto 30px;
  }
}
.c-ttl__01::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  background: #f19500;
  border-radius: 10px;
  bottom: -8px;
  left: 0;
}
.c-ttl__02 {
  position: relative;
  color: #2ca6e0;
  font-weight: bold;
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 1.3461538462;
  padding-left: 12px;
  margin: 60px auto 30px;
}
@media screen and (max-width: 834px) {
  .c-ttl__02 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.4;
    margin: 40px auto 20px;
  }
}
.c-ttl__02::before {
  content: "";
  position: absolute;
  width: 2px;
  height: 100%;
  background: #f19500;
  border-radius: 10px;
  top: 1px;
  left: 0;
}
@media screen and (max-width: 834px) {
  .c-ttl__02::before {
    top: 0;
  }
}
.c-ttl__03 {
  color: #2ca6e0;
  font-weight: bold;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.375;
  padding-top: 15px;
  margin: 50px auto 20px;
}
@media screen and (max-width: 834px) {
  .c-ttl__03 {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.4444444444;
    padding-top: 0;
    margin: 30px auto 10px;
  }
}
.c-ttl__04 {
  color: #f19500;
  font-weight: bold;
  margin-bottom: 40px;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.4166666667;
  margin: 50px auto 20px;
}
@media screen and (max-width: 834px) {
  .c-ttl__04 {
    margin: 30px auto 10px;
  }
}
.c-ttl__05 {
  color: #f19500;
  font-weight: bold;
  text-align: center;
  margin-bottom: 60px;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.3;
}
@media screen and (max-width: 834px) {
  .c-ttl__05 {
    margin-bottom: 40px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.4444444444;
  }
}

.c-btn__01 {
  position: relative;
  width: auto;
  max-width: unset;
  height: auto;
  color: white;
  border: 1px solid white;
  border-radius: 30px;
  font-weight: 500;
  font-size: 1.6rem;
  padding: 12px 70px 12px 30px;
  margin: 0 auto;
  display: inline-block;
  left: 50%;
  transform: translateX(-50%);
}
.c-btn__01::before {
  content: "";
  position: absolute;
  width: 32px;
  height: 32px;
  background: white;
  border-radius: 50%;
  right: 9px;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.3s ease;
}
.c-btn__01::after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  border: solid #2ca6e0;
  border-width: 2px 2px 0 0;
  top: 50%;
  right: 22px;
  transform: translateY(-50%) rotate(45deg);
  transition: 0.3s ease;
}
@media (any-hover: hover) {
  .c-btn__01:hover {
    opacity: 1;
    background: white;
    color: #f19500;
  }
  .c-btn__01:hover::before {
    background: #f19500;
  }
  .c-btn__01:hover::after {
    border-color: white;
  }
}
.c-btn__01.btn_left {
  transform: unset;
  left: 0;
}
.c-btn__01.btn_right {
  transform: unset;
  left: unset;
  display: block;
  width: fit-content;
  margin: 0 0 0 auto;
}
.c-btn__01.btn_mg_tp60 {
  margin: 60px 0 0 0;
}
.c-btn__01--arorange::after {
  border-color: #f19500;
}
@media (any-hover: hover) {
  .c-btn__01--arorange:hover::after {
    border-color: white;
  }
}
.c-btn__01--blue {
  color: #2ca6e0;
  border-color: #2ca6e0;
}
.c-btn__01--blue::before {
  background: #2ca6e0;
}
.c-btn__01--blue::after {
  border-color: white;
}
@media (any-hover: hover) {
  .c-btn__01--blue:hover {
    background: #2ca6e0;
    color: white;
  }
  .c-btn__01--blue:hover::before {
    background: white;
  }
  .c-btn__01--blue:hover::after {
    border-color: #2ca6e0;
  }
}
.c-btn__01--orange {
  color: #f19500;
  border-color: #f19500;
}
.c-btn__01--orange::before {
  background: #f19500;
}
.c-btn__01--orange::after {
  border-color: white;
}
@media (any-hover: hover) {
  .c-btn__01--orange:hover {
    background: #f19500;
    color: white;
  }
  .c-btn__01--orange:hover::before {
    background: white;
  }
  .c-btn__01--orange:hover::after {
    border-color: #f19500;
  }
}
@media (any-hover: hover) {
  .c-btn__01--hv-white:hover {
    background: #fff;
    color: #2ca6e0;
  }
  .c-btn__01--hv-white:hover::before {
    background: #2ca6e0;
  }
  .c-btn__01--hv-white:hover::after {
    border-color: #fff;
  }
}
.c-btn__02 {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  width: 100%;
  max-width: 345px;
  height: 82px;
  background: #2ca6e0;
  color: white;
  border-radius: 10px;
  font-weight: bold;
  text-align: center;
  font-size: 1.8rem;
  margin: 0 auto;
  padding: 0 15px;
}
@media (any-hover: hover) {
  .c-btn__02:hover {
    opacity: 1;
    background: #1a5d7d;
  }
}
.c-btn__02--orange {
  background: #f19500;
}
@media (any-hover: hover) {
  .c-btn__02--orange:hover {
    background: #d6a130;
  }
}
.c-btn__02 span {
  display: block;
  width: 100%;
  margin-top: 3px;
  text-align: center;
  font-weight: normal;
  font-size: 1.4rem;
}
@media screen and (max-width: 640px) {
  .c-btn__02--sprow {
    height: 104px;
  }
}
.c-btn__03 {
  width: 100%;
  max-width: 450px;
  margin: 0 auto;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  text-align: center;
  line-height: 1.3;
  font-size: 1.8rem;
  font-weight: bold;
  background: #2ca6e0;
  border-radius: 10px;
  color: white;
  padding: 19px;
}
@media (any-hover: hover) {
  .c-btn__03:hover {
    opacity: 1;
    background: #1a5d7d;
  }
}
.c-btn__04 {
  width: 100%;
  max-width: 345px;
  height: 79px;
  border-radius: 10px;
  background: #f19500;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  text-align: center;
  color: white;
  font-size: 1.6rem;
  font-weight: bold;
  padding: 0 10px;
  margin: 0 auto;
}
@media (any-hover: hover) {
  .c-btn__04:hover {
    opacity: 1;
    background: #d6a130;
  }
}
.c-btn__04 span {
  display: block;
  position: relative;
  width: 100%;
  padding: 0 30px 0 47px;
}
.c-btn__04 span img {
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 5px;
}
.c-btn__05 {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
  border-radius: 20px;
  background: #e94b13;
  border: 1px solid #e94b13;
  color: white;
  font-size: 3rem;
  line-height: 1.2;
  font-weight: bold;
  padding: 22px 42px;
  margin-bottom: 58px;
}
@media screen and (max-width: 834px) {
  .c-btn__05 {
    padding: 22px;
  }
}
@media screen and (max-width: 640px) {
  .c-btn__05 {
    display: block;
    font-size: 2.5rem;
    text-align: center;
    padding: 22px 17px 27px;
  }
}
.c-btn__05 span {
  display: inline-block;
  border: 1px solid white;
  font-size: 1.5rem;
  font-weight: 500;
  margin: -3px 0 0 18px;
  padding: 10px 30px;
  border-radius: 40px;
  position: relative;
}
@media screen and (max-width: 640px) {
  .c-btn__05 span {
    width: 100%;
    font-size: 1.4rem;
    margin: 18px auto 0;
  }
}
.c-btn__05:after {
  content: "";
  border: solid white;
  border-width: 0 3px 3px 0;
  display: inline-block;
  padding: 10px;
  position: absolute;
  top: 50%;
  right: 41px;
  transform: translateY(-50%) rotate(-45deg);
}
@media screen and (max-width: 834px) {
  .c-btn__05:after {
    right: 15px;
  }
}
@media screen and (max-width: 640px) {
  .c-btn__05:after {
    display: none;
  }
}
@media (any-hover: hover) {
  .c-btn__05:hover {
    opacity: 1;
    background: #fff;
    color: #e94b13;
  }
  .c-btn__05:hover:after {
    border: solid #e94b13;
    border-width: 0 3px 3px 0;
  }
  .c-btn__05:hover span {
    color: #e94b13;
    border-color: #e94b13;
  }
}

.js-scrollin {
  opacity: 0;
  transform: translate(0, 70px);
}
.js-scrollin.active {
  opacity: 1;
  transform: translate(0, 0);
  transition: 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* ====================================================
Utility
==================================================== */
@media screen and (max-width: 834px) {
  .pc {
    display: none !important;
  }
}
@media screen and (max-width: 1250px) {
  .pc-xl {
    display: none !important;
  }
}
@media screen and (max-width: 1024px) {
  .pc-tb {
    display: none !important;
  }
}
@media screen and (max-width: 990px) {
  .pc-lg {
    display: none !important;
  }
}
@media screen and (max-width: 640px) {
  .pc-sm {
    display: none !important;
  }
}
@media screen and (max-width: 359px) {
  .pc-xs {
    display: none !important;
  }
}

@media screen and (min-width: 835px) {
  .sp {
    display: none !important;
  }
}
@media screen and (min-width: 1251px) {
  .sp-xl {
    display: none !important;
  }
}
@media screen and (min-width: 1025px) {
  .sp-tb {
    display: none !important;
  }
}
@media screen and (min-width: 991px) {
  .sp-lg {
    display: none !important;
  }
}
@media screen and (min-width: 641px) {
  .sp-sm {
    display: none !important;
  }
}

.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%;
  object-fit: cover;
  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;
  }
}

/* ====================================================
Module
==================================================== */
/* ====================================================
Header
==================================================== */
#header {
  position: fixed;
  width: 100%;
  box-shadow: 0px 1px 8px rgba(0, 0, 0, 0.25);
  top: 0;
  left: 0;
  z-index: 9999;
}
#header > .inner {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  max-width: 100%;
  background: white;
  padding: 30px 120px 30px 50px;
}
@media screen and (max-width: 1024px) {
  #header > .inner {
    padding: 17px 54px 17px 15px;
  }
}
#header .header-logo {
  display: block;
  width: 100%;
  max-width: 107px;
}
@media screen and (max-width: 1024px) {
  #header .header-logo {
    max-width: 54px;
  }
}
#header .header-info {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  width: calc(100% - 120px);
  margin-top: 3px;
}
@media screen and (max-width: 1024px) {
  #header .header-info {
    width: calc(100% - 70px);
    margin-top: 1px;
  }
}
#header .header-info__hotline, #header .header-info__contact, #header .header-info__link {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 11px;
  width: 100%;
  height: 45px;
  color: white;
  border-radius: 5px;
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.25);
  font-weight: 500;
  font-size: 1.5rem;
  padding-bottom: 2px;
}
@media screen and (max-width: 1024px) {
  #header .header-info__hotline, #header .header-info__contact, #header .header-info__link {
    gap: 4px;
    height: 30px;
    box-shadow: unset;
    font-size: 1.2rem;
    padding-bottom: 1px;
  }
}
#header .header-info__hotline {
  max-width: 92px;
  background: #e94b13;
}
@media screen and (min-width: 1025px) {
  #header .header-info__hotline {
    max-width: 164px;
  }
  #header .header-info__hotline::before {
    content: "";
    display: inline-block;
    background: url(../img/common/icon-hotline.svg) center no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
  }
}
#header .header-info__contact {
  max-width: 179px;
  background: #2ca6e0;
  margin: 0 5px;
}
@media screen and (max-width: 1024px) {
  #header .header-info__contact {
    display: none;
  }
}
#header .header-info__contact::before {
  content: "";
  display: inline-block;
  background: url(../img/common/icon-contact.svg) center no-repeat;
  background-size: contain;
  width: 22px;
  height: 22px;
}
#header .header-info__link {
  max-width: 117px;
  color: #2ca6e0;
  border: 1px solid #2ca6e0;
  border-radius: 5px;
  box-shadow: unset;
}
@media screen and (min-width: 1025px) {
  #header .header-info__link {
    max-width: 167px;
    border-radius: 10px;
    margin-right: 20px;
  }
}
#header .header-info__link::before {
  content: "";
  display: inline-block;
  background: url(../img/common/icon-face.svg) center no-repeat;
  background-size: contain;
  width: 25px;
  height: 19px;
}
@media screen and (max-width: 834px) {
  #header .header-info__link::before {
    width: 21px;
    height: 15px;
  }
}
@media screen and (max-width: 359px) {
  #header .header-info__link::before {
    display: none;
  }
}
#header .header-info__language {
  position: relative;
  width: 100%;
  max-width: 106px;
}
@media screen and (max-width: 1024px) {
  #header .header-info__language {
    display: none;
  }
}
#header .header-info__language-btn {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 3px;
  width: 100%;
  height: 40px;
  background: #ebebeb;
  color: #555555;
  border-radius: 30px;
  font-size: 1.4rem;
  padding-right: 1px;
  cursor: pointer;
}
#header .header-info__language-btn::before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  background: url(../img/common/icon-earth.svg) center no-repeat;
  background-size: contain;
}
#header .header-info__language-ct {
  text-align: center;
  position: absolute;
  display: none;
  width: 144px;
  background: white;
  color: #2ca6e0;
  font-size: 1.6rem;
  padding: 23px 10px;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}
#header .header-info__language-ctItem:not(:last-child) {
  margin-bottom: 20px;
}
#header .header-info__search {
  display: block;
  width: 40px;
  height: 40px;
  background: #ebebeb url(../img/common/icon-search.svg) center no-repeat;
  background-size: 18px 18px;
  border-radius: 50%;
}
@media screen and (max-width: 1024px) {
  #header .header-info__search {
    display: none;
  }
}
#header .header-nav {
  position: absolute;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: calc(100vh - 120px);
  top: 120px;
  left: 0;
  opacity: 0;
  pointer-events: none;
  z-index: -1;
  overflow-y: auto;
  transition: 0.8s ease;
}
@media screen and (max-width: 1024px) {
  #header .header-nav {
    height: calc(100vh - 65px);
    top: 65px;
  }
}
#header .header-nav.on {
  opacity: 1;
  pointer-events: auto;
  z-index: 1;
}
#header .header-nav.on .header-nav__ct-tabItem.active {
  pointer-events: auto;
}
#header .header-nav__ct {
  width: calc(100% - 320px);
  height: 100%;
  background: #2c3d45;
  color: white;
  padding: 80px;
  overflow-y: auto;
}
@media screen and (max-width: 1250px) {
  #header .header-nav__ct {
    padding: 40px 15px;
  }
}
@media screen and (max-width: 1024px) {
  #header .header-nav__ct {
    width: calc(100% - 120px);
  }
}
#header .header-nav__ct-search {
  max-width: 280px;
  margin-bottom: 56px;
}
@media screen and (max-width: 1024px) {
  #header .header-nav__ct-search {
    max-width: 220px;
    margin-bottom: 38px;
  }
}
#header .header-nav__ct-search form {
  position: relative;
  display: block;
  width: 100%;
  padding-left: 30px;
}
#header .header-nav__ct-search form input {
  display: block;
  width: 100%;
  height: 30px;
  background: rgba(255, 255, 255, 0.3);
  color: white;
  border-radius: 5px;
  border: 0;
  font-size: 1.3rem;
  padding: 4px 10px 5px;
}
#header .header-nav__ct-search form input::placeholder {
  color: white;
}
#header .header-nav__ct-search form button {
  position: absolute;
  width: 20px;
  height: 20px;
  background: url(../img/common/icon-search-white.svg) center no-repeat;
  background-size: contain;
  border: 0;
  cursor: pointer;
  top: 5px;
  left: 0;
}
#header .header-nav__ct-tab {
  position: relative;
  margin-bottom: 80px;
}
#header .header-nav__ct-tabItem {
  position: absolute;
  width: 100%;
  pointer-events: none;
  opacity: 0;
  top: 0;
  left: 0;
  transition: 0.8s ease;
}
#header .header-nav__ct-tabItem.active {
  position: relative;
  opacity: 1;
}
#header .header-nav__ct-ttl {
  color: #f19500;
  font-weight: bold;
  font-size: 3.2rem;
  letter-spacing: 0.1em;
  margin-bottom: 55px;
}
@media screen and (max-width: 834px) {
  #header .header-nav__ct-ttl {
    font-size: 2rem;
    margin-bottom: 46px;
  }
}
@media screen and (min-width: 835px) {
  #header .header-nav__menu {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 57px 40px;
  }
}
@media screen and (min-width: 835px) {
  #header .header-nav__menu-item {
    width: calc(50% - 20px);
  }
}
@media screen and (max-width: 834px) {
  #header .header-nav__menu-item:not(:last-child) {
    margin-bottom: 47px;
  }
}
#header .header-nav__menu-ttl {
  color: #fff;
  border-bottom: 1px solid #f19500;
  font-weight: bold;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  padding-bottom: 14px;
  margin-bottom: 25px;
}
@media screen and (max-width: 359px) {
  #header .header-nav__menu-ttl {
    font-size: 1.4rem;
  }
}
#header .header-nav__menu-list {
  padding-left: 10px;
}
#header .header-nav__menu-listItem {
  font-weight: 500;
  font-size: 1.4rem;
}
@media screen and (max-width: 359px) {
  #header .header-nav__menu-listItem {
    font-size: 1.1rem;
  }
}
#header .header-nav__menu-listItem:not(:last-child) {
  margin-bottom: 20.4px;
}
#header .header-nav__menu-listItem a {
  color: #fff;
}
#header .header-nav__sidebar {
  width: 320px;
  height: 100%;
  background: #2ca6e0;
  color: white;
  padding: 0 30px 60px;
  overflow-y: auto;
}
@media screen and (max-width: 1024px) {
  #header .header-nav__sidebar {
    width: 120px;
    padding: 40px 15px 100px;
  }
}
#header .header-nav__sidebar-search {
  display: block;
  background: white;
  color: #2ca6e0;
  border-radius: 5px;
  font-weight: bold;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.3333333333;
  padding: 5px 10px;
  margin-bottom: 11px;
}
#header .header-nav__sidebar-wrap {
  padding: 47px 0 49px;
  border-bottom: 1px solid white;
}
@media screen and (max-width: 1024px) {
  #header .header-nav__sidebar-wrap {
    padding: 39px 0 40px;
  }
}
#header .header-nav__sidebar-listItem {
  font-weight: bold;
  font-size: 1.6rem;
}
@media screen and (max-width: 1024px) {
  #header .header-nav__sidebar-listItem {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4285714286;
  }
}
#header .header-nav__sidebar-listItem:not(:last-child) {
  margin-bottom: 31.5px;
}
@media screen and (max-width: 1024px) {
  #header .header-nav__sidebar-listItem:not(:last-child) {
    margin-bottom: 25px;
  }
}
#header .header-nav__sidebar-listItem span {
  transition: 0.3s ease;
  cursor: pointer;
}
@media (any-hover: hover) {
  #header .header-nav__sidebar-listItem span:hover {
    opacity: 0.6;
  }
}
#header .header-nav__sidebar-listItem.active span {
  opacity: 0.6;
}
#header .header-nav__sidebar-language {
  position: relative;
  margin: 1px 0 6px;
}
@media screen and (max-width: 834px) {
  #header .header-nav__sidebar-language {
    margin: -1px 0 3px;
  }
}
#header .header-nav__sidebar-languageBtn {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 3px;
  font-size: 1.4rem;
  cursor: pointer;
}
#header .header-nav__sidebar-languageBtn::before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  background: url(../img/common/icon-earth-white.svg) center no-repeat;
  background-size: contain;
  margin-top: 2px;
}
#header .header-nav__sidebar-languageCt {
  text-align: center;
  position: absolute;
  display: none;
  width: 320px;
  background: white;
  color: #2ca6e0;
  font-size: 1.6rem;
  padding: 23px 10px;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}
#header .header-nav__sidebar-languageItem:not(:last-child) {
  margin-bottom: 20px;
}
#header .header-nav__sidebar-sns {
  margin-top: 39px;
}
@media screen and (min-width: 1025px) {
  #header .header-nav__sidebar-sns {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 17px 0;
    max-width: 165px;
    margin: 49px auto 0;
  }
}
#header .header-nav__sidebar-sns a {
  display: block;
  width: 40px;
}
@media screen and (max-width: 1024px) {
  #header .header-nav__sidebar-sns a {
    width: 45px;
    margin: 0 auto 25px;
  }
}
#header .header-nav__sidebar-sns a.list {
  position: relative;
  width: 100%;
  font-weight: 500;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.5;
}
@media screen and (min-width: 1025px) {
  #header .header-nav__sidebar-sns a.list {
    font-size: 1.5rem;
    padding-right: 10px;
  }
  #header .header-nav__sidebar-sns a.list::after {
    content: "";
    position: absolute;
    width: 7px;
    height: 7px;
    border: solid white;
    border-width: 2px 2px 0 0;
    top: 7px;
    right: 0;
    transform: rotate(45deg);
  }
}
#header .header-submenu {
  position: absolute;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 52px;
  width: 100%;
  background: #4b7b92;
  padding: 0 15px;
  top: 100%;
  left: 0;
  z-index: -1;
}
@media screen and (max-width: 1024px) {
  #header .header-submenu {
    display: none;
  }
}
@media (any-hover: hover) {
  #header .header-submenu__item:hover .header-submenu__wrap {
    opacity: 1;
    pointer-events: auto;
    z-index: 1;
  }
}
#header .header-submenu__btn {
  position: relative;
  display: inline-block;
  color: white;
  font-weight: bold;
  font-size: 1.6rem;
  padding: 18px 24px 19px 0;
  cursor: pointer;
  transition: 0.3s ease;
}
#header .header-submenu__btn::after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  border: solid #2ca6e0;
  border-width: 0 2px 2px 0;
  top: 21px;
  right: 0;
  transform: rotate(45deg);
  transition: all 0.3s ease;
}
@media (any-hover: hover) {
  #header .header-submenu__btn:hover {
    opacity: 0.7;
  }
}
#header .header-submenu__btn.on:after {
  transform: rotate(-135deg);
  top: 26px;
}
#header .header-submenu__wrap {
  position: absolute;
  width: 100vw;
  max-height: calc(100vh - 170px);
  background: #4b7b92;
  padding: 50px 15px;
  overflow-y: auto;
  display: none;
  pointer-events: none;
  top: 100%;
  left: 0;
}
#header .header-submenu__wrap-link {
  max-width: 666px;
  margin: 0 auto 30px;
}
#header .header-submenu__wrap-link a {
  display: inline-block;
  color: white;
  border-radius: 20px;
  border: 1px solid white;
  font-weight: 500;
  font-size: 1.8rem;
  padding: 4px 19px;
}
@media (any-hover: hover) {
  #header .header-submenu__wrap-link a:hover {
    opacity: 1;
    background: white;
    color: #4b7b92;
  }
}
#header .header-submenu__wrap .customers-wrap__list,
#header .header-submenu__wrap .customers-wrap__btn {
  left: 0;
}
@media screen and (min-width: 641px) {
  #header .header-submenu__wrap .customers-wrap__list,
  #header .header-submenu__wrap .customers-wrap__btn {
    max-width: 666px;
  }
}
@media screen and (min-width: 641px) {
  #header .header-submenu__wrap .customers-wrap__list {
    gap: 20px 30px;
  }
}
#header .header-submenu__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 15px 21px;
  max-width: 666px;
  margin: 0 auto;
}
#header .header-submenu__list a {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 70px;
  background: white;
  color: #333333;
  border-radius: 10px;
  font-weight: bold;
  font-size: 1.5rem;
  z-index: 1;
}
#header .header-submenu__list a::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: #1a5d7d;
  border-radius: 10px;
  top: 0;
  left: 0;
  transform: scale(0);
  transition: 0.3s ease;
  z-index: -1;
}
#header .js-mobile {
  position: absolute;
  width: 40px;
  height: 26px;
  right: 40px;
  top: 42px;
  cursor: pointer;
  z-index: 12;
}
@media screen and (max-width: 1024px) {
  #header .js-mobile {
    width: 24px;
    height: 16px;
    right: 15px;
    top: 25px;
  }
}
#header .js-mobile span {
  position: absolute;
  display: block;
  width: 100%;
  height: 2px;
  background: #2ca6e0;
  top: 12px;
  left: 0;
}
@media screen and (max-width: 1024px) {
  #header .js-mobile span {
    top: 7px;
  }
}
#header .js-mobile span:before, #header .js-mobile span:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: #2ca6e0;
  left: 0;
  transition: 0.3s ease;
}
#header .js-mobile span:before {
  top: -12px;
}
@media screen and (max-width: 1024px) {
  #header .js-mobile span:before {
    top: -7px;
  }
}
#header .js-mobile span:after {
  bottom: -12px;
}
@media screen and (max-width: 1024px) {
  #header .js-mobile span:after {
    bottom: -7px;
  }
}
#header .js-mobile--close span {
  background-color: transparent;
}
#header .js-mobile--close span:before {
  transform: rotate(45deg);
  top: 0;
}
#header .js-mobile--close span:after {
  transform: rotate(-45deg);
  bottom: 0;
}

.header-submenu.DownMove {
  animation: Show 0.5s forwards;
}

@keyframes Show {
  from {
    opacity: 0;
    transform: translateY(-60px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.header-submenu.UpMove {
  animation: Hide 0.5s forwards;
}

@keyframes Hide {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(-60px);
  }
}
.popup {
  position: fixed;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.85);
  top: 0;
  left: 0;
  overflow-y: auto;
  opacity: 0;
  z-index: -1;
  pointer-events: none;
  transition: 0.3s ease;
}
.popup.on {
  opacity: 1;
  z-index: 9999;
  pointer-events: auto;
}
.popup-wrap {
  width: 100%;
  height: 80vh;
  padding: 0 15px;
}
.popup-wrap__ct {
  position: relative;
  max-width: 725px;
  margin: 0 auto;
  padding-bottom: 10vh;
}
.popup-wrap__ct--940 {
  max-width: 940px;
}
.popup-wrap__ct-ttl {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 18px;
  min-height: 55px;
  color: white;
  font-weight: bold;
  font-size: 3rem;
  margin-bottom: 37px;
}
@media screen and (max-width: 1024px) {
  .popup-wrap__ct-ttl {
    justify-content: flex-start;
    min-height: 40px;
    font-size: 2.5rem;
    margin-bottom: 24px;
  }
}
.popup-wrap__close {
  position: absolute;
  width: 66px;
  height: 66px;
  cursor: pointer;
  top: 1px;
  right: 0;
}
@media screen and (max-width: 1024px) {
  .popup-wrap__close {
    width: 50px;
    height: 50px;
    top: 2px;
  }
}
.popup-wrap__close:before, .popup-wrap__close:after {
  content: "";
  position: absolute;
  width: 90px;
  height: 1px;
  background: white;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}
@media screen and (max-width: 1024px) {
  .popup-wrap__close:before, .popup-wrap__close:after {
    width: 70px;
  }
}
.popup-wrap__close:after {
  transform: translate(-50%, -50%) rotate(135deg);
}
.popup-wrap__box {
  background: white;
  border-radius: 20px;
  padding: 59px 50px 28px;
}
@media screen and (max-width: 1024px) {
  .popup-wrap__box {
    padding: 30px 15px;
  }
}
.popup-wrap__hotline {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-bottom: 29px;
}
@media screen and (max-width: 640px) {
  .popup-wrap__hotline {
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
    margin-bottom: 30px;
  }
}
.popup-wrap__hotline-item {
  position: relative;
  background: #ffece5;
  border-radius: 20px;
  transition: all 0.3s ease;
  cursor: pointer;
}
.popup-wrap__hotline-item::before {
  content: "";
  display: block;
  padding-bottom: 100%;
}
.popup-wrap__hotline-item p {
  text-align: center;
  position: absolute;
  width: 100%;
  min-height: 46px;
  color: #555555;
  font-weight: 500;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.5333333333;
  padding: 0 15px;
  top: 77%;
  left: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 834px) {
  .popup-wrap__hotline-item p {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 40px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.5384615385;
  }
}
.popup-wrap__hotline-item a {
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  position: absolute;
}
@media (any-hover: hover) {
  .popup-wrap__hotline-item a:hover {
    opacity: 1;
  }
}
@media (any-hover: hover) {
  .popup-wrap__hotline-item:hover {
    background: #e94b13;
  }
  .popup-wrap__hotline-item:hover p {
    color: #fff;
  }
  .popup-wrap__hotline-item:hover .popup-wrap__hotline-img img {
    display: none;
  }
  .popup-wrap__hotline-item:hover .popup-wrap__hotline-img img.hover {
    display: block;
  }
}
.popup-wrap__hotline-img {
  position: absolute;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  width: 100%;
  height: 89px;
  top: 33.5%;
  left: 0;
  transform: translateY(-50%);
}
.popup-wrap__hotline-img img {
  transition: all 0.3s ease;
}
.popup-wrap__hotline-img img.hover {
  display: none;
}
@media screen and (max-width: 834px) {
  .popup-wrap__hotline-img {
    height: 74px;
  }
}
.popup-wrap__btnhotline {
  padding: 21px 15px 25px;
  margin-bottom: 0;
}
@media screen and (min-width: 641px) {
  .popup-wrap__btnhotline {
    padding: 18px 30px 18px 10px;
  }
}
.popup-wrap__btnhotline:after {
  right: 33px;
}
.popup-wrap__contact:not(:last-child) {
  margin-bottom: 47px;
}
@media screen and (max-width: 834px) {
  .popup-wrap__contact:not(:last-child) {
    margin-bottom: 24px;
  }
}
.popup-wrap__contact-ttl {
  color: #2ca6e0;
  border-bottom: 1px solid #2ca6e0;
  font-weight: bold;
  font-size: 2.5rem;
  padding-bottom: 7px;
  margin-bottom: 20px;
}
@media screen and (max-width: 834px) {
  .popup-wrap__contact-ttl {
    font-size: 2rem;
    margin: -2px 0 15px;
  }
}
@media screen and (min-width: 641px) {
  .popup-wrap__contact-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px 21px;
  }
}
@media screen and (min-width: 641px) and (max-width: 990px) {
  .popup-wrap__contact-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 640px) {
  .popup-wrap__contact-listItem:not(:last-child) {
    margin-bottom: 10px;
  }
}
.popup-wrap__contact-listItem a {
  display: block;
  width: 100%;
  background: #2ca6e0;
  border: 1px solid #2ca6e0;
  color: white;
  border-radius: 10px;
  font-weight: bold;
  font-size: 1.5rem;
  line-height: 1.2;
  padding: 15px 20px 16px;
  transition: all 0.3s ease;
}
@media screen and (max-width: 834px) {
  .popup-wrap__contact-listItem a {
    border-radius: 5px;
    font-size: 1.3rem;
    line-height: 1.17;
  }
}
@media screen and (min-width: 641px) {
  .popup-wrap__contact-listItem a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    height: 67px;
  }
}
@media (any-hover: hover) {
  .popup-wrap__contact-listItem a:hover {
    opacity: 1;
    background: #fff;
    color: #2ca6e0;
  }
}
.popup-wrap__btncontact {
  margin-top: 30px;
}
@media screen and (min-width: 641px) {
  .popup-wrap__btncontact {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 10px 20px;
    margin-top: -7px;
  }
}
.popup-wrap__btncontact a {
  text-align: center;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  max-width: calc(50% - 10px);
  height: 64px;
  color: #2ca6e0;
  border: 1px solid #2ca6e0;
  border-radius: 10px;
  font-weight: bold;
  font-size: 2rem;
}
@media screen and (max-width: 834px) {
  .popup-wrap__btncontact a {
    height: 62px;
    border-radius: 5px;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 640px) {
  .popup-wrap__btncontact a {
    max-width: 100%;
  }
  .popup-wrap__btncontact a:not(:last-child) {
    margin-bottom: 15px;
  }
}
@media (any-hover: hover) {
  .popup-wrap__btncontact a:hover {
    opacity: 1;
    color: #fff;
    background: #2ca6e0;
  }
}
.popup-wrap__search form {
  position: relative;
  display: block;
  width: 100%;
  padding-right: 117px;
}
.popup-wrap__search form input {
  width: 100%;
  height: 70px;
  background: white;
  color: #555;
  border-radius: 10px;
  border: 0;
  font-weight: 500;
  font-size: 2.5rem;
  padding: 3px 30px 5px;
}
.popup-wrap__search form input::placeholder {
  color: #c9c9c9;
}
.popup-wrap__search form button {
  position: absolute;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: 97px;
  height: 70px;
  background: #2ca6e0;
  color: white;
  border-radius: 10px;
  border: 0;
  font-weight: 500;
  font-size: 2.5rem;
  padding-bottom: 4px;
  cursor: pointer;
  top: 0;
  right: 0;
}

.js-locked {
  overflow: hidden;
  -ms-touch-action: none;
  touch-action: none;
}
.js-locked body {
  -webkit-overflow-scrolling: auto;
}

/* ホバー時に表示 */
.header-submenu__btn.js-accor:hover.header-submenu__wrap {
  display: block;
  opacity: 1;
  visibility: visible;
}

/* ====================================================
Footer
==================================================== */
.btn-top {
  position: fixed;
  width: 60px;
  height: 60px;
  background: #2ca6e0;
  border-radius: 50%;
  bottom: 20px;
  right: 14px;
  transition: 0.3s ease;
}
.btn-top::after {
  content: "";
  position: absolute;
  width: 16px;
  height: 16px;
  border: solid white;
  border-width: 2px 2px 0 0;
  top: 26px;
  left: 50%;
  transform: translateX(-50%) rotate(-45deg);
}
.btn-top.off {
  opacity: 0;
  pointer-events: none;
}

#page-index #footer {
  margin-top: -30px;
}

#footer {
  position: relative;
  background: #595959;
  color: white;
  border-radius: 30px 30px 0 0;
  padding: 30px 0;
  margin-top: 120px;
  z-index: 3;
}
#footer .footer-top {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  max-width: 217px;
  height: 38px;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 30px;
  font-weight: 500;
  font-size: 1.6rem;
  padding: 9px 30px 10px;
  margin: 0 auto 40px;
}
#footer .footer-top::after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  border: solid #f19500;
  border-width: 2px 2px 0 0;
  top: 16px;
  right: 31px;
  transform: rotate(-45deg);
}
#footer .footer-logo {
  display: block;
  max-width: 171px;
  margin-bottom: 66px;
}
@media screen and (max-width: 640px) {
  #footer .footer-logo {
    max-width: 115px;
  }
}
#footer .footer-wrap {
  margin-bottom: 60px;
}
@media screen and (min-width: 835px) {
  #footer .footer-wrap {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    max-width: 751px;
    margin-bottom: 38px;
  }
}
@media screen and (min-width: 835px) {
  #footer .footer-wrap__menu {
    width: 63.3%;
  }
}
@media screen and (max-width: 834px) {
  #footer .footer-wrap__menu {
    border-bottom: 1px solid white;
  }
  #footer .footer-wrap__menu-boxLeft, #footer .footer-wrap__menu-boxright {
    margin-bottom: 36px;
  }
}
#footer .footer-wrap__menu-btn {
  position: relative;
}
#footer .footer-wrap__menu-btn a {
  display: block;
  position: relative;
  font-weight: 500;
  font-size: 1.5rem;
  padding: 12px 40px 17px 0;
}
#footer .footer-wrap__menu-box {
  display: none;
}
@media screen and (min-width: 835px) {
  #footer .footer-wrap__menu-box {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}
#footer .footer-wrap__menu-ttl {
  color: #f19500;
  font-weight: 500;
  font-size: 1.8rem;
  margin-bottom: 18px;
}
#footer .footer-wrap__menu-sub {
  color: #b1b1b1;
  font-weight: 500;
  font-size: 1.5rem;
  margin-bottom: 8px;
}
#footer .footer-wrap__menu-list:not(:last-child) {
  margin-bottom: 16px;
}
#footer .footer-wrap__menu-listItem {
  position: relative;
  font-weight: 500;
  font-size: 1.4rem;
  padding-left: 15px;
}
#footer .footer-wrap__menu-listItem:not(:last-child) {
  margin-bottom: 7.5px;
}
#footer .footer-wrap__menu-listItem::before {
  content: "";
  position: absolute;
  width: 10px;
  height: 1px;
  background: #f19500;
  top: 9px;
  left: 0;
}
#footer .footer-wrap__menu-link:not(:last-child) {
  margin-bottom: 36px;
}
#footer .footer-wrap__menu-linkItem {
  font-weight: 500;
  font-size: 1.5rem;
}
#footer .footer-wrap__menu-linkItem:not(:last-child) {
  margin-bottom: 7px;
}
@media screen and (max-width: 834px) {
  #footer .footer-wrap__info {
    border-bottom: 1px solid white;
  }
}
#footer .footer-wrap__info-btn {
  position: relative;
}
#footer .footer-wrap__info-btn a {
  display: block;
  font-weight: 500;
  font-size: 1.5rem;
  padding: 18px 40px 18px 0;
}
#footer .footer-wrap__info-list {
  margin-bottom: 26.5px;
}
@media screen and (max-width: 834px) {
  #footer .footer-wrap__info-list {
    display: none;
    padding-top: 15px;
  }
}
#footer .footer-wrap__info-listItem {
  font-weight: 500;
  font-size: 1.6rem;
}
#footer .footer-wrap__info-listItem:not(:last-child) {
  margin-bottom: 22.5px;
}
@media screen and (max-width: 834px) {
  #footer .footer-wrap__info-listItem {
    font-size: 1.5rem;
    font-weight: 500;
  }
  #footer .footer-wrap__info-listItem:not(:last-child) {
    display: none;
    margin-bottom: 10px;
  }
  #footer .footer-wrap__info-listItem:nth-last-child(1), #footer .footer-wrap__info-listItem:nth-last-child(2) {
    display: block;
  }
}
#footer .footer-wrap__info-link {
  font-weight: 500;
  font-size: 1.6rem;
}
@media screen and (max-width: 834px) {
  #footer .footer-wrap__info-link {
    display: block;
    border-width: 1px 0;
    font-size: 1.5rem;
    padding: 17px 0;
  }
}
#footer .footer-contact {
  margin-bottom: 59px;
}
@media screen and (min-width: 835px) {
  #footer .footer-contact {
    border-top: 1px solid white;
    padding-top: 50px;
    margin-bottom: 79px;
  }
}
@media screen and (min-width: 641px) {
  #footer .footer-contact {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 81px;
  }
}
#footer .footer-contact__sns {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 22px;
  margin-bottom: 3px;
}
@media screen and (max-width: 640px) {
  #footer .footer-contact__sns {
    margin-bottom: 40px;
  }
}
#footer .footer-contact__sns a {
  display: block;
  width: 40px;
}
#footer .footer-contact__sns a img {
  width: 100%;
}
#footer .footer-contact__brand {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 27px;
}
#footer .footer-contact__brand a {
  display: block;
}
#footer .footer-copy {
  text-align: center;
  color: #999999;
  font-weight: 500;
  font-size: 1.3rem;
}
@media screen and (max-width: 834px) {
  #footer .footer-copy {
    color: #dddddd;
  }
}
@media screen and (max-width: 359px) {
  #footer .footer-copy {
    font-size: 1.2rem;
  }
}

.btn-acc {
  width: 50px;
  height: 50px;
  position: absolute;
  right: 0;
  top: calc(50% - 25px);
  z-index: 10;
}
.btn-acc::before, .btn-acc::after {
  content: "";
  position: absolute;
  width: 16px;
  height: 2px;
  background: #f19500;
  top: calc(50% - 1px);
  right: 16px;
  transition: 0.3s ease;
}
.btn-acc::after {
  top: calc(50% - 1px);
  transform: rotate(90deg);
}
.btn-acc.on:after {
  transform: rotate(0);
}

.submenu-sp {
  margin-bottom: 20px;
}
@media screen and (min-width: 835px) {
  .submenu-sp {
    display: none;
  }
}
.submenu-sp li {
  margin-bottom: 10px;
}
.submenu-sp li:last-of-type {
  margin-bottom: 0;
}
.submenu-sp li a {
  font-size: 1.5rem;
  font-weight: 500;
}

/* ====================================================
Pages
==================================================== */
/* ====================================================
PAGE INDEX
==================================================== */
.sec-mv {
  position: relative;
  height: 100vh;
}
.sec-mv__slider {
  position: fixed;
  width: 100%;
  height: 50vh;
  top: 110px;
  right: 0;
  z-index: -1;
}
@media screen and (min-width: 641px) {
  .sec-mv__slider {
    width: 50vw;
    height: 100vh;
  }
}
@media screen and (max-width: 1024px) {
  .sec-mv__slider {
    top: 50vh;
    width: 100vw;
    height: 50vh;
  }
}
@media screen and (max-width: 990px) {
  .sec-mv__slider {
    width: 100%;
    height: 50vh;
    top: 50vh;
  }
}
@media screen and (max-width: 640px) {
  .sec-mv__slider {
    top: 50vh;
  }
}
.sec-mv__slider-item.is-anim {
  animation: fadezoom 10s 0s forwards;
}
@keyframes fadezoom {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}
@media screen and (max-width: 990px) {
  .sec-mv__slider-item {
    height: 50vh;
  }
}
.sec-mv__slider-item img {
  width: 100%;
  height: 100vh;
  object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .sec-mv__slider-item img {
    height: 50vh;
  }
}
.sec-mv__video {
  position: fixed;
  width: 100%;
  height: 50vh;
  left: 0;
  z-index: -1;
}
@media screen and (min-width: 641px) {
  .sec-mv__video {
    width: 50vw;
    height: 100vh;
    padding: 75px 0 30px;
  }
}
@media screen and (max-width: 1024px) {
  .sec-mv__video {
    padding: 15px 0 46px;
    width: 100vw;
    height: 50vh;
  }
}
@media screen and (max-width: 990px) {
  .sec-mv__video {
    width: 100%;
  }
}
@media screen and (max-width: 640px) {
  .sec-mv__video {
    padding: 15px 0 46px;
  }
}
.sec-mv__video img,
.sec-mv__video iframe,
.sec-mv__video video {
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 0;
  object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .sec-mv__video img,
  .sec-mv__video iframe,
  .sec-mv__video video {
    height: 50vh;
  }
}
.sec-mv__note {
  position: absolute;
  width: calc(100% - 30px);
  max-width: 1200px;
  background: #eaf8ff;
  border-radius: 100px;
  font-weight: 500;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.3333333333;
  padding: 20px 20px 21px 112px;
  bottom: 69px;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 834px) {
  .sec-mv__note {
    font-size: 1.3rem;
    padding: 11px 20px 12px 46px;
    bottom: 54px;
  }
  .sec-mv__note span {
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    max-height: 20px;
  }
}
.sec-mv__note::before {
  content: "";
  position: absolute;
  background: url(../img/index/icon-mark.svg) center no-repeat;
  background-size: contain;
  width: 40px;
  height: 40px;
  top: 50%;
  left: 52px;
  transform: translateY(-50%);
}
@media screen and (max-width: 834px) {
  .sec-mv__note::before {
    width: 27px;
    height: 27px;
    left: 14px;
  }
}

.sec-customers {
  position: relative;
  background: white;
  padding: 61px 0;
  z-index: 2;
}
@media screen and (max-width: 834px) {
  .sec-customers {
    padding: 41px 0 32px;
  }
}
.sec-customers::before, .sec-customers::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 40px;
  background: white;
  left: 0;
}
.sec-customers::before {
  border-radius: 40px 40px 0 0;
  bottom: calc(100% - 1px);
}
.sec-customers::after {
  border-radius: 0 0 40px 40px;
  top: calc(100% - 1px);
}

@media screen and (min-width: 835px) {
  .customers-wrap {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.customers-wrap:not(:last-child) {
  margin-bottom: 100px;
}
@media screen and (max-width: 834px) {
  .customers-wrap:not(:last-child) {
    margin-bottom: 70px;
  }
}
.customers-wrap__img {
  width: calc(100% - 15px);
}
@media screen and (min-width: 835px) {
  .customers-wrap__img {
    width: 40.3%;
  }
  .customers-wrap__img picture {
    display: block;
    margin-right: -23.9%;
  }
}
.customers-wrap__img img {
  width: 100%;
  border-radius: 0 20px 20px 0;
}
.customers-wrap__ct {
  position: relative;
  width: calc(100% - 15px);
  background: #2ca6e0;
  border-radius: 20px 0 0 20px;
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  padding: 37px 15px 40px;
  margin: -24px 0 0 auto;
}
@media screen and (min-width: 835px) {
  .customers-wrap__ct {
    width: 59.7%;
    margin: 70px 0 0;
    padding: 35px 21px 40px 20px;
  }
}
.customers-wrap__ct-ttl {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 15px;
  color: white;
  font-weight: bold;
  font-size: 4rem;
  margin-bottom: 27px;
}
@media screen and (max-width: 834px) {
  .customers-wrap__ct-ttl {
    font-size: 2.8rem;
    margin-bottom: 28px;
  }
  .customers-wrap__ct-ttl img {
    display: none;
  }
}
.customers-wrap__list {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px 25px;
  max-width: 657px;
  margin: 0 auto;
}
@media screen and (min-width: 1251px) {
  .customers-wrap__list {
    left: -18px;
  }
}
@media screen and (max-width: 640px) {
  .customers-wrap__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 15px 16px;
  }
}
.customers-wrap__list--orange .customers-wrap__list-item a::before {
  background: #d6a130;
}
.customers-wrap__list-item a {
  position: relative;
  text-align: center;
  display: block;
  height: 100%;
  background: white;
  border-radius: 20px;
  font-weight: bold;
  font-size: 1.5rem;
  line-height: 1.2;
  padding: 21px 15px 15px;
  overflow: hidden;
  z-index: 1;
}
@media screen and (max-width: 834px) {
  .customers-wrap__list-item a {
    font-size: 1.3rem;
    line-height: 1.24;
  }
}
@media screen and (max-width: 640px) {
  .customers-wrap__list-item a {
    text-align: left;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 80px;
    padding: 20px 15px 20px 53px;
  }
}
@media screen and (max-width: 359px) {
  .customers-wrap__list-item a {
    font-size: 1rem;
  }
}
.customers-wrap__list-item a::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: #1a5d7d;
  border-radius: 16px;
  top: 0;
  left: 0;
  transform: scale(0);
  transition: 0.3s ease;
  z-index: -1;
}
@media (any-hover: hover) {
  .customers-wrap__list-item a:hover {
    opacity: 1;
    color: white;
  }
  .customers-wrap__list-item a:hover::before {
    transform: scale(1);
  }
  .customers-wrap__list-item a:hover .customers-wrap__list-img > img {
    opacity: 0;
  }
  .customers-wrap__list-item a:hover .customers-wrap__list-imgThumb {
    opacity: 1;
  }
}
.customers-wrap__list-item p {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  min-height: 36px;
}
.customers-wrap__list-img {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  height: 68px;
  margin-bottom: 13px;
}
@media screen and (max-width: 640px) {
  .customers-wrap__list-img {
    position: absolute;
    align-items: center;
    width: 28px;
    height: 100%;
    top: 0;
    left: 15px;
  }
}
.customers-wrap__list-img > img {
  transition: 0.3s ease;
}
.customers-wrap__list-imgThumb {
  position: absolute;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0;
  transition: 0.3s ease;
}
@media screen and (max-width: 640px) {
  .customers-wrap__list-imgThumb {
    align-items: center;
  }
}
.customers-wrap__btn {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  width: 100%;
  max-width: 657px;
  height: 65px;
  background: white;
  border-radius: 20px;
  font-weight: bold;
  font-size: 1.5rem;
  margin: 30px auto 0;
  padding-left: 22px;
  overflow: hidden;
  z-index: 1;
}
@media screen and (min-width: 1251px) {
  .customers-wrap__btn {
    left: -18px;
  }
}
@media screen and (max-width: 834px) {
  .customers-wrap__btn {
    gap: 13px;
    height: 54px;
    font-size: 1.4rem;
    margin-top: 14px;
    padding: 0 15px 0 0;
  }
}
.customers-wrap__btn::before {
  content: "";
  display: inline-block;
  background: url(../img/index/plus-blue.svg) center no-repeat;
  background-size: contain;
  width: 24px;
  height: 24px;
  transition: 0.3s ease;
}
.customers-wrap__btn::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: #1a5d7d;
  border-radius: 16px;
  top: 0;
  left: 0;
  transform: scale(0);
  transition: 0.3s ease;
  z-index: -1;
}
@media (any-hover: hover) {
  .customers-wrap__btn:hover {
    opacity: 1;
    color: white;
  }
  .customers-wrap__btn:hover::before {
    background: url(../img/index/plus-white.svg) center no-repeat;
    background-size: contain;
  }
  .customers-wrap__btn:hover::after {
    transform: scale(1);
  }
}
.customers-wrap__btn--orange::before {
  background: url(../img/index/plus-yellow.svg) center no-repeat;
  background-size: contain;
}
.customers-wrap__btn--orange::after {
  background: #d6a130;
}
@media (any-hover: hover) {
  .customers-wrap__btn--orange:hover::before {
    background: url(../img/index/plus-white.svg) center no-repeat;
    background-size: contain;
  }
}
@media screen and (min-width: 835px) {
  .customers-wrap:nth-child(even) {
    flex-direction: row-reverse;
  }
}
@media screen and (max-width: 834px) {
  .customers-wrap:nth-child(even) .customers-wrap__img {
    margin-left: auto;
  }
}
@media screen and (min-width: 835px) {
  .customers-wrap:nth-child(even) .customers-wrap__img picture {
    margin: 0 0 0 -23.9%;
  }
}
.customers-wrap:nth-child(even) .customers-wrap__img img {
  border-radius: 20px 0 0 20px;
}
.customers-wrap:nth-child(even) .customers-wrap__ct {
  background: #f19500;
  border-radius: 0 20px 20px 0;
}
@media screen and (min-width: 1251px) {
  .customers-wrap:nth-child(even) .customers-wrap__ct {
    padding-left: 32px;
  }
}
@media screen and (max-width: 834px) {
  .customers-wrap:nth-child(even) .customers-wrap__ct {
    margin: -35px 0 0 0;
  }
}
@media screen and (max-width: 834px) {
  .customers-wrap:nth-child(even) .customers-wrap__ct-ttl {
    margin: 0 0 24px 16px;
  }
}
@media screen and (min-width: 835px) {
  .customers-wrap:nth-child(even) .customers-wrap__ct-ttl img {
    margin: 6px -3px 0 4px;
  }
}
@media screen and (min-width: 1251px) {
  .customers-wrap:nth-child(even) .customers-wrap__list {
    left: 13px;
  }
}
@media screen and (min-width: 1251px) {
  .customers-wrap:nth-child(even) .customers-wrap__btn {
    padding-left: 1px;
    left: 14px;
  }
}

.sec-company {
  position: relative;
  background: url(../img/index/company-bg-pc.jpg) bottom no-repeat;
  background-size: cover;
  color: white;
  padding: 260px 0 116px;
  overflow: hidden;
  z-index: 1;
}
@media screen and (max-width: 834px) {
  .sec-company {
    background: url(../img/index/company-bg-sp.jpg) bottom no-repeat;
    background-size: cover;
    padding: 114px 0 70px;
  }
}

.company-wrap {
  position: relative;
  max-width: 400px;
  margin: 0 auto;
}
.company-wrap__ttl {
  font-weight: bold;
  font-size: 40px;
  font-size: 4rem;
  line-height: 1.325;
  margin-bottom: 54px;
}
@media screen and (max-width: 834px) {
  .company-wrap__ttl {
    font-size: 28px;
    font-size: 2.8rem;
    line-height: 1.4285714286;
    margin-bottom: 30px;
  }
}
.company-wrap__ttl span {
  color: #2ca6e0;
}
.company-wrap p {
  font-weight: 500;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.5555555556;
}
@media screen and (max-width: 834px) {
  .company-wrap p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.75;
  }
}
.company-wrap .c-btn__01 {
  margin-top: 30px;
}
.company-wrap__video {
  position: relative;
  margin: 88px -48px 0;
}
@media screen and (max-width: 834px) {
  .company-wrap__video {
    margin: 50px 0 40px;
  }
}
.company-wrap__video img,
.company-wrap__video iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 10px;
  object-fit: cover;
  top: 0;
  left: 0;
}
@media screen and (max-width: 834px) {
  .company-wrap__img {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 359px) {
  .company-wrap__img {
    margin: 0 -10px;
  }
}
@media screen and (min-width: 835px) {
  .company-wrap__img-item {
    position: absolute;
    z-index: -1;
  }
}
.company-wrap__img-item:first-child {
  width: 156px;
}
@media screen and (min-width: 835px) {
  .company-wrap__img-item:first-child {
    width: 262px;
    top: -117px;
    left: -308px;
  }
}
@media screen and (min-width: 835px) and (max-width: 1250px) {
  .company-wrap__img-item:first-child {
    width: 210px;
    top: -180px;
    left: -215px;
  }
}
@media screen and (min-width: 835px) {
  .company-wrap__img-item:nth-child(2) {
    width: 140px;
    top: -101px;
    right: -209px;
  }
}
@media screen and (max-width: 834px) {
  .company-wrap__img-item:nth-child(2) {
    width: 83px;
    margin: 27px 59px 0 0;
  }
}
@media screen and (min-width: 835px) {
  .company-wrap__img-item:nth-child(3) {
    width: 140px;
    top: 256px;
    left: -400px;
  }
}
@media screen and (min-width: 835px) and (max-width: 1250px) {
  .company-wrap__img-item:nth-child(3) {
    left: -185px;
  }
}
@media screen and (min-width: 835px) {
  .company-wrap__img-item:nth-child(4) {
    width: 186px;
    top: 111px;
    right: -400px;
  }
}
@media screen and (min-width: 835px) and (max-width: 1250px) {
  .company-wrap__img-item:nth-child(4) {
    width: 160px;
    right: -190px;
  }
}
@media screen and (min-width: 835px) {
  .company-wrap__img-item:nth-child(5) {
    width: 202px;
    bottom: 86px;
    left: -352px;
  }
}
@media screen and (min-width: 835px) and (max-width: 1250px) {
  .company-wrap__img-item:nth-child(5) {
    left: -270px;
  }
}
@media screen and (max-width: 834px) {
  .company-wrap__img-item:nth-child(5) {
    width: 120px;
    margin: 59px 0 0 36px;
  }
}
@media screen and (min-width: 835px) {
  .company-wrap__img-item:nth-child(6) {
    width: 237px;
    bottom: 146px;
    right: -376px;
  }
}
@media screen and (min-width: 835px) and (max-width: 1250px) {
  .company-wrap__img-item:nth-child(6) {
    width: 190px;
    right: -253px;
  }
}
@media screen and (max-width: 834px) {
  .company-wrap__img-item:nth-child(6) {
    width: 140px;
    margin: -21px 2px 0 0;
  }
}

.sec-topics {
  background: white;
  padding: 50px 0;
}
.sec-topics .c-btn__01 {
  margin: 0 0 16px;
}

.topics-wrap {
  background: #eaf8ff;
  border-radius: 20px;
  padding: 56px 92px 59px;
  margin-bottom: 30px;
}
@media screen and (max-width: 834px) {
  .topics-wrap {
    padding: 39px 15px 38px;
    margin-bottom: 20px;
  }
}
.topics-wrap__ttl {
  position: relative;
  color: #2ca6e0;
  font-weight: bold;
  font-size: 2rem;
  padding-left: 67px;
  margin-bottom: 26px;
}
@media screen and (max-width: 834px) {
  .topics-wrap__ttl {
    font-size: 1.5rem;
    padding-left: 54px;
    margin-bottom: 19px;
  }
}
.topics-wrap__ttl span {
  display: block;
  font-size: 3rem;
  margin-bottom: -7px;
}
@media screen and (max-width: 834px) {
  .topics-wrap__ttl span {
    font-size: 2rem;
    margin-bottom: -2px;
  }
}
.topics-wrap__ttl::before {
  content: "";
  position: absolute;
  width: 52px;
  height: 52px;
  background: url(../img/index/icon-mark.svg) center no-repeat;
  background-size: contain;
  top: 7px;
  left: 0;
}
@media screen and (max-width: 834px) {
  .topics-wrap__ttl::before {
    width: 44px;
    height: 44px;
    top: 2px;
  }
}
.topics-wrap__list-item a {
  position: relative;
  display: block;
  border-bottom: 1px solid #2ca6e0;
  font-weight: 500;
  font-size: 1.8rem;
  padding: 16px 15px 16px 133px;
}
@media screen and (max-width: 834px) {
  .topics-wrap__list-item a {
    font-size: 1.5rem;
    line-height: 1.5;
  }
}
@media screen and (max-width: 640px) {
  .topics-wrap__list-item a {
    padding: 27px 0 10px;
  }
}
.topics-wrap__list-item a time {
  display: block;
  font-weight: 400;
  margin-bottom: 9px;
}
@media screen and (min-width: 641px) {
  .topics-wrap__list-item a time {
    position: absolute;
    width: 100px;
    top: 16px;
    left: 0;
  }
}
@media screen and (min-width: 641px) {
  .topics-wrap__list-item a p {
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    max-height: 28px;
  }
}

.topics-block__list-item time {
  color: #2ca6e0;
}
.topics-block__list-item p {
  margin-top: 10px;
  font-size: 1.6rem;
}

.topics-block {
  position: relative;
  background: #d4efff;
  border-radius: 20px;
  padding: 55px 92px 47px;
}
@media screen and (max-width: 834px) {
  .topics-block {
    padding: 37px 15px 39px;
  }
}
.topics-block__ttl {
  font-weight: bold;
  font-size: 4rem;
  margin-bottom: 29px;
}
@media screen and (max-width: 834px) {
  .topics-block__ttl {
    font-size: 2.8rem;
    margin-bottom: 19px;
  }
}
.topics-block__ttl span {
  display: block;
  color: #2ca6e0;
  font-weight: bold;
  font-size: 1.5rem;
}
@media screen and (min-width: 835px) {
  .topics-block__ttl span {
    font-size: 2rem;
    margin-top: -5px;
  }
}
@media screen and (min-width: 641px) {
  .topics-block .c-btn__01 {
    position: absolute;
    top: 60px;
    right: 90px;
    transform: unset;
    left: unset;
  }
}
@media screen and (min-width: 641px) {
  .topics-block__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
  }
}
@media screen and (max-width: 834px) {
  .topics-block__list {
    margin-top: 50px;
  }
}
@media screen and (max-width: 640px) {
  .topics-block__list-item:not(:last-child) {
    margin-bottom: 50px;
  }
}
.topics-block__list-item a {
  display: block;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.2;
}
@media (any-hover: hover) {
  .topics-block__list-item a:hover {
    opacity: 1;
  }
  .topics-block__list-item a:hover .topics-block__list-img img {
    transform: scale(1.1);
  }
}
.topics-block__list-img {
  position: relative;
  border-radius: 20px;
  margin-bottom: 17px;
  overflow: hidden;
}
@media screen and (max-width: 834px) {
  .topics-block__list-img {
    margin-bottom: 15px;
  }
}
.topics-block__list-img::before {
  content: "";
  display: block;
  padding-bottom: 56.3076923077%;
}
.topics-block__list-img img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  object-fit: cover;
  transition: 0.3s ease;
}
.topics-block__list-info {
  line-height: 1;
  margin-bottom: 12px;
}
@media screen and (max-width: 834px) {
  .topics-block__list-info {
    margin-bottom: 7px;
  }
}
.topics-block__list-info time {
  display: block;
  font-weight: 400;
  font-size: 1.5rem;
  margin-top: 11px;
}
@media screen and (max-width: 834px) {
  .topics-block__list-info time {
    font-size: 1.4rem;
  }
}
.topics-block__list-info span {
  display: inline-block;
  color: #2ca6e0;
  border: 1px solid #2ca6e0;
  border-radius: 50px;
  font-weight: 500;
  font-size: 1.2rem;
  padding: 5px 11px 6px;
}

.sec-event {
  background: #2ca6e0;
  padding: 80px 0;
  overflow: hidden;
}
@media screen and (max-width: 834px) {
  .sec-event {
    padding: 70px 0;
  }
}

.event_btn {
  margin: 100px auto 0;
}
@media screen and (max-width: 834px) {
  .event_btn {
    margin: 160px auto 0;
  }
}

.event-ttl {
  text-align: center;
  color: white;
  font-weight: bold;
  font-size: 4rem;
  margin-bottom: 83px;
}
@media screen and (max-width: 834px) {
  .event-ttl {
    font-size: 2.8rem;
    margin-bottom: 39px;
  }
}
@media screen and (max-width: 359px) {
  .event-ttl {
    font-size: 2.4rem;
  }
}
.event-ttl span {
  display: block;
  color: #f19500;
  font-size: 2rem;
}
@media screen and (max-width: 834px) {
  .event-ttl span {
    font-size: 1.5rem;
    margin-top: 1px;
  }
}

@media screen and (min-width: 641px) {
  .event-list {
    margin: 0 -10px;
  }
}
.event-list .slick-track {
  display: flex !important;
}
.event-list .slick-slide {
  height: inherit !important;
}
.event-list .slick-list {
  padding-bottom: 10px;
}
@media screen and (max-width: 640px) {
  .event-list .slick-list {
    overflow: unset;
  }
}
.event-list .slick-dots {
  bottom: -27px;
}
.event-list .slick-dots li {
  margin: 0 4px;
}
.event-list .slick-dots li button {
  width: 7px;
  height: 7px;
  background: white;
  border-radius: 50%;
  padding: 0;
  cursor: pointer;
  transition: 0.3s ease;
}
.event-list .slick-dots li button::before {
  display: none;
}
@media (any-hover: hover) {
  .event-list .slick-dots li button:hover {
    background: #f19500;
  }
}
.event-list .slick-dots li.slick-active button {
  background: #f19500;
}
.event-list .slick-prev,
.event-list .slick-next {
  width: 60px;
  height: 60px;
  background: white;
  border-radius: 50%;
  top: auto;
  transform: unset;
  bottom: -97px;
  transition: 0.3s ease;
}
@media screen and (max-width: 834px) {
  .event-list .slick-prev,
  .event-list .slick-next {
    bottom: -122px;
  }
}
.event-list .slick-prev::before,
.event-list .slick-next::before {
  content: "";
  position: absolute;
  width: 16px;
  height: 16px;
  border: solid #2ca6e0;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  transition: 0.3s ease;
  opacity: 1;
}
@media (any-hover: hover) {
  .event-list .slick-prev:hover,
  .event-list .slick-next:hover {
    opacity: 1;
    background: #f19500;
  }
  .event-list .slick-prev:hover::before,
  .event-list .slick-next:hover::before {
    border-color: white;
  }
}
.event-list .slick-next {
  right: 10px;
}
@media screen and (max-width: 834px) {
  .event-list .slick-next {
    right: 19px;
  }
}
.event-list .slick-next::before {
  border-width: 3px 3px 0 0;
  left: 16px;
}
.event-list .slick-prev {
  left: auto;
  right: 90px;
}
@media screen and (max-width: 834px) {
  .event-list .slick-prev {
    right: 99px;
  }
}
.event-list .slick-prev::before {
  border-width: 0 0 3px 3px;
  left: 25px;
}
.event-list__item {
  padding: 0 10px;
}
@media screen and (max-width: 640px) {
  .event-list__item {
    padding: 0 7.5px;
  }
}
.event-list__item a {
  display: block;
  height: 100%;
  background: white;
  color: #2ca6e0;
  border-radius: 20px;
  font-weight: 500;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.4666666667;
  overflow: hidden;
}
@media screen and (max-width: 834px) {
  .event-list__item a {
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    font-size: 1.4rem;
    line-height: 1.2;
  }
}
.event-list__item a p {
  padding: 15px 20px;
  font-size: 1.8rem;
}
@media screen and (max-width: 834px) {
  .event-list__item a p {
    padding: 18px 15px 22px;
    font-size: 1.6rem;
  }
}
@media (any-hover: hover) {
  .event-list__item a:hover {
    opacity: 1;
    color: #f19500;
  }
  .event-list__item a:hover .event-list__img img {
    transform: scale(1.05);
  }
}
.event-list__img {
  position: relative;
}
.event-list__img::before {
  content: "";
  display: block;
  padding-bottom: 57.3643410853%;
}
.event-list__img img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  object-fit: cover;
  transition: 0.3s ease;
}

.sec-discover {
  padding: 75px 0 150px;
  background: rgba(44, 61, 69, 0.8);
  color: white;
}
@media screen and (max-width: 834px) {
  .sec-discover {
    padding: 67px 0 130px;
  }
}
.sec-discover .c-btn__01 {
  margin: 0 auto;
}
@media screen and (max-width: 834px) {
  .sec-discover .c-btn__01 {
    max-width: 194px;
  }
}

.discover-ttl {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 15px;
  color: white;
  font-weight: bold;
  font-size: 4rem;
  margin-bottom: 60px;
}
@media screen and (max-width: 834px) {
  .discover-ttl {
    font-size: 2.8rem;
    margin-bottom: 48px;
  }
}
.discover-ttl::before {
  content: "";
  display: inline-block;
  background: url(../img/index/icon-search-orange.svg) center no-repeat;
  background-size: contain;
  width: 60px;
  height: 60px;
  margin-top: 5px;
}
@media screen and (max-width: 834px) {
  .discover-ttl::before {
    width: 30px;
    height: 30px;
    margin-top: 2px;
  }
}

.discover-list {
  margin-bottom: 60px;
}
@media screen and (min-width: 1025px) {
  .discover-list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 20px 0;
    pointer-events: none;
  }
}
@media screen and (min-width: 1025px) and (any-hover: hover) {
  .discover-list:hover .discover-list__item:first-child a::before {
    background: url(../img/index/plus-white.svg) center no-repeat;
    background-size: contain;
  }
  .discover-list:hover .discover-list__item:first-child a::after {
    opacity: 1;
  }
  .discover-list:hover .discover-list__item:first-child a .discover-list__img::after {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 49.52%, #006a9e 100%);
  }
}
@media screen and (min-width: 1025px) and (any-hover: hover) and (any-hover: hover) {
  .discover-list:hover .discover-list__item:first-child a:hover {
    opacity: 1;
  }
  .discover-list:hover .discover-list__item:first-child a:hover::before {
    background: url(../img/index/plus-yellow.svg) center no-repeat;
    background-size: contain;
  }
  .discover-list:hover .discover-list__item:first-child a:hover::after {
    opacity: 0;
  }
  .discover-list:hover .discover-list__item:first-child a:hover .discover-list__img::after {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 49.52%, #006a9e 100%);
  }
}
@media screen and (max-width: 1024px) {
  .discover-list__item:not(:last-child) {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 1025px) {
  .discover-list__item {
    width: 450px;
    pointer-events: auto;
  }
  .discover-list__item:first-child {
    order: 2;
    margin: -370px auto 0;
  }
  .discover-list__item:first-child a {
    opacity: 1;
    z-index: 2;
  }
  .discover-list__item:first-child a::before {
    background: url(../img/index/plus-yellow.svg) center no-repeat;
    background-size: contain;
  }
  .discover-list__item:first-child a::after {
    opacity: 0;
  }
  .discover-list__item:first-child a .discover-list__img::after {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 49.52%, #006a9e 100%);
  }
  .discover-list__item:nth-child(2) {
    order: 1;
  }
}
.discover-list__item a {
  text-align: center;
  position: relative;
  display: block;
  border-radius: 20px;
  overflow: hidden;
}
.discover-list__item a::before {
  content: "";
  position: absolute;
  width: 50px;
  height: 50px;
  background: url(../img/index/plus-white.svg) center no-repeat;
  background-size: contain;
  top: 25px;
  right: 25px;
  transition: 0.3s ease;
  z-index: 1;
}
@media screen and (max-width: 1024px) {
  .discover-list__item a::before {
    width: 38px;
    height: 38px;
    background: url(../img/index/plus-yellow.svg) center no-repeat;
    background-size: contain;
    top: 19px;
    right: 19px;
  }
}
.discover-list__item a::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(44, 61, 69, 0.8);
  top: 0;
  left: 0;
  object-fit: cover;
  transition: 0.3s ease;
}
@media screen and (max-width: 1024px) {
  .discover-list__item a::after {
    opacity: 0;
  }
}
.discover-list__item a p {
  position: absolute;
  width: 100%;
  color: white;
  font-weight: bold;
  font-size: 2.5rem;
  padding: 13px 15px;
  bottom: 0;
  left: 0;
  z-index: 2;
}
@media screen and (max-width: 834px) {
  .discover-list__item a p {
    font-size: 1.8rem;
    padding: 9px 15px;
  }
}
@media (any-hover: hover) {
  .discover-list__item a:hover {
    opacity: 1;
    z-index: 3;
  }
  .discover-list__item a:hover::before {
    background: url(../img/index/plus-yellow.svg) center no-repeat;
    background-size: contain;
  }
  .discover-list__item a:hover::after {
    opacity: 0;
  }
  .discover-list__item a:hover .discover-list__img::after {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 49.52%, #006a9e 100%);
  }
}
.discover-list__img {
  position: relative;
}
.discover-list__img::before {
  content: "";
  display: block;
  padding-bottom: 100%;
}
@media screen and (max-width: 1024px) {
  .discover-list__img::before {
    padding-bottom: 236px;
  }
}
.discover-list__img::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 49.52%, #006a9e 100%);
  top: 0;
  left: 0;
  transition: 0.3s ease;
}
@media screen and (max-width: 1024px) {
  .discover-list__img::after {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 49.52%, #006a9e 100%);
  }
}
.discover-list__img img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  object-fit: cover;
}

.personal-heading {
  padding: 42px 0 71px;
}
@media screen and (max-width: 834px) {
  .personal-heading {
    padding: 20px 0 51px;
  }
}
.personal-heading__list .slick-list {
  padding: 0 14.7% !important;
}
@media screen and (max-width: 834px) {
  .personal-heading__list .slick-list {
    padding: 0 9% !important;
  }
}
.personal-heading__list .slick-arrow {
  width: 58px;
  height: 58px;
  background: white;
  border-radius: 50%;
  z-index: 9;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.25);
}
@media screen and (max-width: 834px) {
  .personal-heading__list .slick-arrow {
    width: 35px;
    height: 35px;
  }
}
.personal-heading__list .slick-arrow:before {
  display: none;
}
.personal-heading__list .slick-arrow:after {
  content: "";
  border: solid #2CA6E0;
  border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 8px;
  margin: 0 auto;
}
@media screen and (max-width: 834px) {
  .personal-heading__list .slick-arrow:after {
    padding: 5px;
  }
}
.personal-heading__list .slick-arrow.slick-prev {
  left: 10.5%;
  padding: 0 0 0 7px;
}
@media screen and (max-width: 834px) {
  .personal-heading__list .slick-arrow.slick-prev {
    left: 4%;
    padding: 0 0 0 6px;
  }
}
.personal-heading__list .slick-arrow.slick-prev:after {
  transform: rotate(135deg);
}
.personal-heading__list .slick-arrow.slick-next {
  right: 10.5%;
  padding: 0 7px 0 0;
}
@media screen and (max-width: 834px) {
  .personal-heading__list .slick-arrow.slick-next {
    right: 4%;
    padding: 0 6px 0 0;
  }
}
.personal-heading__list .slick-arrow.slick-next:after {
  transform: rotate(-45deg);
}
.personal-heading__list .slick-dots {
  bottom: -40px;
}
@media screen and (max-width: 834px) {
  .personal-heading__list .slick-dots {
    bottom: -30px;
  }
}
@media screen and (max-width: 834px) {
  .personal-heading__list .slick-dots li {
    margin: 0 6px;
  }
}
.personal-heading__list .slick-dots li button {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #d9d9d9;
  padding: 0;
  border: none;
}
.personal-heading__list .slick-dots li button:before {
  display: none;
}
.personal-heading__list .slick-dots li.slick-active button {
  background: #2CA6E0;
}
.personal-heading__list-item {
  padding: 0 21px;
}
@media screen and (max-width: 834px) {
  .personal-heading__list-item {
    padding: 0 15px;
  }
}
.personal-heading__list-item img {
  width: 100%;
  border-radius: 10px;
}

.personal-about {
  background: #1a5d7d;
  padding: 50px 0 59px;
}
@media screen and (max-width: 834px) {
  .personal-about {
    padding: 29px 0;
  }
}
.personal-about__ttl {
  display: block;
  border: 1px solid white;
  font-size: 1.9rem;
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
  color: white;
  padding: 12px;
  border-radius: 60px;
  margin-bottom: 38px;
}
@media screen and (max-width: 834px) {
  .personal-about__ttl {
    font-size: 1.6rem;
    padding: 8px;
    margin-bottom: 32px;
  }
}
.personal-about__nav {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 47px;
}
@media screen and (max-width: 834px) {
  .personal-about__nav {
    margin-bottom: 36px;
  }
}
.personal-about__nav li {
  padding: 0 19px;
}
@media screen and (max-width: 834px) {
  .personal-about__nav li {
    padding: 0 11px;
  }
}
.personal-about__nav li span {
  display: block;
  color: white;
  font-weight: bold;
  font-size: 1.8rem;
  position: relative;
  letter-spacing: 3px;
  padding: 0 0 9px;
  cursor: pointer;
}
@media screen and (max-width: 834px) {
  .personal-about__nav li span {
    font-size: 1.5rem;
  }
}
.personal-about__nav li span:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: #f19500;
  border-radius: 10px;
  opacity: 0;
  visibility: hidden;
}
@media (any-hover: hover) {
  .personal-about__nav li span:hover:after {
    opacity: 1;
    visibility: visible;
  }
}
.personal-about__nav li.is-active span:after {
  opacity: 1;
  visibility: visible;
}
.personal-about__block {
  max-width: 940px;
  margin: 0 auto;
}
@media screen and (max-width: 834px) {
  .personal-about__block {
    padding: 0 5px;
  }
}
.personal-about__block .slick-list {
  margin: 0 -15px;
}
.personal-about__block .slick-arrow {
  top: 14px;
  transform: translate(0, 0);
}
@media screen and (max-width: 834px) {
  .personal-about__block .slick-arrow {
    top: 4px;
  }
}
.personal-about__block .slick-arrow:before {
  display: none;
}
.personal-about__block .slick-arrow:after {
  content: "";
  border: solid white;
  border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 9px;
}
.personal-about__block .slick-arrow.slick-prev {
  left: -20px;
}
@media screen and (max-width: 834px) {
  .personal-about__block .slick-arrow.slick-prev {
    left: 2px;
  }
}
.personal-about__block .slick-arrow.slick-prev:after {
  transform: rotate(135deg);
}
.personal-about__block .slick-arrow.slick-next {
  right: -20px;
}
@media screen and (max-width: 834px) {
  .personal-about__block .slick-arrow.slick-next {
    right: 2px;
  }
}
.personal-about__block .slick-arrow.slick-next:after {
  transform: rotate(-45deg);
}
.personal-about__block-item {
  padding: 0 15px;
}
.personal-about__block-heading {
  display: block;
  text-align: center;
  color: white;
  font-size: 2.5rem;
  font-weight: bold;
  letter-spacing: 5px;
  margin-bottom: 27px;
}
.personal-about__block-box {
  background: white;
  border-radius: 20px;
  height: 100%;
  padding: 30px 20px;
  box-shadow: 4px 4px 4px 0 rgba(0, 0, 0, 0.2);
}
.personal-about__block-box--custom {
  max-width: 450px;
  margin: 0 auto;
}
.personal-about__block-ttl {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: 2.5rem;
  color: #2CA6E0;
  line-height: 1.4;
  font-weight: bold;
  margin-bottom: 32px;
}
.personal-about__block-ttl img {
  display: block;
  margin: 0 10px 0 0;
}
.personal-about__block-links {
  margin-bottom: 15px;
}
.personal-about__block-links li {
  margin-bottom: 11px;
}
.personal-about__block-links li:last-child {
  margin-bottom: 0;
}
.personal-about__block-links li a {
  border: 1px solid #2CA6E0;
  border-radius: 10px;
  font-size: 1.5rem;
  font-weight: 700;
  display: block;
  padding: 12px;
  text-align: center;
  color: #2CA6E0;
}
@media (any-hover: hover) {
  .personal-about__block-links li a:hover {
    opacity: 1;
    background: #2CA6E0;
    color: white;
  }
}
.personal-about__block-other {
  padding: 14px 0 0 0;
}
.personal-about__block-other li {
  margin-bottom: 12px;
}
.personal-about__block-other li:last-child {
  margin-bottom: 0;
}
.personal-about__block-other li a {
  display: block;
  color: #2CA6E0;
  font-size: 1.5rem;
  position: relative;
  padding: 0 0 0 15px;
}
.personal-about__block-other li a:before {
  content: "";
  border: solid #2CA6E0;
  border-width: 0 1px 1px 0;
  display: inline-block;
  padding: 3px;
  transform: rotate(-45deg);
  position: absolute;
  top: 8px;
  left: 0;
}

#page-citygas_fee .gas-block__heading span:before {
  background: unset;
  content: "×";
  color: #fff;
  font-size: 2rem;
  width: unset;
  height: unset;
  bottom: -5px;
}
#page-citygas_fee .gas-block h4 {
  font-size: 1.8rem;
  font-weight: 500;
  color: #f19500;
  margin-bottom: 15px;
  text-align: center;
}
#page-citygas_fee .gas-sale__img {
  max-width: 300px;
  width: 100%;
  margin: 20px auto 0;
}
#page-citygas_fee .gas-box__item {
  background: #fff;
}
#page-citygas_fee .gas-block .c-txt__basic {
  color: #fff;
}
#page-citygas_fee .gas-box__ttl {
  color: #F19500;
}
#page-citygas_fee .gas-box__price span {
  color: #F19500;
}
#page-citygas_fee .gas-desc {
  color: #fff;
}

.clause_ttl {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 20px;
  color: #2CA6E0;
}
@media screen and (max-width: 834px) {
  .clause_ttl {
    font-size: 1.8rem;
  }
}
.clause_list {
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(4, 1fr);
}
@media screen and (max-width: 834px) {
  .clause_list {
    grid-template-columns: repeat(1, 1fr);
    gap: 10px;
  }
}
@media screen and (max-width: 834px) {
  .clause_list_item {
    border-bottom: #2CA6E0 solid 1px;
  }
  .clause_list_item:last-child {
    border-bottom: none;
  }
}
.clause_list_item ul li {
  margin-bottom: 20px;
}
.clause_list_item ul li a {
  font-size: 1.5rem;
  text-decoration: underline;
  text-decoration-thickness: 1px;
}
.clause_list_item ul li a span {
  font-size: 1.2rem;
}

.sec-plan {
  padding: 61px 0 49px;
}
@media screen and (max-width: 834px) {
  .sec-plan {
    padding: 50px 0 49px;
  }
}

.plan-block {
  border: 1px solid #2CA6E0;
  border-radius: 20px;
  padding: 38px 19px;
}
@media screen and (max-width: 834px) {
  .plan-block {
    padding: 21px 19px 15px;
  }
}
.plan-block__ttl {
  display: block;
  text-align: center;
  font-size: 2.4rem;
  line-height: 1.4;
  font-weight: bold;
  color: #2CA6E0;
  margin-bottom: 7px;
}
.plan-block__note {
  text-align: center;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.6666666667;
  margin-bottom: 31px;
}
.plan-block__note span {
  color: #f19500;
}
.plan-block__note small {
  display: block;
  font-size: 1.1rem;
}
.plan-block__parameter {
  max-width: 662px;
  margin: 0 auto;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.6666666667;
}
.plan-block__parameter-show {
  width: 46%;
}
@media screen and (max-width: 834px) {
  .plan-block__parameter-show {
    width: 100%;
    margin-bottom: 24px;
  }
}
.plan-block__parameter-show table {
  width: 100%;
  text-align: center;
  border: 1px solid #2CA6E0;
  background: white;
}
.plan-block__parameter-show table th {
  background: #e0f5ff;
  text-align: center;
  font-weight: 400;
  border-bottom: 1px solid #2CA6E0;
  padding: 5px;
}
.plan-block__parameter-show table th:nth-child(1) {
  width: 100px;
}
.plan-block__parameter-show table td {
  padding: 10px 5px;
}
.plan-block__parameter-show table th,
.plan-block__parameter-show table td {
  border-right: 1px solid #2CA6E0;
}
.plan-block__parameter-ct {
  width: 54%;
  padding: 0 0 0 7.5%;
}
@media screen and (max-width: 834px) {
  .plan-block__parameter-ct {
    width: 100%;
    padding: 0;
  }
}
.plan-block__parameter-ct-ttl {
  display: block;
  color: #2CA6E0;
  font-weight: bold;
  font-size: 2rem;
}
.plan-block__parameter-ct table {
  width: 100%;
}
.plan-block__parameter-ct table tr td {
  font-weight: bold;
  text-align: right;
}
.plan-block__parameter-ct table tr th,
.plan-block__parameter-ct table tr td {
  padding: 8px 0;
}
.plan-block__parameter-heading {
  background: #2CA6E0;
  color: white;
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.4;
  padding: 13px;
}
.plan-block__parameter-heading small {
  display: block;
  font-size: 1.3rem;
  font-weight: 400;
  padding: 6px 0 0;
}

.sec-works {
  padding: 59px 0 53px;
}
@media screen and (max-width: 834px) {
  .sec-works {
    padding: 30px 0 53px;
  }
}

.plan-works {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.plan-works__img {
  width: 48.5%;
}
@media screen and (max-width: 834px) {
  .plan-works__img {
    width: 100%;
    max-width: 345px;
    margin: 0 auto 60px;
  }
}
.plan-works__ct {
  width: 51.5%;
  padding: 0 0 0 32px;
}
@media screen and (max-width: 834px) {
  .plan-works__ct {
    width: 100%;
    padding: 0;
  }
}
.plan-works__ct dl {
  margin-bottom: 31px;
}
.plan-works__ct dl:last-child {
  margin-bottom: 0;
}
.plan-works__ct dl dt {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.2;
  color: #2CA6E0;
  display: inline-block;
  border: 1px solid #2CA6E0;
  padding: 9px 19px;
  margin-bottom: 19px;
}
.gas-sale {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px 30px;
  margin-bottom: 42px;
}
@media screen and (max-width: 834px) {
  .gas-sale {
    grid-template-columns: 1fr;
  }
}
.gas-sale__item {
  background: white;
  border-radius: 20px;
  padding: 27px 13% 51px;
}
@media screen and (max-width: 834px) {
  .gas-sale__item {
    padding: 27px 19px 59px;
  }
}
.gas-sale__heading {
  text-align: center;
  line-height: 1.4;
  font-size: 1.4rem;
  margin-bottom: 41px;
}
.gas-sale__heading-ttl {
  color: #f19500;
  font-weight: bold;
  font-size: 5.5rem;
}
.gas-sale__heading-ttl small {
  font-size: 2.4rem;
}
.gas-sale__heading-ttl span {
  font-size: 4rem;
}
.gas-sale__ct {
  font-weight: bold;
  margin-bottom: 31px;
}

#page-customer_plan .personal-support {
  padding-top: 80px;
}
@media screen and (max-width: 834px) {
  #page-customer_plan .personal-support {
    padding-top: 60px;
  }
}

@media screen and (min-width: 835px) {
  #page-customer_security .personal-iso {
    padding: 57px 0 51px;
  }
}
@media screen and (max-width: 834px) {
  #page-customer_security .personal-iso {
    padding: 29px 0 50px;
  }
}

.gas-system {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px 30px;
}
@media screen and (max-width: 834px) {
  .gas-system {
    grid-template-columns: 1fr;
  }
}
.gas-system__item {
  background: white;
  border-radius: 20px;
  padding: 52px 13% 51px;
}
@media screen and (max-width: 834px) {
  .gas-system__item {
    padding: 50px 19px;
  }
}
.gas-system__ttl {
  display: block;
  text-align: center;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.4166666667;
  font-weight: bold;
  color: #f19500;
  margin-bottom: 30px;
}

.sec-security {
  padding: 59px 0 30px;
}
@media screen and (max-width: 834px) {
  .sec-security {
    padding: 31px 0 21px;
  }
}

.security-note {
  margin-bottom: 78px;
}
@media screen and (max-width: 834px) {
  .security-note {
    margin-bottom: 55px;
  }
}
.security-note:last-child {
  margin-bottom: 0;
}
.security-note__ttl {
  display: block;
  font-weight: bold;
  font-size: 2rem;
  color: #2CA6E0;
  margin-bottom: 27px;
}
@media screen and (max-width: 834px) {
  .security-note__ttl {
    margin-bottom: 24px;
  }
}
.security-note dl {
  margin-bottom: 60px;
}
@media screen and (max-width: 834px) {
  .security-note dl {
    margin-bottom: 38px;
  }
}
.security-note dl:last-child {
  margin-bottom: 0;
}
.security-note table {
  width: 100%;
}
.security-note table tr td {
  padding: 10px 20px 11px;
  width: 50%;
  border: 1px solid #4b7b92;
}
@media screen and (max-width: 834px) {
  .security-note table tr td {
    padding: 11px 20px 12px;
  }
}
@media screen and (max-width: 834px) {
  .security-note--custom {
    overflow-x: scroll;
    margin-right: -15px;
    padding-right: 15px;
  }
  .security-note--custom table {
    width: 980px;
  }
}

.security-training__item {
  margin-bottom: 59px;
}
@media screen and (max-width: 834px) {
  .security-training__item {
    margin-bottom: 39px;
  }
}
.security-training__item:last-child {
  margin-bottom: 0;
}
.security-training__block {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.security-training__block-ct {
  width: 69.5%;
  padding: 0 40px 0 0;
}
@media screen and (max-width: 834px) {
  .security-training__block-ct {
    width: 100%;
    padding: 0;
    margin-bottom: 25px;
  }
}
.security-training__block-img {
  width: 30.5%;
  position: relative;
  overflow-x: hidden;
  border-radius: 20px;
}
@media screen and (max-width: 834px) {
  .security-training__block-img {
    width: 100%;
  }
}
.security-training__block-img:before {
  content: "";
  display: block;
  padding: 67% 0 0;
}
.security-training__block-img img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.gas_security_img {
  margin-top: 20px;
}
.gas_security_img img {
  border-radius: 20px;
}

.kerosene-contact {
  padding: 0 0 28px;
}
@media screen and (max-width: 834px) {
  .kerosene-contact {
    padding: 0 0 30px;
  }
}
@media screen and (min-width: 835px) {
  .kerosene-contact .c-btn__01 {
    margin-left: 0;
  }
}
.kerosene-contact__note {
  margin-bottom: 60px;
}
.kerosene-contact__note p {
  margin-bottom: 29px;
}
@media screen and (max-width: 834px) {
  .kerosene-contact__note p {
    margin-bottom: 20px;
  }
}
.kerosene-contact__list {
  padding: 40px 0 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  text-align: center;
}
@media screen and (max-width: 640px) {
  .kerosene-contact__list {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.7142857143;
    grid-template-columns: 1fr;
    gap: 10px;
  }
}
.kerosene-contact__list-item {
  border: 1px solid #2CA6E0;
  box-shadow: 1px 1px 4px 0 rgba(0, 0, 0, 0.4);
  background: white;
  border-radius: 20px;
  padding: 40px 40px 35px;
}
@media screen and (max-width: 834px) {
  .kerosene-contact__list-item {
    padding: 40px 28px 35px;
  }
}
.kerosene-contact__list-ttl {
  display: block;
  color: #2CA6E0;
  font-weight: bold;
  font-size: 2rem;
  line-height: 1.4;
  letter-spacing: 2px;
  margin-bottom: 10px;
}
@media screen and (max-width: 834px) {
  .kerosene-contact__list-ttl {
    font-size: 1.8rem;
  }
}
.kerosene-contact__list p {
  text-align: left;
  margin-bottom: 22px;
}
.kerosene-contact__list a {
  display: inline-block;
  position: relative;
  color: #2CA6E0;
  font-size: 2.4rem;
  font-weight: bold;
  padding: 0 0 0 27px;
}
.kerosene-contact__list a:before {
  content: "";
  width: 18px;
  height: 18px;
  background: url("../img/personal/kerosene_contact/tel.svg") no-repeat;
  background-size: 100%;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

.lpgas-area {
  padding: 60px 0 2px;
}
@media screen and (max-width: 834px) {
  .lpgas-area {
    padding: 30px 0 2px;
  }
}

.lpgas-areabox {
  max-width: 594px;
  margin: 0 auto;
}
.lpgas-areabox__img {
  width: 113px;
  margin: 0 auto 44px;
}
@media screen and (max-width: 834px) {
  .lpgas-areabox__img {
    margin: 0 auto 28px;
  }
}
.lpgas-areabox__des {
  margin-bottom: 67px;
}
@media screen and (max-width: 834px) {
  .lpgas-areabox__des {
    margin-bottom: 27px;
  }
}
.lpgas-areabox__des-sub {
  margin-bottom: 42px;
}
@media screen and (max-width: 834px) {
  .lpgas-areabox__des-sub {
    margin-bottom: 39px;
  }
}
.lpgas-areabox__des-sub:last-child {
  margin-bottom: 0;
}
.lpgas-areabox__des-sub > p {
  letter-spacing: 0.1em;
  line-height: 1.875;
  margin-bottom: 11px;
}
@media screen and (max-width: 834px) {
  .lpgas-areabox__des-sub > p {
    letter-spacing: 0;
    line-height: 1.6875;
  }
}
.lpgas-areabox__des-sub dl {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.community-gas__des {
  padding: 62px 0 0;
  text-align: center;
  color: #2ca6e0;
  font-weight: 700;
}
@media screen and (max-width: 834px) {
  .community-gas__des {
    text-align: left;
    padding: 30px 0 0;
  }
}
.community-gas__ct {
  margin-bottom: 50px;
}

.plan-works__modify .plan-works__img {
  text-align: center;
}
.plan-works__modify .plan-works__ct dl {
  margin-bottom: 60px;
}
@media screen and (max-width: 834px) {
  .plan-works__modify .plan-works__ct dl {
    margin-bottom: 31px;
  }
}
.plan-works__modify .plan-works__ct dl:last-child {
  margin-bottom: 0;
}
.plan-works__modify-heading {
  width: 100%;
  background: #2ca6e0;
  color: #fff;
  width: 100%;
  font-weight: 700;
  height: 69px;
  padding: 10px 10px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 45px;
  position: relative;
}
.plan-works__modify-heading:after {
  content: "";
  width: 14px;
  height: 25px;
  background: url("../img/common/vertical_equal.svg") no-repeat center center;
  background-size: 100%;
  position: absolute;
  top: calc(100% + 9px);
  left: 50%;
  transform: translateX(-50%);
}
.plan-works__modify-ttl {
  width: 100%;
  font-weight: 700;
  height: 49px;
  padding: 10px 10px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  color: #2ca6e0;
  border: 1px solid #2ca6e0;
  margin-bottom: 39px;
  position: relative;
}
.plan-works__modify-ttl:after {
  content: "";
  width: 18px;
  height: 18px;
  background: url("../img/common/icon_plus.svg") no-repeat center center;
  background-size: 100%;
  position: absolute;
  top: calc(100% + 12px);
  left: 50%;
  transform: translateX(-50%);
}
.plan-works__modify-ct {
  border: 1px solid #2ca6e0;
  padding: 10px 15px 15px;
  width: 100%;
  font-weight: 700;
}
.plan-works__modify-ctttl {
  color: #2ca6e0;
  margin-bottom: 7px;
  font-weight: 700;
}
.plan-works__modify-ctbtn {
  padding: 0px 13px;
  border-radius: 30px;
  border: 1px solid #555555;
  overflow: hidden;
}
@media screen and (max-width: 834px) {
  .plan-works__modify-ctbtn {
    padding: 2px 13px;
  }
}
.plan-works__modify-ctbtn--yellow {
  color: #f19500;
}
.plan-works__modify-ctt {
  margin-bottom: 36px;
  position: relative;
}
.plan-works__modify-ctt:after {
  content: "";
  width: 18px;
  height: 18px;
  background: url("../img/common/icon_multi.svg") no-repeat center center;
  background-size: 100%;
  position: absolute;
  top: calc(100% + 9px);
  left: 50%;
  transform: translateX(-50%);
}
.plan-works__modify-ctbt .plan-works__modify-ctbtn {
  margin-bottom: 7px;
  display: inline-block;
}
.plan-works__modify-ctmain {
  padding: 2px 10px;
  background: #efefef;
  display: inline-block;
  font-size: 1.3rem;
  min-width: 230px;
}
.plan-works__modify-ctadd {
  display: inline-block;
}
.plan-works__modify-ctadd--blue {
  color: #2ca6e0;
}

.sec-price {
  padding: 78px 0 29px;
}
@media screen and (max-width: 834px) {
  .sec-price {
    padding: 63px 0 27px;
  }
}

.price-des {
  margin-bottom: 59px;
}
@media screen and (max-width: 834px) {
  .price-des {
    margin-bottom: 39px;
  }
}

.price-box {
  margin-bottom: 58px;
}
@media screen and (max-width: 834px) {
  .price-box {
    margin-bottom: 40px;
  }
}
.price-box:last-child {
  margin-bottom: 0;
}
.price-box .c-btn__01 {
  margin-left: 0;
  margin-bottom: 29px;
}
.price-box__ct {
  margin-bottom: 19px;
}
.price-box__ct-ttl {
  font-weight: 700;
}
.price-box__ct dl {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0 15px;
}

.price-list__btn {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  gap: 0 20px;
}
.price-list__btn-ct {
  border: 1px solid #2ca6e0;
  border-radius: 10px;
  padding: 10px 20px;
  color: #2ca6e0;
  min-width: 305px;
  text-align: center;
}
@media screen and (max-width: 834px) {
  .price-list__btn-ct {
    min-width: auto;
    width: 100%;
    max-width: 345px;
    padding: 9px 20px;
    margin-bottom: 10px;
  }
  .price-list__btn-ct:last-child {
    margin-bottom: 0;
  }
}

#popupgas01 .popup-wrap, #popupgas02 .popup-wrap, #popupgas03 .popup-wrap {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
#popupgas01 .popup-wrap__close, #popupgas02 .popup-wrap__close, #popupgas03 .popup-wrap__close {
  width: 17px;
  height: 17px;
  top: 15px;
  right: 13px;
}
#popupgas01 .popup-wrap__close::before, #popupgas01 .popup-wrap__close:after, #popupgas02 .popup-wrap__close::before, #popupgas02 .popup-wrap__close:after, #popupgas03 .popup-wrap__close::before, #popupgas03 .popup-wrap__close:after {
  width: 23px;
  background-color: #555;
}
#popupgas01 .popup-wrap__ct, #popupgas02 .popup-wrap__ct, #popupgas03 .popup-wrap__ct {
  background: #ebebeb;
  padding-top: 60px;
  padding-bottom: 60px;
  width: 100%;
}
@media screen and (max-width: 834px) {
  #popupgas01 .popup-wrap__ct, #popupgas02 .popup-wrap__ct, #popupgas03 .popup-wrap__ct {
    padding: 40px 15px;
  }
}
#popupgas01 .popup-wrap__ct-ttl, #popupgas02 .popup-wrap__ct-ttl, #popupgas03 .popup-wrap__ct-ttl {
  text-align: center;
  color: #555;
  font-size: 1.5rem;
  width: 100%;
  justify-content: center;
}
#popupgas01 .popup-wrap__table, #popupgas02 .popup-wrap__table, #popupgas03 .popup-wrap__table {
  max-width: 580px;
  margin: 0 auto;
  width: 100%;
  overflow-x: auto;
}
@media screen and (max-width: 834px) {
  #popupgas01 .popup-wrap__table, #popupgas02 .popup-wrap__table, #popupgas03 .popup-wrap__table {
    margin-right: -15px;
    width: calc(100% + 15px);
  }
}
#popupgas01 .popup-wrap__table table, #popupgas02 .popup-wrap__table table, #popupgas03 .popup-wrap__table table {
  width: 100%;
  font-size: 1.6rem;
  color: #fff;
  background: #fff;
}
@media screen and (max-width: 640px) {
  #popupgas01 .popup-wrap__table table, #popupgas02 .popup-wrap__table table, #popupgas03 .popup-wrap__table table {
    width: 580px;
  }
}
#popupgas01 .popup-wrap__table table tr th,
#popupgas01 .popup-wrap__table table tr td, #popupgas02 .popup-wrap__table table tr th,
#popupgas02 .popup-wrap__table table tr td, #popupgas03 .popup-wrap__table table tr th,
#popupgas03 .popup-wrap__table table tr td {
  border-bottom: 1px solid #4b7b92;
  border-right: 1px solid #4b7b92;
}
#popupgas01 .popup-wrap__table table tr th:nth-child(1),
#popupgas01 .popup-wrap__table table tr td:nth-child(1), #popupgas02 .popup-wrap__table table tr th:nth-child(1),
#popupgas02 .popup-wrap__table table tr td:nth-child(1), #popupgas03 .popup-wrap__table table tr th:nth-child(1),
#popupgas03 .popup-wrap__table table tr td:nth-child(1) {
  width: 30.3448275862%;
}
#popupgas01 .popup-wrap__table table tr th:nth-child(2),
#popupgas01 .popup-wrap__table table tr td:nth-child(2), #popupgas02 .popup-wrap__table table tr th:nth-child(2),
#popupgas02 .popup-wrap__table table tr td:nth-child(2), #popupgas03 .popup-wrap__table table tr th:nth-child(2),
#popupgas03 .popup-wrap__table table tr td:nth-child(2) {
  width: 27.4137931034%;
}
#popupgas01 .popup-wrap__table table tr th:nth-child(3),
#popupgas01 .popup-wrap__table table tr td:nth-child(3), #popupgas02 .popup-wrap__table table tr th:nth-child(3),
#popupgas02 .popup-wrap__table table tr td:nth-child(3), #popupgas03 .popup-wrap__table table tr th:nth-child(3),
#popupgas03 .popup-wrap__table table tr td:nth-child(3) {
  width: 42.2413793103%;
}
#popupgas01 .popup-wrap__table table tr th, #popupgas02 .popup-wrap__table table tr th, #popupgas03 .popup-wrap__table table tr th {
  background: #1a5d7d;
  padding: 13px 20px;
}
#popupgas01 .popup-wrap__table table tr td, #popupgas02 .popup-wrap__table table tr td, #popupgas03 .popup-wrap__table table tr td {
  text-align: center;
  color: #555;
}
#popupgas01 .popup-wrap__table table tr:nth-child(1) th, #popupgas02 .popup-wrap__table table tr:nth-child(1) th, #popupgas03 .popup-wrap__table table tr:nth-child(1) th {
  text-align: center;
}
#popupgas01 .popup-wrap__table table tr:nth-child(1) th:first-child, #popupgas02 .popup-wrap__table table tr:nth-child(1) th:first-child, #popupgas03 .popup-wrap__table table tr:nth-child(1) th:first-child {
  padding: 15px 20px;
  text-align: left;
}

.sec-corporatecustmer {
  padding: 34px 0 98px;
}
@media screen and (max-width: 834px) {
  .sec-corporatecustmer {
    padding: 31px 0 80px;
  }
}

.corporatecustmer-heading {
  max-width: 1330px;
  padding: 0 15px;
  margin: 0 auto 36px;
}
@media screen and (max-width: 834px) {
  .corporatecustmer-heading {
    margin-bottom: 28px;
  }
}
.corporatecustmer-heading__ttl {
  display: block;
  font-weight: bold;
  border-left: 9px solid #F19500;
  padding: 12px 0 14px 16px;
  margin-bottom: -50px;
}
@media screen and (max-width: 834px) {
  .corporatecustmer-heading__ttl {
    margin-bottom: 7px;
  }
}
.corporatecustmer-heading__ttl span {
  display: block;
}
.corporatecustmer-heading__ttl .c-ft--en {
  color: #F19500;
  font-size: 2rem;
  margin-bottom: 14px;
}
@media screen and (max-width: 834px) {
  .corporatecustmer-heading__ttl .c-ft--en {
    font-size: 1.5rem;
    line-height: 1.6;
    margin-bottom: 15px;
  }
}
.corporatecustmer-heading__ttl .c-ft--jp {
  font-size: 4.5rem;
  line-height: 1.45;
}
@media screen and (max-width: 834px) {
  .corporatecustmer-heading__ttl .c-ft--jp {
    font-size: 2rem;
  }
}

.corporatecustmer-block {
  overflow: hidden;
  position: relative;
  transform: skewY(-8.7deg);
  margin-bottom: 72px;
}
@media screen and (max-width: 834px) {
  .corporatecustmer-block {
    margin-bottom: 47px;
  }
}
.corporatecustmer-block:before {
  content: "";
  position: absolute;
  top: 9%;
  left: 0;
  right: 0;
  bottom: 11%;
  background: #f8f052;
  background: linear-gradient(90deg, rgba(248, 240, 82, 0.73), #f19500);
  transform: skewY(3deg);
}
@media screen and (max-width: 834px) {
  .corporatecustmer-block:before {
    bottom: 6%;
    top: 12%;
  }
}
.corporatecustmer-block .slick-dots {
  left: auto;
  right: 15.5%;
  bottom: 144px;
  transform: skewY(2deg);
  display: flex;
  -ms-flex-pack: end;
  justify-content: flex-end;
  width: auto;
}
@media screen and (max-width: 834px) {
  .corporatecustmer-block .slick-dots {
    right: 15px;
    bottom: 12%;
  }
}
.corporatecustmer-block .slick-dots li {
  margin: 0 15px;
}
@media screen and (max-width: 834px) {
  .corporatecustmer-block .slick-dots li {
    margin: 0 13px;
  }
}
.corporatecustmer-block .slick-dots li button {
  padding: 0;
  transform: skewY(9deg);
}
.corporatecustmer-block .slick-dots li button:before {
  border: 1px solid white;
  width: 10px;
  height: 10px;
  background: none;
}
.corporatecustmer-block .slick-dots li.slick-active button {
  padding: 0;
}
.corporatecustmer-block .slick-dots li.slick-active button:before {
  background: white;
}
.corporatecustmer-block__slider .slick-list {
  padding: 0 19% 150px 19% !important;
  overflow: initial !important;
}
@media screen and (max-width: 834px) {
  .corporatecustmer-block__slider .slick-list {
    padding: 0 7% 60px !important;
  }
}
.corporatecustmer-block__slider-item {
  padding: 4.4vw 15px;
  transition: all 0.3s ease;
  transform: skewY(9deg);
}
@media screen and (max-width: 834px) {
  .corporatecustmer-block__slider-item {
    padding: 4.4vw 10px;
  }
}
.corporatecustmer-block__slider-item img {
  border-radius: 10px;
}
.corporatecustmer-note {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.corporatecustmer-note__ct {
  width: 49%;
  font-weight: 500;
  line-height: 1.8;
}
@media screen and (max-width: 834px) {
  .corporatecustmer-note__ct {
    width: 100%;
    line-height: 1.5;
  }
}
.corporatecustmer-note__ct-heading {
  border-left: 5px solid #F19500;
  padding: 0 0 0 21px;
  margin-bottom: 41px;
}
@media screen and (max-width: 834px) {
  .corporatecustmer-note__ct-heading {
    margin-bottom: 26px;
  }
}
.corporatecustmer-note__ct-heading-ttl {
  display: block;
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.8;
  font-weight: bold;
  color: #F19500;
  margin-bottom: 20px;
}
@media screen and (max-width: 834px) {
  .corporatecustmer-note__ct-heading-ttl {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.5;
  }
}
.corporatecustmer-note__ct .c-btn__04 {
  text-align: left;
  margin-left: 0;
  margin-bottom: 20px;
}
@media screen and (max-width: 834px) {
  .corporatecustmer-note__ct .c-btn__04 {
    margin: 0 auto 20px;
  }
}
.corporatecustmer-note__ct .c-btn__04:last-child {
  margin-bottom: 0;
}
.corporatecustmer-note__img {
  width: 51%;
}
@media screen and (max-width: 834px) {
  .corporatecustmer-note__img {
    width: 100%;
  }
  .corporatecustmer-note__img--sp {
    max-width: 400px;
    margin: 0 auto;
  }
}
.corporatecustmer-note__img--custom {
  margin: -25px -30px 0 0;
}
@media screen and (max-width: 834px) {
  .corporatecustmer-note__img--custom {
    margin: -25px -11px 31px -17px;
  }
}

.sec-corporatecustmer-equipment {
  padding: 60px 0;
  background: #f1f1f1;
}
@media screen and (max-width: 834px) {
  .sec-corporatecustmer-equipment {
    padding: 49px 0;
  }
}

.corporatecustmer-equipment {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 30px;
}
@media screen and (max-width: 640px) {
  .corporatecustmer-equipment {
    grid-template-columns: 1fr;
  }
}
.corporatecustmer-equipment a {
  display: block;
  border-radius: 10px;
  background: white;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.25);
}
@media (any-hover: hover) {
  .corporatecustmer-equipment a:hover {
    opacity: 1;
    background: #F19500;
    color: white;
  }
  .corporatecustmer-equipment a:hover .corporatecustmer-equipment__ttl {
    color: white;
  }
  .corporatecustmer-equipment a:hover .corporatecustmer-equipment__ttl:after {
    border: solid white;
    border-width: 0 1px 1px 0;
    display: inline-block;
    padding: 4px;
  }
}
.corporatecustmer-equipment__img img {
  width: 100%;
}
.corporatecustmer-equipment__ttl {
  display: block;
  color: #F19500;
  font-weight: bold;
  position: relative;
  font-size: 1.6rem;
  padding: 14px 15px;
  letter-spacing: 1px;
}
.corporatecustmer-equipment__ttl:after {
  content: "";
  border: solid #F19500;
  border-width: 0 1px 1px 0;
  display: inline-block;
  padding: 4px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
  right: 18px;
}

.sec-corporatecustmer-service {
  padding: 117px 0 0;
}
@media screen and (max-width: 834px) {
  .sec-corporatecustmer-service {
    padding: 75px 0 0;
  }
}

.corporatecustmer-service__ttl {
  display: block;
  text-align: center;
  position: relative;
  font-weight: bold;
  padding: 0 0 26px;
  margin-bottom: 41px;
}
@media screen and (max-width: 834px) {
  .corporatecustmer-service__ttl {
    margin-bottom: 31px;
  }
}
.corporatecustmer-service__ttl:after {
  content: "";
  width: 130px;
  height: 4px;
  background: #F19500;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.corporatecustmer-service__ttl span {
  display: block;
}
.corporatecustmer-service__ttl .c-ft--en {
  color: #F19500;
  font-size: 2rem;
  margin-bottom: 15px;
}
.corporatecustmer-service__ttl .c-ft--jp {
  font-size: 3rem;
  letter-spacing: 1px;
}
.corporatecustmer-service__note {
  text-align: center;
  line-height: 1.8;
  margin-bottom: 60px;
  font-weight: 500;
}
@media screen and (max-width: 834px) {
  .corporatecustmer-service__note {
    line-height: 1.5;
    text-align: left;
    margin-bottom: 50px;
  }
}
.corporatecustmer-service__list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 30px;
  margin-bottom: 80px;
}
@media screen and (max-width: 640px) {
  .corporatecustmer-service__list {
    grid-template-columns: 1fr;
    margin-bottom: 62px;
  }
}
.corporatecustmer-service__list a {
  display: block;
  background: #5e5c54;
  border-radius: 10px;
  overflow: hidden;
}
@media (any-hover: hover) {
  .corporatecustmer-service__list a:hover {
    opacity: 1;
    background: #F19500;
  }
  .corporatecustmer-service__list a:hover img {
    transform: scale(1.1);
  }
}
.corporatecustmer-service__list-img {
  overflow: hidden;
}
.corporatecustmer-service__list-img img {
  width: 100%;
  transition: all 0.3s ease;
  aspect-ratio: 16/9;
  object-fit: cover;
}
.corporatecustmer-service__list-ct {
  padding: 22px 15px 25px;
  color: white;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.5;
  font-weight: 500;
}
.corporatecustmer-service__list-ct-ttl {
  display: block;
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 10px;
}
.corporatecustmer-service__list-ct p {
  height: 47px;
}

.subsidy_deco {
  position: relative;
  padding-right: 180px;
  z-index: 0;
}
@media screen and (max-width: 834px) {
  .subsidy_deco {
    padding-right: 30px;
    padding-bottom: 150px;
  }
}
.subsidy_deco::after {
  content: "";
  position: absolute;
  width: 150px;
  height: 150px;
  right: 20px;
  bottom: 0;
  background: url(../img/corporatecustmer/subsidy/subsidy_deco.png) center/contain no-repeat;
  z-index: 1;
}
@media screen and (max-width: 834px) {
  .subsidy_deco::after {
    width: 110px;
    height: 130px;
  }
}

.sec-disaster-prevention {
  padding: 59px 0 0;
}
@media screen and (max-width: 834px) {
  .sec-disaster-prevention {
    padding: 12px 0 0;
  }
}

.disaster-prevention__note {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.8;
  font-weight: bold;
  color: #F19500;
  max-width: 799px;
  margin: 0 auto 60px;
}
@media screen and (max-width: 834px) {
  .disaster-prevention__note {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.8;
    margin-bottom: 50px;
  }
}
.disaster-prevention__note span {
  font-size: 1.3rem;
  margin-top: 20px;
  display: block;
  line-height: normal;
}
.disaster-prevention__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  margin-bottom: 80px;
}
@media screen and (max-width: 640px) {
  .disaster-prevention__list {
    grid-template-columns: 1fr;
  }
}
.disaster-prevention__list-item {
  background: #F8F8F8;
  border-radius: 10px;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.25);
  padding: 30px;
}
@media screen and (max-width: 834px) {
  .disaster-prevention__list-item {
    gap: 17px;
    padding: 20px;
  }
}
.disaster-prevention__list-img {
  border-radius: 10px;
  position: relative;
  overflow: hidden;
  margin-bottom: 21px;
}
.disaster-prevention__list-img:before {
  content: "";
  display: block;
  padding: 56.5% 0 0;
}
.disaster-prevention__list-img img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
}
@media screen and (max-width: 834px) {
  .disaster-prevention__list-ct {
    line-height: 1.8;
  }
}
.disaster-prevention__list-ct-ttl {
  display: block;
  font-weight: bold;
  color: #F19500;
  font-size: 2.2rem;
  letter-spacing: 1px;
  margin-bottom: 16px;
}
@media screen and (max-width: 834px) {
  .disaster-prevention__list-ct-ttl {
    font-size: 1.8rem;
  }
}
.disaster-prevention__banner {
  background: url("../img/corporatecustmer/disaster_prevention/bg.jpg") no-repeat;
  background-size: cover;
  color: white;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.95;
  font-weight: bold;
  margin-bottom: 60px;
  padding: 60px 32% 60px 6%;
  border-radius: 20px;
}
@media screen and (max-width: 834px) {
  .disaster-prevention__banner {
    background: url("../img/corporatecustmer/disaster_prevention/bg-sp.jpg") no-repeat;
    background-size: cover;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.8;
    padding: 60px 15px;
    margin-bottom: 40px;
  }
}
.disaster-prevention__banner p {
  margin-bottom: 60px;
}
.disaster-prevention__banner .c-btn__01 {
  margin-left: 0;
}
.disaster-prevention__source {
  background: #EAF8FF;
  border-radius: 20px;
  padding: 26px 30px;
  color: #2CA6E0;
  margin-bottom: 63px;
}
@media screen and (max-width: 834px) {
  .disaster-prevention__source {
    padding: 27px 20px 15px;
    margin-bottom: 29px;
  }
}
.disaster-prevention__source-box {
  border-left: 2px solid #2CA6E0;
  padding: 0 0 0 31px;
}
@media screen and (max-width: 834px) {
  .disaster-prevention__source-box {
    padding: 0 0 0 22px;
  }
}
.disaster-prevention__source-ttl {
  display: block;
  font-size: 2.4rem;
  font-weight: bold;
  margin-bottom: 15px;
}
@media screen and (max-width: 834px) {
  .disaster-prevention__source-ttl {
    font-size: 1.8rem;
    margin-bottom: 19px;
  }
}
.disaster-prevention__source p {
  margin-bottom: 15px;
}
.disaster-prevention__source a {
  color: #2CA6E0;
  text-decoration: underline;
}

.safety-system {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 30px;
  margin-bottom: 62px;
}
@media screen and (max-width: 1024px) {
  .safety-system {
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (max-width: 640px) {
  .safety-system {
    grid-template-columns: 1fr;
    gap: 22px;
  }
}
.safety-system__item {
  padding: 40px 15px;
  background: #fcf7ee;
  border-radius: 10px;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.5;
}
.safety-system__icon {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  min-height: 40px;
  margin-bottom: 40px;
}
.safety-system__icon img {
  display: block;
  margin: 0 auto;
}
.safety-system__ttl {
  display: block;
  text-align: center;
  font-weight: bold;
  color: #F19500;
  font-size: 1.8rem;
  letter-spacing: 1px;
  margin-bottom: 20px;
}
.sec-myenakiss {
  padding: 60px 0 80px;
}
@media screen and (max-width: 834px) {
  .sec-myenakiss {
    padding: 30px 0 51px;
  }
}
.sec-myenakiss .list-btn {
  margin-bottom: 59px;
}
@media screen and (max-width: 834px) {
  .sec-myenakiss .list-btn {
    margin-bottom: 40px;
  }
}

.myenakiss-logo {
  max-width: 200px;
  margin: 0 auto 30px;
}
@media screen and (max-width: 834px) {
  .myenakiss-logo {
    max-width: 142px;
  }
}

@media screen and (min-width: 641px) {
  .myenakiss-wrap {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 36px;
  }
}
@media screen and (min-width: 641px) {
  .myenakiss-wrap__img {
    width: 50%;
  }
}
@media screen and (max-width: 640px) {
  .myenakiss-wrap__img {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 641px) {
  .myenakiss-wrap__ct {
    width: 47%;
  }
}
.myenakiss-wrap__ct a {
  text-decoration: underline;
}

.sec-points {
  background: #1A5D7D;
  padding: 59px 0 60px;
}
@media screen and (max-width: 834px) {
  .sec-points {
    padding: 40px 0;
  }
}

.points-ttl {
  text-align: center;
  color: #F19500;
  font-weight: bold;
  font-size: 2.8rem;
  margin-bottom: 60px;
}
@media screen and (max-width: 834px) {
  .points-ttl {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.4166666667;
    margin-bottom: 50px;
  }
}

@media screen and (min-width: 641px) {
  .points-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
  }
}
.points-list__item {
  background: white;
  border-radius: 20px;
  padding: 35px 40px 40px;
}
@media screen and (max-width: 834px) {
  .points-list__item {
    padding: 26px 20px 30px;
  }
}
@media screen and (max-width: 640px) {
  .points-list__item:not(:last-child) {
    margin-bottom: 20px;
  }
}
.points-list__ttl {
  position: relative;
  text-align: center;
  color: #2CA6E0;
  font-weight: bold;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.4;
  padding-top: 67px;
  margin-bottom: 30px;
}
@media screen and (max-width: 834px) {
  .points-list__ttl {
    padding-top: 60px;
  }
}
.points-list__ttl span {
  position: absolute;
  width: 100%;
  font-size: 3.5rem;
  top: 0;
  left: 0;
}
@media screen and (max-width: 834px) {
  .points-list__ttl span {
    font-size: 3rem;
  }
}
.points-list__img {
  position: relative;
  margin-bottom: 20px;
}
.points-list__img::before {
  content: "";
  display: block;
  padding-bottom: 56.2025316456%;
}
@media screen and (max-width: 640px) {
  .points-list__img::before {
    padding-bottom: 56.393442623%;
  }
}
.points-list__img img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border-radius: 10px;
}

.sec-servicedetail {
  padding: 79px 0 80px;
}
@media screen and (max-width: 834px) {
  .sec-servicedetail {
    padding: 59px 0 50px;
  }
}

.servicedetail-list {
  margin-bottom: 30px;
}
@media screen and (min-width: 641px) {
  .servicedetail-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px 11px;
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 641px) and (max-width: 834px) {
  .servicedetail-list {
    grid-template-columns: repeat(3, 1fr);
  }
}
.servicedetail-list__item {
  position: relative;
  border: 1px solid #2CA6E0;
  border-radius: 10px;
  font-weight: bold;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.6666666667;
}
@media screen and (min-width: 641px) {
  .servicedetail-list__item {
    text-align: center;
  }
  .servicedetail-list__item::before {
    content: "";
    display: block;
    padding-bottom: 94.5147679325%;
  }
}
@media screen and (max-width: 640px) {
  .servicedetail-list__item {
    padding: 17px 25px 20px 109px;
  }
  .servicedetail-list__item:not(:last-child) {
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 359px) {
  .servicedetail-list__item {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 641px) {
  .servicedetail-list__item p {
    position: absolute;
    width: 100%;
    height: 60px;
    top: 71%;
    left: 0;
    transform: translateY(-50%);
  }
}
@media screen and (max-width: 640px) {
  .servicedetail-list__item p {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    min-height: 71px;
  }
}
.servicedetail-list__item p span {
  width: 100%;
  display: block;
  font-weight: 400;
  font-size: 1.4rem;
  line-height: 1.2;
  margin-top: 6px;
}
.servicedetail-list__img {
  position: absolute;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 64px;
  top: 31%;
  left: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 640px) {
  .servicedetail-list__img {
    align-items: center;
    width: 64px;
    height: 100%;
    top: 0;
    left: 17px;
    transform: unset;
  }
}

.servicedetail-wrap {
  background: #EEEEEE;
  font-size: 1.5rem;
  padding: 38px 40px 51px;
}
@media screen and (max-width: 834px) {
  .servicedetail-wrap {
    padding: 38px 20px;
  }
}
@media screen and (max-width: 359px) {
  .servicedetail-wrap {
    font-size: 1.3rem;
  }
}
.servicedetail-wrap__ttl {
  color: #2CA6E0;
  font-weight: bold;
  font-size: 2rem;
  margin-bottom: 26px;
}
.servicedetail-wrap__desc {
  font-weight: bold;
  font-size: 1.8rem;
  margin-bottom: 5px;
}
.servicedetail-wrap p:not(:last-child) {
  margin-bottom: 27px;
}

.sec-step {
  background: #E0F5FF;
  padding: 79px 0 87px;
  margin-bottom: 23px;
}
@media screen and (max-width: 834px) {
  .sec-step {
    padding: 59px 0 61px;
    margin-bottom: 30px;
  }
}

@media screen and (min-width: 641px) {
  .step-list__item {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction: row-reverse;
  }
}
@media screen and (max-width: 640px) {
  .step-list__item {
    background: white;
    border-radius: 20px;
    padding: 28px 15px;
  }
  .step-list__item--split {
    background: transparent;
    border: 0;
    padding: 0;
  }
  .step-list__item--split .step-list__ct-item {
    background: white;
    border-radius: 20px;
    padding: 102px 15px 29px;
  }
  .step-list__item--split .step-list__ct-count {
    top: 28px;
  }
}
.step-list__item:not(:last-child) {
  margin-bottom: 40px;
}
@media screen and (max-width: 834px) {
  .step-list__item:not(:last-child) {
    margin-bottom: 20px;
  }
}
.step-list__img {
  font-size: 1.4rem;
}
@media screen and (min-width: 641px) {
  .step-list__img {
    width: 38.5%;
  }
}
@media screen and (max-width: 640px) {
  .step-list__img {
    margin-top: 30px;
  }
}
.step-list__img p {
  margin-top: 3px;
}
@media screen and (max-width: 834px) {
  .step-list__img p {
    margin-top: 4px;
  }
}
.step-list__img img {
  width: 100%;
}
@media screen and (min-width: 641px) {
  .step-list__ct {
    width: 59.5%;
  }
}
.step-list__ct-item {
  position: relative;
  padding: 13px 15px 15px 81px;
}
@media screen and (min-width: 641px) {
  .step-list__ct-item {
    background: white;
    border-radius: 20px;
  }
}
@media screen and (max-width: 640px) {
  .step-list__ct-item {
    padding: 74px 0 0;
  }
}
.step-list__ct-item:not(:last-child) {
  margin-bottom: 20px;
}
.step-list__ct-item p a {
  color: #2CA6E0;
}
.step-list__ct-count {
  text-align: center;
  position: absolute;
  width: 36px;
  color: #2CA6E0;
  font-weight: bold;
  font-size: 1.5rem;
  top: 13px;
  left: 14px;
}
@media screen and (max-width: 640px) {
  .step-list__ct-count {
    width: 100%;
    top: 0;
    left: 0;
  }
}
.step-list__ct-count span {
  display: block;
  font-size: 3rem;
  line-height: 1;
  margin-top: -1px;
}
.step-list__ct-ttl {
  color: #2CA6E0;
  font-weight: bold;
  font-size: 1.8rem;
  margin-bottom: 14px;
}
@media screen and (max-width: 834px) {
  .step-list__ct-ttl {
    font-size: 2rem;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 640px) {
  .step-list__ct-ttl {
    text-align: center;
  }
}
.step-list__ct-note {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6428571429;
  margin-top: 14px;
}
@media screen and (max-width: 834px) {
  .step-list__ct-note {
    margin-top: 15px;
  }
}
.step-list__ct-img {
  margin-top: 30px;
}
@media screen and (min-width: 641px) {
  .step-list__ct-img {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 20px;
  }
}
@media screen and (min-width: 641px) {
  .step-list__ct-imgItem {
    width: 48.5%;
  }
}
@media screen and (max-width: 640px) {
  .step-list__ct-imgItem:not(:last-child) {
    margin-bottom: 33px;
  }
}

.btn-myenakiss {
  margin-bottom: 150px;
}
@media screen and (max-width: 834px) {
  .btn-myenakiss {
    margin-bottom: 80px;
  }
}

.sec-fee {
  padding: 60px 0 60px;
}
@media screen and (max-width: 834px) {
  .sec-fee {
    padding: 30px 0 50px;
  }
}
.sec-fee_area {
  padding: 0 0 60px;
}
@media screen and (max-width: 834px) {
  .sec-fee_area {
    padding: 0 0 50px;
  }
}
@media screen and (max-width: 834px) {
  .sec-fee .block-table {
    max-width: calc(100% + 15px);
    overflow-x: auto;
    margin-right: -15px;
  }
}
@media screen and (max-width: 834px) {
  .sec-fee .block-table table {
    width: 521px;
  }
}
.sec-fee .block-table table th,
.sec-fee .block-table table td {
  min-height: 49px;
}

.fee-flex {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 82px;
}
@media screen and (max-width: 834px) {
  .fee-flex {
    flex-wrap: wrap;
    margin-bottom: 58px;
  }
}
.fee-flex__left {
  width: 48.5%;
}
@media screen and (max-width: 1250px) {
  .fee-flex__left {
    width: 52%;
  }
}
@media screen and (max-width: 834px) {
  .fee-flex__left {
    width: 100%;
    margin-bottom: 31px;
  }
}
.fee-flex__box {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 -20px;
}
@media screen and (max-width: 1250px) {
  .fee-flex__box {
    margin: 0 -10px;
  }
}
@media screen and (max-width: 834px) {
  .fee-flex__box {
    margin: 0 -10px;
    padding: 0;
  }
}
@media screen and (max-width: 359px) {
  .fee-flex__box {
    margin: 0 -6px;
    padding: 0;
  }
}
.fee-flex__box-item {
  padding: 0 20px;
  width: 50%;
}
@media screen and (max-width: 1250px) {
  .fee-flex__box-item {
    padding: 0 10px;
  }
}
@media screen and (max-width: 359px) {
  .fee-flex__box-item {
    padding: 0 5px;
  }
}
.fee-flex__box-main {
  border-radius: 10px;
  border: 1px solid #2ca6e0;
  margin-bottom: 12px;
  overflow: hidden;
}
.fee-flex__box-main--yellow {
  border: 0;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  color: #fff;
}
.fee-flex__box-main--yellow .fee-flex__box-bottom {
  background: #f19500;
  width: 100%;
  height: 100%;
}
.fee-flex__box-top {
  text-align: center;
  padding: 15px 10px;
  color: #2ca6e0;
  min-height: 118px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
}
@media screen and (max-width: 834px) {
  .fee-flex__box-top {
    padding: 5px 3px;
    min-height: 78px;
  }
}
.fee-flex__box-top strong {
  display: block;
  width: 100%;
  font-weight: bold;
  font-size: 2.5rem;
}
@media screen and (max-width: 1250px) {
  .fee-flex__box-top strong {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 834px) {
  .fee-flex__box-top strong {
    margin-bottom: 2px;
    font-size: 2rem;
  }
}
.fee-flex__box-top > span {
  width: 100%;
  display: block;
  line-height: 1.4;
  font-size: 2rem;
}
@media screen and (max-width: 1250px) {
  .fee-flex__box-top > span {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 834px) {
  .fee-flex__box-top > span {
    font-size: 1.5rem;
  }
}
.fee-flex__box-top > span span {
  font-weight: bold;
  font-size: 2.7rem;
}
@media screen and (max-width: 1250px) {
  .fee-flex__box-top > span span {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 834px) {
  .fee-flex__box-top > span span {
    font-size: 2rem;
  }
}
.fee-flex__box-bottom {
  color: #fff;
  min-height: 180px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center;
  background: #2ca6e0;
  padding: 10px;
  line-height: 1.4;
}
@media screen and (max-width: 834px) {
  .fee-flex__box-bottom {
    line-height: 1.3;
    min-height: 121px;
  }
}
.fee-flex__box-bottom > span {
  font-size: 2rem;
}
@media screen and (max-width: 1250px) {
  .fee-flex__box-bottom > span {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 834px) {
  .fee-flex__box-bottom > span {
    font-size: 1.5rem;
  }
}
.fee-flex__box-bottom > span span {
  font-weight: bold;
  font-size: 2.7rem;
}
@media screen and (max-width: 1250px) {
  .fee-flex__box-bottom > span span {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 834px) {
  .fee-flex__box-bottom > span span {
    font-size: 2rem;
  }
}
.fee-flex__ttl {
  color: #555555;
  font-weight: bold;
  font-size: 1.6rem;
}
@media screen and (max-width: 834px) {
  .fee-flex__ttl {
    text-align: left;
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 359px) {
  .fee-flex__ttl {
    font-size: 1.3rem;
  }
}
.fee-flex__ttl small {
  font-weight: 400;
}
.fee-flex__right {
  width: 51.5%;
  padding-left: 30px;
}
@media screen and (max-width: 1250px) {
  .fee-flex__right {
    width: 48%;
    padding-left: 20px;
  }
}
@media screen and (max-width: 834px) {
  .fee-flex__right {
    width: 100%;
    padding-left: 0;
  }
}

.sec-gas {
  padding: 50px 0;
  background: #1a5d7d;
}
@media screen and (max-width: 834px) {
  .sec-gas {
    padding: 39px 0 40px;
  }
}

.gas-block {
  text-align: center;
  margin-bottom: 50px;
}
@media screen and (max-width: 834px) {
  .gas-block {
    text-align: left;
  }
}
.gas-block__heading {
  text-align: center;
  margin-bottom: 29px;
  color: #f19500;
  font-weight: bold;
  font-size: 2.4rem;
}
@media screen and (max-width: 834px) {
  .gas-block__heading {
    margin-bottom: 31px;
  }
}
.gas-block__heading span {
  display: block;
  margin-bottom: 16px;
  padding-bottom: 30px;
  position: relative;
  color: #2ca6e0;
}
.gas-block__heading span:before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 15px;
  height: 15px;
  background: url("../img/personal/citygas_fee/icon-x.png") center no-repeat;
  background-size: contain;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.gas-block .c-txt__basic {
  color: #fff;
}

.gas-box {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 40px;
}
@media screen and (max-width: 834px) {
  .gas-box {
    gap: 20px 0;
    flex-wrap: wrap;
    margin-bottom: 19px;
  }
}
.gas-box__item {
  width: calc(50% - 15px);
  background: #fff;
  border-radius: 20px;
  padding: 51px 20px 47px;
}
@media screen and (max-width: 834px) {
  .gas-box__item {
    width: 100%;
    padding: 49px 15px 45px;
  }
}
.gas-box__ttl {
  text-align: center;
  color: #f19500;
  margin-bottom: 29px;
  font-weight: bold;
  font-size: 2.4rem;
}
@media screen and (max-width: 834px) {
  .gas-box__ttl {
    margin-bottom: 31px;
  }
}
.gas-box__desc {
  text-align: center;
  font-weight: 500;
  margin-bottom: 16px;
  font-size: 2rem;
}
@media screen and (max-width: 834px) {
  .gas-box__desc {
    margin-bottom: 7px;
    font-size: 1.7rem;
  }
}
.gas-box__price {
  text-align: center;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1.4rem;
}
.gas-box__price span {
  margin-left: 15px;
  font-weight: bold;
  font-size: 3rem;
}
@media screen and (max-width: 834px) {
  .gas-box__price span {
    margin-left: 10px;
    font-size: 2.5rem;
  }
}
.gas-box__list {
  max-width: 305px;
  width: 100%;
  margin: 0 auto;
  padding-top: 5px;
}
@media screen and (max-width: 834px) {
  .gas-box__list {
    padding-top: 3px;
    padding-bottom: 4px;
  }
}
.gas-box__list-item:not(:last-child) {
  margin-bottom: 21px;
}
.gas-box__list-item small {
  display: block;
  margin-bottom: 2px;
  font-size: 1.3rem;
}
@media screen and (max-width: 359px) {
  .gas-box__list-item small {
    font-size: 1.2rem;
  }
}
.gas-box__list-item p {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.gas-box__list-item p span {
  padding-right: 50px;
  display: inline-block;
  font-weight: bold;
  position: relative;
  font-size: 1.6rem;
}
@media screen and (max-width: 359px) {
  .gas-box__list-item p span {
    font-size: 1.5rem;
  }
}
.gas-box__list-item p span:after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 25px;
  height: 8px;
  background: url("../img/personal/citygas_fee/icon-arrow.png") center no-repeat;
  background-size: contain;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.gas-box__list-item p strong {
  display: inline-block;
  color: #F19500;
  font-weight: bold;
  font-size: 2.2rem;
}
@media screen and (max-width: 359px) {
  .gas-box__list-item p strong {
    font-size: 1.8rem;
  }
}

.gas-desc {
  text-align: center;
  color: #fff;
  margin-bottom: 60px;
}
@media screen and (max-width: 834px) {
  .gas-desc {
    margin-bottom: 61px;
    text-align: left;
  }
}

.sec-cost {
  margin-top: 30px;
  padding: 48px 0 50px;
  background: #ebebeb;
}
@media screen and (max-width: 834px) {
  .sec-cost {
    padding: 37px 0 40px;
  }
}

.cost-heading {
  color: #2ca6e0;
  font-weight: bold;
  margin-bottom: 30px;
  font-size: 3rem;
}
@media screen and (max-width: 834px) {
  .cost-heading {
    text-align: center;
    margin-bottom: 19px;
    font-size: 2rem;
  }
}

.cost-list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 60px;
}
@media screen and (max-width: 834px) {
  .cost-list {
    flex-wrap: wrap;
    gap: 41px 0;
  }
}
.cost-list__item {
  width: calc(50% - 15px);
}
@media screen and (max-width: 834px) {
  .cost-list__item {
    width: 100%;
  }
}
.cost-list__ttl {
  color: #2ca6e0;
  font-weight: bold;
  margin-bottom: 17px;
  font-size: 1.8rem;
}
.cost-list__dots-item {
  padding-left: 20px;
  position: relative;
  line-height: 1.6875;
  font-size: 1.6rem;
}
@media screen and (max-width: 834px) {
  .cost-list__dots-item {
    padding-left: 22px;
    line-height: 1.5;
    font-size: 1.5rem;
  }
}
.cost-list__dots-item:before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 10px;
  height: 10px;
  background: #2ca6e0;
  border-radius: 50%;
  left: 0;
  top: 10px;
}
@media screen and (max-width: 834px) {
  .cost-list__dots-item:before {
    left: 2px;
  }
}
.cost-list__dots-item span {
  font-weight: bold;
  display: block;
  margin-bottom: 4px;
}
@media screen and (max-width: 834px) {
  .cost-list__dots-item span {
    margin-bottom: 10px;
    font-size: 1.6rem;
  }
}
.cost-list__dots-item:not(:last-child) {
  margin-bottom: 18px;
}
@media screen and (max-width: 834px) {
  .cost-list__dots-item:not(:last-child) {
    margin-bottom: 21px;
  }
}
.cost-list__box {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 20px;
  padding-right: 66px;
}
@media screen and (max-width: 1250px) {
  .cost-list__box {
    padding-right: 0;
  }
}
@media screen and (max-width: 834px) {
  .cost-list__box {
    max-width: 400px;
    padding-right: 28px;
  }
}
@media screen and (max-width: 359px) {
  .cost-list__box {
    padding-right: 0;
  }
}
.cost-list__box-ttl {
  width: calc(100% - 200px);
  font-weight: bold;
  line-height: 1.5;
  font-size: 2rem;
}
@media screen and (max-width: 1250px) {
  .cost-list__box-ttl {
    width: calc(100% - 180px);
  }
}
@media screen and (max-width: 834px) {
  .cost-list__box-ttl {
    line-height: 1.444;
    width: calc(100% - 113px);
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 359px) {
  .cost-list__box-ttl {
    font-size: 1.6rem;
  }
}
.cost-list__box-ttl span {
  display: block;
  margin-top: 6px;
  color: #f19500;
  font-size: 5rem;
}
.cost-list__box-img {
  width: 164px;
}
@media screen and (max-width: 834px) {
  .cost-list__box-img {
    width: 113px;
  }
}
.cost-list__box-img img {
  width: 100%;
}

.sec-supplying {
  padding: 50px 0 10px;
}
@media screen and (max-width: 834px) {
  .sec-supplying {
    padding-bottom: 0;
  }
}

.supplying-box {
  padding: 58px 49px;
  border: 1px solid #2ca6e0;
  border-radius: 20px;
}
@media screen and (max-width: 1250px) {
  .supplying-box {
    padding: 40px 20px;
  }
}
.supplying-box__item {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media screen and (max-width: 834px) {
  .supplying-box__item {
    flex-wrap: wrap;
  }
}
.supplying-box__item:not(:last-child) {
  margin-bottom: 59px;
}
@media screen and (max-width: 834px) {
  .supplying-box__item:not(:last-child) {
    margin-bottom: 40px;
  }
}
.supplying-box__ct {
  width: 48%;
}
@media screen and (max-width: 834px) {
  .supplying-box__ct {
    width: 100%;
    margin-bottom: 11px;
  }
}
.supplying-box__ct .c-txt__basic {
  margin-bottom: 20px;
}
.supplying-box__ct .c-txt__03 {
  word-break: break-all;
}
@media screen and (max-width: 834px) {
  .supplying-box__ct .c-txt__03 {
    margin-bottom: 22px;
  }
}
.supplying-box__ct .c-txt__03 a {
  color: #2ca6e0;
  text-decoration: underline;
}
.supplying-box__ttl {
  color: #2ca6e0;
  font-weight: bold;
  line-height: 1.4545;
  font-size: 2.2rem;
}
@media screen and (max-width: 834px) {
  .supplying-box__ttl {
    text-align: center;
  }
  .supplying-box__ttl--left {
    text-align: left;
  }
}
.supplying-box__ttl--left {
  margin-bottom: 30px;
}
@media screen and (max-width: 359px) {
  .supplying-box__ttl {
    font-size: 2rem;
  }
}
.supplying-box__logo {
  display: block;
  margin-top: 31px;
  margin-bottom: 30px;
}
@media screen and (max-width: 834px) {
  .supplying-box__logo {
    margin-top: 29px;
  }
}
.supplying-box__logo img {
  max-width: 305px;
  width: 100%;
}
.supplying-box__img {
  width: 48.5%;
}
@media screen and (max-width: 834px) {
  .supplying-box__img {
    width: 100%;
  }
}
.supplying-box__img-thumb img {
  width: 100%;
}
.supplying-box__img-note {
  margin-top: 10px;
  line-height: 1.5833;
  font-size: 1.2rem;
}
.supplying-box__list {
  margin-bottom: 21px;
}
@media screen and (max-width: 834px) {
  .supplying-box__list {
    margin-bottom: 8px;
  }
}
.supplying-box__list-item {
  padding-left: 34px;
  position: relative;
  line-height: 1.5;
  color: #2ca6e0;
  font-size: 2rem;
  font-weight: bold;
}
@media screen and (max-width: 359px) {
  .supplying-box__list-item {
    padding-left: 20px;
    font-size: 1.8rem;
  }
}
.supplying-box__list-item:before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 10px;
  height: 10px;
  background: #2ca6e0;
  border-radius: 50%;
  left: 14px;
  top: 11px;
}
@media screen and (max-width: 359px) {
  .supplying-box__list-item:before {
    left: 0;
    top: 8px;
  }
}
.supplying-box__list-item:not(:last-child) {
  margin-bottom: 20px;
}

.sec-carbon {
  padding: 60px 0 10px;
}
@media screen and (max-width: 834px) {
  .sec-carbon {
    padding: 30px 0 0;
  }
}

.carbon-box {
  border-radius: 20px;
  overflow: hidden;
  padding: 60px 60px;
  margin-bottom: 79px;
  background: url("../img/personal/carbon_offset/bg-01.jpg") center no-repeat;
  background-size: cover;
}
@media screen and (max-width: 834px) {
  .carbon-box {
    margin-bottom: 59px;
    padding: 59px 15px 62px;
    background: url("../img/personal/carbon_offset/bg-01-sp.jpg") center no-repeat;
    background-size: cover;
  }
}
.carbon-box__desc {
  max-width: 662px;
  width: 100%;
  color: #fff;
  font-weight: bold;
  line-height: 1.95;
  font-size: 2rem;
}
@media screen and (max-width: 834px) {
  .carbon-box__desc {
    line-height: 1.8;
    font-size: 1.8rem;
  }
}

.carbon-block:not(:last-child) {
  margin-bottom: 104px;
}
@media screen and (max-width: 834px) {
  .carbon-block:not(:last-child) {
    margin-bottom: 30px;
  }
}

.carbon-list {
  max-width: 878px;
  margin: 0 auto 33px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media screen and (max-width: 834px) {
  .carbon-list {
    flex-wrap: wrap;
    gap: 90px 0;
    max-width: 500px;
    margin: 0 auto 33px;
  }
}
.carbon-list__item {
  width: calc(50% - 70px);
  position: relative;
}
@media screen and (max-width: 834px) {
  .carbon-list__item {
    width: 100%;
  }
}
.carbon-list__item:first-child:before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 64px;
  height: 30px;
  background: url("../img/personal/carbon_offset/icon-01.png") center no-repeat;
  background-size: contain;
  right: -102px;
  top: 35%;
  transform: translateY(-50%);
}
@media screen and (max-width: 834px) {
  .carbon-list__item:first-child:before {
    background: url("../img/personal/carbon_offset/icon-01-sp.png") center no-repeat;
    background-size: contain;
    height: 47px;
    width: 30px;
    bottom: -70px;
    top: auto;
    transform: translateX(-50%);
    left: 50%;
    right: auto;
  }
}
.carbon-list__img {
  margin-bottom: 34px;
}
@media screen and (max-width: 834px) {
  .carbon-list__img {
    margin: 0 -4px 40px;
  }
}
.carbon-list__img img {
  width: 100%;
}
.carbon-list__desc {
  text-align: center;
  color: #517D53;
  font-weight: bold;
  font-size: 1.6rem;
}
.carbon-list__desc span {
  transform: translateY(3px);
  display: inline-block;
  font-size: 1rem;
}

.carbon-note {
  max-width: 868px;
  margin: 0 auto 59px;
  border-radius: 100px;
  background: #9FD47E;
  padding: 12px;
  text-align: center;
  color: #fff;
  font-weight: bold;
  font-size: 3rem;
}
@media screen and (max-width: 834px) {
  .carbon-note {
    padding: 15px;
    margin: 0 auto 40px;
    max-width: 500px;
    font-size: 2.5rem;
  }
}

.carbon-step {
  margin-bottom: 78px;
}
@media screen and (max-width: 834px) {
  .carbon-step {
    margin-bottom: 57px;
  }
}
.carbon-step__list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 -15px;
  counter-reset: item;
}
@media screen and (max-width: 1250px) {
  .carbon-step__list {
    margin: 0 -8px;
  }
}
@media screen and (max-width: 834px) {
  .carbon-step__list {
    margin: 0;
    gap: 20px 0;
    flex-wrap: wrap;
  }
}
.carbon-step__list-item {
  width: 33.33%;
  padding: 0 15px;
  counter-increment: item;
}
@media screen and (max-width: 1250px) {
  .carbon-step__list-item {
    padding: 0 8px;
  }
}
@media screen and (max-width: 834px) {
  .carbon-step__list-item {
    padding: 0;
    width: 100%;
  }
}
.carbon-step__list-ct {
  background: #E9F8FF;
  border-radius: 20px;
  position: relative;
  padding: 104px 15px 40px;
}
@media screen and (max-width: 834px) {
  .carbon-step__list-ct {
    padding: 104px 15px 35px;
  }
}
.carbon-step__list-ct::before {
  content: "0" counter(item);
  width: 100%;
  left: 0;
  text-align: center;
  position: absolute;
  top: 36px;
  color: #AECCDB;
  font-weight: bold;
  font-size: 3rem;
}
.carbon-step__list-ttl {
  text-align: center;
  color: #2CA6E0;
  font-weight: bold;
  margin-bottom: 31px;
  font-size: 1.8rem;
}
@media screen and (max-width: 1250px) {
  .carbon-step__list-ttl {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 834px) {
  .carbon-step__list-ttl {
    margin-bottom: 29px;
  }
}

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

.citygas-block {
  margin-bottom: 59px;
}
@media screen and (max-width: 834px) {
  .citygas-block {
    margin-bottom: 39px;
  }
}
.citygas-block .c-ttl__02 {
  margin-bottom: 31px;
}
@media screen and (max-width: 834px) {
  .citygas-block .c-ttl__02 {
    margin-bottom: 17px;
  }
}

.citygas-chat {
  background: #1A5D7D;
  padding: 50px 0;
}
@media screen and (max-width: 834px) {
  .citygas-chat {
    padding: 38px 0 40px;
  }
}
.citygas-chat__heading {
  text-align: center;
}
.citygas-chat__menu {
  max-width: 601px;
  width: 100%;
  margin: 0 auto 15px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  border-radius: 20px;
  overflow: hidden;
}
.citygas-chat__menu-item {
  width: 50%;
  color: #fff;
  background: #F19500;
  font-weight: bold;
  height: 58px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 2.2rem;
}
.citygas-chat__menu-item:nth-child(2) {
  background: #2CA6E0;
}
.citygas-chat__main {
  max-width: 601px;
  width: 100%;
  margin: 0 auto;
  background: #162F3F;
  border-radius: 20px;
  padding: 40px 0;
  max-height: 529px;
  overflow-y: auto;
}
.citygas-chat__main-ttl {
  color: #fff;
  font-weight: bold;
  padding: 0 15px;
  margin-bottom: 30px;
  text-align: center;
  font-size: 2rem;
}
.citygas-chat__main-item {
  margin-bottom: 40px;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.6666666667;
  font-weight: bold;
  color: #fff;
}
.citygas-chat__main-left {
  max-width: 340px;
  width: 100%;
  background: #F19500;
  padding: 20px 25px 21px;
  border-radius: 0 20px 20px 0;
  margin-bottom: 20px;
}
@media screen and (max-width: 834px) {
  .citygas-chat__main-left {
    padding: 20px 9px 21px;
    max-width: 324px;
  }
}
@media screen and (max-width: 359px) {
  .citygas-chat__main-left {
    max-width: 90%;
  }
}
.citygas-chat__main-right {
  max-width: 340px;
  width: 100%;
  margin-left: auto;
  background: #2CA6E0;
  padding: 20px 15px;
  border-radius: 20px 0 0 20px;
}
@media screen and (max-width: 834px) {
  .citygas-chat__main-right {
    max-width: 326px;
  }
}
@media screen and (max-width: 359px) {
  .citygas-chat__main-right {
    max-width: 90%;
  }
}

.sec-kerosene {
  padding: 58px 0 0;
}
@media screen and (max-width: 834px) {
  .sec-kerosene {
    padding: 28px 0 0;
    margin-bottom: -15px;
  }
}

.kerosene-main {
  max-width: 800px;
  width: 100%;
  margin: 0 auto 60px;
}
@media screen and (max-width: 834px) {
  .kerosene-main {
    margin: 0 auto 30px;
  }
}
.kerosene-main__note {
  width: 50%;
  text-align: center;
  margin-bottom: 9px;
}
@media screen and (max-width: 834px) {
  .kerosene-main__note {
    margin-bottom: 11px;
  }
}
.kerosene-main__note span {
  display: inline-block;
  padding: 0 10px;
  color: #F19500;
  font-weight: bold;
  position: relative;
  font-size: 1.6rem;
}
@media screen and (max-width: 834px) {
  .kerosene-main__note span {
    padding: 0 11px;
    font-size: 1.4rem;
  }
}
.kerosene-main__note span:after, .kerosene-main__note span:before {
  content: "";
  width: 1px;
  height: 20px;
  transform: rotate(-37deg) translateY(-50%);
  left: 0;
  top: 50%;
  background: #F19500;
  position: absolute;
}
@media screen and (max-width: 834px) {
  .kerosene-main__note span:after, .kerosene-main__note span:before {
    height: 18px;
  }
}
.kerosene-main__note span:after {
  right: 0;
  left: auto;
  transform: rotate(37deg) translateY(-50%);
}
.kerosene-main__menu {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.kerosene-main__menu-item {
  width: 50%;
}
.kerosene-main__menu-item span {
  letter-spacing: 2px;
  background: #4B7B92;
  padding: 18px 10px;
  display: block;
  color: #fff;
  text-align: center;
  cursor: pointer;
  font-weight: bold;
  transition: all 0.3s;
  border-radius: 10px 10px 0 0;
  font-size: 1.8rem;
}
@media (any-hover: hover) {
  .kerosene-main__menu-item span:hover {
    background: #1A5D7D;
    transition: all 0.3s;
  }
}
.kerosene-main__menu-item.active span {
  background: #1A5D7D;
}
.kerosene-main__tab {
  border-radius: 0 0 10px 10px;
  padding: 33px 20px 30px;
  background: #1A5D7D;
}
@media screen and (max-width: 834px) {
  .kerosene-main__tab {
    padding: 32px 15px 30px;
  }
}
.kerosene-main__tab-item {
  opacity: 0;
  visibility: hidden;
  display: none;
  transition: all 0.2s ease-in;
}
.kerosene-main__tab-item.active {
  opacity: 1;
  display: block;
  visibility: visible;
}
.kerosene-main__tab-item .c-txt__basic {
  text-align: center;
  color: #fff;
  margin-bottom: 30px;
}
@media screen and (max-width: 834px) {
  .kerosene-main__tab-item .c-txt__basic {
    margin-bottom: 20px;
    text-align: left;
  }
}
.kerosene-main__tab-ttl {
  text-align: center;
  margin-bottom: 9px;
  font-weight: bold;
  color: #F19500;
  line-height: 1.55;
  font-size: 2rem;
}
@media screen and (max-width: 834px) {
  .kerosene-main__tab-ttl {
    text-align: left;
    line-height: 1.5;
    font-size: 1.8rem;
  }
}
.kerosene-main__step {
  max-width: 315px;
  width: 100%;
  margin: 0 auto;
  counter-reset: item;
}
.kerosene-main__step-item {
  counter-increment: item;
  border-radius: 10px;
  background: #fff;
  padding: 20px 16px 20px 75px;
  position: relative;
  line-height: 1.6875;
  color: #555555;
  font-weight: bold;
  min-height: 76px;
  display: flex;
  align-items: center;
  font-size: 1.6rem;
}
.kerosene-main__step-item:not(:last-child) {
  margin-bottom: 15px;
}
@media screen and (max-width: 359px) {
  .kerosene-main__step-item {
    padding: 20px 12px 20px 68px;
  }
}
.kerosene-main__step-item::before {
  content: "0" counter(item);
  left: 19px;
  text-align: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  color: #1A5D7D;
  font-weight: bold;
  font-size: 3rem;
}
.kerosene-main__step-item:not(:last-child)::after {
  content: "";
  position: absolute;
  left: 49.7%;
  transform: translateX(-50%);
  bottom: -27px;
  border: 12px solid transparent;
  border-top: 20px solid #fff;
  z-index: 2;
}
.kerosene-main__step--02 .kerosene-main__step-item {
  color: #2CA6E0;
}
.kerosene-main__step--02 .kerosene-main__step-item::before {
  color: #4B7B92;
}

#page-service_soranoiroclub .gas-block__heading {
  font-size: 2.4rem;
}
@media screen and (max-width: 834px) {
  #page-service_soranoiroclub .gas-block__heading {
    font-size: 1.8rem;
  }
}

.discover-soranoiroclub {
  padding: 61px 0;
}
@media screen and (max-width: 834px) {
  .discover-soranoiroclub {
    padding: 31px 0;
  }
}
.discover-soranoiroclub__note {
  text-align: center;
  font-weight: bold;
  color: #2CA6E0;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.55;
  margin-bottom: 78px;
}
@media screen and (max-width: 834px) {
  .discover-soranoiroclub__note {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.5;
    text-align: left;
    margin-bottom: 57px;
  }
}
.discover-soranoiroclub__logo {
  text-align: center;
  margin-bottom: 59px;
}
@media screen and (max-width: 834px) {
  .discover-soranoiroclub__logo {
    margin-bottom: 61px;
  }
}
.discover-soranoiroclub__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.6666666667;
  margin-bottom: 78px;
}
@media screen and (max-width: 640px) {
  .discover-soranoiroclub__list {
    grid-template-columns: 1fr;
    gap: 19px;
    margin-bottom: 57px;
  }
}
.discover-soranoiroclub__list-item {
  border: 1px solid #2CA6E0;
  border-radius: 20px;
  padding: 50px 6%;
}
@media screen and (max-width: 640px) {
  .discover-soranoiroclub__list-item {
    padding: 50px 13px;
  }
}
.discover-soranoiroclub__list-item .c-btn__02 {
  max-width: 315px;
}
.discover-soranoiroclub__list-ttl {
  display: block;
  color: #F19500;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.4166666667;
  text-align: center;
  font-weight: bold;
  margin-bottom: 29px;
}
.discover-soranoiroclub__list p {
  margin-bottom: 50px;
}
@media screen and (max-width: 834px) {
  .discover-soranoiroclub__list p {
    margin-bottom: 31px;
  }
}

.gas-example {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 30px;
  color: white;
  font-size: 1.8rem;
}
@media screen and (max-width: 640px) {
  .gas-example {
    grid-template-columns: 1fr;
    text-align: center;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.6666666667;
  }
}
.gas-example__item img {
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 26px;
}
@media screen and (max-width: 640px) {
  .gas-example__item img {
    width: 200px;
    margin: 0 auto 10px;
  }
}
.gas-example__ttl {
  display: block;
  font-weight: bold;
}

.soranoiroclub-user {
  padding: 0 0 74px;
}
@media screen and (max-width: 834px) {
  .soranoiroclub-user {
    padding: 0 0 81px;
  }
}
.soranoiroclub-user .sec-gas {
  margin-bottom: 60px;
}
@media screen and (max-width: 834px) {
  .soranoiroclub-user .sec-gas {
    margin-bottom: 40px;
  }
}
.soranoiroclub-user__block {
  border: 1px solid #2CA6E0;
  border-radius: 10px;
  padding: 47px 15px 49px;
  margin-bottom: 57px;
}
@media screen and (max-width: 834px) {
  .soranoiroclub-user__block {
    padding: 26px 20px 49px;
    margin-bottom: 39px;
  }
}
.soranoiroclub-user__block-ttl {
  display: block;
  text-align: center;
  color: #F19500;
  font-size: 2.4rem;
  font-weight: bold;
  margin-bottom: 47px;
}
@media screen and (max-width: 834px) {
  .soranoiroclub-user__block-ttl {
    font-size: 1.8rem;
    margin-bottom: 30px;
  }
}
.soranoiroclub-user__block-list {
  max-width: 670px;
  margin: 0 auto;
}
.soranoiroclub-user__block-list-item {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 70px;
}
@media screen and (max-width: 640px) {
  .soranoiroclub-user__block-list-item {
    border-bottom: 1px solid #2CA6E0;
    padding: 0 0 42px;
    margin-bottom: 39px;
  }
}
.soranoiroclub-user__block-list-item:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 640px) {
  .soranoiroclub-user__block-list-item:last-child {
    padding: 0;
    border-bottom: none;
  }
}
.soranoiroclub-user__block-list-img {
  width: 45.5%;
}
@media screen and (max-width: 640px) {
  .soranoiroclub-user__block-list-img {
    width: 100%;
    margin-bottom: 31px;
  }
}
.soranoiroclub-user__block-list-ct {
  width: 54.5%;
  padding: 0 0 0 9%;
  font-weight: bold;
}
@media screen and (max-width: 640px) {
  .soranoiroclub-user__block-list-ct {
    width: 100%;
    padding: 0;
    letter-spacing: 1px;
  }
}
.soranoiroclub-user__block-list-ct-ttl {
  display: block;
  color: #2CA6E0;
  font-weight: bold;
}
@media screen and (max-width: 834px) {
  .soranoiroclub-user__block-list-ct-ttl {
    margin-bottom: 4px;
  }
}
.soranoiroclub-user__note {
  background: #e0f5ff;
  border-radius: 10px;
  text-align: center;
  font-weight: bold;
  padding: 50px 15px;
  margin-bottom: 49px;
}
@media screen and (max-width: 834px) {
  .soranoiroclub-user__note {
    padding: 29px 15px;
    letter-spacing: 1px;
    margin-bottom: 31px;
  }
}
.soranoiroclub-user__note-ttl {
  display: block;
  color: #2CA6E0;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 32px;
}
@media screen and (max-width: 834px) {
  .soranoiroclub-user__note-ttl {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.5555555556;
    letter-spacing: 1px;
  }
}
.soranoiroclub-user__note p {
  margin-bottom: 58px;
}
@media screen and (max-width: 834px) {
  .soranoiroclub-user__note p {
    margin-bottom: 61px;
  }
}

.sec-brand {
  color: #333;
  overflow: hidden;
}

.brand-ttl {
  display: block;
  text-align: center;
  margin-bottom: 80px;
}
@media screen and (max-width: 834px) {
  .brand-ttl {
    margin-bottom: 61px;
  }
}

.brand-01 {
  background: url("../img/discover/brand/bg-01.png") no-repeat;
  background-size: cover;
  background-position: bottom center;
  padding: 99px 0;
}
@media screen and (max-width: 834px) {
  .brand-01 {
    padding: 99px 0 121px;
  }
}
.brand-01__block {
  position: relative;
}
@media screen and (max-width: 834px) {
  .brand-01__block {
    padding: 94px 0 0 0;
  }
}
.brand-01__block:before {
  content: "";
  width: 362px;
  height: 171px;
  background: url("../img/discover/brand/item-01.svg") no-repeat;
  background-size: 100%;
  position: absolute;
  top: -34px;
  right: 0;
}
@media screen and (max-width: 834px) {
  .brand-01__block:before {
    width: 240px;
    height: 113px;
    top: -69px;
  }
}
.brand-01__block-ct {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.7;
  font-weight: bold;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 640px) {
  .brand-01__block-ct {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.6666666667;
  }
}
.brand-01__block-ct-ttl {
  display: block;
  margin-bottom: 40px;
}
.brand-01__block-img {
  max-width: 800px;
  margin: -54px auto 0;
}
@media screen and (max-width: 834px) {
  .brand-01__block-img {
    margin: 31px auto 0;
  }
}

.brand-02 {
  padding: 96px 0;
}
@media screen and (max-width: 834px) {
  .brand-02 {
    padding: 60px 0;
  }
}
.brand-02__block {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.brand-02__block-img {
  width: 39%;
}
@media screen and (max-width: 640px) {
  .brand-02__block-img {
    width: 68%;
    margin: 0 auto 61px;
  }
}
.brand-02__block-ct {
  width: 43.3%;
  padding: 33px 8% 0 0;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.6666666667;
  font-weight: bold;
}
@media screen and (max-width: 640px) {
  .brand-02__block-ct {
    width: 100%;
    padding: 0;
  }
}
.brand-02__block-ct-ttl {
  display: block;
  margin-bottom: 40px;
}

.brand-03 {
  background: url(../img/discover/brand/bg-02.png) no-repeat;
  background-size: 100% 100%;
  padding: 80px 0 155px;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 834px) {
  .brand-03 {
    background: url(../img/discover/brand/bg-02-sp.png) no-repeat;
    background-size: 100% 100%;
  }
}
.brand-03__block {
  position: relative;
  max-width: 800px;
  margin: 0 auto;
}
.brand-03__block-ct {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.6666666667;
  font-weight: bold;
  margin-bottom: 59px;
}
@media screen and (max-width: 640px) {
  .brand-03__block-ct {
    margin-bottom: 40px;
  }
}
.brand-03__block-ct-ttl {
  display: block;
  margin-bottom: 40px;
}
.brand-03__block-ct p {
  max-width: 345px;
}
.brand-03__block-img {
  max-width: 800px;
  margin: 0 auto 0;
}

.brand-04 {
  position: relative;
  padding: 33px 0 167px;
}
@media screen and (max-width: 834px) {
  .brand-04 {
    padding: 26px 0 84px;
  }
}
.brand-04 .inner {
  position: relative;
  z-index: 1;
}
.brand-04:before {
  content: "";
  background: url(../img/discover/brand/bg-03.png) no-repeat;
  background-size: cover;
  background-position: bottom center;
  position: absolute;
  top: -300px;
  left: 0;
  right: 0;
  bottom: 22px;
}
@media screen and (max-width: 834px) {
  .brand-04:before {
    top: 0;
    bottom: 0;
  }
}
.brand-04__block {
  position: relative;
}
.brand-04__block-ct {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.6666666667;
  font-weight: bold;
  max-width: 790px;
  margin: 0 auto 82px;
}
@media screen and (max-width: 640px) {
  .brand-04__block-ct {
    margin-bottom: 30px;
  }
}
.brand-04__block-ct-ttl {
  display: block;
  margin-bottom: 40px;
}
.brand-04__block-ct p {
  max-width: 345px;
}
.brand-stance {
  padding: 76px 0 150px;
}
@media screen and (max-width: 834px) {
  .brand-stance {
    padding: 41px 0 129px;
  }
}
.brand-stance__ttl {
  display: block;
  text-align: center;
  margin-bottom: 59px;
}
.brand-stance__slider {
  margin-bottom: 64px;
}
@media screen and (max-width: 834px) {
  .brand-stance__slider {
    margin-bottom: 44px;
    padding: 0 0 0 26px;
  }
}
.brand-stance__slider .slick-list {
  padding: 0 23.7% !important;
}
@media screen and (max-width: 640px) {
  .brand-stance__slider .slick-list {
    padding: 0 6% 0 0 !important;
  }
}
.brand-stance__slider .slick-arrow {
  width: 58px;
  height: 58px;
  background: white;
  border-radius: 50%;
  z-index: 9;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.25);
}
@media screen and (max-width: 834px) {
  .brand-stance__slider .slick-arrow {
    width: 35px;
    height: 35px;
  }
}
.brand-stance__slider .slick-arrow:before {
  display: none;
}
.brand-stance__slider .slick-arrow:after {
  content: "";
  border: solid #2CA6E0;
  border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 8px;
  margin: 0 auto;
}
@media screen and (max-width: 834px) {
  .brand-stance__slider .slick-arrow:after {
    padding: 5px;
  }
}
.brand-stance__slider .slick-arrow.slick-prev {
  left: 16%;
  padding: 0 0 0 7px;
}
@media screen and (max-width: 834px) {
  .brand-stance__slider .slick-arrow.slick-prev {
    left: 4%;
    padding: 0 0 0 6px;
  }
}
.brand-stance__slider .slick-arrow.slick-prev:after {
  transform: rotate(135deg);
}
.brand-stance__slider .slick-arrow.slick-next {
  right: 16%;
  padding: 0 7px 0 0;
}
@media screen and (max-width: 834px) {
  .brand-stance__slider .slick-arrow.slick-next {
    right: 4%;
    padding: 0 6px 0 0;
  }
}
.brand-stance__slider .slick-arrow.slick-next:after {
  transform: rotate(-45deg);
}
.brand-stance__slider-item {
  padding: 0 30px;
}
@media screen and (max-width: 834px) {
  .brand-stance__slider-item {
    padding: 0 10px;
  }
}

.sec-character {
  padding: 60px 0 122px;
}
@media screen and (max-width: 834px) {
  .sec-character {
    padding: 30px 0 50px;
  }
}

.character-box {
  background: #9FDAFF;
  border-radius: 20px;
  padding: 65px 120px 61px;
  margin-bottom: 102px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media screen and (max-width: 1250px) {
  .character-box {
    padding: 50px 40px;
  }
}
@media screen and (max-width: 834px) {
  .character-box {
    padding: 40px 15px;
    margin-bottom: 82px;
    flex-wrap: wrap;
  }
}
.character-box__img {
  width: 36.45%;
  margin-top: -6px;
}
@media screen and (max-width: 834px) {
  .character-box__img {
    margin: 0 0 47px;
    width: 100%;
    text-align: center;
  }
}
.character-box__img img {
  width: 100%;
}
@media screen and (max-width: 834px) {
  .character-box__img img {
    width: 52.5%;
    max-width: 250px;
  }
}
.character-box__ct {
  width: 44.6%;
}
@media screen and (max-width: 1250px) {
  .character-box__ct {
    width: 55%;
  }
}
@media screen and (max-width: 834px) {
  .character-box__ct {
    width: 100%;
  }
}
.character-box__list-item {
  color: #fff;
  font-weight: bold;
  line-height: 1.4;
  font-size: 2rem;
}
.character-box__list-item:not(:last-child) {
  margin-bottom: 28px;
}
.character-box__list-item > span {
  margin-bottom: 10px;
  display: block;
}
.character-box__list-item > span span {
  background: #fff;
  display: inline-block;
  padding: 2px 21px;
  border-radius: 30px;
  font-weight: bold;
  color: #2CA6E0;
  font-size: 1.6rem;
}

.character-block__heading {
  color: #2CA6E0;
  font-weight: bold;
  text-align: center;
  margin-bottom: 83px;
  font-size: 2.2rem;
}
@media screen and (max-width: 834px) {
  .character-block__heading {
    margin-bottom: 61px;
  }
}
.character-block__heading span {
  display: inline-block;
  position: relative;
  padding-right: 30px;
}
.character-block__heading span:after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 34px;
  height: 44px;
  background: url("../img/discover/brand/character/icon-ttl.svg") center no-repeat;
  background-size: contain;
  right: -2px;
  top: 54%;
  transform: translateY(-50%);
}

.character-list {
  padding-left: 19px;
}
@media screen and (max-width: 834px) {
  .character-list {
    padding-left: 0;
  }
}
.character-list__item {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media screen and (max-width: 834px) {
  .character-list__item {
    flex-wrap: wrap;
  }
}
.character-list__item:not(:last-child) {
  margin-bottom: 100px;
}
@media screen and (max-width: 834px) {
  .character-list__item:not(:last-child) {
    margin-bottom: 58px;
  }
}
@media screen and (min-width: 835px) {
  .character-list__item:nth-child(2) .character-list__img {
    margin: 0 -19px;
    width: 238px;
  }
}
.character-list__img {
  width: 200px;
}
@media screen and (max-width: 834px) {
  .character-list__img {
    width: 100%;
    text-align: center;
    margin-bottom: 28px;
  }
}
.character-list__img img {
  width: 100%;
}
@media screen and (max-width: 834px) {
  .character-list__img img {
    height: 180px;
    width: auto;
  }
}
.character-list__ct {
  width: calc(100% - 200px);
  padding-left: 81px;
  padding-top: 2px;
}
@media screen and (max-width: 1250px) {
  .character-list__ct {
    padding-left: 60px;
  }
}
@media screen and (max-width: 834px) {
  .character-list__ct {
    padding-left: 0;
    width: 100%;
  }
}
@media screen and (min-width: 835px) {
  .character-list__ct .c-txt__basic {
    line-height: 1.8;
  }
}
.character-list__ttl {
  color: #F19500;
  font-weight: bold;
  margin-bottom: 32px;
  font-size: 2.5rem;
}
@media screen and (max-width: 834px) {
  .character-list__ttl {
    text-align: center;
    width: 100%;
    font-size: 2rem;
  }
}

.sec-yt {
  padding: 4px 0 80px;
  background: #A5DDF8;
  margin: 150px 0 253px;
  position: relative;
}
@media screen and (max-width: 834px) {
  .sec-yt {
    margin: 51px 0 158px;
    padding: 38px 0 63px;
  }
}
.sec-yt::before, .sec-yt::after {
  content: "";
  background: url("../img/discover/brand/character/bg-top.png") top center repeat-x;
  background-size: 1440px;
  width: 100%;
  height: 110px;
  position: absolute;
  top: -109px;
  left: 0;
}
@media screen and (max-width: 834px) {
  .sec-yt::before, .sec-yt::after {
    height: 37px;
    top: -28px;
    background-size: 375px;
  }
}
.sec-yt::after {
  background: url("../img/discover/brand/character/bg-bottom.png") bottom center repeat-x;
  background-size: 1441px;
  top: auto;
  bottom: -109px;
}
@media screen and (max-width: 834px) {
  .sec-yt::after {
    bottom: -28px;
    background-size: 375px;
  }
}

.yt-heading {
  color: #fff;
  font-weight: bold;
  text-align: center;
  margin-bottom: 56px;
  font-size: 2rem;
}
@media screen and (max-width: 834px) {
  .yt-heading {
    margin-bottom: 61px;
  }
}

.yt-list {
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 834px) {
  .yt-list {
    max-width: 500px;
  }
}
.yt-list__item:not(:last-child) {
  margin-bottom: 62px;
}
.yt-list__video {
  margin-bottom: 12px;
  position: relative;
  overflow: hidden;
}
.yt-list__video:before {
  display: block;
  content: "";
  padding-top: 56.125%;
}
.yt-list__video > :first-child, .yt-list__video img {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 834px) {
  .yt-list__video {
    margin-bottom: 7px;
  }
}
.yt-list__video iframe {
  width: 100%;
  height: 100%;
}
.yt-list__ttl {
  letter-spacing: 0.5px;
  color: #333333;
  font-weight: 500;
  font-size: 1.5rem;
}
@media screen and (max-width: 834px) {
  .yt-list__ttl {
    letter-spacing: 0;
  }
}

.sec-support {
  padding: 0 0 150px;
}
@media screen and (max-width: 834px) {
  .sec-support {
    padding: 0 0 130px;
  }
}

.support-block:not(:last-child) {
  margin-bottom: 80px;
}
@media screen and (max-width: 834px) {
  .support-block:not(:last-child) {
    margin-bottom: 60px;
  }
}
.support-block__logo {
  text-align: center;
  margin-bottom: 30px;
}
@media screen and (max-width: 834px) {
  .support-block__logo {
    margin-bottom: 40px;
  }
}
.support-block__logo img {
  max-width: 200px;
  width: 100%;
}
@media screen and (max-width: 834px) {
  .support-block__logo img {
    max-width: 142px;
  }
}
.support-block__desc {
  text-align: center;
  margin-bottom: 30px;
}
@media screen and (max-width: 834px) {
  .support-block__desc {
    text-align: left;
    margin-bottom: 28px;
    line-height: 1.6875;
    font-size: 1.6rem;
  }
}
.support-block__link {
  border-radius: 20px;
  padding: 18px 70px 21px 40px;
  background: #e94b13;
  color: #fff;
  font-weight: bold;
  position: relative;
  border: 1px solid #e94b13;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: 3rem;
}
@media screen and (max-width: 834px) {
  .support-block__link {
    display: block;
    padding: 20px 16px 25px;
    text-align: center;
    font-size: 2.5rem;
  }
}
.support-block__link span {
  display: inline-block;
  border-radius: 30px;
  margin-left: 20px;
  padding: 9px 29px;
  margin-top: 1px;
  color: #fff;
  font-weight: 500;
  border: 1px solid white;
  font-size: 1.5rem;
}
@media screen and (max-width: 834px) {
  .support-block__link span {
    margin-left: 0;
    width: 100%;
    max-width: 318px;
    margin: 16px auto 0;
    padding: 9px 10px;
    font-size: 1.4rem;
  }
}
.support-block__link:after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 15px;
  height: 15px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  top: 50%;
  right: 40px;
  transform: rotate(45deg) translateY(-50%);
}
@media screen and (max-width: 834px) {
  .support-block__link:after {
    display: none;
  }
}
@media (any-hover: hover) {
  .support-block__link:hover {
    background: #fff;
    opacity: 1;
    color: #e94b13;
  }
  .support-block__link:hover span {
    color: #e94b13;
    border-color: #e94b13;
  }
  .support-block__link:hover:after {
    border-top: 2px solid #e94b13;
    border-right: 2px solid #e94b13;
  }
}
@media screen and (min-width: 835px) {
  .support-block .list-btn {
    gap: 20px 20px;
    justify-content: unset;
    max-width: unset;
  }
  .support-block .list-btn .c-btn__02 {
    max-width: unset;
  }
}

.support-list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 20px 0;
  margin: 0 -8px;
}
@media screen and (max-width: 640px) {
  .support-list {
    margin: 0;
    gap: 15px 0;
  }
}
.support-list__item {
  padding: 0 8px;
  width: 33.33%;
}
@media screen and (max-width: 834px) {
  .support-list__item {
    width: 50%;
  }
}
@media screen and (max-width: 640px) {
  .support-list__item {
    padding: 0;
    width: 100%;
  }
}
@media (any-hover: hover) {
  .support-list__item:hover .support-list__ct {
    background: #2ca6e0;
    color: #fff;
    opacity: 1;
  }
  .support-list__item:hover .support-list__icon img {
    display: none;
  }
  .support-list__item:hover .support-list__icon img.hover {
    display: inline-block;
  }
  .support-list__item:hover .support-list__ttl {
    color: #fff;
  }
}
.support-list__ct {
  border: 1px solid #2ca6e0;
  border-radius: 10px;
  padding: 19px 10px;
  text-align: center;
  display: block;
  transition: all 0.3s ease;
}
@media screen and (max-width: 640px) {
  .support-list__ct {
    padding: 19px 14px;
    min-height: 61px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
}
.support-list__icon {
  margin-bottom: 18px;
}
@media screen and (max-width: 640px) {
  .support-list__icon {
    width: 30px;
    margin-bottom: 0;
  }
  .support-list__icon img {
    margin: -5px 0;
  }
}
.support-list__icon img {
  max-width: 100%;
}
.support-list__icon img.hover {
  display: none;
}
.support-list__ttl {
  line-height: 1.5;
  font-weight: 500;
  color: #2ca6e0;
  font-size: 1.4rem;
}
@media screen and (max-width: 640px) {
  .support-list__ttl {
    text-align: left;
    padding-left: 16px;
  }
}

.support-option {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  max-width: 730px;
  width: 100%;
  margin: 0 auto 20px;
}
@media screen and (max-width: 834px) {
  .support-option {
    gap: 18px 0;
    margin: 0 auto 19px;
  }
}
.support-option__item {
  width: 31.5%;
}
@media screen and (max-width: 834px) {
  .support-option__item {
    width: 48%;
  }
  .support-option__item:nth-child(2) .support-option__icon {
    transform: translateY(15px);
  }
}
.support-option__item.active .support-option__ct {
  background: #e94b13;
}
.support-option__item.active .support-option__ttl {
  color: #fff;
}
.support-option__item.active .support-option__icon .on {
  display: none;
}
.support-option__item.active .support-option__icon .off {
  display: block;
}
@media (any-hover: hover) {
  .support-option__item:hover a {
    opacity: 1;
  }
  .support-option__item:hover .support-option__ct {
    background: #e94b13;
  }
  .support-option__item:hover .support-option__ttl {
    color: #fff;
  }
  .support-option__item:hover .support-option__icon .on {
    display: none;
  }
  .support-option__item:hover .support-option__icon .off {
    display: block;
  }
}
.support-option__ct {
  display: block;
  padding: 26px 10px 31px;
  border-radius: 20px;
  text-align: center;
  background: #ffece5;
}
@media screen and (max-width: 834px) {
  .support-option__ct {
    height: 164px;
    padding: 4px 10px 15px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
  }
}
.support-option__icon {
  margin-bottom: 20px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
}
@media screen and (max-width: 834px) {
  .support-option__icon {
    width: 100%;
    text-align: center;
  }
}
.support-option__icon img {
  max-width: 100%;
}
@media screen and (max-width: 834px) {
  .support-option__icon img {
    height: 65px;
    width: auto;
  }
}
.support-option__icon .off {
  display: none;
}
.support-option__ttl {
  line-height: 1.533;
  font-weight: 500;
  color: #333;
  font-size: 1.5rem;
}
@media screen and (max-width: 834px) {
  .support-option__ttl {
    width: 100%;
    line-height: 1.538;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.3rem;
  }
}

.faq {
  margin-top: 20px;
  line-height: 1.6;
}
.faq__item {
  margin-top: 30px;
}
.faq__quest {
  position: relative;
  display: flex;
  align-items: center;
  padding: 20px;
  cursor: pointer;
  background-color: #2ca6e0;
  color: #fff;
}
@media screen and (max-width: 834px) {
  .faq__quest {
    padding: 15px;
  }
}
.faq__quest span {
  display: block;
  width: 50px;
  font-size: 3.5rem;
  text-align: center;
  line-height: 1;
}
@media screen and (max-width: 834px) {
  .faq__quest span {
    display: block;
    width: 20px;
    font-size: 2.8rem;
    text-align: center;
    line-height: 1;
  }
}
.faq__quest p {
  width: calc(100% - 50px);
  padding-right: 60px;
  padding-left: 15px;
  font-size: 1.8rem;
  font-weight: 700;
  color: #fff;
}
@media screen and (max-width: 834px) {
  .faq__quest p {
    width: calc(100% - 20px);
    padding-right: 25px;
    font-size: 1.6rem;
  }
}
.faq__quest::before {
  content: "";
  position: absolute;
  top: calc(50% - 3px);
  right: 35px;
  transform: translateY(-50%) rotate(135deg);
  width: 15px;
  height: 15px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  transition: 0.3s;
}
@media screen and (max-width: 834px) {
  .faq__quest::before {
    right: 15px;
    width: 12px;
    height: 12px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
  }
}
.faq__quest.js-open::before {
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
  transition: 0.3s;
}
.faq__answer {
  position: relative;
  display: none;
  align-items: center;
  padding: 20px;
  background-color: #f2f2f2;
  color: #2ca6e0;
}
@media screen and (max-width: 834px) {
  .faq__answer {
    padding: 15px;
  }
}
.faq__answer span {
  display: block;
  width: 50px;
  font-size: 3.5rem;
  text-align: center;
  line-height: 1;
}
@media screen and (max-width: 834px) {
  .faq__answer span {
    display: block;
    width: 20px;
    font-size: 2.8rem;
    text-align: center;
    line-height: 1;
  }
}
.faq__answer p {
  width: calc(100% - 50px);
  padding-left: 15px;
  color: #333;
  font-size: 1.5rem;
}
@media screen and (max-width: 834px) {
  .faq__answer p {
    width: calc(100% - 20px);
  }
}

.sec-trouble {
  padding: 60px 0;
}
@media screen and (max-width: 834px) {
  .sec-trouble {
    padding: 30px 0 16px;
  }
}

.sec-trouble-content {
  padding-bottom: 30px;
}

.trouble-tab {
  opacity: 0;
  visibility: hidden;
  display: none;
  transition: all 0.2s ease-in;
}
.trouble-tab.active {
  opacity: 1;
  display: block;
  visibility: visible;
}
.trouble-tab__item {
  padding: 60px 0;
  background: #1A5D7D;
}
@media screen and (max-width: 834px) {
  .trouble-tab__item {
    padding: 40px 0;
  }
}
.trouble-tab__list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -15px;
  gap: 29px 0;
}
@media screen and (max-width: 834px) {
  .trouble-tab__list {
    margin: 0;
    gap: 20px 0;
  }
}
.trouble-tab__list-item {
  width: 50%;
  padding: 0 15px;
}
@media screen and (max-width: 834px) {
  .trouble-tab__list-item {
    padding: 0;
    width: 100%;
  }
}
.trouble-tab__list-ct {
  background: #fff;
  border-radius: 20px;
  padding: 50px 20px;
  text-align: center;
}
.trouble-tab__list-ct .c-txt__basic {
  text-align: left;
}
.trouble-tab__list-ttl {
  color: #E94B13;
  font-weight: bold;
  margin-bottom: 40px;
  font-size: 2.4rem;
}
@media screen and (max-width: 1250px) {
  .trouble-tab__list-ttl {
    font-size: 2rem;
  }
}
@media screen and (max-width: 834px) {
  .trouble-tab__list-ttl {
    margin-bottom: 30px;
    line-height: 1.375;
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 359px) {
  .trouble-tab__list-ttl {
    font-size: 2rem;
  }
}
.trouble-tab__list-img {
  text-align: center;
}
.trouble-tab__list-img img {
  width: 100%;
  max-width: 305px;
}
.trouble-tab__list-icon {
  text-align: center;
  margin-bottom: 39px;
}
.trouble-tab__list-icon img {
  max-width: 100%;
  height: 130px;
  width: auto;
}
@media screen and (min-width: 835px) {
  .trouble-tab__list--02 .trouble-tab__list-item {
    width: 50%;
  }
}
@media screen and (max-width: 834px) {
  .trouble-tab__list--02 .trouble-tab__list-ttl {
    margin-bottom: 41px;
  }
}
.trouble-tab__box {
  padding: 79px 0 0;
}
@media screen and (max-width: 834px) {
  .trouble-tab__box {
    padding: 59px 0 0;
  }
}
.trouble-tab__step {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 -15px 40px;
  counter-reset: item;
  flex-wrap: wrap;
}
@media screen and (max-width: 1250px) {
  .trouble-tab__step {
    margin: 0 -8px 40px;
  }
}
@media screen and (max-width: 834px) {
  .trouble-tab__step {
    margin: 0;
    gap: 22px 0;
    flex-wrap: wrap;
    margin-bottom: 40px;
  }
}
.trouble-tab__step-item {
  width: 50%;
  padding: 15px;
  counter-increment: item;
}
@media screen and (max-width: 1250px) {
  .trouble-tab__step-item {
    padding: 8px;
  }
}
@media screen and (max-width: 834px) {
  .trouble-tab__step-item {
    padding: 0;
    width: 100%;
  }
}
.trouble-tab__step-ct {
  border: 1px solid #E94B13;
  background: #fff;
  border-radius: 20px;
  position: relative;
  padding: 101px 20px 38px;
}
@media screen and (max-width: 1250px) {
  .trouble-tab__step-ct {
    padding: 100px 15px 35px;
  }
}
@media screen and (max-width: 834px) {
  .trouble-tab__step-ct {
    padding: 100px 18px 39px;
  }
}
.trouble-tab__step-ct::before {
  content: "0" counter(item);
  width: 100%;
  left: 0;
  text-align: center;
  position: absolute;
  top: 34px;
  color: #E94B13;
  font-weight: bold;
  font-size: 3.5rem;
}
.trouble-tab__step-ttl {
  text-align: center;
  color: #E94B13;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 31px;
  font-size: 2rem;
}
@media screen and (max-width: 1250px) {
  .trouble-tab__step-ttl {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 834px) {
  .trouble-tab__step-ttl {
    margin-bottom: 31px;
  }
}
.trouble-tab__step-icon {
  margin-top: 20px;
  text-align: center;
}
.trouble-tab__step-icon img {
  max-width: 100%;
  height: 130px;
  width: auto;
}
.trouble-tab__note {
  text-align: left;
  line-height: 1.5;
  margin-bottom: 0;
  font-weight: bold;
  color: #E94B13;
  font-size: 2rem;
}
.trouble-tab__txt {
  background: #fff;
  padding: 50px 10px;
  text-align: center;
  border-radius: 20px;
  color: #e94b13;
  font-weight: 700;
  margin-bottom: 30px;
  margin-top: -17px;
  font-size: 2.4rem;
}
@media screen and (max-width: 834px) {
  .trouble-tab__txt {
    margin-bottom: 19px;
    margin-top: 0;
  }
}

.sec-roubles {
  padding: 42px 0 151px;
}
@media screen and (max-width: 834px) {
  .sec-roubles {
    padding: 26px 0 130px;
  }
}

.roubles-block {
  margin-bottom: 51px;
  text-align: center;
}
@media screen and (max-width: 834px) {
  .roubles-block {
    margin-bottom: 40px;
  }
}
.roubles-block__heading {
  text-align: center;
  margin-bottom: 30px;
  color: #E94B13;
  font-weight: bold;
  font-size: 3rem;
}
@media screen and (max-width: 834px) {
  .roubles-block__heading {
    font-size: 2.5rem;
  }
}
.roubles-block__heading > span {
  margin-top: 5px;
  display: block;
}
@media screen and (max-width: 834px) {
  .roubles-block__heading > span {
    margin-top: 15px;
  }
}
.roubles-block__heading > span span {
  padding: 9px 20px;
  max-width: 345px;
  width: 100%;
  display: inline-block;
  border-radius: 40px;
  border: 1px solid #E94B13;
  font-weight: 500;
  font-size: 1.4rem;
}
.roubles-block__desc {
  font-weight: bold;
  color: #555555;
  font-size: 1.8rem;
}
@media screen and (max-width: 834px) {
  .roubles-block__desc {
    line-height: 1.444;
  }
}

.roubles-list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 10px 0;
  margin: 0 -5px;
}
@media screen and (max-width: 640px) {
  .roubles-list {
    margin: 0;
    gap: 19px 0;
  }
}
.roubles-list__item {
  width: 33.33%;
  padding: 0 5px;
}
@media screen and (max-width: 834px) {
  .roubles-list__item {
    width: 50%;
  }
}
@media screen and (max-width: 640px) {
  .roubles-list__item {
    width: 100%;
    padding: 0;
  }
}
.roubles-list__ct {
  background: #FFECE5;
  border-radius: 20px;
  padding: 38px 25px;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}
@media screen and (max-width: 1250px) {
  .roubles-list__ct {
    padding: 35px 15px;
  }
}
@media screen and (max-width: 834px) {
  .roubles-list__ct {
    padding: 37px 40px 39px;
  }
}
@media screen and (max-width: 359px) {
  .roubles-list__ct {
    padding: 37px 20px;
  }
}
.roubles-list__ct .c-txt__basic {
  line-height: 1.75;
  margin-bottom: 18px;
  letter-spacing: 1.6px;
}
@media screen and (max-width: 834px) {
  .roubles-list__ct .c-txt__basic {
    line-height: 1.9;
    letter-spacing: 2.6px;
  }
}
.roubles-list__ttl {
  color: #E94B13;
  font-weight: bold;
  margin-bottom: 27px;
  letter-spacing: 2px;
  text-align: center;
  font-size: 2rem;
}
.roubles-list__tel {
  text-align: center;
}
.roubles-list__tel a {
  display: inline-block;
  padding-left: 30px;
  position: relative;
  color: #E94B13;
  font-weight: bold;
  font-size: 2.4rem;
}
.roubles-list__tel a:before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 19px;
  height: 19px;
  background: url("../img/support/trouble/icon-tel.svg") center no-repeat;
  background-size: contain;
  top: 9px;
  left: 0;
}

.discover_ttl {
  font-size: 5rem;
  text-align: center;
  position: relative;
  font-weight: 700;
  margin: 150px auto 60px;
  color: #2CA6E0;
}
@media screen and (max-width: 834px) {
  .discover_ttl {
    font-size: 3rem;
  }
}
.discover_ttl::before {
  content: "";
  position: absolute;
  background: url(../img/discover/discover_ico.png) center/contain no-repeat;
  width: 50px;
  height: 50px;
  top: -60px;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 834px) {
  .discover_ttl::before {
    width: 30px;
    height: 30px;
    top: -50px;
  }
}
.discover_ttl span {
  display: block;
  font-size: 3rem;
  margin-top: 20px;
  color: #555;
}
@media screen and (max-width: 834px) {
  .discover_ttl span {
    font-size: 2rem;
  }
}
.discover_grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
@media screen and (max-width: 834px) {
  .discover_grid {
    grid-template-columns: 1fr;
  }
}
.discover_grid_item {
  position: relative;
  display: block;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}
@media screen and (max-width: 834px) {
  .discover_grid_item {
    aspect-ratio: 4/3;
  }
}
.discover_grid_item:nth-child(1) {
  grid-column: span 2;
}
@media screen and (max-width: 834px) {
  .discover_grid_item:nth-child(1) {
    grid-column: span 1;
  }
}
.discover_grid_item::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 0;
}
.discover_grid_img {
  width: 100%;
  overflow: hidden;
}
@media screen and (max-width: 834px) {
  .discover_grid_img {
    aspect-ratio: 4/3;
  }
}
.discover_grid_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
.discover_grid_ttl {
  position: absolute;
  bottom: 40px;
  left: 40px;
  font-size: 2.2rem;
  color: #fff;
  font-weight: 700;
}
.discover_grid_ttl:nth-child(1) {
  font-size: 2.6rem;
}
@media screen and (max-width: 640px) {
  .discover_grid_ttl:nth-child(1) {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 640px) {
  .discover_grid_ttl {
    font-size: 1.6rem;
    bottom: 20px;
    left: 20px;
  }
}
.discover_grid_ico {
  position: absolute;
  bottom: 25px;
  right: 40px;
  font-size: 2.6rem;
  color: #fff;
  border: #fff solid 1px;
  border-radius: 50%;
  width: 60px;
  height: 60px;
}
@media screen and (max-width: 834px) {
  .discover_grid_ico {
    width: 40px;
    height: 40px;
    bottom: 20px;
    right: 20px;
  }
}
.discover_grid_ico span {
  display: inline-block;
  position: relative;
  width: 100%;
  height: 100%;
}
.discover_grid_ico span::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 26px;
  height: 26px;
  background: url(../img/discover/discover_grid_ico.png) center/contain no-repeat;
}
@media screen and (max-width: 834px) {
  .discover_grid_ico span::after {
    width: 17px;
    height: 17px;
  }
}

.item_gas_appliance::before {
  background: linear-gradient(0deg, #C68110 0%, rgba(255, 255, 255, 0) 50%);
}
.item_lpgas_citygas::before {
  background: linear-gradient(0deg, #001E2D 0%, rgba(255, 255, 255, 0) 50%);
}
.item_voice::before {
  background: linear-gradient(0deg, #F57D22 0%, rgba(255, 255, 255, 0) 50%);
}
.item_terra::before {
  background: linear-gradient(0deg, #9CDA72 0%, rgba(255, 255, 255, 0) 50%);
}
.item_brand::before {
  background: linear-gradient(0deg, #2CA6E0 0%, rgba(255, 255, 255, 0) 49.52%);
}

.total_energy_copy p {
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 37px;
  color: #2CA6E0;
  margin-top: 60px;
}
@media screen and (max-width: 834px) {
  .total_energy_copy p {
    font-size: 2rem;
    line-height: normal;
    margin-top: 30px;
  }
}
.total_energy_copy span {
  font-size: 1.6rem;
  font-weight: 700;
  display: inline-block;
  margin-top: 30px;
  color: #555;
}
.total_energy_copy02 {
  margin-bottom: 30px;
}
.total_energy_copy02 p {
  font-size: 2rem;
  font-weight: 700;
  color: #2CA6E0;
}
@media screen and (max-width: 834px) {
  .total_energy_copy02 p {
    font-size: 1.8rem;
  }
}
.total_energy_copy03 p {
  display: inline-block;
  font-weight: 700;
  font-size: 1.6rem;
  margin-top: 20px;
  color: #555;
}
.total_energy_note {
  background-color: #EAF8FF;
  padding: 40px 30px;
  border-radius: 10px;
}
.total_energy_note h4 {
  text-align: center;
  font-weight: 700;
  font-size: 2.5rem;
  color: #2CA6E0;
  margin-bottom: 25px;
}
@media screen and (max-width: 834px) {
  .total_energy_note h4 {
    font-size: 2rem;
    text-align: left;
  }
}
.total_energy_note p {
  margin-bottom: 30px;
}

.calculation_wrap {
  background-color: #fff;
  padding: 50px 30px 30px;
  height: 80vh;
  overflow-y: auto;
}
@media screen and (max-width: 834px) {
  .calculation_wrap {
    padding: 60px 15px 30px;
  }
}
.calculation_wrap .popup-wrap__close {
  position: absolute;
  width: 45px;
  height: 45px;
  cursor: pointer;
  top: 3px;
  right: 3px;
}
.calculation_wrap .popup-wrap__close:before,
.calculation_wrap .popup-wrap__close:after {
  background: #2CA6E0;
  width: 55px;
}
.calculation_ttl {
  font-size: 2.2rem;
  color: #2CA6E0;
  font-weight: 700;
  text-align: center;
  margin: 0 auto 30px;
}
@media screen and (max-width: 834px) {
  .calculation_ttl {
    font-size: 2rem;
    text-align: left;
  }
}
.calculation_ttl02 {
  font-size: 1.8rem;
  font-weight: 700;
  color: #555;
  margin-top: 40px;
}
@media screen and (max-width: 834px) {
  .calculation_ttl02 {
    font-size: 1.6rem;
  }
}
.calculation_item {
  border: #2CA6E0 solid 1px;
  border-radius: 10px;
  margin-top: 30px;
  padding: 20px;
}
@media screen and (max-width: 834px) {
  .calculation_item {
    padding: 20px 15px;
  }
}
.calculation_item p {
  font-size: 1.5rem;
  font-weight: 500;
  color: #555;
}

.over_img {
  overflow-x: auto;
}
.over_img img {
  max-width: 980px;
  margin: 30px auto 0;
}

#city_gas_safety .city_gas_safety_img img {
  border-radius: unset;
}
#city_gas_safety .city_gas_safety_img_center {
  max-width: 100%;
  width: 100%;
  margin: 0 auto;
}
#city_gas_safety .city_gas_safety_item {
  margin-top: 30px;
}
#city_gas_safety .city_gas_safety_item h4 {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 15px;
  color: #2CA6E0;
}
@media screen and (max-width: 834px) {
  #city_gas_safety .city_gas_safety_item h4 {
    font-size: 1.6rem;
  }
}

.voice_cate {
  display: flex;
  gap: 20px;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 80px;
  cursor: pointer;
  margin: 60px auto 80px;
}
@media screen and (max-width: 834px) {
  .voice_cate {
    margin: 30px auto 60px;
    height: auto;
    display: block;
  }
}
.voice_cate_link {
  display: flex;
  max-width: 290px;
  width: 100%;
  height: 100%;
  border: #2CA6E0 solid 1px;
  color: #2CA6E0;
  border-radius: 100px;
  background: #fff;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 834px) {
  .voice_cate_link {
    margin-bottom: 15px;
    max-width: 100%;
    padding: 15px 15px;
  }
}
.voice_cate_link:hover {
  color: #fff;
  background: #2CA6E0;
  transition: 0.3s;
  opacity: unset;
}
.voice_cate_link.active {
  color: #fff;
  background: #2CA6E0;
}
.voice_ttl {
  color: #2CA6E0;
  font-weight: 600;
  font-size: 1.6rem;
  margin-bottom: 15px;
}
.voice_info {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  align-items: baseline;
}
.voice_info span {
  font-size: 1.2rem;
  font-weight: 400;
  border: #888 solid 1px;
  border-radius: 100px;
  color: #888;
  padding: 1px 20px;
  display: inline-block;
}
.voice_details_top {
  margin-top: 60px;
}
@media screen and (max-width: 834px) {
  .voice_details_top {
    margin-top: 30px;
  }
}
.voice_details_info {
  color: #2CA6E0;
}
.voice_details_ttl {
  font-size: 2.2rem;
  color: #2CA6E0;
  margin-bottom: 30px;
  font-weight: 700;
}

.page-voice_details p {
  margin-bottom: 1.5rem;
  line-height: 1.6875;
}
.page-voice_details img {
  border-radius: 10px;
}
.page-voice_details .details_flex_item img {
  aspect-ratio: 16/9;
}

/* ====================================================
お問い合わせ対応エリア検索
==================================================== */
form.search-form {
  max-width: 100%;
  margin: 2em auto;
  padding: 2em;
  border: 1px solid #ddd;
  border-radius: 8px;
  background-color: #f9f9f9;
  display: flex;
  flex-direction: column;
  align-items: center;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
}

label.address_ttl {
  font-weight: bold;
  font-size: 1.8rem;
  display: block;
  margin-bottom: 0.5em;
  color: #555;
  max-width: 500px;
  margin: 0 auto;
}
label.address_ttl span {
  font-weight: 500;
  font-size: 1.5rem;
}

.search-form_inner {
  width: 100%;
  text-align: center;
  margin-bottom: 1.5em;
}

input.address {
  padding: 0.6em;
  font-size: 2rem;
  width: 100%;
  max-width: 500px;
  box-sizing: border-box;
  border: 1px solid #ccc;
  border-radius: 4px;
  margin: 0 auto 0.8em;
}

.search-form button.search-btn {
  padding: 0.6em 1.4em;
  font-size: 1.5rem;
  background-color: #2CA6E0;
  color: #fff;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.search-form button.search-btn:hover {
  background-color: #0056b3;
  transition: 0.3s;
}

#branch-message {
  font-weight: bold;
  margin-top: 1em;
  color: #555;
  font-size: 1.6rem;
}

#call-button {
  display: none;
  margin-top: 1em;
  padding: 0.7em 1.2em;
  font-size: 1rem;
  background-color: #2CA6E0;
  color: white;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  text-decoration: none;
  transition: background-color 0.3s ease;
  font-size: 1.6rem;
  text-align: center;
  font-weight: 700;
}

#call-button:hover {
  background-color: #0056b3;
  opacity: unset;
}

@media screen and (max-width: 834px) {
  .contact-mail-btn {
    width: 100%;
  }
}

.button-group {
  display: flex;
  gap: 10px;
  /* ボタン間の間隔 */
  flex-wrap: wrap;
}
@media screen and (max-width: 834px) {
  .button-group {
    flex-direction: column;
    gap: 8px;
    /* ボタン間の縦間隔 */
  }
}

.button-group a {
  display: inline-block;
  padding: 0.5em 1em;
  background-color: #2196F3;
  color: #fff;
  border-radius: 4px;
  text-decoration: none;
  text-align: center;
}

#mail-button {
  margin-top: 1em;
  padding: 0.7em 1.2em;
  background-color: #2CA6E0;
  color: white;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: background-color 0.3s ease;
  font-size: 1.6rem;
  text-align: center;
  font-weight: 700;
  line-height: 50px;
}
@media screen and (max-width: 834px) {
  #mail-button {
    line-height: unset;
  }
}
#mail-button:hover {
  background-color: #0056b3;
  opacity: unset;
}

/* ====================================================
 モーダル全体の背景
==================================================== */
#branch-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  /* 背景を半透明に */
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  overflow: auto;
}

/* ====================================================
 モーダルコンテンツ
==================================================== */
#branch-modal .modal-content {
  background-color: #f9f9f9;
  padding: 2em;
  border-radius: 8px;
  max-width: 600px;
  width: 90%;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* ====================================================
 閉じるボタン
==================================================== */
#branch-modal .close {
  position: absolute;
  top: 15px;
  right: 15px;
  font-size: 2rem;
  font-weight: bold;
  color: #555;
  cursor: pointer;
}

/* ====================================================
 モーダルタイトル・説明
==================================================== */
#branch-modal h2 {
  font-size: 2rem;
  margin-bottom: 0.5em;
  color: #333;
  text-align: center;
}
@media screen and (max-width: 834px) {
  #branch-modal h2 {
    font-size: 1.6rem;
  }
}

#branch-modal p {
  font-size: 1.4rem;
  color: #555;
  margin-bottom: 1.5em;
  text-align: center;
}

/* ====================================================
 入力フォーム・検索ボタン
==================================================== */
#modal-address {
  width: 100%;
  max-width: 500px;
  padding: 0.6em;
  font-size: 1.8rem;
  border: 1px solid #ccc;
  border-radius: 4px;
  margin-bottom: 1em;
  box-sizing: border-box;
}

#modal-search-btn {
  padding: 0.6em 1.4em;
  font-size: 1.5rem;
  background-color: #2CA6E0;
  color: #fff;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

#modal-search-btn:hover {
  background-color: #0056b3;
}

/* ====================================================
 拠点メッセージ
==================================================== */
#modal-branch-message {
  font-weight: bold;
  margin-top: 1em;
  color: #555;
  font-size: 1.6rem;
  text-align: center;
}

/* ====================================================
 電話ボタン
==================================================== */
#modal-call-btn {
  display: none;
  margin-top: 1em;
  padding: 0.7em 1.2em;
  font-size: 1.6rem;
  background-color: #2CA6E0;
  color: #fff;
  border-radius: 6px;
  text-decoration: none;
  text-align: center;
  font-weight: 700;
  cursor: pointer;
  transition: background-color 0.3s ease;
  width: 500px;
}

#modal-call-btn:hover {
  background-color: #0056b3;
}

/* ====================================================
 メールボタン群
==================================================== */
#modal-mail-buttons {
  display: none;
  margin-top: 1em;
  width: 100%;
  text-align: center;
}

#modal-mail-buttons a {
  display: inline-block;
  padding: 0.7em 1.2em;
  margin: 0.4em 0.5em;
  color: #fff;
  border-radius: 6px;
  text-decoration: none;
  text-align: center;
  font-weight: 500;
  width: 500px;
}

#modal-mail-buttons a:hover {
  background-color: #0056b3;
}

/* モーダルのメールボタン */
.modal-mail-btn {
  display: inline-block;
  padding: 0.7em 1.2em;
  font-size: 1.6rem;
  background-color: #2CA6E0;
  color: #fff;
  border-radius: 6px;
  text-decoration: none;
  text-align: center;
  font-weight: 700;
  cursor: pointer;
  transition: background-color 0.3s ease;
  width: 500px;
}

.modal-mail-btn:hover {
  background-color: #0056b3;
  /* ホバー時の色変化 */
}

@media screen and (max-width: 480px) {
  .modal-mail-btn {
    font-size: 1.4rem;
    width: 100%;
  }
}
/* ====================================================
 ボタン群のレスポンシブ対応
==================================================== */
.button-group {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: center;
}

.button-group a {
  flex: 1 1 auto;
}

@media screen and (max-width: 480px) {
  #branch-modal .modal-content {
    padding: 1.5em;
  }
  #modal-address {
    font-size: 1.6rem;
  }
  #modal-search-btn,
  #modal-call-btn {
    font-size: 1.4rem;
  }
  #modal-call-btn {
    width: 100%;
  }
  #modal-branch-message {
    font-size: 1.4rem;
  }
  #modal-mail-buttons a {
    width: 100%;
    margin: 0.3em 0;
    font-size: 1.4rem;
    padding: 0.7em 1.2em;
  }
}
/* ====================================================
チャート
==================================================== */
.chart_content {
  max-width: 980px;
  width: 100%;
  margin: 60px auto 0;
  overflow-x: auto;
}
@media screen and (max-width: 834px) {
  .chart_content {
    margin: 30px auto 0;
  }
}
.chart_wrapper {
  position: relative;
  aspect-ratio: 16/9;
  width: 980px;
  margin: 0 auto;
  padding-bottom: 1rem;
}
.chart_wrapper canvas {
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  display: block;
}

/* ====================================================
検索機能
==================================================== */
.popup-wrap__search input#feas-submit-button-0 {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 97px;
  height: 70px;
  background: #2ca6e0;
  color: white;
  border-radius: 10px;
  border: 0;
  font-weight: 500;
  font-size: 2.5rem;
  padding: unset;
  cursor: pointer;
  top: 0;
  right: 0;
  transition: 0.3s;
}
.popup-wrap__search input#feas-submit-button-0:hover {
  background: #1384b8;
  transition: 0.3s;
}

#header .header-nav__ct-search form input#feas-submit-button-0 {
  position: absolute;
  width: 20px;
  height: 20px;
  background: url(../img/common/icon-search-white.svg) center no-repeat;
  background-size: contain;
  border: 0;
  cursor: pointer;
  top: 5px;
  left: 0;
  color: transparent;
}

.search_results {
  margin: 30px auto 60px;
}
.search_results_count {
  font-size: 2rem;
  margin-top: 60px;
}
@media screen and (max-width: 834px) {
  .search_results_count {
    margin-top: 30px;
  }
}
.search_results_count span {
  color: #2CA6E0;
}
.search_results_item {
  display: block;
  padding: 20px 0;
  border-bottom: #555 solid 1px;
}
.search_results_item ._snippet {
  font-size: 1.5rem;
}
.search_results_link {
  display: block;
  font-size: 2.8rem;
  font-weight: 700;
  color: #2CA6E0;
  margin-bottom: 10px;
}
@media screen and (max-width: 834px) {
  .search_results_link {
    font-size: 2.2rem;
  }
}
.search_results_url a {
  color: #2CA6E0;
  text-decoration: underline;
  text-align: right;
  margin-top: 10px;
  display: block;
}

/* ====================================================
公式ソーシャルメディアアカウント
==================================================== */
.official_flex {
  margin-top: 60px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media screen and (max-width: 834px) {
  .official_flex {
    grid-template-columns: repeat(1, 1fr);
    margin-top: 30px;
  }
}
.official_flex_item {
  border: #2CA6E0 solid 1px;
  border-radius: 30px;
  padding: 50px 20px;
}
.official_flex_item img {
  width: 50px;
  height: 50px;
  object-fit: contain;
  margin: 0 auto 20px;
  display: block;
}
.official_flex_item figcaption {
  font-size: 2.4rem;
  color: #2CA6E0;
  text-align: center;
  font-weight: 700;
}
.official_flex_item h6 {
  text-align: center;
  font-size: 1.5rem;
  font-weight: 700;
  margin: 30px auto 20px;
  color: #2CA6E0;
}
.official_flex_item p {
  font-size: 1.5rem;
  line-height: 26px;
}
.official_flex_item a.c-btn__01 {
  margin: 60px auto 0;
  max-width: 250px;
}

.details_flex {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 30px;
  margin-top: 30px;
}
@media screen and (max-width: 834px) {
  .details_flex {
    display: block;
  }
}
.details_flex_item {
  flex: 1 1 0;
}
@media screen and (max-width: 834px) {
  .details_flex_item {
    margin-bottom: 30px;
  }
}

.calendar {
  margin-top: 60px;
}
@media screen and (max-width: 834px) {
  .calendar {
    margin-top: 30px;
  }
}

/* ====================================================
各種ポリシー
==================================================== */
/* 全タブを非表示にする */
.policy_main > div[class^=policy_tab] {
  display: none;
}

/* 表示用 */
.policy_main > div.active {
  display: block;
}

/* タブリンクの見た目 */
.policy_link p {
  cursor: pointer;
  display: inline-block;
  padding: 20px 15px;
  margin-right: 10px;
  background-color: #fff;
  border: #2CA6E0 solid 1px;
  border-radius: 10px;
  color: #2CA6E0;
  transition: all 0.3s;
}
.policy_link p:hover {
  color: #fff;
  background-color: #2CA6E0;
  transition: all 0.3s;
}
@media screen and (max-width: 834px) {
  .policy_link p {
    margin-top: 15px;
    width: 100%;
  }
}

.policy_link p.active {
  font-weight: bold;
  color: #fff;
  background-color: #2CA6E0;
}

/* ====================================================
ローディング画面
==================================================== */
#loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #eefeff;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  opacity: 1;
  transition: opacity 0.5s ease;
}

.loader {
  position: relative;
  width: 200px;
  height: 200px;
}
.loader img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* ====================================================
翻訳
==================================================== */
/* フロート言語切替全体 */
#gt_float_wrapper {
  position: relative;
  /* 必要に応じて固定配置も可能 */
  font-family: "Helvetica", "Arial", sans-serif;
  z-index: 9999;
}

.gt_float_switcher {
  border-radius: 8px !important;
  background: transparent !important;
}

/* 現在選択されている言語ボタン */
#gt_float_wrapper .gt-current-lang {
  display: flex;
  align-items: center;
  gap: 6px;
  background-color: #e0f7ff;
  color: #555;
  font-weight: 400;
  padding: 6px 12px;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
}

/* ホバー時 */
#gt_float_wrapper .gt-current-lang:hover {
  background-color: #ccefff;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
}

/* 言語リスト（非表示時も含む） */
#gt_float_wrapper .gt_options {
  position: absolute;
  top: 100%;
  left: 0;
  background-color: #f0faff;
  border: 1px solid #80d4ff;
  border-radius: 8px;
  padding: 6px 0;
  margin-top: 6px;
  display: none;
  /* JSで表示切替されます */
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  min-width: 180px;
}

/* 言語リンク */
#gt_float_wrapper .gt_options a {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  color: #555;
  text-decoration: none;
  transition: background 0.2s;
  font-size: 1.4rem;
}

/* ホバー時 */
#gt_float_wrapper .gt_options a:hover {
  background-color: #ccefff;
}

/* 選択中の言語 */
#gt_float_wrapper .gt_options a.gt-current {
  font-weight: bold;
  background-color: #b3e5ff;
}

/* 旗アイコンのサイズ */
#gt_float_wrapper .gt_options img,
#gt_float_wrapper .gt-current-lang img {
  width: 20px;
  height: auto;
  display: block;
}

/* サイドバー内GTranslateラッパー調整 */
.header-nav_sidebar-language #gt_float_wrapper {
  position: relative;
  width: 100%;
  /* 親幅に収める */
  display: block;
  font-family: "Helvetica", "Arial", sans-serif;
  z-index: 9999;
}

/* 現在選択中の言語ボタン */
.header-nav_sidebar-language .gt-current-lang {
  display: flex;
  align-items: center;
  gap: 4px;
  background-color: #e0f7ff;
  color: #333;
  padding: 4px 6px;
  border-radius: 6px;
  cursor: pointer;
  font-size: 12px;
  justify-content: flex-start;
}

/* 旗アイコンサイズ */
.header-nav_sidebar-language .gt-current-lang img {
  width: 16px;
  height: auto;
}

/* ドロップダウンリスト（overflow親でも表示可能にする） */
.header-nav_sidebar-language .gt_options {
  position: relative;
  /* absoluteではなくrelativeに変更 */
  top: 4px;
  left: 0;
  background-color: #f0faff;
  border: 1px solid #80d4ff;
  border-radius: 6px;
  padding: 4px 0;
  display: none;
  width: 100%;
  /* 親幅に合わせる */
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* 言語リンク */
.header-nav_sidebar-language .gt_options a {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 6px;
  font-size: 12px;
  text-decoration: none;
  color: #555;
  white-space: nowrap;
}

/* ホバー時 */
.header-nav_sidebar-language .gt_options a:hover {
  background-color: #ccefff;
}

/* 選択中の言語 */
.header-nav_sidebar-language .gt_options a.gt-current {
  font-weight: bold;
  background-color: #b3e5ff;
}

/* WebKit系（Chrome, Safari, Edgeなど） */
.header-nav_sidebar-language .gt_options::-webkit-scrollbar {
  height: 6px; /* 横スクロール用（太さ） */
}

.header-nav_sidebar-language .gt_options::-webkit-scrollbar-track {
  background: transparent; /* 背景 */
}

.header-nav_sidebar-language .gt_options::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.3); /* つまみ */
  border-radius: 4px;
}

/* Firefox */
.header-nav_sidebar-language .gt_options {
  scrollbar-width: thin; /* 細め */
  scrollbar-color: rgba(0, 0, 0, 0.3) transparent;
}

.gt_float_switcher .gt-selected .gt-current-lang span.gt_float_switcher-arrow {
  transform: rotate(0deg) !important;
}

.gt_float_switcher .gt-selected .gt-current-lang span.gt_float_switcher-arrow.gt_arrow_rotate {
  transform: rotate(-180deg) !important;
}

/* スマホ対応 */
@media (max-width: 1024px) {
  .header-nav_sidebar-language #gt_float_wrapper .gt_options {
    width: 90px;
    min-width: unset;
  }
  .header-nav_sidebar-language .gt-current-lang {
    justify-content: center;
  }
}
/* ====================================================
Cookie
==================================================== */
.cky-consent-container .cky-consent-bar {
  border-radius: 10px !important;
  margin: 10px !important;
  background-color: rgba(85, 85, 85, 0.9) !important;
  border: unset !important;
}

@media (max-width: 1200px) {
  .cky-notice-group {
    display: block !important;
  }
  .cky-notice-btn-wrapper {
    margin-top: 10px !important;
  }
}
/* ====================================================
お支払いに関する手続き
==================================================== */
.credit_img {
  display: flex;
  width: 8%;
  align-items: center;
  gap: 30px;
}
@media screen and (max-width: 834px) {
  .credit_img {
    width: 14%;
    gap: 10px;
  }
}

.list-credit img {
  width: 100%;
}
@media screen and (max-width: 834px) {
  .list-credit {
    margin-bottom: 20px;
  }
}

.recipe_content .c-ttl__01.recipe_ttl {
  color: #555;
}
.recipe_img {
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
}
.recipe_img img {
  border-radius: 20px;
}
.recipe_comment {
  margin: 50px auto 60px;
}
.recipe_comment h4 {
  font-size: 2rem;
  font-weight: 700;
  color: #F19500;
  margin-bottom: 20px;
}
.recipe_comment p {
  font-size: 1.5rem;
  color: #555;
}
.recipe_flex {
  display: flex;
  gap: 30px;
  justify-content: space-between;
}
@media screen and (max-width: 834px) {
  .recipe_flex {
    display: block;
  }
}
.recipe_flex_item {
  width: 30%;
}
@media screen and (max-width: 834px) {
  .recipe_flex_item {
    width: 100%;
  }
}
.recipe_flex_item h3 {
  font-size: 2.5rem;
  font-weight: 700;
  color: #F19500;
}
.recipe_info {
  margin-bottom: 60px;
}
.recipe_info_flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 0;
  border-top: #DDDDDD solid 1px;
}
.recipe_info_flex:last-child {
  border-bottom: #DDDDDD solid 1px;
}
.recipe_info_flex_item p {
  font-size: 1.5rem;
}
.recipe_ico_two {
  display: block;
  position: relative;
  padding-left: 35px;
  font-size: 1.4rem;
  font-weight: 400;
  margin: 20px auto 30px;
}
.recipe_ico_two:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 25px;
  height: 16px;
  background: url(../img/recipe/recipe_ico_two.png) center/contain no-repeat;
}
.recipe_ico_one {
  display: block;
  position: relative;
  padding-left: 35px;
  font-size: 1.4rem;
  font-weight: 400;
  margin: 20px auto 30px;
}
.recipe_ico_one:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 12px;
  height: 16px;
  background: url(../img/recipe/recipe_ico_one.png) center/contain no-repeat;
}
.recipe_step {
  width: 60%;
  background-color: #FFF4DB;
  padding: 30px;
  margin-bottom: 20px;
  height: fit-content;
}
@media screen and (max-width: 834px) {
  .recipe_step {
    padding: 30px 15px;
    margin-bottom: 60px;
    width: 100%;
  }
}
.recipe_step_list {
  margin-top: 30px;
  counter-reset: step-counter;
  list-style: none;
}
.recipe_step_item {
  font-size: 1.5rem;
  position: relative;
  padding-left: 52px;
  margin-bottom: 40px;
}
@media screen and (max-width: 834px) {
  .recipe_step_item {
    padding-left: 43px;
  }
}
.recipe_step_item:last-child {
  margin-bottom: unset;
}
.recipe_step_item:before {
  counter-increment: step-counter;
  content: counter(step-counter);
  position: absolute;
  left: 0;
  top: -7px;
  width: 36px;
  height: 36px;
  background: orange;
  color: #fff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  font-size: 1.2em;
}
@media screen and (max-width: 834px) {
  .recipe_step_item:before {
    top: -4px;
    width: 30px;
    height: 30px;
  }
}
.recipe_archive_ttl {
  color: #F19500;
}

.list-info.recipe_archive {
  margin-top: 60px;
}
@media screen and (max-width: 834px) {
  .list-info.recipe_archive {
    margin-top: 30px;
  }
}
.list-info.recipe_archive .list-info__item a {
  color: #F19500;
  border: solid #F19500;
  box-shadow: #F19500 0 5px 0;
  border-width: 0 1px 1px;
}
.list-info.recipe_archive .list-info__item a:hover {
  box-shadow: #F19500 0 0 0;
}

.post-navigation {
  display: flex;
  justify-content: space-between;
  padding-top: 30px;
  border-top: #F19500 solid 1px;
}
@media screen and (max-width: 834px) {
  .post-navigation {
    display: block;
  }
}
.post-navigation.next-only {
  justify-content: flex-end;
}
.post-navigation.prev-only {
  justify-content: flex-start;
}

.nav-prev {
  border: #F19500 solid 1px;
}
@media screen and (max-width: 834px) {
  .nav-prev {
    margin-bottom: 20px;
  }
}

.nav-next {
  border: #F19500 solid 1px;
}

.post-navigation_link {
  display: flex;
  justify-content: left;
  gap: 15px;
  color: #F19500;
  align-items: center;
}
.post-navigation_link p {
  color: #F19500;
  font-size: 1.4rem;
  font-weight: 700;
  padding-right: 15px;
}
.post-navigation_link p span {
  font-size: 1.4rem;
  font-weight: 400;
  display: inline-block;
  margin-top: 10px;
}
.post-navigation_link img {
  width: 100px;
  height: 100px;
}

.product_top_img {
  margin-top: 60px;
}
@media screen and (max-width: 834px) {
  .product_top_img {
    margin-top: 30px;
  }
}
.product_top_copy {
  color: #2CA6E0;
  font-size: 2rem;
  font-weight: 700;
  margin-top: 40px;
}
@media screen and (max-width: 834px) {
  .product_top_copy {
    font-size: 1.8rem;
    line-height: 30px;
  }
}
.product_flex {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-top: 30px;
}
@media screen and (max-width: 834px) {
  .product_flex {
    grid-template-columns: repeat(2, 1fr);
  }
}
.product_flex_item {
  color: #2CA6E0;
  font-size: 1.6rem;
  font-weight: 500;
  display: block;
  border: #2CA6E0 solid 1px;
  border-radius: 10px;
  padding: 30px 20px;
  text-align: center;
}
@media screen and (max-width: 834px) {
  .product_flex_item {
    padding: 20px 10px;
  }
}
.product_flex_item img {
  width: 70px;
  height: 70px;
  object-fit: contain;
  object-position: center;
  margin: 0 auto 30px;
  display: block;
}
.product_flex_item span {
  display: block;
  text-align: left;
  font-size: 1.4rem;
  font-weight: 400;
  margin-top: 15px;
  color: #555;
}
@media screen and (max-width: 834px) {
  .product_flex_item span {
    font-size: 1.3rem;
  }
}
.product_merit {
  margin-bottom: 80px;
}
.product_merit_note {
  color: #fff;
  background-color: #2CA6E0;
  border-radius: 5px;
  font-size: 2.5rem;
  font-weight: 700;
  padding: 10px 40px;
  display: inline-block;
}
@media screen and (max-width: 834px) {
  .product_merit_note {
    font-size: 2rem;
  }
}
.product_merit_ttl {
  color: #2CA6E0;
  font-size: 3rem;
  margin: 30px auto;
  font-weight: 700;
}
@media screen and (max-width: 834px) {
  .product_merit_ttl {
    font-size: 2.5rem;
  }
}
.product_merit_copy {
  font-size: 1.8rem;
  color: #2CA6E0;
  margin: 30px auto 60px;
  font-weight: 700;
}
@media screen and (max-width: 834px) {
  .product_merit_copy {
    margin: 30px auto 50px;
  }
  .product_merit_copy.list-dot {
    margin-bottom: 50px;
  }
}
.product_merit_copy li {
  list-style: none;
}
.product_merit .c-btn__01 {
  margin: unset;
}
.product_feature {
  margin: 40px auto 50px;
  border: #2CA6E0 solid 1px;
  border-radius: 20px;
  padding: 30px;
}
.product_feature span {
  display: inline-block;
  color: #fff;
  background-color: #2CA6E0;
  border-radius: 100px;
  padding: 10px 30px;
  text-align: center;
  margin: 0 auto 20px;
  font-size: 1.6rem;
  position: relative;
  left: 50%;
  font-weight: 700;
  transform: translateX(-50%);
}
.product_feature p {
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
}
.product_contact .block-split__img img {
  object-fit: contain;
}
.product_contact .c-txt__basic {
  margin-bottom: 30px;
}
.product_contact_copy {
  font-size: 2.2rem;
  font-weight: 700;
  color: #2CA6E0;
  margin-bottom: 30px;
}
.product_contact_link {
  background-color: #2CA6E0;
  border-radius: 10px;
  color: #FFF;
  font-weight: 700;
  font-size: 1.8rem;
  padding: 20px 25px;
  display: inline-block;
  margin-bottom: 20px;
}
.product_cate {
  display: flex;
  border: #2CA6E0 solid 1px;
  border-radius: 10px;
  gap: 20px 50px;
  flex-wrap: wrap;
  padding: 30px;
}
.product_cate_item {
  display: flex;
  gap: 10px;
  align-items: center;
}
.product_cate_item img {
  width: 30px;
  height: 30px;
  object-fit: contain;
  object-position: center;
}
.product_cate_item span {
  color: #2CA6E0;
  font-weight: 400px;
  font-size: 1.6rem;
}
.product_list .list-topics__img {
  border: #ddd solid 1px;
}
.product_list .list-topics__img img {
  object-fit: contain;
  object-position: center;
}
.product_list span.lease {
  color: #2CA6E0;
  border: #2CA6E0 solid 1px;
  border-radius: 100px;
  padding: 3px 15px;
  font-size: 1.3rem;
  font-weight: 400;
  display: inline-block;
  margin-top: 10px;
}

ul.list-topics.product_list {
  margin-bottom: 0;
}

.choose_point_flex {
  display: flex;
  background-color: #FCF7EE;
  border-radius: 20px;
  gap: 20px;
  padding: 30px;
  margin-bottom: 30px;
}
@media screen and (max-width: 834px) {
  .choose_point_flex {
    display: block;
  }
}
.choose_point_img {
  max-width: 300px;
  width: 100%;
}
@media screen and (max-width: 834px) {
  .choose_point_img {
    margin-bottom: 30px;
  }
}
.choose_point_img span {
  display: inline-block;
  color: #fff;
  background-color: #F19500;
  border-radius: 100px;
  text-align: center;
  font-weight: 700;
  font-size: 2rem;
  margin-bottom: 25px;
  padding: 20px 25px;
}
@media screen and (max-width: 834px) {
  .choose_point_img span {
    display: block;
    max-width: 100%;
  }
}
.choose_point_img img {
  object-fit: contain;
  display: block;
}
.choose_point_txt {
  width: calc(100% - 300px);
}
@media screen and (max-width: 834px) {
  .choose_point_txt {
    width: 100%;
  }
}
.choose_point_txt p {
  font-size: 1.6rem;
  margin-bottom: 30px;
}
.choose_point_ico {
  display: flex;
  gap: 10px;
  justify-content: left;
  margin-bottom: 20px;
}
.choose_point_ico img {
  max-width: 90px;
}
.choose_point_link {
  background-color: #2CA6E0;
  border-radius: 10px;
  color: #FFF;
  font-weight: 700;
  font-size: 1.8rem;
  padding: 20px 25px;
  display: inline-block;
}

.product_details {
  margin-bottom: 60px;
}
.product_details_lease {
  color: #2CA6E0;
  font-size: 1.3rem;
  font-weight: 400;
  padding: 3px 15px;
  border: #2CA6E0 solid 1px;
  border-radius: 100px;
  display: inline-block;
}
.product_details_img {
  margin-top: 30px;
}
.product_details_img img {
  display: block;
  max-width: 800px;
  width: 100%;
  height: auto;
  margin: 0 auto;
}
.product_details_content {
  margin-top: 60px;
}

.new_product .list-topics__img img {
  object-fit: contain;
}

.terra_details_img {
  max-width: 300px;
  width: 100%;
  margin: 60px auto 20px;
}
@media screen and (max-width: 834px) {
  .terra_details_img {
    margin: 30px auto 20px;
  }
}
.terra_details_copy {
  font-size: 1.8rem;
  text-align: center;
  color: #2CA6E0;
  font-weight: 700;
}
@media screen and (max-width: 834px) {
  .terra_details_copy {
    font-size: 1.6rem;
    text-align: left;
  }
}
.terra_details_ttl {
  font-size: 2rem;
  text-align: center;
  font-weight: 700;
  padding: 15px;
  border-bottom: #2CA6E0 1px solid;
  margin: 60px auto 40px;
  color: #2CA6E0;
}
@media screen and (max-width: 834px) {
  .terra_details_ttl {
    font-size: 1.8rem;
    text-align: left;
  }
}
.terra_details_list {
  position: sticky;
  margin: 30px auto 30px;
  background-color: #f3fcff;
  border-radius: 20px;
}
.terra_details_list_inner {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 30px;
  padding: 30px 40px;
}
.terra_details_list_inner .special_article,
.terra_details_list_inner .message_article,
.terra_details_list_inner .information_article,
.terra_details_list_inner .terra_details_recipe,
.terra_details_list_inner .material_cost_link {
  border: none;
  margin-bottom: unset;
  padding: unset;
}
.terra_details_list_inner .special_article span,
.terra_details_list_inner .message_article span,
.terra_details_list_inner .information_article span,
.terra_details_list_inner .terra_details_recipe span,
.terra_details_list_inner .material_cost_link span {
  margin-bottom: 0;
}
.terra_details_list_inner .terra_details_recipe {
  background-color: unset;
}

.special_article {
  border: #EB5803 solid 1px;
  border-radius: 5px;
  padding: 20px;
  margin-bottom: 20px;
}
.special_article span {
  color: #EB5803;
  font-size: 1.6rem;
  font-weight: 400;
  display: inline-block;
  margin-bottom: 30px;
}

.information_article {
  border: #F85953 solid 1px;
  border-radius: 5px;
  padding: 20px;
  margin-bottom: 20px;
}
.information_article span {
  color: #F85953;
  font-size: 1.6rem;
  font-weight: 400;
  display: inline-block;
  margin-bottom: 30px;
}

.message_article {
  border: #53C6B5 solid 1px;
  border-radius: 5px;
  padding: 20px;
  margin-bottom: 20px;
}
.message_article span {
  color: #53C6B5;
  font-size: 1.6rem;
  font-weight: 400;
  display: inline-block;
  margin-bottom: 30px;
}

.terra_details_recipe {
  background-color: #FFF3E2;
  padding: 20px;
  margin-bottom: 20px;
  border-radius: 5px;
}
.terra_details_recipe span {
  color: #F19500;
  font-size: 1.6rem;
  font-weight: 400;
  display: inline-block;
  margin-bottom: 30px;
}
.terra_details_recipe_txt {
  margin-bottom: 30px;
}
.terra_details_recipe .details_flex {
  margin-top: 0;
}

.material_cost_link a {
  background-color: #EAF8FF;
  border-radius: 5px;
  font-size: 1.8rem;
  font-weight: 700;
  padding: 20px;
}
.material_cost_link span {
  color: #2CA6E0;
  font-size: 1.6rem;
  font-weight: 400;
  display: inline-block;
}

.terra_archive_list {
  margin-bottom: 60px;
}
.terra_archive_list a {
  color: #2CA6E0;
  font-size: 1.6rem;
}
@media screen and (max-width: 834px) {
  .terra_archive_list a {
    font-size: 1.5rem;
    margin-bottom: 20px;
    display: inline-block;
  }
}
.terra_archive_list_ttl {
  font-size: 2rem;
  color: #2CA6E0;
  font-weight: 700;
  padding-bottom: 10px;
  margin: 60px auto 30px;
  border-bottom: #2CA6E0 solid 1px;
}
@media screen and (max-width: 834px) {
  .terra_archive_list_ttl {
    margin: 30px auto 30px;
  }
}/*# sourceMappingURL=styles.css.map */