/* =========================================================
 general
========================================================= */
/* hgroup
--------------------------------------------------------- */
.cnt-campaign section {
  padding-top: 0;
}
@media (max-width: 767px) {
  .cnt-campaign .container {
    margin-right: auto;
    margin-left: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}
/* hgroup
--------------------------------------------------------- */
.cnt-campaign .hgroup {
  position: relative;
  margin-bottom: 60px;
  padding: 40px 30px;
  background: rgba(27, 184, 206, 0.2);
  text-align: center;
}
@media (max-width: 575px) {
  .cnt-campaign .hgroup {
    margin-bottom: 30px;
    padding: 13px 20px 9px;
  }
}
.cnt-campaign .hgroup h2 {
  margin: 0;
  color: #1bb8ce;
  font-size: inherit;
  text-align: center;
  line-height: 1.5;
}
.cnt-campaign .hgroup h2 span {
  display: block;
  font-size: 1.953em;
}
@media (min-width: 576px) {
  .cnt-campaign .hgroup h2 span {
    font-weight: bold;
  }
}
.cnt-campaign .hgroup h2 small {
  color: #1bb8ce;
  font-size: 1.563em;
}
.cnt-campaign .hgroup h2 small.cap {
  font-size: 1.25em;
}
@media (min-width: 576px) {
  .cnt-campaign .hgroup h2 small {
    font-weight: bold;
  }
}

/* btn-detail
--------------------------------------------------------- */
.cnt-campaign a.btn-detail {
  position: relative;
  border: 1px solid #1bb8ce;
  color: #1bb8ce !important;
  font-weight: bold;
  padding: 10px 12px 8px;
  border-radius: 5px;
}
.cnt-campaign a.btn-detail:after {
  content: "\e113";
  display: block;
  position: absolute;
  right: 10px;
  top: calc(50% - 7px);
  color: #1bb8ce;
  font-family: 'Glyphicons Halflings';
  font-style: normal;
  font-weight: 400;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.cnt-campaign a.btn-detail.collapsed:after {
  content: "\e114";
}


/* mb
--------------------------------------------------------- */
.cnt-campaign .mb-m {
  margin-bottom: 24px !important;
}
.cnt-campaign .mb-l {
  margin-bottom: 40px !important;
}

/* .table
--------------------------------------------------------- */
.cnt-campaign .table > thead > tr > th,
.cnt-campaign .table > tbody > tr > th,
.cnt-campaign .table > tfoot > tr > th,
.cnt-campaign .table > thead > tr > td,
.cnt-campaign .table > tbody > tr > td,
.cnt-campaign .table > tfoot > tr > td {
  line-height: 1.8;
}
.cnt-campaign .table {
  margin-top: 15px;
  margin-bottom: 0;
  border: none;
  border-bottom: 1px solid #a0a0a0;
}
.cnt-campaign .table th {
  background-color: #1bb8ce !important;
  color: white;
  border: none !important;
}
.cnt-campaign .table td {
  border: none !important;
  border-right: 1px solid #a0a0a0 !important;
  border-left: 1px solid #a0a0a0 !important;
  line-height: 1.8;
}
@media (min-width: 576px) {
  .cnt-campaign .table {
    border-left: 1px solid #a0a0a0;
  }
  .cnt-campaign .table tr {
    border-top: 1px solid #a0a0a0;
  }
}

 /* container
--------------------------------------------------------- */
.cnt-campaign .container {
  padding-bottom: 60px;
}
@media (min-width: 768px) {
  .cnt-campaign .container {
    padding-bottom: 100px;
  }
}
@media (min-width: 992px) {
  .cnt-campaign .container {
    padding-bottom: 120px;
  }
}
.cnt-campaign .container p, .cnt-campaign .container span {
  line-height: 1.8;
}

/* annotation
--------------------------------------------------------- */
.cnt-campaign span.annotation {
  display: block;
  padding-left: 1em;
  text-indent: -1em;
}
.cnt-campaign span.annotation.small {
  font-size: 80%;
}

/* =========================================================
 main
========================================================= */
/* pagetitle
--------------------------------------------------------- */
.cnt-campaign .pagetitle {
  position: relative;
  padding: 40px 30px;
  background: #1bb8ce;
  text-align: center;
}
@media (max-width: 575px) {
  .cnt-campaign .pagetitle {
    padding: 20px 20px 19px;
  }
}
.cnt-campaign .pagetitle h1 {
  margin: 0;
  color: #1bb8ce;
  font-size: inherit;
  text-align: center;
  line-height: 1.5;
  color: white;
  font-size: 1.953em;
}
@media (min-width: 576px) {
  .cnt-campaign .pagetitle h1 {
    font-weight: bold;
  }
}

/* special
--------------------------------------------------------- */
.cnt-campaign .cnt-special .kv {
  text-align: center;
}
.cnt-campaign .cnt-special .kv img {
  margin: auto;
}

/* henkin
--------------------------------------------------------- */
.cnt-campaign .cnt-henkin {
  margin-top: 60px;
}
@media (max-width: 575px) {
  .cnt-campaign .cnt-henkin {
    margin-top: 30px;
  }
}
.cnt-campaign .cnt-henkin .kv {
  margin-bottom: 30px;
}

/* deadline
--------------------------------------------------------- */
.cnt-campaign .deadline {
  margin-bottom: 16px;
  margin-top: -12px;
}
.cnt-campaign .deadline p {
  color: #f16a6a;
  font-weight: bold;
  font-size: 1.357em;
}
.cnt-campaign .deadline p span {
  font-size: 2.8rem;
}
.cnt-campaign figure {
  margin: 0;
}

/* main
--------------------------------------------------------- */
@media (min-width: 576px) {
  .cnt-campaign .cnt-main figure {
    max-width: 500px;
    margin: 0 auto;
  }
}

/* campaign-present
--------------------------------------------------------- */
.cnt-campaign .campaign-present {
  max-width: 500px;
  margin: 0 auto;
}

/* title
--------------------------------------------------------- */
.cnt-campaign .campaign-title {
  background: #4a3d37;
}
.cnt-campaign .campaign-title p {
  padding: 15px;
  color: white;
  font-size: 1.286em;
  line-height: 1.3;
}
.cnt-campaign .campaign-title p small {
  font-size: 0.777em;
  margin: 0 5px;
  line-height: inherit;
}

/* attention
--------------------------------------------------------- */
.cnt-campaign .campaign-attention {
  margin-top: 10px;
  font-size: 80%;
  text-align: right;
}
@media screen and (min-width: 576px){
  .cnt-campaign .attention-br-sp {
    display: none; }
}
@media screen and (max-width: 767px){
    .cnt-campaign .attention-br-pc {
      display: none; }
}
/* description
--------------------------------------------------------- */
.cnt-campaign .campaign-description {
  margin-top: 30px;
  margin-left: auto;
  margin-right: auto;
}

/* shoukai
--------------------------------------------------------- */
.cnt-campaign #campaign-shoukai figure {
  margin: 0 auto;
  padding: 25px;
}
.cnt-campaign #campaign-shoukai figure.wide {
  padding: 25px 6px;
}
.cnt-campaign #campaign-shoukai figure.points {
  padding: 5px 6px 35px;
}
@media (min-width: 576px) {
  .cnt-campaign #campaign-shoukai figure {
    max-width: 350px;
  }
}

/* syoukai
--------------------------------------------------------- */
.cnt-campaign .cnt-syoukai .container {
  margin-bottom: -43px;
}

/* link
--------------------------------------------------------- */
.cnt-campaign a.link {
  color: #1bb8ce;
  text-decoration: underline;
}
.cnt-campaign a.link:hover {
  text-decoration: none;
}
