/* common */
#cboxOverlay {
  background-color: #000;
}

/* intro */
.intro {
  padding: 26px 0 23px;
}
.intro-txt {
  text-align: center;
  font-weight: bold;
  font-size: 18px;
  line-height: 1.69;
}
.intro-txt-em {
  color: #009950;
  font-size: 20px;
}

/* figure */
.figure_ttl {
  font-size: 26px;
  font-weight: bold;
  color: #429657;
  text-align: center;
  border-top: 1px solid #0ca456;
  padding: 5px 0;
}
.btn-area {
  background-size: contain;
  background-repeat: repeat-x;
  padding: 22px 0 13px;
  background: linear-gradient(180deg, rgba(0, 179, 75, 1) 0%, rgba(0, 152, 79, 1) 50%, rgba(0, 152, 79, 1) 100%);
}
.btn-area_inner {
  max-width: 1011px;
}
.btn-list_img {
  margin-bottom: 10px;
}
.btn-list_item {
  width: 9.6933729%;
  text-align: center;
}
.btn-list_link {
  display: block;
}
.btn-list_txt {
  justify-content: center;
  width: 150%;
  position: relative;
  left: -25%;
  display: block;
  line-height: 1.35;
}
.btn-list_txt::after {
  content: '';
  width: 0.27777778em;
  background-image: url(/healthcare/images/product/btn-list_arrow.svg);
  background-size: contain;
  background-repeat: no-repeat;
  position: relative;
  display: inline-block;
  height: 0.5em;
  font-size: 18px;
  margin-left: 0.61111111em;
  top: -0.1em;
}
.btn-list_txt-main {
  color: #fff;
  font-size: 18px;
}
.btn-list_txt-main-narrow {
  transform: scale(0.75, 1);
  display: inline-block;
  white-space: nowrap;
  position: relative;
  width: 150%;
  left: -25%;
}
.figure-region {
  padding: 45px 0 70px;
  background-image: url(/healthcare/images/product/figure-region_bg.jpg);
}
.figure-region_ttl {
  font-size: 32px;
  font-weight: bold;
  background-color: #fff;
  display: inline-block;
  border: 1px solid #009950;
  padding: 0.1em 0.9em;
  position: relative;
  z-index: 1;
  margin-bottom: 18px;
}
.figure-region_ttl::after {
  position: absolute;
  content: '';
  width: 98.5%;
  height: 97%;
  display: block;
  border-right: 4px solid #009950;
  border-bottom: 4px solid #009950;
  right: -9px;
  bottom: -11px;
  z-index: -1;
}
.figure-region_img {
  display: block;
  margin: 0 auto;
}
.figure-region_img-pop-up {
  position: absolute;
  width: 250px;
  min-height: 60px;
  display: none;
}
.figure-region_img-pop-up,
.figure-region_img-pop-up,
.figure-region_img-pop-up {
  background: #009950;
  box-shadow: 1px 4px 0 0px rgb(0 0 0 / 15%);
  border-radius: 20px;
  border: 3px solid #fff;
  z-index: 2;
}
.figure-region_img-pop-up-txt {
  position: relative;
  z-index: 3;
  padding: 26px 20px 26px 26px;
  box-sizing: border-box;
  font-size: 15px;
  line-height: 1.46666667;
  color: #fff;
}
.figure-region_img-pop-up:nth-of-type(1) {
  top: -8.5%;
  left: 19%;
}
.figure-region_img-pop-up:nth-of-type(2) {
  top: -7.5%;
  right: 20%;
}
.figure-region_img-pop-up:nth-of-type(3) {
  top: 11%;
  right: 0;
}
.figure-region_img-pop-up:nth-of-type(4) {
  top: 35%;
  right: -7%;
}
.figure-region_img-pop-up:nth-of-type(5) {
  bottom: 5.5%;
  right: -1.5%;
}
.figure-region_img-pop-up:nth-of-type(6) {
  bottom: -11.5%;
  right: 36.5%;
}
.figure-region_img-pop-up:nth-of-type(7) {
  bottom: 5.5%;
  left: -4.5%;
}
.figure-region_img-pop-up:nth-of-type(8) {
  bottom: 52%;
  left: -7%;
}
.figure-region_img-pop-up:nth-of-type(9) {
  top: 8%;
  left: -2%;
}
.figure-region_img-area:hover + .figure-region_img-pop-up {
  display: block;
}
.figure-region_img-area {
  cursor: inherit;
}
.figure-region_img-wrap {
  position: relative;
}

/* service-category */
.service-category {
  padding: 72px 0 62px;
}
.service-category-item {
  width: 31.69144981%;
  border: 1px solid #d6d8d7;
  flex-direction: column;
}
.service-category_inner {
  max-width: 1076px;
}
.service-category-item_ttl {
  font-size: 24px;
  line-height: 1;
  text-align: center;
  font-weight: bold;
  background-color: #bde8a9;
  color: #135122;
  padding: 0.5em 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.service-category-item_ttl-small {
  font-size: 22px;
  transform: scale(0.85, 1);
  display: inline-block;
  white-space: nowrap;
  position: relative;
  margin-left: -1.4em;
}
.service-category-item_content {
  padding: 16px 30px 21px;
  flex-direction: column;
  flex: 1 auto;
}
.service-category-item:nth-of-type(n + 4) {
  margin-top: 43px;
}
.service-category-item_txt {
  font-size: 18px;
  line-height: 1.5;
  width: 100%;
}
.service-category-item_txt-em {
  font-weight: bold;
  text-decoration: underline;
}
.service-category-item_dl {
  min-height: 123px;
  margin-top: 20px;
}
.service-category-item_dt {
  font-size: 18px;
  font-weight: bold;
  padding: 0.1em 0.7em;
  border-top: 1px solid;
  border-bottom: 1px solid;
  margin-bottom: 0.6em;
}
.service-category-item_dd {
  font-size: 18px;
  line-height: 1.55;
}
.service-category-item_link {
  color: #000;
  text-decoration: underline;
}
.service-category-item_link:hover {
  color: #000;
  opacity: 1;
}
.service-category-item_icon {
  width: auto;
  height: 1.91666667em;
  display: inline-block;
  margin-right: 0.75em;
}

/* service-info */
.service-info-btn-link {
  cursor: pointer;
}
.service-info {
  display: none;
}
.service-info-list-item {
  padding: 30px 0 80px;
  position: relative;
	list-style: none;
}
.service-info_img-wrap {
  padding: 0 105px;
  position: relative;
}
.service-info_img-wrap.group::before {
  content: '';
  height: calc(100% - 15px);
  width: 4.7%;
  background-color: #e1e2e0;
  position: absolute;
  display: block;
  left: 0;
  top: 0;
  border-radius: 5px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  background-size: cover;
  background-position: right;
}
.service-info_img-wrap.group::after {
  content: '';
  height: calc(100% - 15px);
  width: 4.7%;
  background-color: #e1e2e0;
  position: absolute;
  display: block;
  right: 0;
  top: 0;
  border-radius: 5px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  background-size: cover;
  background-position: left;
}
.service-info_ttl {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  color: #135122;
  background-color: #a7d890;
  justify-content: center;
  align-items: center;
  padding: 0.25em 0;
  margin: 0 27px 22px;
}
.service-info_ttl-icon {
  height: 2.2em;
  margin-right: 0.7em;
}
.service-info-content {
  position: relative;
}
.service-info-content_ttl-area {
  margin-bottom: 10px;
  padding: 0 105px;
}
.service-info-content_ttl {
  font-size: 20px;
  color: #275d2e;
  font-weight: bold;
}
.service-info-content_ttl-tag-list {
  align-self: flex-end;
  gap: 0.4em;
}
.service-info-content_ttl-tag {
  font-size: 14px;
  background-color: #135122;
  border-radius: 0.3333333333em;
  padding: 0.1em 0.7em;
  color: #fff;
  margin-left: auto;
}
.service-info_img {
  max-width: 100%;
  margin-bottom: 15px;
  height: auto;
}
.service-info_txt {
  font-size: 16px;
  margin-bottom: 0 !important;
  line-height: 1.6875;
  padding: 0 105px;
}
.service-info_document-btn-list {
  justify-content: center;
  margin-top: 55px;
  width: 558px;
  margin: 55px auto 0;
}
.service-info_document-btn-list-item + .service-info_document-btn-list-item {
  margin-left: 2.5em;
}
.service-info_document-btn-list-item:nth-of-type(odd) {
  margin-left: 0;
}
.service-info_document-btn {
  font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-size: 20px;
  background-color: #fff;
  color: #3a614f;
  border: 1px solid #3e8b40;
  width: auto;
  display: inline-block;
  padding: 0.5em 0;
  width: 259px;
}
.service-info_document-btn--product {
  background-color: #3a614f !important;
  color: #fff !important;
}
.service-info_document-btn--product::before {
  border-color: #fff !important;
}
.service-info_document-btn--width-auto {
  width: auto !important;
  padding-left: 2.5em !important;
  padding-right: 2.5em !important;
}

.service-info_document-btn::before {
  border-color: #3a614f;
}
.service-info_document-btn:hover {
  color: #3a614f;
}
.service-info_close-btn {
  background-image: url(/healthcare/images/product/service-info_close-btn.svg);
  width: 49px;
  height: 49px;
  display: block;
  position: absolute;
  background-size: cover;
  background-repeat: no-repeat;
  right: 1.5%;
  bottom: 1%;
}
.service-info_arrow-next,
.service-info_arrow-prev {
  top: 0;
  width: 10.5%;
  height: calc(100% - 15px);
  position: absolute;
  bottom: inherit;
  cursor: pointer;
  background-size: 14px;
  background-repeat: no-repeat;
}
.service-info_arrow-next {
  right: 0;
  left: inherit;
  background-image: url(/healthcare/images/product/service-info_arrow-next.svg);
  background-position: left 20% center;
}
.service-info_arrow-prev {
  left: 0;
  right: inherit;
  background-image: url(/healthcare/images/product/service-info_arrow-prev.svg);
  background-position: right 20% center;
}
.service-info_arrow-next,
.service-info_arrow-prev {
  display: none;
}
.service-info_img-wrap.group .service-info_arrow-next,
.service-info_img-wrap.group .service-info_arrow-prev {
  display: block;
  z-index: 2;
}

/* bottom-banner-list */
.bottom-banner-list_wrap {
  background-color: #f0f0f0;
  padding: 40px 0;
  margin-top: 65px;
}
.bottom-banner-list_ttl {
  text-align: center;
  font-weight: bold;
  font-size: 24px;
  margin-bottom: 1em;
}
.bottom-banner-list {
  gap: 10px 0.49566295%;
  justify-content: flex-start;
}
.bottom-banner-list_inner {
  max-width: 1076px;
}
.bottom-banner-item {
  width: 24.62825279%;
}


@media screen and (min-width: 767px) and (max-width: 1076px) {
  .service-category_inner {
    width: 95%;
  }
  .service-category-item_ttl {
    font-size: 2.13283442vw;
  }
  .service-category-item_ttl-small {
    font-size: 1.95509822vw;
  }
  .bottom-banner-list_inner {
    width: 95%;
  }
}

@media screen and (min-width: 767px) and (max-width: 1011px) {
  .btn-area_inner {
    width: 95%;
  }
  .btn-list_txt-main {
    font-size: 1.69139466vw;
  }
  .btn-list_txt::after {
    font-size: 1.69139466vw;
  }
}

@media screen and (min-width: 767px) and (max-width: 1000px) {
  .inner {
    width: 95%;
  }
  .intro-txt {
    font-size: 1.9vw;
  }
  .intro-txt-em {
    font-size: 1.71vw;
  }
}

/* sp */
@media screen and (max-width: 767px) {
  /* intro */
  .intro {
    padding: 8vw 0;
  }
  .intro-txt {
    font-size: 3.73333333vw;
    line-height: 1.57;
  }
  .intro-txt-em {
    font-size: 4vw;
  }

  /* figure */
  .figure_ttl {
    font-size: 4.53333333vw;
    padding: 4.5vw 0;
  }
  .btn-list {
    display: grid;
    grid-template-columns: repeat(3, 21.5vw);
    justify-content: space-between;
  }
  .btn-list_item {
    width: 100%;
  }
  .btn-list_item:nth-of-type(n + 4) {
    margin-top: 2.5vw;
  }
  .btn-area {
    padding: 7vw 7.5vw 7vw;
  }
  .btn-list_txt {
    line-height: 1.28;
  }
  .btn-list_txt::after {
    content: none;
  }
  .btn-list_img {
    margin-bottom: 0;
  }
  .btn-list_txt-main {
    font-size: 3.83733333vw;
  }
  .figure-region_ttl {
    font-size: 4.26666667vw;
    margin-bottom: 7.5vw;
  }
  .figure-region_ttl::after {
    right: -1.06666667vw;
    bottom: -1.33333333vw;
    border-width: 0.53333333vw;
  }
  .figure-region {
    padding: 9.5vw 3.5vw 14.5vw;
    text-align: center;
    background-size: 26.66666667vw;
  }
  #colorbox.figure-region_img-modal #cboxContent {
    background: transparent;
  }
  .figure-region_img-txt {
    font-size: 3.6vw;
    margin-top: 6.5vw;
  }
  .service-category_list {
    flex-direction: column;
  }
  .service-category-item {
    width: 100%;
  }
  .service-category {
    padding: 12vw 4.5vw;
  }
  .service-category-item + .service-category-item {
    margin-top: 9vw;
  }
  .service-category-item_ttl {
    font-size: 5.33333333vw;
    padding: 0.1em 0;
  }
  .service-category-item_icon {
    height: 11.75vw;
    margin-right: 1em;
  }
  .service-category-item_content {
    flex: auto;
    padding: 4vw 8vw 8vw;
  }
  .service-category-item_txt {
    font-size: 3.73333333vw;
    line-height: 1.92857143;
  }
  .service-category-item_dt {
    font-size: 4.26666667vw;
    padding: 0.2em 0;
    margin-bottom: 0.7em;
  }
  .service-category-item_dd {
    font-size: 4vw;
  }
  .service-category-item_dl {
    margin-top: 5vw;
    min-height: 24vw;
  }
  .service-category-item_ttl-small {
    font-size: 4.8vw;
  }

  /* service-info */
  .service-info_ttl {
    font-size: 5.352vw;
    padding: 0.2em 0;
    margin: 0 0 3vw;
  }
  .service-info-list-item {
    padding: 0 0 10vw;
  }
  .service-info-content_ttl-area {
    flex-direction: column-reverse;
    padding: 0 4vw;
    align-items: center;
    margin-bottom: 1vw;
  }
  .service-info-content_ttl-tag {
    font-size: 4vw;
  }
  .service-info-content_ttl-tag-list {
    margin-bottom: 2.2vw;
    gap: 2vw;
  }
  .service-info-content_ttl {
    font-size: 4.8vw;
  }
  .service-info_img-wrap {
    padding: 0 5vw;
  }
  .service-info_img-wrap.group::before,
  .service-info_img-wrap.group::after {
    content: none;
  }
  .service-info_arrow-next,
  .service-info_arrow-prev {
    width: 5vw;
    top: 0;
    background-size: 2vw;
    height: calc(100% - 3vw);
    transform: none;
    background-position: center;
  }
  .service-info_arrow-next {
    right: 0;
  }
  .service-info_arrow-prev {
    left: 0;
  }
  .service-info_txt {
    padding: 0 5vw;
    font-size: 3.46666667vw;
    line-height: 1.80769231;
  }
  .service-info_img {
    margin-bottom: 3vw;
  }
  .service-info_document-btn-list {
    margin-top: 12vw;
    flex-direction: column;
    align-items: center;
    width: 100%;
  }
  .service-info_document-btn {
    width: 62vw;
    font-size: 4.76266667vw;
    padding: 0.5em 0;
  }
  .service-info_document-btn-list-item + .service-info_document-btn-list-item {
    margin-left: 0;
    margin-top: 3vw;
  }
  .service-info_close-btn {
    width: 6vw;
    height: 6vw;
    right: 3vw;
    bottom: 2.5vw;
  }

  /* bottom-btn-list */
  .bottom-btn-list {
    padding: 0 4.5vw;
  }

  /* bottom-banner-list */
  .bottom-banner-list_wrap {
    margin-top: 10vw;
    padding: 7vw 0;
  }
  .bottom-banner-list_ttl {
    font-size: 5.5vw;
    margin-bottom: 1em;
  }
  .bottom-banner-list_inner {
    flex-wrap: wrap;
  }
  .bottom-banner-list {
    padding: 0 4.5vw;
    gap: 3vw 0;
  }
  .bottom-banner-item {
    width: 100%;
  }
}




/* renewal */
#headline .headline_ttl span {
	display: inline-block;
	color: #0b7631;
	font-size: 60%;
	margin-bottom: .5em;
	padding: .3em 1em;
	background-color: #fff;
	border-radius: 40px;
}
.product_intro {
	padding: 6rem 0;
	border-bottom: 1px solid #07a33e;
}
.product_intro .intro_txt {
	font-size: 2rem;
	font-weight: 600;
	text-align: center;
	line-height: 1.8;
}
.product_intro .intro_txt strong {
	font-size: 105%;
	color: #2caa58;
}
.product_ttl {
	font-size: 3rem;
	font-weight: 600;
	text-align: center;
	margin: .8em 0;
}
.product_ttl span {
	display: inline-block;
	position: relative;
	padding: 0 0 0 5rem;
}
.product_ttl span span {
	padding: 0 5rem 0 0;
}
.product_ttl span::before,
.product_ttl span::after,
.product_ttl span span::before,
.product_ttl span span::after {
	content: '';
	width: 2.6rem;
	height: .8rem;
	background-color: #07a33e;
	position: absolute;
	top: calc(50% - 0.2rem);
	left: 0;
}
.product_ttl span span::before,
.product_ttl span span::after {
	left: auto;
	right: 0;
}
.product_ttl span::before,
.product_ttl span span::before {
	background-color: #fb505d;
	transform: rotate(90deg);
}
.figure-region {
	background: #d8e6da;
}
.figure-region_inner {
	max-width: 1000px;
}
.btn-area {
	background: linear-gradient(180deg, #3faa6d 0%, #2ba174 50%, #16977c 100%);
}
.service-category-item {
	border-radius: 30px;
	border-top-right-radius: 0;
	overflow: hidden;
}
.service-category-item_ttl {
	width: 100%;
	color: #fff;
	background-color: #1e9b79;
}
.service-category-item_dl {
	width: 100%;
}
.service-category-item_dt {
	padding: .3em 1em;
	background-color: #f0f4f2;
	border: none;
}
.service-info_ttl {
	color: #fff;
	background-color: #1e9b79;
	border-top-left-radius: 20px;
}
.service-category .service-info-btn-link {
	padding-left: 1em;
	position: relative;
}
.service-category .service-info-btn-link::before {
	content: '・';
	position: absolute;
	left: .3em;
}
.btn_other_area {
	text-align: center;
}
.btn_other {
	display: inline-block;
	font-size: 1.8rem;
	font-weight: 600;
	text-align: center;
	padding: .8em 3.5em .8em 1.5em;
	background: #eff4f0 url(/common/img/icon_arrow_cgr01.png) no-repeat center right 1em / 1.5em;
	border: 2px solid #07a33e;
	border-radius: 40px;
}
.btn_other:hover {
	color: #fff;
	background-color: #07a33e;
	opacity: 1;
}
.service_area {
	margin-top: 8rem;
	padding: 6rem 0;
	background-color: #f4f5f4;
}
.service_area .service_list {
	margin-top: 4rem;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.service_area .service_list li {
	width: 32%;
	margin-bottom: 2%;
}
.service_area .service_list a:hover {
	opacity: .7;
}
.service-info_document-btn {
	font-size: 1.8rem;
	font-weight: 600;
	text-align: center;
	padding: .8em 3.5em .8em 1.5em;
	background: #1e9b79 url(/common/img/icon_arrow_cwr01.png) no-repeat center right 1em / 1.5em;
	color: #fff !important;
	background-color: #1e9b79 !important;
	border: 2px solid #1e9b79;
	border-radius: 40px;
}
.service-info_document-btn--product {
	background-image: url(/common/img/icon_arrow_cgr01.png);
	color: #000 !important;
	background-color: #eff4f0 !important;
	border-color: #07a33e;
}
.service-info_document-btn::before {
	content: none;
}
.service-info_document-btn--product:hover {
	color: #fff !important;
	background-color: #07a33e !important;
	opacity: 1;
}
.bnn_area {
	margin: 6rem 0 8rem;
}
.bnn_area .bnn_list {
	display: flex;
	justify-content: space-between;
}
.bnn_area .bnn_list li {
	width: 23%;
}
.bnn_area .bnn_list a:hover {
	opacity: .7;
}
@media screen and (min-width:768px) and (max-width:1240px) {
	.figure-region_ttl { font-size: 2.5vw; }
	.product_intro .intro_txt { font-size: 1.6vw; }
	.product_ttl { font-size: 2.4vw; }
	.btn_other { font-size: 1.4vw; }
}
@media screen and (max-width:767px) {
	.product_intro {
		padding: 3rem 0 2rem;
	}
	.product_intro .intro_txt {
		font-size: 3.7vw;
		text-align: left;
	}
	.product_ttl {
		font-size: 5vw;
	}
	.product_ttl span {
		padding: 0 0 0 8vw;
	}
	.product_ttl span span {
		padding: 0 8vw 0 0;
	}
	.product_ttl span::before,
	.product_ttl span::after,
	.product_ttl span span::before,
	.product_ttl span span::after {
		width: 4.2vw;
		height: 1.2vw;
		top: calc(50% - 1.2vw);
	}
	.service-category-item {
		border-radius: 15px;
		border-top-right-radius: 0;
	}
	.btn_other {
		font-size: 3.7vw;
	}
	.service_area {
		margin-top: 4rem;
		padding: 2rem 0 3rem;
	}
	.service_area .service_list {
		margin-top: 2rem;
		display: block;
	}
	.service_area .service_list li {
		width: 100%;
		margin-bottom: 5%;
	}
	.service_area .service_list a:hover {
		opacity: 1;
	}
	.service-info_ttl {
		border-top-left-radius: 0;
	}
	.service-info_ttl-icon {
		width: auto;
		display: block;
	}
	.bnn_area {
		margin: 3rem 0 4rem;
	}
	.bnn_area .bnn_list {
		flex-wrap: wrap;
	}
	.bnn_area .bnn_list li {
		width: 48.5%;
		margin-top: 3%;
	}
	.bnn_area .bnn_list a:hover {
		opacity: 1;
	}
}