.l-sect--yellow {
  background-color: #fffce2;
}

.l-sect--red {
  background-color: #fef3f5;
}

.l-sect-2--frame {
  background: #fff;
  border-radius: 0.5em;
  padding: 8.88281% 12.97656%;
  box-shadow: unset;
}
@media only screen and (max-width: 767px) {
  .l-sect-2--frame {
    padding: 8vw 2.66667vw 5.33333vw;
  }
}

.l-hero--partners {
  margin-top: -6rem;
}

@media only screen and (max-width: 767px) {
  .l-hero__slider {
    padding-top: unset;
  }
}

.hero-slider__item--partners {
  background: url("//5277393.fs1.hubspotusercontent-na1.net/hubfs/5277393/raw_assets/public/SED/webSite/OtasukeMan-202003/assets/img/partners/bg_top.jpg") no-repeat center/cover;
}

.hero-slider__item {
  padding-top: 23.28125%;
}
@media only screen and (max-width: 767px) {
  .hero-slider__item {
    padding-top: 144.05797%;
  }
}

.l-hero--partners .l-hero__lead {
  top: 4.19619vw;
}
@media only screen and (max-width: 767px) {
  .l-hero--partners .l-hero__lead {
    top: 8vw;
  }
}

.l-hero__lead {
  -webkit-font-smoothing: antialiased;
  left: 50%;
  position: absolute;
  text-align: center;
  top: 13.17716vw;
  transform: translateX(-50%);
}
@media only screen and (max-width: 767px) {
  .l-hero__lead {
    text-align: left;
    width: 100%;
    padding: 0 2.66667vw;
  }
}

.hero-lead__main {
  color: #fff;
  font-size: 1.1vw;
  line-height: 1.75;
}
@media only screen and (max-width: 767px) {
  .hero-lead__main {
    font-size: 4.56vw;
  }
}

.l-hero--partners .l-hero__products {
  top: 1.86574vw;
}
@media only screen and (max-width: 767px) {
  .l-hero--partners .l-hero__products {
    display: block;
    right: 50%;
    top: 74.66667vw;
    transform: translateX(50%);
  }
}

.hero-products__wrap {
  position: absolute;
  left: 0;
  right: unset;
}
@media only screen and (max-width: 767px) {
  .hero-products__wrap {
    left: unset;
    top: 8.78477vw;
  }
}

.hero-products__img {
  width: 25.2899vw;
}
@media only screen and (max-width: 767px) {
  .hero-products__img {
    left: unset;
    width: 53.2899vw;
  }
}

.l-hero__button {
  bottom: 3.58858vw;
}
@media only screen and (max-width: 767px) {
  .l-hero__button {
    bottom: 6.58858vw;
  }
}

.c-button-app--b {
  min-width: 22.89985vw;
  height: 3.6vw;
  border-radius: 1.8vw !important;
}
@media only screen and (max-width: 767px) {
  .c-button-app--b {
    height: 16.26667vw;
    border-radius: 8.133325vw !important;
    min-width: 94.66667vw;
    padding-top: 0.8em;
    padding-bottom: 0.8em;
  }
}

.c-button-app--b--01 {
  min-width: 32rem;
  height: 60px;
  border-radius: 30px !important;
  box-shadow: unset;
}
@media only screen and (max-width: 767px) {
  .c-button-app--b--01 {
    height: 14.26667vw;
    border-radius: 7.133325vw !important;
    min-width: 100%;
    padding-top: 0.8em;
    padding-bottom: 0.8em;
  }
}

.c-button-app__text {
  color: #fff;
  font-weight: 500;
}

.c-button-app--b .c-button-app__maintext .text-small {
  font-size: 1.1vw;
  margin-right: 0.4rem;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  .c-button-app--b .c-button-app__maintext .text-small {
    font-size: 4.8vw;
    margin-right: 1rem;
  }
}

.c-button-app--b .c-button-app__maintext .text {
  font-size: 1.6vw;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  .c-button-app--b .c-button-app__maintext .text {
    font-size: 6.13333vw;
  }
}

.c-heading-b {
  display: grid;
  grid-template-columns: 1fr max-content 1fr;
  -moz-column-gap: 2.4rem;
       column-gap: 2.4rem;
  font-size: 4rem;
  text-align: center;
}
.c-heading-b:before, .c-heading-b:after {
  background: #ec6d81;
  content: "";
  display: block;
  width: 100%;
  height: 3px;
  margin: auto;
}
@media only screen and (max-width: 1064px) {
  .c-heading-b {
    font-size: 3.7594vw;
  }
}

.c-heading {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
}

.c-heading-b__main {
  display: block;
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1.3;
}

.c-heading-b__main--red {
  color: #ec6d81;
}

.p-partners__figure {
  position: relative;
  text-align: center;
}

.p-partners__img-wrap {
  display: inline-block;
  margin-bottom: 30px;
  width: 100%;
}
@media only screen and (max-width: 1064px) {
  .p-partners__img-wrap .p-partners__img-wrap {
    width: 81.01504vw;
  }
}

.p-partners__img {
  width: 65%;
}
@media only screen and (max-width: 1064px) {
  .p-partners__img {
    width: 100%;
  }
}

.p-partners__contents {
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
  margin: auto;
  width: 80%;
}
@media only screen and (max-width: 767px) {
  .p-partners__contents {
    width: 100%;
  }
}

.partners__desc {
  font-size: 1.8rem;
  line-height: 1.75;
  text-align: left;
}

.p-merit {
  padding-top: 3rem;
}
@media only screen and (max-width: 767px) {
  .p-merit {
    padding-top: 1rem;
  }
}

.p-merit .list {
  display: grid;
  grid-template-columns: 1fr;
  -moz-gap: 5rem 1.6rem;
       gap: 5rem 1.6rem;
  counter-reset: number;
}
@media only screen and (min-width: 768px) {
  .p-merit .list {
    -moz-gap: 4rem 1.6rem;
       gap: 4rem 1.6rem;
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (min-width: 960px) {
  .p-merit .list {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  -moz-gap:1.6rem;
       gap:1.6rem;
  }
}

.p-merit .item {
  counter-increment: number;
  flex: 1;
}



.c-card-a {
  position: relative;
  height: 100%;
  box-shadow: unset;
  padding: 2em 1em 1em;
}
@media only screen and (max-width: 767px) {
  .c-card-a {
    padding: 3.6em 1em 1em;
  }
}
.c-card-a:before {
  display: grid;
  place-items: center;
  position: absolute;
  content: counter(number, decimal-leading-zero);
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #ec6d81;
  border-radius: 5px;
  width: 6rem;
  height: 6rem;
  color: #fff;
  font-weight: 500;
  font-size: 3.4rem;
}

.c-card-a__inner {
  display: grid;
  grid-template-rows: 13rem 1fr;
}
@media only screen and (max-width: 767px) {
  .c-card-a__inner {
    grid-template-rows: max-content 1fr;
    row-gap: 2rem;
  }
}

.c-card-a__text {
  display: grid;
  grid-template-rows: 5rem 1fr;
  row-gap: 2rem;
}
@media only screen and (max-width: 767px) {
  .c-card-a__text {
    grid-template-rows: max-content 1fr;
  }
}
.c-card-a__text .heading {
  text-align: center;
  align-self: center;
  font-size: 1.8rem;
}
@media only screen and (max-width: 767px) {
  .c-card-a__text .heading {
    align-self: flex-start;
    font-size: 1.8rem;
  }
}
.c-card-a__text .lead {
  text-align: left;
}

@media only screen and (max-width: 767px) {
  .p-flow {
    margin-top: -4vw;
  }
}
.p-flow .list {
  display: flex;
  flex-direction: column;
  row-gap: 4rem;
  counter-reset: step;
}
@media only screen and (max-width: 767px) {
  .p-flow .list {
    row-gap: 1rem;
  }
}
.p-flow .item {
  position: relative;
  counter-increment: step;
  background-color: #fff;
  padding: 3em;
}
@media only screen and (max-width: 767px) {
  .p-flow .item {
    padding: 1em 1em 2rem;
  }
}
.p-flow .item:not(:last-of-type)::after {
  z-index: 2;
  position: absolute;
  content: "";
  left: 50%;
  bottom: 0;
  transform: translate(-50%, calc(50% + 2rem));
  display: block;
  width: 6.2rem;
  height: 6.2rem;
  background: url("//5277393.fs1.hubspotusercontent-na1.net/hubfs/5277393/raw_assets/public/SED/webSite/OtasukeMan-202003/assets/img/partners/flow-arrow.svg") no-repeat center/contain;
}
@media only screen and (max-width: 767px) {
  .p-flow .item:not(:last-of-type)::after {
    transform: translate(-50%, calc(50% + 0.5rem));
    margin-top: unset;
    width: 2.8rem;
    height: 2.8rem;
  }
}
.p-flow .heading {
  margin-bottom: 3rem;
  font-size: 2.2rem;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .p-flow .heading {
    margin-bottom: 1.3rem;
    font-size: 1.8rem;
  }
}
.p-flow .heading:before {
  padding-right: 1.2rem;
  margin-right: 1.5rem;
  display: inline-block;
  content: "STEP." counter(step);
  font-size: 2.2rem;
  font-weight: 500;
  color: #ec6d81;
  border-right: 6px solid #ec6d81;
}
@media only screen and (max-width: 767px) {
  .p-flow .heading:before {
    padding-right: 1rem;
    margin-right: 1rem;
    font-size: 1.8rem;
    border-right: 5px solid #ec6d81;
  }
}
.p-flow .lead {
  font-size: 1.8rem;
  line-height: 1.75;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .p-flow .lead {
    font-size: 1.6rem;
  }
}
.p-flow .lead-wrap {
  margin-top: 3rem;
  display: flex;
  -moz-column-gap: 4rem;
       column-gap: 4rem;
}
@media only screen and (max-width: 1064px) {
  .p-flow .lead-wrap {
    flex-direction: column;
    -moz-column-gap: unset;
         column-gap: unset;
    row-gap: 2rem;
  }
}
.p-flow .lead-wrap .flow-contact {
  display: flex;
  flex: 1;
  flex-direction: column;
  row-gap: 1rem;
}
@media only screen and (max-width: 767px) {
  .p-flow .lead-wrap .flow-contact {
    margin: auto;
    width: 75%;
  }
}
.p-flow .lead-wrap .flow-contact .flow-contact-head {
  padding-bottom: 1rem;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  border-bottom: 3px solid #ec6d81;
}
.p-flow .lead-wrap .flow-contact .flow-contact-body {
  margin: auto;
  display: grid;
  grid-template-columns: max-content 1fr;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
}
.p-flow .lead-wrap .flow-contact .flow-contact-body.tel::before {
  display: inline-block;
  content: "";
  background: url("//5277393.fs1.hubspotusercontent-na1.net/hubfs/5277393/raw_assets/public/SED/webSite/OtasukeMan-202003/assets/img/partners/tel.svg") no-repeat center/contain;
  width: 3rem;
  height: 3rem;
}
.p-flow .lead-wrap .flow-contact .flow-contact-body.mail::before {
  display: inline-block;
  content: "";
  background: url("//5277393.fs1.hubspotusercontent-na1.net/hubfs/5277393/raw_assets/public/SED/webSite/OtasukeMan-202003/assets/img/partners/mail.svg") no-repeat center/contain;
  width: 3rem;
  height: 3rem;
}

@media only screen and (max-width: 767px) {
  .p-flow__img {
    width: 62%;
  }
}

.l-sect__button {
  margin-top: 3rem;
}
@media only screen and (max-width: 767px) {
  .l-sect__button {
    margin-top: unset;
  }
}

.flow__inner {
  display: grid;
  grid-template-columns: 5fr 3fr;
  -moz-column-gap: 12rem;
       column-gap: 12rem;
}
@media only screen and (max-width: 767px) {
  .flow__inner {
    grid-template-columns: unset;
    row-gap: 3rem;
  }
}
.flow__inner.contact .flow__content {
  grid-area: 1/1/2/2;
}
@media only screen and (max-width: 767px) {
  .flow__inner.contact .flow__content {
    grid-area: 1/1/2/2;
  }
}
.flow__inner.contact .p-flow__figure {
  grid-area: 1/2/2/3;
}
@media only screen and (max-width: 767px) {
  .flow__inner.contact .p-flow__figure {
    grid-area: 3/1/4/2;
  }
}
.flow__inner.contact .l-sect__button {
  grid-area: 2/1/3/3;
}
@media only screen and (max-width: 767px) {
  .flow__inner.contact .l-sect__button {
    grid-area: 2/1/3/2;
  }
}
.flow__inner.narrow {
  -moz-column-gap: 3rem;
       column-gap: 3rem;
}

.c-button-app--b--01 .c-button-app__maintext .text-small {
  font-size: 1.8rem;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
.table_scroll{
overflow: auto;　　　　/*tableをスクロールさせる*/
}
.table_scroll::-webkit-scrollbar{　　/*tableにスクロールバーを追加*/
 height: 5px;
}
.table_scroll::-webkit-scrollbar-track{　　/*tableにスクロールバーを追加*/
 background: #F1F1F1;
}
.table_scroll::-webkit-scrollbar-thumb {　　/*tableにスクロールバーを追加*/
 background: #BCBCBC;
}
  .partner_list {
    white-space: nowrap;
  }
}
 .partner_list {
  width:100%;
  }
  .partner_list, .partner_list td, .partner_list th {
    padding:0.5rem;
	border: 1px solid #ec6d81;
	border-collapse: collapse;
    font-size:1.4rem;
}

  .partner_list th {
	background: #fef3f5;
}