.c-border_btn--sub {
  border: #217217 2px solid;
  color: #217217;
  border-radius: 40px;
}
/*-----------------------
ヘッダー/フッター
------------------------*/
.l-company .header__menu,
.l-company.l-footer {
  background: #217217;
}

.l-company .header__hamburger span {
  background: #217217;
}

.l-company .p-header_company_btn {
  border-color: #0075B7;
  color: #0075B7;
}

.l-company #page-top a {
  background: #217217;
}

/*-----------------------
セクションヘッダー
------------------------*/
.l-company .l-head {
  background: #E4FFF2;
  padding: 100px 60px;
  text-align: center;
}
.l-company .l-head__sub {
  color: #217217;
}
.l-company .c-sub_title {
  background: #217217;
}
.l-company #page-top a{
  background-color: #217217;
  box-shadow: 0 3px 0 0 #1C5945;
}


/*-----------------------
背景色
------------------------*/
.l-company .c-section__bg,
.c-contact--company {
  background: #F9FFEC;
}

/*-----------------------
FAQ
------------------------*/
.l-company .qa_box > dl > dt .crossBar::before,
.l-company .qa_box > dl > dt .crossBar::after {
  background-color: #217217;
}

.l-company .qa_box > dl > dt > span,
.l-company .qa_box > dl > dd > span {
  color: var(--text);
}

.l-company .qa_box > dl > dd {
  border: #E4FFF2 solid 2px;
}

.l-company .qa_block h2 {
  color: #217217;
  border-bottom: #217217 2px solid;
  margin-bottom: 2rem;
}

.l-company .qa_box > dl > dt {
  background: #E4FFF2;
}

/*-----------------------
NEWS
------------------------*/
.c-news.l-company .p-news__wrapper.c-box {
  border-color: #217217;
}
.c-news.l-company .p-news__wrapper h1 {
  color: #217217;
}
.c-news.l-company .c-news__list__box {
  border-bottom: 1px solid rgba(33, 114, 23, 0.3);
}
.l-company .c-news__date,
.l-company .c-news__title--link:after {
  color: #217217;
}

/*-----------------------
CONTACT
------------------------*/
.c-contact--company .c-contact-box p:not(.c-contact__note) {
  color: #217217;
}
.c-contact--company .c-contact-box {
  border-color: #217217;
}
.c-contact--company .c-contact__label {
  color: #217217;
}
.c-contact--company .c-contact__divider {
  border-top-color: #217217;
}


/*-----------------------
MANUAL
------------------------*/
.youtube_width {
    max-width: 900px;
    width: 100%;
    margin: auto;
}

.youtube_wrap {
    padding-top: 56.25%;
    box-sizing: border-box;
    width: 100%;
    height: fit-content;
    position: relative;
    margin: 4rem auto;
}

.youtube_wrap iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

/* 動画非公開時 */
.youtoube__hidden,
.youtoube__hidden--first
{
  position: relative;
}

.youtoube__hidden:after,
.youtoube__hidden--first:after
{
  content: "3月上旬公開";
  color: #fff;
  font-size: 3.5rem;
  padding: 25% 0;
  background: #898989;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
}

.youtoube__hidden--first:after {
  content: "2月上旬公開";
}

.c-text-link.c-inactive {
  color: #898989;
  border-bottom: 2px solid #898989;
}

/*-----------------------
COMPANY TOP
------------------------*/
.p-top--company {
  background: #FFFBE2;
  padding: 50px 0;
}
.p-top--company .p-top__overview {
  width: 100%;
  margin: 0 auto;
}
.p-join__way {
  display: flex;
}
.c-box--blue {
  border: 3px solid var(--sub);
}
.c-box--green {
  border: 1px solid #40BB25;
  border-radius: 20px;
}
.c-box--teal {
  border: 2px solid #3EB7C9;
}
.p-join__way .p-join__way__hl--teal {
  background: #3EB7C9;
}

.p-join__way {
  display: flex;
  justify-content: space-between;
}

.p-join__way__box {
  padding: 0;
  border: 2px solid var(--sub);
}

.p-join__way__contents {
  padding: 3rem 3rem 0 3rem;
}

.p-join__way__hl {
  display: flex;
  align-items: center;
  background: #40BB25;
  color: #fff;
  padding: 2.5rem 1.5rem;
  text-align: left;
}

.p-join__way .c-box {
  padding: 0;
  border-radius: 0;
  width: 49%;
}

.p-join__way__ttl {
  font-size: 3.3rem;
  color: #fff;
  line-height: 1;
}

.p-join__way__img {
  width: 80%;
  margin: 1rem auto 0;
}

.p-join__way__num {
  font-size: 4.5rem;
  position: relative;
  padding: 0 1rem;
  border-right: none;
  margin-right: 1rem;
}

.p-join__way__txt {
  font-size: 2.6rem;
  font-weight: 700;
  text-align: left;
  color: var(--text);
  line-height: 1.5;
}

.p-join__way .c-note {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.5;
}

.p-join__way__note {
  margin: 4rem 0 0 0;
  color: var(--text);
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1;
}

.p-shops p {
  color: var(--text);
  font-size: 1.6rem;
}

.p-shops .p-shops__text {
  font-size: 3rem;
  margin-bottom: 4rem;
}

.p-shops .p-shops__text--list {
  text-align: left;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
  color: var(--text);
}

.p-shops .p-shops__text--list li {
  margin-bottom: 0.4rem;
}

.p-shops .p-shops__text--list li:last-child {
  margin-bottom: 0;
}

.p-shops__text--links {
  margin-top: 4rem;
  text-align: left;
}

.c-company__box--border {
  border: 2px solid var(--sub);
  background: #fff;
  padding: 1.5rem;
}

/* 対象の業種ボックス */
.p-gyoshu {
  margin-top: 2rem;
  border: 1px solid #40BB25;
  border-radius: 19px;
  overflow: hidden;
}

.p-gyoshu__title {
  background: #40BB25;
  color: #fff;
  font-size: 2.5rem;
  font-weight: 700;
  text-align: center;
  padding: 1.5rem 0;
  line-height: 1.5;
}

.p-gyoshu__list {
  background: #fff;
  padding: 3rem 4rem;
  column-count: 3;
  column-gap: 3rem;
  list-style: disc;
  padding-left: 5rem;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: left;
  color: var(--text);
}
.l-company .c-btn_shadow.c-base_btn--red {
  background: #EE3823;
  box-shadow: 0 6px 0 0 #901A1A;
}

.p-shop-app__heading {
  font-size: 3.2rem;
  font-weight: 700;
  text-align: left;
  line-height: 1.5;
  margin-bottom: 2rem;
  color: var(--text);
}

.p-shop-app__heading::first-letter {
  color: #40BB25;
  font-size: 1.3em;
}

.p-shop-app__box .c-base_btn {
  margin-bottom: 2rem;
}

.p-shop-app__box__exp {
  margin: 2rem 0 5rem;
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
}

.p-shop-app__cards {
  display: flex;
  justify-content: space-between;
  gap: 58px;
}

.p-shop-app__card {
  flex: 1;
  text-align: center;
  padding: 3rem 2rem;
}

.p-shop-app__card .c-btn_shadow.c-base_btn--green {
  min-width: auto;
  width: 100%;
}

.p-shop-app__box .c-base_btn--blue {
  width: 75%;
}

.p-shop-app__box .c-base_btn--pink {
  width: 320px;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
}

.p-shop-app__title {
  font-size: 2.4rem;
  font-weight: 700;
  margin: 2rem 0 2rem;
  line-height: 1.5;
}

.p-shop-app__box--form .p-shop-app__title {
  font-size: 2.6rem;
}

.p-shop-app__box--form .p-shop-app__box__hl {
  background: var(--sub);
  color: #fff;
  padding: 0.5rem 1.5rem;
  font-size: 3.2rem;
  color: #fff;
}

.c-base_btn .c-download-btn,
.p-shop-app__box .c-base_btn--blue {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
}

.c-btn_shadow.c-base_btn--green {
  text-align: center;
}

.p-shop-app__banner {
  display: flex;
  justify-content: center;
}

.p-shop-app__banner img {
  width: 768px;
  max-width: 100%;
  height: auto;
}

.p-shop-app__box .c-base_btn--blue {
  align-items: baseline;
}

/* CPM方式セクション */
.p-cpm__box {
  background: #fff;
  border: 1px solid #40BB25;
  border-radius: 20px;
  padding: 5rem;
  text-align: center;
}

.p-cpm__text {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: left;
  color: var(--text);
}

.p-cpm__note {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5;
  text-align: left;
  color: var(--text);
  margin-top: 2rem;
  padding-left: 1em;
}

.c-btn_shadow.c-base_btn--green {
  box-shadow: 0 4px 0 0 #488259;
  background: #40BB25;
  min-width: 470px;
  border-radius: 20px;
}

.p-app-flow__box__wrapper {
  background: #FFFFFF;
  border: 2px solid #40BB25;
  border-radius: 20px;
  padding: 50px;
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.p-app-flow__step {
  display: flex;
  align-items: center;
  gap: 25px;
}

.p-app-flow__num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100px;
  height: 100px;
  min-width: 100px;
  background: #40BB25;
  border-radius: 50%;
  color: #FFFFFF;
  font-size: 6.4rem;
  font-weight: 700;
  line-height: 1;
}

.p-app-flow__text {
  text-align: left;
}

.p-app-flow__ttl {
  font-family: YuGothic, "Yu Gothic", sans-serif;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1;
  color: #000000;
}

.p-app-flow__desc {
  font-family: YuGothic, "Yu Gothic", sans-serif;
  font-size: 2.3rem;
  font-weight: 700;
  line-height: 1;
  color: #000000;
  margin-top: 0.5em;
}

.p-app-flow__desc--small {
  font-size: 1.9rem;
}

.p-app-flow__note {
  font-family: YuGothic, "Yu Gothic", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1;
  color: #000000;
  margin-top: 0.5em;
}

.p-exchange__schedule {
  margin-top: 5rem;
}

.p-exchange__schedule__heading {
  font-family: YuGothic, "Yu Gothic", sans-serif;
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1;
  color: #000000;
  text-align: left;
  margin-bottom: 4rem;
}

.p-exchange__schedule__table {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
  margin-bottom: 4rem;
}

.p-exchange__schedule__table--small {
  width: 80%;
  margin-bottom: 0;
}

.p-exchange__schedule__table th,
.p-exchange__schedule__table td {
  font-family: YuGothic, "Yu Gothic", sans-serif;
  font-size: 1.9rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  padding: 1rem 2rem;
  border: 1px solid #40BB25;
}

.p-exchange__schedule__table th {
  background: #66C151;
  color: #FFFFFF;
  border: 1px solid #FFFFFF;
}

.p-exchange__schedule__table td {
  background: #FFFFFF;
  color: #40BB25;
  border: 1px solid #40BB25;
}

.p-exchange__schedule__label {
  background: #66C151 !important;
  color: #FFFFFF !important;
  border: 1px solid #FFFFFF !important;
}

.news_list .c-sub_title {
  background: none;
}

.p-contact--company--nobg {
  background: none;
}

.c-table th {
  background-color: #40BB25;
  border: 2px solid #40BB25;
}

.c-table td {
  border: 2px solid #40BB25;
}

/* 対象店舗テーブル */
.c-table--shops {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
  text-align: center;
}

.c-table--shops th,
.c-table--shops td {
  height: 67px;
  padding: 1rem;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  vertical-align: middle;
  text-align: center;
}

.c-table--shops .c-table__head {
  background-color: #40BB25;
  color: #fff;
  font-size: 2rem;
  border: 1px solid #fff;
  border-left: 1px solid #40BB25;
}

.c-table--shops .c-table__category {
  background-color: #40BB25;
  color: #fff;
  font-size: 2rem;
  line-height: 1;
  border: 1px solid #40BB25;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
}

.c-table--shops .c-table__category small {
  font-size: 1.6rem;
  font-weight: 700;
}

.c-table--shops .c-table__category--sub {
  background-color: #40BB25;
  color: #fff;
  border: 1px solid #40BB25;
  border-bottom: 1px solid #fff;
}

.c-table--shops .c-table__sub {
  background-color: #C4FFA6;
  color: var(--text);
  border: 1px solid #40BB25;
  border-top: 1px solid #fff;
}

.c-table--shops .c-table__sub:nth-child(4) {
  border-left: 1px solid #40BB25;
}

.c-table--shops td {
  border: 1px solid #40BB25;
  background: #fff;
  text-align: center;
  width: auto;
}

.c-table--shops tbody .c-table__head {
  border: 1px solid #fff;
  font-size: 1.6rem;
}

.c-table--shops .c-table__row--ticket td {
  height: 194px;
}

.c-table--shops .c-table__ticket {
  display: inline-block;
  background: #E4FFF2;
  border-radius: 25px;
  padding: 0.5rem 2rem;
  margin: 0.3rem 0;
  font-size: 1.6rem;
}

.c-table--shops .c-table__ticket-note {
  font-size: 2.3rem;
  font-weight: 700;
  margin-top: 0.5rem;
}

@media screen and (max-width: 992px) {
  .p-shop-app__box .c-base_btn--blue {
    width: 90%;
  }
  .p-shop-app__cards {
    flex-direction: column;
    gap: 3rem;
  }
  .l-company .header__menu {
    background: #fff;
    color: #217217;
  }
}

@media screen and (max-width: 786px) {
    .p-top--company {
        padding: 0;
    }

  .p-shop-app .u-flex,
  .p-join__way {
    display: block;
  }

  .p-join__way .c-box_2 {
    display: block;
    max-width: none;
    width: 100%;
  }

  .c-box_2:first-of-type {
    margin-bottom: 2rem;
  }

  .p-exchange__schedule__table th,
  .p-exchange__schedule__table td {
    padding: 0.8rem 0.5rem;
    font-size: 1.4rem;
    letter-spacing: 0;
  }

  .p-exchange__schedule__table--small {
    width: 100%;
  }

  .p-app-flow__box__wrapper {
    padding: 3rem;
    gap: 2.5rem;
  }

  .p-app-flow__num {
    width: 60px;
    height: 60px;
    min-width: 60px;
    font-size: 3.6rem;
  }

  .p-app-flow__ttl {
    font-size: 2rem;
  }

  .p-app-flow__desc {
    font-size: 1.6rem;
  }
  .p-join__way__num:after {
    left: 40px;
    height: 48px;
    background-size: 13%;
  }
  .p-shop-app__box .c-base_btn--pink,
  .p-shop-app__box .c-base_btn--blue {
    width: 90%;
  }

    .p-gyoshu__list {
        column-count: 1;
    }

    .c-btn_shadow.c-base_btn--green {
        min-width: 200px;
    }


}

.p-note{
   font-size: 1.4rem;
   color: var(--text);
   text-align: left;
}

@media screen and (max-width: 600px) {
  .p-note{
    word-break: keep-all;
    letter-spacing: 0;
  }
  .p-top--company .p-top__overview {
    width: 80%;
  }
}