@charset "UTF-8";

/* =========================================================
 * 応募要項
 * ========================================================= */

#guideline {
  margin: min(5vw, 60px) auto min(10vw, 120px);
  /*360–834px：400px≈15px、834px≈17px*/
  font-size: clamp(0.926rem, calc(0.822rem + 0.461vw), 1.063rem);
  color: var(--text02-c);
}

#guideline .content-bg-con::before {
  /*background-color: var(--text01-c);*/
  background-color: #FFFFFF;
  /*opacity: 0.9;*/
}

.content-intro-part {
  margin: 0 0 2.5rem;
  text-align: center;
}

.intro-text01 {
  display: inline-block;
  text-align: left;
  /*360–834px：400px≈16px、834px≈18px*/
  font-size: clamp(0.988rem, calc(0.885rem + 0.461vw), 1.125rem);
}

.intro-text02 {
  text-align: left;
  /*360–834px：400px≈16px、834px≈18px*/
  font-size: clamp(0.988rem, calc(0.885rem + 0.461vw), 1.125rem);
}

.intro-text01 a,
.intro-text02 a {
  color: var(--link-c);
}

.intro-term01 {
  width: 100%;
  max-width: 840px;
  /*display: inline-block;*/
  margin: 2em auto 0;
  padding: 1em 0.5em;
  /*360–834px：400px≈24px、834px≈30px*/
  font-size: clamp(1.4654rem, calc(1.1544rem + 1.3825vw), 1.875rem);
  font-weight: 600;
  color: var(--text03-c);
  text-align: center;
  background-color: var(--text01-c);
  /*border: 1px solid var(--text02-c);*/
}

.intro-term01 span {
  font-size: 0.75em;
}

#guideline .btn-con {
  margin: min(3cqw, 36px) auto;
}

.btn-part {
  width: 100%;
  margin: 10cqw auto;
}

.btn-apply {
  width: 100%;
  max-width: 360px;
  margin-inline: auto;
}

#guideline-contact+.btn-part .btn-apply {
  --btn-apply-width: 420px;
  width: min(100%, var(--btn-apply-width));
}

@media screen and (max-width: 767px) {
  #guideline-contact+.btn-part .btn-apply {
    --btn-apply-width: 480px;
  }

  #guideline .btn-part .btn02-con {
    width: 92%;
  }
}

#guideline .btn02-con {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(8cqw, 48px);
}

#guideline .btn-apply--disabled,
#guideline .btn-apply.no-link {
  --btn-apply-face-color: #C8C8C8;
  --btn-apply-rail-color: #E2E2E2;
  pointer-events: none;
  cursor: default;
}

#guideline-bottom-entry {
  margin-top: 2.5rem;
  padding: 2.5rem 0 0;
  border-top: 4px dotted var(--text03-c);
  text-align: center;
}

.btn-caution {
  margin: 2em 0 0;
  display: inline-block;
  text-align: left;
  padding-left: 1em;
  text-indent: -1em;
}

#guideline .rule-part {
  margin: 1.5rem 0 0;
}

#guideline01 .rule-part {
  margin-bottom: 4rem;
}

.rule-part a {
  color: var(--link-c);
}

#guideline01 .part-title {
  margin: 0 0 0.5em;
  padding-bottom: 0.375em;
  /*360–834px：400px≈20px、834px≈28px*/
  font-size: clamp(1.204rem, calc(0.789rem + 1.843vw), 1.750rem);
  font-weight: 600;
  color: var(--text03-c);
  border-bottom: 1px solid var(--text03-c);
}

.main-text {
  /*360–834px：400px≈16px、834px≈18px*/
  font-size: clamp(0.988rem, calc(0.885rem + 0.461vw), 1.125rem);
}

.main-text span {
  font-weight: 500;
}

.indent-05 {
  padding-left: 0.5em;
  text-indent: -0.5em;
}

.indent-1 {
  padding-left: 1em;
  text-indent: -1em;
}

.indent-1h {
  padding-left: 1.625em;
  text-indent: -1.625em;
}

.indent-2 {
  padding-left: 2em;
  text-indent: -2em;
}

.indent-w-1 {
  padding-left: 1em;
}

.indent-w-1h {
  padding-left: 1.625em;
}

.indent-w-2 {
  padding-left: 2em;
}

.indent-w-2h {
  padding-left: 2.5em;
}

.indent-t-1 {
  padding-left: 1.25em;
  text-indent: -0.75em;
}

.indent-t-2 {
  padding-left: 2em;
  text-indent: -0.625em;
}

.indent-t-2q {
  padding-left: 2.25em;
  text-indent: -0.5em;
}

.indent-t-2h {
  padding-left: 2.5em;
  text-indent: -0.875em;
}

.indent-t-3 {
  padding-left: 3em;
  text-indent: -0.5em;
}

.indent-t-3h {
  padding-left: 3em;
  text-indent: -1.625em;
}

.indent-t-4 {
  padding-left: 4em;
  text-indent: -0.875em;
}

.rule-theme01 {
  margin: 0 0 0.5em;
  padding-bottom: 0.5em;
  border-bottom: 1px dashed var(--base-c);
  font-size: 1.125em;
  font-weight: 600;
}

.rule-theme02 {
  font-size: 1.25em;
  font-weight: 600;
}

@media print,
screen and (min-width: 835px) {

  #guideline01 .rule-part {
    margin-bottom: 5rem;
  }

  .intro-text01 a:hover,
  .rule-part a:hover {
    text-decoration: underline;
  }

  .rule-part .btn-part a:hover {
    text-decoration: none;
  }

  .btn-part {
    margin: min(5cqw, 72px) auto;
  }

  .btn-apply {
    width: var(--btn-apply-width);
    max-width: none;
  }

  #guideline .btn02-con {
    flex-direction: row;
    justify-content: center;
  }

  #guideline-bottom-entry {
    margin-top: 5rem;
  }

}