/* ====================
各見出し
======================= */
.rcinfo__topic,
.entry__topic,
.contact__topic {
    position: relative;
    text-align: center; /* 文字の中央寄せ */
}
.rcinfo__topic::before {
    background: linear-gradient(90deg, #236194 0%, rgba(35, 97, 148, 0.40) 100%);
    bottom: -10px;
    content: "";
    height: 4px;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 100px;
}
.entry__topic::before {
    background: linear-gradient(90deg, #236194 0%, rgba(35, 97, 148, 0.40) 100%);
    bottom: -10px;
    content: "";
    height: 4px;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 100px;
}
.contact__topic::before {
    background: linear-gradient(90deg, #236194 0%, rgba(35, 97, 148, 0.40) 100%);
    bottom: -10px;
    content: "";
    height: 4px;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 100px;
}

.section__topic--represent,
.section__topic--features,
.section__topic--challenge,
.section__topic--agenda {
    border-left: solid 5px ;/*左線*/
    border-image:linear-gradient(180deg, rgba(35, 97, 148, 0.80) 0%, rgba(35, 97, 148, 0.32) 100%);
    border-image-slice: 1;
}
.section__topic--represent,
.section__topic--features,
.section__topic--challenge,
.section__topic--agenda {
    text-align: left;
    padding-left: 16px;
    margin-left:20px ;
}

/* pc__common */
@media screen and (min-width:769px) {

  .section__topic--represent,
  .section__topic--features,
  .section__topic--challenge,
  .section__topic--agenda {
      text-align: left;
      padding-left: 16px;
      margin-left:0px ;
  }

  .rcinfo__title {
    margin: 0 auto;
    margin-top: 220px;
  }
  
}
/* common__375px */


/* ====================
represent
======================= */
.represent__content {
  margin-top: 45px;
}
.represent__profile {
  margin: 30px 18%;
  text-align: center;
}
.represent__name {
  margin-top: 12px;
  color: var(--primary-black);
  font-size: 1.6rem;
}
.represent__txt {
  margin: 24px 5.3% 0;
  color: var(--primary-black);
  font-size: 1.6rem;
  line-height: 1.5; /* 24px */

}
/* pc__representn */
@media screen and (min-width:769px) {
  .represent__content {
    margin: 0 auto;
    margin-top: 90px;
    padding: 0 177px;
    max-width: 1440px;
  }
  .represent__box {
    display: flex;
    margin-top: 64px;
    align-items: center;
  }
  .represent__profile {
    margin: 0 auto;
    min-width: 256px;
  }
  .represent__name {
    margin: 0 auto;
    margin-top: 12px;
    font-size: 1.8rem;
  }
  .represent__txt {
    margin: 0 auto;
    max-width: 70%;
    font-size: 1.8rem;
    margin: 18px 29px 18px 40px ;

  }
}
/* represent__375px */


/* ====================
FEATURES
======================= */
.features__content {
  margin-top: 50px;
}
.features__inner {
  padding-bottom: 92px;
  background-image: url(../images/background_feature.jpg);
}
.features__table {
  margin-top: 30px;
}
.features__list {
  margin: 40px 5.3% 0;
  border: 1px solid #236194;
  background: #FFF;
  display: flex;
  height: 280px;
  padding: 25px 90px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  align-self: stretch;
}

.features__list p {
  text-align: center;
  font-size: 2.4rem;
  font-weight: 700;
}
.features__list span {
  border-bottom: 1px solid var(--primary-blue);
  width: 300px;
}
 

.features__list ul {
  color: #000;
  text-align: center;
  font-family: "Zen Kaku Gothic New";
  font-size: 1.7rem;
  font-weight: 400;
}
.features__list li {
  margin-top: 10px;
}

/* pc__features */
@media screen and (min-width:769px) {
  .features__content {
    margin: 0 auto;
    margin-top: 100px;
    max-width: 1440px;
  }
  .features__inner {
     padding: 0 177px 100px;
  }
  .features__table {
    display: flex;
    margin: 0 auto;
    flex-wrap: wrap;
    justify-content: center;
  }
  .features__list {
    margin: 40px 5.3% 0;
    border: 1px solid #236194;
    background: #FFF;
    display: flex;
    width: 335px;
    height: 280px;
    padding: 25px 90px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 10px;
    align-self: stretch;
  }
}
/* features__375px */


/* ====================
FEATURES-system
======================= */
.system__content {
  margin-top: 50px;
  padding: 0 20px;
  background-image: url(..//images/features_sp.jpg);
  background-repeat: no-repeat;
  background-size: auto;
  background-position: center;
}
.system__inner {
  padding: 38px 25px 63px;
  background: rgba(255, 255, 255, 0.70);

}
.system__title {
  text-align: center;
  font-size: 2.0rem;
  font-weight: 700;
  line-height: 1.5; /* 30px */
  letter-spacing: 2px;
  margin: 0 auto;
  max-width: 500px;
}
.system__title h4 {
  position: relative;
  padding: 1rem;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}
.system__title h4::before,
.system__title h4::after {
  position: absolute;
  width: 20px;
  height: 30px;
  content: '';
}
.system__title h4::before {
  border-left: double 5px;
  border-top: double 5px;
  top: 0;
  left: 0;

}
.system__title h4::after {
  border-right: double 5px;
  border-bottom: double 5px;
  bottom: 0;
  right: 0;

}

.system__list {
  margin: 0 auto;
  margin-top: 40px;
  display: flex;
  background-color: var(--background-color--white);
  padding: 22px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
}


.system__list dt {
  text-align: center;
  font-size: 2.4rem;
  font-weight: 700;
}
.system__list dt span {
  font-size: 4.0rem;
}
.system__list dd {
  margin-top: 12px;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5; /* 30px */
}
.system__inner p {
  margin-top: 28px;
  text-align: center;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 700;
  line-height: 1.5; /* 24px */
}

.recruit__btn {
  margin: 0 auto;
  margin-top: 28px;
  background: linear-gradient(90deg, rgba(35, 97, 148, 0.75) 0%, #236194 100%);
  border: 1px solid var(--primary-blue);
  color: #fff;
  display: block;
  font-weight: bold;
  max-width: 250px;
  padding: 15px 40px;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
}

.recruit__btn:hover {
  background: #fff;
  color: var(--primary-blue);
  
}


/* pc__features-system */
@media screen and (min-width:769px) {
  .system__content {
    margin: 0 auto;
    margin-top: 100px;
    max-width: 1440px;
    padding: 62px 176px;
    background-image: url(..//images/features_pc.jpg);
    background-repeat: no-repeat;
    background-size: auto;
    background-position: center;
  }
  .system__inner {
    padding: 0; 
  }
 
  .system__title h4 {
    font-size: 2.8rem;
  }
  .system__inner {
    padding: 40px;
  }
  .system__box {
    display: flex;
    flex-wrap: nowrap;
    gap: 40px;
  }
  .system__list {
    margin: 0 auto;
    margin-top: 64px;
    width: 300px;
  }

  .system__inner p {
    margin-top: 64px;
    font-size: 2.4rem;
  }
  .recruit__btn {
    width: 300px;
    margin-top: 64px;
    font-size: 2.4rem;
  }
  
}
/* features-system__375px */

/* ====================
CHALLENGE
======================= */
.challenge__content {
  margin-top: 50px ;
}
.challenge__message {
  margin: 0 auto;
  margin: 30px 5.3%;
  font-size: 1.6rem;
  line-height: 1.5; /* 24px */
}

/* pc__CHALLENGE */
@media screen and (min-width:769px) {
  .challenge__content {
    margin: 0 auto;
    margin-top: 100px;
  }
  .challenge__inner {
    margin: 0 auto;
    padding: 0 177px;
  }
  .challenge__message {
    margin: 0 auto;
    margin: 64px 0 80px;
    font-size: 1.8rem;
    line-height: 2.0; 
    text-align: center;
  }
}
/* CHALLENGE__375px */


/* ====================
CHALLENGE_reason
======================= */
.challenge__reason {
  margin-top: 30px;
}
.reason__title {
  text-align: center;
  font-size: 2.0rem;
  font-weight: 700;
  line-height: 1.5; /* 30px */
  letter-spacing: 2px;
  margin: 0 auto;
  max-width: 800px;
  padding: 0 20px;
}
.reason__title h4 {
  position: relative;
  padding: 1rem;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}
.reason__title h4::before,
.reason__title h4::after {
  position: absolute;
  width: 20px;
  height: 30px;
  content: '';
}
.reason__title h4::before {
  border-left: double 5px;
  border-top: double 5px;
  top: 0;
  left: 0;

}
.reason__title h4::after {
  border-right: double 5px;
  border-bottom: double 5px;
  bottom: 0;
  right: 0;

}
.reason__box {
  margin-top: 36px;
  padding: 0 20px;
}

.reason__list--sch {
  background: #D7E8F2;
  margin-top: 20px;
  padding: 16px 23px;
  display: flex;
  height: px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  align-self: stretch;
  position:relative;
	top:0;
}
.reason__list--sch:hover {
  top:-10px;
	transition:0.3s;
}
.reason__list--money {
  background: linear-gradient(180deg, #D7E8F2 0%, #D8F2D7 100%);
  margin-top: 20px;
  padding: 16px 23px;
  display: flex;
  height: px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  align-self: stretch;
  position:relative;
	top:0;
}
.reason__list--money:hover {
  top:-10px;
	transition:0.3s;
}
.reason__list--challe {
  background: #D8F2D7;
  margin-top: 20px;
  padding: 16px 23px;
  display: flex;
  height: px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  align-self: stretch;
  position:relative;
	top:0;
}
.reason__list--challe:hover {
  top:-10px;
	transition:0.3s;
}
.reason__topic {
  text-align: center;
  font-size: 2.0rem;
  font-weight: 700;
  line-height: 1.5; /* 36px */
  letter-spacing: 2.4px;
}
.reason__point {
  font-size: 2.4rem;
}
.reason__topic h5 {
  margin-top: 28px;
}
.reason__txt {
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.5; /* 30px */
}

/* pc__CHALLENGE-reason */
@media screen and (min-width:769px) {
  .challenge__reason {
    margin: 0 auto;
    margin-top: 100px;
  }
  .reason__title {
    font-size: 2.8rem;
    max-width: 750px;
    padding: 0;
  }
  .reason__title h4 {
    font-size: 2.8rem;
  }
  .reason__box {
    margin: 0 auto;
    margin-top: 64px;
    padding: 0;
    display: flex;
    justify-content: center;
    gap: 20px;
  }
  .reason__list--money {
    background: linear-gradient(270deg, #D8F2D7 0%, #D7E8F2 100%);
  }
}
/* CHALLENGE-reason__375px */

/* ====================
CHALLENGE_support
======================= */

.challenge__support {
  margin: 0 auto;
  margin-top: 30px;
}

.support__title {
  text-align: center;
  font-size: 2.0rem;
  font-weight: 700;
  line-height: 1.5; /* 30px */
  letter-spacing: 2px;
  margin: 0 auto;
  max-width: 700px;
  padding: 0 20px;

}
.support__title h4 {
  position: relative;
  padding: 1rem;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}
.support__title h4::before,
.support__title h4::after {
  position: absolute;
  width: 20px;
  height: 30px;
  content: '';
}
.support__title h4::before {
  border-left: double 5px;
  border-top: double 5px;
  top: 0;
  left: 0;

}
.support__title h4::after {
  border-right: double 5px;
  border-bottom: double 5px;
  bottom: 0;
  right: 0;

}
.support__box {
  margin-top: 40px;
}
.support__list {
  text-align: center;
  margin-top: 20px;

}
.support__img {
  width: 350px;
 
}
.support__topic {

  background-color: var(--background-color--gray);
  padding-top:150px ;
  padding-bottom: 92px;
  margin-top: -155px;
}
.support__topic h5 {
  font-size: 2.0rem;
  font-weight: 700;
  text-align: left;
  margin-top: 20px;
  margin-left: 20px;
}
.support__topic p {
  font-size: 1.6rem;font-style: normal;
  font-weight: 400;
  line-height: 1.5; /* 24px */
  text-align: left;
  margin: 0 5.3%;
  margin-top: 16px;
}

/* pc__CHALLENGE-support */
@media screen and (min-width:769px) {
  .challenge__support {
    margin: 0 auto;
    margin-top: 100px;
  }
  .support__title {
    max-width: 600px;
    padding: 0;
  }
  .support__title h4 {
    font-size: 2.8rem;
  }
  .support__box {
    margin: 0 auto;
    margin-top: 78px;
  }
  .support__list {
    margin: 0 auto;
    display: flex;
    gap: 40px;
    margin-top: 122px;
    background-color: var(--background-color--gray);
    padding: 0px 92px 72px 92px;
  
  }
  .support__img {
    width: 350px;
    margin-top: -55px;

   
  }
  .support__topic {
    margin: 0 auto;
  }
  
}
/* CHALLENGE-support__375px */


/* ====================
AGENDA
======================= */
.agenda__content {
  margin-top: 50px;
}

.ex {
  margin: 30px 0;
  margin-left: 20px;
}
.ex__sample--normal {
  color: var(--background-color--white);
  background: var(--primary-blue);
  width: 170px;
  padding: 8px;
  font-size: 2.0rem;
  font-weight: 700;
  line-height: 1.5; /* 30px */
  letter-spacing: 2px;
}
.ex__sample--mom {
  color: var(--background-color--white);
  background: var(--primary-blue);
  width: 236px;
  padding: 8px;
  font-size: 2.0rem;
  font-weight: 700;
  line-height: 1.5; /* 30px */
  letter-spacing: 2px;
}

/* *{
    margin:0;
    padding:0;
    line-height: 1.3em;
  }  */

  /* time-schedule */
.time-schedule {
    min-width: 400px;
    max-width: 400px;
    list-style: none;
    margin: 0 auto 0 8%;
    padding-left: 10px;
    border-left: 2px solid var(--primary-black);
    box-sizing: border-box;
}
  
.time-schedule li {
    width: 100%;
    margin: 0 0;
    padding: 5px 0;
    position: relative;
}
  
.time-schedule span.time {
    width: 5em;
    display: inline-block;
    margin-left: -2em;
    padding: 0 0 5px;
    margin-top: 15px;
    vertical-align: top;
    position: relative;
    text-align: right;
    box-sizing: border-box;
    font-family: Roboto;
    font-size: 2.0rem;
    font-weight: 700;
}
  
.time-schedule span.time::after {
    content: "";
    position: absolute;
    right: 60px;
    top: 0;
    background: var(--primary-black);
    width: 22px;
    height: 22px;
    border-radius: 10px;
}
  
.time-schedule .sch_box {
    display: inline-block;
    margin-left: 30px;
    padding: 18px 10px 15px 10px;
    vertical-align: middle;
    box-sizing: border-box;
    border-radius: 6px;
}
  
.time-schedule .sch_title {
    font-size: 16px;
    font-weight: 700;
}
  
.time-schedule .sch_tx {
    font-size: 14px;
    font-weight: normal;
    margin-top: 8px;
}

.agenda__txt {
  background-color: rgba(35, 97, 148, 0.40);
  margin: 0 auto;
  margin-top: 32px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: center;
  font-size: 1.8rem;
  line-height: 1.5; /* 30px */
  font-weight: 700;
}
.agenda__txt p {
  margin: 0 auto;
}
/* pc__AGENDA */
@media screen and (min-width:769px) {
  .agenda__content {
    margin: 0 auto;
    margin: 100px 12%;
  }
  .agenda__section {
    display: flex;
    margin: 0 auto;
    justify-content: space-around;
    margin-top: 68px;
  }
  .agenda__txt {
    margin-top: 90px;
    padding: 20px;
    width: 861px;
  }
  .agenda__txt p {
    font-size: 2.0rem;
  }
  
  
}
/* AGENDA__375px */




/* ====================
ENTRY
======================= */

.entry__content {
  position: relative;
  margin-top: 50px;
  background-color: var(--background-color--gray);
}
.entry__inner {
  padding: 23px 0 255px;

}
.entry__section {
  margin: 30px 5.3%;

}
.entry__table {
  margin: 0 auto;
}
/* table01 */
#entryTable tr {
    border-bottom: 1px dashed var(--primary-blue);
  }
  
#entryTable th,
#entryTable td {
  padding: 24px 30px;
  border: none;
  color:var(--primary-black);
  font-family: "Zen Kaku Gothic New";
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
  
#entryTable th {
  width: 30%;
}
/* pc__AGENDA */
@media screen and (min-width:769px) {
  .entry__content {
    margin-top: 100px ;
  }
  .entry__inner {
    padding: 77px 0 255px;
  }
  .entry__section {
    margin: 0 auto;
    margin: 64px 297px
  }
  #entryTable th,
  #entryTable td {
    font-size: 1.8rem;
  }
  
}
/* AGENDA__375px */
  
  /* sp */
  @media only screen and (max-width: 375px) {
    #entryTable th,
    #entryTable td {
      width: 100%;
      display: block;
    }
  
    #entryTable th {
      width: 100%;
    }
  
    #entryTable td {
      padding-top: 0;
    }
  }