/*! --------------------------------------------------------------
　　このCSSファイルは .scssファイルからコンパイルされたものです。
　　修正する際はscssファイルを編集するように注意してください。
--------------------------------------------------------------- */
.main_page {
  height: 30vh;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: unset;
  position: relative
}

@media(max-width: 767px) {
  .main_page {
    height: 30vh
  }
}

.main_page .pagettl {
  font-size: 2.625rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .06em;
  text-align: center
}

@media(max-width: 767px) {
  .main_page .pagettl {
    font-size: 1.5rem
  }
}

.main_page .pagettl span {
  display: block;
  font-size: 1.25rem;
  color: #186c21;
  letter-spacing: .14em;
  text-transform: uppercase
}

@media(max-width: 767px) {
  .main_page .pagettl span {
    font-size: 0.875rem
  }
}

.main_page.main_reason {
  background: url(images/reason/bg_main.jpg) center center/cover no-repeat
}

.main_page.main_service {
  background: url(images/service/bg_main.jpg) center center/cover no-repeat
}

.main_page.main_digitization {
  background: url(images/service/bg_main.jpg) center center/cover no-repeat
}

.main_page.main_questionnaire {
  background: url(images/service/bg_main.jpg) center center/cover no-repeat
}

.main_page.main_consulting {
  background: url(images/service/bg_main.jpg) center center/cover no-repeat
}

.main_page.main_dxmark {
  background: url(images/service/bg_main.jpg) center center/cover no-repeat
}

.main_page.main_company {
  background: url(images/company/bg_main.jpg) center center/cover no-repeat
}

.main_page.main_faq {
  background: url(images/faq/bg_main.jpg) center center/cover no-repeat
}

.main_page.main_case {
  background: url(images/case/bg_main.jpg) center center/cover no-repeat
}

.main_page.main_contact {
  background: url(images/contact/bg_main.jpg) center center/cover no-repeat
}

.main_page.main_estimate {
  background: url(images/contact/bg_main.jpg) center center/cover no-repeat
}

.main_page.main_request {
  background: url(images/request/bg_main.jpg) center center/cover no-repeat
}

.main_page.main_news {
  background: url(images/news/bg_main.jpg) center center/cover no-repeat
}

.main_page.main_blog {
  background: url(images/blog/bg_main.jpg) center center/cover no-repeat
}

.main_page.main_price {
  background: url(images/price/bg_main.jpg) center center/cover no-repeat
}

.main_page.main_dx_declaration {
  background: url(images/company/bg_main.jpg) center center/cover no-repeat
}

.main_page.main_esg {
  background: url(images/company/bg_main.jpg) center center/cover no-repeat
}

.main_page.main_kankyotaisaku {
  background: url(images/company/bg_main.jpg) center center/cover no-repeat
}

.main_page.main_privacy {
  background: url(images/company/bg_main.jpg) center center/cover no-repeat
}

.breadcrumbs {
  padding: .7rem 0
}

.breadcrumbs ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center
}

.breadcrumbs ul li {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
  margin-right: .8em
}

@media(max-width: 767px) {
  .breadcrumbs ul li {
    font-size: 0.75rem
  }
}

.page_plink .plink_cmn {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: .5rem .6944444444%
}

.page_plink .plink_cmn:not(:last-child) {
  margin-bottom: 3rem
}

@media(max-width: 767px) {
  .page_plink .plink_cmn:not(:last-child) {
    margin-bottom: 1.8rem
  }
}

.page_plink .plink_cmn.four {
  gap: .5rem 1.3888888889%
}

.page_plink .plink_cmn.four .btn_plink a {
  width: 258px
}

@media(max-width: 767px) {
  .page_plink .plink_cmn.four .btn_plink a {
    width: 44vw
  }
}

.btn_plink {
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%
}

.btn_plink a {
  max-width: 100%;
  width: 210px;
  height: 64px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  align-content: unset;
  padding: 0 4%;
  position: relative
}

@media(max-width: 767px) {
  .btn_plink a {
    width: 44vw;
    height: 3rem
  }
}

.btn_plink a p {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center
}

@media(max-width: 767px) {
  .btn_plink a p {
    font-size: 0.8125rem
  }
}

.btn_plink a>i {
  font-size: 0.625rem
}

.btn_plink.bg_eg a {
  background-color: #01b514;
  color: #fff
}

.btn_plink.bg_eg a:hover {
  background-color: #005009;
  transition: .3s ease
}

.reason_first .side_cmn {
  padding: 2.5rem 0;
  position: relative
}

@media(max-width: 767px) {
  .reason_first .side_cmn {
    padding: 1.5rem 0
  }
}

.reason_first .side_cmn:not(:last-child) {
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .reason_first .side_cmn:not(:last-child) {
    margin-bottom: 2.5rem
  }
}

.reason_first .side_cmn:not(.reverse) .txt {
  padding-right: 4%
}

@media(max-width: 767px) {
  .reason_first .side_cmn:not(.reverse) .txt {
    padding-right: 1rem
  }
}

.reason_first .side_cmn.reverse .txt {
  padding-left: 4%
}

@media(max-width: 767px) {
  .reason_first .side_cmn.reverse .txt {
    padding-left: 1rem
  }
}

.service_first {
  background: url(images/index/bg_second01.svg) top left/100% auto repeat
}

body.page.scan header+.breadcrumbs {
  display: none
}

.main_scan {
  background: url(images/scan/bg_main.jpg) center center/cover no-repeat;
  padding: 2.5rem 0
}

@media(max-width: 767px) {
  .main_scan {
    padding: 1.8rem 0
  }
}

.main_scan .inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  align-content: unset
}

.main_scan .ttl01 {
  font-size: 2.25rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.1;
  margin-bottom: .6em
}

@media(max-width: 767px) {
  .main_scan .ttl01 {
    font-size: 1.5rem
  }
}

.main_scan .ttl01 span {
  font-size: 1.75rem
}

@media(max-width: 767px) {
  .main_scan .ttl01 span {
    font-size: 1.125rem
  }
}

.main_scan .tagwrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 5px 10px
}

.main_scan .tagwrap span {
  display: inline-block;
  background-color: #ff0;
  border-radius: 5px;
  padding: .3em .8em;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5
}

@media(max-width: 767px) {
  .main_scan .tagwrap span {
    font-size: 0.875rem
  }
}

.scan_first .ttl01 {
  font-size: 2.125rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  margin-bottom: 1.2em
}

@media(max-width: 767px) {
  .scan_first .ttl01 {
    font-size: 1.375rem
  }
}

.scan_first .ttl01 span {
  display: block;
  font-size: 1.125rem;
  color: #01b514;
  font-weight: 400
}

@media(max-width: 767px) {
  .scan_first .ttl01 span {
    font-size: 0.875rem
  }
}

.scan_first .colwrap {
  /*display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 1rem 3.7037037037%;*/
  margin-bottom: 3.5rem;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 20px;
  flex-direction: column;
}

@media(max-width: 767px) {
  .scan_first .colwrap {
    margin-bottom: 2rem;
    flex-direction: column;
  }
}

.scan_first .colwrap .col {
  background: linear-gradient(to right, rgba(64, 206, 58, 0.11), rgba(207, 242, 62, 0.11));
  padding: 1.8rem 3%;
  border-radius: 10px;
  display: flex;
 /* width: calc((100% - 20px) / 2);*/
  width: 100%;
  gap: 10px;
  margin-bottom: 20px;
  /*flex-direction: column;*/
}

@media(max-width: 767px) {
  .scan_first .colwrap .col {
    padding: 1.5rem 4%;
    width: 100%;
	flex-direction: column;
  }
}

.scan_first .colwrap .col h3 {
  margin-bottom: .4em
}

.scan_first figure img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.scan_contact .box {
  background: url(images/scan/bg_scan01.jpg) center center/cover no-repeat;
  padding: 2.5rem 8%
}

@media(max-width: 767px) {
  .scan_contact .box {
    padding: 1.7rem 4%
  }
}

.scan_contact .box h2.ttl_cmn2 {
  margin-bottom: .5em
}

.scan_contact .box .btn_tel {
  margin-bottom: 1.2rem
}

.scan_contact .box .btnwrap {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1rem 2.7777777778%
}

@media(max-width: 767px) {
  .scan_contact .box .btnwrap .btn_cmn {
    margin-inline: auto
  }
}

.scan_problem {
  background: url(/wp-content/uploads/2024/11/back_green.svg) center top/cover no-repeat
}

.scan_problem .ttl01 {
  font-size: 2.375rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  margin-bottom: 1.2em
}

@media(max-width: 767px) {
  .scan_problem .ttl01 {
    font-size: 1.5rem
  }
}

.scan_problem .ttl01 span {
  display: block;
  font-size: 1.125rem;
  color: #fff;
  font-weight: 400
}

@media(max-width: 767px) {
  .scan_problem .ttl01 span {
    font-size: 0.875rem
  }
}

.scan_problem ul.ul01 {
  margin-bottom: 2.5rem
}

@media(max-width: 767px) {
  .scan_problem ul.ul01 {
    margin-bottom: 1.8rem
  }
}

.scan_problem ul.ul01 li {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-start;
  background-color: #fff;
  border-radius: .5rem;
  padding: 2rem 4%
}

@media(max-width: 767px) {
  .scan_problem ul.ul01 li {
    padding: 1.2rem 4%
  }
}

.scan_problem ul.ul01 li:not(:last-child) {
  margin-bottom: 1.4rem
}

@media(max-width: 767px) {
  .scan_problem ul.ul01 li:not(:last-child) {
    margin-bottom: 1rem
  }
}

.scan_problem ul.ul01 li i {
  font-size: 2.125rem;
  color: #01b514;
  line-height: 1;
  margin-right: .6em;
  position: relative;
  top: .1em
}

@media(max-width: 767px) {
  .scan_problem ul.ul01 li i {
    font-size: 1.5rem
  }
}

.scan_problem .ttl02 {
  font-size: 6.125rem;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  margin-bottom: .3em
}

@media(min-width: 768px)and (max-width: 1199px) {
  .scan_problem .ttl02 {
    font-size: 2.75rem
  }
}

@media(max-width: 767px) {
  .scan_problem .ttl02 {
    font-size: 2.5rem
  }
}

.scan_problem .ttl03 {
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  margin-bottom: 1em
}

@media(max-width: 767px) {
  .scan_problem .ttl03 {
    font-size: 1.25rem
  }
}

.scan_problem .ttl03 b {
  display: inline-block;
  background-color: #fff;
  padding: .2em .5em
}

.scan_problem .ttl03 em {
  display: block;
  font-size: 2.375rem
}

@media(max-width: 767px) {
  .scan_problem .ttl03 em {
    font-size: 1.375rem
  }
}

.scan_problem ul.ul02 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 2rem 2.2222222222%
}

.scan_problem ul.ul02 li figure {
  margin-bottom: 10px
}

.scan_problem ul.ul02 li figure img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
	height:200px
}

.scan_problem ul.ul02 li .ttl {
  height: 5.5rem;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  background-color: #fff;
  padding: 0 3%;
  margin-bottom: 10px
}

@media(max-width: 767px) {
  .scan_problem ul.ul02 li .ttl {
    height: unset;
    padding: .8rem 3%
  }
}

.scan_problem ul.ul02 li .ttl .num {
  font-size: 1.5rem;
  color: #01b514;
  font-weight: 600;
  line-height: .85;
  letter-spacing: .1em;
  margin-right: .3em
}

@media(max-width: 767px) {
  .scan_problem ul.ul02 li .ttl .num {
    font-size: 1.5rem
  }
}

.scan_problem ul.ul02 li p.txt03 {
  font-weight: 500
}

.scan_reason {
  background: unset
}

.scan_reason .ttl01 {
  width: -moz-fit-content;
  width: fit-content;
  font-size: 2.125rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: .06em;
  padding: 0 2em;
  margin-inline: auto;
  margin-bottom: 2em;
  position: relative
}

@media(max-width: 767px) {
  .scan_reason .ttl01 {
    max-width: 80vw;
    font-size: 1.25rem;
    padding: 0 0em
  }
}

.scan_reason .ttl01 span {
  width: -moz-fit-content;
  width: fit-content;
  display: block;
  margin-inline: auto
}

@media(max-width: 767px) {
  .scan_reason .ttl01 span img {
    width: 25vw
  }
}

.scan_reason .ttl01 em {
  width: -moz-fit-content;
  width: fit-content;
  display: block;
  background: linear-gradient(transparent 70%, rgba(1, 181, 20, 0.38) 30%);
  font-size: 3.375rem;
  line-height: 1;
  padding: 0 .5em;
  margin-inline: auto
}

@media(max-width: 767px) {
  .scan_reason .ttl01 em {
    font-size: 1.75rem
  }
}

.scan_reason .ttl01::before,
.scan_reason .ttl01::after {
  content: "";
  width: 141px;
  aspect-ratio: 141/212;
  position: absolute;
  top: 50%;
  translate: 0 -50%
}

@media(max-width: 767px) {

  .scan_reason .ttl01::before,
  .scan_reason .ttl01::after {
    width: 12vw
  }
}

.scan_reason .ttl01::before {
  background: url(images/scan/ttlbg_l.svg) center center/100% auto no-repeat;
  right: 100%
}

.scan_reason .ttl01::after {
  background: url(images/scan/ttlbg_r.svg) center center/100% auto no-repeat;
  left: 100%
}

.scan_reason h3.ttl_cmn2 {
  margin-bottom: 0
}

.scan_merit {
  background: url(/wp-content/uploads/2024/11/back_green.svg) center center/cover no-repeat
}

.scan_merit h2.ttl_cmn {
  translate: 0 -80%;
  margin-bottom: 0
}

@media(min-width: 768px)and (max-width: 1199px) {
  .scan_merit h2.ttl_cmn {
    translate: 0 -100%
  }
}

@media(max-width: 767px) {
  .scan_merit h2.ttl_cmn {
    translate: 0 -100%
  }
}

.scan_merit ul.ul02 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 2rem 3.0555555556%;
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .scan_merit ul.ul02 {
    margin-bottom: 2rem
  }
}

.scan_merit ul.ul02 li figure {
  margin-bottom: 10px
}

.scan_merit ul.ul02 li figure img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
	height:200px
}

.scan_merit ul.ul02 li .ttl {
  height: 4.5rem;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  background-color: #fff;
  padding: 0 2%;
  margin-bottom: 10px
}

@media(max-width: 767px) {
  .scan_merit ul.ul02 li .ttl {
    height: unset;
    padding: .8rem 3%
  }
}

.scan_merit ul.ul02 li .ttl .num {
  font-size: 1.5rem;
  color: #01b514;
  font-weight: 600;
  line-height: .85;
  letter-spacing: .1em;
  margin-right: .2em
}

@media(max-width: 767px) {
  .scan_merit ul.ul02 li .ttl .num {
    font-size: 1.5rem
  }
}

.scan_merit ul.ul02 li .ttl p.txt02 {
  line-height: 1.5
}

.scan_merit ul.ul02 li p.txt03 {
  font-weight: 500
}

.scan_merit ul.ul03 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 2.5rem 6.4814814815%
}

@media(max-width: 767px) {
  .scan_merit ul.ul03 {
    gap: 2rem 0
  }
}

.scan_merit ul.ul03 li {
  width: 27.7777777778%
}

@media(max-width: 767px) {
  .scan_merit ul.ul03 li {
    width: 100%
  }
}

.scan_merit ul.ul03 li figure {
  margin-bottom: 10px
}

.scan_merit ul.ul03 li figure img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.scan_merit ul.ul03 li .ttl {
  height: 4.5rem;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  background-color: #fff;
  padding: 0 3%;
  margin-bottom: 10px
}

@media(max-width: 767px) {
  .scan_merit ul.ul03 li .ttl {
    height: unset;
    padding: .8rem 3%
  }
}

.scan_merit ul.ul03 li .ttl .num {
  font-size: 1.5rem;
  color: #01b514;
  font-weight: 600;
  line-height: .85;
  letter-spacing: .1em;
  margin-right: .2em
}

@media(max-width: 767px) {
  .scan_merit ul.ul03 li .ttl .num {
    font-size: 1.5rem
  }
}

.scan_merit ul.ul03 li p.txt02 {
  line-height: 1.5
}

.scan_merit ul.ul03 li p.txt02 span {
  font-size: 0.875rem
}

@media(max-width: 767px) {
  .scan_merit ul.ul03 li p.txt02 span {
    font-size: 0.75rem
  }
}

.scan_merit ul.ul03 li p.txt03 {
  font-weight: 500
}

.scan_voice {
  background: url(/wp-content/uploads/2024/11/back_green.svg) center center/cover no-repeat
}

.scan_voice h2.ttl_cmn {
  translate: 0 -80%;
  margin-bottom: 0
}

@media(min-width: 768px)and (max-width: 1199px) {
  .scan_voice h2.ttl_cmn {
    translate: 0 -100%
  }
}

@media(max-width: 767px) {
  .scan_voice h2.ttl_cmn {
    translate: 0 -100%
  }
}

.scan_voice ul {
  margin-bottom: 3rem
}

@media(max-width: 767px) {
  .scan_voice ul {
    margin-bottom: 2rem
  }
}

.scan_voice ul li {
  background-color: #fff;
  border-radius: .8rem;
  padding: 2.5rem 6%
}

@media(max-width: 767px) {
  .scan_voice ul li {
    padding: 1.2rem 4%
  }
}

.scan_voice ul li:not(:last-child) {
  margin-bottom: 1.8rem
}

@media(max-width: 767px) {
  .scan_voice ul li:not(:last-child) {
    margin-bottom: 1.2rem
  }
}

.scan_voice .txt_sub {
  display: inline-block;
  background-color: #ff0;
  padding: .2em .5em;
  line-height: 1.5
}

.scan_voice .ttl01 {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: .5em
}

@media(max-width: 767px) {
  .scan_voice .ttl01 {
    font-size: 1.25rem
  }
}

.scan_price h2.ttl_cmn {
  translate: 0 -80%;
  margin-bottom: 0
}

@media(min-width: 768px)and (max-width: 1199px) {
  .scan_price h2.ttl_cmn {
    translate: 0 -100%
  }
}

@media(max-width: 767px) {
  .scan_price h2.ttl_cmn {
    translate: 0 -100%
  }
}

.scan_flow {
  background: url(/wp-content/uploads/2024/11/back_green.svg) center center/cover no-repeat
}

.scan_flow h2.ttl_cmn {
  translate: 0 -80%;
  margin-bottom: 0
}

@media(min-width: 768px)and (max-width: 1199px) {
  .scan_flow h2.ttl_cmn {
    translate: 0 -100%
  }
}

@media(max-width: 767px) {
  .scan_flow h2.ttl_cmn {
    translate: 0 -100%
  }
}

.scan_flow ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  gap: 2rem 1.8518518519%
}

.scan_flow ul li {
  width: 23.6111111111%;
  background-color: #fff;
  padding: 0 2% 1.5rem
}

@media(max-width: 767px) {
  .scan_flow ul li {
    width: 100%;
    padding: 0 4% 1.2rem
  }
}

.scan_flow ul li:not(:last-child) {
  position: relative
}

.scan_flow ul li:not(:last-child)::after {
  content: "";
  font-size: 2.875rem;
  color: #01b514;
  font-weight: 900;
  line-height: 1;
  font-family: "Font Awesome 5 Free";
  position: absolute;
  top: 50%;
  left: calc(100% + 10px);
  translate: -50% -50%;
  z-index: 1
}

@media(min-width: 768px)and (max-width: 1199px) {
  .scan_flow ul li:not(:last-child)::after {
    font-size: 2.25rem;
    left: calc(100% + 5px)
  }
}

@media(max-width: 767px) {
  .scan_flow ul li:not(:last-child)::after {
    content: none
  }
}

.scan_flow ul li .step {
  display: grid;
  place-content: center;
  place-self: center;
  width: 92px;
  aspect-ratio: 1/1;
  background-color: #ff0;
  border-radius: 100vmax;
  font-size: 1rem;
  color: #186c21;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  box-shadow: 0 3px 6px rgba(51, 51, 51, .16);
  translate: 0% -50%;
  margin-inline: auto
}

.scan_flow ul li .step em {
  display: block;
  font-size: 2rem;
  font-weight: 900;
  line-height: .85;
  letter-spacing: .1em
}

.scan_flow ul li figure {
  text-align: center;
  margin-bottom: 2rem
}

@media(max-width: 767px) {
  .scan_flow ul li figure {
    margin-bottom: 1rem
  }
}

.scan_flow ul li h3.ttl_cmn2 {
  margin-bottom: .3em
}

.scan_format {
  background: url(images/index/bg_case01.svg) center center/cover no-repeat
}

.scan_format h2.ttl_cmn {
  translate: 0 -80%;
  margin-bottom: 0
}

@media(min-width: 768px)and (max-width: 1199px) {
  .scan_format h2.ttl_cmn {
    translate: 0 -100%
  }
}

@media(max-width: 767px) {
  .scan_format h2.ttl_cmn {
    translate: 0 -100%
  }
}

.scan_format ul {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 1.8rem 7.4074074074%
}

.scan_format ul li figure {
  text-align: center;
  margin-bottom: .8rem
}

.format_list {
	display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
}

.format_list li {
	background-color: #fff;
    padding: 0.5rem 1rem;
    min-width: 120px;
	font-size:1.25rem;
	font-weight:500
}

.format_list li i {
	margin-right: 0.5rem;
}

@media(max-width: 767px) {
	.format_list {
		flex-direction: column;
	}

	.format_list li {
		width: 80%;
	}
}

.scan_faq h2.ttl_cmn {
  translate: 0 -80%;
  margin-bottom: 0
}

@media(min-width: 768px)and (max-width: 1199px) {
  .scan_faq h2.ttl_cmn {
    translate: 0 -100%
  }
}

@media(max-width: 767px) {
  .scan_faq h2.ttl_cmn {
    translate: 0 -100%
  }
}

.scan_other {
  background-color: #f6f6f6
}

.scan_other ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 2.4rem 1.6666666667%
}

@media(max-width: 767px) {
  .scan_other ul {
    gap: 1.5rem 0
  }
}

.scan_other ul li {
  width: 32.1296296296%
}

@media(max-width: 767px) {
  .scan_other ul li {
    width: 100%
  }
}

.scan_other ul li figure {
  margin-bottom: .4rem
}

.scan_other ul li figure img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.company_creed {
  background: linear-gradient(to right, rgba(64, 206, 58, 0.15), rgba(207, 242, 62, 0.15))
}

.company_creed ul {
  max-width: 900px;
  margin-inline: auto;
  margin: 0 auto;
  width: fit-content;
}

.company_creed ul li {
  /*background-color: #fff;
  padding: 1.5rem 4%*/
  width: fit-content;
}

.company_creed ul li:not(:last-child) {
  margin-bottom: 1.2rem
}

.company_creed ul li i {
	margin-right: 0.5rem;
}

.company_triple .colwrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem 4.8148148148%;
  margin-bottom: 2.5rem
}

@media(max-width: 767px) {
  .company_triple .colwrap {
    grid-template-columns: repeat(1, 1fr);
    margin-bottom: 1.8rem
  }
}

.company_triple .colwrap .col figure img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.company_triple .colwrap .col .txt {
  padding: 1rem 4% 1.2rem
}

.company_triple .colwrap .col .txt h3 {
  margin-bottom: .4em
}

.company_triple .under {
  background-color: #f6f6f6;
  padding: 3rem 4%
}

@media(max-width: 767px) {
  .company_triple .under {
    padding: 1.2rem 4%
  }
}

.company_triple .under .lump {
  max-width: 740px;
  margin-inline: auto
}

.company_greeting {
  background: linear-gradient(to right, rgba(64, 206, 58, 0.15), rgba(207, 242, 62, 0.15));
  padding: 2.5rem 0 4.5rem
}

@media(max-width: 767px) {
  .company_greeting {
    padding: 2rem 0 3rem
  }
}

.company_greeting .ttl01 {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: .5em
}

@media(max-width: 767px) {
  .company_greeting .ttl01 {
    font-size: 1.25rem
  }
}

.company_greeting p.txt01 {
  margin-bottom: 1.2em
}

.company_greeting .name {
  font-size: 2.25rem;
  line-height: 1.3;
  font-weight: 700;
  text-align: right
}

@media(max-width: 767px) {
  .company_greeting .name {
    font-size: 1.5rem
  }
}

.company_greeting .name span {
  display: block;
  font-size: 1.25rem;
  font-weight: 500
}

@media(max-width: 767px) {
  .company_greeting .name span {
    font-size: 1rem
  }
}

.company_overview {
  padding: 2.5rem 0 4.5rem
}

@media(max-width: 767px) {
  .company_overview {
    padding: 2rem 0 3rem
  }
}

dl.dl_cmn div {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch
}

dl.dl_cmn div:not(:last-child) {
  border-bottom: 1px solid #b0b0b0
}

dl.dl_cmn div dt,
dl.dl_cmn div dd {
  font-size: 1rem;
  line-height: 1.5;
  padding: 1.5rem 1.2em
}

@media(max-width: 767px) {

  dl.dl_cmn div dt,
  dl.dl_cmn div dd {
    font-size: 0.75rem;
    padding: .8rem .5em
  }
}

dl.dl_cmn div dt {
  width: 27.7777777778%;
  background-color: #f1f1f1;
  font-weight: 500;
  text-align: center
}

dl.dl_cmn div dd {
  width: 72.2222222222%;
  font-weight: 500
}

dl.dl_cmn.scan {
  max-width: 804px;
  box-shadow: 1px 2px 8px rgba(51, 51, 51, .16);
  margin-inline: auto
}

dl.dl_cmn.scan div dt {
  display: grid;
  place-items: center;
  width: 60%;
  font-size: 1.125rem
}

@media(max-width: 767px) {
  dl.dl_cmn.scan div dt {
    font-size: 0.875rem
  }
}

dl.dl_cmn.scan div dt span {
  font-size: 1rem
}

@media(max-width: 767px) {
  dl.dl_cmn.scan div dt span {
    font-size: 0.75rem
  }
}

dl.dl_cmn.scan div dd {
  width: 40%;
  font-size: 1.25rem;
  font-weight: 500;
  text-align: center;
	align-content:center
}

@media(max-width: 767px) {
  dl.dl_cmn.scan div dd {
    font-size: 0.9375rem
  }
}

dl.dl_cmn.scan div dd em {
  font-size: 1.75rem;
  line-height: 1
}

@media(max-width: 767px) {
  dl.dl_cmn.scan div dd em {
    font-size: 1.25rem
  }
}

.company_history {
  background: linear-gradient(to right, rgba(64, 206, 58, 0.15), rgba(207, 242, 62, 0.15));
  padding: 2.5rem 0 4rem
}

@media(max-width: 767px) {
  .company_history {
    padding: 2rem 0 3rem
  }
}

.company_history ul {
  max-width: 810px;
  margin-inline: auto
}

.company_history li {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: stretch;
  align-content: unset;
  padding-bottom: 2.5rem
}

@media(max-width: 767px) {
  .company_history li {
    padding-bottom: 1.5rem
  }
}

.company_history li time {
  width: 12%
}

@media(max-width: 767px) {
  .company_history li time {
    width: 30%
  }
}

.company_history li .line {
  width: 8%
}

@media(max-width: 767px) {
  .company_history li .line {
    width: 10%
  }
}

.company_history li .txt {
  width: 80%
}

@media(max-width: 767px) {
  .company_history li .txt {
    width: 70%
  }
}

.company_history li:last-child .line::before {
  content: none
}

.company_history time {
  display: grid;
  place-items: center;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.3;
	justify-items:right
}

@media(min-width: 768px)and (max-width: 1199px) {
  .company_history time {
    font-size: 1rem
  }
}

@media(max-width: 767px) {
  .company_history time {
    font-size: 0.875rem
  }
}

.company_history .line {
  position: relative
}

.company_history .line::before,
.company_history .line::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%
}

.company_history .line::before {
  width: 1px;
  height: calc(100% + 2.5rem);
  background-color: #186c21;
  translate: -50% 0
}

@media(max-width: 767px) {
  .company_history .line::before {
    height: calc(100% + 1.5rem)
  }
}

.company_history .line::after {
  width: 14px;
  height: 14px;
  border-radius: 100vmax;
  background-color: #186c21;
  translate: -50% -50%
}

@media(max-width: 767px) {
  .company_history .line::after {
    width: 10px;
    height: 10px
  }
}

.company_history p.txt01 {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5
}

@media(min-width: 768px)and (max-width: 1199px) {
  .company_history p.txt01 {
    font-size: 0.8125rem
  }
}

@media(max-width: 767px) {
  .company_history p.txt01 {
    font-size: 0.75rem
  }
}

.company_access p.txt01 {
  max-width: 900px;
  margin-inline: auto;
  margin-bottom: 2em
}

.company_access .map {
  position: relative;
  margin-inline: calc(50% - 50vw);
  padding-top: 450px;
  overflow: hidden
}

@media(max-width: 767px) {
  .company_access .map {
    padding-top: 100%
  }
}

.company_access .map iframe {
  position: absolute;
  top: -200px;
  left: 0;
  width: 100%;
  height: calc(100% + 200px + 200px);
  pointer-events: none
}

@media(max-width: 767px) {
  .company_access .map iframe {
    top: -30vw;
    height: calc(100% + 30vw + 30vw)
  }
}

.faq_list .unit:not(:last-child) {
  margin-bottom: 4.5rem
}

@media(max-width: 767px) {
  .faq_list .unit:not(:last-child) {
    margin-bottom: 3rem
  }
}

.faq_list ul li {
  border: 1px solid #01b514;
  border-radius: .5rem;
  overflow: hidden
}

.faq_list ul li:not(:last-child) {
  margin-bottom: 1.2rem
}

.faq_list ul li .q p,
.faq_list ul li .a p {
  padding-left: 4rem;
  position: relative
}

@media(max-width: 767px) {

  .faq_list ul li .q p,
  .faq_list ul li .a p {
    padding-left: 2rem
  }
}

.faq_list ul li .q p b,
.faq_list ul li .a p b {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
  /*translate: 0 -25%*/
}

@media(max-width: 767px) {

  .faq_list ul li .q p b,
  .faq_list ul li .a p b {
    font-size: 1.5rem;
    translate: 0 -12%
  }
}

.faq_list ul li .q {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  align-content: unset;
  padding: 1.5rem 3%
}

@media(max-width: 767px) {
  .faq_list ul li .q {
    padding: 1rem 2%
  }
}

.faq_list ul li .q p {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5
}

@media(max-width: 767px) {
  .faq_list ul li .q p {
    font-size: 1rem
  }
}

.faq_list ul li .q p b {
  color: #01b514
}

.faq_list ul li .q i {
  font-size: 1.875rem;
  color: #01b514;
  transition: all .7s
}

@media(max-width: 767px) {
  .faq_list ul li .q i {
    font-size: 1.125rem;
    right: .5rem
  }
}

.faq_list ul li .q.open i {
  transform: rotate(180deg);
  transition: all .7s
}

.faq_list ul li .q:hover {
  transition: all 1s
}

.faq_list ul li .q:hover p,
.faq_list ul li .q:hover i {
  transition: all 1s
}

.faq_list ul li .a {
  display: none;
  background-color: #01b514;
  padding: 1.5rem 3%
}

@media(max-width: 767px) {
  .faq_list ul li .a {
    padding: 1rem 2%
  }
}

.faq_list ul li .a p {
  font-size: 1.25rem;
  color: #fff;
  font-weight: 700;
  line-height: 2
}

@media(max-width: 767px) {
  .faq_list ul li .a p {
    font-size: 1rem
  }
}

.faq_list ul li .a p b {
  color: #fff
}

body.page.contact .home_contact,
body.page.thanks .home_contact {
  display: none
}

.contact_form {
  background-color: #f6f6f6
}

.contact_form .ttl01 {
  width: -moz-fit-content;
  width: fit-content;
  padding: 0 1em;
  margin-inline: auto;
  margin-bottom: 1em;
  position: relative
}

@media(max-width: 767px) {
  .contact_form .ttl01 {
    padding: 0 .6em
  }
}

.contact_form .ttl01::before,
.contact_form .ttl01::after {
  content: "";
  width: 3em;
  height: 1px;
  background-color: currentColor;
  position: absolute;
  top: 50%
}

@media(max-width: 767px) {

  .contact_form .ttl01::before,
  .contact_form .ttl01::after {
    width: 1.5em
  }
}

.contact_form .ttl01::before {
  right: 100%
}

.contact_form .ttl01::after {
  left: 100%
}

.contact_form .area {
  max-width: 600px;
  background-color: #fff;
  border-radius: 4px;
  padding: 1.2rem 4%;
  margin-inline: auto;
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .contact_form .area {
    padding: 1rem 3%;
    margin-bottom: 2rem
  }
}

.tbl_contact {
  width: 100%;
  max-width: 900px;
  margin: 0 auto 3rem;
  table-layout: fixed;
  border-collapse: separate
}

@media(max-width: 767px) {
  .tbl_contact {
    margin-bottom: 1rem
  }
}

.tbl_contact .col_th {
  width: 35%
}

@media(max-width: 767px) {
  .tbl_contact .col_th {
    display: none
  }
}

.tbl_contact .col_td {
  width: 65%
}

@media(max-width: 767px) {
  .tbl_contact .col_td {
    display: none
  }
}

.tbl_contact tr:not(:last-child) th,
.tbl_contact tr:not(:last-child) td {
  border-bottom: 1px solid #a3a3a3
}

@media(max-width: 767px) {
  .tbl_contact tr:not(:last-child) th {
    border-bottom: unset
  }
}

.tbl_contact th,
.tbl_contact td {
  padding: 1.2rem 0;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5
}

@media(max-width: 767px) {

  .tbl_contact th,
  .tbl_contact td {
    display: block;
    font-size: 0.875rem
  }
}

.tbl_contact th {
  text-align: left;
  position: relative
}

@media(max-width: 767px) {
  .tbl_contact th {
    padding-bottom: .4rem
  }
}

.tbl_contact .required::before,
.tbl_contact .any::before {
  border-radius: 100vmax;
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1;
  padding: .2rem .8rem;
  margin-right: 1.2rem;
  position: relative;
  top: -0.1rem
}

@media(max-width: 767px) {

  .tbl_contact .required::before,
  .tbl_contact .any::before {
    padding: .1rem .5rem;
    margin-right: .6rem
  }
}

.tbl_contact .required::before {
  content: "必須";
  background-color: #01b514;
  color: #fff
}

.tbl_contact .any::before {
  content: "任意";
  border: 1px solid currentColor;
  color: #01b514
}

.tbl_contact td input[type=text],
.tbl_contact td input[type=tel],
.tbl_contact td input[type=email],
.tbl_contact td input[type=date],
.tbl_contact td select {
  background: #fff;
  border-radius: 4px;
  padding: 6px 5px
}

.tbl_contact td input[type=text],
.tbl_contact td input[type=email] {
  width: 100%
}

.tbl_contact td input[type=tel] {
  width: 100%
}

.tbl_contact td input[type=date] {
  width: 30%
}

.tbl_contact td select {
  width: 40%
}

.tbl_contact td textarea {
  width: 100%;
  height: 190px;
  background-color: #fff;
  border-radius: 4px;
  padding: 5px
}

.tbl_contact td span.wpcf7-list-item {
  margin: 0 2em 0 0
}

.th_textarea {
  vertical-align: top
}

.th_textarea.required::before,
.th_textarea.any::before {
  top: .5rem
}

@media(max-width: 767px) {

  .th_textarea.required::before,
  .th_textarea.any::before {
    top: .3rem
  }
}

.btn_submit {
  display: table;
  margin: 0 auto;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .12em;
  position: relative
}

@media(max-width: 767px) {
  .btn_submit {
    font-size: 0.875rem
  }
}

.btn_submit::before {
  content: "";
  width: 1em;
  height: 1px;
  background-color: currentColor;
  position: absolute;
  top: 50%;
  right: 0;
  translate: 50% -50%
}

.btn_submit input[type=submit] {
  width: 280px;
  height: 56px;
  border: 1px solid currentColor;
  background-color: #fff;
  text-align: center
}

@media(max-width: 767px) {
  .btn_submit input[type=submit] {
    width: 64vw;
    height: 3rem
  }
}

.btn_submit input[type=submit]:hover {
  transition: .3s ease
}

.btn_submit input[type=submit][disabled] {
  opacity: .3
}

.btn_submit input[type=submit]:not([disabled]):hover {
  cursor: pointer;
  opacity: .8
}

.ajax-loader {
  display: none !important
}

.wpcf7-spinner {
  display: none !important
}

.thanks_first p.txt01 {
  margin-bottom: 3.5em
}

@media(max-width: 767px) {
  .thanks_first p.txt01 {
    margin-bottom: 2.5em
  }
}

.request_form .inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  align-content: unset
}

.request_form .inner .left {
  width: 46.2962962963%
}

@media(max-width: 767px) {
  .request_form .inner .left {
    width: 100%;
    margin-bottom: 2rem
  }
}

.request_form .inner .right {
  width: 46.2962962963%;
  background-color: #f6f6f6;
  padding: 1rem 3% 2.5rem
}

@media(max-width: 767px) {
  .request_form .inner .right {
    width: 100%
  }
}

.request_form .left figure {
  text-align: center;
  margin-bottom: 1rem
}

.request_form p.txt01 {
  margin-bottom: 2.5em
}

.request_form .area {
  background-color: #eafcda;
  padding: 1.5rem 4%
}

@media(max-width: 767px) {
  .request_form .area {
    padding: 1rem 4%
  }
}

.request_form .area ul li {
  font-size: 1.125rem;
  color: #01b514;
  font-weight: 500;
  line-height: 1.5;
  text-indent: -1em;
  padding-left: 1em
}

@media(max-width: 767px) {
  .request_form .area ul li {
    font-size: 0.875rem
  }
}

.request_form .area ul li:not(:last-child) {
  margin-bottom: .5em
}

.tbl_request {
  margin-bottom: 1rem
}

.tbl_request .col_th {
  display: none;
  width: 100%
}

@media(max-width: 767px) {
  .tbl_request .col_th {
    display: none
  }
}

.tbl_request .col_td {
  display: none;
  width: 100%
}

@media(max-width: 767px) {
  .tbl_request .col_td {
    display: none
  }
}

.tbl_request tr:not(:last-child) th {
  border-bottom: unset
}

.tbl_request th,
.tbl_request td {
  display: block;
  padding: 1.2rem 0;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5
}

@media(max-width: 767px) {

  .tbl_request th,
  .tbl_request td {
    display: block;
    font-size: 0.875rem
  }
}

.tbl_request th {
  padding-bottom: 0rem
}

.tbl_request td {
  padding-top: 1rem
}

.wp-pagenavi {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: unset;
  text-align: center
}

.wp-pagenavi a,
.wp-pagenavi span {
  width: 36px;
  height: 36px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: unset;
  border-radius: 100vmax;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  text-align: center;
  margin: 0 10px
}

@media(max-width: 767px) {

  .wp-pagenavi a,
  .wp-pagenavi span {
    font-size: 0.875rem
  }
}

.wp-pagenavi a:hover {
  opacity: .7
}

.wp-pagenavi span.current {
  background: #01b514;
  color: #fff
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  font-size: 0.75rem;
  color: #01b514;
  line-height: 1;
  text-align: center
}

.case_list {
  background-color: #f6f6f6
}

.case_list ul {
  margin-bottom: 5rem
}

@media(max-width: 767px) {
  .case_list ul {
    margin-bottom: 2.5rem
  }
}

.case_list ul li .txt .ttl01 {
  margin-bottom: .8em
}

.blog_single:not(:last-child) {
  margin-bottom: 5rem
}

@media(max-width: 767px) {
  .blog_single:not(:last-child) {
    margin-bottom: 2.5rem
  }
}

.blog_single .top {
  margin-bottom: 2.5rem
}

@media(max-width: 767px) {
  .blog_single .top {
    margin-bottom: 1.5rem
  }
}

.blog_single .top time {
  display: block;
  color: #01b514;
  margin-bottom: .4em
}

.blog_single .top .ttl_post {
  font-size: 2.375rem;
  font-weight: 700;
  line-height: 1.5
}

@media(min-width: 768px)and (max-width: 1199px) {
  .blog_single .top .ttl_post {
    font-size: 1.5rem
  }
}

@media(max-width: 767px) {
  .blog_single .top .ttl_post {
    font-size: 1.375rem
  }
}

.blog_single article>p:not(:last-child) {
  margin-bottom: 2.5rem
}

@media(max-width: 767px) {
  .blog_single article>p:not(:last-child) {
    margin-bottom: 1.8rem
  }
}

.blog_single h2,
.blog_single h3,
.blog_single h4,
.blog_single p,
.blog_single figcaption {
  font-family: "IBM Plex Sans JP", serif
}

.blog_single article>:is(.side_cmn, .area):not(:last-child) {
  margin-bottom: 2.5rem
}

@media(max-width: 767px) {
  .blog_single article>:is(.side_cmn, .area):not(:last-child) {
    margin-bottom: 2rem
  }
}

.blog_single h2:not(.ttl_post) {
  background-color: #186c21;
  padding: .4em .6em;
  font-size: 2rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: .8em
}

@media(min-width: 768px)and (max-width: 1199px) {
  .blog_single h2:not(.ttl_post) {
    font-size: 1.375rem
  }
}

@media(max-width: 767px) {
  .blog_single h2:not(.ttl_post) {
    font-size: 1.25rem
  }
}

.blog_single h3:not(.ttl01) {
  border-left: .2em solid #01b514;
  padding-left: .8em;
  font-size: 1.75rem;
  color: #186c21;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: .8em
}

@media(min-width: 768px)and (max-width: 1199px) {
  .blog_single h3:not(.ttl01) {
    font-size: 1.25rem
  }
}

@media(max-width: 767px) {
  .blog_single h3:not(.ttl01) {
    font-size: 1.125rem
  }
}

.blog_single h4 {
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.5;
  padding-left: 2.8em;
  position: relative;
  margin-bottom: .8em
}

@media(max-width: 767px) {
  .blog_single h4 {
    font-size: 1rem
  }
}

.blog_single h4::before {
  content: "";
  width: 1.8em;
  height: 2px;
  background-color: #01b514;
  position: absolute;
  top: 50%;
  left: 0;
  translate: 0 -50%
}

.blog_single p {
  font-size: 1rem;
  font-weight: 500;
  line-height: 2
}

@media(max-width: 767px) {
  .blog_single p {
    font-size: 0.8125rem
  }
}

.blog_single .side_cmn.same p.txt_sub {
  width: -moz-fit-content;
  width: fit-content;
  background-color: #ff0;
  padding: .3em .6em;
  margin-bottom: 1em
}

.blog_single .side_cmn.same .ttl01 {
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 1em
}

.blog_single .side_cmn.same .ttl01 span {
  font-size: 1.125rem
}

.blog_single .box01,
.blog_single .box02 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  background-color: #f2f4f4;
  border-radius: 0px 4px 4px 4px
}

.blog_single .box01 .ttl01,
.blog_single .box02 .ttl01 {
  border-radius: 0 0 2rem 0;
  padding: 1em 1.4em;
  font-size: 1.5rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5
}

@media(max-width: 767px) {

  .blog_single .box01 .ttl01,
  .blog_single .box02 .ttl01 {
    font-size: 1.125rem
  }
}

.blog_single .box01 ul,
.blog_single .box02 ul {
  padding: 2rem 4%
}

.blog_single .box01 ul li,
.blog_single .box02 ul li {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5
}

@media(max-width: 767px) {

  .blog_single .box01 ul li,
  .blog_single .box02 ul li {
    font-size: 0.875rem
  }
}

.blog_single .box01 ul li:not(:last-child),
.blog_single .box02 ul li:not(:last-child) {
  margin-bottom: .6rem
}

.blog_single .box01 ul li::before,
.blog_single .box02 ul li::before {
  content: "●";
  font-size: 0.75rem;
  color: #01b514;
  font-weight: 400;
  margin-right: 1em;
  position: relative;
  top: -0.1em
}

@media(max-width: 767px) {

  .blog_single .box01 ul li::before,
  .blog_single .box02 ul li::before {
    font-size: 0.625rem
  }
}

.blog_single .box01 ul li:not(:last-child),
.blog_single .box02 ul li:not(:last-child) {
  margin-bottom: 1em
}

.blog_single .box01 {
  background-color: #f6f6f6;
  margin-bottom: 1.2rem
}

.blog_single .box01 .ttl01 {
  background-color: rgba(51, 51, 51, .76)
}

.blog_single .box02 {
  background-color: rgba(115, 234, 13, .15);
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .blog_single .box02 {
    margin-bottom: 2rem
  }
}

.blog_single .box02 .ttl01 {
  background-color: #01b514
}

.blog_single article>figure {
  text-align: center
}

.blog_single article>figure:not(:last-child) {
  margin-bottom: 1.8rem
}

@media(max-width: 767px) {
  .blog_single article>figure:not(:last-child) {
    margin-bottom: 1rem
  }
}

.blog_single .area {
  background-color: rgba(115, 234, 13, .15);
  border-radius: 4px;
  padding: 1.8rem 3%
}

@media(max-width: 767px) {
  .blog_single .area {
    padding: 1.2rem 4%
  }
}

.blog_single .area ul li {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5
}

@media(max-width: 767px) {
  .blog_single .area ul li {
    font-size: 0.8125rem
  }
}

.blog_single .area ul li::before {
  content: "●";
  font-size: 0.75rem;
  color: #01b514;
  margin-right: 1em
}

.blog_single .area ul li:not(:last-child) {
  margin-bottom: .4em
}

.blog_single .btn_cmn {
  margin-top: 5rem
}

@media(max-width: 767px) {
  .blog_single .btn_cmn {
    margin-top: 2.5rem
  }
}

/* ブログ　リスト＆表 */
.blog_single .wp-block-list {
	background-color: #ecfbee;
    padding: 1rem 2rem;
    margin-bottom: 2rem;
    border-radius: 10px;
}

.blog_single .wp-block-list li {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5
}

.blog_single .wp-block-list li::before {
	content: "●";
    font-size: 0.75rem;
    color: #01b514;
    margin-right: 1em;
}

.blog_single .wp-block-table table {
	border: solid 1px #186c21;
    width: 100%;
}

.blog_single .wp-block-table tr {
	border-bottom: solid 1px #186c21;
}

.blog_single .wp-block-table tr:first-of-type {
	font-weight: 500;
    background-color: #186c21;
    color: #fff;
}

.blog_single .wp-block-table tr:last-of-type {
	border-bottom: none;
}

.blog_single .wp-block-table td {
	border-right: solid 1px #186c21;
	padding: 0.5rem;
}

.blog_single .wp-block-table td:last-of-type {
	border-right: none;
}

.blog_single .wp-block-table tr:first-of-type td {
	border-right: solid 1px #fff;
}

.blog_single .wp-block-table tr:first-of-type td:last-of-type {
	border-right: solid 1px #186c21;
}

@media(max-width: 767px) {
	.blog_single .wp-block-list li {
		font-size: 0.8125rem;
	}
}

.blog_related ul {
  margin-bottom: 0
}

.price_first .unit:not(:last-child) {
  margin-bottom: 4.5rem
}

@media(max-width: 767px) {
  .price_first .unit:not(:last-child) {
    margin-bottom: 2.5rem
  }
}

.price_first .unit p.txt_sub {
  line-height: 1.5;
  margin-top: .5em;
  margin-bottom: 2.5em
}

.tbl_price {
  width: 100%
}

.tbl_price col.tbl_ttl01 {
  width: 20.3703703704%
}

.tbl_price col.tbl_con01 {
  width: 29.6296296296%
}

.tbl_price col.tbl_con02 {
  width: 25%
}

.tbl_price col.tbl_con03 {
  width: 25%
}

.tbl_price col.tbl_con01u2 {
  width: 54.6296296296%
}

.tbl_price th,
.tbl_price td {
  padding: 1em 1% 1em 1em;
  line-height: 1.5;
  font-weight: 500;
  text-align: left
}

@media(max-width: 767px) {

  .tbl_price th,
  .tbl_price td {
    padding: .4em 1% .4em .4em
  }
}

.tbl_price thead th {
  background-color: #01b514;
  font-size: 1.125rem;
  color: #fff
}

@media(max-width: 767px) {
  .tbl_price thead th {
    font-size: 0.8125rem
  }
}

.tbl_price thead th:not(:last-child) {
  border-right: 1px solid #fff
}

.tbl_price tbody th,
.tbl_price tbody td {
  font-size: 1rem;
  border-bottom: 1px solid #b0b0b0
}

@media(max-width: 767px) {

  .tbl_price tbody th,
  .tbl_price tbody td {
    font-size: 0.75rem
  }
}

.tbl_price tbody th span,
.tbl_price tbody td span {
  font-size: 0.8125rem
}

@media(max-width: 767px) {

  .tbl_price tbody th span,
  .tbl_price tbody td span {
    font-size: 0.625rem
  }
}

.tbl_price tbody th em,
.tbl_price tbody td em {
  font-size: 1.75rem;
  line-height: 1
}

@media(max-width: 767px) {

  .tbl_price tbody th em,
  .tbl_price tbody td em {
    font-size: 1.125rem
  }
}

.tbl_price tbody th {
  background-color: #f1f1f1
}

/* DX宣言書「DXマーク認証対象事業者」 */
.dx_declaration_bg {
	background: url(https://test02.test10zaqrobacca.xyz/wp-content/themes/res/images/index/bg_second01.svg) top left / 100% auto repeat;
}

.dx_declaration_bg .dxd_box {
	margin: 3rem 0;
    border-radius: 10px;
    background-color: #f1ffe5;
    padding: 2.5rem 4%;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
}

.dx_declaration_bg  .dxd_sub_box {
	background-color: #fff;
    padding: 2rem;
    margin-top: 1rem;
    border-radius: 10px;
}

.dx_declaration_bg .dxd_box h2 i {
	margin-right: 1rem;
}

.dx_declaration_bg .dxd_box:last-of-type {
	margin-bottom: 3rem;
}

.dx_declaration_bg .dxd_box h2 {
	background-color: #01b514;
    color: #fff;
    font-size: 1.6rem;
	line-height: 2rem;
    padding: 1rem;
    margin-bottom: 1rem;
    width: 100%;
}

.dx_declaration_bg .dxd_box span {
	display: inline-block;
    font-weight: 600;
}

.dx_declaration_bg .dxd_box2 {
	margin: 3rem 0;
    font-weight: 600;
    text-align: right;
}

.dx_declaration_bg .dxd_box2 span {
	display: block;
}

.dx_declaration_bg .dxd_box.kt_color {
	background-color: #f1ffe5;
}

.dx_declaration_bg .dxd_box.kt_color h2 {
	background-color: #01b514;
}

/* 会社概要 */
.management_vision,
.management_policy {
	display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 20px;
	margin: 3rem 0;
}

.management_vision figure,
.management_policy figure,
.management_vision .txt,
.management_policy .txt {
	width: 50%;
}

@media(max-width: 767px) {
	.management_vision,
	.management_policy {
		flex-direction: column;
	}
	
	.management_vision figure,
	.management_policy figure,
	.management_vision .txt,
	.management_policy .txt {
		width: 100%;
	}
}

.message {
	margin: 1rem 0;
	padding: 2rem 0;
}

.message .name {
	font-size: 1.2rem;
    font-weight: 600;
    text-align: right;
    margin-top: 1rem;
}

.message .name span {
	display: block;
    line-height: 1rem;
}

.company_overview .mark dd {
	display: flex;
    justify-content: flex-start;
    align-items: center;
	flex-direction: column;
}

.company_overview .mark dd figure {
	width: 20%;
}

.company_overview .mark dd .mark_box {
	display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: nowrap;
}

@media(max-width: 767px) {
	.company_overview .mark dd .mark_box {
		flex-direction: column;
	}
}

.company_btn_box {
	display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 30px;
}

.company_btn_box .btn_cmn {
	margin: 2rem 0;
	width: calc((100% - 60px) / 3);
}

.company_btn_box .btn_cmn a {
	width: 360px;
}

@media(max-width: 767px) {
	.company_btn_box {
		flex-direction: column;
		margin-top: 2rem;
	}
	
	.company_btn_box .btn_cmn {
		margin: 0;
	}
}
.dx_declaration_bg .dxd_box {
	background-color: #e5eeff;
}
.dx_declaration_bg .dxd_box h2 {
	background-color: #004882;
}
.dx_declaration_bg .dxd_box.typeE {
	background-color: #E0F4D0;
}
.dx_declaration_bg .dxd_box.typeE h2 {
	background-color: #6FB92C;
}
.dx_declaration_bg .dxd_box.typeS {
	background-color: #FFF7E7;
}
.dx_declaration_bg .dxd_box.typeS h2 {
	background-color: #F8B72A;
}
.dx_declaration_bg .dxd_box.typeG {
	background-color: #E4F2FE;
}
.dx_declaration_bg .dxd_box.typeG h2 {
	background-color: #0D6FB8;
}
/*# sourceMappingURL=lower-style.css.map */