@charset "UTF-8";

#lp_contents a:hover {
  opacity: 0.8;
}

#lp_contents a img:hover {
  opacity: 0.8;
}

#lp_contents img {
  width: 100%;
}

#lp_contents {
  overflow-x: hidden;
}

#lp_contents ul,
#lp_contents li {
  list-style: none;
}

#lp_contents .inner {
  margin: auto;
  max-width: 1000px;
  padding: 0;
  width: auto;
}

#lp_contents .pc-only {
  display: block;
}

#lp_contents .sp-only {
  display: none;
}

#lp_contents .shadow {
  box-shadow: 0px 0px 8px 3px rgba(0, 0, 0, 0.3);
}

#lp_contents .mgb10 {
  margin-bottom: 10px !important;
}

#lp_contents .mgb14 {
  margin-bottom: 14px !important;
}

#lp_contents .mgb20 {
  margin-bottom: 20px !important;
}

#lp_contents .mgb30 {
  margin-bottom: 30px !important;
}

#lp_contents .mgb40 {
  margin-bottom: 40px !important;
}

#lp_contents .mgb50 {
  margin-bottom: 50px !important;
}

#lp_contents .mgb60 {
  margin-bottom: 60px !important;
}

#lp_contents .mgb100 {
  margin-bottom: 100px !important;
}

#lp_contents #main_contents {
  max-width: 1200px;
  margin: auto;
}

#lp_contents img.w-auto {
  width: auto;
  margin-left: auto;
  display: inline-block;
}

#lp_contents .flex {
  display: flex;
  justify-content: space-between;
  padding: 0 30px;
}

#lp_contents .flex_2 {
  display: flex;
  justify-content: space-between;
  gap: 30px;
}

#lp_contents .flex_center {
  display: flex;
  justify-content: center;
}

@media screen and (max-width: 768px) {
  #lp_contents .mgr-10 {
    margin-right: -10px !important;
  }

  #lp_contents .pc-only {
    display: none;
  }

  #lp_contents img.w-auto.pc-only {
    display: none;
  }

  #lp_contents .sp-only {
    display: block;
  }

  #lp_contents .mgb0 {
    margin-bottom: 0px !important;
  }

  #lp_contents .mgb10 {
    margin-bottom: 5px !important;
  }

  #lp_contents .mgb20 {
    margin-bottom: 10px !important;
  }

  #lp_contents .mgb30 {
    margin-bottom: 15px !important;
  }

  #lp_contents .mgb40 {
    margin-bottom: 20px !important;
  }

  #lp_contents .mgb50 {
    margin-bottom: 25px !important;
  }

  #lp_contents .mgb60 {
    margin-bottom: 30px !important;
  }

  #lp_contents .mgb100 {
    margin-bottom: 50px !important;
  }

  #lp_contents #main_contents {
    width: auto;
    margin: auto;
  }

  #lp_contents .flex {
    display: block;
    margin: auto;
    padding: 0;
  }

  #lp_contents .inner {
    padding: 0px 10px;
  }

  #lp_contents .inner02 {
    padding: 0px 10px;
  }

  #lp_contents .flex_2 {
    display: block;
    padding: 0px 20px;
  }
}

/*-共有部分ここまで此処より上には追記しない。
必要がある場合は、ここより下で上書き。
----------------------------------------------*/

/*-PC---------------------------------------------*/

#lp_contents .bg_white {
  background-color: #fff;
  padding: 50px 0px 50px;
}

#lp_contents .bg_lineup .list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

#lp_contents .bg_lineup .list div.small {
  width: 49%;
}

#lp_contents .lineup_title img {
  width: auto;
  margin: auto;
}

#lp_contents .lineup_title02 {
  width: 25%;
  margin: auto;
}

#lp_contents .relative {
  position: relative;
}

#lp_contents .absolute {
  position: absolute;
}

#lp_contents .flex-center {
  display: flex;
  justify-content: center;
  padding: 0 30px;
}

#lp_contents .btn_wd {
  width: 50%;
  margin: auto;
}

#lp_contents .w-more {
  width: 103%;
  margin-left: -35px;
}

#lp_contents .bg_lineup {
  background: url(/contents/202509-01_fair/images/index/bg_lineup.jpg);
  background-size: cover;
  padding: 80px 0px 100px;
}

#lp_contents .bg_gift {
  background: url(/contents/202509-01_fair/images/index/bg_gift.jpg);
  background-size: cover;
  padding: 80px 0px 100px;
}

#lp_contents .bg_gift_contents {
  background: url(/contents/202509-01_fair/images/index/bg_gift_contents.png)
    no-repeat;
  background-size: contain;
  padding: 80px 0px 50px;
}

#lp_contents .bg_sokuno {
  background: url(/contents/202509-01_fair/images/index/bg_sokuno.jpg);
  background-size: cover;
  padding: 80px 0px 100px;
}

#lp_contents .absolute_btn {
  position: absolute;
  bottom: 30px;
  width: 100%;
  left: 50%;
  transform: translateX(-50%);
}
#lp_contents .w-95 {
  width: 95%;
  margin: auto;
}

#lp_contents .text-r {
  text-align: right;
}

/*-タブレット部分ここから----------------------------------------------*/
@media screen and (max-width: 768px) {
  body {
    margin: 0;
  }

  #lp_contents .bg_lineup .list {
    display: block;
    padding: 0;
  }

  #lp_contents .bg_lineup .list div {
    margin: 0 auto;
  }

  #lp_contents .bg_lineup .list div.small {
    width: 100%;
  }

  #lp_contents .lineup_title img {
    width: 100%;
    margin: auto;
  }

  #lp_contents .lineup_title {
    width: 70%;
    margin: auto;
  }

  #lp_contents .lineup_title02 {
    width: 35%;
    margin: auto;
  }

  #lp_contents .btn_wd {
    width: 95%;
    margin: auto;
  }

  #lp_contents .bg_lineup {
    background: url(/contents/202509-01_fair/images/index/bg_lineup_sp.jpg);
    background-size: cover;
    padding: 30px 0px;
  }

  #lp_contents .bg_white {
    padding: 30px 0px;
  }

  #lp_contents .bg_gift {
    background: url(/contents/202509-01_fair/images/index/bg_gift_sp.jpg)
      no-repeat;
    background-size: cover;
    padding: 40px 0px 40px;
  }

  #lp_contents .bg_gift_contents {
    background: url(/contents/202509-01_fair/images/index/bg_gift_contents_sp.png)
      no-repeat;
    background-size: contain;
    padding: 40px 0px 40px;
    margin: 0 10px;
  }

  #lp_contents .bg_sokuno {
    background: url(/contents/202509-01_fair/images/index/bg_sokuno_sp.jpg);
    background-size: cover;
    padding: 30px 0px;
  }
  #lp_contents .absolute_btn {
    position: absolute;
    bottom: 20px;
    width: 90%;
  }

  #lp_contents .w-more {
    width: 104%;
    margin-left: -10px;
  }

  #lp_contents .text-r {
    padding: 0px 10px;
  }
}

/*-スマホ部分ここから----------------------------------------------*/
@media screen and (max-width: 480px) {
}

/*end--------------------------------------------*/
