@charset "UTF-8";
section#campaignBox {
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-content: center;
  align-items: center;
  flex-wrap: nowrap;
}

img {
  width: 100%;
  display: inline-block;
  margin: 0;
  padding: 0;
}

.spView {
  display: block;
}

.pcView {
  display: none;
}

section#campaignBox h1 {
  margin: 0;
  padding: 0;
}

.textColorRed {
  color: red;
}

@media screen and (min-width: 768px) {
  .spView {
    display: none;
  }

  .pcView {
    display: block;
  }
}

section#campaignBox button {
  background: #fc5e02;
  margin: 1em auto;
  padding: 1em;
  border: none;
  border-radius: 50px;
  width: 70%;
  max-width: 350px;
}

section#campaignBox button a,
section#campaignBox button a:link,
section#campaignBox button a:visited,
section#campaignBox button a:hover {
  color: #fff;
  font-weight: bold;
  font-size: large;
  text-decoration: none;
  cursor: pointer;
  width: 100%;
  display: inline-block;
  text-align: center;
}

section#campaignBox button a:hover {
  opacity: 0.6;
}

article#campaign_idx {
  width: 100%;
  margin: 0 auto;
}

article.contentDetails {
  width: 90%;
  margin: 0 auto 1.5em;
  display: inline-block;
}

article.contentDetails h2 {
  font-size: 1.3em;
  width: 100%;
  border-bottom: 2px solid #303030;
  margin-bottom: 0.5em;
}

article.contentDetails h2 + p {
  color: red;
  font-weight: bold;
  margin-bottom: 0.5em;
}

article.contentDetails h3 {
  font-size: 1.1em;
  margin-bottom: 0.3em;
}

@media screen and (min-width: 768px) {
  section#campaignBox {
    width: 90%;
    max-width: 1024px;
    margin: 0 auto;
  }

  article#campaign_idx {
    width: 100%;
    margin: 0 auto;
  }
  article.contentDetails {
    width: 100%;
    margin: 0 auto 1.5em;
  }
}

article.contentDetails > ul.markAsterisk {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

article.contentDetails > ul.markAsterisk li {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  margin-bottom: 0.5em;
}

article.contentDetails > ul.markAsterisk li:before {
  content: "※";
  flex-shrink: 0;
  margin-right: 0.2em;
}

article.contentDetails > ul.markDot {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

article.contentDetails > ul.markDot li {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  margin-bottom: 0.5em;
}

article.contentDetails > ul.markDot li:before {
  content: "・";
  flex-shrink: 0;
  margin-right: 0.2em;
}

article.contentDetails > ul.markDot li span {
  display: inline;
}

article.contentDetails > ul.markNumber {
  list-style-type: decimal;
  color: red;
  font-weight: bold;
  width: 100%;
  padding-left: 1.5em;
  margin: 0 auto;
  margin-bottom: 0.5em;
}

article.contentDetails > ul.markNumber li {
  display: list-item;
  list-style-type: decimal !important;
}

article.contentDetails > ul.markNumber li div {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
}

article.contentDetails > ul li a,
article.contentDetails > ul li a:link,
article.contentDetails > ul li a:visited,
article.contentDetails > ul li a:hover {
  color: #303030;
  margin-bottom: 0.6em;
  font-weight: normal;
  text-align: left;
  text-decoration: underline;
}

article.contentDetails > ul li span a,
article.contentDetails > ul li span a:link,
article.contentDetails > ul li span a:visited,
article.contentDetails > ul li span a:hover {
  color: blue;
}

span.red {
  color: red;
}
