@charset 'UTF-8';
/* kv ------------------------*/
.kv__inner {
  color: #fff;
  text-align: center;
  text-shadow: 0 0 8px black;
}
.kv__ttl {
  font-weight: bold;
  letter-spacing: 0.05em;
}
.kv__ttl span {
  position: relative;
}
.kv__ttl span:before {
  position: absolute;
  top: 50%;
  content: '';
  background: url('/promotion/jcb_anacard/images/cp1/ico_present.svg') no-repeat left top;
  background-size: cnotain;
  transform: translateY(-50%);

  -webkit-transform: translateY(-50%);
}
.kv__lead {
  display: inline-block;
  border-bottom: solid 2px rgba(255, 255, 255, 0.5);
  font-weight: bold;
  letter-spacing: 0.05em;
}
.kv__main {
  color: #eff5ff;
  font-weight: bold;
}
.kv__mile {
  color: #ffc70d;
}
.kv__note {
  font-weight: bold;
}
/* section ------------------------*/
.section__heading {
  position: relative;
  overflow: hidden;
  background: #f7f8f8;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: center;
}
.section__heading--sec1:after {
  position: absolute;
  top: 50%;
  content: '';
  background: url('/promotion/jcb_anacard/images/cp1/bg_heading_sec1.png') no-repeat left top;
  background-size: cover;
  transform: translateY(-50%);

  -webkit-transform: translateY(-50%);
}
.section__heading--sec2:after {
  position: absolute;
  top: 0;
  content: '';
  background: url('/promotion/jcb_anacard/images/cp1/bg_heading_sec2.png') no-repeat left top;
  background-size: cover;
}
.section__heading--sec3 {
  background: #1163a8;
}
.section__inner + .section__inner {
  padding-top: 0;
}
/* cardTable ------------------------*/
.cardTable tr:nth-child(2) td, .cardTable tr:nth-child(2) th {
  font-weight: bold;
}
.cardTable tr:last-child td, .cardTable tr:last-child th {
  border-bottom: none;
}
.cardTable tr:nth-child(2) td span {
  position: relative;
  display: inline-block;
  z-index: 0;
  color: #d3590c;
}
.cardTable tr:nth-child(2) td span:after {
  position: absolute;
  bottom: 4px;
  left: 0;
  content: '';
  z-index: -1;
  height: 12px;
  width: 100%;
  background: #e4ecf2;
}
.cardTable th[scope='col'] {
  text-align: center;
}
.cardTable th, .cardTable td {
  border-bottom: solid 1px #c7c7c7;
  letter-spacing: 0.05em;
}
.cardTable th.active, .cardTable td.active {
  background: #f7f8f8;
}
.cardTable td {
  text-align: center;
}
.cardTable__name {
  margin: 0 0 20px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
}
.cardTable__thum img {
  width: 200px;
}
.cardTable__note:before {
  content: '\FF08\203B\FF09';
}
.cardTable__noteItem {
  counter-increment: riceNum;
}
.cardTable__noteItem:before {
  content: '\FF08\203B' counter(riceNum) '\FF09';
}
.cardTable__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;

  -webkit-box-pack: center;
  -ms-flex-pack: center;
}
.cardTable__item + .cardTable__item {
  margin-left: 15px;
}
/* cardList ------------------------*/
.cardList {
  letter-spacing: 0.05em;
}
.cardList__heading {
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: center;
}
.cardList__inner + .cardList__inner {
  border-top: solid 1px #e2e2e2;
}
.cardList__name {
  font-weight: bold;
  text-align: center;
}
.cardList__thum {
  text-align: center;
}
.cardList__thum img {
  width: 200px;
}
.cardList__text {
  font-weight: bold;
  letter-spacing: 0.05em;
  text-align: center;
}
.cardList__mile {
  position: relative;
  display: inline-block;
  z-index: 0;
  color: #d3590c;
}
.cardList__mile:after {
  position: absolute;
  bottom: 4px;
  left: 0;
  content: '';
  z-index: -1;
  height: 12px;
  width: 100%;
  background: #e4ecf2;
}

/* tab ------------------------*/

.tabSwitch__top{
  width: 980px;
  margin:50px auto 0;
}

.tabSwitch__bottom{
  height: 50px;
  width: 980px;
  margin:0 auto 50px;
}

.tabSwitch__navi {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}
.tabSwitch__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;

  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
}
.tabSwitch__item a {
  display: block;
  background: #beceda;
  color: #052946;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 1.4;
  text-align: center;
}
.tabSwitch__item a.active {
  background: #074f8d;
  color: #fff;
  position: relative;
}

.tabContents {
  display: none;
}
.tabContents.active {
  display: block;
}

.tabWrap{
  width: 100%;
  background: #ffffff;
}

.tabContents{

}


/* notice ------------------------*/
.notice__inner {
  margin: 0 auto;
  padding: 60px 0;
}
.notice__heading {
  font-size: 28px;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
}
.notice__subHeading {
  position: relative;
}
.notice__subHeading:before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  height: 2px;
  width: 100%;
  background-color: #d5d7db;
}
.notice__list {
  margin: 10px 0 0;
}
.notice__item {
  position: relative;
  padding: 0 0 0 15px;
}
.notice__item:before {
  position: absolute;
  left: 0;
  top: 8px;
  content: '';
  height: 8px;
  width: 8px;
  background-color: #074f8d;
  border-radius: 50%;
}
.notice__item strong {
  font-weight: bold;
}
.notice__item + .notice__item {
  margin: 10px 0 0;
}
.notice__term {
  font-weight: bold;
}
.notice__table th, .notice__table td {
  border-bottom: solid 1px #c7c7c7;
  border-top: solid 1px #c7c7c7;
}
.notice__table th:first-child, .notice__table td:first-child {
  border-right: solid 1px #c7c7c7;
}
.notice__table th {
  width: 50%;
  background: #074f8d;
  color: #fff;
  text-align: center;
}
.notice__table th:nth-child(n+2) {
  border-left: solid 1px #c7c7c7;
}
.notice__table td:last-child {
  background: #e1ecf5;
  font-weight: bold;
}

.notice__table2{
  width: 100%;
}

.notice__table2 th, .notice__table2 td {
  border-bottom: solid 1px #c7c7c7;
  border-top: solid 1px #c7c7c7;
  border-right: solid 1px #c7c7c7;
  padding: 10px 4px;
  text-align: center;
}

.notice__table2 th {
  width: 33%;
  background: #074f8d;
  color: #fff;
}
.notice__table2 th:last-child,
.notice__table2 td:last-child{
  border-right: none;
}

.notice__table2 td {
  background: #ffffff;
}

.notice__note {
  margin: 20px 0 0;
  padding: 0 0 0 1em;
  font-size: 12px;
  text-indent: -1em;
}
.notice__note:before {
  content: '\203B';
}
.notice__note--detail {
  margin: 30px 0 0;
}
.notice__unit {
  margin: 30px 0 0;
}
.notice__title {
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
  font-weight: 500;
  font-weight: bold;
}
/* flow ------------------------*/
.flow {
  background: url('/promotion/jcb_anacard/images/cp1/bg_flow.jpg') no-repeat center top #f7f8f8;
  background-size: contain;
}
.flow__heading {
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: center;
}
/* step ------------------------*/
.step__headline {
  background: -webkit-gradient(linear, left top, left bottom, from(white), to(rgba(255, 255, 255, 0)));
  background: linear-gradient(to bottom, white 0%, rgba(255, 255, 255, 0) 100%);
  color: #074f8d;
  text-align: center;
}
.step__heading-number {
  display: block;
  border-bottom: 2px solid #074f8d;
  font-family: 'Roboto', sans-serif;
  font-weight: 500;
  letter-spacing: 0.2em;
}
.step__heading-number span {
  display: block;
  line-height: 1;
}
.step__heading-number span + span {
  font-family: 'Roboto', sans-serif;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.step__heading-text {
  display: block;
  font-weight: bold;
  letter-spacing: 0.05em;
}
.step__heading-text span {
  font-size: 12px;
}
.step__sub-heading {
  margin: 0 0 10px;
  font-size: 16px;
  font-weight: bold;
}
.step__text {
  margin: 0 0 15px;
}
.step__note {
  margin: 0 0 15px;
  padding-left: 1em;
  text-indent: -1em;
}
.step__button {
  margin: 0 0 30px;
}
.step__button a {
  display: block;
  padding: 15px;
  background-color: #074f8d;
  border-radius: 100px;
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.2;
  text-align: center;
}
.step__button a[target='_blank'] span:after {
  content: '';
  display: inline-block;
  height: 10px;
  width: 10px;
  margin-left: 5px;
  background: url('/promotion/jcb_anacard/images/ico_btn_blank.svg') no-repeat center top;
  background-size: cover;
}
.step__button a[href^='#anc'] span:after {
  content: '';
  display: inline-block;
  height: 6px;
  width: 10px;
  margin-left: 8px;
  background: url('/promotion/jcb_anacard/images/ico_btn_anchor.svg') no-repeat center top;
  background-size: cover;
  vertical-align: middle;
}
.step__button--orange a {
  display: block;
  padding: 15px;
  background-color: #d3590c;
  border-radius: 100px;
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.2;
  text-align: center;
}
.step__button--orange a[target='_blank'] span:after {
  content: '';
  display: inline-block;
  height: 10px;
  width: 10px;
  margin-left: 5px;
  background: url('/promotion/jcb_anacard/images/ico_btn_blank.svg') no-repeat center top;
  background-size: cover;
}

.step__button--orange a[target='_blank'] span.attention{
  font-size: 12px;
  font-weight: normal;
}

.step__button--orange a[target='_blank'] span.attention:after{
 background:none;
}


.step__button--orange a[href^='#anc'] span:after {
  content: '';
  display: inline-block;
  height: 6px;
  width: 10px;
  margin-left: 8px;
  background: url('/promotion/jcb_anacard/images/ico_btn_anchor.svg') no-repeat center top;
  background-size: cover;
  vertical-align: middle;
}
.step__noteBox {
  margin: 20px 0 0;
  background-color: #eeefef;
  font-size: 12px;
}
.step__noteBox-title {
  margin: 0 0 8px;
  font-weight: bold;
}
.step__circleItem {
  padding: 55px 0 0;
  background-color: #fff;
  border: 6px solid #e4eaef;
  border-radius: 50%;
  font-weight: bold;
  text-align: center;
}
.step__circleTextTop {
  display: block;
  margin: 0 0 5px;
  color: #074f8d;
  font-size: 16px;
}
.step__circleTextTop span {
  font-size: 12px;
}
.step__circleTextBottom {
  display: block;
  line-height: 1.44;
}
.step__circleTextBottom span {
  font-size: 12px;
}
.step__circleMile {
  position: relative;
  display: inline-block;
  z-index: 0;
  color: #d3590c;
}
.step__circleMile:after {
  position: absolute;
  bottom: 4px;
  left: 0;
  content: '';
  z-index: -1;
  height: 12px;
  width: 100%;
  background: #e4ecf2;
}
.step__circleNote {
  margin: 25px 0 0;
  padding-left: 3em;
  font-size: 12px;
  text-indent: -3em;
}
/* familyCardInfo ------------------------*/
.familyCardInfo__inner {
  background-color: #fff;
}
.familyCardInfo__heading {
  line-height: 1.5;
}
.familyCardInfo__button a {
  display: block;
  padding: 15px;
  background-color: #074f8d;
  border-radius: 100px;
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.2;
  text-align: center;
}
.familyCardInfo__button a[target='_blank'] span:after {
  content: '';
  display: inline-block;
  height: 10px;
  width: 10px;
  margin-left: 5px;
  background: url('/promotion/jcb_anacard/images/ico_btn_blank.svg') no-repeat center top;
  background-size: cover;
}
.familyCardInfo__button a[href^='#anc'] span:after {
  content: '';
  display: inline-block;
  height: 6px;
  width: 10px;
  margin-left: 8px;
  background: url('/promotion/jcb_anacard/images/ico_btn_anchor.svg') no-repeat center top;
  background-size: cover;
  vertical-align: middle;
}
.familyCardInfo__note {
  padding-left: 1em;
  font-size: 12px;
  text-indent: -1em;
}
/* cv ------------------------*/
.cv {
  position: fixed;
  bottom: 0;
  z-index: 3;
  width: 100%;
}



.fWB{
  font-weight:bold;
}

.title_type01{
  color: #074f8d;
  font-size: 24px;
  text-align: center;
}
.title_type01 .cardList__mile{
  font-size: 32px;
}
.title_type01 .cardList__mile:after{
  bottom: 10px;
}

.toggle_box .toggle_title{
  border-top: 1px solid #116cba;
  border-bottom: 1px solid #116cba;
  color: #074f8d;
  padding:15px;
  text-align: center;
  font-size: 18px;
  background: url('/promotion/jcb_anacard/images/plus.gif') no-repeat 99% 50%;
  background-size: 38px auto;
  margin: 20px auto;
  width: 340px;
}
.toggle_box .toggle_title.open{
  background: url('/promotion/jcb_anacard/images/minus.gif') no-repeat 99% 50%;
  background-size: 38px auto;
  border-bottom: none;
}

.toggle_box .flow{
  display: none;
}







@media print, screen and (min-width: 701px) {
  .kv {
    height: 460px;
    background: url('/promotion/jcb_anacard/images/cp1/bg_kv_13.png') no-repeat 50% 50%;
    background-size: cover;
  }
  .kv__inner {
    width: 980px;
    margin: 0 auto;
    padding: 67px 0 0;
  }
  .kv__ttl {
    font-size: 24px;
    line-height: 1;
  }
  .kv__ttl span {
    padding: 0 0 0 50px;
  }
  .kv__ttl span:before {
    left: 5px;
    height: 36px;
    width: 42px;
  }
  .kv__lead {
    margin: 60px 0 0;
    padding: 0 0 4px;
    font-size: 18px;
    line-height: 1.33333;
  }
  .kv__main {
    margin: 10px 0 0;
    font-size: 45px;
    line-height: 1.22222;
  }
  .kv__mile {
    font-size: 80px;
  }
  .kv__rice {
    font-size: 14px;
  }
  .kv__note {
    margin: 70px 0 0;
  }
  .section__heading {
    padding: 60px 0;
    font-size: 36px;
  }
  .section__heading--sec1:after {
    right: -100px;
    height: 406px;
    width: 458px;
  }
  .section__heading--sec2:after {
    left: -480px;
    top: -100px;
    height: 291px;
    width: 950px;
  }
  .section__inner {
    width: 980px;
    margin: 0 auto;
    padding: 60px 0;
  }
  .cardTable {
    width: 100%;
  }
  .cardTable tr:nth-child(2) td span {
    font-size: 26px;
  }

  .cardTable tr:nth-child(2) td span.mini {
    font-size: 22px;
  }
  .cardTable.cardTable--double tr td span.mini {
    font-size: 22px;
    position: relative;
    display: inline-block;
    z-index: 0;
    color: #d3590c;
  }

  .cardTable th[scope='col'] {
    padding: 30px 0 20px;
    text-align: center;
  }
  .cardTable th[scope='col']:first-child {
    width: 165px;
  }
  .cardTable th.w180[scope='col']:first-child {
    width: 180px;
  }
  .cardTable td {
    padding: 25px 0;
  }
  .cardTable__thum--double img {
    width: 150px;
  }

  .cardTable__thum--double img.mini {
    width: 120px;
  }

  .cardTable__note, .cardTable__noteList {
    margin: 20px 0 0;
  }
  .cardTable__noteItem {
    padding: 0 0 0 3.8em;
    text-indent: -3.8em;
  }
  .cardTable__noteItem + .cardTable__noteItem {
    margin: 10px 0 0;
  }
  .cardTable--double th[scope='col'].active {
    padding: 30px 20px 20px;
  }
  .cardList__heading {
    margin: 0 0 60px;
    font-size: 30px;
  }
  .cardList__inner {
    padding: 0 0 60px;
  }
  .cardList__inner--narrow {
    padding: 60px 0 0;
  }
  .cardList__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
  }
  .cardList__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
  }
  .cardList__list--small {
    justify-content: center;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
  }
  .cardList__list--single {
    margin: 0 0 0 55px;
    padding: 0 10px 0 25px;
    border-left: solid 1px #e2e2e2;
  }
  .cardList__list + .cardList__list {
    margin: 60px 0 0;
  }
  .cardList__item {
    width: 33.3%;
  }
  .cardList__item--harf {
    width: 50%;
  }

  .cardList__item:only-of-type {
    margin-right: auto;
    margin-left: auto;
  }

  .cardList__item figure {
    text-align: center;
  }
  .cardList__item figure img {
    width: 250px;
  }
  .cardList__item--border {
    border-left: 1px solid #e2e2e2;
  }
  .cardList__item--small {
    width: auto;
    margin: 0 0 0 20px;
    padding: 0;
  }
  .cardList__item--small:first-child {
    margin: 0;
  }
  .cardList__item--set {
    margin: 0 0 0 10px;
  }
  .cardList__item--set:first-child {
    margin: 0;
  }
  .cardList__name {
    margin: 0 0 20px;
    font-size: 14px;
    line-height: 1.60714;
  }
  .cardList__thum--small img {
    width: 200px;
  }
  .cardList__text {
    font-size: 16px;
    line-height: 1.6;
  }
  .cardList__mile {
    font-size: 26px;
  }
  .cardList__rice {
    font-size: 12px;
  }
  .notice__inner {
    width: 980px;
  }
  .notice__subHeading {
    margin: 50px 0 25px;
    padding: 0 0 20px;
    font-size: 22px;
  }
  .notice__table {
    width: 100%;
    margin: 18px 0 0;
  }
  .notice__table th, .notice__table td {
    height: 75px;
    padding: 20px;
  }
  .notice__table td {
    padding-left: 18px;
  }
  .notice__table td:first-child {
    padding-left: 0;
  }
  .flow__heading {
    padding: 60px 0;
    font-size: 30px;
  }
  .step__button a {
    font-size: 16px;
  }
  .step__button a:hover {
    background-color: #116cba;
  }
  .step__button--orange a {
    font-size: 16px;
  }
  .step__button--orange a:hover {
    background-color: #f07e36;
  }
  .step {
    width: 980px;
    margin: 30px auto 0px auto;
    padding: 0 0 60px;
  }
  .step.mT50 {
    margin-top: 50px;
  }
  .step__headline {
    padding: 60px 0 50px;
  }
  .step__heading-number {
    width: 80px;
    margin: 0 auto 25px;
  }
  .step__heading-number span {
    padding: 0 0 5px;
    font-size: 18px;
  }
  .step__heading-number span + span {
    padding: 0 0 15px;
    font-size: 60px;
  }
  .step__heading-text {
    font-size: 22px;
  }
  .step__content {
    padding: 0 60px;
  }
  .step__section {
    margin: 0 0 60px;
  }
  .step__button a {
    width: 300px;
    font-size: 14px;
  }
  .step__noteBox {
    padding: 25px;
  }
  .step__circleList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
  }
  .step__circleItem {
    height: 292px;
    width: 292px;
    margin: 0 84px 0 0;
  }
  .step__circleItem + .step__circleItem {
    margin: 0 0 0 84px;
  }

  .step__circleItem.column3 {
    height: 280px;
    width: 280px;
    margin: 0 10px 0;
  }

  .step__circleItem.column3:first-child,
  .step__circleItem.column3:last-child{
  margin:0;
  }

  .step__circleTextBottom {
    font-size: 20px;
  }
  .step__circleMile {
    font-size: 30px !important;
  }
  .familyCardInfo__button a {
    font-size: 16px;
  }
  .familyCardInfo__button a:hover {
    background-color: #116cba;
  }
  .familyCardInfo {
    padding-left: 450px;
    background: url('/promotion/jcb_anacard/images/cp1/bg_family_card_info_01.jpg') no-repeat 0 0;
    background-size: 450px auto;
    border:1px solid #ccc;
  }
  .familyCardInfo__inner {
    padding: 48px 38px;
  }
  .familyCardInfo__heading {
    margin: 0 0 15px;
    font-size: 24px;
  }
  .familyCardInfo__text {
    margin: 0 0 20px;
  }
  .familyCardInfo__button {
    width: 300px;
    margin: 0 auto 15px;
  }
  .familyCardInfo__button a {
    font-size: 14px;
  }
  .familyCardInfo__note {
    text-align: center;
  }
  .cv {
    padding: 20px 0 17px;
    background-color: rgba(0, 0, 0, 0.80);
  }
  .cv__buttonList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 1024px;
    margin: 0 auto;
    justify-content: center;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
  }
  .cv__buttonItem {
    margin: 0 5px;
  }
  .cv__buttonItem a {
    display: block;
  }
  .cv__buttonItem a:hover img {
    opacity: 0.8;
  }

.tabSwitch__top .tabSwitch__item a {
    width: 320px;
    padding: 12px 0;
    border-radius: 6px 6px 0 0;
    font-size: 16px;
}

.tabSwitch__top .tabSwitch__item a.active:after{
  content: "";
  position: absolute;
  right: 0;
  bottom: -16px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #074f8d transparent transparent transparent;
  border-width: 16px 16px 0 16px;
}

.tabSwitch__bottom .tabSwitch__item a {
    width: 320px;
    padding: 12px 0;
    border-radius: 0 0 6px 6px;
    font-size: 16px;
}

.tabSwitch__top.cp2 .tabSwitch__item a,
.tabSwitch__bottom.cp2 .tabSwitch__item a{
    width: 480px;
}

.tabSwitch__bottom .tabSwitch__item a.active:after{
  content: "";
  position: absolute;
  right: 0;
  top: -16px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: transparent transparent #074f8d transparent;
  border-width: 0 16px 16px 16px;
}

.tabSwitch__item a:hover {
  background: #dee6ec;
}

.tabSwitch__item a.active:hover {
  background: #074f8d;
  color: #fff;
}

.pc_not{
  display: none;
}

}
@media screen and (max-width: 700px) {
  .kv {
    height: 270px;
    background: url('/promotion/jcb_anacard/images/cp1/bg_kv_13.png') no-repeat 50% 50%;
    background-size: cover;
  }
  .kv__inner {
    padding: 30px 20px;
  }
  .kv__ttl {
    font-size: 18px;
    line-height: 1.44444;
  }
  .kv__ttl span {
    display: inline-block;
    padding: 0 0 0 30px;
  }
  .kv__ttl span:before {
    left: 5px;
    height: 18px;
    width: 21px;
  }
  .kv__lead {
    margin: 10px 0 0;
    padding: 0 0 4px;
    font-size: 14px;
    line-height: 1.57143;
  }
  .kv__main {
    margin: 5px 0 0;
    font-size: 14px;
    line-height: 1.42857;
  }
  .kv__mile {
    font-size: 30px;
  }
  .kv__rice {
    font-size: 10px;
  }
  .kv__note {
    margin: 5px 0 0;
    font-size: 10px;
    line-height: 1.6;
  }
  .section__heading {
    padding: 30px 20px;
    font-size: 24px;
  }
  .section__heading--sec1:after {
    right: -100px;
    height: 203px;
    width: 279px;
  }
  .section__heading--sec2:after {
    left: -240px;
    top: -50px;
    height: 145px;
    width: 475px;
  }
  .section__inner {
    padding: 30px 20px;
  }
  .cardTableWrap {
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
  }
  .cardTableWrap.js-responsive-table {
    overflow-x: visible;
  }


  .cardTable {
    width: 930px;
  }
  .cardTable tr:last-child td span {
    font-size: 22px;
  }
  .cardTable th[scope='col'] {
    padding: 15px 0 10px;
  }
  .cardTable th[scope='col']:first-child {
    width: 120px;
  }
  .cardTable td {
    padding: 20px 0;
  }
  .cardTable__thum--double img {
    width: 130px;
  }
  .cardTable__note {
    margin: 10px 0 0;
  }
  .cardTable__noteList {
    margin: 20px 0 0;
  }
  .cardTable--double th[scope='col'].active {
    padding: 15px 20px 10px;
  }
  .cardList__heading {
    margin: 0 0 30px;
    font-size: 20px;
  }
  .cardList__inner {
    padding: 0 0 30px;
  }
  .cardList__inner--narrow {
    padding: 30px 0 0;
  }
  .cardList__list--small {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
  }
  .cardList__list--single {
    margin: 30px 0 0;
    padding: 30px 0 0;
    border-top: solid 1px #e2e2e2;
  }
  .cardList__list + .cardList__list {
    margin: 30px 0 0;
    padding: 30px 0 0;
    border-top: solid 1px #e2e2e2;
  }
  .cardList__item + .cardList__item {
    margin: 30px 0 0;
  }
  .cardList__item--harf + .cardList__item--harf {
    margin: 30px 0 0;
  }
  .cardList__item--border {
    padding-top: 30px;
    border-top: 1px solid #e2e2e2;
  }
  .cardList__item--small {
    width: 50%;
    padding: 0 5px;
  }
  .cardList__item--small + .cardList__item--small {
    margin: 0;
  }
  .cardList__item--small:nth-child(n+3) {
    margin: 20px 0 0;
  }
  .cardList__item--small figure {
    text-align: center;
  }
  .cardList__item--small figure img {
    max-width: 130px;
  }
  .cardList__item--single {
    width: 100%;
  }
  .cardList__item--single figure {
    text-align: center;
  }
  .cardList__name {
    margin: 0 0 10px;
    font-size: 14px;
    line-height: 1.4;
  }
  .cardList__thum--small img {
    max-width: 130px;
  }
  .cardList__text {
    font-size: 14px;
    line-height: 1.6;
  }
  .cardList__mile {
    font-size: 22px;
  }
  .cardList__rice {
    font-size: 12px;
  }
  .notice__inner {
    padding: 30px 20px;
  }
  .notice__subHeading {
    margin: 25px 0 20px;
    padding: 0 0 15px;
    font-size: 18px;
  }
  .notice__table {
    margin: 15px 0 0;
  }
  .notice__table th, .notice__table td {
    padding: 10px;
  }
  .notice__table th {
    font-size: 12px;
  }
  .notice__table td {
    font-size: 11px;
  }

  .flow {
    background-size: 750px auto;
  }
  .flow__heading {
    padding: 50px 0;
    font-size: 24px;
  }
  .step__button a {
    font-size: 14px;
  }
  .step__button--orange a {
    font-size: 14px;
  }
  .step {
    margin: 20px 20px 0;
    padding: 0 0 45px;
  }
  .step.mT50 {
    margin: 50px 20px 0;
    padding: 0 0 45px;
  }
  .step__headline {
    padding: 45px 20px 35px;
  }
  .step__heading-number {
    width: 60px;
    margin: 0 auto 20px;
  }
  .step__heading-number span {
    padding: 0 0 3px;
    font-size: 16px;
  }
  .step__heading-number span + span {
    padding: 0 0 10px;
    font-size: 48px;
  }
  .step__heading-text {
    font-size: 18px;
  }
  .step__section {
    margin: 0 0 45px;
  }
  .step__noteBox {
    padding: 15px;
  }
  .step__circleItem {
    height: 280px;
    width: 280px;
    margin: 0 auto;
  }
  .step__circleItem + .step__circleItem {
    margin-top: 20px;
  }
  .step__circleTextBottom {
    font-size: 18px;
  }
  .step__circleMile {
    font-size: 28px !important;
  }
  .familyCardInfo__button a {
    font-size: 14px;
  }
  .familyCardInfo {
    padding-top: 50%;
    background: url('/promotion/jcb_anacard/images/cp1/bg_family_card_info_01.jpg') no-repeat 0 -15%;
    background-size: 100% auto;
  }
  .familyCardInfo__inner {
    padding: 30px 20px;
  }
  .familyCardInfo__heading {
    margin: 0 0 10px;
    font-size: 20px;
  }
  .familyCardInfo__text {
    margin: 0 0 20px;
  }
  .familyCardInfo__button {
    margin: 0 0 15px;
  }
  .cv {
    padding: 10px 6px 10px;
    background-color: rgba(0, 0, 0, 0.8);
  }
  .cv__buttonList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;

    -ms-flex-wrap: wrap;
  }
  .cv__buttonItem {
    width: 50%;
    padding: 0 3px;
  }
  .cv__buttonItem--spText {
    width: 100%;
    margin-top: 8px;
  }
  .cv__buttonItem--spText span {
    padding-left: 1.1em;
    color: #fff;
    font-size: 12px;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
    text-indent: -1.1em;
  }


.tabSwitch__top {
    width: 100%;
    margin: 50px auto 0;
}

.tabSwitch__top .tabSwitch__item,
.tabSwitch__bottom .tabSwitch__item {
  width: 32%;
  margin-right: 2%;
}

.tabSwitch__top .tabSwitch__item:last-child,
.tabSwitch__bottom .tabSwitch__item:last-child,
.tabSwitch__top.cp2 .tabSwitch__item:last-child,
.tabSwitch__bottom.cp2 .tabSwitch__item:last-child{
  margin-right: 0;
}

.tabSwitch__top.cp2 .tabSwitch__item,
.tabSwitch__bottom.cp2 .tabSwitch__item{
  width: 48%;
  margin-right: 2%;
}



.tabSwitch__top .tabSwitch__item a {
    width: 100%;
    padding: 3%;
    border-radius: 6px 6px 0 0;
    font-size: 14px;
}

.tabSwitch__top .tabSwitch__item a.active:after{
  content: "";
  position: absolute;
  right: 0;
  bottom: -18px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #074f8d transparent transparent transparent;
  border-width: 24px 24px 0 24px;
}


.tabSwitch__bottom {
    width: 100%;
    margin: 0 auto 50px;
}

.tabSwitch__bottom .tabSwitch__item a {
    width: 100%;
    padding: 3%;
    border-radius: 0 0 6px 6px;
    font-size: 14px;
}

.tabSwitch__bottom .tabSwitch__item a.active:after{
  content: "";
  position: absolute;
  right: 0;
  top: -18px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: transparent transparent #074f8d transparent;
  border-width: 0 24px 24px 24px;
}





.toggle_box{
  padding-left: 0;
  padding-right: 0;
}


.title_type01{
  color: #074f8d;
  font-size: 18px;
  text-align: center;
}
.title_type01 .cardList__mile{
  font-size: 26px;
}

.toggle_box .toggle_title{
  padding:10px 38px 10px 10px;
  font-size: 18px;
  background-size: 38px auto;
  width:auto;
}
.toggle_box .toggle_title.open{
  background-size: 38px auto;
}


.sp_not{
  display: none;
}

.notice__table2 td:nth-child(1){
  width:40%;
}

}
@media screen and (max-width: 374px) {
  .cv__buttonItem--spText span {
    text-align: left;
  }
}

@media all and (-ms-high-contrast: none){

.tabSwitch__bottom .tabSwitch__item a.active {
  margin-top:-1px;

}

}

@supports (-ms-ime-align: auto) {
.tabSwitch__bottom .tabSwitch__item a.active {
  margin-top:-1px;
}
}
