@charset "UTF-8";
a.txtLink {
  text-decoration: underline;
  color: #0000ff;
  display: inline;
}

.bgOrange {
  background-color: #ffe2e2;
  padding: 10.4% 5.2% 7.2916%;
}

.stepBox {
  position: relative;
  background-color: #FFF;
  border-radius: 15px;
  max-width: 860px;
  margin: 0 auto;
  padding: 10.4% 0 7%;
}
@media only screen and (max-width: 959px) {
  .stepBox {
    padding-left: 5.2%;
    padding-right: 5.2%;
  }
}

.stepBox::before {
  position: absolute;
  content: "";
  background: url("../img/img_dec_step01.png") no-repeat center top/100%;
  top: -32px;
  left: 50%;
  width: 224px;
  height: 94px;
  transform: translateX(-50%);
}

.stepBox:nth-of-type(2)::before {
  background: url("../img/img_dec_step02.png") no-repeat center top/100%;
}

.stepBox:first-of-type::after {
  position: absolute;
  display: block;
  content: "";
  bottom: -6%;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 45px solid transparent;
  border-left: 45px solid transparent;
  border-top: 50px solid #ffffff;
  border-bottom: 0;
  transform: translate(-50%, 99%);
}

.stepBox + .stepBox {
  margin-top: 19%;
}

.stepBox_annotation {
  text-align: center;
  padding: 2.0832% 0 0;
}

@media only screen and (max-width: 640px) {
  .stepBox_annotation {
    font-size: 12.6px;
  }
}
.stepBox .contsImg,
.bgDaisy > .contsImg {
  max-width: 740px;
  padding: 0;
}

.stepBox .contsImg,
.stepBox_annotation {
  width: 86.1%;
  margin: 0 auto;
}

.mw960 {
  max-width: 860px !important;
  padding: 0;
}
@media only screen and (max-width: 959px) {
  .mw960 {
    padding-left: 5.2%;
    padding-right: 5.2%;
  }
}

.coordinationBtn a,
.entryBtn a {
  max-width: 740px;
  width: 77.1%;
  margin: 0 auto;
}

.stepBox .coordinationBtn a,
.stepBox .entryBtn a {
  max-width: 740px;
  width: 86.1%;
}

.orange_bg {
  background-color: #ffe2e2;
}

.bgYellow {
  background-color: #fffbe9;
}

.topBorder, .bottomBorder {
  position: relative;
}

.topBorder::before, .bottomBorder::after {
  position: absolute;
  content: "";
  left: 0;
  width: 100%;
  height: 4px;
}

.topBorder::before {
  background: url(../img/bg_01.png) no-repeat center top, #FFF;
  top: 0;
}

.bottomBorder::after {
  background: url(../img/bg_01.png) no-repeat center bottom, #FFF;
  bottom: 0;
}

.coordination_status {
  padding: 10.4% 0 17%;
}

.coordination_merit {
  padding: 26% 0 10%;
}

.coordination_merit .imgTtl {
  position: absolute;
  top: -3.75%;
  left: 0;
}

.coordination_status .contsImg,
.coordination_merit .contsImg,
.coordination_privilege .contsImg {
  max-width: 860px;
  padding: 0;
}
@media only screen and (max-width: 959px) {
  .coordination_status .contsImg,
  .coordination_merit .contsImg,
  .coordination_privilege .contsImg {
    padding-left: 5.2%;
    padding-right: 5.2%;
  }
}

.bnrArea, .coordination_privilege {
  padding: 11% 0;
}

.bnrArea .bnrLink a {
  display: block;
  max-width: 840px;
  width: 87.5%;
  margin: 0 auto;
}

.bnrAttentionNote {
  font-size: 18px;
}
@media only screen and (max-width: 959px) {
  .bnrAttentionNote {
    font-size: 10px;
  }
}

#campaign {
  padding: 9% 0 6%;
}

/* ご注意事項 */
.cpNotes01 {
  max-width: 840px;
  width: 87.5%;
  margin: 0 auto;
}

.cpNotesBtn01 {
  width: 100%;
  display: table;
}

.cpNotesBtn01 a {
  width: 100%;
  display: table-cell;
  vertical-align: middle;
  border-top: 1px solid #cc0033;
}

.cpNotesFlame01 {
  display: none;
  background-color: #fff;
  border-left: 2px solid #cc0033;
  border-right: 2px solid #cc0033;
  border-bottom: 2px solid #cc0033;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

@media only screen and (min-width: 361px) {
  .cpNotesFlame01 {
    border-width: 3px;
  }
}
.contsTxt.cpCode {
  margin-top: 1.0416%;
  padding: 0 6.25% 4.1664%;
}
.contsTxt.note {
  font-size: 18px;
  padding: 0 5%;
}
@media only screen and (max-width: 959px) {
  .contsTxt.note {
    font-size: 12px;
  }
}

@media only screen and (max-width: 959px) {
  .stepBox::before {
    top: -3.3vw;
    width: 23.4vw;
    height: 9.8vw;
  }
  .stepBox:first-of-type::after {
    border-right: 4.7vw solid transparent;
    border-left: 4.7vw solid transparent;
    border-top: 5.2vw solid #ffffff;
  }
}
@media screen and (max-width: 640px) {
  .topBorder::before, .bottomBorder::after {
    height: 2px;
    background-repeat: repeat-x;
    background-size: contain;
  }
}
/* フローティングバナー */
.floatSpBnr {
  width: 100%;
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 2;
  box-sizing: border-box;
}

.floatSpLink {
  width: 100%;
  margin: 0 auto;
  display: block;
}

.floatSpBnr img {
  width: 100%;
}

.floatPcBnr {
  width: 10.4vh;
  height: 78%;
  margin: auto;
  display: block;
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: 2;
}

.floatPcLink + .floatPcLink {
  margin-top: 19%;
}

.floatPcLink img {
  height: 100%;
}

a.floatPcLink {
  display: block;
}

@media only screen and (max-width: 959px) and (min-width: 641px) {
  .floatPcBnr {
    width: 13.85%;
  }
}
@media only screen and (max-width: 640px) {
  .floatSpBnr, a.floatSpLink {
    display: block;
  }
  .floatPcBnr, a.floatPcLink {
    display: none;
  }
  .flbnpb {
    padding-bottom: 45% !important;
  }
}
