@charset "UTF-8";
html {
scroll-behavior: smooth;
}
   /* lazyloadedになったらfadeアニメーションを実行 */
.page-wrapper .fade-up.lazyloaded {
  animation: fade 2.7s forwards; 
    opacity: 0;
    transform:translateY(30px);
    animation-delay: 1s;
}


/* fadeアニメーション */
@keyframes fade {
  0% {
    opacity: 0;
      transform:translateY(30px);
  }
  100% {
    opacity: 1;
      transform:translateY(0%);
  }
}    
.page-wrapper *:where(:not(iframe, canvas, img, svg, video, .splide):not(svg *, .splide *)) {
  all: unset;
  display: revert;
}
.page-wrapper *, .page-wrapper *::before, .page-wrapper *::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.page-wrapper ol, .page-wrapper ul {
  list-style: none;
}
.page-wrapper img {
  display: block;
}
.page-wrapper a {
  cursor: pointer;
}
.page-wrapper p,.page-wrapper li,.page-wrapper h3 {
  font-size: 12px;
  color:#000000;
  font-family:"Zen Old Mincho","游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif,serif;;
  font-weight: 500;
  line-height: 1.5;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}
.page-wrapper a {
  -webkit-transform: 0.3s;
  transform: 0.3s;
  text-decoration: none;
}
.page-wrapper a:hover {
  opacity: 0.8;
}
@media (min-width: 768px) {
  .page-wrapper .pc-only {
    display: block;
  }
  .page-wrapper .sp-only {
    display: none;
  }
}
@media (max-width: 767.9999px) {
  .page-wrapper .pc-only {
    display: none;
  }
  .page-wrapper .sp-only {
    display: block;
  }
}
/* ↑ コンテンツ部分設定 */
/* ↓ 特集 */
@font-face { 
  font-family: "ZenOld";
  src: url("../font/ZenOldMincho-Regular.ttf") format("truetype") ；
}
img {
  max-width:100%;
}
.page-wrapper {
  background-color: #9A1212;
  background-image:url(../img/bg-pattern.png);
  background-position: top;
  background-repeat: no-repeat;
  padding-bottom:25px;
  z-index:1;
  position: relative;
}
.page-wrapper img {
  width: 100%;
}
.contents-wrapper {
  margin:  auto;
  width:90%;
  background-image:url(../img/bg-tex.png);
  border-radius: 40px;
  /* border:solid 3px #AC061B; */
  box-sizing: border-box;
  position: relative;
  padding-bottom: 12px;
  z-index: -10;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif,serif;
}
.deco-b{
  position: relative;
  z-index:1;
}


/* リード文 */
.contents-wrapper .lead_column {
  padding-top:20px;
  margin-bottom:18px;
}
.contents-wrapper .lead_column img{
  margin:auto;
}
.deco-b .deco-matsu{
position: absolute;
    width: 18%;
    left: -10px;
    top: 180px;
}
.contents-wrapper .lead_column h2{
  margin:auto;
  margin-top:30px;
}
.contents-wrapper .lead_column .calender{
  width:80%;
  padding-top:7px;
}
.contents-wrapper .lead_column .lead-text{
  width:95%;
}
.campaign-period {
  width:100%;
  margin-top:40px;
  margin-bottom:10px;
  position:relative;
}



/* 景品 */
.contents-wrapper .prize_column {
  padding-bottom:0px;
  position:relative;
  margin-top: 70px;
}

.prize_column h2 {
  width:100%;
  margin:auto;
  padding-bottom:15px;
  z-index: 1;
  position: absolute;
  top: -30px;
}
.prize_column .prize-text {
  width:80%;
  margin:30px auto 0;
  padding-bottom:28px;
}
.prize-list {
  margin:auto;
  width:85%;
}
.prize-list li {
  margin-bottom:30px;
}

.deco-b .deco-koduchi{
  position:absolute;
  width:16%;
  right:-40px;
  top:-70px;
}



/* 応募方法 */
.contents-wrapper .howto_column {
  margin-top:30px;
  margin-bottom:30px;
}
.howto_column h2{
  width:100%;
  margin:auto auto 29px auto;
}
.howto_column .apply-details {
  width:90%;
  margin:auto auto 27px auto;
}
.method {
  position: relative;
}
.method .method01 {
  position: absolute;
  top:-15px;
  right:35px;
  width:23%;
} 
.method .method02 {
  position: absolute;
  bottom:95px;
  right:15px;
  width:20%;
} 
.form-b{
  position:relative;
}
.form-b .deco-01{
  position:absolute;
  width:30%;
  left:-30px;
  bottom:-40px;
  z-index:-1;
}
.form-b .deco-02{
  position:absolute;
  width:30%;
  right:-30px;
  top:-30px;
  z-index:-1;
}
.form01 {
  width:86%;
  margin:52px auto;
  /* background-color: #fff; */
}
.deco-b .deco-cr{
  position:absolute;
  width:20%;
  left:-20px;
  bottom:220px;
}

/* 当選発表 */
.announcing_column{
  margin:60px 0;
}
.announcing_column .an-detail{
  margin:30px auto ;
  width:85%;
}

/* インスタグラム */
.contents-wrapper .instagram_column {
  width:100%;
  margin-top:18px;
  margin-bottom:28px;
  position:relative;
}
.insta-link {
  width:100%;
  margin:20px auto auto auto;
}
.deco-b .deco-sasa{
  position:absolute;
  width:20%;
  right:-10px;
  top:0;
}
.deco-b .deco-fl{
  position:absolute;
  width:20%;
  left:-12px;
  bottom:-10px;
}


/* 平日キャンペーン */
.contents-wrapper .weekday_column{
  padding-bottom: 0px;
  position: relative;
  margin-top: 120px;
}
.weekday_column h2 {
  width:100%;
  margin:auto;
  padding-bottom:15px;
  z-index: 1;
  position: absolute;
  top: -70px;
}
.deco-b .deco-cr02{
  position:absolute;
  width:20%;
  left:-20px;
  bottom:-40px;
}



.application-rules {
  text-align:center;
  margin-top:15px;
}
.application-rules a{
  font-size: 16px;
  border-bottom:solid 1px #656565;
  color:#656565;
  /* background-color: #fff; */
}
.not-eligible {
  margin:30px auto auto auto;
  width:90%;
}
.not-eligible h3,.attention h3,.inquiry h3{
  font-size:1.5em;
  margin-bottom:5px;
  color:#000000;
  border-bottom: 1px #000000 solid;
  display:inline;
  padding-bottom:8px;
}

.not-eligible .sub-title,.attention .sub-title, .inquiry .sub-title{
  text-align: center;
  margin-bottom:20px;
}

.not-eligible h3, .not-eligible p{
  color:#000000;
}
.west,.walk,.east{
  font-size:12px;
  display:flex;
}
.west,.walk {
  margin-bottom:17px;
}
.west p,.west .west-shop,.walk p,.walk .walk-shop,.east p,.east-shop{
  line-height:15px;
}
.west-shop span,.walk-shop span,.east-shop span{
  display:inline-block;
}
.contents-wrapper .attention, .contents-wrapper .inquiry{
  margin:22px auto 25px auto;
  width:90%;
}
.attention ul li {
  text-indent:-0.6em;
  padding-left:0.8em;
}


.office span{
  display:inline-block;
}
.inquiry .office{
  line-height:17px;
}
.inquiry .office02 {
  margin-top:10px;
}
.inquiry ul li {
  text-indent:-1.1em;
  padding-left:1em;
  line-height:16px;
}
.inquiry {
  position:relative;
}
.inquiry .blue {
  position: absolute;
  top:-20px;
  right:-80px;
  width:28%;
  z-index:-1;
}



/* ヘッダ・フッタ */
.page-wrapper .nav-form {
  position:fixed;
  max-width:375px;
  z-index:1000;
  bottom:0;
  margin:auto;
  right:0;
  left:0;
  background-color: #fff;
}

.c-footer .footer-bottom {
  padding-bottom:6.5rem;
}

@media (max-width: 767.9999px) {
  .page-wrapper .nav-form {
    width:100%;
    max-width:450px;
  }
}

@media (max-width: 767.9999px) and (min-width: 660px){
  .contents-wrapper .ume {
    top:-3%;
    left:-100px;
    width:48%;
  }
}


@media (max-width: 659px) and (min-width: 380px){
  .contents-wrapper .ume {
    top:-2.5%;
    left:-17%;
  }
}



@media (max-width: 767.9999px) and (min-width: 380px){
  .prize_column .blue {
    top:-6%;
    left:-25%;
  }
  .brown-b .brown {
    top:-7%;
    left:-45%;
    width:58%;
  }
  .p-b .p-img {
    bottom:48px;
    right:-27%;
  }
  .p-b .p-img {
    bottom:48px;
    right:-27%;
  }
  .method .brown {
    top:30%;
    right:-30%;
    width:53%;
  } 

}