@charset "UTF-8";
/*
Copyright (c) 2023 Daniel Eden
*/
.p-newcampaigncontentsbody p:not(:last-child) {
  margin-bottom: auto;
}
/*** mainVisual ***/
.t-general .o-main{
  padding-top: 0!important;
}
#mainVisual {
  position: relative;
  width: 100vw;
  min-width: 1024px;
  padding: 77px calc(50vw - 500px);
  margin-left: calc(500px - 50vw);
  min-height: 30vw;
  background: linear-gradient(to top,#d7f1fa 28%,#d7f1fa 28%,#d7f1fa 28%,#f3f9fe 25%);
}
#mainVisual .mainVisual_image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(/-/media/aeoncard/benefits/images/kv_pc.png);
  background-repeat: no-repeat;
  background-size: 60% auto;
  background-position: center center;
}
@media screen and (max-width: 767px) {
  #mainVisual {
    min-height: 336px;
  }
  #mainVisual .mainVisual_image {
    background-image: url(/-/media/aeoncard/benefits/images/kv_sp.png);
    background-size: 100% auto;
  }
  .p-newcampaigncontentsbody_inner {
    margin-top: 0;
}
}
/*** mainVisual ***/

/*** slick ***/
#teaser {
  background-color: #FAFAF3;
  position: relative;
  width: 100vw;
  min-width: 1024px;
  padding: 40px 0 70px;
  margin-left: calc(500px - 50vw);
}
#teaser .teaserClass a{
  border-radius: 15px;
  display: block;
}
#teaser .teaserClass a img{
  width: 100%;
  height: 18.75vw;
}
.slick-initialized .slick-slide {
  padding: 0 10px;
}
@media screen and (max-width: 768px) {
  #teaser .teaserClass a img{
    height: 180px;
  }
  .slick-initialized .slick-slide {
    padding: 0 5px;
  }
}
/*** slick ***/

/*** h1~h5 ***/
.hdL{
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  color: #1A1A1A;
  line-height: 1.5;
  margin:0 0 30px 0;
}
.hdL span{
  font-weight: bold;
  padding: 0 25px;
  position: relative;
  display: inline-block;
}
.hdL span:before,.hdL span:after{
  position: absolute;
  left: 0;
  top: 0;
  content: '';
  width: 18px;
  height: 25px;
  background: url(../images/title_icon.svg)no-repeat left center;
}
.hdL span:after{
  transform: rotateY(180deg);
  left: unset;
  right: 3px;
}

.hdL_pink{
  color: #B60081;
}
.hdL_pink span:before,.hdL_pink span:after{
  background: url(../images/title_icon_pink.svg)no-repeat left center;
}
.hdK{
  text-align: center;
  font-size: 28px;
  font-weight: bold;
  color: #B60081;
  line-height: 1.42;
}
.hdK01{
  margin:0 0 40px 0;
}
.hdIcon{
  text-align: center;
  margin-bottom: 15px;
}
.hdM{
  text-align: center;
  font-size: 14px;
  color: #211815;
  line-height: 2;
  margin:0 0 15px 0;
  letter-spacing: 0.04rem;
}
.hdS{
  text-align: center;
  font-size: 12px;
  color: #666;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .hdL{
    font-size: 16px;
    margin:0 0 20px 0;
  }
  .hdL span{
    padding: 0 20px;
  }
  .hdL span:before,.hdL span:after{
    width: 12px;
    height: 18px;
    background-size: 100% auto;
  }

  .hdK{
    font-size: 21px;
    line-height: 1.45;
  }
  .hdK01{
    margin:0 0 30px 0;
  }
  .hdIcon{
    margin-bottom: 15px;
  }
  .hdIcon img{
    max-width: 60px;
    margin: 0 auto;
  }
  .hdM{
    line-height: 1.57;
    margin:0 0 10px 0;
  }
  .hdS{
    font-size: 12px;
    line-height: 1.5;
  }
}


/*** h1~h5 ***/

/*** anchorWrap ***/
#anchorWrap{
  padding: 25px 0 0;
}
#anchorWrap ul{
  list-style: none;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#anchorWrap ul li{
  flex: 0 0 31.3%;
  background: linear-gradient(to right, #F7EAF2, #F7EAF2, #F6DFEF);
  border-radius: 15px;
  box-shadow:  0 0 15px rgba(0, 0, 0, 0.1);
}
#anchorWrap ul li a{
  display: block;
  padding: 72px 30px 49px;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  color: #B60081;
  line-height: 1.31;
  position: relative;
}
#anchorWrap ul li a:before{
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: 15px;
  content: '';
  background: url(/-/media/aeoncard/assets/images/icon/arrow-right.svg) no-repeat center center;
  background-size: 100% auto;
  transform: rotate(90deg);
  width: 35px;
  height: 19px;
}
#anchorWrap ul li a:after{
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: 20px;
  content: '';
  background: url(/-/media/aeoncard/benefits/images/anchor_01.svg) no-repeat center center;
  background-size: 100% auto;
  width: 43px;
  height: 42px;
}
#anchorWrap ul li a.member_anchor:after{
  background: url(/-/media/aeoncard/benefits/images/anchor_02.svg) no-repeat center center;
  width: 46px;
  height: 29px;
  top: 27px;
  background-size: 100% auto;
}
#anchorWrap ul li a.new_anchor:after{
  background: url(/-/media/aeoncard/benefits/images/anchor_03.svg) no-repeat center center;
  width: 44px;
  height: 44px;
  top: 20px;
  background-size: 100% auto;
}
#anchorWrap ul li a:hover{
  transition: all 0.5s;
}
@media screen and (max-width: 767px) {
  #anchorWrap{
    padding: 23px 0 10px;
  }
#anchorWrap ul li{
  flex: 0 0 31.3%;
  box-shadow:  0 0 10px rgba(0, 0, 0, 0.1);
}
#anchorWrap ul li a{
  padding: 60px 10px 36px;
  font-size: 10px;
  line-height: 1.6;
  letter-spacing: -0.03em;
}
#anchorWrap ul li a:before{
  width: 20px;
  height: 13px;
}
#anchorWrap ul li a:after{
  top: 17px;
  width: 34px;
  height: 32px;
}
#anchorWrap ul li a.member_anchor:after{
  top: 18px;
}
#anchorWrap ul li a.new_anchor:after{
  width: 35px;
  height: 35px;
  top: 16px;
}
}
/*** anchorWrap***/


/*** calendarWrap***/
#calendarWrap{
  max-width: 706px;
  margin: 0 auto;
  padding: 70px 0 0;
}
.calendarSub{
  text-align: center;
  color: #fff;
  background-color: #415093;
  border-radius: 15px 15px 0 0;
  font-weight: bold;
  font-size: 19px;
  padding: 15px 0;
  margin: 0;
}
.calendarTable{
  padding-top: 8px;
}
.calendarTable table{
  width: 100%;
  border-collapse: unset;
  border-spacing: 0;
}
.calendarTable table tr{
}
.calendarTable table tr td{
  background-color: #FAF9F5;
  position: relative;
  border-right: 8px solid #fff;
  border-bottom: 8px solid #fff;
  padding: 53px 0;
  width: 13.315%;
}
.calendarTable table tr td:last-child{
  border-right: 0;
}
.calendarTable table tr:last-child td:last-child{
  border-right: 8px solid #fff;
}
.calendarTable table tr td span{
  position: absolute;
  left: 10px;
  top: 10px;
  display: inline-block;
  color: #666666;
  font-size: 24px;
  font-weight: bold;
  line-height: 1;
}
.calendarTable table tr td.number{
  background-color: #FFF5FD;
}
.calendarTable table tr td.number span{
  color: #B60081;
}
.calendarTable table tr td.number span.fz20{
  font-size: 20px;
}
.calendarLink{
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.calendarLink:hover{
  transition: all 0.5s;
}
.calendarLink .ul{
  text-align: center;
  margin-top: 15px;
}
.calendarLink .ul p{
  display: inline-block;
  margin: 0;
}

.calendarLink .ul p img {
  max-width: 22px;
}

.calendarLink04 .ul{
  padding: 0 22px;
  margin-top: 39px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.calendarLink04 .ul p{
  flex: 0 0 50%;
}
.calendarLink04 .ul p:nth-child(3),.calendarLink04 .ul p:nth-child(4){
  margin-top: 4px;
}
.calendarList{
  display: none;
  padding: 0;
  position: relative;
  border-radius: 15px;
}
.calendarList h2{
  background-color: #F0F0F0;
  margin: 0;
  text-align: right;
  padding: 34px 100px 33px 0;
  color: #B60081;
  font-weight: bold;
  font-size: 22px;
}
.calendarDl{
  padding: 30px;
}
.calendarDl dl{
	display: table;
	width: 100%;
  position: relative;
  margin-bottom: 30px;
}
.calendarDl dl dt,.calendarDl dl dd{
	display: table-cell;
  vertical-align: middle;
}
.calendarDl dl dt{
	width: 90px;
}
.calendarDl dl dt img{
  width: 100%;
}
.calendarDl dl dd{
  width: calc(540px - 90px);
	padding-left: 20px;
  padding-inline: 20px 60px;
  box-sizing: border-box;
}
.calendarDl dl dd p{
  color: #000000;
  font-size: 16px;
  margin: 0;
}

.calendarDl dl dd p span.txt-color-red {
  color: #eb0015;
  display: block;
  margin-top: 5px;
  font-size: 0.9em;
  font-weight: bold;
  text-indent: -0.9em;
  padding-left: 0.9em;
}
.calendarDl dl dd a{
	display: inline-block;
  position: absolute;
  right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.calendarul{
  text-align: left;
  display: flex;
  padding: 0 8px;
  flex-wrap: wrap;
  justify-content: left;
}
.calendarLink .calendarul p{
  flex: 0 0 30.33%;
  text-align: center;
  margin: 1px;
}
@media screen and (max-width: 768px) {
  #calendarWrap{
    padding: 110px 0 0;
    background: url(/-/media/aeoncard/benefits/images/calendar_sp.svg)no-repeat center top 40px;
    background-size: 60px auto;
  }
  .calendarSub{
    font-size: 16px;
    padding: 8px 0;
  }
  .calendarTable{
    padding-top: 4px;
  }
  .calendarTable table tr td{
    border-right: 4px solid #fff;
    border-bottom: 4px solid #fff;
    padding: 26px 0;
  }
  .calendarTable table tr td span{
    left: 5px;
    top: 5px;
    font-size: 11px;
  }
  .calendarTable table tr td.number span.fz20{
    font-size: 10px;
  }
  .calendarTable table tr:last-child td:last-child{
    border-right: 4px solid #fff;
  }
  .calendarLink .ul{
    margin-top: 10px;
  }
  .calendarLink .ul p {
    text-indent: -0.1em;
    line-height: 1;
}
  .calendarLink .ul p img{
    width: 11px;
    height: 11px;
  }
  .calendarLink04 .ul{
    padding: 0 10px;
    margin-top: 15px;
  }
  .calendarLink04 .ul p:nth-child(3),.calendarLink04 .ul p:nth-child(4){
    margin-top: 0;
  }

  .calendarList h2{
    padding: 16px 65px 15px 0;
    font-size: 18px;
  }
  .calendarDl{
    padding:20px 15px;
  }
  .calendarDl dl{
    margin-bottom: 20px;
  }
  .calendarDl dl dt{
    width: 45px;
  }
  .calendarDl dl dd{
    width: calc(310px - 45px);
    padding: 0 45px 0 10px;
  }
  .calendarDl dl dd p{
    font-size: 12px;
  }
  .calendarDl dl dd a img{
    width: 35px;
  }
  .calendarLink .calendarul p{
    flex: 0 0 27.33%;
    height: 11px;
  }
  .calendarul{
    padding: 0 4px;
  }
}
/*** calendarWrap***/

/*** calendarDetail***/
#calendarDetail{
  width: 100vw;
  min-width: 1024px;
  padding: 40px calc(50vw - 500px) 70px;
  margin-left: calc(500px - 50vw);
  margin-top: 70px;
  background-color: #FFF5FD;
}
.calendarRist{
  padding: 30px;
  background-color: #fff;
  border-radius: 15px;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
  margin-top: 30px;
  position: relative;
  overflow: hidden;
}
.calendarRist dl{
	display: table;
	width: 100%;
  margin: 0;
}
.calendarRist dl dt,.calendarRist dl dd{
	display: table-cell;
  vertical-align: top;
}
.calendarRist dl dt{
	width: 328px;
}
.calendarRist dl dt img{
  width: 100%;
}
.calendarRist dl dd{
	padding-left: 30px;
  box-sizing: border-box;
  width: calc(100% - 328px);
}

.qx-calendarRist-disabled:before {
  content: '';
  display: block;
  background-color: rgba(255,255,255,.8);
  position: absolute;
  top:0;
  left:0;
  width: 100%;
  height: 100%;
}

.qx-calendarTxt-disabled {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  font-weight: 600;
  font-size: 16px;
  width: 100%;
  padding-inline: 1em;
}

.dlDetail .icon{
  margin: 0;
}
.dlDetail .icon span{
	display: inline-block;
  color: #415093;
  border: 1px solid #415093;
  border-radius: 3px;
  background-color: #F0F0F0;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.42;
  padding: 1px 10px;
}
.dlDetail .icon span + span{
  margin-left: 10px;
}
.dlDetail .title{
  color: #415093;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
  padding: 15px 0;
  margin:0;
}
.dlDetail .info{
  color: #000;
  font-size: 16px;
  line-height: 1.375;
  margin: 0;
}
.dlDetail .note{
  margin: 15px 0;
  list-style: none;
}
.dlDetail .note li{
  color: #666;
  font-size: 12px;
  line-height: 1.5;
  text-indent: -1em;
  padding-left: 1em;
}

.btn{
  text-align: right;
  padding-top: 30px;
}
.btn a {
  display: inline-block;
  vertical-align: middle;
  color: #B60A81;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.57;
  position: relative;
  padding: 0;
}

.btn a:not([target="_blank"]) {
  padding: 0 20px 0 0;
}

.btn a .a-icon-blank {
  margin-left: -8px;
}

.btn a:not([target="_blank"]):before {
  position: absolute;
  right: -2px;
  top: -2px;
  content: '';
  background-image: url(/-/media/aeoncard/assets/images/icon/arrow-right.svg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: right center;
  width: 25px;
  height: 25px;
}

.btn .blankbtn:before{
  background-image: url(/-/media/aeoncard/assets/images/icon/blank.svg);
}

.btn a.calendarHe:before{
  transform: rotate(-90deg);
  background-position: left center;
  right: unset;
  left: -2px;
}
.btn a.calendarHe{
  margin-right: 50px;
  padding: 0 0 0 20px;
}
.a-button_long{
  max-width: 455px;
}

.a-button-style {
  max-width: 500px;
}

#newBtn .m-buttoncontainer_primary {
  flex: 0 1 500px;
}
#newBtn1 .m-buttoncontainer_primary {
  flex: 0 1 500px;
}
.a-button_long>span {
   max-width: 100%;
}
@media screen and (max-width: 768px) {
  #calendarDetail{
    margin-top: 30px;
  }
  .calendarRist{
    padding:15px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    margin-top: 25px;
  }
  .calendarRist dl{
    display: block;
  }
  .calendarRist dl dt,.calendarRist dl dd{
    display: block;
  }
  .calendarRist dl dt{
    width: 100%;
  }
  .calendarRist dl dd{
    padding-left: 0;
    padding-top: 20px;
    width: 100%;
    margin: 0;
  }

  .qx-calendarTxt-disabled {
    font-size: 13px;
  }
  .btn a.calendarHe{
    font-size: 13px;
    margin-right: 20px;
  }
  .dlDetail .icon span{
    font-size: 12px;
    line-height: 1.6;
  }
  .dlDetail .title{
    font-size: 16px;
    line-height: 1.5;
    padding: 15px 0 10px;
  }
  .dlDetail .info{
    font-size: 14px;
    line-height: 1.42;
  }
  .dlDetail .note{
    margin: 15px 0;
    list-style: none;
  }
  .dlDetail .note li{
    font-size: 10px;
    line-height: 1.8;
  }
  .btn{
    padding-top:15px;
  }
  .a-button_long{
    max-width: 358px;
    text-align: center;
    height: 76px;
    border-radius: 38px;
    line-height: 1.25;
  }
  #newBtn{
    margin-bottom: 0;
  }
  #newBtn .m-buttoncontainer_primary {
    flex: 0 1 358px;
  }
  #newBtn1{
    margin-bottom: 0;
  }
  #newBtn1 .m-buttoncontainer_primary {
    flex: 0 1 358px;
  }
}
/*** calendarDetail***/


/*** memberWrap***/
#memberWrap{
  padding: 70px 0 40px;
}
.numberBox{
  border-radius: 20px;
  border: 1px solid #EBEBEB;
  padding: 40px 60px;
  margin-bottom: 30px;
}
.numberBox .title{
  text-align: center;
  margin: 0 auto;
  max-width: 250px;
  padding-bottom: 30px;
}
.numberBox .title img{
  width: 100%;
}
.numberItem dl{
	display: table;
	width: 100%;
}
.numberItem dl dt,.numberItem dl dd{
	display: table-cell;
  vertical-align: top;
}
.numberItem dl dt{
	width: 158px;
}
.numberItem dl dt img{
  width: 100%;
}
.numberItem dl dt p{
  font-size: 12px;
  color: #666;
  padding-top: 5px;
}
.numberItem dl dd{
	padding-left: 17px;
  box-sizing: border-box;
}
.numberItem dl dd p:first-child{
  color: #B60081;
  font-weight: bold;
  font-size: 18px;
  margin-bottom: 10px;
}
.numberItem dl dd p:last-child{
  font-size: 14px;
  line-height: 1.57;
}
.numberItem dl dd p.orange{
  color: #FF6600;
}
.numberItem dl dd p.color1a{
  color: #1a1a1a;
}
.numberItem{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.numberItem dl{
  flex:0 0 47.836%;
}
.numberSub{
  text-align: center;
  font-weight: bold;
  font-size: 20px;
  color: #1A1A1A;
  line-height: 1.5;
}
.numberList{
	display: flex;
	align-items: center;
	justify-content: space-between;
  margin-bottom: 20px;
}
.numberLeft{
  flex: 0 0 63.212%;
}
.numberRight{
  flex: 0 0 33.6%;
}
.numberRight img,.box02 p img{
  width: 100%;
}
.box01{
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #EBEBEB;
  margin: 0 0 15px 0;
  padding: 0 0 15px 0;
}
.p-newcampaigncontentsbody .box01 p{
  margin: 0;
}
.box01 .wallet,.box01 .store{
  display: flex;
  align-items: center;
}
.box01 .wallet span,.box01 .store span{
  display: inline-block;
  margin-left: 15px;
  text-align: center;
}
.box01 .wallet{
  font-weight: bold;
  font-size: 16px;
  margin: 0;
}
.box01 .store{
  font-size: 14px;
}
.box02{
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.box02 p{
  flex: 0 0 166px;
  padding: 0 20px;
}
.box02 p:first-child{
  margin: 0;
}
.box02 p span{
  display: block;
  font-size: 14px;
  margin-bottom: 5px;
}

@media screen and (max-width: 768px) {
  #memberWrap{
    padding: 40px 0 20px;
  }
  .numberBox{
    border-radius: 15px;
    padding: 25px 15px;
    margin-bottom: 20px;
  }
  .numberBox .title{
    max-width: 194px;
    padding-bottom: 14px;
  }
  .numberItem dl dt{
    width: 133px;
  }
  .numberItem dl dd{
    padding-left: 15px;
  }
  .numberItem dl dd p:first-child{
    font-size: 14px;
  }
  .numberItem dl dd p:last-child {
    font-size: 12px;
}
  .numberItem{
    display: block;
  }
  .numberItem dl + dl{
    padding-top: 14px;
  }
  .numberSub{
    font-size: 16px;
  }
  .numberList{
    flex-direction:column-reverse;
    margin-bottom: 20px;
  }
  .numberLeft{
    flex: unset;
    padding-top: 25px;
  }
  .numberRight{
    flex: unset;
  }
  .box01{
    justify-content: center;
    margin: 0 0 20px 0;
    padding: 0 0 20px 0;
  }
  .box01 .store{
    display: none;
  }
}
/*** memberWrap***/


/*** newWrap***/
#newWrap{
  width: 100vw;
  min-width: 1024px;
  padding: 70px calc(50vw - 500px) 55px;
  margin-left: calc(500px - 50vw);
  background-color: #FDF5FC;
}
.newImg{
  text-align: center;
}
.newImg img{
  width: 100%;
}
.newImg a{
  display: inline-block;
  position: relative;
}
.newImg a:before{
  position: absolute;
  right: 15px;
  bottom: 15px;
  content: '';
  background: url(../images/slick-next.svg) center center no-repeat;
  background-size: 100%;
  width: 46px;
  height: 46px;
}
#newWrap ul{
  list-style: none;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#newWrap ul li{
  flex: 0 0 31.3%;
  background: #fff;
  border-radius: 15px;
  box-shadow: 0 0 15px rgb(0 0 0 / 10%);
}
#newWrap ul li a{
  display: block;
  padding: 33px 30px;
  text-align: center;
  font-weight: bold;
  font-size: 18px;
  color: #B60081;
  line-height: 1.11;
  position: relative;
}
#newWrap ul li a:after {
  position: absolute;
  left: 15px;
  top: 18px;
  content: '';
  background: url(/-/media/aeoncard/benefits/images/new_link_01.svg) no-repeat left center;
  background-size: 100% auto;
  width: 63px;
  height: 55px;
}
#newWrap ul li a.a02:after {
  background: url(/-/media/aeoncard/benefits/images/new_link_02.svg) no-repeat left center;
}
#newWrap ul li a.a03:after {
  background: url(/-/media/aeoncard/benefits/images/new_link_03.svg) no-repeat left center;
}

#newWrap ul li a:hover{
  transition: all 0.5s;
}
#newWrap ul li a img{
  width: 100%;
}
@media screen and (max-width: 768px) {
.newImg a:before{
  right: 10px;
  bottom: 10px;
  width: 28px;
  height: 28px;
}
  #newWrap ul{
    display: block;
    padding: 0 20px;
  }
  #newWrap ul li{
    margin-bottom: 15px;
  }
  #newWrap ul li a{
    padding: 30px;
  }
}
/*** newWrap***/


/*** ideaWrap***/
#ideaWrap{
  padding: 70px 0;
}
#ideaWrap ul{
  list-style: none;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 30px 0 0 0;
}
#ideaWrap ul li{
  flex: 0 0 48.5%;
  background-color: #fff;
  box-shadow:0 0 15px rgba(0, 0, 0, 0.1);
  border-radius: 15px;
  margin: 0 0 30px 0;
}
#ideaWrap ul li a{
	display: block;
  font-size: 18px;
  font-weight: bold;
  padding:30px;
  color: #000;
  position: relative;
}
#ideaWrap ul li a dl{
	display: table;
	width: 100%;
}
#ideaWrap ul li a dl dt,#ideaWrap ul li a dl dd{
	display: table-cell;
  vertical-align: top;
}
#ideaWrap ul li a dl dt{
	width: 85px;
}
#ideaWrap ul li a dl dd{
	padding-left: 30px;
  box-sizing: border-box;
}
#ideaWrap ul li a span{
  position: absolute;
  right: 30px;
  bottom: 30px;
  display: inline-block;
  vertical-align: middle;
  color: #B60A81;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.57;
  padding: 0 20px 0 0;
}
#ideaWrap ul li a span:before {
  position: absolute;
  right: -2px;
  top: -2px;
  content: '';
  background-image: url(/-/media/aeoncard/assets/images/icon/arrow-right.svg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: right center;
  width: 25px;
  height: 25px;
}
#ideaWrap ul li a span.blank:before{
  background-image: url(/-/media/aeoncard/assets/images/icon/blank.svg);
}


#ideaWrap ul li a:hover{
  transition: all 0.5s;
}
#ideaWrap ul li a img{
  width: 100%;
}
@media screen and (max-width: 768px) {
  #ideaWrap{
    padding: 40px 0;
  }
  #ideaWrap ul{
    display: block;
  }
  #ideaWrap ul li{
    box-shadow:0 0 10px rgba(0, 0, 0, 0.1);
    margin: 0 0 15px 0;
  }
  #ideaWrap ul li a{
    font-size: 16px;
    padding:15px;
    font-size: 14px;
  }
  #ideaWrap ul li a span{
    right: 15px;
    bottom: 15px;
  }

}
/*** ideaWrap***/

/*** last***/
.lastItem{
  text-align: center;
  padding: 40px 0 0 0;
}
.lastTile{
  text-align: center;
  font-size: 22px;
  font-weight: bold;
  padding: 0 0 16px 0;
}
.pc{display: block;}
.sp{display: none;}
/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {
  .pc{display: none;}
  .sp{display: block;}

  .lastTile{
    font-size: 20px;
    padding: 0 0 14px 0;
  }
}
/*** last***/

/*** bg***/
@media (min-width: 1024px) and (max-width: 1204px){
  #mainVisual,#teaser,#calendarDetail,#newWrap{
    padding: 60px 102px;
    margin-left: calc(-50vw - 102px);
    transform: translateX(50%);
  }
  #teaser{
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 1023px){
  #mainVisual,#teaser,#calendarDetail,#newWrap{
    width: 1024px;
    padding: 60px 102px;
    margin-left: -102px;
    transform: none;
  }
  #teaser{
    padding-left: 0;
    padding-right: 0;
    padding-top: 30px;
  }
}
@media (max-width: 768px){
  #mainVisual,#teaser,#calendarDetail,#newWrap{
    width: 100vw;
    min-width: auto;
    padding: 40px 16px;
    margin-left: -16px;
  }
  #teaser{
    padding-left: 0;
    padding-right: 0;
    padding-top: 30px;
    padding-bottom: 50px;
  }
}
/*** bg***/


.lead__iframe{
  padding: 20px;
  max-width: 50%;
  margin: 0 auto;
}
.lead__iframe .lead__iframe_video iframe {
  height: 260px;
}
@media screen and (width: 768px) {
.lead__iframe .lead__iframe_video iframe {
    height: 185px;
}
}
@media screen and (max-width: 767px) {
  .lead__iframe{
    max-width: 375px;
  }
  .lead__iframe .lead__iframe_video iframe {
    height: 171px;
  }
}

.everydayDiv {
  background-color: #FFF5FD;
  width: 100%;
  margin: 5px 0;
  padding: 10px 20px;
}

.everydayDiv a {
  display: flex;
  cursor: pointer;
  align-items: center;
}

.leftText {
  font-size: 28px;
  color: #B60081;
  font-weight: bold;
  width: 25%;
  text-align: center;
}

.centerImgList {
  width: 45%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.centerImgList img {
  margin: 2px;
  width: 22px;
  height: 22px;
}

.rightTips {
  margin-top: 20px;
  font-size: 12px;
  text-align: right;
  width: 30%;
}

.max260 {
  max-width: 335px !important;
  color: #4653a2;
  font-weight: bold;
  font-size: 18px;
}

.a-button-style {
  color: #ffffff;
  background: linear-gradient(90deg,#4653a2,#515fbd);
  border-radius: 10px;
}

.rightTips_sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .everydayDiv {
    padding: 10px;
  }
  .leftText {
    font-size: 16px;
    width: 50px;
    display: block;
    margin-top: 4px;
  }
  .rightTips {
    display: none;
  }
  .centerImgList {
    width: calc(100% - 50px);
  }
  .rightTips_sp {
    display: block;
    text-align: right;
    font-size: 12px;
    margin-top: 10px;
    color: #a20073;
  }
  .max260 {
    font-size: 14px;
  }
}

/* Adjustment */
.u-mb-30i {
  margin-bottom: 30px !important;
}
@media screen and (min-width: 769px) {
  .u-w500-pc {
    width: 500px;
  }
}

@media (max-width: 768px) {
  .qx-card-popularity .a-button {
    width: 100%;
  }
}

/* 20241108 */
.qx-bnr_20241108 {
  text-align: center;
  margin-top: 70px;
}

.qx-bnr_20241108 img {
  max-width: 100%;
}

@media (max-width: 768px) {
  .qx-bnr_20241108 {
    margin-top: 30px;
  }
}

/* 20241217 */
.qx-bnr-ttl {
  margin-top: 70px;
}

.qx-bnr-ttl p {
  display: flex;
  width: fit-content;
  margin: 0 auto 30px;
  font-size: 20px;
  font-weight: 600;
}

.qx-bnr-ttl p:before,
.qx-bnr-ttl p:after {
  content: '';
  display: block;
  width: 2px;
  height: 26px;
  background-color: #000;
}

.qx-bnr-ttl p:before {
  margin-right: 15px;
  transform: rotate(-40deg);
}

.qx-bnr-ttl p:after {
  margin-left: 15px;
  transform: rotate(40deg);
}

.qx-bnr-ttl span {
  text-align: center;
}

.qx-bnr-ttl span .pc-hidden {
  display: none;
}

.qx-bnr_20241108 {
  margin-top: 0;
}

@media (max-width: 768px) {
  .qx-bnr-ttl p {
    margin: 0 auto 20px;
    font-size: 16px;
  }

  .qx-bnr-ttl p:before,
  .qx-bnr-ttl p:after {
    height: 50px;
  }

  .qx-bnr-ttl p:before {
    margin-right: 25px;
    transform: rotate(-30deg);
  }

  .qx-bnr-ttl p:after {
    margin-left: 25px;
    transform: rotate(30deg);
  }

  .qx-bnr-ttl span .pc-hidden {
    display: block;
  }
}

.qx-fc-red {
  color: #eb0015 !important;
}

.qx-greenbeans-closing {
  color: #FF0000 !important;
  font-weight: bold;
  margin-bottom: 10px !important;
}
.qx-greenbeans-closing.qx-greenbeans-mb0 {
  margin-bottom: 0;
}