@charset "UTF-8";
/*
## placeholder
*/
/*
## .a_bounce_1
挙動：跳ねる
*/
@-webkit-keyframes a_bounce_1 {
  0%, 100%, 20%, 50%, 80% {
    transform: translateY(0px); }
  40% {
    transform: translateY(-30px); }
  60% {
    transform: translateY(-15px); } }
@keyframes a_bounce_1 {
  0%, 100%, 20%, 50%, 80% {
    transform: translateY(0px); }
  40% {
    transform: translateY(-30px); }
  60% {
    transform: translateY(-15px); } }

.a_bounce_1.is_visible {
  -webkit-animation: a_bounce_1 2s linear 0s;
          animation: a_bounce_1 2s linear 0s; }

/*
## .a_in_1
下からフェードイン
*/
.a_in_1 {
  transition: 2s;
  opacity: 0;
  transform: translateY(30px); }
  .a_in_1.is_visible {
    opacity: 1;
    transform: translateY(0); }
  @media screen and (max-width: 768px) {
    .a_in_1 {
      transform: translateY(10vw); } }
  @media print {
    .a_in_1 {
      opacity: 1 !important;
      transform: translateY(0) !important; } }

body {
  font-family: "ヒラギノ角ゴ Pro W3", HGP Gothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; }



/*
## .cp_button_1
*/
.cp_button_1 {
  text-align: center; }
  .cp_button_1 img {
    vertical-align: top; }
  .cp_button_1 a {
    transition: opacity .5s; }
    .cp_button_1 a:hover {
      opacity: .7; }
  .cp_button_1 > span {
    display: block;
    position: relative;
    max-width: 725px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 23px;
    background-color: #000;
    
    &:after {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0,0,0,.7);
      border-radius: 10px;
    }
     }
    .cp_button_1 > span img {
      opacity: .3; }
  .cp_section_2 + .cp_button_1 {
    margin-top: 60px; }
  @media screen and (max-width: 767px) {
    .cp_button_1 img {
      width: 92.81vw;
      height: auto; }
    .cp_button_1 > span {
      max-width: 92.81vw;
      border-radius: 3.6vw; }
    .cp_section_2 + .cp_button_1 {
      margin-top: 3.13vw; } }


/*
## .cp_list_5
内容：注意事項
*/
.cp_list_5 {
  font-size: 18px;
  line-height: 1.4; }
  .cp_list_5__item {
    margin-top: .3em;
    padding-left: 1em;
    text-indent: -1em; }
    .cp_list_5__item:first-of-type {
      margin-top: 0; }

@media screen and (max-width: 767px) {
  .cp_list_5 {
    font-size: 3.44vw; }
    .cp_list_5__item {
      margin-top: .3em; } }

/*
## .cp_list_3
内容：受付時間・受付期間
*/
.cp_list_3 {
  margin-left: auto;
  margin-right: -30px;
  font-size: 22px;
  font-weight: bold; }
  .cp_list_3 dl {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 15px; }
    .cp_list_3 dl:first-of-type {
      margin-top: 0; }
  .cp_list_3 dt {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 137px;
    height: 38px;
    background: #fbe4e6;
    border-radius: 19px; }
  .cp_list_3 dd {
    flex: 1;
    margin-left: .7em;
    font-size: 20px;
    line-height: 1.4; }
  .cp_list_3 small {
    font-size: inherit; }

@media screen and (max-width: 767px) {
  .cp_list_3 {
    width: auto;
    margin: 0 -1vw; }
    .cp_list_3 dl {
      align-items: flex-start; }
    .cp_list_3 dt {
      width: 18.75vw;
      height: 6.25vw;
      margin: 0 auto;
      font-size: 3.44vw;
      line-height: 1.2;
      border-radius: 3.125vw; }
    .cp_list_3 dd {
      margin: 0;
      padding-left: .5em;
      font-size: 4.06vw;
      line-height: 1.2; }
    .cp_list_3 small {
      font-size: 3vw; } }

/*
## .cp_list_2
*/
.cp_list_2 {
  position: relative; }
  .cp_list_2__items {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    justify-content: center;
    position: relative;
    margin: 0 -24px; }
  .cp_list_2__item {
    margin: 50px 24px 0; }
    .cp_list_2__item.is_basis {
    flex-basis: 30%; }
  .cp_list_2__items_2 .cp_list_2__item {
	  margin: 50px 24px 0;
	  flex-basis: 30%; }
    .cp_list_2__item a {
      display: block;
      text-decoration: none;
      transition: transform .3s; }
      .cp_list_2__item a:hover {
        text-decoration: none;
        transform: scale(1.06); }
    .cp_list_2__item img {
      display: block;
      max-width: 100%;
      height: auto;
      margin: 0 auto; }
    .cp_list_2__item p {
      margin-top: 1em;
      font-size: 18px;
      font-weight: bold;
      line-height: 1.4;
      text-align: center;
      white-space: nowrap; }
    .cp_list_2__item.is_2 {
      margin-left: 34px;
      margin-right: 34px; }
    .cp_list_2__item.is_3 {
      margin-left: 22px;
      margin-right: 22px; }
    .cp_list_2__item.is_4 {
      margin-left: 25px;
      margin-right: 25px; }
    .cp_list_2__item.is_5 {
      margin-left: 22px;
      margin-right: -12px; }
    .cp_list_2__item.is_8 {
      width: 33%;
      max-width: 216px;
      margin-left: 0;
      margin-right: 0; }
  @media screen and (max-width: 767px) {
    .cp_list_2__items {
      margin: 0; }
    .cp_list_2__item {
      width: 41.09375vw !important;
      margin: 4.06vw 0 0 !important; }
    .cp_list_2__items_2 .cp_list_2__item{
	    flex-basis: inherit;
    }
      .cp_list_2__item img {
        width: 27.34375vw;
        height: auto; }
      .cp_list_2__item p {
        font-size: 3.00vw; }
        .cp_list_2__item p span {
          font-size: 2.81vw; }
      .cp_list_2__item.is_6 img {
        width: 37.1875vw; }
      .cp_list_2__item.is_7 img {
        width: 15.9375vw; }
      .cp_list_2__item.is_9 img {
        width: 34.375vw; } 
			.cp_list_2__item.is_basis {
				flex-basis: inherit; }
  }

/*
## .cp_list_1
*/
.cp_list_1 {
  position: relative;
  margin-top: -15px; }
  .cp_list_1__items {
    display: flex;
    justify-content: center; }
  .cp_list_1__item {
    position: relative; }
    .cp_list_1__item:first-of-type {
      margin-right: -3px; }
  @media screen and (max-width: 767px) {
    .cp_list_1 {
      margin-top: 2.5vw; }
      .cp_list_1__items {
        display: block; }
      .cp_list_1__item {
        width: 100% !important;
        margin-top: 2.19vw; }
        .cp_list_1__item:first-of-type {
          margin: 0; } }

/*
## .cp_paragraphs_4
内容：終了しました
*/
.cp_paragraphs_4 {
  padding: .4em 0;
  color: #fff;
  font-size: 32px;
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
  background-color: #000; }
  @media screen and (max-width: 767px) {
    .cp_paragraphs_4 {
      padding: .98em 0;
      font-size: 4.38vw;
      line-height: 1.4; } }

/*
## .cp_paragraphs_3
内容：宛先
*/
.cp_paragraphs_3 {
  max-width: 732px;
  margin: 0 auto;
  padding: 36px 50px 36px 72px;
  font-size: 20px;
  font-weight: bold;
  background: #fbe4e6;
  border-radius: 10px;
  box-sizing: border-box;
  letter-spacing: .06em;
  font-feature-settings: "palt";
  text-align: center; }
  .cp_paragraphs_3 em {
    display: inline-block;
    margin-top: 1em;
    font-size: 24px;
    line-height: 1.2;
    vertical-align: top; }

@media screen and (max-width: 767px) {
  .cp_paragraphs_3 {
    padding: 4.8vw 0.9vw 5.2vw 3.28vw;
    font-size: 3.44vw;
    line-height: 1.6;
    border-radius: 1.56vw;
    text-align: left; }
    .cp_paragraphs_3 em {
      font-size: 3.75vw;
      letter-spacing: .03em; } 
}

/*
## .cp_paragraphs_2
*/
.cp_paragraphs_2 {
  font-size: 20px;
  line-height: 1.8; }
  .cp_paragraphs_2 p {
    line-height: inherit;
    font-feature-settings: "palt";
    letter-spacing: .06em; }

@media screen and (max-width: 767px) {
  .cp_paragraphs_2 {
    font-size: 4.06vw;
    line-height: 1.4; } }

/*
## .cp_paragraphs_1
内容：電話番号
使用箇所：お問い合わせ
*/
.cp_paragraphs_1 img {
  max-width: 100%;
  height: auto; }

.cp_paragraphs_1 p {
  margin: 0;
  text-align: center; }

/*
## .cp_section_4
使用箇所：お問い合わせ
*/
.cp_section_4 {
  margin: 3em auto 0;
  line-height: 1.7; }
  .cp_section_4__h1 {
    font-size: 24px;
    font-weight: bold; }
  .cp_section_4__1 {
    font-size: 22px; }
  .cp_section_4__2 {
    margin: 1em 1em 0;
    font-size: 18px; }
  .cp_section_4__2 a{
	  color: #ff0000 !important;
  }
  .cp_section_4__2 a:hover{
	  text-decoration: underline;
  }
  .cp_section_4__3 {
    font-size: 20px;
    letter-spacing: -.06em; }
  @media screen and (max-width: 767px) {
    .cp_section_4 {
      width: auto;
      font-size: 4.06vw;
      margin: 1.5em -1vw 0; }
      .cp_section_4__h1 {
        font-size: 4.38vw; }
      .cp_section_4__1 {
        font-size: 4.06vw; }
      .cp_section_4__2 {
        margin: .7em 0 0;
        font-size: 3.75vw; }
      .cp_section_4__3 {
        font-size: 4.06vw; } }

/*
## .cp_section_3

*/
.cp_section_3 {
  position: relative;
  padding: 0 20px;
  text-align: center; }
  .cp_section_3__h1 {
    text-align: center;
    padding: 0 8px 7px 0; }
    .cp_section_3__h1 img {
      vertical-align: top; }
  .cp_section_3__1 {
    margin: 20px auto 36px; }
  .cp_section_3__2 {
    margin: 15px auto 36px; }
  .cp_section_2__h1 + .cp_section_3 {
    margin-top: 40px; }
  .cp_section_3 + .cp_section_3 {
    margin-top: 66px; }
  @media screen and (max-width: 767px) {
    .cp_section_3 {
      padding: 0; }
      .cp_section_3__h1 img {
        width: 100%;
        height: auto; }
      .cp_section_3__1 {
        margin: 6.72vw auto 5.94vw; }
      .cp_section_3__2 {
        margin: .4vw auto 5.94vw; }
      .cp_section_2__h1 + .cp_section_3 {
        margin-top: 9.375vw; }
      .cp_section_3 + .cp_section_3 {
        margin-top: 9.0625vw; } }

/*
## .cp_section_2
内容：
*/
.cp_section_2 {
  position: relative;
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
  padding: 38px 0 34px;
  color: #000;
  background: #fff;
  border-radius: 10px;
  box-sizing: border-box;
  /*box-shadow: 0px 0px 4.55px 0.45px rgba(0, 0, 0, 0.34);*/ }
  .cp_section_2 a {
    color: #000; }
  .cp_section_2__h1 {
    padding-bottom: 38px;
    text-align: center;
    background: url(../img/pc/border_1.png) no-repeat 50% 100%; }
  .cp_section_2__1 {
    max-width: 890px;
    padding: 0 50px;
    margin: 34px auto 20px; }
  .cp_section_2__2 {
    max-width: 820px;
    padding: 0 40px;
    margin: 3.2em auto 8px;
    font-size: 18px;
    line-height: 1.4; }
  .cp_section_2__close {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    color: #fff;
    font-size: 38px;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
    background: rgba(0, 0, 0, 0.7);
    border-radius: 10px; }
  .cp_header_1 + .cp_section_2 {
    margin-top: 55px; }
  .cp_button_1 + .cp_section_2 {
    margin-top: 62px; }
  .cp_section_2 + .cp_section_2 {
    margin-top: 64px; }
  @media screen and (max-width: 880px) {
    .cp_section_2__close {
      font-size: 4.5vw; 
    } 
  }
  @media screen and (max-width: 767px) {
    .cp_section_2 {
      width: 93.75vw;
      max-width: none;
      margin-left: auto;
      margin-right: auto;
      padding: 3.91vw 0 4.06vw;
      border-width: .94vw; }
      .cp_section_2__h1 {
        width: 89.69vw;
        margin: 4.38vw auto 0;
        padding-bottom: 7.97vw;
        background-image: url(../img/sp/border_1.png);
        background-size: 100% auto; }
        .cp_section_2__h1 img {
          width: 100%;
          height: auto; }
      .cp_section_2__1 {
        width: 84.53vw;
        margin: 6vw auto 3.8vw;
        padding: 0; }
      .cp_section_2__2 {
        font-size: 3.44vw;
        padding: 0 1.5em; }
      .cp_section_2__close {
        font-size: 5vw;
        line-height: 1.8; }
      .cp_header_1 + .cp_section_2 {
        margin-top: 4.69vw; }
      .cp_button_1 + .cp_section_2 {
        margin-top: 3.13vw; } }

/*
## .cp_section_1
内容：バーコードを集めて応募しよう！
*/
.cp_section_1 {
  position: relative;
  margin-top: 30px;
  z-index: 1; }
  .cp_section_1__h1 {
    position: relative;
    text-align: center;
    z-index: 1; }
  .cp_section_1__1 {
    position: relative;
    margin-top: -3px; }

@media screen and (max-width: 767px) {
  .cp_section_1 {
    margin-top: 5vw; }
    .cp_section_1__h1 img {
      width: 100%;
      height: auto; }
    .cp_section_1__1 {
      margin-top: -5.78vw; } }

/*
## .cp_header_1
*/
.cp_header_1 {
  position: relative; }
  .cp_header_1__h1 {
    position: relative;
    text-align: center; }
    .cp_header_1__h1 img {
      width: 100%;
      height: auto;
      vertical-align: top; }
  .cp_header_1__date {
    padding: 24px 0;
    text-align: center;
    background-color: #fff100; }
    .cp_header_1__date img {
      vertical-align: top; }
    .cp_header_1__date p {
      margin-top: 1em;
      font-size: 18px; }
      .cp_header_1__date p small {
        font-size: inherit; }
      .cp_header_1__date p:first-of-type {
        margin-top: 0; }
  .cp_header_1__close {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 120px;
    padding: 0 1.5em;
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    line-height: 1.5;
    background-color: #f0aecb; }
    .cp_header_1__close span {
      white-space: nowrap; }
  @media screen and (max-width: 767px) {
    .cp_header_1__date {
      padding: 3.28vw 0; }
      .cp_header_1__date img {
        width: 100%;
        height: auto; }
      .cp_header_1__date p {
        font-size: 3.44vw;
        line-height: 1.4; }
    .cp_header_1__close {
      height: 20vw;
      font-size: 4vw; } }

/*
## 共通フッター
*/
#v2-gfooter {
  margin-top: 94px; }
  @media screen and (max-width: 767px) {
    #v2-gfooter {
      margin-top: 15.31vw; } }

.v2-gfooter-bottom {
  font-size: 10px; }

@media (min-width: 768px) {
  .v2-gfooter-bottom {
    height: 90px;
    padding: 2% 0 2%;
    background-color: #000000;
    box-sizing: border-box;
    position: relative; }
  .v2-gfooter-menu {
    position: absolute;
    top: 30px;
    left: 2.635%; }
    .v2-gfooter-menu__item {
      margin: 0 15px 5px 0;
      float: left; }
  .v2-gfooter-menu__item a {
    text-decoration: none;
    padding: 0 0 0 13px;
    font-size: 120%;
    display: inline-block;
    position: relative;
    color: #ffffff;
    transition: color 0.15s ease-out;
    padding-left: 15px;
    font-weight: bold; }
    .v2-gfooter-menu__item a::before {
      content: "";
      width: 12px;
      height: 12px;
      display: block;
      position: absolute;
      left: 0;
      top: 1px;
      background-color: #ffffff;
      border-radius: 100%; }
    .v2-gfooter-menu__item a::after {
      content: '';
      display: block;
      width: 3px;
      height: 3px;
      border-top: 1px solid #000000;
      border-left: 1px solid #000000;
      transform: rotate(135deg);
      position: absolute;
      top: 5px;
      left: 3px; }
  .v2-gfooter__sns {
    position: absolute;
    font-size: 0;
    top: 34px;
    left: 400px; }
  .v2-gfooter__twitter {
    display: inline-block;
    vertical-align: top; }
    .v2-gfooter__twitter span {
      background-image: url(../img/footer_twitter.png);
      width: 30px;
      height: 30px; }
  .v2-gfooter__facebook {
    display: inline-block;
    vertical-align: top;
    margin-left: 10px; }
    .v2-gfooter__facebook span {
      background-image: url(../img/footer_facebook.png);
      width: 30px;
      height: 30px; }
  .v2-gfooter__corporate-logo {
    position: absolute;
    top: 25px;
    right: 2.635%; }
    .v2-gfooter__corporate-logo span {
      background-image: url(../img/footer_corporate.png);
      width: 148px;
      height: 42px; }
  .v2-gfooter-copyright {
    position: absolute;
    top: 55px;
    left: 2.635%; }
    .v2-gfooter-copyright span {
      width: 327px;
      height: 10px;
      background-image: url(../img/footer_copyright_pc.png); } }

@media (max-width: 767px) {
  .v2-gfooter-bottom {
    height: 110px;
    background-color: #000000;
    padding-left: 2.635%;
    padding-right: 2.635%;
    position: relative; }
  .v2-gfooter-menu {
    position: absolute;
    top: 20px;
    left: 0;
    width: 100%;
    text-align: center; }
    .v2-gfooter-menu__item {
      margin: 0 10px;
      display: inline-block; }
      .v2-gfooter-menu__item a {
        text-decoration: none;
        padding: 0 0 0 13px;
        font-size: 100%;
        display: inline-block;
        position: relative;
        color: #ffffff;
        transition: color 0.15s ease-out;
        padding-left: 15px;
        font-weight: bold; }
        .v2-gfooter-menu__item a::before {
          content: "";
          width: 10px;
          height: 10px;
          display: block;
          position: absolute;
          left: 0;
          top: 0;
          background-color: #ffffff;
          border-radius: 100%; }
        .v2-gfooter-menu__item a::after {
          content: '';
          display: block;
          width: 3px;
          height: 3px;
          border-top: 1px solid #000000;
          border-left: 1px solid #000000;
          transform: rotate(135deg);
          position: absolute;
          top: 3px;
          left: 2px; }
  .v2-gfooter__sns {
    font-size: 0;
    position: absolute;
    top: 44px;
    left: 50%;
    margin-left: -83px; }
  .v2-gfooter__twitter {
    display: inline-block;
    vertical-align: top; }
    .v2-gfooter__twitter span {
      background-image: url(../img/footer_twitter.png);
      width: 25px;
      height: 25px; }
  .v2-gfooter__facebook {
    display: inline-block;
    vertical-align: top;
    margin-left: 10px; }
    .v2-gfooter__facebook span {
      background-image: url(../img/footer_facebook.png);
      width: 25px;
      height: 25px; }
  .v2-gfooter__corporate-logo {
    position: absolute;
    top: 44px;
    left: 50%; }
    .v2-gfooter__corporate-logo span {
      background-image: url(../img/footer_corporate.png);
      width: 89px;
      height: 25px; }
  .v2-gfooter-copyright {
    position: absolute;
    width: 100%;
    top: 76px;
    left: 0;
    text-align: center; }
    .v2-gfooter-copyright span {
      display: inline-block;
      width: 290px;
      height: 15px;
      background-image: url(../img/footer_copyright_sp.png); } }

/*
## .cp_wrapper_1
*/
#wrapper,
.cp_wrapper_1 {
  overflow: hidden;
  position: relative;
  background-color: #f1ba00; }

/*
## 
*/
.clearfix::after {
  content: "";
  display: block;
  clear: both; }

.bg-img {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  font-size: 0px;
  line-height: 0px;
  display: block;
  background: 0 0 no-repeat;
  background-size: cover; }
  .bg-img::after {
    content: '';
    display: block; }

/*
## margin top
*/
.cp_mg-t_5 {
  margin-top: 30px !important; }

.cp_mg-t_4 {
  margin-top: 37px !important; }

.cp_mg-t_3 {
  margin-top: 40px !important; }

.cp_mg-t_1 {
  margin-top: 25px !important; }

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

@media screen and (max-width: 1300px) {
  .is_sp_none_3 {
    display: none !important; } }

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

@media screen and (max-width: 767px) {
  .is_sp_none {
    display: none !important; } }

.cp_section_3__h1{
	font-size: 30px;
	font-family: "Hiragino Sans";
	font-weight: 800;
	background-image: linear-gradient(transparent 57%, #fbe4e6 0%);
	width: fit-content;
	margin: 0 auto -20px;
}
.br__sp{
	display: none;
}


/*ページトップ追従*/

#v2-gfooter__pagetop{
  position: fixed;
  right: 57px;
  top: inherit;
  bottom: 50px;
  transition: .3s;
  
  /*デフォルトで非表示にする*/
  opacity: 0;
  visibility: hidden;
}

/*このクラスが付与されると表示する*/
#v2-gfooter__pagetop.fixed{
  opacity: 1;
  visibility: visible;
}

.absolute #v2-gfooter__pagetop{
  position: absolute;
  top: 0;
  bottom: inherit;
  margin-top: -42px;
}

@media screen and (max-width: 767px) {
	.cp_section_3__h1{
		font-size: 4.533vw;
		margin-bottom: 10px;
		line-height: 1.6;
		display: inline;
		background-image: linear-gradient(transparent 47%, #fbe4e6 0%);
		padding: 0 8px 5px 0;
	}
	.br__sp{
		display: block;
	}
	#v2-gfooter__pagetop {
    right: 6vw;
    bottom: 25px;
  }
  .absolute #v2-gfooter__pagetop{
	  right: 6vw;
    margin: -10vw 0 0;
	}
}
