.clear {
  clear: both
}
.link {
  font-size: 1.4rem
}
.link, .link:link, .link:visited {
  text-decoration: underline
}
.link:hover {
  opacity: .8
}
.va-t {
  vertical-align: top
}
.va-m {
  vertical-align: middle
}
.va-b {
  vertical-align: bottom
}
.fl-l {
  float: left
}
.fl-r {
  float: right
}
.touchdevice-block {
  display: none
}
body.touchdevice .touchdevice-block {
  display: block
}
.text-left {
  text-align: left
}
.text-right {
  text-align: right
}
.text-center {
  text-align: center
}
.text-justify {
  text-align: justify;
  text-justify: inter-ideograph
}
.text-nowrap {
  white-space: nowrap
}
/*img {
  max-width: 100%;
max-width: 1080px;
  height: auto
}
*/

.imgapp {
	margin: auto!important;
	width: 70%!important
}
  .pc {
    height: auto;
	  max-width: 1080px;

  }
  .sp {
    height: auto;
	width: 100%;

  }

.mt0 {
  margin-top: 0px !important
}
.mb0 {
  margin-bottom: 0px !important
}
.ml0 {
  margin-left: 0px !important
}
.mr0 {
  margin-right: 0px !important
}
.pt0 {
  padding-top: 0px !important
}
.pb0 {
  padding-bottom: 0px !important
}
.pl0 {
  padding-left: 0px !important
}
.pr0 {
  padding-right: 0px !important
}
.mt5 {
  margin-top: 5px !important
}
.mb5 {
  margin-bottom: 5px !important
}
.ml5 {
  margin-left: 5px !important
}
.mr5 {
  margin-right: 5px !important
}
.pt5 {
  padding-top: 5px !important
}
.pb5 {
  padding-bottom: 5px !important
}
.pl5 {
  padding-left: 5px !important
}
.pr5 {
  padding-right: 5px !important
}
.mt10 {
  margin-top: 10px !important
}
.mb10 {
  margin-bottom: 10px !important
}
.ml10 {
  margin-left: 10px !important
}
.mr10 {
  margin-right: 10px !important
}
.pt10 {
  padding-top: 10px !important
}
.pb10 {
  padding-bottom: 10px !important
}
.pl10 {
  padding-left: 10px !important
}
.pr10 {
  padding-right: 10px !important
}
.mt15 {
  margin-top: 15px !important
}
.mb15 {
  margin-bottom: 15px !important
}
.ml15 {
  margin-left: 15px !important
}
.mr15 {
  margin-right: 15px !important
}
.pt15 {
  padding-top: 15px !important
}
.pb15 {
  padding-bottom: 15px !important
}
.pl15 {
  padding-left: 15px !important
}
.pr15 {
  padding-right: 15px !important
}
.mt20 {
  margin-top: 20px !important
}
.mb20 {
  margin-bottom: 20px !important
}
.ml20 {
  margin-left: 20px !important
}
.mr20 {
  margin-right: 20px !important
}
.pt20 {
  padding-top: 20px !important
}
.pb20 {
  padding-bottom: 20px !important
}
.pl20 {
  padding-left: 20px !important
}
.pr20 {
  padding-right: 20px !important
}
.mt25 {
  margin-top: 25px !important
}
.mb25 {
  margin-bottom: 25px !important
}
.ml25 {
  margin-left: 25px !important
}
.mr25 {
  margin-right: 25px !important
}
.pt25 {
  padding-top: 25px !important
}
.pb25 {
  padding-bottom: 25px !important
}
.pl25 {
  padding-left: 25px !important
}
.pr25 {
  padding-right: 25px !important
}
.mt30 {
  margin-top: 30px !important
}
.mb30 {
  margin-bottom: 30px !important
}
.ml30 {
  margin-left: 30px !important
}
.mr30 {
  margin-right: 30px !important
}
.pt30 {
  padding-top: 30px !important
}
.pb30 {
  padding-bottom: 30px !important
}
.pl30 {
  padding-left: 30px !important
}
.pr30 {
  padding-right: 30px !important
}
.mt35 {
  margin-top: 35px !important
}
.mb35 {
  margin-bottom: 35px !important
}
.ml35 {
  margin-left: 35px !important
}
.mr35 {
  margin-right: 35px !important
}
.pt35 {
  padding-top: 35px !important
}
.pb35 {
  padding-bottom: 35px !important
}
.pl35 {
  padding-left: 35px !important
}
.pr35 {
  padding-right: 35px !important
}
.mt40 {
  margin-top: 40px !important
}
.mb40 {
  margin-bottom: 40px !important
}
.ml40 {
  margin-left: 40px !important
}
.mr40 {
  margin-right: 40px !important
}
.pt40 {
  padding-top: 40px !important
}
.pb40 {
  padding-bottom: 40px !important
}
.pl40 {
  padding-left: 40px !important
}
.pr40 {
  padding-right: 40px !important
}
.mt45 {
  margin-top: 45px !important
}
.mb45 {
  margin-bottom: 45px !important
}
.ml45 {
  margin-left: 45px !important
}
.mr45 {
  margin-right: 45px !important
}
.pt45 {
  padding-top: 45px !important
}
.pb45 {
  padding-bottom: 45px !important
}
.pl45 {
  padding-left: 45px !important
}
.pr45 {
  padding-right: 45px !important
}
.mt50 {
  margin-top: 50px !important
}
.mb50 {
  margin-bottom: 50px !important
}
.ml50 {
  margin-left: 50px !important
}
.mr50 {
  margin-right: 50px !important
}
.pt50 {
  padding-top: 50px !important
}
.pb50 {
  padding-bottom: 50px !important
}
.pl50 {
  padding-left: 50px !important
}
.pr50 {
  padding-right: 50px !important
}
.mt-5 {
  margin-top: -5px !important
}
.mb-5 {
  margin-bottom: -5px !important
}
.ml-5 {
  margin-left: -5px !important
}
.mr-5 {
  margin-right: -5px !important
}
.mt-10 {
  margin-top: -10px !important
}
.mb-10 {
  margin-bottom: -10px !important
}
.ml-10 {
  margin-left: -10px !important
}
.mr-10 {
  margin-right: -10px !important
}
.mt-15 {
  margin-top: -15px !important
}
.mb-15 {
  margin-bottom: -15px !important
}
.ml-15 {
  margin-left: -15px !important
}
.mr-15 {
  margin-right: -15px !important
}
.mt-20 {
  margin-top: -20px !important
}
.mb-20 {
  margin-bottom: -20px !important
}
.ml-20 {
  margin-left: -20px !important
}
.mr-20 {
  margin-right: -20px !important
}
.mt-25 {
  margin-top: -25px !important
}
.mb-25 {
  margin-bottom: -25px !important
}
.ml-25 {
  margin-left: -25px !important
}
.mr-25 {
  margin-right: -25px !important
}
.w1em {
  width: 1em !important
}
.w2em {
  width: 2em !important
}
.w3em {
  width: 3em !important
}
.w4em {
  width: 4em !important
}
.w5em {
  width: 5em !important
}
.w6em {
  width: 6em !important
}
.w7em {
  width: 7em !important
}
.w8em {
  width: 8em !important
}
.w9em {
  width: 9em !important
}
.w10em {
  width: 10em !important
}
.w11em {
  width: 11em !important
}
.w12em {
  width: 12em !important
}
.w13em {
  width: 13em !important
}
.w14em {
  width: 14em !important
}
.w15em {
  width: 15em !important
}
.w16em {
  width: 16em !important
}
.w17em {
  width: 17em !important
}
.w18em {
  width: 18em !important
}
.w19em {
  width: 19em !important
}
.w20em {
  width: 20em !important
}
.max-w1em {
  max-width: 1em
}
.max-w2em {
  max-width: 2em
}
.max-w3em {
  max-width: 3em
}
.max-w4em {
  max-width: 4em
}
.max-w5em {
  max-width: 5em
}
.max-w6em {
  max-width: 6em
}
.max-w7em {
  max-width: 7em
}
.max-w8em {
  max-width: 8em
}
.max-w9em {
  max-width: 9em
}
.max-w10em {
  max-width: 10em
}
.max-w11em {
  max-width: 11em
}
.max-w12em {
  max-width: 12em
}
.max-w13em {
  max-width: 13em
}
.max-w14em {
  max-width: 14em
}
.max-w15em {
  max-width: 15em
}
.max-w16em {
  max-width: 16em
}
.max-w17em {
  max-width: 17em
}
.max-w18em {
  max-width: 18em
}
.max-w19em {
  max-width: 19em
}
.max-w20em {
  max-width: 20em
}
.max-w21em {
  max-width: 21em
}
.max-w22em {
  max-width: 22em
}
.max-w23em {
  max-width: 23em
}
.max-w24em {
  max-width: 24em
}
.max-w25em {
  max-width: 25em
}
.max-w26em {
  max-width: 26em
}
.max-w27em {
  max-width: 27em
}
.max-w28em {
  max-width: 28em
}
.max-w29em {
  max-width: 29em
}
.max-w30em {
  max-width: 30em
}
.max-w31em {
  max-width: 31em
}
.max-w32em {
  max-width: 32em
}
.max-w33em {
  max-width: 33em
}
.max-w34em {
  max-width: 34em
}
.max-w35em {
  max-width: 35em
}
.max-w36em {
  max-width: 36em
}
.max-w37em {
  max-width: 37em
}
.max-w38em {
  max-width: 38em
}
.max-w39em {
  max-width: 39em
}
.max-w40em {
  max-width: 40em
}
.min-w1em {
  min-width: 1em
}
.min-w2em {
  min-width: 2em
}
.min-w3em {
  min-width: 3em
}
.min-w4em {
  min-width: 4em
}
.min-w5em {
  min-width: 5em
}
.min-w6em {
  min-width: 6em
}
.min-w7em {
  min-width: 7em
}
.min-w8em {
  min-width: 8em
}
.min-w9em {
  min-width: 9em
}
.min-w10em {
  min-width: 10em
}
.min-w11em {
  min-width: 11em
}
.min-w12em {
  min-width: 12em
}
.min-w13em {
  min-width: 13em
}
.min-w14em {
  min-width: 14em
}
.min-w15em {
  min-width: 15em
}
.min-w16em {
  min-width: 16em
}
.min-w17em {
  min-width: 17em
}
.min-w18em {
  min-width: 18em
}
.min-w19em {
  min-width: 19em
}
.min-w20em {
  min-width: 20em
}
.container-lg {
  max-width: 1400px;
/*  max-width: 1080px;*/
  margin: 0 auto
}
@media (max-width: 768px) {
  .pc {
    display: none
  }
}
.sp {
  display: none
}
@media (max-width: 768px) {
  .sp {
    display: block;
	text-align: center;  
  }
  .spimg {
width: 60%!important
	}
}
.br {
  display: none
}
@media (max-width: 768px) {
  .br {
    display: block
  }
}
.main {
  background-color: #f4f9fa
}
.main a {
  color: #0679fb;
  text-decoration: underline
}
.main-section-h1 {
  text-align: center;
  position: relative;
  z-index: 0;
  height: 538px;
  max-width: 1400px;
  margin: -85px auto 0 auto;
  width: 100%;
  background: url(../images/mainTitle-pc.png) top center no-repeat
}
@media (max-width: 768px) {
  .main-section-h1 {
    margin: 0 auto 0 auto;
    height: auto;
    background: none
  }
	.imgapp {
	margin: auto!important;
	width: 100%!important
}

}
.main-section-h1-app {
  position: relative;
  top: calc(60% + 28px);
  margin: 105px auto;
  width: 100%;
  max-width: 560px;
  transform: translateY(-50%) translateX(-130px);
  padding: 6px 6px;
  border-radius: 10px;
  background-color: rgba(255, 255, 255, 0.5)
}
@media (max-width: 768px) {
  .main-section-h1-app {
    padding: 0px;
    margin: 0;
    position: absolute;
    max-width: 140px;
    top: calc(60%);
    left: calc(7%);
    transform: translateY(-50%) translateX(0);
    background-color: rgba(255, 255, 255, 0)
  }
}
@media (max-width: 320px) {
  .main-section-h1-app {
    padding: 0px;
    max-width: 84px;
    top: calc(70%);
    left: calc(14%);
    background-color: rgba(255, 255, 255, 0)
  }
}
.main-section-h1-app a {
  margin: 10px;
  display: inline-block
}
@media (max-width: 768px) {
  .main-section-h1-app a {
    margin: 4px 2px
  }
}
.main-section-h2 {
  text-align: center;
  margin-bottom: -60px
}
@media (max-width: 768px) {
  .main-section-h2 {
    margin-bottom: 0px;
    padding-top: 20px
  }
}
.main-section-ast {
  background-color: #212121;
  padding: 10px 25px;
  border-radius: 50px;
  text-align: center;
  display: table;
  margin: 0 auto
}
@media (max-width: 768px) {
  .main-section-ast {
    border-radius: 10px;
    text-align: left;
    padding: 12px 15px
  }
}
.main-section-ast > li {
  color: #ffffff;
  font-size: 13px;
  font-weight: bold;
  text-indent: -1em;
  padding-left: 1em
}
.main-section-ast > li > span {
  color: #fb0202
}
.main-section-row {
  display: flex;
  justify-content: space-around;
  margin-top: -40px;
  margin-bottom: 25px;
  position: relative;
  z-index: 50
}
@media (max-width: 768px) {
  .main-section-row {
    margin-top: -30px
  }
}
.main-section-row p {
  font-size: 16px;
  font-weight: bold
}
@media (max-width: 768px) {
  .main-section-row p {
    font-size: 11px
  }
}
.main-section-row p:first-child {
  background-color: #fb0202;
  border: 4px solid #ffffff;
  text-align: center;
  color: #ffffff;
  padding: 17px 15px;
  font-weight: bold;
  font-size: 23px;
  display: table;
  margin: 0 auto 5px auto;
  border-radius: 80px
}
@media (max-width: 768px) {
  .main-section-row p:first-child {
    border: 2px solid #ffffff;
    font-size: 15px
  }
}
.main-section-row-col {
  padding: 0 15px;
  display: flex
}
@media (max-width: 768px) {
  .main-section-row-col {
    padding: 10px 9px;
	  display: table-cell
  }
}
.main-section-row-col figure {
  margin-bottom: 5px
}
.main-section-row-col div {
  max-width: 160px
}
.main-section-campaign {
  background-color: #ffffff;
  padding: 35px 0px 20px 0px;
  border-radius: 10px;
  max-width: 1000px;
  margin: 0 auto 30px auto
}
@media (max-width: 768px) {
  .main-section-campaign {
    padding: 24px 0px 0px 0px;
    margin: 0 auto 15px auto
  }
}
.main-section-campaign-h2 {
  text-align: center;
  margin-bottom: 20px
}
.main-section-campaign-lead {
  font-weight: bold;
  font-size: 17px;
  text-align: center;
  padding: 0 15px
}
@media (max-width: 768px) {
  .main-section-campaign-lead {
    font-size: 13px
  }
}
.main-section-campaign-rowFirst {
  margin-top: 12px;
  display: table
}
@media (max-width: 768px) {
  .main-section-campaign-rowFirst {
    display: block
  }
}
.main-section-campaign-rowFirst-list {
  display: table-cell;
  font-size: 16px;
  font-weight: bold;
  vertical-align: middle;
  padding-left: 80px;
  padding-right: 5px
}
@media (max-width: 768px) {
  .main-section-campaign-rowFirst-list {
    padding: 0 15px;
    display: block;
    margin-bottom: 5px
  }
}
.main-section-campaign-rowFirst-list li {
  text-indent: -1em;
  padding-left: 1em
}
@media (max-width: 768px) {
  .main-section-campaign-rowFirst-list li {
    font-size: 10px
  }
}
.main-section-campaign-rowFirst figure {
  width: 500px
}
@media (max-width: 768px) {
  .main-section-campaign-rowFirst figure {
    width: auto
  }
}
.main-section-campaign-row {
  margin-top: 12px;
  padding: 0 80px
}
@media (max-width: 768px) {
  .main-section-campaign-row {
    padding: 0 15px
  }
}
@media (max-width: 768px) {
  .main-section-campaign-row-list {
    padding: 0 15px
  }
}
.main-section-campaign-row-list li {
  text-indent: -1em;
  padding-left: 1em;
  font-size: 16px;
  font-weight: bold
}
@media (max-width: 768px) {
  .main-section-campaign-row-list li {
    font-size: 12px
  }
}
.main-section-campaign-row-listSmall {
  padding-left: 1.2em;
  padding-bottom: 40px
}
@media (max-width: 768px) {
  .main-section-campaign-row-listSmall {
    padding-bottom: 25px
  }
}
.main-section-campaign-row-listSmall li {
  font-size: 12px;
  font-weight: bold;
  text-indent: -1em;
  padding-left: 1em
}
@media (max-width: 768px) {
  .main-section-campaign-row-listSmall li {
    font-size: 10px
  }
}
.main-section-box {
  background-color: #ffffff;
  padding: 20px 50px;
  max-width: 730px;
  margin: 0 auto;
  border-radius: 10px;
  text-align: center;
  position: relative
}
@media (max-width: 768px) {
  .main-section-box {
    padding: 15px 35px
  }
}
.main-section-box::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -60px;
  border-style: solid;
  border-width: 40px 100px 0 100px;
  border-color: #ee4242 transparent transparent transparent
}
@media (max-width: 768px) {
  .main-section-box::after {
    bottom: -40px;
    border-width: 24px 70px 0 70px
  }
}
.main-section-box-h3 {
  font-size: 24px;
  font-weight: bold
}
@media (max-width: 768px) {
  .main-section-box-h3 {
    font-size: 18px
  }
}
.main-section-box p {
  font-weight: bold;
  font-size: 14px
}
@media (max-width: 768px) {
  .main-section-box p {
    font-size: 12px;
    text-align: center !important
  }
}
.main-section-box-row {
  margin: 20px 0;
  display: flex;
  justify-content: space-between
}
.main-section-box-row a {
  padding: 0 10px
}
@media (max-width: 768px) {
  .main-section-box-row {
    margin: 10px 0
  }
}
.main-section-iphone {
  margin: 100px 0 50px 0
}
@media (max-width: 768px) {
  .main-section-iphone {
    margin: 60px 0 15px 0
  }
}
.main-section:nth-child(1) {
  padding: 0
}
.main-section:nth-child(2) {
  padding: 0 15px 65px 15px
}
@media (max-width: 768px) {
  .main-section:nth-child(2) {
    padding: 0 15px 25px 15px
  }
}
.main-section:nth-child(3) {
  padding: 70px 15px 50px 15px;
  text-align: center;
  background-color: #ebebe9
}
@media (max-width: 768px) {
  .main-section:nth-child(3) {
    padding: 25px 15px
  }
}
.main-section:nth-child(3) p {
  font-size: 15px;
  text-indent: -1em;
  padding-left: 1em
}
@media (max-width: 768px) {
  .main-section:nth-child(3) p {
    font-size: 12px;
    text-align: left
  }
}
.bn01 {
margin: auto!important
}
.bn01:hover {
  opacity: 0.8;
}
.box {
  border: 2px solid #FF0000;
  margin: 15px;
  padding: 10px;
  background-color: #fff;
}
.boxtext {
  font-size: 1.5rem;
}
@media screen and (max-width: 960px) {
  .boxtext {
    font-size: 1.3rem;
    text-align: left;
  }
}