@charset "utf-8";

.camp_c_inner {
  width: min(100%, 900px);
  color: #333333;
  font-size:max(14px, min(3vw,16px) );
}
.camp_c_inner,
.camp_c_inner .main {
  display: flex;
  flex-direction: column;
  gap: 1rem; /* 要素同士の間にだけ一律で余白が入る */
}
.camp_c_inner p,
.camp_c_inner div,
.camp_c_inner section {
  box-sizing:border-box;
}
.camp_c_inner img{
display: block;	
}
.camp_c_inner h1 {
  padding: 0;
  margin: 0;
  border-bottom: none;
  display: flex;
  justify-content: center;
}
.camp_c_inner p {
  padding: 0;
  line-height: 200%;
}
.camp_c_inner .note-list {
  font-size: max(12px, min(3vw,14px) );
  margin: 1em 0;
}
.camp_c_inner .note-list li {
  text-indent: -1em;
  padding-left: 1em;
}
.camp_c_inner .text-lsz {
  font-size: 1.2em;
  font-weight: bold;
}

/* -----------------------------
  .main
----------------------------- */
.camp_c_inner .main {
    padding: 0 5%;
}

.camp_c_inner .main h2 {
  background-color: #f2f4f7;
  font-size:max(16px, min(3vw,20px) );
  font-weight: bold;
  line-height: 300%;
  text-indent: 1em;
  margin: 2% 0 0;
  padding: 0;
}
.camp_c_inner .highlight-box {
  border: 2px solid #f2f4f7;
  padding: 10%;
  text-align: center;
}
.camp_c_inner .highlight-box dt {
  font-weight: bold;
  font-size:max(14px, min(3vw,18px) );
}
.camp_c_inner .highlight-box dt + dd:not(:last-child) {
  margin-bottom: 10%;
}
.camp_c_inner .btn-menu a {
  background-color: #04275e;
  border: 1px solid #04275e;
  border-radius: 25px;
  color: #ffffff;
  text-decoration: none;
  display: block;
  font-size:max(15px, min(3vw,20px) );
  width: 100%;
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  line-height: 260%;
  margin: 2% auto;
}
.camp_c_inner .btn-menu a:hover {
  background-color: #ffffff;
  color: #04275e;
}

/* -----------------------------
  クーポン利用条件
----------------------------- */
.camp_c_inner .attention {
  background-color: #f2f4f7;
  padding: 5%;
  margin: 4% 0;
}
.camp_c_inner .attention h2 {
  font-weight: bold;
  font-size:max(16px, min(3vw,20px) );
  line-height: 180%;
  padding: 0;
  margin: 0 0 1%;
}
.camp_c_inner .attention ul{
  margin-bottom: 2em;
}
.camp_c_inner .attention ul li {
  line-height: 200%;
  margin-left: 1em;
  text-indent: -1em;
  font-size:max(14px, min(3vw,16px) );
}
.camp_c_inner .attention ul li span {
  border-bottom: 2px solid #a2a2a2;
}
.camp_c_inner .attention dl {
  margin: 0;
  color: #fff;
}
.camp_c_inner .attention dl dt {
  background-color: #737373;
  font-size:max(16px, min(3vw,20px) );
  text-align: center;
  padding: 4% 0;
}
.camp_c_inner .attention dl dd {
  background-color: #7d7d7d;
  padding: 4%;
}
.camp_c_inner .attention dl dd ul {
  margin-bottom: 0;
}
.camp_c_inner .attention ul li .li-txt-indent {
  text-indent: 0;
  font-size:max(12px, min(3vw,14px) );
}
.camp_c_inner .attention ul li .li-txt-indent p {
  line-height: 180%;
}
.camp_c_inner .attention .no-item a {
  color: #fff;
  text-decoration: underline;
}
.camp_c_inner .btn-guide {
    background-color: #fff;
    border: 1px solid #256ad8;
    border-radius: 25px;
    display: block;
    font-size: 14px;
    width: 70%;
    padding-top: 0;
    padding-bottom: 0;
    text-align: center;
    line-height: 260%;
    margin: 6% auto;
}
.camp_c_inner .btn-guide a {
    text-align: center;
    display: block;
    vertical-align: middle;
    text-decoration: none;
    color: #256ad8;
}
.camp_c_inner .btn-line {
  margin: 0 auto 10%;
  width: 200px;
}
.camp_c_inner .btn-line img {
  width: 200px;
  height: 62px;
}
.camp_c_inner .pc-only {
  display: none;
}
.camp_c_inner .sp-only {
    display: block;
  }

/* -----------------------------
  PC用
----------------------------- */
@media screen and (min-width: 1025px) {
  .camp_c_inner .pc-only {
    display: block;
  }
  .camp_c_inner .sp-only {
    display: none;
  }
  .camp_c_inner,
  .camp_c_inner .main {
    gap: 1.5rem; /* 要素同士の間にだけ一律で余白が入る */
  }
  .camp_c_inner .highlight-box {
    padding: 5%;
  }
  .camp_c_inner .highlight-box dt + dd:not(:last-child) {
    margin-bottom: 5%;
  }
  .camp_c_inner .btn-menu a {
    width: 70%;
  }
  .camp_c_inner .attention {
    margin: 2% 0;
  }
  .camp_c_inner .attention dl dt {
    padding: 1% 0;
  }
  .camp_c_inner .attention dl dd {
    display: flex;
    padding: 30px 90px;
  }
  .camp_c_inner .attention dl dd ul+ul {
    margin-left: 80px;
  }
  .camp_c_inner .btn-guide {
    width: 40%;
    margin: 6% auto 2%;
  }
  .camp_c_inner .btn-line {
    margin: auto;
    width: 250px;
  }
  .camp_c_inner .btn-line img {
    width: 250px;
    height: 78px;
  }
}