@charset "UTF-8";
.breadCrumb {
  font-size: 12px;
  padding: 0 30px 12px;
  margin: 0 auto 12px;
  max-width: 1110px;
}
.breadCrumb a {
  color: #0062b0;
  text-decoration: underline;
}
.breadCrumb a:hover {
  text-decoration: none;
}
.spOnly {
  display: none;
}
.pcOnly {
  display: block;
}
.pcBr::before {
  content: "\A";
  white-space: pre;
}
.spBr::before {
  content: none;
}
img {
  max-width: 100%;
  height: auto;
}
section {
  width: 100%;
  font-size: 18px;
  margin-bottom: 90px;
}
.camp_inner {
  max-width: 1110px;
  padding: 0 30px;
  margin: 0 auto;
}
/*========================================
 key_visual
========================================*/
.key_visual {
  background-image: url(img/camp-paypal/bg_mv.jpg);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}
.kv_inner {
  max-width: 1110px;
  margin: 0 auto;
  padding: 90px 30px;
}
.kv_ttl h1 {
  text-align: center;
  font-size: min(8vw, 74px);
  font-weight: bold;
  margin-top: 60px;
  letter-spacing: 4px;
}
.kv_ttl h1 span {
  background: linear-gradient(transparent 70%, #c0ddfa 70%);
}
.kv_ttl p {
  text-align: center;
  font-size: min(5vw, 46px);
  font-weight: bold;
  margin-top: 10px;
}
.kv_inner .kv_txt {
  text-align: center;
  font-size: min(3.6vw, 26px);
  font-weight: bold;
  margin-top: 60px;
  background: rgba(255, 255, 255, 0.7);
  padding: 20px;
}
.kv_inner .kv_txt span {
  display: block;
  font-size: min(5vw, 36px);
  color: #CC0033;
  margin-top: 20px;
}
/*========================================
 camp_about
========================================*/
.camp_about {}
.camp_about h2 {
  margin: 60px 0 20px;
  font-size: min(3.8vw, 24px);
  font-weight: normal;
  color: #004da1;
  border-bottom: 2px solid #004da1;
}
.camp_about p {
  margin: 10px 0 20px;
  font-size: min(3.6vw, 18px);
  padding: 0 20px;
  line-height: 1.6;
}
.camp_about p span {
  display: inline-block;
  font-size: 80%;
}
.camp_about ul {
  margin: 10px 0 20px;
  padding: 0 20px;
}
.camp_about ul li {
  font-size: min(3.6vw, 18px);
  line-height: 1.6;
	text-indent: -1em;
    padding-left: 1em;
}
.camp_about ul li span {
  display: inline-block;
  font-size: 80%;
	padding-left: 3em;
}
.cmp_link {
  margin: 60px auto 30px;
  text-align: center;
  font-size: min(3.8vw, 24px);
}
.cmp_link a {
  text-decoration: underline;
  transition: all 0.6s;
}
.cmp_link a:hover {
  text-decoration: none;
}
/*========================================
 camp_info
========================================*/
.camp_info {}
.camp_info h2 {
  margin: 60px 0 20px;
  font-size: min(3.8vw, 24px);
  font-weight: normal;
  color: #004da1;
  border-bottom: 2px solid #004da1;
}
.camp_section {
  padding: 0 20px;
  font-size: min(3.4vw, 16px);
  line-height: 1.6;
}
.camp_section > div:not(:last-child) {
  margin-bottom: 60px;
}
.camp_section .p-info__under__h3 {
  font-size: min(3.6vw, 18px);
  margin-bottom: 10px;
}
.camp_section em {
  font-style: normal;
  font-weight: bold;
}
.iconList img {
  margin-right: 10px;
  max-width: 66px;
}
#flowchart ul {
  margin: 0;
  padding: 0;
  list-style: none;
  overflow: hidden;
}
#flowchart li {
  margin: 0 2px;
  width: 30px;
  float: left;
}
#flowchart li.guidBox {
  display: block;
  border: 1px solid #CCCCCC;
  background-color: #fff;
  text-decoration: none;
  width: 180px;
  height: 100%;
  margin: 1px;
  text-align: left;
}
#flowchart li span, .flowBox span, .flowBox2 span {
  display: block;
  font-weight: bold;
  text-align: center;
  background-color: #E8E8E8;
  border-bottom: solid 1px #c0c0c0;
}
#flowchart li p, .flowBox p, .flowBox2 p {
  padding: 5px;
  margin-bottom: 2px;
  line-height: 1.4em;
  font-size: min(3.2vw, 14px);
}
.komekome li {
	text-indent: -1em;
	padding-left: 1em;
}
.komekome li:last-of-type {
	text-indent: 0;
}
@media screen and (max-width: 479px) {
  .breadCrumb {
    display: none;
  }
  .spOnly {
    display: block;
  }
  .pcOnly {
    display: none;
  }
  .pcBr::before {
    content: none;
  }
  .spBr::before {
    content: "\A";
    white-space: pre;
  }
  section {
    font-size: 3.6vw;
    margin-bottom: 30px;
  }
  .camp_inner {
    padding: 0 15px;
  }
  .kv_inner {
    padding: 30px 15px;
  }
  .kv_ttl h1 {
    margin-top: 30px;
  }
  .kv_inner .kv_txt {
    margin-top: 30px;
    padding: 15px;
  }
  .kv_inner .kv_txt span {
    margin-top: 10px;
  }
  .camp_about h2 {
    margin: 30px 0 10px;
  }
  .camp_about p {
    padding: 0 10px;
  }
  .cmp_link {
    margin: 30px auto 20px;
  }
  .camp_section {
    padding: 0 10px;
  }
  .camp_section > div:not(:last-child) {
    margin-bottom: 30px;
  }
  .p-info__table.typeA table {
    width: 100%;
  }
  .p-info__table.typeA table tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .p-info__table.typeA table tr th, .p-info__table.typeA table tr td {
    width: 100%;
  }
  .p-info__table.typeA table tr th {
    text-align: center;
  }
  .p-info__table.typeA table tr td {
    border-top: 0;
  }
  .iconList img {
    margin-bottom: 4px;
    margin-right: 6px;
    width: 18%;
    max-width: 55px;
  }
  #flowchart li.guidBox {
    float: none;
    width: 98%;
    height: auto;
    margin: 8px auto;
  }
  #flowchart li:not(.guidBox) {
    text-align: center;
    float: unset;
    width: auto;
    margin: 8px auto;
  }
  #flowchart li:not(.guidBox) img {
    max-width: 30px;
    -moz-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
  }
  #flowchart li.guidBox img {
    max-width: 24px;
  }
}