
.winter_2025{
	background-color: #860013;
	color:#572d14;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
	padding-top: 60px;
}


/*----snow-----*/
/*** ???i????j ***/
.snows div{
  position: fixed; /*?????*/
  top: -250px; /*??????u*/
  left: 0;
  border-radius: 50%; /*??^*/
  background: #fff; /*???F*/
  opacity: 0.9; /*????????*/
}

/*** ????????? ***/
.snows div:nth-child(1){
  width: 10px;
  height: 10px;
  filter: blur(2px); /*?????*/
  /* ?}240px?????e(????)????? */
  box-shadow:
    5vw -40px 0 #fff,
    10vw 150px #fff,
    15vw -230px #fff,
    22vw 240px #fff,
    30vw 120px #fff,
    35vw -180px #fff,
    44vw 240px #fff,
    50vw 0 #fff,
    60vw 180px #fff,
    68vw 40px #fff,
    74vw -130px #fff,
    81vw -240px #fff,
    88vw 100px #fff,
    95vw 60px #fff;
    animation: fall 12s linear infinite;/*????*/
}

/*** ?????????2 ***/
.snows div:nth-child(2){
  width: 10px;
  height: 10px;
  filter: blur(2px); /*?????*/
  /* ?}240px?????e(????)????? */
  box-shadow:
    7vw 220px 0 #fff,
    35vw 20px #fff,
    68vw 100px #fff,
    93vw -190px #fff;
  animation: fall 12.5s linear infinite;/*????*/
  animation-delay: 6s; /*?J?n?x??*/
}

/*** ?????????? ***/
.snows div:nth-child(3){
  width: 14px;
  height: 14px;
  filter: blur(3px); /*?????*/
  /* ?}233px?????e(????)????? */
  box-shadow:
    12vw 5px 0 #fff,
    32vw -100px #fff,
    45vw -180px #fff,
    68vw 40px #fff,
    77vw 65px #fff,
    94vw 230px #fff;
  animation: fall 10s linear infinite; /*????*/
  animation-delay: 6s; /*?J?n?x??*/
}

/*** ??????? ***/
.snows div:nth-child(4){
  width: 20px;
  height: 20px;
  filter: blur(8px); /*?????*/
  /* ?}222px?????e(????)????? */
  box-shadow:
    40vw -200px #fff,
    80vw 220px #fff;
  animation: fall 7s linear infinite; /*????*/
  animation-delay: 4s; /*?x??*/
}

/*** ?????A?j???[?V???? ***/
@keyframes fall{
  0%{
    top: -250px;
  }
  100% {
    top: calc(100% + 250px);
  }
}


/*** ?T???v???????p ***/
body{
  background: #111;
}

/*-------------*/


.sp_img {
    display: none;
}

@media screen and (max-width:560px) {
    .sp_img {
        display: none;
    }

    .sp_img {
        display: block;
    }
}

.pc_img table td{
	border:4px solid #fff;
}
.pc_img{
	width: 100%;
}

/*-------------*/

.main_contents{
    margin: 70px auto;
    width: 90%;
    outline: #e7ae64 solid 2px;
    outline-offset:15px;
    padding: 40px;
    background-color: #fff;
    border-radius: 50px 0 50px 0;
}


/*-------------*/

.ribbon {
	position: relative;
	width: 50%;
	margin:0 auto;
	text-align: center;
	font-size: 22px;
}

.ribbon:before,
.ribbon:after {
	position: absolute;
	z-index: 0;
	bottom: -10px;
	display: block;
	content: '';
	border: 1em solid #930600;
}

.ribbon:before {
  left: -20px;
  border-left-width: 15px;
  border-left-color: transparent;
}

.ribbon:after {
  right: -20px;
  border-right-width: 15px;
  border-right-color: transparent;
}

.ribbon span {
  position: relative;
  z-index: 1;
  display: block;
  padding: 0.7rem 2rem;
  color: #fff;
  background: #b50700;
}

.ribbon span:before,
.ribbon span:after {
  position: absolute;
  bottom: -10px;
  display: block;
  width: 10px;
  height: 10px;
  content: '';
  border-style: solid;
  border-color: #b70505 transparent transparent transparent;
}

.ribbon span:before {
  left: 0;
  border-width: 10px 0 0 15px;
}

.ribbon span:after {
  right: 0;
  border-width: 10px 15px 0 0;
}




/*-------------------------------*/
.contents_toptittle2{
  font-size:4rem;
  text-align:center;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  color:#b9172a;
  margin: 10px 0px 10px 0px;
  line-height: 1.3;
}

.contents_toptittle3{
  font-size:3rem;
  text-align:center;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  color:#b9172a;
  margin-top: 15px;
}

.text{
  font-size:1.1rem;
  width: 90%;
  margin: 30px auto;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.contents_img{
  margin-top:20px;
  margin-bottom:20px;
  margin: 25px auto;
  text-align: center;
}

.contents_img2{
  width: 85%;
  margin: 30px auto;
  margin-top: 40px;
}

.big_text{
  font-size:1.5rem;
  text-align:center;
  margin-top: 20px;
	  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.buttonRound {
  margin:0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 70%;
  height: 64px;
  padding: 8px 24px;
  font-family: sans-serif;
  font-size: 25px;
  color: #fff;
  text-align: center;
  overflow-wrap: anywhere;
  background-color: #adadad;
  border-radius: 32px;
}

@media (any-hover: hover) {
  .buttonRound {
    transition: background-color 0.2s;
  }

  .buttonRound:hover {
    background-color: #ff8d4b;
  }
}


/*---------------------------*/

.contents_flex{
  display:flex;
}

.box{
  width: 45%;
  margin: 0 auto;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.box_title{
  font-size:1.4rem;
  text-align:center;
  background-color:#572d14;
  color:#fff;
  padding:5px 0px 5px 0px;
}

.box_text1{
  line-height: 1.4;
  font-size: 2rem;
  text-align: center;
  margin: 20px 0px 20px 0px;
}

.box_text1 span{
    font-size: 2.7rem;
  text-align: center;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  color:#b9172a;
  line-height: 1.2;
  margin: 20px 0px 20px 0px;
}



.box_text2{
	font-size: 1.1rem;
	text-align: 
	justify;margin-bottom: 20px;
	
}

.box_text1_2{
  font-size: 3.6rem;
  text-align: center;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  color:#b9172a;
  line-height: 1.2;
  margin: 20px 0px 20px 0px;
}

.st_b{
  display:flex;
  flex-wrap:wrap;
  justify-content: space-between;
  margin: 10px auto;
  width: 95%;
}

.store_box li{
  width:50%;
  padding: 15px;
  text-align:center;
  font-size:1.3rem;
}


.st_b p{
  text-align:center;
  font-size:1.1rem;
}


.bbb {
  margin:8px auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60%;
  height: 45px;
  padding: 8px 24px;
  font-family: sans-serif;
  font-size: 25px;
  color: #572d14;
  text-align: center;
  overflow-wrap: anywhere;
  background-color: #FFF;
  border: 1px solid #572d14;
}

@media (any-hover: hover) {
  .bbb {
    transition: background-color 0.2s;
  }

  .bbb:hover {
    background-color: #572d14;
    color:#fff;
  }
}


/*----------------*/
.buttonRound2 {
  margin:0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 70%;
  height: 64px;
  padding: 8px 24px;
  font-family: sans-serif;
  font-size: 25px;
  color: #fff;
  text-align: center;
  overflow-wrap: anywhere;
  background-color: #ff6a13;
  border-radius: 32px; 
}

@media (any-hover: hover) {
  .buttonRound2 {
    transition: background-color 0.2s;
  }

  .buttonRound2:hover {
    background-color: #ff8d4b;
  }
}

/*----------------*/
.buttonRound3 {
  margin:0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 85%;
  height: 64px;
  padding: 8px 24px;
  font-family: sans-serif;
  font-size: 25px;
  color: #fff;
  text-align: center;
  overflow-wrap: anywhere;
  background-color: #589b35;
  border-radius: 32px; 
}

@media (any-hover: hover) {
  .buttonRound3 {
    transition: background-color 0.2s;
  }

  .buttonRound3:hover {
    background-color: #97d365;
  }
}

/*----------------*/

.buttonRound6 {
  margin:0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 70%;
  height: 64px;
  padding: 8px 24px;
  font-family: sans-serif;
  font-size: 25px;
  color: #ac7d18;
  text-align: center;
  overflow-wrap: anywhere;
  background-color: #fff;
  border-radius: 32px; 
  border:2px solid #ac7d18;
	  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

@media (any-hover: hover) {
  .buttonRound6 {
    transition: background-color 0.2s;
  }

  .buttonRound6:hover {
	  color:#fff;
    background-color: #ac7d18;
  }
}


/*------------------*/
.slide-container {
    width: 100%;
    margin: 80px auto;
    display: flex;
    align-items: center;
    overflow: hidden;
}
.slide-wrapper {
  display: flex;
  animation: slide-flow 15s infinite linear 1s both;
}
.slide{
  width: 2500px;
  object-fit:cover;
}
@keyframes slide-flow {
     0% {transform: translateX(0);}
 100% {transform: translateX(-100%);}
}


/*----------------*/
.buttonRound4 {
  margin:0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 70%;
  height: 64px;
  padding: 8px 24px;
  font-family: sans-serif;
  font-size: 25px;
  color: #fff;
  text-align: center;
  overflow-wrap: anywhere;
  background-color: #7840c1;
  border-radius: 32px; 
}

@media (any-hover: hover) {
  .buttonRound4 {
    transition: background-color 0.2s;
  }

  .buttonRound4:hover {
    background-color: #7840c1;
  }
}

.br-sp {
    display: none;
}

@media (max-width: 600px) {
    .br-sp {
        display: block;
    }
}

.text_s{
  margin: 30px auto;
  width: 90%;
font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.text_b{
	font-size: 6rem;
}

/*----rodepo-----*/

.rodepo .point1000--block {
  margin: 30px auto 50px;
}
.rodepo .point1000--block h4 {
  margin-bottom: 20px;
}
 .rodepo .point1000--block h4 .sec-title {
  display: flex;
  align-items: center;
}
.rodepo .point1000--block h4 .sec-title div {
  flex-grow: 1;
  text-align: left;
  line-height: 1.5em;
}
.rodepo .point1000--block h4 .sec-title .bl--block {
  width: 16%;
  padding: 10px 15px;
  margin-right: 10px;
  margin-top: 5px;
  background-color: #543e33;
  color: #fff;
  font-size: 0.2em;
}


/*--------notback--------*/

.title_b{
	margin-bottom: -40px;
	margin-top: 20px;
}
.notback_title{
	color:#e7ae64;
	text-align:center;
	font-size: 4rem;
	font-family: "Allura", cursive;
	font-weight: 400;
	font-style: normal;
}

.notback_text{
	color:#fff;
	text-align:center;
	font-size:1.3rem;
	margin-top: 40px;
}













