#pagemenu .wrap {
  padding: 180px 0 150px;
}
#pagemenu .wrap .contents .local_nav {
  max-width: 1650px;
  margin: 0 auto;
  background-color: var(--color_sub);
  border-radius: 20px;
  display: flex;
  padding: 30px 20px;
}
#pagemenu .wrap .contents .local_nav li {
  flex-grow: 1;
}
#pagemenu .wrap .contents .local_nav li a {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  grid-column-gap: 1em;
  font-size: min(1.45vw, 2rem);
  padding: 0.33em 2em;
  line-height: 1.5;
}
#pagemenu .wrap .contents .local_nav li a span span {
  white-space: nowrap;
}
#pagemenu .wrap .contents .local_nav li a .font_en {
  font-size: 1.2rem;
  color: var(--color_main);
}
#pagemenu .wrap .contents .local_nav li a::after {
  content: "";
  width: 1.33em;
  height: 1.33em;
  background: url(../img/common/arrow_circle_white_down.svg) no-repeat center center/contain;
}
#pagemenu .wrap .contents .local_nav li:not(:last-child) {
  background-image: repeating-linear-gradient(180deg, var(--color_main), var(--color_main) 3px, transparent 3px, transparent 5px);
  background-position: right top;
  background-repeat: repeat-y;
  background-size: 1px 100%;
}

.business:not(:has(+ #related)) .wrap {
  padding-bottom: 200px;
}
.business:nth-child(even) .wrap .contents .contents_inner {
  border-color: var(--color_main2);
}
.business:nth-child(even) .wrap .contents .contents_inner h2 {
  color: var(--color_main2);
}
.business:nth-child(even) .wrap .contents .contents_inner h2 .font_en {
  background-color: var(--color_main2);
}
.business:nth-child(even) .wrap .contents .contents_inner .detail h3 {
  color: var(--color_main2);
}
.business:nth-child(even) .wrap .contents .service_list li h4 {
  color: var(--color_main2);
  border-color: var(--color_main2);
}
.business:nth-child(even) .wrap .contents .btn_round {
  background-color: var(--color_main2);
}
.business .wrap .contents .contents_inner {
  border-top: 1px solid var(--color_main);
  display: grid;
  grid-template-columns: 1fr 60%;
  margin-bottom: 90px;
}
.business .wrap .contents .contents_inner h2 {
  font-size: min(3.2vw, 5.2rem);
  color: var(--color_main);
  display: grid;
  justify-items: start;
  align-content: start;
  grid-row-gap: 0.66em;
  line-height: 1.5;
}
.business .wrap .contents .contents_inner h2 .font_en {
  font-size: min(2.2vw, 3.2rem);
  color: var(--color_white);
  background-color: var(--color_main);
  padding: 0.8em 1.5em;
  border-radius: 0 0 30px 0;
  line-height: 1;
}
.business .wrap .contents .contents_inner .detail {
  padding-top: min(8vw, 120px);
}
.business .wrap .contents .contents_inner .detail h3 {
  font-size: min(2.6vw, 3.2rem);
  color: var(--color_main);
  line-height: 1.5;
  margin-bottom: 0.8em;
}
.business .wrap .contents .contents_inner .detail p {
  font-size: 1.8rem;
}
.business .wrap .contents .service_list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-column-gap: 2.5%;
}
.business .wrap .contents .service_list li {
  display: grid;
  grid-template-rows: 1fr auto;
  grid-row-gap: 1.2em;
  font-size: min(1.4vw, 2rem);
}
.business .wrap .contents .service_list li h4 {
  text-align: center;
  line-height: 1.5;
  color: var(--color_main);
  border-bottom: 1px solid var(--color_main);
  padding-bottom: 1.2em;
  height: 100%;
  display: grid;
  align-items: center;
}
.business .wrap .contents .service_list li img {
  border-radius: 20px;
}
.business .wrap .contents .service_list:has(+ .result_list) {
  margin-bottom: 90px;
  padding-bottom: 90px;
  background-image: repeating-linear-gradient(90deg, var(--color_gray2), var(--color_gray2) 3px, transparent 3px, transparent 5px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 100% 1px;
}
.business .wrap .contents .result_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-column-gap: 3%;
  padding-bottom: 40px;
}
.business .wrap .contents .result_list li {
  background-color: var(--color_sub);
  border-radius: 20px;
  font-size: min(1.4vw, 2rem);
  display: grid;
  grid-template-rows: auto 1fr auto;
  justify-items: center;
  padding: min(2.5vw, 40px) min(2.5vw, 40px) 0;
}
.business .wrap .contents .result_list li img {
  width: 4em;
}
.business .wrap .contents .result_list li h4 {
  font-size: min(1.95vw, 3.2rem);
  line-height: 1.1;
  color: var(--color_main);
  text-align: center;
  margin: 0.33em 0 -0.5em;
}
.business .wrap .contents .result_list li h4 .font_en {
  font-size: 3.3em;
  margin: 0 0.1em;
}
.business .wrap .contents .result_list li h4 .note {
  display: block;
  font-size: min(1.5vw, 1.5rem);
  line-height: 1.5;
}
.business .wrap .contents .result_list li h4 .note strong {
  font: inherit;
  font-size: 1.2em;
}
.business .wrap .contents .result_list li p {
  color: var(--color_white);
  background-color: var(--color_main);
  min-width: 90%;
  padding: 0 1em;
  height: 5em;
  border-radius: 2.5em;
  line-height: 1.5;
  text-align: center;
  display: grid;
  align-items: center;
  justify-content: center;
  transform: translateY(50%);
  position: relative;
}
.business .wrap .contents .result_list li p::before {
  content: "";
  display: block;
  width: 1.1em;
  height: 0.9em;
  background-color: var(--color_main);
  -webkit-clip-path: polygon(50% 0, 100% 100%, 0 100%);
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
  position: absolute;
  left: 50%;
  top: -0.8em;
}
.business .wrap .contents .btn_round {
  margin: 90px auto 0;
}
.business .wrap .contents > h4 {
  font-size: 2.4rem;
  color: var(--color_main2);
  line-height: 1.5;
  margin-bottom: 1.5em;
}
.business .wrap .contents .contents_inner2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-column-gap: 3%;
}
.business .wrap .contents .contents_inner2 .map img {
  display: block;
  border-radius: 20px;
  border: 1px solid var(--color_gray2);
}
.business .wrap .contents .contents_inner2 .case_list {
  display: grid;
  font-size: min(1.5vw, 1.8rem);
  grid-row-gap: 3em;
}
.business .wrap .contents .contents_inner2 .case_list li {
  display: grid;
  grid-template-columns: 25% 1fr;
  grid-column-gap: 2%;
}
.business .wrap .contents .contents_inner2 .case_list li img {
  border-radius: 15px;
}
.business .wrap .contents .contents_inner2 .case_list li h5 {
  font-size: 1.2rem;
  color: var(--color_main2);
  margin-bottom: 1em;
}
.business .wrap .contents .contents_inner2 .case_list li p {
  line-height: 1.5;
}
.business .wrap .contents .contents_inner2 .case_list li p span {
  color: var(--color_main2);
}
@media (hover: hover) {
  #pagemenu .wrap .contents .local_nav li a:hover {
    color: var(--color_main);
  }
  #pagemenu .wrap .contents .local_nav li a:hover::after {
    background: url(../img/common/arrow_circle_green_down.svg) no-repeat center center/contain;
  }
  .business .wrap .contents .btn_round:hover {
    background-color: var(--color_main);
  }
}
@media screen and (max-width: 1024px) {
  #pagemenu .wrap {
    padding: 120px 0 100px;
  }
  #pagemenu .wrap .contents .local_nav {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-row-gap: 10px;
    padding: 20px;
  }
  #pagemenu .wrap .contents .local_nav li a {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    grid-column-gap: 1em;
    font-size: min(1.85vw, 2rem);
    padding: 0.33em 1.5em;
    line-height: 1.5;
  }
  #pagemenu .wrap .contents .local_nav li:nth-child(2) {
    background: none;
  }
  .business:not(:has(+ #related)) .wrap {
    padding-bottom: 150px;
  }
  .business .wrap .contents .contents_inner {
    margin-bottom: 60px;
  }
  .business .wrap .contents .contents_inner .detail p {
    font-size: 1.6rem;
  }
  .business .wrap .contents .service_list li {
    font-size: min(1.6vw, 2rem);
  }
  .business .wrap .contents .service_list li h4 {
    margin-left: -1em;
    margin-right: -1em;
  }
  .business .wrap .contents .service_list li img {
    border-radius: 15px;
  }
  .business .wrap .contents .btn_round {
    margin: 60px auto 0;
  }
  .business .wrap .contents > h4 {
    font-size: min(2.4vw, 2.4rem);
  }
}
@media screen and (max-width: 768px) {
  #pagemenu .wrap {
    padding: 80px 0 90px;
  }
  #pagemenu .wrap .contents .local_nav {
    grid-template-columns: 1fr;
    grid-row-gap: 0;
    border-radius: 10px;
  }
  #pagemenu .wrap .contents .local_nav li {
    flex-grow: 1;
  }
  #pagemenu .wrap .contents .local_nav li a {
    font-size: min(3.7vw, 1.5rem);
    padding: 1em 0;
  }
  #pagemenu .wrap .contents .local_nav li a::after {
    width: 1.66em;
    height: 1.66em;
  }
  #pagemenu .wrap .contents .local_nav li:not(:last-child) {
    background-image: repeating-linear-gradient(90deg, var(--color_main), var(--color_main) 3px, transparent 3px, transparent 6px);
    background-position: left bottom;
    background-repeat: repeat-x;
    background-size: 100% 1px;
  }
  .business:not(:has(+ #related)) .wrap {
    padding-bottom: 90px;
  }
  .business .wrap .contents .contents_inner {
    grid-template-columns: 1fr;
    margin-bottom: 60px;
  }
  .business .wrap .contents .contents_inner h2 {
    font-size: 2.8rem;
    grid-row-gap: 1em;
  }
  .business .wrap .contents .contents_inner h2 .font_en {
    font-size: 1.8rem;
    padding: 1em 1.5em;
    border-radius: 0 0 15px 0;
  }
  .business .wrap .contents .contents_inner .detail {
    padding-top: 50px;
  }
  .business .wrap .contents .contents_inner .detail h3 {
    font-size: min(6.2vw, 2.4rem);
  }
  .business .wrap .contents .service_list {
    grid-template-columns: 1fr;
    grid-row-gap: 40px;
  }
  .business .wrap .contents .service_list li {
    display: grid;
    grid-template-rows: 1fr auto;
    grid-row-gap: 1.2em;
    font-size: 1.8rem;
  }
  .business .wrap .contents .service_list li h4 {
    height: auto;
    margin: 0 0 0.33em;
    padding-bottom: 0.75em;
  }
  .business .wrap .contents .service_list li img {
    border-radius: 10px;
  }
  .business .wrap .contents .service_list:has(+ .result_list) {
    background: none;
    margin: 0 0 60px;
    padding: 0;
  }
  .business .wrap .contents .result_list {
    grid-template-columns: 1fr;
    grid-row-gap: 70px;
  }
  .business .wrap .contents .result_list li {
    font-size: min(4vw, 1.6rem);
    padding: 30px 30px 0;
  }
  .business .wrap .contents .result_list li img {
    width: 4em;
  }
  .business .wrap .contents .result_list li h4 {
    font-size: 2.8rem;
  }
  .business .wrap .contents .result_list li h4 .font_en {
    font-size: 2.4em;
  }
  .business .wrap .contents .result_list li h4 .note {
    font-size: 1.4rem;
  }
  .business .wrap .contents .result_list li p {
    min-width: 100%;
  }
  .business .wrap .contents .result_list li:last-child h4 .note {
    font-size: 1.2rem;
    margin: 0 -10px;
  }
  .business .wrap .contents .btn_round {
    font-size: 1.8rem;
    line-height: 1.5;
    padding: 1em 1.75em;
    grid-row-gap: 0.33em;
  }
  .business .wrap .contents .btn_round .font_en {
    font-size: 1.2rem;
  }
  .business .wrap .contents .btn_round img {
    width: 90%;
    align-self: center;
  }
  .business .wrap .contents > h4 {
    font-size: 1.8rem;
  }
  .business .wrap .contents .contents_inner2 {
    grid-template-columns: 1fr;
    grid-row-gap: 40px;
  }
  .business .wrap .contents .contents_inner2 .map img {
    border-radius: 10px;
  }
  .business .wrap .contents .contents_inner2 .case_list {
    font-size: 1.6rem;
    grid-row-gap: 40px;
  }
  .business .wrap .contents .contents_inner2 .case_list li {
    grid-template-columns: 1fr;
    grid-row-gap: 20px;
  }
  .business .wrap .contents .contents_inner2 .case_list li img {
    border-radius: 10px;
  }
  .business .wrap .contents .contents_inner2 .case_list li p br {
    display: none;
  }
  .business .wrap .contents .contents_inner2 .case_list li p .inline {
    display: inline !important;
  }
}