@charset "UTF-8";
/* 読み上げ対策 */
.ec-layoutRole {
  background: #ffffff url("/html/upload/user_data/feature/gyutan/img/bg_tex.jpg") right center repeat;
}
.ec-layoutRole .ec-featureRole__head {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

:root {
  --color-key1: #ffe0f7;
  --color-key2: #87ddf1;
  --color-key3: #d3a24b;
  --color-white: #fff;
  --color-black: #232122;
  --color-gray: #e8e8e8;
  --color-lightGray: #f5f6f7;
  --color-red: #bb0e20;
}

.jremallcoupon_campaign a * {
  pointer-events: none;
}
.singleBtnHolder_item a:hover {
    color: #fff;
}
/* layout */
.separate {
  padding: min(12.8vw, 96px) 0;
}

@media print, screen and (min-width: 768px) {
  .separate {
    padding: min(7.27vw, 80px) 0;
  }
}
.separate--bgcKey2 {
  background-color: var(--color-key2);
}

.separate--bgcGray {
  background-color: var(--color-lightGray);
}

/* font size */
.hp_fontSz14 {
  font-size: 1.08em !important;
}

@media print, screen and (min-width: 768px) {
  .hp_fontSz14 {
    font-size: 0.88em !important;
  }
}
.hp_fontSz16 {
  font-size: 1em !important;
}

@media print, screen and (min-width: 768px) {
  .hp_fontSz16 {
    font-size: 1em !important;
  }
}
.hp_fontSz18 {
  font-size: 1.15em !important;
}

.compartment-c03 {
  background-color: #fff9d2;
}

@media print, screen and (min-width: 768px) {
  .hp_fontSz18 {
    font-size: 1.13em !important;
  }
  .hp_fontSz22 {
    font-size: 22px !important;
  }
}
/* margin */
.hp_mt20 {
  margin-top: min(2.66vw, 20px) !important;
}

@media print, screen and (min-width: 768px) {
  .hp_mt20 {
    margin-top: 20px !important;
  }
}
/* marker */
.hp_text-marker {
  background: var(--color-key1);
  background: linear-gradient(0deg, var(--color-key1) 0%, var(--color-key1) 35%, transparent 35%);
}

/* Btn */
.el_campaignBtn {
  font-size: 1.38em;
  display: grid;
  place-content: center;
}

@media print, screen and (min-width: 768px) {
  .el_campaignBtn {
    width: 54.54vw;
    max-width: 600px;
    font-size: 1.5em;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
  }
}
.el_campaignBtn--fontSz-s {
  font-size: 0.72em;
  font-weight: normal;
}

@media print, screen and (min-width: 768px) {
  .el_campaignBtn--fontSz-s {
    font-size: 0.67em;
  }
}
/* ふきだし */
.el_campaignFukidashi {
  display: inline-grid;
  place-content: center;
  padding: min(2vw, 15px) min(3.33vw, 25px);
  font-weight: bold;
  background-color: var(--color-key1);
  border-radius: min(4.26vw, 32px);
  text-align: center;
  line-height: 1.3;
}

@media print, screen and (min-width: 768px) {
  .el_campaignFukidashi {
    padding: 15px 20px;
    font-size: 1.13em;
    border-radius: 24px;
  }
}
.el_campaignFukidashi--right {
  border-bottom-right-radius: 0;
}

.el_campaignFukidashi--left {
  border-bottom-left-radius: 0;
}

/* アイコン */
.el_campaignIcon {
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  transform: translateY(0.2em);
}

/* 基本フォントサイズ */
.jremallcoupon_campaign{
  font-size: clamp(0.81rem, 0rem + 3.47vw, 1.63rem);
}

@media print, screen and (min-width: 768px) {
  .jremallcoupon_campaign{
    font-size: clamp(0.81rem, 0.41rem + 0.86vw, 1rem);
  }
}
/* 終了対応
-----------------------------------*/
.campaignEnd {
  margin: min(5.3333333vw, 20px) auto;
}

@media print, screen and (min-width: 751px) {
  .campaignEnd {
    margin: min(2.5390625vw, 26px) auto;
  }
}
.campaignEnd-inner {
  padding: 0 min(4vw, 15px);
}

@media print, screen and (min-width: 768px) {
  .campaignEnd-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 min(2.27vw, 25px);
    box-sizing: content-box;
  }
}
.content .campaignEnd-inner {
  padding: 0;
}

.campaignEnd-inner p {
  font-size: 1.13em;
}

@media print, screen and (min-width: 768px) {
  .campaignEnd-inner p {
    font-size: 1.25em;
  }
}
/* Title
-----------------------------------*/
.campaignTtl {
  font-size: 2em;
  font-weight: bold;
  text-align: center;
  margin-bottom: min(8vw, 60px);
}

@media print, screen and (min-width: 768px) {
  .campaignTtl {
    font-size: 3em;
    margin-bottom: min(5.45vw, 60px);
  }
}
.campaignTtl--underline {
  position: relative;
  padding-bottom: min(6.66vw, 50px);
}

@media print, screen and (min-width: 768px) {
  .campaignTtl--underline {
    padding-bottom: min(4.54vw, 50px);
  }
}
.campaignTtl--underline::after {
  content: "";
  width: min(20.53vw, 154px);
  height: clamp(0.06rem, 0.03rem + 0.14vw, 0.13rem);
  background-color: var(--color-black);
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

@media print, screen and (min-width: 768px) {
  .campaignTtl--underline::after {
    width: min(14vw, 154px);
    height: 2px;
  }
}
/* mainVisual
-----------------------------------*/
.campaignHeader-mainvisual {
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .campaignHeader-mainvisual {
    /* margin: min(2.27vw, 25px); */
  }
}
.campaignHeader-mainvisual_img {
  display: block;
}

.campaignHeader-mainvisual_img > img {
  width: auto;
  max-width: 100%;
  vertical-align: bottom;
}

.campaignHeader-contents {
  margin-top: min(5.33vw, 40px);
  margin-bottom: clamp(1.75rem, 0.23rem + 6.48vw, 4.69rem);
}

.campaignHeader-label {
  display: grid;
  place-content: center;
  padding: 0.5em;
  color: var(--color-white);
  font-weight: bold;
  background: #085EB4;
  border-radius: min(1.06vw, 8px);
  margin-left: -1.9230769231vw;
  margin-right: -1.9230769231vw;
}

@media print, screen and (min-width: 768px) {
  .campaignHeader-label {
    font-size: 1.25em;
    margin: auto;
    border-radius: 4px;
  }
}
.campaignHeader-label_none {
  display: grid;
  place-content: center;
  padding: 0.5em;
  color: var(--color-white);
  font-weight: bold;
  background-color: #085EB4;
  border-radius: min(1.06vw, 8px);
  margin-left: -1.9230769231vw;
  margin-right: -1.9230769231vw;
}

@media print, screen and (min-width: 768px) {
  .campaignHeader-label_none {
    font-size: 1.25em;
    margin: auto;
    border-radius: 4px;
  }
}
.campaignHeader-period {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: min(2.66vw, 20px) 0;
  margin-top: min(2.66vw, 20px);
  margin-bottom: min(8vw, 60px);
}

@media print, screen and (min-width: 768px) {
  .campaignHeader-period {
    gap: 15px 0;
    margin-top: min(2.72vw, 30px);
    margin-bottom: min(3.63vw, 40px);
  }
}
.campaignHeader-period .w-space {
  white-space: nowrap;
}

.campaignHeader-period_ttl {
  flex-basis: 34.05%;
}

@media print, screen and (min-width: 768px) {
  .campaignHeader-period_ttl {
    flex-basis: 24.35%;
    min-height: 74px;
  }
}
.campaignHeader-period_ttl:first-of-type {
  background-color: var(--color-key2);
}

.campaignHeader-period_ttl.el_campaignFukidashi {
  padding-left: min(0.5vw, 10px);
  padding-right: min(0.5vw, 10px);
  font-size: clamp(0.75rem, -0.13rem + 3.73vw, 1.63rem);
}

@media print, screen and (min-width: 768px) {
  .campaignHeader-period_ttl.el_campaignFukidashi {
    font-size: 1.13em;
  }
}
.campaignHeader-period_date-wrapper {
  flex-basis: 62.31%;
  display: flex;
  letter-spacing: -0.04em;
}

@media print, screen and (min-width: 768px) {
  .campaignHeader-period_date-wrapper {
    flex-basis: 71.79%;
  }
}
.campaignHeader-period_date {
  display: grid;
  align-items: end;
  font-weight: bold;
  line-height: 1.1;
}

.campaignHeader-period_date:not(:first-of-type) {
  position: relative;
  margin-left: calc(1em + 10px);
}

@media print, screen and (min-width: 768px) {
  .campaignHeader-period_date:not(:first-of-type) {
    margin-left: calc(1.25em + 10px);
  }
}
.campaignHeader-period_date:not(:first-of-type)::before {
  content: "～";
  position: absolute;
  bottom: 0.1em;
  left: calc(-1em - 5px);
}

@media print, screen and (min-width: 768px) {
  .campaignHeader-period_date:not(:first-of-type)::before {
    font-size: 1.25em;
  }
}
.campaignHeader-period_date-year {
  font-size: clamp(0.69rem, 0rem + 2.93vw, 1.38rem);
}

@media print, screen and (min-width: 768px) {
  .campaignHeader-period_date-year {
    font-size: 1.13em;
  }
}
@media print, screen and (min-width: 768px) {
  .campaignHeader-period_date-md {
    font-size: 1.25em;
  }
}
.campaignHeader-period_date-md .num {
  font-size: 1.62em;
  font-weight: 900;
}

@media print, screen and (min-width: 768px) {
  .campaignHeader-period_date-md .num {
    font-size: 1.9em;
  }
}
.campaignHeader-period_date-md .num2 {
  font-size: 1.12em;
}

/* 賞品
-----------------------------------*/
.campaignPrize {
  overflow: hidden;
  padding-bottom: min(5.33vw, 40px);
  border-radius: min(4vw, 30px);
  background-color: var(--color-white);
  box-shadow: 0 5px 16px 0 rgba(0, 0, 0, 0.09);
}

.campaignPrize .txtRed {
  color: #d80000;
  font-weight: bold;
}

.campaignPrize .compartment-c03 {
  /*
  		ul li {
  			padding-left: 1em;
  			text-indent: -1em;
  		}
  */
}

.campaignPrize .compartment-c03 h3 {
  font-size: 1.38em;
  font-weight: bold;
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .campaignPrize .compartment-c03 h3 {
    font-size: 1.5em;
  }
}
.campaignPrize .compartment-c03 .iiMark img {
  display: inline-block;
  width: 17px;
  height: auto;
  vertical-align: middle;
  margin: -3px 3px 0 0;
}

@media print, screen and (min-width: 768px) {
  .campaignPrize .compartment-c03 .iiMark img {
    width: 20px;
    height: auto;
  }
}
.campaignPrize .compartment-c03 .el_campaignBtn-fontSz-s {
  line-height: 1.4;
}

.campaignPrize-boxitem {
  padding: min(6vw, 45px) min(5.33vw, 40px);
  border: min(0.8vw, 6px) solid var(--color-gray);
  border-radius: min(2.66vw, 20px);
}

@media print, screen and (min-width: 768px) {
  .campaignPrize-boxitem {
    padding: min(2.72vw, 30px) min(3.63vw, 40px);
    border-width: 3px;
    border-radius: 20px;
  }
}
.campaignPrize-boxitem-inner {
  background-color: #f5f6f7;
  padding: min(4vw, 30px) min(4.66vw, 35px);
}

@media print, screen and (min-width: 768px) {
  .campaignPrize-boxitem-inner {
    padding: min(2.72vw, 30px);
  }
}
@media print, screen and (min-width: 768px) {
  .campaignPrize {
    padding-bottom: min(7.27vw, 80px);
    border-radius: 30px;
  }
}
.campaignPrize + .campaignPrize {
  margin-top: 7.6923076923vw;
}

@media print, screen and (min-width: 768px) {
  .campaignPrize + .campaignPrize {
    margin-top: min(3.90625vw, 40px);
  }
}
.campaignPrize-ttl {
  color: var(--color-white);
  background-color: var(--color-black);
  border-bottom: clamp(0.25rem, 0rem + 1.07vw, 0.5rem) solid var(--color-key3);
  text-align: center;
  padding: min(1.86vw, 14px);
  margin: 0;
}

@media print, screen and (min-width: 768px) {
  .campaignPrize-ttl {
    padding: 20px;
    border-bottom-width: 8px;
  }
}
.campaignPrize-ttl .lsS {
  letter-spacing: 0.2em !important;
}

.campaignPrize-ttl .lsM {
  letter-spacing: 0.6em !important;
}

.campaignPrize-ttl .lsL {
  letter-spacing: 1.2em !important;
}

.campaignPrize-ttl > span {
  display: inline-block;
  font-size: 1.85em;
  font-weight: bold;
  letter-spacing: 0.6em;
  transform: translateX(0.3em); /* ← letter-spacingのズレを修正 */
}

@media print, screen and (min-width: 768px) {
  .campaignPrize-ttl > span {
    font-size: 2.25em;
  }
}
.campaignPrize-contents {
  max-width: 860px;
  margin: 0 auto;
  padding: min(6.66vw, 50px) min(5.33vw, 40px) 0;
}

@media print, screen and (min-width: 768px) {
  .campaignPrize-contents {
    padding-top: min(3.63vw, 40px);
  }
}
.campaignPrize-fukidashi {
  margin-top: min(9.33vw, 70px);
  margin-bottom: min(4vw, 30px);
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: 1em;
  text-align: center;
  font-size: 1.23em;
  font-weight: bold;
}

@media print, screen and (min-width: 768px) {
  .campaignPrize-fukidashi {
    margin-top: min(4.54vw, 50px);
    margin-bottom: min(1.81vw, 20px);
    font-size: 1.5em;
    gap: 1.4em;
  }
}
.campaignPrize-fukidashi > span {
  display: inline-block;
  padding-bottom: 0.4em;
}

.campaignPrize-fukidashi::before, .campaignPrize-fukidashi::after {
  content: "";
  width: min(0.53vw, 4px);
  height: 2.66em;
  background-color: var(--color-black);
}

@media print, screen and (min-width: 768px) {
  .campaignPrize-fukidashi::before, .campaignPrize-fukidashi::after {
    width: 3px;
    height: 3.54em;
  }
}
.campaignPrize-fukidashi::before {
  transform: rotate(-25deg);
}

.campaignPrize-fukidashi::after {
  transform: rotate(25deg);
}

.campaignPrize-item {
  padding: min(7.33vw, 55px) min(6.66vw, 50px);
  border: min(0.8vw, 6px) solid var(--color-gray);
  border-radius: min(2.66vw, 20px);
}

@media print, screen and (min-width: 768px) {
  .campaignPrize-item {
    padding: min(2.72vw, 30px) min(6.36vw, 70px);
    border-width: 3px;
    border-radius: 20px;
  }
}
.campaignPrize-item + .campaignPrize-item {
  margin-top: min(5.33vw, 40px);
}

.campaignPrize-item_ttl {
  margin-bottom: min(8vw, 60px);
}

@media print, screen and (min-width: 768px) {
  .campaignPrize-item_ttl {
    margin-bottom: min(3.27vw, 36px);
  }
}
.campaignPrize-item_ttl > span {
  display: inline-block;
  padding: 0.3em 1em;
  color: var(--color-white);
  font-size: 1.15em;
  font-weight: bold;
  background-color: var(--color-black);
  border-radius: 50vw;
  border-bottom-left-radius: 0;
  box-shadow: 0.19em 0.19em 0px 0px var(--color-key3);
}

@media print, screen and (min-width: 768px) {
  .campaignPrize-item_ttl > span {
    font-size: 1.88em;
  }
}
.campaignPrize-item_img {
  margin: min(2.66vw, 20px) auto;
}

@media print, screen and (min-width: 768px) {
  .campaignPrize-item_img {
    margin: min(1.81vw, 20px) auto;
  }
}
.campaignPrize-item_img > img {
  display: block;
  margin: 0 auto;
  max-width: 90%;
  height: auto;
}

@media print, screen and (min-width: 768px) {
  .campaignPrize-item_img > img {
    max-width: 100%;
    height: auto;
  }
}
.campaignPrize-item_lead {
  font-size: 1.38em;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .campaignPrize-item_lead {
    font-size: 2.25em;
  }
}
.campaignPrize-item_lead .num {
  font-size: 1.56em;
}

.campaignPrize-item_lead .point {
  font-family: "Montserrat", Helvetica, Arial, sans-serif;
  font-size: 1.94em;
  font-weight: 800;
  letter-spacing: -0.02em;
  text-shadow: 0.06em 0.06em 0px var(--color-key3);
  padding-right: 0.2em;
}

.campaignPrize-item_line {
  border: none;
  border-top: clamp(0.06rem, 0rem + 0.27vw, 0.13rem) solid var(--color-gray);
  margin: min(5.33vw, 40px) auto;
}

@media print, screen and (min-width: 768px) {
  .campaignPrize-item_line {
    border-top-width: 1px;
    margin: 30px auto;
  }
}
.campaignPrize .compartment {
  margin-top: min(3.46vw, 26px);
}

@media print, screen and (min-width: 768px) {
  .campaignPrize .compartment {
    margin-top: min(3.63vw, 40px);
  }
}
/* エントリー方法
-----------------------------------*/
.campaignEntry-lead {
  text-align: left;
}

@media print, screen and (min-width: 768px) {
  .campaignEntry-lead {
    text-align: center;
  }
}
.campaignEntry-link {
  display: flex;
  justify-content: center;
  gap: 0.6em 1.4em;
  flex-wrap: wrap;
}

@media print, screen and (min-width: 768px) {
  .campaignEntry-link {
    font-size: 0.88em;
  }
}
.cp-color {
  padding: 10px;
  text-align: center;
  font-weight: bold;
  font-size: 115%;
  color: #fff;
  background-color: #00904a;
  border-bottom: 3px solid #064526;
  border-radius: 8px;
  margin-bottom: min(5.45vw, 60px);
  margin-top: 70px;
}

@media print, screen and (min-width: 768px) {
  .cp-color {
    margin-bottom: 40px;
  }
}
.view_tiket {
  margin: 0;
  padding: 20px;
  background: #fffee4 none repeat scroll 0% 0%;
  text-align: center;
  border-radius: 8px;
  margin-bottom: min(4.45vw, 60px);
}

.view_tiket img {
  width: 80%;
}

/* 注意事項
-----------------------------------*/
/* 注釈 */
.notesTxt,
.notesTxt-indent2 {
  font-size: clamp(12px, 3.0769230769vw, 23px);
  color: #666;
}

.notesTxt {
  padding-left: 1em;
  text-indent: -1em;
}

.notesTxt-indent2 {
  padding-left: 2em;
  text-indent: -2em;
}

.nonIndent {
  padding-left: 0;
  text-indent: 0;
}

@media print, screen and (max-width: 767px) {
  .notesTxt,
  .notesTxt-indent2 {
    font-size: clamp(10px, 1.171875vw, 12px);
    padding: 0 4.237vw !important;

  }
}

@media print, screen and (min-width: 768px) {
  .highlightTxt {
    font-size: clamp(23px, 3.125vw, 32px);
  }
  .highlightTxt-szM {
    font-size: clamp(19px, 2.5390625vw, 26px);
  }
  .notesTxt,
  .notesTxt-indent2 {
    font-size: clamp(10px, 1.171875vw, 12px);
  }
}

/* インデント */
.indentText {
  padding-left: 1em;
  text-indent: -1em;
}

.indentText-indent2 {
  padding-left: 2em;
  text-indent: -2em;
}

/* インデント リストの余白 */
.indentText li + li,
.indentText-indent2 li + li,
.notesTxt li + li {
  margin-top: 5px;
}




/* campaignFooter
-----------------------------------*/
.campaignFooter {
  padding: min(13.33vw, 100px) 0 min(12vw, 90px);
}

@media print, screen and (min-width: 768px) {
  .campaignFooter {
    padding: min(5.45vw, 60px) 0 min(9.09vw, 100px);
    border-bottom: 1px solid var(--color-gray);
  }
}
/* campaignCoupon
-----------------------------------*/
.campaignCoupon {
  margin: 0 0 min(5.455vw, 60px);
}
.campaignCoupon ul {
  margin-top: min(4.545vw, 50px) !important;
  display: flex;
  justify-content: space-between;
}
.campaignCoupon ul li {
  width: 48%;
}
.campaignCoupon ul li a {
  display: block;
  transition: opacity 0.4s;
}
.campaignCoupon ul li a:hover {
  opacity: 0.6;
  transition: opacity 0.4s;
}
.campaignCoupon ul li a img {
  width: 100%;
  height: auto;
  filter: drop-shadow(0 4px 6px rgba(0, 0, 0, 0.35));
}
.campaignCoupon ul li p {
  text-align: center;
  font-size: 15px;
  margin-top: 15px;
}
.campaignCoupon ul li p a {
  display: inline;
}

@media screen and (max-width: 767px) {
  .campaignCoupon {
    margin: 8vw 0;
  }
  .campaignCoupon ul {
    margin-top: 0;
    display: block;
  }
  .campaignCoupon ul li {
    width: auto;
    margin-top: 5.333vw;
  }
  .campaignCoupon ul li a {
    transition: 0;
  }
  .campaignCoupon ul li a:hover {
    opacity: 1;
    transition: opacity 0;
  }
  .campaignCoupon ul li p {
    font-size: 3.467vw;
  }
}
/* campaignInfo
-----------------------------------*/
.campaignInfo {
  border-bottom: min(0.091vw, 1px) solid #e7e7e7;
}
.campaignInfo dl {
  display: flex;
  border-top: min(0.091vw, 1px) solid #e7e7e7;
  padding: min(2.273vw, 25px) 0;
}
.campaignInfo dl dt {
  width: 30%;
  font-weight: 600;
  font-weight: min(1.636vw, 18px);
}
.campaignInfo dl dd {
  width: 70%;
}
.campaignInfo dl dd p {
  font-size: min(1.636vw, 18px);
}
.campaignInfo dl dd ul {
  margin-top: min(0.909vw, 10px);
}
.campaignInfo dl dd ul li {
  font-size: min(1.182vw, 13px);
  padding-left: 1em;
  text-indent: -1em;
}
.campaignInfo dl dd ol {
  padding-left: 0;
}
.campaignInfo dl dd ol li {
  font-size: min(1.636vw, 18px);
    list-style: none;
}
.campaignInfo dl dd a {
  text-decoration: underline;
  font-weight: 600;
}

@media screen and (max-width: 767px) {
  .campaignInfo dl {
    display: block;
    padding: 4vw 0;
  }
  .campaignInfo dl dt {
    width: auto;
    font-size: 4.267vw;
  }
  .campaignInfo dl dd {
    width: auto;
  }
  .campaignInfo dl dd p {
    font-size: 4vw;
  }
  .campaignInfo dl dd ul {
    margin-top: 1.333vw !important;
  }
  .campaignInfo dl dd ul li {
    font-size: 3.2vw;
  }
  .campaignInfo dl dd ol li {
    font-size: 4.267vw;
    padding-left: 1em;
    text-indent: -1em;
  }
}
/* mall_osusume
-----------------------------------*/
.mall_osusume {
  margin: min(5.455vw, 60px) auto;
}
.mall_osusume .cp-color {
  padding: min(0.909vw, 10px);
  margin: min(1.818vw, 20px) 0;
  text-align: center;
  font-weight: bold;
  color: #fff;
  background-color: #3ab4e4 !important;
  border-radius: 0;
  box-shadow: none;
  border: none;
  font-size: min(2vw, 22px) !important;
}
.mall_osusume ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 95%;
  margin: min(2.727vw, 30px) auto 0 !important;
}
.mall_osusume ul li {
  width: 48.5%;
  margin-bottom: min(2.727vw, 30px);
}
.mall_osusume ul li a {
  display: block;
  transition: opacity 0.4s;
}
.mall_osusume ul li a:hover {
  opacity: 0.6;
  transition: opacity 0.4s;
}
.mall_osusume ul li a img {
  width: 100%;
  height: auto;
}

@media screen and (max-width: 767px) {
  .mall_osusume {
    margin: 8vw auto;
  }
  .mall_osusume .cp-color {
    padding: 3.2vw;
    margin: 5.333vw 0 4vw;
    font-size: 4.267vw !important;
  }
  .mall_osusume ul {
    display: block;
    width: 95%;
    margin: 0 auto;
  }
  .mall_osusume ul li {
    width: auto;
    margin: 2vw 0 0;
  }
  .mall_osusume ul li a {
    transition: 0;
  }
  .mall_osusume ul li a:hover {
    opacity: 1;
    transition: opacity 0;
  }
}

.singleBtn {
  background: #222;
  border-color: #222;
  color: #fff;
}
.singleBtn::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cpath%20d%3D%22M8%2C1%2C8%2C0A8%2C8%2C0%2C1%2C1%2C0%2C8%2C8%2C8%2C0%2C0%2C1%2C8%2C0Z%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M9623-910.25a.5.5%2C0%2C0%2C1-.4-.193.5.5%2C0%2C0%2C1%2C.089-.7l2.866-2.23-2.866-2.23a.5.5%2C0%2C0%2C1-.089-.7.5.5%2C0%2C0%2C1%2C.7-.088l3.375%2C2.625a.5.5%2C0%2C0%2C1%2C.192.395.5.5%2C0%2C0%2C1-.192.395l-3.375%2C2.625A.507.507%2C0%2C0%2C1%2C9623-910.25Z%22%20transform%3D%22translate(-9616.498%20921.375)%22%20fill%3D%22%23222%22%2F%3E%3C%2Fsvg%3E");
}
.singleBtn[target=_blank]::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%228%22%20height%3D%228%22%20viewBox%3D%220%200%208%208%22%3E%3Cpath%20d%3D%22M7.428%2C8H2.857a.573.573%2C0%2C0%2C1-.572-.572V5.714H.571A.572.572%2C0%2C0%2C1%2C0%2C5.143V.571A.572.572%2C0%2C0%2C1%2C.571%2C0H5.143a.572.572%2C0%2C0%2C1%2C.571.571V2.285H7.428A.573.573%2C0%2C0%2C1%2C8%2C2.857V7.428A.573.573%2C0%2C0%2C1%2C7.428%2C8Zm-4-2.286V6.857H6.857V3.429H5.714V5.143a.572.572%2C0%2C0%2C1-.571.571ZM1.143%2C1.143V4.571H4.571V1.143Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E");
}
@media (hover: hover) and (pointer: fine) {
  .singleBtn:hover {
    background: #555;
  }
}
.singleBtn-c02 {
  background: #fff;
  color: #222;
}
.singleBtn-c02::after {
  background-image: url(/html/upload/user_data/feature/jremallcoupon/img/icon_circle_arrow.svg);
}
.singleBtn-c02[target=_blank]::after {
  background-image: url(/html/upload/user_data/feature/jremallcoupon/img/icon_blank.svg);
}
@media (hover: hover) and (pointer: fine) {
  .singleBtn-c02:hover {
    background: #edeff0;
  }
}

.singleBtn.ico-posL, .singleBtn.ico-anchor, .singleBtn.ico-upward,
.singleBtn-c02.ico-posL,
.singleBtn-c02.ico-anchor,
.singleBtn-c02.ico-upward {
  padding-right: 5.1282051282vw;
  padding-left: 9.2307692308vw;
}
.singleBtn.ico-posL::after, .singleBtn.ico-anchor::after, .singleBtn.ico-upward::after,
.singleBtn-c02.ico-posL::after,
.singleBtn-c02.ico-anchor::after,
.singleBtn-c02.ico-upward::after {
  left: 3.8461538462vw;
}
@media print, screen and (min-width: 768px) {
  .singleBtn.ico-posL, .singleBtn.ico-anchor, .singleBtn.ico-upward,
  .singleBtn-c02.ico-posL,
  .singleBtn-c02.ico-anchor,
  .singleBtn-c02.ico-upward {
    padding-right: min(2.734375vw, 28px);
    padding-left: min(5.37109375vw, 55px);
  }
  .singleBtn.ico-posL::after, .singleBtn.ico-anchor::after, .singleBtn.ico-upward::after,
  .singleBtn-c02.ico-posL::after,
  .singleBtn-c02.ico-anchor::after,
  .singleBtn-c02.ico-upward::after {
    left: min(1.953125vw, 20px);
  }
}
.singleBtn.ico-anchor::after,
.singleBtn-c02.ico-anchor::after {
  transform: translateY(-50%) rotateZ(90deg);
}
.singleBtn.ico-upward::after,
.singleBtn-c02.ico-upward::after {
  transform: translateY(-50%) rotateZ(-90deg);
}

.content {
  max-width: 980px;
  padding: 0 3.8461538462vw;
  box-sizing: content-box;
}
@media print, screen and (min-width: 768px) {
  .content {
    margin: 0 auto;
    padding: 0 min(5.859375vw, 60px);
  }
}

.regularRange {
    max-width: 780px;
    margin: 0 auto;
}

.campaignHeader-period {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: min(2.66vw, 20px) 0;
  margin-top: min(2.66vw, 20px);
  margin-bottom: min(8vw, 60px);
}
@media print, screen and (min-width: 768px) {
  .campaignHeader-period {
    gap: 15px 0;
    margin-top: min(2.72vw, 30px);
    margin-bottom: min(3.63vw, 40px);
  }
}
.campaignHeader-period .w-space {
  white-space: nowrap;
}
.campaignHeader-period_ttl {
  flex-basis: 34.05%;
}
@media print, screen and (min-width: 768px) {
  .campaignHeader-period_ttl {
    flex-basis: 24.35%;
    min-height: 74px;
  }
}
.campaignHeader-period_ttl:first-of-type {
  background-color: var(--color-key2);
}
/*.campaignHeader-period_ttl.el_campaignFukidashi {
  padding-left: min(1.33vw, 10px);
  padding-right: min(1.33vw, 10px);
  font-size: clamp(0.75rem, -0.13rem + 3.73vw, 1.63rem);
}
@media print, screen and (min-width: 768px) {
  .campaignHeader-period_ttl.el_campaignFukidashi {
    font-size: 1.13em;
  }
}*/

/* 仕分け */
.division {
  margin: 5.1282051282vw 0;
}
.division-szM {
  margin: 7.6923076923vw 0;
}
.division-szL {
  margin: 12.8205128205vw 0;
}
@media print, screen and (min-width: 768px) {
  .division {
    margin: min(2.9296875vw, 30px) 0;
  }
  .division-szM {
    margin: min(3.90625vw, 40px) 0;
  }
  .division-szL {
    margin: min(5.859375vw, 60px) 0;
  }
}

@media print, screen and (min-width: 768px) {
  .singleBtnHolder_item {
    display: inline-block;
    min-width: min(36.1328125vw, 370px);
  }
}

.singleBtn {
  background: #222;
  border-color: #222;
  color: #fff;
}
.singleBtn::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cpath%20d%3D%22M8%2C1%2C8%2C0A8%2C8%2C0%2C1%2C1%2C0%2C8%2C8%2C8%2C0%2C0%2C1%2C8%2C0Z%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M9623-910.25a.5.5%2C0%2C0%2C1-.4-.193.5.5%2C0%2C0%2C1%2C.089-.7l2.866-2.23-2.866-2.23a.5.5%2C0%2C0%2C1-.089-.7.5.5%2C0%2C0%2C1%2C.7-.088l3.375%2C2.625a.5.5%2C0%2C0%2C1%2C.192.395.5.5%2C0%2C0%2C1-.192.395l-3.375%2C2.625A.507.507%2C0%2C0%2C1%2C9623-910.25Z%22%20transform%3D%22translate(-9616.498%20921.375)%22%20fill%3D%22%23222%22%2F%3E%3C%2Fsvg%3E");
}
.singleBtn[target=_blank]::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%228%22%20height%3D%228%22%20viewBox%3D%220%200%208%208%22%3E%3Cpath%20d%3D%22M7.428%2C8H2.857a.573.573%2C0%2C0%2C1-.572-.572V5.714H.571A.572.572%2C0%2C0%2C1%2C0%2C5.143V.571A.572.572%2C0%2C0%2C1%2C.571%2C0H5.143a.572.572%2C0%2C0%2C1%2C.571.571V2.285H7.428A.573.573%2C0%2C0%2C1%2C8%2C2.857V7.428A.573.573%2C0%2C0%2C1%2C7.428%2C8Zm-4-2.286V6.857H6.857V3.429H5.714V5.143a.572.572%2C0%2C0%2C1-.571.571ZM1.143%2C1.143V4.571H4.571V1.143Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E");
}
@media (hover: hover) and (pointer: fine) {
  .singleBtn:hover {
    background: #555;
  }
}

@media print, screen and (min-width: 768px) {
  .singleBtnHolder_item {
    display: inline-block;
    min-width: min(36.1328125vw, 370px);
  }
}

.singleBtn::after {
    background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cpath%20d%3D%22M8%2C1%2C8%2C0A8%2C8%2C0%2C1%2C1%2C0%2C8%2C8%2C8%2C0%2C0%2C1%2C8%2C0Z%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M9623-910.25a.5.5%2C0%2C0%2C1-.4-.193.5.5%2C0%2C0%2C1%2C.089-.7l2.866-2.23-2.866-2.23a.5.5%2C0%2C0%2C1-.089-.7.5.5%2C0%2C0%2C1%2C.7-.088l3.375%2C2.625a.5.5%2C0%2C0%2C1%2C.192.395.5.5%2C0%2C0%2C1-.192.395l-3.375%2C2.625A.507.507%2C0%2C0%2C1%2C9623-910.25Z%22%20transform%3D%22translate(-9616.498%20921.375)%22%20fill%3D%22%23222%22%2F%3E%3C%2Fsvg%3E);
}

.u-txtC {
    text-align: center !important;
}

.u-alert {
    color: #d10000;
}

@media print, screen and (min-width: 768px) {
    .u-fontSz12 {
        font-size: clamp(10px, 1.171875vw, 12px);
    }
}

.campaignHeader-contents {
    margin-top: min(5.33vw, 40px);
    margin-bottom: clamp(1.75rem, 0.23rem + 6.48vw, 4.69rem);
}

.u-pl40 {
    padding-left: 40px !important;
}
.u-pb40 {
    padding-bottom: 40px !important;
}

.u-pr40 {
    padding-right: 40px !important;
}
.u-pt40 {
    padding-top: 40px !important;
}
@media only screen and (max-width: 767px) {
  .u-mt20-sp {
    margin-top: 20px !important;
  }
  .u-mr20-sp {
    margin-right: 20px !important;
  }
  .u-mb20-sp {
    margin-bottom: 20px !important;
  }
  .u-ml20-sp {
    margin-left: 20px !important;
  }
  .u-pt20-sp {
    padding-top: 20px !important;
  }
  .u-pr20-sp {
    padding-right: 20px !important;
  }
  .u-pb20-sp {
    padding-bottom: 20px !important;
  }
  .u-pl20-sp {
    padding-left: 20px !important;
  }
  .u-mt25-sp {
    margin-top: 25px !important;
  }
  .u-mr25-sp {
    margin-right: 25px !important;
  }
  .u-mb25-sp {
    margin-bottom: 25px !important;
  }
  .u-ml25-sp {
    margin-left: 25px !important;
  }
  .u-pt25-sp {
    padding-top: 25px !important;
  }
  .u-pr25-sp {
    padding-right: 25px !important;
  }
  .u-pb25-sp {
    padding-bottom: 25px !important;
  }
  .u-pl25-sp {
    padding-left: 25px !important;
  }
}
/* テキストリンク */
.textLink {
  font-weight: 500;
  color: #0075c2;
  text-decoration: underline;
  text-indent: 0;
  overflow-wrap: anywhere;
}
@media (hover: hover) and (pointer: fine) {
  .textLink:hover {
    text-decoration: none;
  }
}

.textLinkIco-blank, .textLinkIco-blank-posL, .textLinkIco-pdf, .textLinkIco-question {
  display: inline-block;
  position: relative;
  padding-left: 1.7em;
}
.textLinkIco-blank::before, .textLinkIco-blank-posL::before, .textLinkIco-pdf::before, .textLinkIco-question::before {
  display: inline-block;
  position: absolute;
  top: -0.2em;
  left: 0;
  background-repeat: no-repeat;
  content: "";
}
.textLinkIco-arw, .textLinkIco-arw-posL, .textLinkIco-anchor {
  display: inline-block;
  padding-left: 1.7em;
  text-indent: -1.3em;
}
.textLinkIco-arw::before, .textLinkIco-arw-posL::before, .textLinkIco-anchor::before {
  display: inline-block;
  width: 2.5641025641vw;
  height: 2.5641025641vw;
  margin-right: 0.7em;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%228%22%20height%3D%228%22%20viewBox%3D%220%200%208%208%22%3E%3Crect%20width%3D%228%22%20height%3D%228%22%20fill%3D%22none%22%2F%3E%3Cpath%20d%3D%22M9623-908.5a.5.5%2C0%2C0%2C1-.395-.193.5.5%2C0%2C0%2C1%2C.088-.7l3.992-3.105-3.992-3.105a.5.5%2C0%2C0%2C1-.088-.7.5.5%2C0%2C0%2C1%2C.7-.088l4.5%2C3.5a.5.5%2C0%2C0%2C1%2C.193.395.5.5%2C0%2C0%2C1-.193.395l-4.5%2C3.5A.5.5%2C0%2C0%2C1%2C9623-908.5Z%22%20transform%3D%22translate(-9621%20916.5)%22%20fill%3D%22%230075C2%22%2F%3E%3C%2Fsvg%3E");
  background-position: 50% 50%;
  background-size: auto 100%;
  background-repeat: no-repeat;
  content: "";
}
.textLinkIco-blank::before, .textLinkIco-blank-posL::before {
  width: 5.1282051282vw;
  height: 5.1282051282vw;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%228%22%20height%3D%228%22%20viewBox%3D%220%200%208%208%22%3E%3Cpath%20d%3D%22M7.428%2C8H2.857a.573.573%2C0%2C0%2C1-.572-.572V5.714H.571A.572.572%2C0%2C0%2C1%2C0%2C5.143V.571A.572.572%2C0%2C0%2C1%2C.571%2C0H5.143a.572.572%2C0%2C0%2C1%2C.571.571V2.285H7.428A.573.573%2C0%2C0%2C1%2C8%2C2.857V7.428A.573.573%2C0%2C0%2C1%2C7.428%2C8Zm-4-2.286V6.857H6.857V3.429H5.714V5.143a.572.572%2C0%2C0%2C1-.571.571ZM1.143%2C1.143V4.571H4.571V1.143Z%22%20fill%3D%22%230075C2%22%2F%3E%3C%2Fsvg%3E");
  background-position: 50% 50%;
  background-size: 3.0769230769vw auto;
}
.textLinkIco-anchor::before {
  transform: rotate(90deg);
}
.textLinkIco-pdf::before, .textLinkIco-question::before {
  width: 1.25em;
  height: 1.25em;
  background-size: auto 100%;
}
.textLinkIco-pdf::before {
  top: 0.2em;
  background-image: url(/html/upload/user_data/feature/jremallcoupon/img/icon_pdf.svg);
}
.textLinkIco-question {
  padding-left: 1.7em;
}
.textLinkIco-question::before {
  top: 0.2em;
  background-image: url(/html/upload/user_data/feature/jremallcoupon/img/icon_question.svg);
}
@media print, screen and (min-width: 767px) {
  .textLinkIco-arw, .textLinkIco-arw-posL, .textLinkIco-blank, .textLinkIco-blank-posL, .textLinkIco-pdf, .textLinkIco-question {
    padding-left: min(2.44140625vw, 25px);
  }
  .textLinkIco-arw, .textLinkIco-arw-posL {
    text-indent: max(-2.24609375vw, -23px);
  }
  .textLinkIco-arw::before, .textLinkIco-arw-posL::before {
    width: min(1.3671875vw, 14px);
    height: min(1.3671875vw, 14px);
    margin-right: min(0.78125vw, 8px);
    background-size: min(0.9765625vw, 10px) auto;
  }
  .textLinkIco-blank::before, .textLinkIco-blank-posL::before {
    top: 0;
    width: min(1.66015625vw, 17px);
    height: min(1.66015625vw, 17px);
    background-size: min(1.26953125vw, 13px) auto;
  }
  .textLinkIco-anchor::before {
    width: min(0.9765625vw, 10px);
    height: min(0.9765625vw, 10px);
  }
}

/* ボタン
------------------------------ */
/* 角丸単体 */
.singleBtn-c02, .singleBtn {
  display: inline-block;
  width: 100%;
  padding: 3.0769230769vw 9.2307692308vw 3.0769230769vw 5.1282051282vw;
  border: 1px solid;
  border-radius: 9999px;
  box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.25);
  text-align: center;
  font-size: clamp(13px, 4.1025641026vw, 31px);
  font-weight: 500;
  line-height: 1.6;
  transition: background-color 0.3s ease;
  position: relative;
    box-sizing: border-box;
}
.singleBtn-c02::after, .singleBtn::after {
  position: absolute;
  top: 50%;
  right: 3.8461538462vw;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  transform: translateY(-50%);
  display: block;
  width: 3.5897435897vw;
  height: 3.5897435897vw;
  background-size: cover;
  content: "";
}
[target=_blank].singleBtn-c02::after, [target=_blank].singleBtn::after {
  background-size: 3.0769230769vw auto;
}
@media print, screen and (min-width: 767px) {
  .singleBtn-c02, .singleBtn {
    padding: min(1.26953125vw, 13px) min(5.37109375vw, 55px) min(1.3671875vw, 14px) min(2.734375vw, 28px);
    font-size: clamp(15px, 1.953125vw, 20px);
  }
  .singleBtn-c02::after, .singleBtn::after {
    right: min(1.953125vw, 20px);
    width: min(1.7578125vw, 18px);
    height: min(1.7578125vw, 18px);
    background-position: 50% 50%;
  }
  [target=_blank].singleBtn-c02::after, [target=_blank].singleBtn::after {
    background-size: min(1.171875vw, 12px) auto;
  }
}

@media print, screen and (min-width: 767px) {
  .singleBtnHolder_item {
    display: inline-block;
    min-width: min(36.1328125vw, 370px);
  }
}

.singleBtn {
  background: #222;
  border-color: #222;
  color: #fff;
}
.singleBtn::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cpath%20d%3D%22M8%2C1%2C8%2C0A8%2C8%2C0%2C1%2C1%2C0%2C8%2C8%2C8%2C0%2C0%2C1%2C8%2C0Z%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M9623-910.25a.5.5%2C0%2C0%2C1-.4-.193.5.5%2C0%2C0%2C1%2C.089-.7l2.866-2.23-2.866-2.23a.5.5%2C0%2C0%2C1-.089-.7.5.5%2C0%2C0%2C1%2C.7-.088l3.375%2C2.625a.5.5%2C0%2C0%2C1%2C.192.395.5.5%2C0%2C0%2C1-.192.395l-3.375%2C2.625A.507.507%2C0%2C0%2C1%2C9623-910.25Z%22%20transform%3D%22translate(-9616.498%20921.375)%22%20fill%3D%22%23222%22%2F%3E%3C%2Fsvg%3E");
}
.singleBtn[target=_blank]::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%228%22%20height%3D%228%22%20viewBox%3D%220%200%208%208%22%3E%3Cpath%20d%3D%22M7.428%2C8H2.857a.573.573%2C0%2C0%2C1-.572-.572V5.714H.571A.572.572%2C0%2C0%2C1%2C0%2C5.143V.571A.572.572%2C0%2C0%2C1%2C.571%2C0H5.143a.572.572%2C0%2C0%2C1%2C.571.571V2.285H7.428A.573.573%2C0%2C0%2C1%2C8%2C2.857V7.428A.573.573%2C0%2C0%2C1%2C7.428%2C8Zm-4-2.286V6.857H6.857V3.429H5.714V5.143a.572.572%2C0%2C0%2C1-.571.571ZM1.143%2C1.143V4.571H4.571V1.143Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E");
}
@media (hover: hover) and (pointer: fine) {
  .singleBtn:hover {
    background: #555;
  }
}
.singleBtn-c02 {
  background: #fff;
  color: #222;
}
.singleBtn-c02::after {
  background-image: url(/html/upload/user_data/feature/jremallcoupon/img/icon_circle_arrow.svg);
}
.singleBtn-c02[target=_blank]::after {
  background-image: url(/html/upload/user_data/feature/jremallcoupon/img/icon_blank.svg);
}
@media (hover: hover) and (pointer: fine) {
  .singleBtn-c02:hover {
    background: #edeff0;
  }
}

.singleBtn.ico-posL, .singleBtn.ico-anchor, .singleBtn.ico-upward,
.singleBtn-c02.ico-posL,
.singleBtn-c02.ico-anchor,
.singleBtn-c02.ico-upward {
  padding-right: 5.1282051282vw;
  padding-left: 9.2307692308vw;
}
.singleBtn.ico-posL::after, .singleBtn.ico-anchor::after, .singleBtn.ico-upward::after,
.singleBtn-c02.ico-posL::after,
.singleBtn-c02.ico-anchor::after,
.singleBtn-c02.ico-upward::after {
  left: 3.8461538462vw;
}
@media print, screen and (min-width: 767px) {
  .singleBtn.ico-posL, .singleBtn.ico-anchor, .singleBtn.ico-upward,
  .singleBtn-c02.ico-posL,
  .singleBtn-c02.ico-anchor,
  .singleBtn-c02.ico-upward {
    padding-right: min(2.734375vw, 28px);
    padding-left: min(5.37109375vw, 55px);
  }
  .singleBtn.ico-posL::after, .singleBtn.ico-anchor::after, .singleBtn.ico-upward::after,
  .singleBtn-c02.ico-posL::after,
  .singleBtn-c02.ico-anchor::after,
  .singleBtn-c02.ico-upward::after {
    left: min(1.953125vw, 20px);
  }
}
.singleBtn.ico-anchor::after,
.singleBtn-c02.ico-anchor::after {
  transform: translateY(-50%) rotateZ(90deg);
}
.singleBtn.ico-upward::after,
.singleBtn-c02.ico-upward::after {
  transform: translateY(-50%) rotateZ(-90deg);
}

/* タイルボタン */
@media only screen and (max-width: 767px) {
  .tileBtnHolder_item:not(:first-child) {
    margin-top: 5.1282051282vw;
  }
}
@media print, screen and (min-width: 767px) {
  .tileBtnHolder {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 0 auto;
  }
  .tileBtnHolder_item {
    width: calc(50% - min(2.5641025641%, 20px));
  }
  .tileBtnHolder_item:nth-of-type(even) {
    margin-left: min(5.1282051282%, 40px);
  }
  .tileBtnHolder_item:nth-of-type(n+3) {
    margin-top: min(5.1282051282%, 40px);
  }
}

.tileBtn {
  display: block;
  width: 100%;
  padding: 6.1538461538vw 0 7.1794871795vw;
  border: 1px solid #e8e8e8;
  border-radius: 20px;
  background: #fff;
  text-align: center;
  color: #222;
}
.tileBtn_img {
  width: 46.1538461538vw;
  margin: 0 auto 1.7948717949vw;
}
.tileBtn_txt {
  padding-right: 5.641025641vw;
  font-size: clamp(15px, 4.6153846154vw, 35px);
  font-weight: 600;
  line-height: 1.6;
}
.tileBtn_txt::after {
  right: 0;
  width: clamp(10px, 3.5897435897vw, 25px);
  height: clamp(10px, 3.5897435897vw, 25px);
  margin-top: 2px;
}
@media print, screen and (min-width: 767px) {
  .tileBtn {
    padding: min(3.90625vw, 40px) 0 min(5.37109375vw, 55px);
  }
  .tileBtn_img {
    width: min(23.4375vw, 240px);
    margin-bottom: min(1.953125vw, 20px);
  }
  .tileBtn_txt {
    padding-right: min(2.44140625vw, 25px);
    font-size: clamp(18px, 2.34375vw, 24px);
  }
  .tileBtn_txt::after {
    width: clamp(12px, 1.7578125vw, 18px);
    height: clamp(12px, 1.7578125vw, 18px);
  }
}
@media (hover: hover) and (pointer: fine) {
  .tileBtn {
    transition: 0.3s ease;
  }
  .tileBtn:hover {
    box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.16);
    text-decoration: underline;
  }
}

/* マルチボタン */
.multiBtnHolder {
  margin-bottom: 1px;
}
.multiBtnHolder > *:not(:first-child) {
  margin-top: -1px;
}

.multiBtn {
  display: inline-flex;
  align-items: center;
  width: 100%;
  min-height: 20.2564102564vw;
  padding: 0 10.7692307692vw 0 5.1282051282vw;
  background: #fff;
  box-shadow: 0 0 0 1px rgb(232, 232, 232);
  font-size: clamp(13px, 4.1025641026vw, 31px);
  font-weight: 500;
  color: #222;
  line-height: 1.6;
}
.multiBtn sup {
  position: absolute;
  font-size: clamp(12px, 3.0769230769vw, 23px);
  font-weight: 400;
}
.multiBtn::after {
  right: 3.8461538462vw;
  width: 3.5897435897vw;
  height: 3.5897435897vw;
}
.multiBtn_img {
  display: block;
  width: clamp(39px, 12.3076923077vw, 92px);
  height: auto;
  margin-right: 12px;
}
.multiBtn[target=_blank] {
  position: relative;
}
.multiBtn[target=_blank]::after {
  position: absolute;
  background: url(/html/upload/user_data/feature/jremallcoupon/img/icon_blank.svg) no-repeat 50% 50%;
  background-size: 3.0769230769vw auto;
  content: "";
}
.multiBtn[data-size=large] {
  padding: 4.6153846154vw 7.6923076923vw 4.6153846154vw 5.1282051282vw;
  font-size: clamp(15px, 4.6153846154vw, 35px);
  font-weight: 600;
  line-height: 1.4;
}
.multiBtn[data-size=large]::after {
  right: 2.5641025641vw;
}
.multiBtn[data-size=large] .multiBtn_img {
  width: 12.8205128205vw;
  margin-right: 5.1282051282vw;
}
@media print, screen and (min-width: 767px) {
  .multiBtn {
    min-height: clamp(65px, 8.7890625vw, 90px);
    padding: 0 min(3.90625vw, 40px) 0 min(1.953125vw, 20px);
    font-size: clamp(12px, 1.5625vw, 16px);
  }
  .multiBtn sup {
    margin-left: 4px;
    font-size: clamp(10px, 1.171875vw, 12px);
  }
  .multiBtn::after {
    right: min(1.953125vw, 20px);
    width: clamp(11px, 1.3671875vw, 14px);
    height: clamp(11px, 1.3671875vw, 14px);
  }
  .multiBtn_img {
    width: min(4.6875vw, 48px);
  }
  .multiBtn[target=_blank]::after {
    background-size: min(1.171875vw, 12px) auto;
  }
  .multiBtn[data-size=large] {
    min-height: clamp(109px, 14.453125vw, 148px);
    padding: min(1.46484375vw, 15px) min(7.8125vw, 80px);
    font-size: clamp(19px, 2.5390625vw, 26px);
  }
  .multiBtn[data-size=large]::after {
    right: min(2.9296875vw, 30px);
    width: min(1.7578125vw, 18px);
    height: min(1.7578125vw, 18px);
  }
  .multiBtn[data-size=large] .multiBtn_img {
    width: min(11.328125vw, 116px);
    margin-right: min(5.859375vw, 60px);
  }
}
@media (hover: hover) and (pointer: fine) {
  .multiBtn {
    transition: 0.3s ease;
  }
  .multiBtn:hover {
    z-index: 1;
    border-color: #fff;
    box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.1);
    text-decoration: underline;
  }
}

/* 多様ボタン */
.variousBtn {
  display: inline-flex;
  flex-direction: row-reverse;
  align-items: center;
  width: 100%;
  height: 100%;
  min-height: 22.0512820513vw;
  padding: 2.5641025641vw 10.7692307692vw 2.5641025641vw 5.1282051282vw;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 0 0 1px rgb(232, 232, 232);
  font-size: clamp(13px, 4.1025641026vw, 31px);
  font-weight: 500;
  color: #222;
  line-height: 1.6;
  position: relative;
}
.variousBtn::after {
  position: absolute;
  top: 50%;
  right: 5.1282051282vw;
  transform: translateY(-50%);
  display: block;
  width: 3.5897435897vw;
  height: 3.5897435897vw;
  background: url(/html/upload/user_data/feature/jremallcoupon/img/icon_circle_arrow.svg) no-repeat 0 0;
  background-size: cover;
  content: "";
}
.variousBtn[target=_blank]::after {
  background-image: url(/html/upload/user_data/feature/jremallcoupon/img/icon_blank.svg);
  background-size: 3.0769230769vw auto;
  background-position: 50% 50%;
}
.variousBtn_note {
  flex: 1;
}
.variousBtn_txt {
  font-size: clamp(12px, 3.0769230769vw, 23px);
  font-weight: 400;
}
.variousBtn_img {
  width: 12.3076923077vw;
  height: auto;
  margin-right: 3.0769230769vw;
}
@media print, screen and (min-width: 767px) {
  .variousBtn {
    min-height: min(8.3984375vw, 86px);
    padding: min(0.9765625vw, 20px) min(4.1015625vw, 42px) min(0.9765625vw, 20px) min(1.953125vw, 20px);
    font-size: clamp(12px, 1.5625vw, 16px);
  }
  .variousBtn::after {
    right: min(1.953125vw, 20px);
    width: min(1.3671875vw, 14px);
    height: min(1.3671875vw, 14px);
  }
  .variousBtn[target=_blank]::after {
    background-size: min(1.171875vw, 12px) auto;
  }
  .variousBtn_txt {
    font-size: clamp(10px, 1.171875vw, 12px);
  }
  .variousBtn_img {
    width: min(4.6875vw, 60px);
    margin-right: min(1.171875vw, 12px);
  }
}
@media (hover: hover) and (pointer: fine) {
  .variousBtn {
    transition: 0.3s ease;
  }
  .variousBtn:hover {
    box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.16);
  }
}
.variousBtn.ico-posL {
  padding-right: 5.1282051282vw;
  padding-left: 10.7692307692vw;
}
.variousBtn.ico-posL::after {
  left: 5.1282051282vw;
}
@media print, screen and (min-width: 767px) {
  .variousBtn.ico-posL {
    padding-right: min(1.953125vw, 20px);
    padding-left: min(4.1015625vw, 42px);
  }
  .variousBtn.ico-posL::after {
    left: min(1.953125vw, 20px);
  }
}

/* 角丸化マルチボタン用リスト
------------------------------ */
@media only screen and (max-width: 767px) {
  .groupingList {
    overflow: hidden;
    border-radius: 10px;
    box-shadow: 0 0 0 1px rgb(232, 232, 232);
  }
}
@media print, screen and (min-width: 767px) {
  .groupingList {
    display: flex;
    flex-wrap: wrap;
  }
  .groupingList .groupingList_item {
    width: calc((100% - 2px) / 3);
  }
}

/* PC時の角丸化マルチボタン調整用
------------------------------ */
@media print, screen and (min-width: 768px) {
  .groupingList .radiusRL {
    border-radius: 10px;
  }
  .groupingList .radiusT {
    border-radius: 10px 10px 0 0;
  }
  .groupingList .radiusB {
    border-radius: 0 0 10px 10px;
  }
  .groupingList .radiusLT {
    border-radius: 10px 0 0 0;
  }
  .groupingList .radiusRT {
    border-radius: 0 10px 0 0;
  }
  .groupingList .radiusLB {
    border-radius: 0 0 0 10px;
  }
  .groupingList .radiusRB {
    border-radius: 0 0 10px 0;
  }
  .groupingList .radiusL {
    border-radius: 10px 0 0 10px;
  }
  .groupingList .radiusR {
    border-radius: 0 10px 10px 0;
  }
}
/* アコーディオンアイコン
------------------------------ */
@media only screen and (max-width: 767px) {
  .spToggleIcon {
    position: relative;
  }
  .spToggleIcon::after {
    position: absolute;
    right: 0.8em;
    top: 0;
    bottom: 0;
    width: 4.1025641026vw;
    height: 4.1025641026vw;
    margin: auto;
    background: url(/html/upload/user_data/feature/jremallcoupon/img/icon_circle_plus.svg) no-repeat 0 0;
    background-size: contain;
    content: "";
  }
  .spToggleIcon.is-open::after {
    background-image: url(/html/upload/user_data/feature/jremallcoupon/img/icon_circle_minus.svg);
  }
}

@media only screen and (max-width: 767px) {
    .ec-featureRole {
        padding-left: 0;
        padding-right: 0;
    }
}

/*# sourceMappingURL=style.css.map */