@charset "UTF-8";
/*--- 共通 ---*/
body {
  background-color: #ffbe00;
}
body .wrap01 {
  max-width: 1000px;
  width: 96%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1480px) {
  body .wrap01 {
    max-width: none;
    width: 67.6vw;
  }
}
@media screen and (max-width: 768px) {
  body .wrap01 {
    width: 88%;
  }
}
body .wrap_sp {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.bg_slash {
  background-image: url(../images/bg_slash.png);
  background-size: 116px auto;
  background-position: center center;
}
@media screen and (max-width: 1480px) {
  .bg_slash {
    background-size: 7.8vw auto;
  }
}
@media screen and (max-width: 768px) {
  .bg_slash {
    background-size: 10.5vw auto;
  }
}

.bg_yellow_dot {
  background-image: url(../images/bg_yellow_dot.png);
  background-size: 37px auto;
  background-position: center center;
}
@media screen and (max-width: 1480px) {
  .bg_yellow_dot {
    background-size: 2.5vw auto;
  }
}
@media screen and (max-width: 768px) {
  .bg_yellow_dot {
    background-size: 4.5vw auto;
  }
}

.bg_red_dot {
  background-image: url(../images/bg_red_dot.png);
  background-size: 37px auto;
  background-position: center center;
  margin-top: -1px;
}
@media screen and (max-width: 1480px) {
  .bg_red_dot {
    background-size: 2.5vw auto;
  }
}
@media screen and (max-width: 768px) {
  .bg_red_dot {
    background-size: 4.5vw auto;
  }
}

.bg_yellow_wave_down {
  background-image: url(../images/yellow_wave_down_pc.png);
  background-repeat: repeat-x;
  background-size: 2960px auto;
  background-position: center bottom;
}
@media screen and (max-width: 1480px) {
  .bg_yellow_wave_down {
    background-size: 200vw auto;
  }
}
@media screen and (max-width: 768px) {
  .bg_yellow_wave_down {
    background-image: url(../images/yellow_wave_down_sp.png);
    background-size: 100% auto;
  }
}

.bg_yellow_wave_up {
  background-image: url(../images/yellow_wave_up_pc.png);
  background-repeat: repeat-x;
  background-size: 2960px auto;
  background-position: center top;
}
@media screen and (max-width: 1480px) {
  .bg_yellow_wave_up {
    background-size: 200vw auto;
  }
}
@media screen and (max-width: 768px) {
  .bg_yellow_wave_up {
    background-image: url(../images/yellow_wave_up_sp.png);
    background-size: 100% auto;
  }
}

.bg_red_wave_down {
  background-image: url(../images/red_wave_down_pc.png);
  background-repeat: repeat-x;
  background-size: 2960px auto;
  background-position: center bottom;
}
@media screen and (max-width: 1480px) {
  .bg_red_wave_down {
    background-size: 200vw auto;
  }
}
@media screen and (max-width: 768px) {
  .bg_red_wave_down {
    background-image: url(../images/red_wave_down_sp.png);
    background-size: 100% auto;
  }
}

.bg_red_wave_up {
  background-image: url(../images/red_wave_up_pc.png);
  background-repeat: repeat-x;
  background-size: 2960px auto;
  background-position: center top;
}
@media screen and (max-width: 1480px) {
  .bg_red_wave_up {
    background-size: 200vw auto;
  }
}
@media screen and (max-width: 768px) {
  .bg_red_wave_up {
    background-image: url(../images/red_wave_up_sp.png);
    background-size: 100% auto;
  }
}

.bg_big01 {
  background-image: url(../images/bigbg01_pc.png);
  background-repeat: repeat-y;
  background-size: 2180px auto;
  background-position: center top;
}
@media screen and (max-width: 1480px) {
  .bg_big01 {
    background-size: 147.3vw auto;
  }
}
@media screen and (max-width: 768px) {
  .bg_big01 {
    background-image: url(../images/bigbg01_sp.png);
    background-size: 100% auto;
  }
}

.bg_big02 {
  background-image: url(../images/bigbg02_pc.png);
  background-repeat: no-repeat;
  background-size: 2180px auto;
  background-position: center bottom;
}
@media screen and (max-width: 1480px) {
  .bg_big02 {
    background-size: 147.3vw auto;
  }
}
@media screen and (max-width: 768px) {
  .bg_big02 {
    background-image: url(../images/bigbg02_sp.png);
    background-size: 100% auto;
  }
}

.bg_big03 {
  background-image: url(../images/bigbg03_pc.png);
  background-repeat: no-repeat;
  background-size: 2180px auto;
  background-position: center top;
}
@media screen and (max-width: 1480px) {
  .bg_big03 {
    background-size: 147.3vw auto;
  }
}
@media screen and (max-width: 768px) {
  .bg_big03 {
    background-image: url(../images/bigbg03_sp.png);
    background-size: 100% auto;
  }
}

.anker {
  display: block;
  width: 100%;
  height: 0;
}

/*--- ヘッダー ---*/
header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 98;
  padding-top: 30px;
  padding-right: 40px;
}
@media screen and (max-width: 1480px) {
  header {
    padding-top: 2vw;
    padding-right: 2.7vw;
  }
}
@media screen and (max-width: 768px) {
  header {
    padding-top: 3.7vw;
    padding-right: 4.7vw;
  }
}
header .navToggle {
  display: block;
  width: 60px;
  height: 26px;
  margin-left: auto;
  margin-right: 0;
  cursor: pointer;
  z-index: 10;
  text-align: center;
  position: relative;
  z-index: 100;
}
@media screen and (max-width: 1480px) {
  header .navToggle {
    width: 4.1vw;
    height: 1.8vw;
  }
}
@media screen and (max-width: 768px) {
  header .navToggle {
    width: 8vw;
    height: 3.6vw;
  }
}
header .navToggle span {
  display: block;
  position: absolute;
  /* .navToggleに対して */
  width: 60px;
  border-bottom: solid 2px #76251c;
  right: 0;
  transition: 0.25s ease-in-out;
}
@media screen and (max-width: 1480px) {
  header .navToggle span {
    width: 4.1vw;
  }
}
@media screen and (max-width: 768px) {
  header .navToggle span {
    width: 8vw;
    border-width: 2px;
  }
}
header .navToggle span:nth-child(1) {
  top: 0;
}
header .navToggle span:nth-child(2) {
  top: 13px;
}
@media screen and (max-width: 1480px) {
  header .navToggle span:nth-child(2) {
    top: 0.9vw;
  }
}
@media screen and (max-width: 768px) {
  header .navToggle span:nth-child(2) {
    top: 1.8vw;
  }
}
header .navToggle span:nth-child(3) {
  top: 26px;
}
@media screen and (max-width: 1480px) {
  header .navToggle span:nth-child(3) {
    top: 1.8vw;
  }
}
@media screen and (max-width: 768px) {
  header .navToggle span:nth-child(3) {
    top: 3.6vw;
  }
}
header .navToggle.active span {
  top: 13px;
}
@media screen and (max-width: 1480px) {
  header .navToggle.active span {
    top: 0.9vw;
  }
}
@media screen and (max-width: 768px) {
  header .navToggle.active span {
    top: 1.8vw;
  }
}
header .navToggle.active span {
  /* 最初のspanをマイナス45度に */
}
header .navToggle.active span:nth-child(1) {
  transform: rotate(-45deg);
}
header .navToggle.active span {
  /* 2番目と3番目のspanを45度に */
}
header .navToggle.active span:nth-child(2), header .navToggle.active span:nth-child(3) {
  transform: rotate(45deg);
}
header #sp_menu {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9;
  display: none;
  background-color: rgba(118, 37, 28, 0.9);
  width: 100%;
  height: 100vh;
}
header #sp_menu .menu_content {
  width: 1040px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 70px;
  padding-bottom: 50px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 1480px) {
  header #sp_menu .menu_content {
    width: 70.3vw;
    padding-top: 4.7vw;
    padding-bottom: 3.4vw;
  }
}
@media screen and (max-width: 768px) {
  header #sp_menu .menu_content {
    display: block;
    width: 100%;
    padding-top: 12.7vw;
    padding-bottom: 4.7vw;
  }
}
header #sp_menu .menu_content .left_block {
  order: 1;
  width: 494px;
  padding-top: 60px;
}
@media screen and (max-width: 1480px) {
  header #sp_menu .menu_content .left_block {
    width: 33.4vw;
    padding-top: 4.1vw;
  }
}
@media screen and (max-width: 768px) {
  header #sp_menu .menu_content .left_block {
    width: 75.6vw;
    margin-left: auto;
    margin-right: auto;
    padding-top: 7.5vw;
  }
}
header #sp_menu .menu_content .right_block {
  order: 2;
  width: 505px;
}
@media screen and (max-width: 1480px) {
  header #sp_menu .menu_content .right_block {
    width: 34.1vw;
  }
}
@media screen and (max-width: 768px) {
  header #sp_menu .menu_content .right_block {
    width: 100%;
  }
}
header #sp_menu .menu_content .right_block .m_title {
  width: 182px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1480px) {
  header #sp_menu .menu_content .right_block .m_title {
    width: 12.3vw;
  }
}
@media screen and (max-width: 768px) {
  header #sp_menu .menu_content .right_block .m_title {
    width: 29.9vw;
  }
}
header #sp_menu .menu_content .right_block .menu_list {
  width: 100%;
  margin-top: 20px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 1480px) {
  header #sp_menu .menu_content .right_block .menu_list {
    margin-top: 1.4vw;
  }
}
@media screen and (max-width: 768px) {
  header #sp_menu .menu_content .right_block .menu_list {
    width: 89.9vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 3.6vw;
    display: block;
  }
}
header #sp_menu .menu_content .right_block .menu_list li {
  width: 47.1%;
}
@media screen and (max-width: 768px) {
  header #sp_menu .menu_content .right_block .menu_list li {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  header #sp_menu .menu_content .right_block .menu_list li:nth-child(n+2) {
    margin-top: 4vw;
  }
}
header #sp_menu .menu_content .right_block .menu_list li:nth-child(n+3) {
  margin-top: 25px;
}
@media screen and (max-width: 1480px) {
  header #sp_menu .menu_content .right_block .menu_list li:nth-child(n+3) {
    margin-top: 1.7vw;
  }
}
@media screen and (max-width: 768px) {
  header #sp_menu .menu_content .right_block .menu_list li:nth-child(n+3) {
    margin-top: 4vw;
  }
}

#mv {
  position: relative;
  background-color: #fff;
}
#mv h1 {
  width: 619px;
  position: absolute;
  bottom: -126px;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 1480px) {
  #mv h1 {
    width: 41.8vw;
    bottom: -8.5vw;
  }
}
@media screen and (max-width: 768px) {
  #mv h1 {
    width: 76.4vw;
    bottom: -27.7vw;
  }
}

#about {
  background-image: url(../images/about_bg_pc.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center bottom;
}
@media screen and (max-width: 768px) {
  #about {
    background-image: url(../images/about_bg_sp.png);
  }
}
#about .wrap01 {
  max-width: 880px;
  padding-top: 160px;
  padding-bottom: 80px;
  position: relative;
}
@media screen and (max-width: 1480px) {
  #about .wrap01 {
    max-width: none;
    width: 59.5vw;
    padding-top: 10.8vw;
    padding-bottom: 5.4vw;
  }
}
@media screen and (max-width: 768px) {
  #about .wrap01 {
    overflow: hidden;
    width: 100%;
    padding-top: 33.5vw;
    padding-bottom: 24.9vw;
  }
}
#about .logo {
  width: 817px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1480px) {
  #about .logo {
    width: 55.2vw;
  }
}
@media screen and (max-width: 768px) {
  #about .logo {
    width: 88vw;
  }
}
#about h2 {
  font-size: 40px;
  line-height: 1.3em;
  font-weight: bold;
  color: #ff6400;
  text-align: center;
  margin-top: 0.4em;
  position: relative;
  left: 0.3em;
}
@media screen and (max-width: 1480px) {
  #about h2 {
    font-size: 2.7vw;
  }
}
@media screen and (max-width: 768px) {
  #about h2 {
    position: relative;
    margin-top: 0.6em;
    font-size: 5.1vw;
  }
}
#about .txt03 {
  font-size: 14px;
  font-weight: bold;
  line-height: 2.3em;
  color: #76251c;
  text-align: center;
  margin-top: 0.5em;
}
@media screen and (max-width: 1480px) {
  #about .txt03 {
    font-size: 0.9vw;
  }
}
@media screen and (max-width: 768px) {
  #about .txt03 {
    font-size: 2.7vw;
  }
}
#about .txt01 {
  font-size: 20px;
  font-weight: bold;
  line-height: 2.3em;
  color: #76251c;
  text-align: center;
  margin-top: 1em;
}
@media screen and (max-width: 1480px) {
  #about .txt01 {
    font-size: 1.4vw;
  }
}
@media screen and (max-width: 768px) {
  #about .txt01 {
    font-size: 4vw;
    margin-top: 2em;
  }
}
#about .chara01 {
  position: absolute;
  width: 285px;
  top: 170px;
  left: -262px;
}
@media screen and (max-width: 1480px) {
  #about .chara01 {
    width: 19.3vw;
    top: 11.5vw;
    left: -17.7vw;
  }
}
@media screen and (max-width: 768px) {
  #about .chara01 {
    display: none;
  }
}
#about .chara02 {
  position: absolute;
  width: 273px;
  top: 171px;
  right: -266px;
}
@media screen and (max-width: 1480px) {
  #about .chara02 {
    width: 18.4vw;
    top: 11.6vw;
    right: -18vw;
  }
}
@media screen and (max-width: 768px) {
  #about .chara02 {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  #area {
    margin-top: -13.3vw;
  }
}
#area .wrap01 {
  padding-top: 50px;
  padding-bottom: 55px;
}
@media screen and (max-width: 1480px) {
  #area .wrap01 {
    padding-top: 3.4vw;
    padding-bottom: 3.7vw;
  }
}
@media screen and (max-width: 768px) {
  #area .wrap01 {
    padding-top: 0;
    padding-bottom: 6.4vw;
  }
}
#area .cahara01 {
  display: none;
}
@media screen and (max-width: 768px) {
  #area .cahara01 {
    display: block;
    width: 88vw;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: -10.7vw;
  }
}
#area h2 {
  width: 880px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1480px) {
  #area h2 {
    width: 59.5vw;
  }
}
@media screen and (max-width: 768px) {
  #area h2 {
    width: 80vw;
  }
}
#area .txt01 {
  width: 874px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 18px;
}
@media screen and (max-width: 1480px) {
  #area .txt01 {
    width: 59.1vw;
    margin-top: 1.2vw;
  }
}
@media screen and (max-width: 768px) {
  #area .txt01 {
    width: 75.1vw;
    margin-top: 2.4vw;
  }
}

#link_area {
  width: 100%;
  position: relative;
  z-index: 3;
}
#link_area .link_list {
  width: 100%;
  position: absolute;
  top: -17px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 1480px) {
  #link_area .link_list {
    top: -1.1vw;
  }
}
@media screen and (max-width: 768px) {
  #link_area .link_list {
    width: 89.1vw;
    margin-left: auto;
    margin-right: auto;
    justify-content: space-between;
    top: 0;
  }
}
#link_area .link_list li {
  width: 237px;
}
@media screen and (max-width: 1480px) {
  #link_area .link_list li {
    width: 16vw;
  }
}
@media screen and (max-width: 768px) {
  #link_area .link_list li {
    width: 42.5vw;
  }
}
#link_area .link_list li + li {
  margin-left: 20px;
}
@media screen and (max-width: 1480px) {
  #link_area .link_list li + li {
    margin-left: 1.4vw;
  }
}
@media screen and (max-width: 768px) {
  #link_area .link_list li + li {
    margin-left: 0;
  }
}
@media screen and (max-width: 768px) {
  #link_area .link_list li:nth-child(n+3) {
    margin-top: 4.1vw;
  }
}
#link_area .link_list li a .off_pc {
  display: block;
}
@media screen and (max-width: 768px) {
  #link_area .link_list li a .off_pc {
    display: none;
  }
}
#link_area .link_list li a .off_sp {
  display: none;
}
@media screen and (max-width: 768px) {
  #link_area .link_list li a .off_sp {
    display: block;
  }
}
#link_area .link_list li a .on_pc {
  display: none;
}
#link_area .link_list li a .on_sp {
  display: none;
}
#link_area .link_list li a:hover .off_pc {
  display: none;
}
#link_area .link_list li a:hover .off_sp {
  display: none;
}
#link_area .link_list li a:hover .on_pc {
  display: block;
}
@media screen and (max-width: 768px) {
  #link_area .link_list li a:hover .on_pc {
    display: none;
  }
}
#link_area .link_list li a:hover .on_sp {
  display: none;
}
@media screen and (max-width: 768px) {
  #link_area .link_list li a:hover .on_sp {
    display: block;
  }
}

#campaign1_page {
  position: relative;
  top: 222px;
}
@media screen and (max-width: 1480px) {
  #campaign1_page {
    top: 15vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign1_page {
    top: 95.1vw;
  }
}

#campaign1 {
  position: relative;
}
#campaign1 .big_txt {
  width: 1409px;
  position: absolute;
  top: 222px;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 1480px) {
  #campaign1 .big_txt {
    width: 95.1vw;
    top: 15vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign1 .big_txt {
    width: 68vw;
    top: 95.1vw;
  }
}
#campaign1 .wrap_sp {
  position: relative;
  z-index: 2;
  padding-top: 336px;
  padding-bottom: 0px;
}
@media screen and (max-width: 1480px) {
  #campaign1 .wrap_sp {
    padding-top: 22.7vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign1 .wrap_sp {
    padding-top: 118vw;
  }
}
#campaign1 h2 {
  width: 880px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0;
}
@media screen and (max-width: 1480px) {
  #campaign1 h2 {
    width: 59.5vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign1 h2 {
    width: 88vw;
  }
}
#campaign1 .txt01 {
  width: 1010px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 40px;
}
@media screen and (max-width: 1480px) {
  #campaign1 .txt01 {
    width: 68.2vw;
    margin-top: 2.7vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign1 .txt01 {
    width: 89.6vw;
    margin-top: 5.3vw;
  }
}
#campaign1 .txt02 {
  width: 520px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 50px;
}
@media screen and (max-width: 1480px) {
  #campaign1 .txt02 {
    width: 35.1vw;
    margin-top: 3.4vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign1 .txt02 {
    width: 72vw;
    margin-top: 8.3vw;
  }
}
#campaign1 .txt03 {
  width: 950px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 25px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.3em;
  color: #76251c;
  text-indent: -1em;
  padding-left: 1em;
}
@media screen and (max-width: 1480px) {
  #campaign1 .txt03 {
    width: 64.2vw;
    margin-top: 1.7vw;
    font-size: 1.4vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign1 .txt03 {
    width: 88vw;
    margin-top: 3.5vw;
    font-size: 2.7vw;
    text-indent: 0;
    padding-left: 0;
  }
}
#campaign1 .campaign1_card01 {
  max-width: 1000px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 8px 8px 0px 0px rgb(255, 100, 0);
}
@media screen and (max-width: 1480px) {
  #campaign1 .campaign1_card01 {
    max-width: none;
    width: 67.6vw;
    border-radius: 1.4vw;
    box-shadow: 0.5vw 0.5vw 0px 0px rgb(255, 100, 0);
  }
}
@media screen and (max-width: 768px) {
  #campaign1 .campaign1_card01 {
    max-width: none;
    width: 88vw;
    border-radius: 4vw;
    box-shadow: 1.1vw 1.2vw 0px 0px rgb(255, 100, 0);
  }
}
#campaign1 .campaign1_card01 .title_box {
  background-color: #76251c;
  width: 100%;
  height: 80px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  cursor: pointer;
}
@media screen and (max-width: 1480px) {
  #campaign1 .campaign1_card01 .title_box {
    height: 5.4vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign1 .campaign1_card01 .title_box {
    height: 16.4vw;
  }
}
#campaign1 .campaign1_card01 .title_box h3 {
  font-size: 28px;
  font-weight: bold;
  line-height: 1em;
  color: #ffd200;
  text-align: center;
}
@media screen and (max-width: 1480px) {
  #campaign1 .campaign1_card01 .title_box h3 {
    font-size: 1.9vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign1 .campaign1_card01 .title_box h3 {
    font-size: 5.1vw;
  }
}
#campaign1 .campaign1_card01 .title_box .icon {
  position: absolute;
  width: 42px;
  right: 22px;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 0.3s ease;
}
@media screen and (max-width: 1480px) {
  #campaign1 .campaign1_card01 .title_box .icon {
    width: 2.8vw;
    right: 1.5vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign1 .campaign1_card01 .title_box .icon {
    width: 6.7vw;
    right: 4.3vw;
  }
}
#campaign1 .campaign1_card01 .title_box.close .icon {
  transform: translateY(-50%) rotate(180deg);
}
#campaign1 .campaign1_card01#drink_card {
  background-color: #fdebd1;
  margin-top: 15px;
}
@media screen and (max-width: 1480px) {
  #campaign1 .campaign1_card01#drink_card {
    margin-top: 1vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign1 .campaign1_card01#drink_card {
    margin-top: 3.6vw;
  }
}
#campaign1 .campaign1_card01#sarada_card {
  background-color: #f3f5c9;
  margin-top: 55px;
}
@media screen and (max-width: 1480px) {
  #campaign1 .campaign1_card01#sarada_card {
    margin-top: 3.7vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign1 .campaign1_card01#sarada_card {
    margin-top: 6vw;
  }
}
#campaign1 .plus {
  width: 90px;
  margin: 45px auto 65px;
}
@media screen and (max-width: 1480px) {
  #campaign1 .plus {
    width: 6.1vw;
    margin: 3vw auto 4.4vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign1 .plus {
    width: 14.7vw;
    margin: 5.1vw auto 13.9vw;
  }
}
#campaign1 .campaign1_card02 {
  max-width: 1000px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  border-radius: 20px;
  background-color: #fff;
  box-shadow: 8px 8px 0px 0px rgb(255, 100, 0);
  position: relative;
}
@media screen and (max-width: 1480px) {
  #campaign1 .campaign1_card02 {
    max-width: none;
    width: 67.6vw;
    border-radius: 1.4vw;
    box-shadow: 0.5vw 0.5vw 0px 0px rgb(255, 100, 0);
  }
}
@media screen and (max-width: 768px) {
  #campaign1 .campaign1_card02 {
    max-width: none;
    width: 88vw;
    border-radius: 4vw;
    box-shadow: 1.1vw 1.2vw 0px 0px rgb(255, 100, 0);
  }
}
#campaign1 .campaign1_card02 h3 {
  width: 800px;
  position: absolute;
  top: -35px;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 1480px) {
  #campaign1 .campaign1_card02 h3 {
    width: 54.1vw;
    top: -2.4vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign1 .campaign1_card02 h3 {
    width: 80vw;
    top: -9.2vw;
  }
}
#campaign1 .campaign1_card02#sticker01_card {
  margin-top: 0;
}
#campaign1 .campaign1_card02#sticker02_card {
  margin-top: 82px;
}
@media screen and (max-width: 1480px) {
  #campaign1 .campaign1_card02#sticker02_card {
    margin-top: 5.5vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign1 .campaign1_card02#sticker02_card {
    margin-top: 17.1vw;
  }
}
#campaign1 .txt04 {
  width: 1000px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 25px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.3em;
  color: #76251c;
}
@media screen and (max-width: 1480px) {
  #campaign1 .txt04 {
    width: 67.6vw;
    margin-top: 1.7vw;
    font-size: 0.9vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign1 .txt04 {
    width: 88vw;
    margin-top: 4vw;
    font-size: 2.7vw;
  }
}
#campaign1 .mobile {
  width: 100%;
  margin-top: 40px;
  position: relative;
}
@media screen and (max-width: 1480px) {
  #campaign1 .mobile {
    margin-top: 2.7vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign1 .mobile {
    margin-top: 4vw;
    padding-bottom: 22.9vw;
  }
}
#campaign1 .mobile .m_img01 {
  max-width: 1030px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1480px) {
  #campaign1 .mobile .m_img01 {
    max-width: none;
    width: 69.6vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign1 .mobile .m_img01 {
    max-width: none;
    width: 93.3vw;
  }
}
#campaign1 .mobile .btn {
  display: none;
}
@media screen and (max-width: 768px) {
  #campaign1 .mobile .btn {
    display: block;
    width: 62.7vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: -7.7vw;
  }
}
#campaign1 .mobile .wave {
  position: absolute;
  z-index: 1;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 91px;
  background-image: url(../images/yellow_wave_down_pc.png);
  background-repeat: repeat-x;
  background-size: 2960px auto;
  background-position: center bottom;
}
@media screen and (max-width: 1480px) {
  #campaign1 .mobile .wave {
    background-size: 200vw auto;
  }
}
@media screen and (max-width: 768px) {
  #campaign1 .mobile .wave {
    background-image: url(../images/yellow_wave_down_sp.png);
    background-size: 100% auto;
  }
}

#campaign2 {
  position: relative;
}
#campaign2 .cara01 {
  width: 319px;
  position: absolute;
  right: 0;
  top: 375px;
  z-index: 3;
}
@media screen and (max-width: 1480px) {
  #campaign2 .cara01 {
    width: 21.6vw;
    top: 25.3vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign2 .cara01 {
    width: 35.9vw;
    top: -24vw;
    z-index: 2;
  }
}
#campaign2 .big_txt {
  width: 1304px;
  position: absolute;
  top: 50px;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 1480px) {
  #campaign2 .big_txt {
    top: 3.4vw;
    width: 88.1vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign2 .big_txt {
    top: 3.3vw;
    width: 68vw;
  }
}
#campaign2 .wrap_sp {
  position: relative;
  z-index: 2;
  padding-top: 156px;
  padding-bottom: 35px;
}
@media screen and (max-width: 1480px) {
  #campaign2 .wrap_sp {
    padding-top: 10.5vw;
    padding-bottom: 2.4vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign2 .wrap_sp {
    padding-top: 26.1vw;
    padding-bottom: 10.9vw;
  }
}
#campaign2 h2 {
  width: 880px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0;
}
@media screen and (max-width: 1480px) {
  #campaign2 h2 {
    width: 59.5vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign2 h2 {
    width: 88vw;
  }
}
#campaign2 .txt01 {
  width: 1010px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 25px;
}
@media screen and (max-width: 1480px) {
  #campaign2 .txt01 {
    width: 68.2vw;
    margin-top: 1.7vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign2 .txt01 {
    width: 89.3vw;
    margin-top: 7.1vw;
  }
}
#campaign2 .btn01 {
  width: 470px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 46px;
}
@media screen and (max-width: 1480px) {
  #campaign2 .btn01 {
    width: 31.8vw;
    margin-top: 3.1vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign2 .btn01 {
    position: relative;
    width: 64vw;
    margin-top: 6.7vw;
  }
}
#campaign2 .btn01 a .off_pc {
  display: block;
}
@media screen and (max-width: 768px) {
  #campaign2 .btn01 a .off_pc {
    display: none;
  }
}
#campaign2 .btn01 a .off_sp {
  display: none;
}
@media screen and (max-width: 768px) {
  #campaign2 .btn01 a .off_sp {
    display: block;
  }
}
#campaign2 .btn01 a .on_pc {
  display: none;
}
#campaign2 .btn01 a .on_sp {
  display: none;
}
#campaign2 .btn01 a:hover .off_pc {
  display: none;
}
#campaign2 .btn01 a:hover .off_sp {
  display: none;
}
#campaign2 .btn01 a:hover .on_pc {
  display: block;
}
@media screen and (max-width: 768px) {
  #campaign2 .btn01 a:hover .on_pc {
    display: none;
  }
}
#campaign2 .btn01 a:hover .on_sp {
  display: none;
}
@media screen and (max-width: 768px) {
  #campaign2 .btn01 a:hover .on_sp {
    display: block;
  }
}
#campaign2 .btn01 .onpu04 {
  display: none;
}
@media screen and (max-width: 768px) {
  #campaign2 .btn01 .onpu04 {
    display: block;
    width: 11.7vw;
    position: absolute;
    top: -28.1vw;
    left: -14.7vw;
    z-index: 2;
  }
}
#campaign2 .btn01 .onpu05 {
  display: none;
}
@media screen and (max-width: 768px) {
  #campaign2 .btn01 .onpu05 {
    display: block;
    width: 13.1vw;
    position: absolute;
    top: -12.4vw;
    right: -14.1vw;
    z-index: 2;
  }
}
#campaign2 .img_box01 {
  width: 936px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 70px;
  position: relative;
}
@media screen and (max-width: 1480px) {
  #campaign2 .img_box01 {
    width: 63.2vw;
    margin-top: 4.7vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign2 .img_box01 {
    width: 88vw;
    margin-top: 11.6vw;
  }
}
#campaign2 .img_box01 .onpu01 {
  position: absolute;
  top: -194px;
  left: -206px;
  width: 136px;
  z-index: 1;
}
@media screen and (max-width: 1480px) {
  #campaign2 .img_box01 .onpu01 {
    top: -13.1vw;
    left: -13.9vw;
    width: 9.2vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign2 .img_box01 .onpu01 {
    display: none;
  }
}
#campaign2 .txt_box01 {
  width: 1006px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 40px;
  position: relative;
}
@media screen and (max-width: 1480px) {
  #campaign2 .txt_box01 {
    width: 68vw;
    margin-top: 2.7vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign2 .txt_box01 {
    width: 90.7vw;
    margin-top: 12.7vw;
  }
}
#campaign2 .txt_box01 .onpu02 {
  position: absolute;
  top: 26px;
  left: -145px;
  width: 83px;
  z-index: 1;
}
@media screen and (max-width: 1480px) {
  #campaign2 .txt_box01 .onpu02 {
    top: 1.8vw;
    left: -9.8vw;
    width: 5.6vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign2 .txt_box01 .onpu02 {
    display: none;
  }
}
#campaign2 .txt_box01 .onpu03 {
  position: absolute;
  top: -174px;
  right: -200px;
  width: 189px;
  z-index: 1;
}
@media screen and (max-width: 1480px) {
  #campaign2 .txt_box01 .onpu03 {
    top: -11.8vw;
    right: -13.5vw;
    width: 12.8vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign2 .txt_box01 .onpu03 {
    display: none;
  }
}
#campaign2 .movie_box {
  width: 100%;
  margin-top: 40px;
  background-image: url(../images/campaign2_bg.svg);
  background-repeat: repeat-x;
  background-size: 1745px auto;
  background-position: left top 203px;
  animation: bg-scroll 30s linear infinite;
}
@media screen and (max-width: 1480px) {
  #campaign2 .movie_box {
    margin-top: 2.7vw;
    background-size: 117.9vw auto;
    background-position: left top 13.7vw;
    animation: bg-scroll_tab 30s linear infinite;
  }
}
@media screen and (max-width: 768px) {
  #campaign2 .movie_box {
    margin-top: 0vw;
    padding-top: 25.1vw;
    background-size: 232.7vw auto;
    background-position: left top 8.9vw;
    animation: bg-scroll_sp 30s linear infinite;
  }
}
#campaign2 .movie_box .movie_img {
  width: 1130px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1480px) {
  #campaign2 .movie_box .movie_img {
    width: 76.4vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign2 .movie_box .movie_img {
    width: 95.5vw;
  }
}

@keyframes bg-scroll {
  from {
    background-position: 0 203px;
  }
  to {
    background-position: -1745px 203px;
  }
}
@keyframes bg-scroll_tab {
  from {
    background-position: 0 13.7vw;
  }
  to {
    background-position: -117.9vw 13.7vw;
  }
}
@keyframes bg-scroll_sp {
  from {
    background-position: 0 8.9vw;
  }
  to {
    background-position: -232.7vw 8.9vw;
  }
}
.spacer {
  position: relative;
  margin-bottom: -187px;
}
@media screen and (max-width: 1480px) {
  .spacer {
    margin-bottom: -12.6vw;
  }
}
@media screen and (max-width: 768px) {
  .spacer {
    margin-bottom: -13.9vw;
  }
}
.spacer .s_img01 {
  width: 100%;
}
.spacer .wave {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 91px;
  background-image: url(../images/yellow_wave_up_pc.png);
  background-repeat: repeat-x;
  background-size: 2960px auto;
  background-position: center top;
}
@media screen and (max-width: 1480px) {
  .spacer .wave {
    background-size: 200vw auto;
  }
}
@media screen and (max-width: 768px) {
  .spacer .wave {
    background-image: url(../images/yellow_wave_up_sp.png);
    background-size: 100% auto;
  }
}

#campaign3 {
  position: relative;
}
#campaign3 .big_txt {
  width: 1045px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 1480px) {
  #campaign3 .big_txt {
    width: 70.6vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign3 .big_txt {
    width: 95.1vw;
  }
}
#campaign3 .wrap_sp {
  position: relative;
  z-index: 2;
  padding-top: 93px;
  padding-bottom: 133px;
}
@media screen and (max-width: 1480px) {
  #campaign3 .wrap_sp {
    padding-top: 6.3vw;
    padding-bottom: 9vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign3 .wrap_sp {
    padding-top: 10.1vw;
    padding-bottom: 24.1vw;
  }
}
#campaign3 h2 {
  width: 880px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0;
}
@media screen and (max-width: 1480px) {
  #campaign3 h2 {
    width: 59.5vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign3 h2 {
    width: 88vw;
  }
}
#campaign3 .txt01 {
  width: 980px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 50px;
}
@media screen and (max-width: 1480px) {
  #campaign3 .txt01 {
    width: 66.2vw;
    margin-top: 3.4vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign3 .txt01 {
    width: 89.6vw;
    margin-top: 7.1vw;
  }
}
#campaign3 .txt02 {
  width: 696px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 36px;
}
@media screen and (max-width: 1480px) {
  #campaign3 .txt02 {
    width: 47vw;
    margin-top: 2.4vw;
  }
}
@media screen and (max-width: 768px) {
  #campaign3 .txt02 {
    width: 70.8vw;
    margin-top: 6.7vw;
  }
}

#xcampaign {
  position: relative;
}
#xcampaign .big_txt {
  width: 1192px;
  position: absolute;
  top: 50px;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 1480px) {
  #xcampaign .big_txt {
    width: 80.5vw;
    top: 3.4vw;
  }
}
@media screen and (max-width: 768px) {
  #xcampaign .big_txt {
    width: 51.6vw;
    top: 2.5vw;
  }
}
#xcampaign .wrap_sp {
  position: relative;
  z-index: 2;
  padding-top: 150px;
  padding-bottom: 55px;
}
@media screen and (max-width: 1480px) {
  #xcampaign .wrap_sp {
    padding-top: 10.1vw;
    padding-bottom: 3.7vw;
  }
}
@media screen and (max-width: 768px) {
  #xcampaign .wrap_sp {
    padding-top: 25.3vw;
    padding-bottom: 11.3vw;
  }
}
#xcampaign h2 {
  width: 880px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0;
}
@media screen and (max-width: 1480px) {
  #xcampaign h2 {
    width: 59.5vw;
  }
}
@media screen and (max-width: 768px) {
  #xcampaign h2 {
    width: 88vw;
  }
}
#xcampaign .txt01 {
  width: 710px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 40px;
}
@media screen and (max-width: 1480px) {
  #xcampaign .txt01 {
    width: 48vw;
    margin-top: 2.7vw;
  }
}
@media screen and (max-width: 768px) {
  #xcampaign .txt01 {
    width: 89.6vw;
    margin-top: 6.9vw;
  }
}
#xcampaign .flow_box {
  width: 938px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 55px;
}
@media screen and (max-width: 1480px) {
  #xcampaign .flow_box {
    width: 63.3vw;
    margin-top: 3.8vw;
  }
}
@media screen and (max-width: 768px) {
  #xcampaign .flow_box {
    width: 100%;
    margin-top: 5.3vw;
  }
}
#xcampaign .flow_box .flow02 {
  position: relative;
}
@media screen and (max-width: 768px) {
  #xcampaign .flow_box .flow02 {
    margin-top: 3.6vw;
  }
}
#xcampaign .flow_box .flow02 .xlink {
  position: absolute;
  top: 51.5%;
  left: 2.8%;
  width: 38.3%;
  height: 15%;
  z-index: 1;
  /* background-color: rgba($color: #000000, $alpha: 0.3); */
}
@media screen and (max-width: 768px) {
  #xcampaign .flow_box .flow02 .xlink {
    top: auto;
    bottom: 18.4%;
    left: 16.8%;
    width: 68%;
    height: 8%;
  }
}
#xcampaign .flow_box .flow03 {
  margin-top: -113px;
}
@media screen and (max-width: 1480px) {
  #xcampaign .flow_box .flow03 {
    margin-top: -7.6vw;
  }
}
@media screen and (max-width: 768px) {
  #xcampaign .flow_box .flow03 {
    margin-top: -24.9vw;
  }
}

#rule {
  position: relative;
  z-index: 2;
  padding-top: 160px;
  padding-bottom: 40px;
}
@media screen and (max-width: 1480px) {
  #rule {
    padding-top: 10.8vw;
    padding-bottom: 2.7vw;
  }
}
@media screen and (max-width: 768px) {
  #rule {
    padding-top: 22.9vw;
    padding-bottom: 7.2vw;
  }
}
#rule .rule_box {
  max-width: 720px;
  width: 100%;
  height: 182px;
  margin-left: auto;
  margin-right: auto;
  overflow-y: scroll;
  background-color: #fff;
  padding: 25px 50px 35px;
  border-radius: 15px;
}
@media screen and (max-width: 1480px) {
  #rule .rule_box {
    max-width: none;
    width: 48.6vw;
    height: 12.3vw;
    padding: 1.7vw 3.4vw 2.4vw;
    border-radius: 1vw;
  }
}
@media screen and (max-width: 768px) {
  #rule .rule_box {
    max-width: none;
    width: 88vw;
    height: 21.6vw;
    padding: 2.7vw 6.7vw 4vw;
    border-radius: 2.7vw;
  }
}
#rule .rule_box h3 {
  font-size: 18px;
  line-height: 1em;
  font-weight: normal;
  text-align: center;
  margin-bottom: 0.5em;
  display: block;
  position: relative;
}
@media screen and (max-width: 1480px) {
  #rule .rule_box h3 {
    font-size: 1.2vw;
  }
}
@media screen and (max-width: 768px) {
  #rule .rule_box h3 {
    font-size: 3.5vw;
  }
}
#rule .rule_box h3::before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #000;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
#rule .rule_box h3 span {
  position: relative;
  z-index: 1;
  display: inline-block;
  font-weight: normal;
  background-color: #fff;
  padding: 0.2em 0.5em 0.2em;
}
#rule .rule_box .txt01 {
  font-size: 12px;
  line-height: 2em;
  text-align: justify;
}
@media screen and (max-width: 1480px) {
  #rule .rule_box .txt01 {
    font-size: 0.8vw;
  }
}
@media screen and (max-width: 768px) {
  #rule .rule_box .txt01 {
    font-size: 2.4vw;
    line-height: 1.7em;
  }
}

#faq {
  position: relative;
  z-index: 2;
  padding-top: 110px;
  padding-bottom: 0;
}
@media screen and (max-width: 1480px) {
  #faq {
    padding-top: 7.4vw;
  }
}
@media screen and (max-width: 768px) {
  #faq {
    padding-top: 9.7vw;
  }
}
#faq .big_txt {
  position: absolute;
  width: 349px;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 1480px) {
  #faq .big_txt {
    width: 23.6vw;
  }
}
@media screen and (max-width: 768px) {
  #faq .big_txt {
    width: 31.7vw;
  }
}
#faq .wrap_sp {
  position: relative;
  z-index: 2;
}
#faq h2 {
  width: 880px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 50px;
}
@media screen and (max-width: 1480px) {
  #faq h2 {
    width: 59.5vw;
    margin-bottom: 3.4vw;
  }
}
@media screen and (max-width: 768px) {
  #faq h2 {
    width: 88vw;
    margin-bottom: 4.3vw;
  }
}
#faq .faq_box {
  width: 1000px;
  margin-left: auto;
  margin-right: auto;
  background-color: #fff;
  border-radius: 15px;
  padding: 0 40px 30px;
}
@media screen and (max-width: 1480px) {
  #faq .faq_box {
    width: 67.6vw;
    padding: 0 2.7vw 2vw;
    border-radius: 1vw;
  }
}
@media screen and (max-width: 768px) {
  #faq .faq_box {
    width: 88vw;
    padding: 0 4vw 4vw;
    border-radius: 2.7vw;
  }
}
#faq .faq_box + .faq_box {
  margin-top: 40px;
}
@media screen and (max-width: 1480px) {
  #faq .faq_box + .faq_box {
    margin-top: 2.7vw;
  }
}
@media screen and (max-width: 768px) {
  #faq .faq_box + .faq_box {
    margin-top: 5.3vw;
  }
}
#faq .faq_box .q_block {
  position: relative;
  padding: 30px 0;
  background-image: url(../images/faq_line_pc.svg);
  background-size: 100% auto;
  background-position: center bottom;
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  #faq .faq_box .q_block {
    padding: 4vw 0;
  }
}
@media screen and (max-width: 768px) {
  #faq .faq_box .q_block {
    padding: 4.3vw 0;
    background-image: url(../images/faq_line_sp.svg);
  }
}
#faq .faq_box .q_block .no {
  width: auto;
  height: 30px;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  position: absolute;
  z-index: 1;
}
#faq .faq_box .q_block .no img {
  width: auto;
  height: 100%;
}
@media screen and (max-width: 1480px) {
  #faq .faq_box .q_block .no {
    height: 2vw;
  }
}
@media screen and (max-width: 768px) {
  #faq .faq_box .q_block .no {
    height: 4.7vw;
  }
}
#faq .faq_box .q_block .q_txt01 {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5em;
  color: #76251c;
  text-align: center;
}
@media screen and (max-width: 1480px) {
  #faq .faq_box .q_block .q_txt01 {
    font-size: 1.6vw;
  }
}
@media screen and (max-width: 768px) {
  #faq .faq_box .q_block .q_txt01 {
    font-size: 3.5vw;
    text-align: left;
    padding-left: 12vw;
  }
}
#faq .faq_box .q_block .q_txt02 {
  padding-left: 78px;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5em;
  color: #76251c;
  text-align: left;
}
@media screen and (max-width: 1480px) {
  #faq .faq_box .q_block .q_txt02 {
    padding-left: 5.3vw;
    font-size: 1.6vw;
  }
}
@media screen and (max-width: 768px) {
  #faq .faq_box .q_block .q_txt02 {
    font-size: 3.5vw;
    text-align: left;
    padding-left: 12vw;
  }
}
#faq .faq_box .a_block {
  padding-top: 30px;
}
@media screen and (max-width: 1480px) {
  #faq .faq_box .a_block {
    padding-top: 2vw;
  }
}
@media screen and (max-width: 768px) {
  #faq .faq_box .a_block {
    padding-top: 3.3vw;
  }
}
#faq .faq_box .a_block .a_txt01 {
  font-size: 19px;
  font-weight: bold;
  line-height: 1.5em;
  color: #76251c;
  text-align: center;
}
@media screen and (max-width: 1480px) {
  #faq .faq_box .a_block .a_txt01 {
    font-size: 1.2vw;
  }
}
@media screen and (max-width: 768px) {
  #faq .faq_box .a_block .a_txt01 {
    font-size: 3.2vw;
    line-height: 1.7em;
    text-align: left;
  }
}
#faq .faq_box .a_block .a_txt02 {
  font-size: 19px;
  font-weight: bold;
  line-height: 1.5em;
  color: #76251c;
  text-align: left;
}
@media screen and (max-width: 1480px) {
  #faq .faq_box .a_block .a_txt02 {
    font-size: 1.2vw;
  }
}
@media screen and (max-width: 768px) {
  #faq .faq_box .a_block .a_txt02 {
    font-size: 3.2vw;
    line-height: 1.7em;
  }
}
#faq .faq_box .a_block .sub_txt {
  font-size: 14px;
}
@media screen and (max-width: 1480px) {
  #faq .faq_box .a_block .sub_txt {
    font-size: 0.9vw;
  }
}
@media screen and (max-width: 768px) {
  #faq .faq_box .a_block .sub_txt {
    display: block;
    font-size: 2.4vw;
    line-height: 1.7em;
    margin-top: 0.2em;
  }
}

.bottom {
  margin-top: 60px;
}
@media screen and (max-width: 1480px) {
  .bottom {
    margin-top: 4.1vw;
  }
}
@media screen and (max-width: 768px) {
  .bottom {
    margin-top: 9.3vw;
  }
}
.bottom .wrap01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  padding-bottom: 80px;
}
@media screen and (max-width: 1480px) {
  .bottom .wrap01 {
    padding-bottom: 5.4vw;
  }
}
@media screen and (max-width: 768px) {
  .bottom .wrap01 {
    display: block;
    padding-bottom: 10vw;
  }
}
.bottom .wrap01 .link01 {
  order: 2;
}
.bottom .wrap01 .link01, .bottom .wrap01 .link01 a {
  font-size: 14px;
  font-weight: bold;
  line-height: 1.5em;
  color: #76251c;
  text-align: left;
}
@media screen and (max-width: 1480px) {
  .bottom .wrap01 .link01, .bottom .wrap01 .link01 a {
    font-size: 0.9vw;
  }
}
@media screen and (max-width: 768px) {
  .bottom .wrap01 .link01, .bottom .wrap01 .link01 a {
    font-size: 3.7vw;
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .bottom .wrap01 .link01 a {
    font-size: 2.9vw;
    display: inline-block;
    margin-top: 0.6em;
  }
}
.bottom .wrap01 .icon_box {
  order: 1;
  width: 116px;
}
@media screen and (max-width: 1480px) {
  .bottom .wrap01 .icon_box {
    width: 7.8vw;
  }
}
@media screen and (max-width: 768px) {
  .bottom .wrap01 .icon_box {
    width: 41.2vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 11.7vw;
  }
}
.bottom .wrap01 .icon_box .logo {
  width: 100%;
}
.bottom .wrap01 .icon_box .link_list {
  width: 56px;
  margin-bottom: 16px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 1480px) {
  .bottom .wrap01 .icon_box .link_list {
    width: 3.8vw;
    margin-bottom: 1.1vw;
  }
}
@media screen and (max-width: 768px) {
  .bottom .wrap01 .icon_box .link_list {
    width: 20.4vw;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 9.3vw;
  }
}
.bottom .wrap01 .icon_box .link_list li {
  display: block;
}
.bottom .wrap01 .icon_box .link_list li, .bottom .wrap01 .icon_box .link_list li img {
  width: auto;
  height: 22px;
}
@media screen and (max-width: 1480px) {
  .bottom .wrap01 .icon_box .link_list li, .bottom .wrap01 .icon_box .link_list li img {
    height: 1.5vw;
  }
}
@media screen and (max-width: 768px) {
  .bottom .wrap01 .icon_box .link_list li, .bottom .wrap01 .icon_box .link_list li img {
    height: 8vw;
  }
}
.bottom .wrap01 .copy {
  order: 3;
  font-size: 10px;
  font-weight: bold;
  line-height: 1.5em;
  color: #76251c;
  text-align: left;
}
@media screen and (max-width: 1480px) {
  .bottom .wrap01 .copy {
    font-size: 0.7vw;
  }
}
@media screen and (max-width: 768px) {
  .bottom .wrap01 .copy {
    font-size: 2.4vw;
    text-align: center;
    margin-top: 4.7vw;
  }
}

/* .animate,
.animate2,
.animate3 {
	opacity: 1;
	transition-property: opacity, transform;
	transition-duration: 0.5s;
	transition-timing-function: ease-in-out;
}
.animate.deactive,
.animate2.deactive,
.animate3.deactive {
	opacity: 0;
	transition: 0s;
} *//*# sourceMappingURL=style.css.map */