@charset "utf-8";
/* トップ
-------------------------------------------------------------------*/
:root :is(section, .section) {
  position: relative;
  z-index: 10;
}
.home .home-ttl_box {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  font-size: 1.5rem;
  font-weight: 500;
  margin-bottom: 1.75em;
}
.home #cta .home-ttl_box {
  margin-bottom: 1.5em;
}
.home .home-ttl_box.text-left {
  align-items: flex-start;
}
.home .home-ttl_box .home-ttl_lead {
  font-size: 4.16666666667em;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 0.8;
}
.home #mv {
  padding-bottom: 3.125em;
  background: var(--key);
  background: linear-gradient(0deg, var(--key) 48%, #fff 48%);
}
.home #mv .mv-slide_wrap .slick-list {
  overflow-y: visible;
  overflow-x: clip;
}
.home #mv .mv-slide_wrap .mv-slide_item{
    margin-inline: calc(1.625em / 2);
}
.home #mv .mv-slide_wrap .mv-slide_item a{
  display:block;
}
.home #mv .mv-slide_wrap .mv-slide_item picture {
  width: min(80vw, 1200px);
  overflow: clip;
   border-radius: 1.25em;
  filter: drop-shadow(0 0 20px rgba(0, 15, 29, 0.1));
  display:block;
}
.home #mv .mv-nav-wrapper {
  gap: 1.25em;
  margin-top: 2.25em;
}
.home #mv .mv-nav-wrapper .nav-btn {
  color: #fff;
}
.home #mv .mv-nav-wrapper .nav-btn:is(:focus-visible) {
  outline-color: #fff;
}
.home #mv .mv-nav-wrapper .nav-counter {
  color: #fff;
}
.home #mv .slick-dots{
  display:flex;
  justify-content:center;
  align-items:stretch;
  gap:0.75em;
  margin-top: -1.5em;
  padding-top: 1.5em;
}
.home #mv .slick-dots li{
  list-style:none;
}
.home #mv .slick-dots button{
  line-height:0;
  font-size:0;
  width:0.875rem;
  aspect-ratio:1 / 1;
  border-radius:50%;
  border:1px solid #fff;
  background:var(--key);
  display: block;
}
.home #mv .slick-dots .slick-active button{
  background:#fff;
}



.home #lead {
  background: var(--key);
  padding-block: 1.125em 17.375em;
  color: #fff;
}
.home #lead .lead-wrap {
  display: flex;
  gap: 1.5em;
}
.home #lead .lead-wrap .lead-ttl {
  font-size: 3.25rem;
  font-weight: 500;
  line-height: 1.3;
  flex: 1;
  white-space: nowrap;
}
.home #lead .lead-wrap .lead-text_box {
  margin-right: 4em;
}
.home #lead .lead-wrap .lead-text_box p {
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 2.2;
}
.home #lead .lead-scroll_wrap {
  position: absolute;
  z-index: -10;
  inset: auto 0 0.67379679144em;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.25em;
  font-size: 11.6875rem;
  font-weight: 600;
  text-transform: uppercase;
  line-height: 0.8;
  white-space: nowrap;
  opacity: 0.11;
  animation: marquee-scroll 80s linear infinite;
}
.home #products {
  background: #fff;
  border-radius: 6.25em 0 0 0;
  margin-top: -11.25em;
  padding-block: 5.625em;
}
.home #products .lead-illustrat {
  position: absolute;
  z-index: 50;
  bottom: 78.75%;
  right: 0;
  width: min(823px, 42.87vw);
  pointer-events: none;
  right: -10%;
}
.home #products .products-flex_box {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 2em;
  max-width: 1200px;
  margin: 0 auto;
}
.home #products .products-flex_item {
  width: 48%;
}
.home #products .products-flex_item a {
  --item_color: #f48277;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: 0.5em;
  background: var(--item_color);
  border-radius: 1.875em;
  padding: 2.5em 1.875em;
  overflow: hidden;
  position: relative;
  text-align: left;
}
.home #products .products-flex_item.item-hospital a {
  --item_color: var(--sub02);
}
/* .home #products .products-flex_item.item-individual a {
  --item_color: var(--sub03);
} */
.home #products .products-flex_item>* {
  width: 100%;
}
.home #products .products-flex_item .products-flex_ttl {
  position: relative;
  text-underline-offset: 10px;
}
.home #products .products-flex_item .products-flex_ttl h3 {
  font-size: min(2vw, 2rem);
  font-weight: bold;
  line-height: 1.2;
  color: #fff;
  margin-bottom: 0.8125em;
  position: relative;
  transition: var(--hover);
  width: 100%;
}
.home #products .products-flex_item .products-flex_ttl:has(h3)::before,
.home #products .products-flex_item .products-flex_ttl:has(h3)::after {
  --bg_color: #fff;
  --arrow_color: var(--item_color);
  top: 1.875em;
  right: 1em;
  translate: 0 -50%;
  font-size: min(2vw, 2rem);
}
.home #products .products-flex_item .products-flex_ttl:has(h3)::before {
  width: 2.125em;
}
.home #products .products-flex_item .products-flex_ttl:has(h3)::after {
  right: 1.6255em;
}
.home #products .products-flex_item .products-flex_image {
  border-radius: 0.625em;
  overflow: hidden;
  display: block;
  width: 100%;
}
.home #products .products-flex_item .products-flex_image img {
  width: 100%;
}
.home #products .products-flex_item .products-flex_btn {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  flex-direction: column;
  gap: 1.125em;
  min-height: 9.25em;
  background: #fff;
  border-radius: 0.75em;
  width: min(calc((100% - 0.5em) / 2), calc(445px / 2));
  padding: 1.5em 0.625em 2.8125em;
  text-decoration: none;
}
.home #products .products-flex_item .products-flex_btn .icon {
  height: 2.1875em;
}
.home #products .products-flex_item .products-flex_btn .icon-list {
  height: 1.75em;
}
.home #products .products-flex_item .products-flex_btn .icon-casestudy {
  height: 2.375em;
}
.home #products .products-flex_item .products-flex_btn p {
  font-size: min(1.25vw, 1.125rem);
  line-height: 1.2;
  font-weight: 500;
}
.home #products .products-flex_item .products-flex_btn::before,
.home #products .products-flex_item .products-flex_btn::after {
  --arrow_color: var(--item_color);
  bottom: .5em;
  right: .5em;
}
.home #products .products-flex_item .products-flex_btn::after {
  bottom: .875em;
  right: 1.35em;
}
.home #news {
  padding-block: 4em 10em;
  position: relative;
  z-index: 11;
}
.home #news :is(.home-ttl_box, .text-link) {
  float: left;
}
.home #news .tab_change {
  float: right;
  width: min(calc(97% - 276px), 870px);
  min-height: 574px;
  margin-left: 3%;
}
.home #news .news-illustrat {
  position: absolute;
  z-index: -10;
}
.home #news .news-illustrat.illustrat01 {
  top: -5em;
  right: 3%;
  width: 11.4%;
}
.home #news .news-illustrat.illustrat02 {
  bottom: -2.75em;
  left: 1.5em;
  width: 30.555%;
}
.home #casestudy .casestudy-bg_image {
  position: relative;
  display: inline-block;
  border-radius: 6.25em;
  overflow: hidden;
  background: #e4f0ff;
}
.home #casestudy .casestudy-wrap {
  position: relative;
  color: #fff;
  margin-top: -23vw;
  padding-bottom: 3em;
}
.home #casestudy .home-ttl_box .home-ttl_lead{
  text-shadow:0 0 10px #13273969;
}
.home #casestudy .casestudy-wrap::before {
  position: absolute;
  z-index: 5;
  right: 0;
  bottom: 3em;
  content: "";
  display: inline-block;
  width: min(93vw, 1710px);
  height: calc(100% - 7em);
  background: var(--key);
  border-radius: 6.25em 0 0 6.25em;
  filter: drop-shadow(0 0 20px rgba(0, 15, 29, 0.15));
  will-change: filter;
}
.home #casestudy .casestudy-wrap::after {
  position: absolute;
  z-index: -10;
  inset: 0;
  content: "";
  display: inline-block;
  width: 100vw;
  height: 100%;
  background: var(--bg);
}
.home #casestudy .casestudy-wrap .home-ttl,
.home #cta .cta-left_box .home-ttl {
  margin-top: 0.5em;
}
.home #casestudy .casestudy-wrap .sitewrap {
  position: relative;
  z-index: 10;
  padding-bottom: 1em;
}
.home #casestudy .casestudy-slide_wrap {
  padding-top: 3.5em;
}
.home #casestudy .casestudy-slide_wrap .slick-prev {
  top: 0;
  right: 3.5em;
}
.home #casestudy .casestudy-slide_wrap .slick-next {
  top: 0;
  right: 0;
}
.home #casestudy .casestudy-slide_wrap .slick-list {
  width: 100vw;
}
.home #casestudy .casestudy-item {
  width: min(34.4251766217vw, 536px);
  margin-right: 2em;
}
.home #casestudy .btn {
  margin-left: auto;
  margin-block: 2em;
  display: flex;
}
.home #company {
  background: var(--bg);
  padding-block: 2.25em 4em;
}
.home #company .company-ttl {
  text-align: center;
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: -0.01em;
  margin-bottom: 0.5em;
}
.home #company .company-lead {
  text-align: center;
  font-size: 1.75rem;
  font-weight: bold;
  line-height: 1.4;
  color: var(--key);
  margin-bottom: 1em;
}
.home #company .company-bg_image {
  margin-top: -3.5em;
  display: block;
}
.home #company p {
  text-align: center;
  font-size: 1rem;
  line-height: 1.8;
  margin-bottom: 0.75em;
}
.home #company .btn {
  margin-inline: auto;
  margin-block: 2em;
  display: flex;
}
.home #sns {
  background: var(--bg);
  padding-bottom: 10em;
}
.home #sns .sitewrap {
  --container: min(100%, 1200px);
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 2.5em;
}
.home #sns .home-ttl_box {
  margin: 0;
  width: 480px;
}
.home #sns .sns-link_list {
  display: flex;
  width: 680px;
  gap: 0.625em;
}
.home #sns .sns-link_list li {
  width: calc((100% - 1.5em) / 4);
}
.home #sns .sns-link_list li a {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  flex-direction: column;
  gap: 0.625em;
  min-height: 9.25em;
  background: #fff;
  border-radius: 0.75em;
  padding: 1.5em 0.625em 2.8125em;
  text-decoration: none;
}
.home #sns .sns-link_list li p {
  font-size: 1.125em;
  line-height: 1.2;
  font-weight: 500;
}
.home #sns .sns-link_list .link-arrow::before,
.home #sns .sns-link_list .link-arrow::after {
  bottom: .5em;
  right: .5em;
}
.home #sns .sns-link_list .link-arrow::after {
  bottom: 0.925em;
  right: 1.35em;
}
.home #sns .sns-item {
  width: calc(50% - 1.25em);
  max-width: 500px;
}
.home #sns .sns-item.item-youtube {
  width: 100%;
  max-width: 100%;
}
.home #sns .sns-ttl_box {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.625em 1.25em;
  border-bottom: 2px solid var(--fontcolor);
  padding-bottom: 1em;
  margin-bottom: 1em;
}
.home #sns .sns-ttl_box .sns-ttl {
  font-size: 2rem;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 0.8;
}
.home #sns .sns-ttl_box p {
  font-size: 1.25rem;
  font-weight: 500;
  letter-spacing: -0.01em;
}
.home #sns :is(.insta-list, .youtube-list) {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  gap: 1em;
  flex-wrap: wrap;
}
.home #sns :is(.insta-list, .youtube-list) li {
  width: calc((100% - 1em) / 2);
  aspect-ratio: 1/1;
  overflow: hidden;
}
.home #sns :is(.insta-list, .youtube-list) li a {
  display: block;
}
.home #sns :is(.insta-list, .youtube-list) li img {
  object-fit: cover;
  object-position: center center;
  aspect-ratio: 1/1;
}
.home #sns .youtube-list li {
  width: calc((100% - 3em) / 4);
  aspect-ratio: 16/9;
}
.home #sns .youtube-list li img {
  aspect-ratio: 16/9;
}
#cta {
  padding-block: 6.25em;
  background: #ffe33f;
}
.home #cta {
  background: var(--bg);
  background: linear-gradient(0deg, #132739 50%, var(--bg) 50%);
}
.home #cta::after {
  position: absolute;
  z-index: -5;
  inset: 0;
  content: "";
  display: inline-block;
  width: clamp(1000px, 98%, 1700px);
  height: 100%;
  background: #ffe33f;
  border-radius: 1.875em;
  margin-inline: auto;
}
#cta .sitewrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  /* flex-wrap: wrap; */
  gap: 1.25em;
}
#cta .cta-left_box>p {
  font-weight: 500;
  line-height: 1.8;
  margin: 0;
}
#cta .cta-right_box {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 0.625em;
}
#cta .cta-right_box .cta-btn {
  --item_color: #ffe33f;
  position: relative;
  z-index: 10;
  flex: 1;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  flex-direction: column;
  min-width: 19.25em;
  text-align: center;
  color: #fff;
  background: var(--key);
  border-radius: 0.625em;
  padding: 3em 1.5em;
  box-sizing: border-box;
  text-decoration: none;
}
#cta .cta-right_box .cta-btn[href="tel:"] {
  pointer-events: none;
}
#cta .cta-right_box .cta-btn .free {
  position: absolute;
  z-index: 10;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 3.5em;
  aspect-ratio: 1/1;
  font-size: 0.875em;
  font-weight: bold;
  line-height: 1.2;
  border: 1px solid;
  border-radius: 0.35714285714em;
  top: 0.75em;
  right: 0.75em;
}
#cta .cta-right_box .cta-btn .icon {
  height: 3.25em;
}
#cta .cta-right_box .cta-btn .icon-form {
  height: 2.375em;
  margin-bottom: 1em;
}
#cta .cta-right_box .cta-btn .tel-text {
  font-size: 1.25em;
  font-weight: bold;
  line-height: 1.4;
}
#cta .cta-right_box .cta-btn.tel .tel-text {
  font-size: 1.625em;
  line-height: 1.875;
}
#cta .cta-right_box .cta-btn .tel-time {
  font-size: 0.875em;
  white-space: nowrap;
}
#cta .cta-right_box .cta-btn.link-arrow::before,
#cta .cta-right_box .cta-btn.link-arrow::after {
  bottom: .75em;
  right: .75em;
}
#cta .cta-right_box .cta-btn.link-arrow::before {
  width: 2em;
}
#cta .cta-right_box .cta-btn.link-arrow::after {
  --arrow_color: var(--key);
  bottom: 1.1em;
  right: 1.375em;
  --arrow_wide: 0.625em;
}
.home #cta .cta-illustrat {
  position: absolute;
  z-index: 10;
  top: -8.5em;
  right: 0;
  width: 12.075%;
}
@media (hover: hover) and (pointer: fine),
(hover: none) and (pointer: coarse) {
  .home #products .products-flex_item .products-flex_btn:hover,
  .home #sns .sns-link_list li a:hover,
  #cta .cta-right_box .cta-btn:hover {
    transform: translateY(3px);
  }
  .home #sns :is(.insta-list, .youtube-list) li a:hover img {
    opacity: 0.5;
  }
  .home #products .products-flex_item .products-flex_ttl:hover {
    text-decoration-color: #fff;
  }
}
@media screen and (min-width:1921px) {
  .home #casestudy .casestudy-wrap::before {
    width: 90vw;
  }
}
@media screen and (max-width:1750px) {
  .home #products .lead-illustrat {
    bottom: 82.75%;
    width: min(823px, 38vw);
  }
  .home #cta .cta-illustrat {
  width: 10%;
  top: -10em;
  }
  .home #news .news-illustrat.illustrat01 {
    width: 10%;
    right: 1%;
  }
}
@media screen and (max-width:1600px) {
  .home #cta .cta-illustrat {
    top: -32%;
    width: 8%;
  }

}
@media screen and (max-width:1580px) {
  .home #products .lead-illustrat {
    bottom: 78%;
    width: min(823px, 32vw);
    right:-7.5%;
  }
  .home #news .news-illustrat.illustrat01 {
    width: 9%;
    top:-11%;
  }
}
@media screen and (max-width:1480px) {
  .home #casestudy .casestudy-wrap::before {
    width: 100vw;
  }
  .home #cta .cta-illustrat {
    top: -34%;
    width: 7%;
  }
}
@media screen and (max-width:1390px) {
    .home #news .news-illustrat.illustrat01 {
      width:7.5%;
      top:-10%;
    }
}
@media screen and (max-width:1290px) {
  .home .home-ttl_box {
    font-size: 1.25rem;
  }
  #cta .cta-right_box .cta-btn {
    font-size: 0.875rem;
  }
}
@media screen and (max-width:1240px) {
  .home #sns .sns-link_list {
    font-size: 0.875rem;
    flex: 1;
  }
  .home #products .products-flex_item {
    width: 48%;
  }
  .home #sns .home-ttl_box {
    margin: 0;
    width: auto;
  }
  .home #products .lead-illustrat {
    bottom: 75%;
    width: min(823px, 32vw);
    right:-7.5%;
  }
  .home #cta .cta-illustrat {
    top: -37%;
    width: 105px;
  }
  .home #news .news-illustrat.illustrat01 {
    top:-11%;
  }
  .home #lead .lead-wrap .lead-text_box {
    margin-right: 0em;
  }
    .home #news .news-illustrat.illustrat01 {
      top:-8%;
    }
}
@media screen and (max-width:1095px) {
    .home #products .lead-illustrat {
      width: min(823px, 37vw);
      right:-8.5%;
    }
}
@media screen and (max-width:1050px) {
  #cta .cta-right_box .cta-btn {
    font-size: 1.25vw;
  }
}
@media screen and (max-width:938px) {
  .home #news :is(.home-ttl_box, .text-link),
  .home #news .tab_change {
    float: none;
    width: auto;
    min-height: 0;
    margin-left: 0;
  }
  .home #news .text-link {
    margin: 2em 0 0em auto;
    margin-right: 0;
  }
    .home #products .lead-illustrat {
      bottom:79%;
    }
}
@media screen and (max-width:767px) {
  .home .home-ttl_box {
    font-size: 1.14285714286rem;
    margin-bottom: 1.25em;
  }
  .home #casestudy .home-ttl_box {
    padding-left: 1em;
  }
  .home .home-ttl_box .home-ttl_lead {
    font-size: 3.125em;
  }
  .home #mv {
    padding-bottom: 1.125em;
  }
  .home #mv .mv-slide_wrap .mv-slide_item {
    height: auto;
    display: flex;
    justify-content: center;
    align-items: center;
  }
   .home #mv .mv-slide_wrap .mv-slide_item picture{
     width: calc(100vw - var(--inner) * 2);
     will-change: filter;
   }
  .home #mv .mv-slide_wrap .mv-slide_item a{
    display:flex;
    width: 100%;
  }
  .home #mv .mv-nav-wrapper {
    margin-top: .75em;
  }
  .home #mv .slick-dots{
    gap:0.5em;
    margin-top: -1.5em;
    padding-top: 2.5em;
  }
  .home #mv .slick-dots button{
	width:0.75rem;
  }
  .home #mv .slick-arrow{
  font-size: 1.71rem;
  }
  .home #mv .slick-next{
  	inset: auto -6em -0.275em 0;
  }
  .home #mv .slick-prev{
  	inset: auto 0 -0.275em -4.75em;
  }
  .home #lead {
    background: var(--key);
    padding-block: 0em 13em;
    color: #fff;
  }
  .home #lead .lead-illustrat {
    top: -27vw;
    width: 45vw;
  }
  .home #lead .lead-wrap {
    display: block;
  }
  .home #lead .lead-wrap .lead-ttl {
    font-size: 7vw;
    margin-bottom: 1rem;
  }
  .home #lead .lead-wrap .lead-text_box {
    margin-right: 0;
  }
  .home #lead .lead-wrap .lead-text_box p {
    font-size: 1rem;
    line-height: 1.8;
  }
  .home #lead .lead-scroll_wrap {
    font-size: 8rem;
  }
  .home #products {
    border-radius: 3.57142857143em 3.57142857143em 0 0;
    margin-top: -6.5em;
    padding-block: 4em 0;
    overflow: visible;
  }
  .home #products .lead-illustrat {
    bottom: 77%;
    width: 57%;
    right: -14.75%;
    max-width: 300px;
  }
  .home #products .products-flex_box {
    gap: 1.5em 2%;
  }
  .home #products .products-flex_item {
    width: 49%;
  }
  .home #products .products-flex_item a {
    gap: 0.5em 2%;
    border-radius: 1.07142857143em;
    padding: 1em;
  }
  .home #products .products-flex_item .products-flex_ttl h3 {
    font-size: 1.28571428571rem;
    margin-bottom: 0.35em;
  }
  .home #products .products-flex_item .products-flex_ttl:has(h3)::before {
    font-size: 1.28571428571rem;
    width: 1.5em;
    top: 1.5em;
    right: 0.625em;
  }
  .home #products .products-flex_item .products-flex_ttl:has(h3)::after {
    font-size: 1rem;
    top: 1.875em;
    right: 1.375em;
  }
  .home #products .products-flex_item .products-flex_btn {
    gap: 0.75em;
    min-height: 7em;
    padding: 1em 0.625em 1.5em;
  }
  .home #products .products-flex_item .products-flex_btn .icon {
    height: 2em;
  }
  .home #products .products-flex_item .products-flex_btn .icon-casestudy {
    height: 2.125em;
  }
  .home #products .products-flex_item .products-flex_btn p {
    font-size: 1rem;
  }
  .home #products .products-flex_item .products-flex_btn::before,
  .home #products .products-flex_item .products-flex_btn::after {
    font-size: 0.75em;
  }
  .home #news {
    padding-block: 4.5em 12em;
    overflow: visible;
  }
  .home #news .home-ttl_box {
    align-items: center;
  }
  .home #news .news-illustrat.illustrat01 {
    width: 20vw;
    top: 0.75em;
    right: 10px;
    max-width: 77px;
  }
  .home #news .news-illustrat.illustrat02 {
    width: 55%;
    bottom: -1em;
    left: 1em;
    max-width: 270px;
  }
  .home #news .text-link {
    margin: 1em 0 0 auto;
    margin-right: 0;
  }
  .home #casestudy .casestudy-bg_image {
    border-radius: 3.57142857143em;
  }
  .home #casestudy .casestudy-wrap {
    margin-top: -51vw;
    padding-left: var(--inner);
    padding-bottom: 2.5em;
  }
  .home #casestudy .casestudy-wrap::before {
    position: absolute;
    z-index: 5;
    right: 0;
    bottom: 3em;
    content: "";
    display: inline-block;
    width: calc(100% - var(--inner));
    height: calc(100% - 4.35em);
    border-radius: 3.57142857143em 0 0 3.57142857143em;
  }
  .home #casestudy .casestudy-wrap::after {
    position: absolute;
    z-index: -10;
    inset: 0;
    content: "";
    display: inline-block;
    width: 100vw;
    height: 100%;
    background: var(--bg);
  }
  .home #casestudy .casestudy-slide_wrap {
    padding-top: 0;
    padding-bottom: 3.5em
  }
  .home #casestudy .casestudy-slide_wrap .slick-prev {
    inset: auto auto 0 0;
  }
  .home #casestudy .casestudy-slide_wrap .slick-next {
    inset: auto 0 0 auto;
  }
  .home #casestudy .casestudy-slide_wrap .slick-list {
    width: 1000%;
  }
  .home #casestudy .casestudy-item {
    width: calc(100vw - var(--inner) * 3);
    margin-right: 2em;
  }
  .home #casestudy .btn {
    margin-inline: 2em auto;
    margin-top: 1em;
    width: 76.366%;
    min-width: 250px;
    min-height: 3.929em;
  }
  .home #company {
    padding-block: 0 2em;
  }
  .home #company .company-ttl {
    font-size: 1.14285714286rem;
    margin-bottom: 0
  }
  .home #company .company-lead {
    font-size: 1.35714285714rem;
    line-height: 1.6;
    margin-bottom: 0.5em;
  }
  .home #company p {
    text-align: center;
    margin-bottom: 0;
  }
  .home #company .btn {
    width: 73.045%;
    min-width: 250px;
    min-height: 3.929em;
  }
  .home #company .company-bg_image {
    margin-top: -1.5em;
  }
  .home #sns {
    padding-bottom: 6em;
  }
  .home #sns .sitewrap {
    gap: 1em;
  }
  .home #sns .home-ttl_box {
    margin: 0;
    width: 100%;
  }
  .home #sns .sns-link_list {
    flex-wrap: wrap;
    flex: inherit;
    width: 100%;
    gap: 1.5em;
  }
  .home #sns .sns-link_list li {
    width: calc((100% - 1.5em) / 2);
  }
  .home #sns .sns-link_list li a {
    gap: 0.5em;
    min-height: 0;
    padding: 1em 0.625em 1.25em;
  }
  .home #sns .sns-link_list li img {
    height: 2.125em;
    width: auto;
  }
  .home #sns .sns-link_list li p {
    font-size: 1em;
  }
  .home #sns .sns-link_list .link-arrow::before,
  .home #sns .sns-link_list .link-arrow::after {
    font-size: 0.75em;
  }
  .home #sns .sns-link_list .link-arrow::before {
    right: 1em;
    bottom: 1em;
  }
  .home #sns .sns-link_list .link-arrow::after {
    right: 1.875em;
    bottom: 1.375em;
  }
  .home #sns .sns-item {
    width: 100%;
  }
  .home #sns .sns-ttl_box {
    padding-bottom: 0.75em;
    margin-bottom: 0.75em;
    margin-top: 2em;
  }
  .home #sns .sns-ttl_box .sns-ttl {
    font-size: 1.71428571429rem;
  }
  .home #sns .sns-ttl_box p {
    font-size: 0.85714285714rem;
  }
  .home #sns :is(.insta-list, .youtube-list) {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    gap: 1em;
    flex-wrap: wrap;
  }
  .home #sns .scroll_box {
    overflow: auto;
  }
  .home #sns .youtube-list {
    width: 170vw;
    padding-bottom: 0.75em;
  }
  #cta {
    padding-block: 2em;
  }
  .home #cta::after {
    width: calc(100% - var(--inner) * 2);
    border-radius: 15px;
  }
  #cta .sitewrap {
    flex-wrap: wrap;
    gap: 1.25em;
    padding-inline: calc(var(--inner) * 2);
  }
  #cta .cta-right_box {
    width: 100%;
  }
  #cta .cta-right_box .cta-btn {
    justify-content: space-evenly;
    min-width: calc(50% - 0.625rem);
    font-size: 2.5vw;
    padding: 1.5em 1em;
    box-sizing: border-box;
  }
  #cta .cta-right_box .cta-btn .free {
    position: static;
    width: 100%;
    aspect-ratio: inherit;
    padding: 0.35em;
    margin-block: 0.5em;
  }
  .home #cta .cta-illustrat {
    width: 23%;
    top: -12%;
    right: 0;
    max-width: 110px;
  }
  #cta .cta-right_box .cta-btn .icon-form {
    height: 2em;
  }
  .mv-slide_item--hide-sp {
      display: none;
  }
  .home #mv .mv-slide_wrap .mv-slide_item.mv-slide_item--hide-sp picture{
    display:flex;
    justify-content:center;
    align-items:center;
  }
  .home #mv .mv-slide_wrap .slick-track{
    display:flex;
    align-items:stretch;
  }
}
:root .site-body .faq-title {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.5em;
}
:root .site-body .faq-title .faq-q {
  font-size: 2.25rem;
  font-weight: 500;
  color: var(--key);
  line-height: 1;
}
:root .site-body .faq-title>span {
  font-size: 1.75rem;
  text-decoration: none;
}
:root .site-body .faq-answer {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 1em;
  margin-bottom: 1.5em;
}
:root .site-body .faq-answer i {
  font-size: 2rem;
  font-weight: 500;
  color: var(--sub01);
  line-height: 1;
  margin-right: 0;
  padding-top: 0.25em;
}
:root .site-body .faq-answer>p {
  font-size: 1.5rem;
  font-weight: 500;
}
:root .site-body .other-faq-style {
  margin-top: 3em;
  font-size: 1.625rem;
  font-weight: 500;
  margin-bottom: 0.5em;
  color: var(--key);
}
:root .site-body .other-faq-list {
  position: relative;
  padding-left: 0;
  list-style: none;
}
:root .site-body .other-faq-list li a {
  font-size: 1rem;
  padding: 0.75em 1em;
  display: flex;
  border-bottom: 1px solid #b6b6b6;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0.5em;
  transition: var(--hover);
  text-decoration: none;
}
:root .site-body .other-faq-list li a i {
  font-size: 1.375rem;
  line-height: 1;
  color: var(--key);
}
@media (hover: hover) and (pointer: fine),
(hover: none) and (pointer: coarse) {
  :root .site-body .other-faq-list li a:hover {
    background: var(--bg);
  }
}
@media screen and (max-width: 767px) {
  :root .site-body .faq-title .faq-q {
    font-size: 1.71rem;
  }
  :root .site-body .faq-title>span {
    font-size: 1.29rem;
  }
  :root .site-body .faq-answer i {
    font-size: 1.47rem;
  }
  :root .site-body .faq-answer>p {
    font-size: 1.14rem;
  }
  :root .site-body .other-faq {
    margin-bottom: 3em;
  }
  :root .site-body .other-faq-style {
    margin-top: 2em;
    font-size: 1.29rem;
  }
}
:root .download-top p {
  margin-bottom: 4em;
}
:root .category-list {
  position: relative;
  margin-bottom: 4em;
  list-style: none;
  padding: 0;
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 1em;
}
:root .category-list li {
  width: calc(25% - 0.75em);
}
:root .category-list li a {
  position: relative;
  display: block;
  border-bottom: 1px solid var(--key);
  padding: 0.5em 2em 0.5em 0.5em;
  font-size: 1.125rem;
  text-decoration: none;
}
:root .category-list li a:after {
  --arrow_wide: 0.8125em;
  position: absolute;
  content: "";
  inset: 0 0.5em 0 auto;
  display: block;
  width: var(--arrow_wide);
  aspect-ratio: 13/11;
  mask: center center / contain repeat-x;
  mask-image: url(../img/common/icon-arrow.svg);
  background-color: var(--key);
  margin: auto;
  transform: rotate(90deg);
  transition: var(--hover);
}
:root .download-wrap {
  position: relative;
}
:root .download-wrap p {
  margin-bottom: 0;
}
:root .download-list {
  position: relative;
  padding-left: 0;
  list-style: none;
}
:root .download-list .download-item {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: wrap;
  border-bottom: 1px solid #d5d5d5;
  padding: 1.5em;
}
:root .download-list .download-item:first-child {
  border-top: 1px solid #d5d5d5;
}
:root .download-list .download-item p {
  margin-bottom: 0;
  font-weight: 600;
  flex: 1;
}
:root .download-list .download-item .download-pdf {
  color: var(--key);
  text-decoration-color: inherit;
  text-decoration-style: solid;
  font-weight: 600;
}
:root .download-list .download-item .download-pdf:is(:hover, :focus) {
  color: inherit;
  text-decoration-color: transparent;
}
:root .download-list.cat-catalog {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 3em 1em;
}
:root .download-list.cat-catalog .download-item {
  flex-direction: column;
  border: none;
  width: calc(25% - 0.75em);
  padding: 0;
}
:root .download-list.cat-catalog .download-item .download-iamge {
  margin-bottom: 1em;
}
:root .download-list.cat-catalog .download-item .download-iamge img {
  transition: var(--hover);
  border: 1px solid #dddddd;
}
:root .download-list.cat-catalog .download-item .download-title {
  flex: 1;
  border-bottom: 1px dashed #aaa;
  padding-bottom: 1em;
  margin-bottom: 1em;
}
:root .download-list.cat-catalog .download-item .download-pdf {
  position: relative;
  padding-left: 1.75em;
}
:root .download-list.cat-catalog .download-item .download-pdf:before {
  content: "";
  width: 20px;
  height: 20px;
  mask: center center / contain no-repeat;
  mask-image: url(../img/common/icon-pdf.svg);
  background-color: var(--key);
  position: absolute;
  inset: 0 auto 0 0;
  margin: auto;
}
:root .download-list.cat-catalog .download-item .download-pdf:is(:hover, :focus):before {
  background-color: var(--fontcolor);
}
@media (hover: hover) and (pointer: fine),
(hover: none) and (pointer: coarse) {
  :root .download-list.cat-catalog .download-item a:hover .download-iamge img {
    opacity: 0.7;
  }
  :root .category-list li a:hover:after {
    transform: rotate(90deg) translateX(5px);
  }
}
@media screen and (max-width: 1200px) {
  :root .category-list li a {
    font-size: 1rem;
  }
  :root .category-list {
    gap: 0.5em;
  }
}
@media screen and (max-width: 1050px) {
  :root .category-list li a {
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 767px) {
  :root .download-top p {
    margin-bottom: 3em;
  }
  :root .category-list {
    margin-bottom: 3em;
    gap: 1em 4%;
  }
  :root .category-list li {
    width: 48%;
  }
  :root .category-list li a {
    font-size: 0.86rem;
  }
  :root .download-list .download-item {
    padding: 0.75em 1em;
    flex-wrap: nowrap;
    gap: 0.1em;
    align-items: center;
  }
  :root .download-list .download-item p {
    margin-bottom: 0;
    font-weight: 600;
    width: calc(100% - 7em);
  }
  :root .download-list .download-item .download-pdf {
    width: 6em;
  }
  :root .download-list.cat-catalog {
    gap: 3em 4%;
    justify-content: space-between;
  }
  :root .download-list.cat-catalog .download-item {
    width: 48%;
    padding: 0;
  }
  :root .download-list.cat-catalog .download-item p,
  :root .download-list.cat-catalog .download-item .download-pdf {
    width: 100%;
  }
}
body:not(.home) .site-body:has(.bg-white_wrap) {
  background:var(--bg);
  overflow:clip;
  padding-bottom: 0;
}
body:not(.home) .bg-white_wrap {
  position:relative;
  z-index: 0;
  padding-bottom:6.25em;
  margin-bottom:6.25em;
}
body:not(.home) .bg-white_wrap::before {
  position:absolute;
  z-index: -5;
  display:inline-block;
  content:"";
  width:100vw;
  height: 200%;
  background:#fff;
  border-radius: 0 0 var(--border_radius) var(--border_radius);
  inset:auto auto 0 50%;
  translate:-50%;
}
body:not(.home) .bg-white_wrap * {
  position: relative;
  z-index:10;
}
:root .header-box {
  display:flex;
  justify-content:space-between;
  gap: 3.5em;
}
:root .header-box > * {
  width:50%;
}
:root .header-box .header-excerpt {
  line-height:1.8;
}
:root .header-box .header-right_box:has(.products-image_box) {
  width:min(50%,572px);
}
:root .header-box .products-image_box {
  overflow:hidden;
  border-radius:1.25em;
}
:root .header-box .products-image_box img{
  aspect-ratio:143/96;
  object-fit:contain;
  background: var(--bg);
}
:root .single .products-scene_list {
  display:flex;
  justify-content:flex-start;
  align-items:stretch;
  flex-wrap:wrap;
  gap:0.75em;
  margin: 0 !important;
}
:root .single .products-scene_list li {
  width: max(calc((100% - 0.75em * 5) / 6),190px);
  text-align:center;
  font-size:1rem;
  font-weight:bold;
  background:#fff;
  border-radius:5px;
  padding:1em;
  margin:0;
}
:root .site-body .entry-body .scroll_wrap {
  overflow-x:auto;
}
:root .site-body .entry-body table.price_table {
  min-width:800px;
  margin: 0;
}
:root .site-body .entry-body table.price_table :is(th, td) {
  padding: 0.75em 1.5em;
  border-inline: 1px solid;
  border-color: #d5d5d5;
  background:#fff;
}
:root .site-body .entry-body table.price_table th {
  background: var(--key);
  color:#fff;
  text-align:center;
  font-size:1.125rem;
  white-space: nowrap;
}
:root .single .btn-list {
  display:flex;
  justify-content:flex-start;
  align-items:center;
  flex-wrap:wrap;
  gap:1em;
}
:root .single .btn-list .btn {
  padding-right: 5em;
}
:root .related-wrap {
  position:relative;
  z-index:10;
  padding-block:6.25em;
  margin-top: 6.25em;
}
:root .related-wrap::before {
  position:absolute;
  z-index: -5;
  display:inline-block;
  content:"";
  width:100vw;
  height: 100%;
  background:#fff;
  inset:auto auto 0 50%;
  translate:-50%;
}
:root .single-products .entry-body:last-child {
  padding-bottom:6.25em;
}
:root .single-products .main-section {
  margin-bottom:0;
}
:root .series-list {
  display:flex;
  justify-content:flex-start;
  align-items:stretch;
  flex-wrap: wrap;
  gap:1.5em 2.25%;
}
:root .series-list .series-item {
  width: 23.3125%;
}
:root .series-list .series-item a {
  position:relative;
  z-index:10;
  display:block;
  border-radius:1.25em;
  overflow:hidden;
}
:root .series-list .series-item a::before {
  position:absolute;
  z-index: 20;
  display:inline-block;
  content:"";
  width:100%;
  height:100%;
  background:transparent;
  background: linear-gradient(0deg,rgba(14, 115, 235, 1) 0%, rgba(14, 115, 235, 0) 40%);
}
:root .series-list .series-item p {
  position:absolute;
  z-index:20;
  font-size: 1.125rem;
  font-weight: bold;
  color: #fff;
  bottom: 1em;
  left: 1em;
  margin: 0;
}
:root .btn-list {
  display:flex;
  justify-content:flex-start;
  align-items:stretch;
  flex-wrap:wrap;
  gap:1em 1%;
}
:root .btn-list .btn-item {
  width: max(24.25%,240px);
}
:root .btn-list .btn-item a {
  position: relative;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  min-height: 4.5em;
  font-size: 1rem;
  font-weight: bold;
  line-height: 1.2;
  color: var(--fontcolor);
  background: #fff;
  border-radius: 0.625em;
  padding: 0.5em 5em 0.5em 2.5em;
  margin-block: 0;
  transition: var(--hover);
  cursor: pointer;
  pointer-events: auto;
  text-decoration: none;
  opacity: 1;
  box-shadow: none;
}
:root .btn-list .btn-item a.link-arrow::before {
  --bg_color: var(--key);
  right: 1.5em;
}
:root .btn-list .btn-item a.link-arrow::after {
  --arrow_color: #fff;
  right: 2.375em;
}
:root .search-box {
  margin-block:4em;
  background:#fff;
  border-radius:1.875rem;
  padding:4em 1.25em;
}
body.post-type-faq .search-box {
  background:var(--bg);
  margin-block: 0 1em;
  padding-block: 2em;
  border-radius: 0.625em;
}
body.post-type-faq .search-box h2{
  border-bottom:none;
  padding-bottom:0;
  font-size:1.875rem;
  margin-bottom: 0.75em;
}
body.post-type-faq .search-box h2:before{
  display:none;
}
body.post-type-faq.search-results .search-box{
  /* display:none; */
}
:root .search-result-style{
  font-size:1.5rem;
  font-weight:bold;
  margin-block:2em 0.5em;
}
body.post-type-faq  #searchform{
  background:#fff;
}
:root .search-box > * {
  width:min(1100px,100%);
  margin-inline: auto !important;
}
#searchform {
  background:#f2f2f2;
  border-radius:5em;
  padding:0.875rem;
}
#searchform input[type="text"] {
  background:none;
  border:none;
  outline:none;
  flex: 1;
}
#searchform input[type="text"]::placeholder {
  color:#c9c9c9;
}
#searchform #searchsubmit {
  width: 5.625em;
  font-size: 1rem;
  background: var(--key);
  border: none;
  border-radius: 5em;
  cursor: pointer;
  transition: var(--hover);
}
#searchform #searchsubmit img {
  filter:var(--white);
}
:root .link-wrap{
  position:relative;
  z-index:10;
  display:flex;
  justify-content:space-between;
  align-items:stretch;
  gap:4.5%;
  padding-block:4.25em;
}
:root .link-wrap::after {
  position:absolute;
  z-index:-5;
  display:inline-block;
  content:"";
  width:100vw;
  height:100%;
  background:#fff;
  inset:0 auto 0 50%;
  translate:-50%;
}
:root .link-wrap .link-btn {
  position:relative;
  z-index:10;
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
  flex-direction: column;
  width:calc((100% - 4.5%) / 2);
  min-height: 16.375em;
  background-image:url(../img/common/img-download.jpg);
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center;
  border-radius:0.625em;
  padding: 1.5em;
  padding-right: 6em;
  transition:var(--hover);
  text-decoration:none;
}
:root .link-wrap .link-btn.btn-contact {
  background-image:url(../img/common/img-contact.jpg);
}
:root .link-wrap .link-btn::before {
  width: 3.75em !important;
  --bg_color: #fff;
  right: 1.5em;
}
:root .link-wrap .link-btn::after {
  --arrow_wide: 1.125em !important;
  --arrow_color: var(--fontcolor);
  right: 2.75em;
  bottom: 2.1em;
}
:root .link-wrap .link-btn p {
  font-size:1.75rem;
  font-weight:bold;
  line-height:1.4;
  color:#fff;
  margin:0;
}
@media (hover: hover) and (pointer: fine),
(hover: none) and (pointer: coarse) {
  :root .btn-list .btn-item a:hover,
  #searchform #searchsubmit:hover,
  :root .link-wrap .link-btn:hover{
    transform:translateY(3px);
  }
}
@media screen and (max-width: 767px) {
  body:not(.home) .bg-white_wrap {
    padding-bottom:3em;
    margin-bottom:3em;
  }
  :root .header-box {
    flex-direction:column-reverse;
    gap: 1em;
  }
  :root .header-box > *,
  :root .header-box .header-right_box:has(.products-image_box) {
    width: 100%;
  }
  :root .single .products-scene_list li {
    width: calc((100% - 0.75em) / 2);
  }
  :root .site-body .entry-body table.price_table {
    min-width:200vw;
  }
  :root .single .btn-list {
    flex-direction:column;
    align-items:flex-start;
  }
  :root .related-wrap {
    padding-block:4em;
    margin-top: 4em;
  }
  :root .single-products .entry-body:last-child {
    padding-bottom:4em;
  }
  :root .series-list {
    gap:1em 2.25%;
  }
  :root .series-list .series-item {
    width: 48.625%;
  }
  :root .series-list .series-item a {
     border-radius:0.75em;
  }
  :root .series-list .series-item p {
    font-size: 0.875rem;
  }
  :root .btn-list {
    gap:0.75em 1%;
  }
  :root .btn-list .btn-item {
    width: 49.5%;
  }
  :root .btn-list .btn-item a {
    min-height: 3.5em;
    padding: 0.5em 4em 0.5em 1em;
  }
  :root .btn-list .btn-item a.link-arrow::before {
    right: 0.75em;
  }
  :root .btn-list .btn-item a.link-arrow::after {
    right: 1.65em;
  }
  :root .search-box {
    margin-block:3em;
    border-radius:1.25rem;
    padding:2.25em 1em;
  }
  #searchform {
    padding:0.75rem;
  }
  #searchform input[type="text"] {
    padding:0.5em;
  }
  #searchform #searchsubmit {
    width: 4em;
    padding: 0.25em 1em;
  }
  #searchform #searchsubmit img {
    width: 1.25em;
  }
  :root .link-wrap{
    gap:1.5em;
    padding-block:2em;
    flex-wrap:wrap;
  }
  :root .link-wrap::after {
    position:absolute;
    z-index:-5;
    display:inline-block;
    content:"";
    width:100vw;
    height:100%;
    background:#fff;
    inset:0 auto 0 50%;
    translate:-50%;
  }
  :root .link-wrap .link-btn {
    width:100%;
    min-height: 10em;
    aspect-ratio:286 / 131;
  }
  :root .link-wrap .link-btn.btn-contact {
    background-image:url(../img/common/img-contact.jpg);
  }
  :root .link-wrap .link-btn::before {
    width: 3em !important;
    right: 1.5em;
  }
  :root .link-wrap .link-btn::after {
    --arrow_wide: 0.8125em !important;
    right: 2.5em;
    bottom: 2em;
  }
  :root .link-wrap .link-btn p {
    font-size: 1.29rem;
  }
}
body.post-name-hospital #global-header #site_ttl,
body.post-name-hospital #global-header #global-nav>ul>li a img,
body.post-name-individual #global-header #site_ttl,
body.post-name-individual #global-header #global-nav>ul>li a img{
   filter: brightness(0) invert(1);
}
body.post-name-hospital #global-header #global-nav>ul>li a span,
body.post-name-individual #global-header #global-nav>ul>li a span{
  color:#fff;
}
body.post-name-hospital #global-header #global-nav>ul>li a::after,
body.post-name-individual #global-header #global-nav>ul>li a::after{
  background:var(--key);
}
body.post-name-hospital #global-header.fixedMenu #site_ttl,
body.post-name-hospital #global-header.fixedMenu #global-nav>ul>li a img,
body.post-name-individual #global-header.fixedMenu #site_ttl,
body.post-name-individual #global-header.fixedMenu #global-nav>ul>li a img{
   filter:none;
}
body.post-name-hospital #global-header.fixedMenu #global-nav>ul>li a span,
body.post-name-individual #global-header.fixedMenu #global-nav>ul>li a span{
  color:var(--fontcolor);
}
body.post-name-hospital #global-header.fixedMenu #global-nav>ul>li a::after,
body.post-name-individual #global-header.fixedMenu #global-nav>ul>li a::after{
  background:#e6f8ff;
}
body.post-name-hospital .page-header{
	background:var(--sub02);
}
body.post-name-hospital .page-header:after{
	opacity: 0.13;
}
body.post-name-hospital .page-header .page-header-title{
  color:#fff;
}
body.post-name-hospital .hospital-col{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  flex-wrap:wrap;
  gap:1em;
}
body.post-name-hospital .hospital-col .hospital-text{
  width: calc(52% - 1em);
}
body.post-name-hospital .hospital-col .hospital-text .h_style03{
  font-size:2rem;
}
body.post-name-hospital .hospital-col .hospital-text p{
  line-height:1.875;
}
body.post-name-hospital .hospital-col .hospital-image{
  width: 48%;
}
body.post-name-hospital .hospital-col .hospital-image img{
  border-radius:20px;
}
body.post-name-hospital .hospital-search{
  margin-bottom:6em;
}
body.post-name-hospital .hospital-search .hospital-list{
  display:flex;
  justify-content:space-between;
  align-items:stretch;
  flex-wrap:wrap;
  gap:1em;
  list-style:none;
  padding:0;
  margin:0;
}
body.post-name-hospital .hospital-search .hospital-list .hospital-item{
   width:calc(33% - 0.5em);
}
body.post-name-hospital .hospital-search .hospital-list .hospital-item a{
  background:#fff;
  padding:1.75em;
  border-radius:20px;
  display:block;
  position:relative;
  text-decoration:none;
}
body.post-name-hospital .hospital-search .hospital-list .hospital-item .hospital-img{
  margin-bottom:1em;
}
body.post-name-hospital .hospital-search .hospital-list .hospital-item .hospital-img img{
  border-radius:10px;
}
body.post-name-hospital .hospital-search .hospital-list .hospital-item p{
  font-size:1.5rem;
  font-weight:bold;
  text-align:center;
  margin-bottom:0;
}
body.post-name-hospital .hospital-search .hospital-list .hospital-item .arrow{
  --arrow_color: var(--fontcolor);
  position: absolute;
  display: block;
  background: var(--key);
  width: 2.75em;
  aspect-ratio: 44 / 26;
  border-radius: 1.625em;
  inset:auto 1.75em 1.75em auto;
  margin:auto;
}
body.post-name-hospital .hospital-search .hospital-list .hospital-item .arrow:before{
  position: absolute;
  content: "";
  display: block;
 --arrow_wide: 0.8125em;
    width: var(--arrow_wide);
  aspect-ratio: 13/11;
  mask: center center / contain repeat-x;
  mask-image: url(../img/common/icon-arrow.svg);
  background-color: #fff;
  inset:0;
  margin:auto;
}

body.post-name-hospital .link-wrap{
  padding-block: 5.5em;
}
@media (hover: hover) and (pointer: fine),
(hover: none) and (pointer: coarse) {
  body.post-name-hospital .hospital-search .hospital-list .hospital-item a:hover{
    transform: translateY(3px);
  }
  body.post-name-hospital .hospital-search .hospital-list .hospital-item a:hover .arrow:before{
      mask-position: var(--arrow_wide) center;
      transition: .3s;
  }
  body.post-name-hospital #global-header #global-nav>ul>li a:hover{
     filter:none;
  }
}
@media screen and (max-width:1000px) {
  body.post-name-hospital .hospital-search .hospital-list .hospital-item{
     width:calc(33% - 0.75em);
  }
  body.post-name-hospital .hospital-search .hospital-list .hospital-item a{
    padding:1.25em;
  }
  body.post-name-hospital .hospital-search .hospital-list .hospital-item p{
    font-size:1.25rem;
  }
  body.post-name-hospital .hospital-search .hospital-list .hospital-item .arrow{
    inset:auto 1.25rem 1.25rem auto;
  }
}
@media screen and (max-width:768px) {
  body.post-name-hospital .hospital-col .hospital-text{
    width: 100%;
  }
  body.post-name-hospital .hospital-col .hospital-image{
    width: 100%;
  }
  body.post-name-hospital .hospital-col .hospital-text .h_style03{
    font-size:1.49rem;
  }
  body.post-name-hospital .hospital-col .hospital-text p{
    margin-bottom:0;
  }
  body.post-name-hospital .hospital-search .hospital-list{
    gap:1em 2%;
  }
  body.post-name-hospital .hospital-search .hospital-list .hospital-item{
     width: 48%;
  }
  body.post-name-hospital .hospital-search .hospital-list .hospital-item a{
    padding:1em;
    border-radius:10px;
  }
  body.post-name-hospital .hospital-search .hospital-list .hospital-item .hospital-img{
    margin-bottom: 0.75em;
  }
  body.post-name-hospital .hospital-search .hospital-list .hospital-item p{
    font-size:1rem;
  }
  body.post-name-hospital .hospital-search .hospital-list .hospital-item .arrow{
    inset:auto 1rem 1rem auto;
    width: 2.25em;
  }
  body.post-name-hospital .hospital-search .hospital-list .hospital-item .arrow:before{
    --arrow_wide: 0.625em;
  }
  body.post-name-hospital .hospital-search{
    margin-bottom:3em;
  }
  body.post-name-hospital .link-wrap{
    padding-block:3em;
  }
}




body.post-name-individual .page-header{
	background:var(--sub01);
}
body.post-name-individual .page-header:after{
	opacity: 0.13;
}
body.post-name-individual .page-header .page-header-title{
  color:#fff;
}
body.post-name-individual .individual-col{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  flex-wrap:wrap;
  gap:1em;
}
body.post-name-individual .individual-col .individual-text{
  width: calc(52% - 1em);
}
body.post-name-individual .individual-col .individual-text .h_style03{
  font-size:2rem;
}
body.post-name-individual .individual-col .individual-text p{
  line-height:1.875;
}
body.post-name-individual .individual-col .individual-image{
  width: 48%;
}
body.post-name-individual .individual-col .individual-image img{
  border-radius:20px;
}
body.post-name-individual .individual-search{
  margin-bottom:6em;
}
body.post-name-individual .individual-search hgroup{
  margin-bottom:4em;
}
body.post-name-individual .individual-wrap{
  position:relative;
  z-index:10;
}
body.post-name-individual .individual-wrap .individual-place a{
  position:absolute;
  border-radius:50%;
  font-size:1.5rem;
  width:6.5em;
  background:var(--key);
  display:flex;
  justify-content:center;
  align-items:center;
  aspect-ratio: 1 / 1;
  flex-direction:column;
  color:#fff;
  font-weight:500;
  z-index: 10;
}
body.post-name-individual .individual-wrap .individual-place a:before,
body.post-name-individual .individual-wrap .individual-place a:after{
  content:"";
  width:3px;
  background:var(--key);
  position:absolute;
  z-index: -1;
}
body.post-name-individual .individual-wrap .individual-place .place-item01{
  inset: 0% auto auto 38%;
}
body.post-name-individual .individual-wrap .individual-place .place-item01:before{
  display:none;
}
body.post-name-individual .individual-wrap .individual-place .place-item01:after{
  height:8em;
  inset:auto 0 -6em 0;
  transform:rotate(30deg)
}
body.post-name-individual .individual-wrap .individual-place .place-item02{
  inset: 8% auto auto 58%;
}
body.post-name-individual .individual-wrap .individual-place .place-item02:before{
  height:4.5em;
  inset:auto 0 -2em -0.75em;
  transform:rotate(40deg)
}
body.post-name-individual .individual-wrap .individual-place .place-item02:after{
  height:4em;
  inset:auto 0 -3.5em 3em;
  transform:rotate(0deg)
}
body.post-name-individual .individual-wrap .individual-place .place-item03{
  inset: 20% auto auto 88%;
}
body.post-name-individual .individual-wrap .individual-place .place-item03:before{
  display:none;
}
body.post-name-individual .individual-wrap .individual-place .place-item03:after{
  height:6em;
  inset:auto 0 -4em 0;
  transform:rotate(30deg)
}
body.post-name-individual .individual-wrap .individual-place .place-item04{
  inset: 70% auto auto 85%;
}
body.post-name-individual .individual-wrap .individual-place .place-item04:after{
  height:8em;
  inset: auto 0em 2em -2em;
  transform: rotate(110deg);
  z-index: -1;
}
body.post-name-individual .individual-wrap .individual-place .place-item05{
  inset: 63% auto auto 5%;
}
body.post-name-individual .individual-wrap .individual-place .place-item05:before{
  display:none;
}
body.post-name-individual .individual-wrap .individual-place .place-item05:after{
  height: 8em;
  inset: -4em -3em auto auto;
  transform: rotate(70deg);
}
body.post-name-individual .individual-wrap .individual-place .place-item06{
  inset: 72% auto auto 19%;
}
body.post-name-individual .individual-wrap .individual-place .place-item06:before{
  display:none;
}
body.post-name-individual .individual-wrap .individual-place .place-item06:after{
  height: 7em;
  inset: -3.5em -1em auto auto;
  transform: rotate(60deg);
}
body.post-name-individual .individual-wrap .individual-place .place-item07{
  inset: 85% auto auto 32%;
}
body.post-name-individual .individual-wrap .individual-place .place-item07:before{
  display:none;
}
body.post-name-individual .individual-wrap .individual-place .place-item07:after{
  height: 9em;
  inset: -6em 0 auto 6em;
  transform: rotate(25deg);
  margin:auto;
}
body.post-name-individual .individual-wrap .individual-place .place-item08{
  inset: 90% auto auto 47%;
}
body.post-name-individual .individual-wrap .individual-place .place-item08:before{
  display:none;
}
body.post-name-individual .individual-wrap .individual-place .place-item08:after{
  height: 5em;
  inset: -5em 0 auto 0em;
  transform: rotate(-0deg);
  margin:auto;
}
body.post-name-individual .individual-wrap .individual-place a p{
  margin-bottom: 0.375em;
  line-height: 1;
}
body.post-name-individual .individual-wrap .individual-place a span{
  position:absolute;
  inset: 0.625em 0 auto 0;
  margin:auto;
  max-width:fit-content;
  display: block;
  height: 18px;
}
body.post-name-individual .individual-wrap .individual-place a span img{
  position: relative;
  top: -0.75em;
}
body.post-name-individual .individual-wrap .individual-place a .arrow{
  --arrow_color: var(--fontcolor);
  position: absolute;
  display: block;
  background: var(--accent);
  width: 1.917em;
  aspect-ratio: 46 / 27;
  border-radius: 1.625em;
  inset: auto 0 1.25em 0;
  margin:auto;
}
body.post-name-individual .individual-wrap .individual-place a .arrow:before{
  position: absolute;
  content: "";
  display: block;
  --arrow_wide: 0.542em;
  width: var(--arrow_wide);
  aspect-ratio: 13/11;
  mask: center center / contain repeat-x;
  mask-image: url(../img/common/icon-arrow.svg);
  background-color: var(--key);
  inset:0;
  margin:auto;
}

body.post-name-individual .link-wrap{
  padding-block: 5.5em;
}
body.post-name-individual .link-wrap:after{
  display:none;
}
body.post-name-individual .rental-gide{
  position:relative;
  z-index: 10;
  padding-block: 5em 5em;
  margin-top: 10em;
}
body.post-name-individual .rental-gide::before {
  position:absolute;
  z-index: -5;
  display:inline-block;
  content:"";
  width: 100vw;
  height: 100%;
  background:#fff;
  inset:auto auto 0 50%;
  translate:-50%;
}
body.post-name-individual .rental-gide h2{
  margin-top:0;
}
body.post-name-individual .rental-gide h4.wp-block-heading{
 padding-block:0.759em 0.759em;
}
@media (hover: hover) and (pointer: fine),
(hover: none) and (pointer: coarse) {
  body.post-name-individual .individual-search .individual-list .individual-item a:hover{
    transform: translateY(3px);
  }
  body.post-name-individual .individual-wrap .individual-place a:hover .arrow:before{
      mask-position: var(--arrow_wide) center;
      transition: .3s;
  }
  body.post-name-individual #global-header #global-nav>ul>li a:hover{
     filter:none;
  }
}
@media screen and (max-width:1270px) {
  body.post-name-individual .individual-wrap .individual-place a{
    font-size:min(2vw,1.5rem);
  }
  body.post-name-individual .individual-wrap .individual-place a span{
    width:43%;
  }
}
@media screen and (max-width:992px) {
  body.post-name-individual .main-section{
    margin-bottom:0;
  }
}
@media screen and (max-width:768px) {
  body.post-name-individual .individual-col .individual-text{
    width: 100%;
  }
  body.post-name-individual .individual-col .individual-image{
    width: 100%;
  }
  body.post-name-individual .individual-col .individual-text .h_style03{
    font-size:1.49rem;
  }
  body.post-name-individual .individual-col .individual-text p{
    margin-bottom:0;
  }
  body.post-name-individual .individual-wrap .individual-place a:before,
  body.post-name-individual .individual-wrap .individual-place a:after{
    display:none;
  }
  body.post-name-individual .individual-wrap .individual-place .place-item01,
  body.post-name-individual .individual-wrap .individual-place .place-item02,
  body.post-name-individual .individual-wrap .individual-place .place-item03,
  body.post-name-individual .individual-wrap .individual-place .place-item04,
  body.post-name-individual .individual-wrap .individual-place .place-item05,
  body.post-name-individual .individual-wrap .individual-place .place-item06,
  body.post-name-individual .individual-wrap .individual-place .place-item07,
  body.post-name-individual .individual-wrap .individual-place .place-item08{
    position:relative;
    inset:0;
  }
  body.post-name-individual .individual-wrap .individual-place{
    display:flex;
    justify-content:space-between;
    align-items:stretch;
    flex-wrap:wrap;
    gap:1em 2%;
    margin-top: 1.5em;
  }
  body.post-name-individual .individual-wrap .individual-place a{
    font-size:1rem;
    width: 48%;
    aspect-ratio:inherit;
    border-radius:5px;
    justify-content:flex-start;
    align-items:flex-start;
    padding:1em;
  }
  body.post-name-individual .individual-wrap .individual-place a p{
    margin-bottom:0;
  }
  body.post-name-individual .individual-wrap .individual-place a span{
    display:none;
  }
  body.post-name-individual .individual-wrap .individual-place a span img{
    top: -0.25em;
  }
  body.post-name-individual .individual-wrap .individual-place a .arrow{
    inset: 0 1rem 0 auto;
    width: 2.25em;
  }
  body.post-name-individual .individual-wrap .individual-place a .arrow:before{
    --arrow_wide: 0.625em;
  }
  body.post-name-individual .individual-search{
    margin-bottom:3em;
  }
  body.post-name-individual .link-wrap{
    padding-block:3em;
  }
  body.post-name-individual .individual-search hgroup{
    margin-bottom:1em;
  }
  body.post-name-individual .rental-gide{
    padding-block:3em 3em;
    margin-top:0;
  }
}



body.post-name-reason .reason-col{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  flex-wrap:wrap;
  gap:1em;
}
body.post-name-reason .reason-col .reason-text{
  width: calc(52% - 1em);
}
body.post-name-reason .reason-col .reason-text .h_style03{
  font-size:2rem;
  margin-block: 0 0.75em;
}
body.post-name-reason .reason-col .reason-text p{
  line-height:1.875;
}
body.post-name-reason .reason-col .reason-image{
  width: 48%;
}
body.post-name-reason .reason-col .reason-image img{
  border-radius:20px;
}
body.post-name-reason  .reason-wrap .h_style02{
  border-bottom:none;
  padding-bottom:0;
  text-align:center;
}
body.post-name-reason  .reason-wrap .h_style02 strong{
  color:var(--key);
  font-size:2em;
  font-weight: 600;
}
body.post-name-reason  .reason-wrap .h_style02:before{
  display:none;
}
body.post-name-reason .reason-box{
  margin-top:5em;
  padding-bottom: 7em;
}
body.post-name-reason .reason-box .reason-item{
 background:#fff;
 padding: 65px 50px;
 border-radius:20px;
 box-shadow: 0 0 10px rgba(0,0,0,0.05);
 display:flex;
 justify-content:space-between;
 align-items:stretch;
 flex-wrap:wrap;
 gap:1em;
}
body.post-name-reason .reason-box .reason-item + .reason-item{
  margin-top:3em;
}
body.post-name-reason .reason-box .item01{
  --reason-color:#3eb2d2;
}
body.post-name-reason .reason-box .item02{
  --reason-color:#c0c662;
  padding:70px 0 0 0;
}
body.post-name-reason .reason-box .item03{
  --reason-color:#f4bb4f;
}
body.post-name-reason .reason-box .item04{
  --reason-color:#f58e5e;
}
body.post-name-reason .reason-box .item05{
  --reason-color:#e07c97;
}
body.post-name-reason .reason-box .reason-item .reason-item-txt h3{
  font-size:1.75rem;
  font-weight:bold;
  color:var(--reason-color);
  position:relative;
  padding-left:2.75em;
  margin-bottom: 0.75em;
}
body.post-name-reason .reason-box .reason-item .reason-item-txt h3 i{
  background:var(--reason-color);
  color:#fff;
  border-radius:50%;
  aspect-ratio:1 / 1;
  position:absolute;
  inset:0 auto 0 0;
  margin:auto;
  display:flex;
  justify-content:center;
  align-items:center;
  width:2.3572em;
}
body.post-name-reason .reason-box .reason-item .reason-item-txt p{
  padding-left:4.75em;
  margin-bottom: 0;
}
body.post-name-reason .reason-box .reason-item .reason-item-list{
  list-style:none;
  padding:0;
  margin:0;
  display:flex;
  justify-content:flex-start;
  align-items:center;
  flex-wrap:wrap;
  gap:1em;
  padding-left: 4.75em;
  margin-top: 2.25em;
}
body.post-name-reason .reason-box .reason-item .reason-item-list li{
  font-size:1.125rem;
  font-weight:bold;
  color:#fff;
  background:var(--reason-color);
  border-radius:27px;
  width:13.73em;
  min-height:3em;
  line-height:1.2;
  display:flex;
  justify-content:center;
  align-items:center;
  text-align: center;
}
body.post-name-reason .reason-box .item01{
  flex-wrap:nowrap;
}
body.post-name-reason .reason-box .item01 .reason-item-img img{
  border-radius:20px;
}
body.post-name-reason .reason-box .item01 .reason-item-list{
  flex-wrap:nowrap;
}
body.post-name-reason .reason-box .item02 .reason-item-txt{
  padding-inline:50px;
}
body.post-name-reason .reason-box .item02 .reason-item-img-wrap{
  display:block;
  width: 100%;
}
body.post-name-reason .reason-box .item02 .reason-item-img-wrap .img-wrap{
  text-align:right;
  margin-top: 1em;
}
body.post-name-reason .bg-white{
  position:relative;
}
body.post-name-reason .reason-area{
  padding-block:5em;
}
body.post-name-reason .reason-area .h_style03{
  margin-top:0;
  text-align:center;
  font-size: 2rem;
  letter-spacing: 0;
}
body.post-name-reason .reason-area p{
  text-align:center;
  line-height: 1.875;
}
body.post-name-reason .reason-area p:last-child{
  margin-bottom:0;
}
body.post-name-reason .bg-white::before {
  position:absolute;
  z-index: -5;
  display:inline-block;
  content:"";
  width: 100vw;
  height: 100%;
  background:#fff;
  inset:auto auto 0 50%;
  translate:-50%;
}
body.post-name-reason .reason-area .link-wrap{
  padding:0;
  margin-top:3em;
}
body.post-name-reason .reason-area .link-wrap:after{
  display:none;
}
body.post-name-reason .link-wrap .link-btn p{
  text-align:left;
}
@media (hover: hover) and (pointer: fine),
(hover: none) and (pointer: coarse) {

}
@media screen and (max-width:1300px) {
  body.post-name-reason .reason-box .reason-item{
    padding:45px 30px;
  }
  body.post-name-reason .reason-box .item02{
    padding:45px 0 0 0;
  }
  body.post-name-reason .reason-box .reason-item .reason-item-txt h3{
    font-size:1.5rem;
  }
  body.post-name-reason .reason-box .reason-item .reason-item-list{
    margin-top:1em;
  }
  body.post-name-reason .reason-box .reason-item .reason-item-list li{
    font-size:0.875rem;
  }
}
@media screen and (max-width:992px) {
  body.post-name-reason .main-section{
    margin-bottom:0;
  }
}
@media screen and (max-width:768px) {
  body.post-name-reason .reason-col .reason-text{
    width: 100%;
  }
  body.post-name-reason .reason-col .reason-image{
    width: 100%;
  }
  body.post-name-reason .reason-col .reason-text .h_style03{
    font-size:1.49rem;
  }
  body.post-name-reason .reason-col .reason-text p{
    margin-bottom:0;
  }
  body.post-name-reason .reason-box{
    margin-top:3em;
    padding-bottom: 4.5em;
  }
  body.post-name-reason .reason-box .reason-item{
   padding: 25px 15px;
   border-radius:10px;
   gap: 1.5em 2%;
   flex-wrap: wrap;
  }
  body.post-name-reason .reason-box .reason-item + .reason-item{
    margin-top: 1.5em;
  }
  body.post-name-reason .reason-wrap .h_style02{
    font-size:1.49rem;
  }
  body.post-name-reason .reason-box .reason-item .reason-item-txt h3{
    font-size: 1.357rem;
  }
  body.post-name-reason .reason-box .reason-item .reason-item-txt h3 i{
    width:2.3572em;
  }
  body.post-name-reason .reason-box .reason-item .reason-item-txt p{
    padding-left: 0;
    margin-bottom: 0;
  }
  body.post-name-reason .reason-box .reason-item .reason-item-list{
    gap: 1em 2%;
    padding-left: 0;
    margin-top: 1em;
    flex-wrap: wrap;
  }
  body.post-name-reason .reason-box .reason-item .reason-item-list li{
    font-size: 0.86rem;
    width: 48%;
    min-height:3em;
  }
  body.post-name-reason .reason-box .item02 .reason-item-txt{
    padding-inline:0;
  }
  body.post-name-reason .reason-box .item02 .reason-item-img-wrap .img-wrap + .img-wrap{
    margin-top: 1.5em;
  }
body.post-name-reason .reason-box .item02 .reason-item-img-wrap .img-wrap:nth-child(2){
    margin-top:0;
  }
  body.post-name-reason .reason-area{
    padding-block:3em;
  }
  body.post-name-reason .reason-area .h_style03{
    font-size:1.5rem;
    text-align:left;
  }
  body.post-name-reason .reason-area p{
    text-align:left;
  }
  body.post-name-reason .reason-area .link-wrap{
    margin-top:1.5em;
  }
}