@charset "UTF-8";
.flow-section {
  margin: clamp( 30px, calc((100vw - 600px) * (30 / 360) + 30px), 60px ) auto!important;
  }
  
  
  .flow-section-title {
  font-size: clamp(18px, calc(18px + (100vw - 600px) * 2 / 360 ),20px)!important;
  text-align: center;
  padding: 16px!important;
  border: none!important;
  margin: 0 0 clamp( 24px, calc((100vw - 600px) * (24 / 360) + 24px), 48px )!important;
  background: #007440!important;
  line-height: 1.25!important;
  color: #ffffff!important;
  border-radius: 10px;
  display: flex;
  gap: 0.25em;
  justify-content: center;
  align-items: center;
  position: relative;
  }
  .flow-section-title:after {
width: 0;
height: 0;
border-style: solid;
border-right: 15px solid transparent;
border-left: 15px solid transparent;
border-top: 12px solid #006F4F;
border-bottom: 0;
position: absolute;
content: '';
bottom: -12px;
}
  
  
  
  ol.flow-section-list {
  list-style: none!important;
  margin: clamp( 24px, calc((100vw - 600px) * (24 / 360) + 24px), 48px ) auto!important;
  }
  
  ol.flow-section-list li {
  margin: clamp( 40px, calc((100vw - 600px) * (14 / 360) + 40px), 54px ) auto!important;
  display: flex;
  }
  
  
  .flow-section-list-step {
  width: clamp( 60px, calc((100vw - 600px) * (60 / 360) + 60px), 120px );
  text-align: center;
  background: #007440;
  display: flex;
  flex-direction: column;
  line-height: 1;
  justify-content: center;
  color: #ffffff;
  font-weight: bold;
  position: relative;
  }
  .flow-section-list-step:after {
  position: absolute;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-right: clamp( 30px, calc((100vw - 600px) * (30 / 360) + 30px), 60px ) solid transparent;
  border-left: clamp( 30px, calc((100vw - 600px) * (30 / 360) + 30px), 60px ) solid transparent;
  border-top: clamp( 24px, calc((100vw - 600px) * (8 / 360) + 24px), 32px ) solid #007440;
  border-bottom: 0;
  bottom: calc(clamp( 24px, calc((100vw - 600px) * (8 / 360) + 24px), 32px ) * -1);
  }
  .flow-section-list li:last-child .flow-section-list-step:after {
  display: none;
  }
  
  .flow-section-list-content {
  padding: clamp( 10px, calc((100vw - 600px) * (5 / 360) + 10px), 15px );
  border: 1px solid #007440;
  border-left: none;
  background: #EEF2E8;
  flex: 1;
  }
  .flow-section-list-content h3 {
  font-size: clamp(16px, calc(16px + (100vw - 600px) * 2 / 360 ),18px)!important;
  padding: 0!important;
  margin-bottom: 5px!important;
  border: none!important;
  font-size: initial!important;
  display: flex;
  gap: clamp( 10px, calc((100vw - 600px) * (6 / 360) + 10px), 16px );
  }
  .flow-section-list-content h3 span {
  display: flex;
  gap: clamp( 10px, calc((100vw - 600px) * (6 / 360) + 10px), 16px );
  }
  
  span.flow-section-list-content-title1 {
  color: #D9463A !important;
  font-size: clamp(16px, calc(16px + (100vw - 600px) * 2 / 360), 18px) !important;
  }
  
  span.flow-section-list-content-title2 {
  font-size: 14px;
  padding-inline : 16px;
  border-radius: 100px;
  border: 1px solid #007440;
  background: #FFF;
  display: flex;
  align-items: center;
  }
  
  .flow-section-list-content p {
  font-size: 15px;
  margin-bottom: 0;
  line-height : 1.6;
  padding: 0 10px
  }
  
  span.flow-section-list-step-number1 {
  font-size: clamp(16px, calc(16px + (100vw - 600px) * 4 / 360 ),20px);
  color: #ffffff;
  }
  
  span.flow-section-list-step-number2 {
  font-size: clamp(28px, calc(28px + (100vw - 600px) * 12 / 360 ),40px);
  }
  
  span.flow-section-title-sub {
  color: #FFF159;
  font-family: "Noto Serif JP", serif;
  font-size: 110%;
  }
  
  
  .cta-section-button {
  margin: clamp(24px, calc((100vw - 600px) * (24 / 360) + 24px), 48px) auto !important;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: clamp( 15px, calc((100vw - 600px) * (9 / 360) + 15px), 24px );
  line-height: 1;
  flex-wrap: wrap;
  }
  
  .button-item a {
  border-radius: 999px;
  border: 2px solid #007440;
  color: #007440!important;
  background: #FFF;
  display: block;
  text-decoration: none!important;
  padding: 12px 48px;
  font-size: 18px;
  font-weight: bold;
  position: relative;
  text-align: center;
  transition: 0.2s;
  line-height: 1.26;
  }
  .button-item a:before {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 90%;
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  }
  .button-item a:hover {
  color: #ffffff!important;
  background: #007440!important;
  }
  .button-item a .num {
  font-size: 14px;
  }
  .button-item a.green {
  color: #FFF!important;
  background: #007440;
  }
  .button-item a.green:hover {
  color: #007440!important;
  background: #ffffff!important;
  }
  .button-item a.red1 {
  color: #D9463A!important;
  border-color: #D9463A;
  }
  .button-item a.red1:hover {
  color: #ffffff!important;
  background: #D9463A!important;
  }
  .button-item a.red2 {
  color: #ffffff!important;
  background: #D9463A;
  border-color: #D9463A;
  }
  .button-item a.red2:hover {
  color: #D9463A!important;
  background: #ffffff!important;
  }
  .button-item a.font-small {
      font-size: clamp(14px, calc(14px + (100vw - 600px) * 4 / 360), 18px);
  }
  
  
  .selling-section {
  margin: clamp( 30px, calc((100vw - 600px) * (30 / 360) + 30px), 60px ) auto!important;
  }
  .selling-section-list {
  margin: clamp( 20px, calc((100vw - 600px) * (10 / 360) + 20px), 30px ) auto!important;
  list-style: none!important;
  counter-reset: num;
  }
  .selling-section-list li {
counter-increment: num;
  padding: clamp( 16px, calc((100vw - 600px) * (4 / 360) + 16px), 20px ) 0!important;
  margin: 0!important;
  border-bottom: 1px solid #DCDCDC;
  }
  .selling-section-list li h3 {
  font-size: clamp(18px, calc(18px + (100vw - 600px) * 2 / 360 ),20px)!important;
  font-weight: bold;
  padding: 0 0 0 clamp( 30px, calc((100vw - 600px) * (10 / 360) + 30px), 40px )!important;
  margin-bottom: 10px!important;
  border: 0!important;
  color:#000!important;
  position: relative;
  }
  .selling-section-list li h3:before {
  content: counter(num, decimal-leading-zero);
      left: 0;
      position: absolute;
      color: #D9463A;
  }
  
  .selling-section-list li p {
      padding: 0 0 0 clamp( 30px, calc((100vw - 600px) * (10 / 360) + 30px), 40px )!important;
      margin-bottom: 0!important;
      color:#555!important;
  }
  .selling-section-price-img {
      margin: clamp( 20px, calc((100vw - 600px) * (10 / 360) + 20px), 30px ) 0;
      display: flex;
      flex-wrap: wrap;
      gap: 20px;
  }
  .selling-section-price-img img {
      width: calc(50% - 10px);
  }
  
  .price-table-wrap {
  width: 100%;
  overflow-x: auto;
  }
  
  .price-table {
  width: 100%;
  border-collapse: collapse;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  background: #fff!important;
  font-size:clamp(15px, calc(15px + (100vw - 600px) * 3 / 360 ),18px)!important;
  line-height: 1.25!important;
  table-layout: fixed;
  }
  
  .price-table th,
  .price-table td {
  border: 1px solid #1f7a45!important;
  padding: 14px 12px;
  text-align: center;
  vertical-align: middle;
  }
  
  .price-table thead th {
  background: #0b7a3e!important;
  color: #fff!important;
  font-weight: 700;
  border-color: #fff #fff #0b7a3e!important;
  white-space: initial!important;
  }
  
  .price-table thead th:first-child {
  border-left-color: #0b7a3e!important;
  }
  
  .price-table thead th:last-child {
  border-right-color: #0b7a3e!important;
  }
  
  .price-table tbody td {
  padding: 22px 12px;
  }
  
  .faq-summaries.cta-faq-list {
      margin: clamp( 20px, calc((100vw - 600px) * (10 / 360) + 20px), 30px ) 0!important;
      list-style: none!important;
  }
  .faq-summaries.cta-faq-list li {
      margin: 20px 0!important;
  }
  .faq-summaries.cta-faq-list li dt a{
      text-decoration: none!important;
      padding-right: 40px!important;
  }
  .faq-summaries.cta-faq-list li dt a:before{
  }
  
  .flow-section-img .pc_only img {
      width:100%;
  }
  .flow-section-img .sp_only img {
      margin: auto;
      display: block;
      width: 100%;
  }
  .selling-section-img {
      margin: clamp( 20px, calc((100vw - 600px) * (10 / 360) + 20px), 30px ) 0;
  }

  @media (max-width: 600px) {
  .price-table {
    font-size: 14px;
  }
  .price-table th,
  .price-table td {
    padding: 12px 8px;
  }
  .button-item {
  width: 100%;
  }
  .selling-section-price-img img {
      width: 100%;
  }
  
  }
  
  