.mainvisual-annotation {
  text-align: left;
  display: block;
  margin: 15px auto 0;
  padding: 0 11px;
  color: #fff;
  font-size: 16px;
  line-height: 1.5;
}

.mainvisual-caption {
  text-align: left;
  color: #fff;
  margin-bottom: 7px;
  padding: 0 11px;
}

.rsp-wrapper .how-to-create-card-wrap {
  margin-bottom: 22px;
}

@media only screen and (min-width: 768px) {
  .mainvisual {
    position: relative;
    background-color: #2073bd;
  }

  .mainvisual .rsp-frame {
    position: relative;
    z-index: 2;
  }

  .rsp-wrapper .how-to-create-card-wrap {
    margin-bottom: 27px;
  }

  .mainvisual-annotation, .mainvisual-caption {
    text-align: center;
  }
}

.mainvisual .rsp-wrapper {
  text-align: center;
}

.mainvisual-create-card-title {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 10px;
  color: #fff463;
}

.how-to-create-card-btn {
  display: block;
  max-width: 350px;
  margin: 0 auto;
  padding: 30px 20px;
  background: #fff462;
  border-radius: 10px;
  color: #004088;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  box-shadow: 0px 5px #ffb762;
}

.how-to-create-card-btn:hover {
  position: relative;
  top: 2px;
  box-shadow: 0px 3px #ffb762;
}

.main-contents {
  background-color: #eaeaea;
  padding: 50px 0 0;
}

@media only screen and (max-width: 767px) {
.main-contents {
    padding: 0 0 0;
}
}

.maze {
  color: #ca008d !important;
}

.cinema-contents dt {
  background-color: #b60081;
  border-radius: 20px 20px 0 0;
  color: #fff;
  font-weight: 600;
  font-size: 24px;
  text-align: center;
  padding: 20px 0 20px;
}

.cinema-contents dd {
  background-color: white;
  border-radius: 0 0 20px 20px;
}

.subtitle {
  max-width: 1000px;
  margin: 0 auto;
  padding: 40px 0 60px;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .subtitle {
    padding: 20px 0 30px;
  }
}

.subtitle > p {
  font-weight: bold;
}

.subtitle p {
  font-size: 15px;
  margin: 10px;
}
.cinema-contents + .cinema-contents {
  position: relative;
  margin-top: 114px;
}
.cinema-contents + .cinema-contents::before {
  left: 50%;
  transform: translateX(-50%);
  content: "";
  top: -94px;
  width: 73px;
  height: 74px;
  position: absolute;
  background: url(/-/media/aeoncard/card/lp/merit_aeoncinema/20260917/images/step-arrow.png) center center no-repeat;
  background-size: contain;
}

.cinema-contents {
  border-radius: 18px;
  box-shadow: 0px 0px 5px 1px rgba(0, 0, 0, 0.1);
}

.point-box {
  background-color: #b60081 !important;
  color: white;
  font-size: 18px;
  font-weight: bold;
  border-radius: 6px;
  margin: 40px 0;
  box-shadow: 0px 0px 8px 1px rgba(0, 0, 0, 0.3);
}

.btn-03.str-02 span {
  display:flex;
  justify-content: center;
  align-items: center;
}

.btn-03.str-02 span {
  display:flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  height: 60px;
  position: relative;
  width: 100%;
}

.cp-summary {
  background-color: #d4d4d4;
}

.bannerwrap ul {
  text-align: center;
}

.bannerwrap ul p {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 10px;
}

.cp-summary .bannerwrap ul li {
  width: 48%;
}

.bannerwrap li + li {
  margin-left: 10px;
}

.bannerwrap li {
  display: inline-block;
  margin: 0;
}

.subtitle .bannerarea-title {
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  margin-top: 0;
  margin-bottom: 5px !important;
}

.subtitle .bannerarea-subtitle {
  font-size: 24px;
  text-align: center;
  font-weight: bold;
}

.content-info {
  background-color: white;
  border-radius: 8px;
  box-shadow: 0px 0px 5px 1px rgba(0, 0, 0, 0.1);
  padding: 50px 0;
  margin: 50px 0 80px;
}
.content-info hr {
  display: block;
  border: none;
  border-bottom: 4px dotted #cecece;
  width: 90%;
  margin: 40px auto;
}
.content_member {
  display: flex;
  gap: 20px;
  margin-left: 20px;
  margin-right: 20px;
}

.content_member .flex_a {
  width: 50%;
}
.flex_a .color-puple {
  font-weight: 600;
  font-size: 18px;
  min-height: 58px;
  display: flex;
  align-items: end;
  justify-content: center;
}

.content_member .flex_b {
  display: inline-block;
  width: auto;
}

.content_member .flex_b span span {
  min-width: 200px;
}
.btnsizing {
  width: 240px;
  margin-left: auto !important;
  margin-right: auto !important;
}

.btnsizing span span {
  padding-right: 50px;
}

.btn-01 span span img {
  vertical-align: middle;
}

.flex_b {
  vertical-align: top;
}

.note li {
  position: relative;
  padding-left: 1.5em;
  padding-bottom: 5px;
  display: block;
}

.note .mark {
  position: absolute;
  top: 0;
  left: 0;
}

.btn-01 span {
  background-color: #000 !important;
}

.btn-01 > span > span {
  background: url(/-/media/AeonCard/card/lp/merit_aeoncinema/images/ico-arrow_03.png)
    no-repeat right center;
  padding: 0 26px 0 14px;
  display: block;
}

@media only screen and (max-width: 767px) {
  .content-info {
    padding: 20px;
    margin: 30px 0 40px;
  }

  .content-info hr {
    margin: 20px auto;
  }

 .subtitle .bannerarea-title {
    font-size: 16px;
    font-weight: bold;
    text-align: center;
  }

  .subtitle .bannerarea-subtitle {
    font-size: 18px;
  }

  .bannerwrap li {
    display: block;
    margin: 0 0 10px;
  }

  .bannerwrap li + li {
    margin-left: 0;
  }

  .content_member {
    display: block;
  }

  .content_member .flex_a {
    width: 100%;
    margin-top: 30px;
  }

  .content_member .flex_a + .flex_a {
    width: 100%;
    border-left: none;
    margin-top: 0px;
    padding-top: 20px;
  }

  .content_member .flex_b {
    width: 100%;
  }

  .content_member .flex_b + .flex_b {
    margin-top: 20px;
  }

  .point-box {
    margin: 30px 0;
  }

  .cp-summary .bannerwrap ul li {
    width: 100%;
  }

  .bannerwrap ul p {
    margin-bottom: 0px;
  }

  .bannerwrap ul li + li {
    margin-top: 20px;
  }

  .btn-03.str-02 span {
    text-align: center;
    display: block;
    vertical-align: middle;
    height: auto;
    font-size: 14px;
  }

  .btn-01 span span img {
    max-width: 190px;
  }

  .subtitle > p {
    font-size: 14px;
  }
  .subtitle .bold {
    font-size: 17px;
  }

  .flex_a .color-puple {
    font-size: 14px;
    margin: 0;
    min-height: auto;
  }
}

.how-to-buy-btn {
  display: block;
  max-width: 350px;
  margin: 0 auto;
  padding: 20px;
  background: linear-gradient(#4653a2 0%, #515fbd 100%);
  border-radius: 10px;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  box-shadow: 0px 5px #021484;
}

@media only screen and (max-width: 767px) {
  .how-to-buy-btn {
    padding: 16px;
  }
}

.how-to-buy-btn:hover {
  position: relative;
  top: 2px;
  color: #fff;
  box-shadow: 0px 3px #021484;
}

.how-to-buy-btn:link {
  color: #fff;
}

.how-to-buy-btn:active {
  color: #fff;
}

.how-to-buy-btn:visited {
  color: #fff;
}

.how-to-buy-btn-wrap {
  margin-top: 40px;
}

@media only screen and (max-width: 767px) {
  .main-contents .link-top a {
    display: block;
    width: 44px;
    height: 44px;
    margin: 0 0 0 auto;
  }
}

.secureBtn{
  padding: 10px 0 0;
  text-align: center;
  margin: 0;
}
.secureBtn a{
  display: inline-block;
  max-width: 480px;
  margin: 0 auto;
}
.secureBtn a img{
  border-radius: 10px;
}
.fzcolor16{
  color: #eb0015;
  font-size: 17px;
}

.note-title{
  font-size: 18px;
}
.note-sub{
  font-size: 16px;
}
.note-note{
  font-size: 14px;
}
.note-bold{
  font-weight: bold;
  margin: 0!important;
}
.note-hdM{
  font-size: 14px;
  font-weight: bold;
  margin: 30px 0 0!important;
}

@media only screen and (max-width: 767px) {
  .secureBtn{
    padding: 0;
  }
  .secureBtn a{
    max-width: 350px;
  }
  .note-title{
    font-size: 16px;
  }
  .note-sub{
    font-size: 14px;
  }
  .note-note{
    font-size: 12px;
  }
  .note-hdM{
    font-size: 14px;
    margin: 15px 0 0!important;
  }
}

.btn-pink {
  position: relative;
  display: flex;
  margin: 30px auto 20px;
  align-items: center;
  justify-content: center;
  width: 286px;
  height: 56px;
  background-color: #f6dfef;
  color: #a20073;
  border-radius: 27px;
  font-size: 16px;
  font-weight: 600;
}

.btn-pink:hover, .btn-pink:focus {
  color: #a20073;
}

.btn-pink::after {
  content: "";
  position: absolute;
  display: block;
  top:  calc(50% + 1px);
  right: 9px;
  width: 28px;
  height: 28px;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  background-image: url(/-/media/AeonCard/card/lp/merit_aeoncinema/images/button_blank.svg);
}
.content-info2 {
  background-color: white;
  border-radius: 8px;
  box-shadow: 0px 0px 5px 1px rgba(0, 0, 0, 0.1);
  padding: 20px 20px 50px;
  margin: 50px 0 80px;
}
p.card-des {
  background-color: #2173bc;
  color: #ffffff;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  margin: 0 auto 20px;
  padding: 10px;
}
.cardinfo-des p {
  margin-bottom: 0 !important;
}
.cardinfo-des p.first-title{
  font-weight: bold;
}
.cardinfo-des p a {
  text-decoration: underline;
  cursor: pointer;
}
.cardinfo-box {
  margin-bottom: 20px;
}

.mainvisual {
  background-color: #2073bd;
}

.kv_attention{
  max-width: 1000px;
  margin: auto;
  padding:10px 10px 30px;
  background-color: #2073bd;
}

.kv_attention-txt{
  display: block;
  border: #eb0015 2px solid;
  background-color: #ffffff;
  font-weight: 600;
  color: #eb0015;
  padding: 10px;
}

.kv_attention-txt-inner{
  padding-left: 1em;
  text-indent: -1em;
  display: block;
}

.kv_contents {
  max-width: 1000px;
  padding:10px 10px 80px;
  margin-left: auto;
  margin-right: auto;
}

@media only screen and (max-width: 768px) {
.kv_contents {
  padding:10px 10px 30px;
}
}

.kv_bg_white {
  background: #ffffff;
  border-radius: 20px;
  padding: 50px 30px;
}

@media only screen and (max-width: 768px) {
  
.kv_bg_white {
  padding: 30px 10px;
}
}

.kv_ticket_step_title {
  font-size: 28px;
  font-weight: 600;
  text-align: center;
  color: #4654a4;
}

.kv_ticket_step_title_lage {
  font-size: 150%;
}

@media only screen and (max-width: 768px) {
.kv_ticket_step_title {
  font-size: 14px;
}

.kv_ticket_step_title_lage {
  font-size: 150%;
}
}

.kv_ticket_step {
  display: flex;
  justify-content: center;
  margin-left: 100px;
  margin-right: 100px;
}

@media only screen and (max-width: 768px) {
  .kv_ticket_step {
  margin-left: 0;
  margin-right: 0;
}
}

.kv_ticket_step_box{
  width: 33%;
  text-align: center;
  position: relative;
}

.kv_ticket_step_box::after {
content: "";
position: absolute;
left: -10px;
top: 33px;
width: 28px;
height: 33px;
background: url(/-/media/aeoncard/card/lp/merit_aeoncinema/20260917/images/kv_ticket_step_arrow.png) center center no-repeat;
background-size: contain;
}

.kv_ticket_step_box:first-child:after{
  background: none;
}

.kv_ticket_step_box img{
  width: 100px;
}

.kv_ticket_step_box_txt {
  margin-top: 20px;
  font-size: 18px;
}

@media only screen and (max-width: 767px) {
.kv_ticket_step_box::after {
  top: 20px;
  left: -15px;
}
  .kv_ticket_step_box img{
  width: 70px;
}

.kv_ticket_step_box_txt {
  font-size: 10px;
}
}

.kv_page_links {
  display: flex;
  justify-content: center;
  align-items: center;
}

.kv_page_links_box {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border-right: 2px dashed #c7cbe4;
  padding: 0 5px;
}

.kv_page_links_box:last-child {
border-right: none;
}

.kv_page_links_no-card-title {
  color: #cc009b;
  font-weight: 600;
  font-size: 22px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

.kv_page_links_no-card-title::before{
content: "";
background: url(/-/media/aeoncard/card/lp/merit_aeoncinema/20260917/images/icon-no-card.png) center center no-repeat;
background-size: contain;
width: 62px;
height: 62px;
margin-right: 10px;
}



.kv_page_links_card-title {
  color: #4654a4;
  font-weight: 600;
  font-size: 22px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

.kv_page_links_card-title::before{
content: "";
background: url(/-/media/aeoncard/card/lp/merit_aeoncinema/20260917/images/icon-card.png) center center no-repeat;
background-size: contain;
width: 62px;
height: 62px;
margin-right: 10px;
}

@media only screen and (max-width: 767px) {
.kv_page_links_no-card-title,
.kv_page_links_card-title{
  font-size: 14px;
}

.kv_page_links_no-card-title::before,
.kv_page_links_card-title::before{
width: 40px;
height: 40px;
}
}

.kv_page_links_box-bt:hover{
  padding-top: 3px;
}

.kv_page_links_no-card-bt {
  background: #b60081;
  border-radius: 10px;
  height: 64px;
  max-width: 340px;
  width: 300px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  box-shadow: 0 5px #66044e;
  margin-top: 2px;
  position: relative;
}

.kv_page_links_no-card-bt:hover {
  box-shadow: 0 2px #66044e;
  color: #fff;
  height: 61px;
}

.kv_page_links_card-bt{
  background: #4654a4;
  border-radius: 10px;
  height: 64px;
  max-width: 340px;
  width: 300px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  box-shadow: 0 5px #0d1a66;
  margin-top: 2px;
  position: relative;
}

.kv_page_links_card-bt:hover {
  box-shadow: 0 2px #0d1a66;
  color: #fff;
  height: 61px;
}

.kv_page_links_card-bt::after,
.kv_page_links_no-card-bt::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 12px solid transparent;
  border-left: 12px solid transparent;
  border-top: 18px solid #fff;
  border-bottom: 0;
  position: absolute;
  right:30px;
  top: 50%;
  transform: translateY(-50%);
}

@media only screen and (max-width: 767px) {
  .kv_page_links_no-card-bt,
  .kv_page_links_card-bt{
    width: 150px;
    font-size: 12px;
  }

  .kv_page_links_card-bt::after,
.kv_page_links_no-card-bt::after {
    border-right: 8px solid transparent;
  border-left: 8px solid transparent;
    border-top: 10px solid #fff;
  right:10px;
}
}



/*アコーディオン*/
.kv_acco_wrapper {
  border: 1px solid #fff;
  border-radius: 10px;
  padding: 20px;
}

@media only screen and (max-width: 767px) {
  .kv_acco_wrapper {
    padding: 20px 10px;
  }
}

.kv_acco_body {
  display: none;
}

.kv_acco_wrapper.is-open .kv_acco_body {
  display: block;
  padding-bottom: 20px;
}

@media only screen and (max-width: 767px) {
  .kv_acco_wrapper.is-open .kv_acco_body {
  padding-bottom: 0;
}
}

.kv_acco_title {
  display: flex;
  align-items:center;
  font-size: 24px;
  font-weight: 600;
  color: #fff;
  position: relative;
  cursor: pointer;
}

@media only screen and (max-width: 767px) {
  .kv_acco_title {
    font-size: 16px;
  }
}

.m-notes_toggleicon {
  margin-top: -3px
}
.m-notes_toggleicon {
  display: block;
  position: absolute;
  right: 0px;
  top: 50%;
  transform: translateY(-50%);
}

.a-icon {
display: inline-block;
width: 28px;
height: 28px;
vertical-align: middle;
background-repeat: no-repeat;
background-position: 50%;
background-size: contain;
}

.a-icon-minus {
background-image: url(/-/media/aeoncard/assets/images/icon/minus.svg);
filter: brightness(0) invert(1);
}
.a-icon-plus {
background-image: url(/-/media/aeoncard/assets/images/icon/plus.svg);
filter: brightness(0) invert(1);
}

.number-box {
    display: inline-block;
    border: 1px solid #ffff;
    color: #fff;
    margin-top: 40px;
}

@media only screen and (max-width: 767px) {
  .number-box {
        margin-top: 20px;
}
}

.kv_acco_bg_white{
  background: #fff;
  border-radius: 20px;
  padding: 30px ;

}

.kv_acco_body_title {
  font-size: 20px;
  font-weight: 600;
}

@media only screen and (max-width: 767px) {
  .kv_acco_bg_white{
    padding: 30px 10px;
  }

 .kv_acco_body_title {
  font-size: 16px;
 } 
}

.color-blue {
  color: #4654a4;
}

.color-puple{
  color: #b60081;
}

.kv_acco_body_txt {
  font-size: 16px;
}

@media only screen and (max-width: 767px) {
  .kv_acco_body_txt {
    font-size: 14px;
  }
}

.rsp-contents-title {
  font-size: 30px;
  font-weight: 600;
  text-align: center;
  color: #b60081;
}

@media only screen and (max-width: 767px) {
  .rsp-contents-title {
    font-size: 24px;
  }
}

.bg_blue{
  background: #dfe8fc;
  border-radius: 20px;
  padding: 30px 0;
  max-width: 80%;
  margin-left: auto;
  margin-right: auto;
}

.subtitle .bg_blue-title {
  font-size: 20px;
  font-weight: 600;
  color: #4654a4;
}

@media only screen and (max-width: 767px) {
  .bg_blue{
    max-width:90%;
    padding: 10px 0 20px;
  }

.subtitle .bg_blue-title {
  font-size: 14px;
  }

  .bg_blue .secureBtn a img{
    width: 90%;
  }
}

.qx-swiper-pattern04{
  width: 100%;
}

.qx-swiper-pattern04-button-next,
.qx-swiper-pattern04-button-prev {
  position: absolute;
  top: calc((100% - 20px) / 2);
  transform: translateY(50%);
}

.qx-swiper-pattern04-button-next{
    background: url(/-/media/aeoncard/card/lp/merit_aeoncinema/20260917/images/swiper_arrow_next.png) center center no-repeat;
    background-size: contain;
    width: 30px;
    height: 30px;
    right: -10px;
  }

.qx-swiper-pattern04-button-prev{
    background: url(/-/media/aeoncard/card/lp/merit_aeoncinema/20260917/images/swiper_arrow_prev.png) center center no-repeat;
    background-size: contain;
    width: 30px;
    height: 30px;
    left: -10px;
  }

.qx-swiper-pattern04-button-next::after,
.qx-swiper-pattern04-button-prev::after {
  display: none;
}

.qx-swiper-pattern04-pagination {
  text-align: center;
  margin-top: 15px;
  line-height: 0;
}

.qx-swiper-pattern04-pagination .swiper-pagination-bullet {
  background-color: #c9c9c9;
  border-radius: 50%;
  border: 1px solid #c9c9c9;
  width: 10px;
  height: 10px;
  opacity: 1;
  margin: 0 10px;
}

.qx-swiper-pattern04-pagination .swiper-pagination-bullet-active {
  background: #b60081;
  border: 1px solid #b60081;
}

@media (max-width: 768px) {
  .qx-swiper-pattern04 {
    width: 100%;
  }

}

@media (max-width: 374px) {
  .qx-slide-pattern04-inner {
    width: 220px;
  }
  .qx-swiper-pattern04 .swiper-button-next:after, 
  .qx-swiper-pattern04 .swiper-button-prev:after {
    font-size: 32px;
  }
}