@charset "UTF-8";
#contents_navi .inner {
  width: 100%;
  max-width: 65em;
  padding: 0 1.25em;
  margin: auto;
  padding-top: 5em; }
  @media screen and (max-width: 767px) {
    #contents_navi .inner {
      padding-left: 2.1428571429em;
      padding-right: 2.1428571429em; } }
  #contents_navi .inner .contents_navi {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    #contents_navi .inner .contents_navi > li {
      padding-bottom: 1.5625em; }
      #contents_navi .inner .contents_navi > li a.down_btn {
        width: 14.375em;
        height: 3.125em;
        display: flex;
        align-items: center;
        justify-content: space-between;
        background-color: #F5F4F2;
        padding: 0.9375em; }
        #contents_navi .inner .contents_navi > li a.down_btn > span.txt {
          font-size: 0.875em;
          color: #144214; }
          #contents_navi .inner .contents_navi > li a.down_btn > span.txt br {
            display: none; }
          #contents_navi .inner .contents_navi > li a.down_btn > span.txt > span {
            display: none; }
        #contents_navi .inner .contents_navi > li a.down_btn > span.arrow {
          transform: rotate(90deg); }
    #contents_navi .inner .contents_navi::before {
      content: "";
      display: block;
      width: 14.375em;
      order: 1; }
    #contents_navi .inner .contents_navi::after {
      content: "";
      display: block;
      width: 14.375em; }
@media screen and (max-width: 767px) {
  #contents_navi .inner {
    width: 100%;
    max-width: 65em;
    padding: 0 1.25em;
    margin: auto;
    padding-top: 2.8571428571em; } }
  @media screen and (max-width: 767px) and (max-width: 767px) {
    #contents_navi .inner {
      padding-left: 2.1428571429em;
      padding-right: 2.1428571429em; } }
@media screen and (max-width: 767px) {
    #contents_navi .inner .contents_navi {
      display: flex;
      flex-wrap: wrap; }
      #contents_navi .inner .contents_navi > li {
        width: 100%;
        padding-bottom: 1.0714285714em; }
        #contents_navi .inner .contents_navi > li a.down_btn {
          width: 100%;
          height: 3.5714285714em;
          padding: 1.0714285714em; }
          #contents_navi .inner .contents_navi > li a.down_btn > span.txt {
            font-size: 1em; }
            #contents_navi .inner .contents_navi > li a.down_btn > span.txt br {
              display: none; }
          #contents_navi .inner .contents_navi > li a.down_btn > span.arrow {
            transform: rotate(90deg); }
      #contents_navi .inner .contents_navi::before {
        content: "";
        display: none;
        width: 100%;
        order: 1; }
      #contents_navi .inner .contents_navi::after {
        content: "";
        display: none;
        width: 100%; } }

#mark .inner {
  width: 100%;
  max-width: 65em;
  padding: 0 1.25em;
  margin: auto;
  padding-top: 6.25em; }
  @media screen and (max-width: 767px) {
    #mark .inner {
      padding-left: 2.1428571429em;
      padding-right: 2.1428571429em; } }
  #mark .inner h2 {
    font-size: 1.875em;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #153917;
    font-weight: 500; }
  #mark .inner .con {
    letter-spacing: 0.05em;
    font-weight: 400;
    line-height: calc(30/16);
    margin-top: 2.5rem; }
  #mark .inner .mark_list {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    margin-top: 1.875rem; }
    #mark .inner .mark_list > li {
      width: calc(480/1000*100%);
      display: flex;
      flex-flow: column;
      gap: 1.25rem; }
    #mark .inner .mark_list h3.ttl {
      font-size: 1.375em;
      font-weight: 700; }
    #mark .inner .mark_list .icon {
      width: 16.5625rem;
      margin: auto; }
    #mark .inner .mark_list .txt {
      font-weight: 400; }
      #mark .inner .mark_list .txt h4.ttl {
        font-weight: 700; }
    #mark .inner .mark_list .img {
      margin-top: 0.625rem; }
    #mark .inner .mark_list .products {
      font-weight: 400; }
      #mark .inner .mark_list .products h4.ttl {
        font-weight: 700; }
      #mark .inner .mark_list .products .txt {
        height: 100%;
        padding-right: 5px;
        max-height: 6.875rem;
        overflow-y: auto;
        /* スクロールバー全体 */
        /* スクロールバー背景 */
        /* スクロール部分 */
        /* hover時 */
        /*&::-webkit-scrollbar-thumb:hover {
          background: #555;
        }*/ }
        #mark .inner .mark_list .products .txt::-webkit-scrollbar {
          width: 3px; }
        #mark .inner .mark_list .products .txt::-webkit-scrollbar-track {
          background: #FFFFFF;
          border-radius: 3px; }
        #mark .inner .mark_list .products .txt::-webkit-scrollbar-thumb {
          background: #AEAEAE;
          border-radius: 3px; }
@media screen and (max-width: 767px) {
  #mark .inner {
    width: 100%;
    max-width: 65em;
    padding: 0 1.25em;
    margin: auto;
    padding-top: 7.1428571429em; } }
  @media screen and (max-width: 767px) and (max-width: 767px) {
    #mark .inner {
      padding-left: 2.1428571429em;
      padding-right: 2.1428571429em; } }
@media screen and (max-width: 767px) {
    #mark .inner h2 {
      font-size: 1.8571428571em; }
    #mark .inner .con {
      margin-top: 2.1428571429em; }
    #mark .inner .mark_list {
      gap: 2.8571428571em;
      margin-top: 2.8571428571em; }
      #mark .inner .mark_list > li {
        width: 100%;
        gap: 1.4285714286em; }
      #mark .inner .mark_list h3.ttl {
        font-size: 1.2857142857em; }
      #mark .inner .mark_list .icon {
        width: 18.9285714286em;
        margin: auto; }
      #mark .inner .mark_list .txt {
        font-weight: 400; }
        #mark .inner .mark_list .txt h4.ttl {
          font-weight: 700; }
      #mark .inner .mark_list .img {
        margin-top: 0.7142857143em; }
      #mark .inner .mark_list .products {
        font-weight: 400; }
        #mark .inner .mark_list .products h4.ttl {
          font-weight: 700; }
        #mark .inner .mark_list .products .txt {
          max-height: 7.8571428571em;
          overflow-y: auto; } }

#terms .inner {
  width: 100%;
  max-width: 65em;
  padding: 0 1.25em;
  margin: auto;
  padding-top: 6.25em; }
  @media screen and (max-width: 767px) {
    #terms .inner {
      padding-left: 2.1428571429em;
      padding-right: 2.1428571429em; } }
  #terms .inner h2 {
    font-size: 1.875em;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #153917;
    font-weight: 500; }
  #terms .inner .con {
    letter-spacing: 0.05em;
    font-weight: 400;
    line-height: calc(30/16);
    margin-top: 2.5rem; }
  #terms .inner .btn_wrap {
    margin-top: 3.75rem; }
    #terms .inner .btn_wrap .btn {
      width: 30.25rem;
      height: 5.125rem;
      background-color: #134113;
      border-radius: 6.25rem;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: all .6s; }
      #terms .inner .btn_wrap .btn span {
        color: #FFFFFF;
        font-size: 1.25em;
        font-weight: 700; }
      #terms .inner .btn_wrap .btn:hover {
        opacity: .6; }
@media screen and (max-width: 767px) {
  #terms .inner {
    width: 100%;
    max-width: 65em;
    padding: 0 1.25em;
    margin: auto;
    padding-top: 7.1428571429em; } }
  @media screen and (max-width: 767px) and (max-width: 767px) {
    #terms .inner {
      padding-left: 2.1428571429em;
      padding-right: 2.1428571429em; } }
@media screen and (max-width: 767px) {
    #terms .inner h2 {
      font-size: 1.8571428571em; }
    #terms .inner .con {
      width: 100%;
      margin-left: auto;
      margin-top: 2.8571428571em; }
    #terms .inner .btn_wrap {
      margin-top: 4.2857142857em; }
      #terms .inner .btn_wrap .btn {
        width: 21.2142857143em;
        height: 5.8571428571em; }
        #terms .inner .btn_wrap .btn span {
          font-size: 1.4285714286em;
          line-height: 130%; } }

#logo_data .inner {
  width: 100%;
  max-width: 65em;
  padding: 0 1.25em;
  margin: auto;
  padding-top: 6.25em; }
  @media screen and (max-width: 767px) {
    #logo_data .inner {
      padding-left: 2.1428571429em;
      padding-right: 2.1428571429em; } }
  #logo_data .inner h2 {
    font-size: 1.875em;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #153917;
    font-weight: 500; }
  #logo_data .inner .con {
    letter-spacing: 0.05em;
    font-weight: 400;
    line-height: calc(30/16);
    margin-top: 2.5rem; }
  #logo_data .inner .checkbox_wrap {
    margin-top: 1.875rem; }
    #logo_data .inner .checkbox_wrap label {
      display: flex;
      align-items: center;
      column-gap: 0.625rem; }
      #logo_data .inner .checkbox_wrap label input {
        margin-top: 0.3125rem; }
      #logo_data .inner .checkbox_wrap label a {
        text-decoration: underline; }
  #logo_data .inner .btn_wrap {
    margin-top: 1.875rem; }
    #logo_data .inner .btn_wrap .btn {
      width: 30.25rem;
      height: 5.125rem;
      background-color: #FFFFFF;
      border-radius: 6.25rem;
      display: flex;
      align-items: center;
      justify-content: center;
      pointer-events: none;
      transition: all .6s; }
      #logo_data .inner .btn_wrap .btn span {
        color: #144214;
        font-size: 1.25em;
        font-weight: 700; }
      #logo_data .inner .btn_wrap .btn.active {
        background-color: #134113;
        pointer-events: inherit; }
        #logo_data .inner .btn_wrap .btn.active span {
          color: #FFFFFF; }
        #logo_data .inner .btn_wrap .btn.active:hover {
          opacity: .6; }
@media screen and (max-width: 767px) {
  #logo_data .inner {
    width: 100%;
    max-width: 65em;
    padding: 0 1.25em;
    margin: auto;
    padding-top: 7.1428571429em; } }
  @media screen and (max-width: 767px) and (max-width: 767px) {
    #logo_data .inner {
      padding-left: 2.1428571429em;
      padding-right: 2.1428571429em; } }
@media screen and (max-width: 767px) {
    #logo_data .inner h2 {
      font-size: 1.8571428571em; }
    #logo_data .inner .con {
      width: 100%;
      margin-left: auto;
      margin-top: 2.8571428571em; }
    #logo_data .inner .checkbox_wrap {
      margin-top: 2.1428571429em; }
      #logo_data .inner .checkbox_wrap label {
        align-items: flex-start;
        column-gap: 0.7142857143em;
        line-height: 130%; }
        #logo_data .inner .checkbox_wrap label input {
          margin-top: 0.3571428571em; }
    #logo_data .inner .btn_wrap {
      margin-top: 2.1428571429em; }
      #logo_data .inner .btn_wrap .btn {
        width: 21.2142857143em;
        height: 5.8571428571em; }
        #logo_data .inner .btn_wrap .btn span {
          font-size: 1.4285714286em;
          line-height: 130%; } }

#faq .inner {
  width: 100%;
  max-width: 65em;
  padding: 0 1.25em;
  margin: auto;
  padding-top: 6.25em; }
  @media screen and (max-width: 767px) {
    #faq .inner {
      padding-left: 2.1428571429em;
      padding-right: 2.1428571429em; } }
  #faq .inner h2 {
    font-size: 1.875em;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #153917;
    font-weight: 500; }
  #faq .inner .faq_list {
    display: flex;
    flex-flow: column;
    gap: 1.25rem;
    letter-spacing: 0.05em;
    font-weight: 400;
    line-height: calc(30/16);
    margin-top: 2.5rem; }
    #faq .inner .faq_list .question {
      font-weight: 700; }
      #faq .inner .faq_list .question::before {
        content: 'Q.'; }
    #faq .inner .faq_list .answer {
      display: flex; }
      #faq .inner .faq_list .answer::before {
        content: 'A.'; }
      #faq .inner .faq_list .answer a {
        text-decoration: underline; }
@media screen and (max-width: 767px) {
  #faq .inner {
    width: 100%;
    max-width: 65em;
    padding: 0 1.25em;
    margin: auto;
    padding-top: 7.1428571429em; } }
  @media screen and (max-width: 767px) and (max-width: 767px) {
    #faq .inner {
      padding-left: 2.1428571429em;
      padding-right: 2.1428571429em; } }
@media screen and (max-width: 767px) {
    #faq .inner h2 {
      font-size: 1.8571428571em; }
    #faq .inner .faq_list {
      display: flex;
      flex-flow: column;
      gap: 1.25rem;
      letter-spacing: 0.05em;
      font-weight: 400;
      line-height: calc(30/16);
      margin-top: 2.5rem; }
      #faq .inner .faq_list .question {
        font-weight: 700; }
        #faq .inner .faq_list .question::before {
          content: 'Q.'; }
      #faq .inner .faq_list .answer {
        display: flex; }
        #faq .inner .faq_list .answer::before {
          content: 'A.'; }
        #faq .inner .faq_list .answer a {
          text-decoration: underline; } }

#case .inner {
  width: 100%;
  max-width: 65em;
  padding: 0 1.25em;
  margin: auto;
  padding-top: 6.25em; }
  @media screen and (max-width: 767px) {
    #case .inner {
      padding-left: 2.1428571429em;
      padding-right: 2.1428571429em; } }
  #case .inner h2 {
    font-size: 1.875em;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #153917;
    font-weight: 500; }
  #case .inner .case_list {
    display: flex;
    flex-flow: column;
    gap: 2.5rem;
    letter-spacing: 0.05em;
    font-weight: 400;
    line-height: calc(30/16);
    margin-top: 2.5rem; }
    #case .inner .case_list li {
      display: flex;
      flex-flow: column;
      gap: 0.625rem; }
      #case .inner .case_list li h3 {
        font-size: 1.875em;
        font-weight: 700;
        color: #52584D; }
@media screen and (max-width: 767px) {
  #case .inner {
    width: 100%;
    max-width: 65em;
    padding: 0 1.25em;
    margin: auto;
    padding-top: 7.1428571429em; } }
  @media screen and (max-width: 767px) and (max-width: 767px) {
    #case .inner {
      padding-left: 2.1428571429em;
      padding-right: 2.1428571429em; } }
@media screen and (max-width: 767px) {
    #case .inner h2 {
      font-size: 1.8571428571em; }
    #case .inner .case_list {
      gap: rem_sp(40);
      margin-top: rem_sp(30); }
      #case .inner .case_list li {
        gap: rem_sp(10); }
        #case .inner .case_list li h3 {
          font-size: 1.1428571429em; } }

#about_page_navi {
  padding-top: 6.25em;
  padding-bottom: 12.5em; }
  #about_page_navi .inner {
    padding-top: 6.25em;
    border-top: 0.0625em solid #CBC5B3; }
  #about_page_navi ul.page_navi > li:nth-child(1) {
    width: 49%; }
  #about_page_navi ul.page_navi > li:nth-child(2) {
    width: 49%; }
  @media screen and (max-width: 767px) {
    #about_page_navi {
      padding-top: 3.5714285714em;
      padding-bottom: 5.7142857143em; }
      #about_page_navi .inner {
        padding-top: 3.5714285714em;
        border-top: 0.0625rem solid #CBC5B3; }
      #about_page_navi ul.page_navi > li:nth-child(1) {
        width: 100%; }
      #about_page_navi ul.page_navi > li:nth-child(2) {
        width: 100%; } }
