@charset "UTF-8";
.xmas2025 img {
  max-width: 100%;
}
.xmas2025 .Keyvisual {
  background: url("/assets/campaign/xmas2025/img/visual-bg.jpg") no-repeat center center;
  background-size: cover;
  position: relative;
  margin-bottom: 100px;
}
@media only screen and (max-width: 798px) {
  .xmas2025 .Keyvisual {
    margin-bottom: 60px;
  }
}
.xmas2025 .Keyvisual h1 {
  line-height: 1.6;
}
@media only screen and (max-width: 798px) {
  .xmas2025 .Keyvisual h1 {
    width: 100%;
    text-align: center;
  }
}
.xmas2025 .pc {
  display: block;
}
@media only screen and (max-width: 798px) {
  .xmas2025 .pc {
    display: none;
  }
}
.xmas2025 .sp {
  display: none;
}
@media only screen and (max-width: 798px) {
  .xmas2025 .sp {
    display: block;
  }
}
.xmas2025 .content-narrow {
  max-width: 1680px;
  padding-left: 40px;
  padding-right: 40px;
  width: 100%;
  margin: 0 auto;
}
@media only screen and (max-width: 798px) {
  .xmas2025 .content-narrow {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
  }
}
.xmas2025 .content-wide {
  max-width: 1680px;
  padding-left: 40px;
  padding-right: 40px;
  width: 100%;
  margin: 0 auto;
}
@media only screen and (max-width: 798px) {
  .xmas2025 .content-wide {
    width: calc(100% - 40px);
    margin-left: auto;
    margin-right: auto;
  }
}
.xmas2025 .Heading {
  margin-bottom: 100px;
}
@media only screen and (max-width: 798px) {
  .xmas2025 .Heading {
    margin-bottom: 0px;
  }
}
.xmas2025 .Heading img {
  width: 100%;
}
.xmas2025 .tokuten-wrapper {
  background-image: url(/assets/campaign/xmas2025/img/cashipo-bg.jpg);
  background-size: cover;
  padding-top: 60px;
  padding-bottom: 60px;
  width: 100%;
}
@media only screen and (max-width: 798px) {
  .xmas2025 .tokuten-wrapper {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
.xmas2025 .tokuten-wrapper h2 {
  max-width: 760px;
  width: calc(100% - 80px);
  margin: 0 auto 20px;
}
@media only screen and (max-width: 640px) {
  .xmas2025 .tokuten-wrapper h2 {
    margin-top: 40px;
  }
}
.xmas2025 .Tokuten {
  max-width: 760px;
  width: 100%;
  margin: 0px auto 60px;
  border: 1px solid #fff;
  padding: 30px;
}
@media only screen and (max-width: 798px) {
  .xmas2025 .Tokuten {
    margin: 30px auto;
    width: calc(100% - 60px);
    padding: 20px;
  }
}
.xmas2025 .Tokuten img {
  width: 100%;
}
.xmas2025 .Tokuten p {
  font-family: "Sawarabi Mincho";
  padding-top: 30px;
  line-height: 1.8;
  color: #fff;
}
@media only screen and (max-width: 640px) {
  .xmas2025 .Tokuten p {
    font-size: 14px;
    padding-top: 0;
  }
}
@media only screen and (max-width: 640px) {
  .xmas2025 .Tokuten.PC {
    display: none;
  }
}
.xmas2025 .Tokuten.SP {
  display: none;
}
@media only screen and (max-width: 640px) {
  .xmas2025 .Tokuten.SP {
    display: block;
  }
}
.xmas2025 .Xmas__Content {
  max-width: 1680px;
  padding: 0 40px;
  width: 100%;
  margin: 100px auto;
}
@media only screen and (max-width: 798px) {
  .xmas2025 .Xmas__Content {
    padding: 0;
    margin: 50px auto 0;
  }
}
@media only screen and (max-width: 640px) {
  .xmas2025 .Xmas__Content .pc {
    display: none;
  }
}
.xmas2025 .Xmas__Content .sp {
  display: none;
}
@media only screen and (max-width: 640px) {
  .xmas2025 .Xmas__Content .sp {
    display: block;
  }
}
.xmas2025 .Xmas__Content section {
  margin: 60px 0;
}
.xmas2025 .flex {
  display: flex;
}

.Comment {
  max-width: 640px;
  width: 100%;
  margin: 60px auto;
}
.Comment ul li {
  line-height: 1.6;
  margin: 0.5em 0;
  padding-left: 2em;
  position: relative;
}
.Comment ul li:before {
  content: "※";
  position: absolute;
  left: 0;
  top: 0;
}

.pc-5 {
  position: relative;
  width: 100%;
  background-image: url(/assets/campaign/xmas2025/img/pc5.jpg);
  background-repeat: no-repeat;
  background-size: 100%;
  aspect-ratio: 1600/1020;
}
.pc-5 #pc5-1, .pc-5 #pc5-2 {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 19.6875%;
  height: 5.6862745098%;
  top: 89.6078431373%;
}
.pc-5 #pc5-1 a, .pc-5 #pc5-2 a {
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  opacity: 0;
}
.pc-5 #pc5-1 {
  left: 3.125%;
}
.pc-5 #pc5-1 a:hover {
  background-color: rgb(0, 0, 0);
}
.pc-5 #pc5-2 {
  left: 52.1875%;
}

.pc-6 {
  position: relative;
  width: 100%;
  background-image: url(/assets/campaign/xmas2025/img/pc6.jpg);
  background-repeat: no-repeat;
  background-size: 100%;
  aspect-ratio: 1600/1015;
}
.pc-6 #pc6-1, .pc-6 #pc6-2 {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 5.7142857143%;
  width: 19.6875%;
}
.pc-6 #pc6-1 a, .pc-6 #pc6-2 a {
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  opacity: 0;
}
.pc-6 #pc6-1 {
  top: 88.9655172414%;
  left: 3.125%;
}
.pc-6 #pc6-2 {
  left: 52.9375%;
  top: 88.9655172414%;
}

.pc-7 {
  position: relative;
  background-image: url(/assets/campaign/xmas2025/img/pc7.jpg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: 100%;
  aspect-ratio: 1600/1020;
}
.pc-7 #pc7-1, .pc-7 #pc7-2 {
  position: absolute;
  display: block;
  height: 5.6862745098%;
  width: 19.6875%;
}
.pc-7 #pc7-1 a, .pc-7 #pc7-2 a {
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  opacity: 0;
}
.pc-7 #pc7-1 {
  top: 90%;
  left: 2.375%;
}
.pc-7 #pc7-2 {
  top: 90%;
  left: 53%;
}

.pc-8 {
  position: relative;
  width: 100%;
  background-image: url(/assets/campaign/xmas2025/img/pc8.jpg);
  background-repeat: no-repeat;
  background-size: 100%;
  aspect-ratio: 1600/965;
}
.pc-8 #pc8-1, .pc-8 #pc8-2 {
  position: absolute;
  display: block;
  height: 6.0103626943%;
  width: 19.6875%;
}
.pc-8 #pc8-1 a, .pc-8 #pc8-2 a {
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  opacity: 0;
}
.pc-8 #pc8-1 {
  top: 90.5699481865%;
  left: 3.125%;
}
.pc-8 #pc8-2 {
  top: 90.5699481865%;
  left: 52.875%;
}

.pc-9 {
  position: relative;
  width: 100%;
  background-image: url(/assets/campaign/xmas2025/img/pc9.jpg);
  background-repeat: no-repeat;
  background-size: 100%;
  aspect-ratio: 1600/965;
}
.pc-9 #pc9-1, .pc-9 #pc9-2 {
  position: absolute;
  display: block;
  width: 100%;
  height: 6.0103626943%;
  width: 19.6875%;
}
.pc-9 #pc9-1 a, .pc-9 #pc9-2 a {
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  opacity: 0;
}
.pc-9 #pc9-1 {
  top: 90.3626943005%;
  left: 3.125%;
}
.pc-9 #pc9-2 {
  top: 90.3626943005%;
  left: 53.625%;
}

.pc-11 {
  position: relative;
  background-image: url(/assets/campaign/xmas2025/img/pc11.jpg);
  background-repeat: no-repeat;
  background-size: 100%;
  aspect-ratio: 1600/920;
}
.pc-11 #pc11-1, .pc-11 #pc11-2 {
  position: absolute;
  display: block;
  height: 6.3043478261%;
  width: 19.6875%;
}
.pc-11 #pc11-1 a, .pc-11 #pc11-2 a {
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  opacity: 0;
}
.pc-11 #pc11-1 {
  left: 3.3125%;
  top: 28.6956521739%;
}
.pc-11 #pc11-2 {
  left: 60.9375%;
  top: 29.8913043478%;
}

.pc-13 {
  position: relative;
  background-image: url(/assets/campaign/xmas2025/img/pc13.jpg);
  background-repeat: no-repeat;
  background-size: 100%;
  aspect-ratio: 1600/876;
}
.pc-13 #pc13-1, .pc-13 #pc13-2 {
  position: absolute;
  display: block;
  height: 6.6210045662%;
  width: 19.6875%;
  top: 85.6164383562%;
}
.pc-13 #pc13-1 a, .pc-13 #pc13-2 a {
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  opacity: 0;
}
.pc-13 #pc13-1 {
  left: 3.1875%;
}
.pc-13 #pc13-2 {
  left: 52%;
}

.webreserve {
  margin: 0 auto 60px;
  max-width: 1000px;
  width: calc(100% - 80px);
}
@media only screen and (max-width: 798px) {
  .webreserve {
    margin: 40px auto;
    width: calc(100% - 60px);
  }
}
.webreserve a:hover {
  opacity: 0.9;
}
.webreserve a img {
  margin: 0 auto;
}