@charset "UTF-8";
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
.top-mv {
  padding-top: 4.8611111111vw;
  position: relative;
}
@media (max-width: 767px) {
  .top-mv {
    padding-top: 2.1333333333vw;
  }
}
.top-mv .ttl {
  font-weight: 700;
  font-size: clamp(48px * 0.8, 3.3333333333vw, 48px * 1.05);
  line-height: 1.5;
  min-height: 10vw;
  color: #009333;
  width: fit-content;
  margin-left: 9.8611111111vw;
  position: relative;
  z-index: 100;
}
@media (max-width: 767px) {
  .top-mv .ttl {
    font-size: 7.4666666667vw;
    line-height: 1.3928571429;
    margin-left: 18.4vw;
    min-height: 0;
  }
}
.top-mv .ttl:before {
  content: "";
  display: block;
  width: 16.6666666667vw;
  aspect-ratio: 240/226;
  background-image: url(../../img/common/icn_leaf.svg);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain;
  position: absolute;
  top: -2.8472222222vw;
  left: -9.3055555556vw;
}
@media (max-width: 767px) {
  .top-mv .ttl:before {
    width: 27.4666666667vw;
    top: -3.4666666667vw;
    left: -20.5333333333vw;
  }
}
.top-mv .ttl > span {
  display: block;
  position: relative;
  filter: drop-shadow(0 0.1388888889vw 0.2777777778vw rgba(0, 102, 51, 0.2));
}
@media (max-width: 767px) {
  .top-mv .ttl > span {
    filter: drop-shadow(0 0.5333333333vw size_sc(4) rgba(0, 102, 51, 0.2));
  }
}
.top-mv .ttl > span:last-of-type {
  margin-left: 2em;
}
@media (max-width: 767px) {
  .top-mv .ttl > span:last-of-type {
    margin-left: 0;
  }
}
.top-mv .img_list {
  min-width: 69.5138888889vw;
  height: 40.0694444444vw;
  position: absolute;
  top: 0;
  left: 30.625vw;
  right: 0;
  width: auto;
  overflow: hidden;
  box-sizing: border-box;
  border-radius: 3.4722222222vw 0 0 3.4722222222vw;
}
@media (max-width: 767px) {
  .top-mv .img_list {
    min-width: 100%;
    width: 100%;
    right: auto;
    height: 80.2666666667vw;
    top: 25.0666666667vw;
    left: 0;
    border-radius: 0;
  }
}
.top-mv .img_list.swiper {
  display: block;
}
.top-mv .img_list .swiper-wrapper {
  align-items: stretch;
}
.top-mv .img_list .swiper-slide {
  width: calc(46.25vw + 1.5277777778vw);
  flex-shrink: 0;
  box-sizing: border-box;
  padding-right: 1.5277777778vw;
  height: 40.0694444444vw;
}
@media (max-width: 767px) {
  .top-mv .img_list .swiper-slide {
    width: calc(72.8vw + 2.4vw);
    padding-right: 2.4vw;
    height: 80.2666666667vw;
  }
}
.top-mv .img_list .top-mv-slide__inner {
  border-radius: 3.4722222222vw;
  overflow: hidden;
  height: 100%;
}
@media (max-width: 767px) {
  .top-mv .img_list .top-mv-slide__inner {
    border-radius: 6.6666666667vw;
  }
}
.top-mv .img_list .top-mv-slide__inner img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.top-mv .nav_list {
  display: flex;
  gap: 0.6944444444vw;
  margin-top: 4.5138888889vw;
  margin-left: 10.8333333333vw;
  min-height: 19.375vw;
}
@media (max-width: 767px) {
  .top-mv .nav_list {
    width: 94.4vw;
    flex-wrap: wrap;
    gap: 2.1333333333vw 2.6666666667vw;
    margin-top: 87.2vw;
    margin-left: auto;
    margin-right: auto;
    min-height: 0;
  }
}
.top-mv .nav_list > li {
  position: relative;
  z-index: 100;
}
@media (max-width: 767px) {
  .top-mv .nav_list > li {
    width: calc((100% - 2.6666666667vw) / 2);
  }
}
.top-mv .nav_list > li > a {
  display: block;
  background-color: #fff;
  border-radius: 0.6944444444vw;
  padding: 1.5972222222vw 1.3194444444vw 4.0277777778vw;
  box-sizing: border-box;
  filter: drop-shadow(0 0.1388888889vw 0.2777777778vw rgba(0, 102, 51, 0.2));
  position: relative;
}
@media (max-width: 767px) {
  .top-mv .nav_list > li > a {
    border-radius: 2.6666666667vw;
    padding: 4vw 2.6666666667vw;
    filter: drop-shadow(0 0.5333333333vw 1.0666666667vw rgba(0, 102, 51, 0.2));
    display: flex;
  }
}
.top-mv .nav_list > li > a:before {
  content: "";
  display: block;
  width: 1.9444444444vw;
  aspect-ratio: 28/28;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  margin: 0 auto 0.6944444444vw;
  transition: 0.3s;
}
@media (max-width: 767px) {
  .top-mv .nav_list > li > a:before {
    width: 7.4666666667vw;
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 2.1333333333vw;
  }
}
.top-mv .nav_list > li > a:after {
  content: "";
  display: block;
  width: 1.3888888889vw;
  aspect-ratio: 18/18;
  background-image: url(../../img/common/icn_circle_arrow.svg);
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0.3472222222vw;
  right: 0.3472222222vw;
}
@media (max-width: 767px) {
  .top-mv .nav_list > li > a:after {
    width: 5.3333333333vw;
    position: static;
    margin-left: auto;
  }
}
.top-mv .nav_list > li > a:hover {
  filter: none;
}
.top-mv .nav_list > li > a:hover {
  background-color: #006633;
}
@media (max-width: 767px) {
  .top-mv .nav_list > li > a:hover {
    background-color: #fff;
  }
}
.top-mv .nav_list > li > a:hover > span {
  color: #fff;
}
@media (max-width: 767px) {
  .top-mv .nav_list > li > a:hover > span {
    color: #006633;
  }
}
.top-mv .nav_list > li > a.im:before {
  background-image: url(../../img/common/icn_im-green.svg);
  background-size: 1.8055555556vw auto;
}
@media (max-width: 767px) {
  .top-mv .nav_list > li > a.im:before {
    background-size: 6.9333333333vw auto;
  }
}
.top-mv .nav_list > li > a.im:hover:before {
  background-image: url(../../img/common/icn_im-white.svg);
}
@media (max-width: 767px) {
  .top-mv .nav_list > li > a.im:hover:before {
    background-image: url(../../img/common/icn_im-green.svg);
  }
}
.top-mv .nav_list > li > a.gastro:before {
  background-image: url(../../img/common/icn_gastro-green.svg);
  background-size: 1.9444444444vw auto;
}
@media (max-width: 767px) {
  .top-mv .nav_list > li > a.gastro:before {
    background-size: 7.4666666667vw auto;
  }
}
.top-mv .nav_list > li > a.gastro:hover:before {
  background-image: url(../../img/common/icn_gastro-white.svg);
}
@media (max-width: 767px) {
  .top-mv .nav_list > li > a.gastro:hover:before {
    background-image: url(../../img/common/icn_gastro-green.svg);
  }
}
.top-mv .nav_list > li > a.cardiology:before {
  background-image: url(../../img/common/icn_cardiology-green.svg);
  background-size: 1.875vw auto;
}
@media (max-width: 767px) {
  .top-mv .nav_list > li > a.cardiology:before {
    background-size: 7.2vw auto;
  }
}
.top-mv .nav_list > li > a.cardiology:hover:before {
  background-image: url(../../img/common/icn_cardiology-white.svg);
}
@media (max-width: 767px) {
  .top-mv .nav_list > li > a.cardiology:hover:before {
    background-image: url(../../img/common/icn_cardiology-green.svg);
  }
}
@media (max-width: 767px) {
  .top-mv .nav_list > li > a.ent {
    padding-top: 2.4vw;
    padding-bottom: 2.4vw;
  }
}
.top-mv .nav_list > li > a.ent:before {
  background-image: url(../../img/common/icn_ent-green.svg);
  background-size: 1.25vw auto;
}
@media (max-width: 767px) {
  .top-mv .nav_list > li > a.ent:before {
    background-size: 4.8vw auto;
  }
}
.top-mv .nav_list > li > a.ent:hover:before {
  background-image: url(../../img/common/icn_ent-white.svg);
}
@media (max-width: 767px) {
  .top-mv .nav_list > li > a.ent:hover:before {
    background-image: url(../../img/common/icn_ent-green.svg);
  }
}
.top-mv .nav_list > li > a.ent > span {
  display: flex;
  flex-direction: row-reverse;
  width: 2.25em;
}
@media (max-width: 767px) {
  .top-mv .nav_list > li > a.ent > span {
    display: block;
    width: auto;
  }
  .top-mv .nav_list > li > a.ent > span > span {
    display: block;
    text-align: left;
    line-height: 1.2;
  }
}
.top-mv .nav_list > li > a > span {
  text-align: center;
  width: 1.5em;
  height: 6.6666666667em;
  display: block;
  color: #006633;
  font-size: clamp(24px * 0.8, 1.6666666667vw, 24px * 1.05);
  font-weight: 700;
  line-height: 1.3333333333;
  transition: 0.3s;
}
@media (max-width: 767px) {
  .top-mv .nav_list > li > a > span {
    width: auto;
    height: auto;
    font-size: 4.8vw;
    line-height: 1.7777777778;
  }
}

.top-news {
  margin: 7.2222222222vw auto 0;
  display: flex;
  width: clamp(878px * 0.8, 60.9722222222vw, 878px * 1.05);
}
@media (max-width: 820px) {
  .top-news {
    width: 83.3333333333vw;
  }
}
@media (max-width: 767px) {
  .top-news {
    width: 89.3333333333vw;
    margin-top: 16vw;
    display: block;
  }
}
.top-news > .wrap {
  width: clamp(178px * 0.8, 12.3611111111vw, 178px * 1.05);
}
@media (max-width: 767px) {
  .top-news > .wrap {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
}
.top-news > .wrap > .ttl .en {
  color: #006633;
  font-weight: 700;
  font-size: clamp(32px * 0.8, 2.2222222222vw, 32px * 1.05);
  line-height: 1.4375;
}
@media (max-width: 767px) {
  .top-news > .wrap > .ttl .en {
    font-size: 8.5333333333vw;
    line-height: 1.4375;
  }
}
.top-news > .wrap > .ttl .ja {
  font-weight: 700;
  color: #006633;
  font-size: clamp(14px * 0.8, 0.9722222222vw, 14px * 1.05);
  line-height: 1.4285714286;
  margin-top: -0.5555555556vw;
}
@media (max-width: 767px) {
  .top-news > .wrap > .ttl .ja {
    font-size: 3.7333333333vw;
    line-height: 1.4285714286;
    margin-top: -2.1333333333vw;
  }
}
.top-news > .wrap > a {
  color: #006633;
  font-weight: 700;
  font-size: clamp(16px * 0.8, 1.1111111111vw, 16px * 1.05);
  line-height: 1.4375;
  display: flex;
  align-items: center;
  margin-top: 2.9861111111vw;
}
@media (max-width: 767px) {
  .top-news > .wrap > a {
    font-size: 3.7333333333vw;
    line-height: 1.4285714286;
    margin-top: 3.4666666667vw;
  }
}
.top-news > .wrap > a:after {
  content: "";
  display: block;
  width: clamp(18px * 0.8, 1.25vw, 18px * 1.05);
  aspect-ratio: 18/18;
  background-image: url(../../img/common/icn_circle_arrow.svg);
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: contain;
  margin-left: clamp(16px * 0.8, 1.1111111111vw, 16px * 1.05);
}
@media (max-width: 767px) {
  .top-news > .wrap > a:after {
    width: 4.2666666667vw;
    margin-left: 2.6666666667vw;
  }
}
.top-news > .wrap > a:hover {
  color: #009333;
}
@media (max-width: 767px) {
  .top-news > .wrap > a:hover {
    color: #006633;
  }
}
@media (max-width: 767px) {
  .top-news > .wrap > a:hover {
    border-color: #006633;
  }
}
.top-news .list {
  width: calc(100% - clamp(178px * 0.8, 12.3611111111vw, 178px * 1.05));
  margin-left: auto;
}
@media (max-width: 767px) {
  .top-news .list {
    width: 100%;
    margin-top: 8vw;
  }
}
.top-news .list > li {
  margin-top: 1.3888888889vw;
}
@media (max-width: 767px) {
  .top-news .list > li {
    margin-top: 5.3333333333vw;
  }
}
.top-news .list > li:first-of-type {
  margin-top: 0;
}
.top-news .list > li > a {
  display: flex;
  align-items: center;
}
@media (max-width: 767px) {
  .top-news .list > li > a {
    flex-wrap: wrap;
  }
}
.top-news .list > li > a:hover .news_ttl {
  color: #009333;
}
@media (max-width: 767px) {
  .top-news .list > li > a:hover .news_ttl {
    color: #006633;
  }
}
.top-news .list > li > a:hover .news_ttl:after {
  right: 0;
}
.top-news .list > li > a .cat {
  width: clamp(160px * 0.8, 11.1111111111vw, 160px * 1.05);
}
@media (max-width: 767px) {
  .top-news .list > li > a .cat {
    width: fit-content;
  }
}
.top-news .list > li > a .cat > .txt {
  font-size: clamp(14px * 0.8, 0.9722222222vw, 14px * 1.05);
  font-weight: 500;
  line-height: 1.4285714286;
  color: #006633;
  border: clamp(1px * 0.8, 0.0694444444vw, 1px * 1.05) solid #006633;
  padding: clamp(4px * 0.8, 0.2777777778vw, 4px * 1.05) clamp(15px * 0.8, 1.0416666667vw, 15px * 1.05) clamp(2px * 0.8, 0.1388888889vw, 2px * 1.05);
  text-align: center;
  box-sizing: border-box;
  border-radius: clamp(30px * 0.8, 2.0833333333vw, 30px * 1.05);
  width: fit-content;
  min-width: clamp(130px * 0.8, 9.0277777778vw, 130px * 1.05);
}
@media (max-width: 767px) {
  .top-news .list > li > a .cat > .txt {
    font-size: 3.2vw;
    line-height: 1.25;
    border-width: 0.2666666667vw;
    padding: 0.8vw 2.6666666667vw;
    min-width: 24vw;
    border-radius: 8vw;
    margin-right: 2.6666666667vw;
  }
}
.top-news .list > li > a .date {
  font-weight: 500;
  font-size: clamp(14px * 0.8, 0.9722222222vw, 14px * 1.05);
  line-height: 1.4285714286;
  letter-spacing: 0.05em;
  width: clamp(94px * 0.8, 6.5277777778vw, 94px * 1.05);
}
@media (max-width: 767px) {
  .top-news .list > li > a .date {
    font-size: 3.7333333333vw;
    line-height: 1.4285714286;
    width: auto;
  }
}
.top-news .list > li > a .news_ttl {
  width: calc(100% - clamp(160px * 0.8, 11.1111111111vw, 160px * 1.05) - clamp(94px * 0.8, 6.5277777778vw, 94px * 1.05));
  font-weight: 700;
  font-size: clamp(16px * 0.8, 1.1111111111vw, 16px * 1.05);
  line-height: 1.4375;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #006633;
  transition: 0.3s;
  margin-left: auto;
  position: relative;
  padding-right: 2.7777777778vw;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  .top-news .list > li > a .news_ttl {
    width: 100%;
    font-size: 4.2666666667vw;
    padding-right: 4.5333333333vw;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    word-break: break-all;
    text-overflow: clip;
    white-space: normal;
    line-height: 1.5;
    max-height: 3em;
    margin-top: 2.6666666667vw;
  }
}
.top-news .list > li > a .news_ttl:after {
  content: "";
  display: block;
  width: clamp(8px * 0.8, 0.5555555556vw, 8px * 1.05);
  aspect-ratio: 8/14;
  background-image: url(../../img/common/icn_arrow-green.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  transition: 0.3s;
  position: absolute;
  top: 50%;
  right: clamp(4px * 0.8, 0.2777777778vw, 4px * 1.05);
  transform: translateY(-50%);
}
@media (max-width: 767px) {
  .top-news .list > li > a .news_ttl:after {
    width: 1.6vw;
    right: 0;
  }
}

.top-intro {
  display: flex;
  align-items: flex-start;
  position: relative;
  margin-top: 8.8888888889vw;
}
@media (max-width: 767px) {
  .top-intro {
    display: block;
    margin-top: 26.6666666667vw;
  }
}
.top-intro:before {
  content: "";
  display: block;
  aspect-ratio: 1280/996;
  width: 44.4444444444vw;
  margin-right: 2.5vw;
  border-radius: 0 5.5555555556vw 5.5555555556vw 0;
  background-image: url(../../img/top/img_intro.webp);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}
@media (max-width: 767px) {
  .top-intro:before {
    width: 90.6666666667vw;
    margin-right: 0;
    border-radius: 0 10.6666666667vw 10.6666666667vw 0;
  }
}
.top-intro:after {
  content: "";
  display: block;
  aspect-ratio: 1438/941;
  width: auto;
  min-width: 100%;
  height: 65.3472222222vw;
  background-image: url(../../img/top/bg_intro.svg);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: auto 100%;
  position: absolute;
  top: -10.7638888889vw;
  left: 0;
  z-index: -1;
}
@media (max-width: 767px) {
  .top-intro:after {
    width: 384vw;
    height: 250.9333333333vw;
    aspect-ratio: auto;
    top: -40vw;
  }
}
.top-intro .wrap {
  width: 44.6527777778vw;
}
@media (max-width: 767px) {
  .top-intro .wrap {
    width: 89.3333333333vw;
    margin: 16vw auto 0;
  }
}
.top-intro .wrap .ttl {
  color: #009333;
  font-weight: 700;
  font-size: clamp(32px * 0.8, 2.2222222222vw, 32px * 1.05);
  line-height: 1.5;
}
@media (max-width: 767px) {
  .top-intro .wrap .ttl {
    font-size: 6.9333333333vw;
  }
}
.top-intro .wrap .desc {
  font-weight: 500;
  font-size: clamp(18px * 0.8, 1.25vw, 18px * 1.05);
  line-height: 2;
  margin-top: 2.7777777778vw;
}
@media (max-width: 767px) {
  .top-intro .wrap .desc {
    font-size: 3.7333333333vw;
    margin-top: 8.5333333333vw;
  }
}
.top-intro .wrap .list {
  margin-top: 3.4722222222vw;
  display: flex;
}
@media (max-width: 767px) {
  .top-intro .wrap .list {
    margin-top: 8.5333333333vw;
    justify-content: space-between;
  }
}
.top-intro .wrap .list > li {
  min-width: 9.5833333333vw;
  margin-right: 2.0833333333vw;
}
@media (max-width: 767px) {
  .top-intro .wrap .list > li {
    min-width: 0;
    margin-right: 0;
  }
}
.top-intro .wrap .list > li:last-of-type {
  margin-right: 0;
}
.top-intro .wrap .list > li > a {
  color: #006633;
  font-size: clamp(14px * 0.8, 0.9722222222vw, 14px * 1.05);
  line-height: 1.4285714286;
  font-weight: 700;
  padding-bottom: 0.5555555556vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 0.0694444444vw solid #006633;
}
@media (max-width: 767px) {
  .top-intro .wrap .list > li > a {
    font-size: 3.4666666667vw;
    padding-bottom: 1.6vw;
    border-width: 0.2666666667vw;
  }
}
.top-intro .wrap .list > li > a:after {
  content: "";
  display: block;
  width: 1.25vw;
  aspect-ratio: 18/18;
  background-image: url(../../img/common/icn_circle_arrow.svg);
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: contain;
}
@media (max-width: 767px) {
  .top-intro .wrap .list > li > a:after {
    width: 4.2666666667vw;
    margin-left: 1em;
  }
}
.top-intro .wrap .list > li > a:hover {
  color: #009333;
}
@media (max-width: 767px) {
  .top-intro .wrap .list > li > a:hover {
    color: #006633;
  }
}
@media (max-width: 767px) {
  .top-intro .wrap .list > li > a:hover {
    border-color: #006633;
  }
}

.top-info {
  margin-top: 5.6944444444vw;
}
@media (max-width: 767px) {
  .top-info {
    margin-top: 26.6666666667vw;
  }
}
.top-info .inner {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .top-info .inner {
    flex-direction: column-reverse;
  }
}
.top-info .inner:after {
  content: "";
  display: block;
  aspect-ratio: 1040/810;
  width: calc(100% - 8.3333333333vw - 53.1944444444vw - 2.2916666667vw);
  border-radius: 5.5555555556vw 0 0 5.5555555556vw;
  background-image: url(../../img/top/img_info.webp);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}
@media (max-width: 767px) {
  .top-info .inner:after {
    width: 90.6666666667vw;
    margin-right: 0;
    margin-left: auto;
    border-radius: 10.6666666667vw 0 0 10.6666666667vw;
  }
}
.top-info .wrap {
  width: 53.1944444444vw;
  margin-left: 8.3333333333vw;
  margin-top: 3.8888888889vw;
}
@media (max-width: 767px) {
  .top-info .wrap {
    width: 89.3333333333vw;
    margin: 16vw auto 0;
  }
}
.top-info .wrap .ttl {
  display: flex;
  align-items: center;
}
@media (max-width: 767px) {
  .top-info .wrap .ttl {
    flex-direction: column-reverse;
  }
}
.top-info .wrap .ttl .ja {
  color: #006633;
  font-size: clamp(32px * 0.8, 2.2222222222vw, 32px * 1.05);
  font-weight: 700;
  line-height: 1.4375;
}
@media (max-width: 767px) {
  .top-info .wrap .ttl .ja {
    font-size: 5.8666666667vw;
    margin-top: 4vw;
  }
}
.top-info .wrap .ttl .en {
  font-weight: 700;
  font-size: clamp(18px * 0.8, 1.25vw, 18px * 1.05);
  line-height: 1.4444444444;
  color: #9EBCAD;
  display: flex;
  align-items: center;
  margin-left: 1.1805555556vw;
}
@media (max-width: 767px) {
  .top-info .wrap .ttl .en {
    font-size: 4.8vw;
    margin-left: 0;
    display: block;
    position: relative;
  }
}
.top-info .wrap .ttl .en:before {
  content: "";
  display: block;
  width: 3.4027777778vw;
  aspect-ratio: 98/142;
  background-image: url(../../img/common/icn_leaf.webp);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain;
  margin-right: 0.6944444444vw;
}
@media (max-width: 767px) {
  .top-info .wrap .ttl .en:before {
    width: 13.0666666667vw;
    margin-right: 0;
    position: absolute;
    top: 50%;
    left: -15.7333333333vw;
    transform: translateY(-50%);
  }
}
.top-info .wrap .list_4cols {
  margin-top: 2.7777777778vw;
  display: flex;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .top-info .wrap .list_4cols {
    margin-top: 8.5333333333vw;
    flex-wrap: wrap;
    gap: 5.3333333333vw;
    width: 72vw;
    margin-left: auto;
    margin-right: auto;
  }
}
.top-info .wrap .list_4cols > li {
  width: 12.3611111111vw;
  aspect-ratio: 178/178;
}
@media (max-width: 767px) {
  .top-info .wrap .list_4cols > li {
    width: calc((100% - 5.3333333333vw) / 2);
  }
}
.top-info .wrap .list_4cols > li > a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  border: 0.0694444444vw solid #006633;
  border-radius: 0.6944444444vw;
  background-color: #fff;
  filter: drop-shadow(0 0.2083333333vw 0.4166666667vw rgba(0, 53, 27, 0.3));
  font-weight: 700;
  color: #006633;
  font-size: clamp(24px * 0.8, 1.6666666667vw, 24px * 1.05);
  line-height: 1.4583333333;
  position: relative;
  text-align: center;
  box-sizing: border-box;
}
@media (max-width: 1200px) {
  .top-info .wrap .list_4cols > li > a {
    font-size: clamp(21px * 0.8, 1.4583333333vw, 21px * 1.05);
  }
}
@media (max-width: 820px) {
  .top-info .wrap .list_4cols > li > a {
    font-size: clamp(18px * 0.8, 1.25vw, 18px * 1.05);
  }
}
@media (max-width: 767px) {
  .top-info .wrap .list_4cols > li > a {
    border-radius: 2.6666666667vw;
    filter: drop-shadow(0 0.8vw 1.6vw rgba(0, 53, 27, 0.3));
    font-size: 4.8vw;
    border-width: 0.2666666667vw;
  }
}
.top-info .wrap .list_4cols > li > a:before {
  content: "";
  display: block;
  width: 3.3333333333vw;
  aspect-ratio: 48/52;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  margin-bottom: 0.5555555556vw;
  transition: 0.3s;
}
@media (max-width: 767px) {
  .top-info .wrap .list_4cols > li > a:before {
    width: 12.8vw;
    margin-bottom: 1.3333333333vw;
  }
}
.top-info .wrap .list_4cols > li > a:after {
  content: "";
  display: block;
  width: 1.25vw;
  aspect-ratio: 18/18;
  background-image: url(../../img/common/icn_circle_arrow.svg);
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0.3472222222vw;
  right: 0.3472222222vw;
}
@media (max-width: 767px) {
  .top-info .wrap .list_4cols > li > a:after {
    width: 3.2vw;
    bottom: 1.0666666667vw;
    right: 1.0666666667vw;
  }
}
.top-info .wrap .list_4cols > li > a:hover {
  filter: none;
}
.top-info .wrap .list_4cols > li > a:hover {
  color: #fff;
}
@media (max-width: 767px) {
  .top-info .wrap .list_4cols > li > a:hover {
    color: #006633;
  }
}
.top-info .wrap .list_4cols > li > a:hover {
  background-color: #006633;
}
@media (max-width: 767px) {
  .top-info .wrap .list_4cols > li > a:hover {
    background-color: #fff;
  }
}
.top-info .wrap .list_4cols > li > a.im:before {
  background-image: url(../../img/common/icn_im-green.svg);
  background-size: 3.2638888889vw auto;
}
@media (max-width: 767px) {
  .top-info .wrap .list_4cols > li > a.im:before {
    background-size: 9.4vw auto;
  }
}
.top-info .wrap .list_4cols > li > a.im:hover:before {
  background-image: url(../../img/common/icn_im-white.svg);
}
@media (max-width: 767px) {
  .top-info .wrap .list_4cols > li > a.im:hover:before {
    background-image: url(../../img/common/icn_im-green.svg);
  }
}
.top-info .wrap .list_4cols > li > a.gastro:before {
  background-image: url(../../img/common/icn_gastro-green.svg);
  background-size: 3.3333333333vw auto;
}
@media (max-width: 767px) {
  .top-info .wrap .list_4cols > li > a.gastro:before {
    background-size: 9.6vw auto;
  }
}
.top-info .wrap .list_4cols > li > a.gastro:hover:before {
  background-image: url(../../img/common/icn_gastro-white.svg);
}
@media (max-width: 767px) {
  .top-info .wrap .list_4cols > li > a.gastro:hover:before {
    background-image: url(../../img/common/icn_gastro-green.svg);
  }
}
.top-info .wrap .list_4cols > li > a.cardiology:before {
  background-image: url(../../img/common/icn_cardiology-green.svg);
  background-size: 3.125vw auto;
}
@media (max-width: 767px) {
  .top-info .wrap .list_4cols > li > a.cardiology:before {
    background-size: 9vw auto;
  }
}
.top-info .wrap .list_4cols > li > a.cardiology:hover:before {
  background-image: url(../../img/common/icn_cardiology-white.svg);
}
@media (max-width: 767px) {
  .top-info .wrap .list_4cols > li > a.cardiology:hover:before {
    background-image: url(../../img/common/icn_cardiology-green.svg);
  }
}
.top-info .wrap .list_4cols > li > a.ent {
  line-height: 1.2;
  padding-top: 0.6944444444vw;
}
@media (max-width: 767px) {
  .top-info .wrap .list_4cols > li > a.ent {
    padding-top: 0;
  }
}
.top-info .wrap .list_4cols > li > a.ent:before {
  background-image: url(../../img/common/icn_ent-green.svg);
  background-size: 2.2916666667vw auto;
  margin-bottom: 0.8333333333vw;
}
@media (max-width: 767px) {
  .top-info .wrap .list_4cols > li > a.ent:before {
    background-size: 6.6vw auto;
  }
}
.top-info .wrap .list_4cols > li > a.ent:hover:before {
  background-image: url(../../img/common/icn_ent-white.svg);
}
@media (max-width: 767px) {
  .top-info .wrap .list_4cols > li > a.ent:hover:before {
    background-image: url(../../img/common/icn_ent-green.svg);
  }
}
.top-info .testList {
  margin-left: 8.3333333333vw;
  margin-right: 8.3333333333vw;
  margin-top: 3.4722222222vw;
  box-shadow: 0 0.2083333333vw 0.4166666667vw rgba(0, 102, 51, 0.3);
  border: 1px solid #006633;
  border-radius: 0.6944444444vw;
  padding: 1.3888888889vw;
}
@media (max-width: 767px) {
  .top-info .testList {
    margin: 10.6666666667vw auto 0;
    width: 89.3333333333vw;
    box-shadow: 0 0.8vw 1.6vw rgba(0, 102, 51, 0.3);
    border-radius: 2.6666666667vw;
    padding: 5.3333333333vw;
    box-sizing: border-box;
  }
}
.top-info .testList dt {
  font-weight: 700;
  font-size: clamp(24px * 0.8, 1.6666666667vw, 24px * 1.05);
  text-align: center;
  line-height: 1.4583333333;
  color: #006633;
}
@media (max-width: 767px) {
  .top-info .testList dt {
    font-size: 4.8vw;
  }
}
.top-info .testList dd {
  font-weight: 700;
  font-size: clamp(18px * 0.8, 1.25vw, 18px * 1.05);
  line-height: 1.4444444444;
  text-align: center;
  margin-top: 0.6944444444vw;
  color: #006633;
}
@media (max-width: 767px) {
  .top-info .testList dd {
    font-size: 3.7333333333vw;
    margin-top: 2.6666666667vw;
  }
}
.top-info .testList dd a {
  text-decoration: underline;
}

.list_2cols {
  margin-top: 3.3333333333vw;
  display: flex;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .list_2cols {
    margin-top: 11.7333333333vw;
    display: block;
  }
}
.list_2cols > li {
  width: 25.9722222222vw;
}
@media (max-width: 767px) {
  .list_2cols > li {
    width: 100%;
    margin-top: 9.6vw;
  }
}
@media (max-width: 767px) {
  .list_2cols > li:first-of-type {
    margin-top: 0;
  }
}
.list_2cols > li > a {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #C7E4D1;
  border-radius: 0.6944444444vw;
  aspect-ratio: 374/132;
  position: relative;
  filter: drop-shadow(0 0.2083333333vw 0.4166666667vw rgba(0, 102, 51, 0.3));
}
@media (max-width: 767px) {
  .list_2cols > li > a {
    border-radius: 2.6666666667vw;
    aspect-ratio: 336/120;
    filter: drop-shadow(0 0.8vw 1.6vw rgba(0, 102, 51, 0.3));
  }
}
.list_2cols > li > a:hover .txt {
  color: #009333;
}
@media (max-width: 767px) {
  .list_2cols > li > a:hover .txt {
    color: #006633;
  }
}
.list_2cols > li > a .note {
  color: #99CC33;
  font-weight: 700;
  font-size: clamp(18px * 0.8, 1.25vw, 18px * 1.05);
  line-height: 1.5;
  position: absolute;
  top: -0.75em;
  left: 0;
  width: 100%;
  text-align: center;
  z-index: 100;
}
@media (max-width: 767px) {
  .list_2cols > li > a .note {
    font-size: 4.8vw;
  }
}
.list_2cols > li > a .note:before {
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.list_2cols > li > a .note.lifestyle-diseases:before {
  width: 4.375vw;
  aspect-ratio: 126/112;
  background-image: url(../../img/top/icn_info01.webp);
}
@media (max-width: 767px) {
  .list_2cols > li > a .note.lifestyle-diseases:before {
    width: 14.6666666667vw;
  }
}
.list_2cols > li > a .note.sleep-apnea-syndrome:before {
  width: 3.6805555556vw;
  aspect-ratio: 106/106;
  background-image: url(../../img/top/icn_info02.webp);
}
@media (max-width: 767px) {
  .list_2cols > li > a .note.sleep-apnea-syndrome:before {
    width: 11.2vw;
  }
}
.list_2cols > li > a .txt {
  color: #006633;
  font-weight: 700;
  font-size: clamp(24px * 0.8, 1.6666666667vw, 24px * 1.05);
  line-height: 1.5;
  transition: 0.3s;
}
@media (max-width: 820px) {
  .list_2cols > li > a .txt {
    font-size: clamp(20px * 0.8, 1.3888888889vw, 20px * 1.05);
  }
}
@media (max-width: 767px) {
  .list_2cols > li > a .txt {
    font-size: 4.8vw;
  }
}
.list_2cols > li > a .txt:before {
  content: "";
  border: 0.1388888889vw solid #fff;
  aspect-ratio: 359/122;
  width: 24.9305555556vw;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 8.4722222222vw;
}
@media (max-width: 767px) {
  .list_2cols > li > a .txt:before {
    width: 84.5333333333vw;
    border-width: 0.5333333333vw;
    aspect-ratio: 317/107;
    border-radius: 28.5333333333vw;
  }
}

.top-access {
  margin: 8.3333333333vw auto 0;
  width: 91.5277777778vw;
  background-image: url(../../img/top/bg_access.webp);
  background-color: #fff;
  border-radius: 3.4722222222vw;
  padding: 5.5555555556vw 4.1666666667vw;
  box-sizing: border-box;
  filter: drop-shadow(0 0.2083333333vw 0.4166666667vw rgba(0, 0, 0, 0.1));
}
@media (max-width: 767px) {
  .top-access {
    margin-top: 21.3333333333vw;
    width: 100%;
    border-radius: 5.3333333333vw;
    padding: 10.6666666667vw 5.3333333333vw 18.6666666667vw;
    filter: drop-shadow(0 0.8vw 1.6vw rgba(0, 0, 0, 0.1));
  }
}
.top-access > .ttl {
  text-align: center;
}
.top-access > .ttl .en {
  font-weight: 700;
  font-size: clamp(18px * 0.8, 1.25vw, 18px * 1.05);
  line-height: 1.4444444444;
  color: #9EBCAD;
  position: relative;
}
@media (max-width: 767px) {
  .top-access > .ttl .en {
    font-size: 4.8vw;
  }
}
.top-access > .ttl .en:before {
  content: "";
  display: block;
  width: 3.4027777778vw;
  aspect-ratio: 98/142;
  background-image: url(../../img/common/icn_leaf.webp);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: -4.0972222222vw;
  transform: translateY(-50%);
}
@media (max-width: 767px) {
  .top-access > .ttl .en:before {
    width: 13.0666666667vw;
    left: -15.7333333333vw;
  }
}
.top-access > .ttl .ja {
  color: #006633;
  font-size: clamp(32px * 0.8, 2.2222222222vw, 32px * 1.05);
  font-weight: 700;
  line-height: 1.4375;
  margin-top: 0.8333333333vw;
}
@media (max-width: 767px) {
  .top-access > .ttl .ja {
    font-size: 5.8666666667vw;
    margin-top: 4vw;
  }
}
.top-access > .wrap {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-top: 3.1944444444vw;
}
@media (max-width: 767px) {
  .top-access > .wrap {
    display: block;
    margin-top: 8vw;
  }
}
.top-access > .wrap > .map {
  width: 39.2361111111vw;
}
@media (max-width: 767px) {
  .top-access > .wrap > .map {
    width: 100%;
  }
}
.top-access > .wrap > .map iframe {
  width: 100%;
  aspect-ratio: 565/392;
  height: auto;
}
.top-access > .wrap > .map .address {
  font-weight: 500;
  font-size: clamp(16px * 0.8, 1.1111111111vw, 16px * 1.05);
  line-height: 1.4375;
  text-align: center;
  margin-top: 0.625vw;
}
@media (max-width: 767px) {
  .top-access > .wrap > .map .address {
    font-size: 3.7333333333vw;
    margin-top: 2.6666666667vw;
  }
}
.top-access > .wrap > .map .parking {
  color: #006633;
  font-weight: 700;
  font-size: clamp(18px * 0.8, 1.25vw, 18px * 1.05);
  margin-top: 0.8333333333vw;
  text-align: center;
  line-height: 1.4444444444;
}
@media (max-width: 767px) {
  .top-access > .wrap > .map .parking {
    font-size: 4.2666666667vw;
    margin-top: 4vw;
  }
}
@media (max-width: 767px) {
  .top-access > .wrap > .info {
    margin-top: 9.0666666667vw;
  }
}
.top-access > .wrap > .info .sub_ttl {
  color: #006633;
  font-weight: 700;
  width: fit-content;
  margin: 2.4305555556vw auto 0;
  font-size: clamp(20px * 0.8, 1.3888888889vw, 20px * 1.05);
  line-height: 1.45;
  display: flex;
  align-items: center;
}
@media (max-width: 767px) {
  .top-access > .wrap > .info .sub_ttl {
    margin-top: 10.6666666667vw;
    font-size: 5.3333333333vw;
  }
}
.top-access > .wrap > .info .sub_ttl:before {
  content: "";
  display: block;
  width: 2.0833333333vw;
  aspect-ratio: 30/1;
  background-color: #006633;
  margin-right: 0.9722222222vw;
}
@media (max-width: 767px) {
  .top-access > .wrap > .info .sub_ttl:before {
    width: 8vw;
    margin-right: 3.7333333333vw;
  }
}
.top-access > .wrap > .info .sub_ttl:after {
  content: "";
  display: block;
  width: 2.0833333333vw;
  aspect-ratio: 30/1;
  background-color: #006633;
  margin-left: 0.9722222222vw;
}
@media (max-width: 767px) {
  .top-access > .wrap > .info .sub_ttl:after {
    width: 8vw;
    margin-left: 3.7333333333vw;
  }
}
.top-access > .wrap > .info .news_list {
  margin-top: 1.0416666667vw;
}
@media (max-width: 767px) {
  .top-access > .wrap > .info .news_list {
    margin-top: 4vw;
  }
}
.top-access > .wrap > .info .news_list > li:not(.empty) {
  margin-top: 0.625vw;
}
@media (max-width: 767px) {
  .top-access > .wrap > .info .news_list > li:not(.empty) {
    margin-top: 2.4vw;
  }
}
.top-access > .wrap > .info .news_list > li:not(.empty):first-of-type {
  margin-top: 0;
}
.top-access > .wrap > .info .news_list > li > a {
  display: flex;
  align-items: center;
  background-color: #fff;
  border-radius: 0.6944444444vw;
  height: 3.1944444444vw;
}
@media (max-width: 767px) {
  .top-access > .wrap > .info .news_list > li > a {
    border-radius: 2.6666666667vw;
    height: auto;
    padding: 5.3333333333vw 2.9333333333vw;
    display: block;
  }
}
.top-access > .wrap > .info .news_list > li > a:hover .date, .top-access > .wrap > .info .news_list > li > a:hover .news_ttl {
  color: #009333;
}
@media (max-width: 767px) {
  .top-access > .wrap > .info .news_list > li > a:hover .date, .top-access > .wrap > .info .news_list > li > a:hover .news_ttl {
    color: #2D2D2D;
  }
}
.top-access > .wrap > .info .news_list > li > a .date {
  font-weight: 500;
  font-size: clamp(14px * 0.8, 0.9722222222vw, 14px * 1.05);
  padding-left: 2.0833333333vw;
  width: 8.8194444444vw;
  transition: 0.3s;
}
@media (max-width: 767px) {
  .top-access > .wrap > .info .news_list > li > a .date {
    font-size: 3.7333333333vw;
    padding-left: 0;
    width: 100%;
    line-height: 1.4285714286;
  }
}
.top-access > .wrap > .info .news_list > li > a .news_ttl {
  width: calc(100% - 8.8194444444vw);
  font-weight: 500;
  font-size: 1.1111111111vw;
  padding-right: 2.0833333333vw;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: 0.3s;
}
@media (max-width: 767px) {
  .top-access > .wrap > .info .news_list > li > a .news_ttl {
    width: 100%;
    font-size: 4.2666666667vw;
    padding-right: 0;
    margin-top: 2.6666666667vw;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    word-break: break-all;
    text-overflow: clip;
    white-space: normal;
    line-height: 1.5;
    max-height: 3em;
    transition: 0.3s;
  }
}
.top-access > .wrap > .info .news_list > li.empty {
  font-size: clamp(16px * 0.8, 1.1111111111vw, 16px * 1.05);
  font-weight: 500;
  line-height: 1.4375;
  margin-top: 2.0833333333vw;
  text-align: center;
}
@media (max-width: 767px) {
  .top-access > .wrap > .info .news_list > li.empty {
    font-size: 3.7333333333vw;
    margin-top: 5.3333333333vw;
  }
}
.top-access .contact_ttl {
  font-weight: 700;
  width: fit-content;
  color: #006633;
  font-size: clamp(20px * 0.8, 1.3888888889vw, 20px * 1.05);
  line-height: 1.45;
  margin: 2.7777777778vw auto 0;
  display: flex;
  align-items: center;
}
@media (max-width: 767px) {
  .top-access .contact_ttl {
    font-size: 5.3333333333vw;
    margin-top: 10.6666666667vw;
  }
}
.top-access .contact_ttl:before {
  content: "";
  display: block;
  width: 1.9444444444vw;
  height: 0.0694444444vw;
  background-color: #006633;
  transform: rotate(62.53deg);
  margin-right: 1.0416666667vw;
}
@media (max-width: 767px) {
  .top-access .contact_ttl:before {
    width: 5.3333333333vw;
    height: 0.2666666667vw;
    margin-right: 2.6666666667vw;
  }
}
.top-access .contact_ttl:after {
  content: "";
  display: block;
  width: 1.9444444444vw;
  height: 0.0694444444vw;
  background-color: #006633;
  transform: rotate(-62.53deg);
  margin-left: 1.0416666667vw;
}
@media (max-width: 767px) {
  .top-access .contact_ttl:after {
    width: 5.3333333333vw;
    height: 0.2666666667vw;
    margin-left: 2.6666666667vw;
  }
}
.top-access .contact_list {
  margin-top: 1.3888888889vw;
  display: flex;
  justify-content: center;
  gap: 3.75vw;
}
@media (max-width: 767px) {
  .top-access .contact_list {
    margin-top: 5.3333333333vw;
    flex-direction: column;
    gap: 3.2vw;
  }
}
.top-access .contact_list > li {
  min-width: 18.9583333333vw;
}
@media (max-width: 767px) {
  .top-access .contact_list > li {
    width: 100%;
  }
}
.top-access .contact_list > li > a {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.6944444444vw;
  height: 100%;
  min-height: 5.7638888889vw;
  padding: 0.5555555556vw 2.7083333333vw 0.9722222222vw;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  .top-access .contact_list > li > a {
    border-radius: 2.6666666667vw;
    min-height: 20.2666666667vw;
    padding: 0;
  }
}
.top-access .contact_list > li > a.web {
  background-color: #E85A5A;
  border: 0.1388888889vw solid #fff;
  font-weight: 700;
  font-size: clamp(20px * 0.8, 1.3888888889vw, 20px * 1.05);
  line-height: 1.45;
  color: #fff;
}
@media (max-width: 767px) {
  .top-access .contact_list > li > a.web {
    font-size: 4.8vw;
    border-width: 0.5333333333vw;
  }
}
.top-access .contact_list > li > a.web:hover {
  background-color: #FF6666;
}
@media (max-width: 767px) {
  .top-access .contact_list > li > a.web:hover {
    background-color: #E85A5A;
  }
}
.top-access .contact_list > li > a.web:before {
  content: "";
  display: block;
  width: 1.5972222222vw;
  aspect-ratio: 23/23;
  background-image: url(../../img/common/icn_reserve.svg);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain;
  margin-right: 0.6944444444vw;
}
@media (max-width: 767px) {
  .top-access .contact_list > li > a.web:before {
    width: 4.8vw;
    margin-right: 2.6666666667vw;
  }
}
.top-access .contact_list > li > a.tel {
  flex-direction: column;
  background-color: #fff;
  border: 0.0694444444vw solid #99CC33;
}
@media (max-width: 767px) {
  .top-access .contact_list > li > a.tel {
    border-width: 0.2666666667vw;
  }
}
.top-access .contact_list > li > a.tel > .num {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #006633;
  font-weight: 700;
  font-size: clamp(20px * 0.8, 1.3888888889vw, 20px * 1.05);
  letter-spacing: 0.05em;
  line-height: 1.45;
}
@media (max-width: 767px) {
  .top-access .contact_list > li > a.tel > .num {
    font-size: 5.3333333333vw;
  }
}
.top-access .contact_list > li > a.tel > .num:before {
  content: "";
  display: block;
  width: 1.1111111111vw;
  aspect-ratio: 16/21;
  background-image: url(../../img/common/icn_tel.svg);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain;
  margin-right: 0.3472222222vw;
}
@media (max-width: 767px) {
  .top-access .contact_list > li > a.tel > .num:before {
    width: 3.7333333333vw;
    margin-right: 1.3333333333vw;
  }
}
.top-access .contact_list > li > a.tel > .info {
  font-size: clamp(12px * 0.8, 0.8333333333vw, 12px * 1.05);
  line-height: 1.4166666667;
  text-align: center;
  margin-top: -0.1388888889vw;
}
@media (max-width: 767px) {
  .top-access .contact_list > li > a.tel > .info {
    font-size: 3.2vw;
    margin-top: -0.5333333333vw;
  }
}

.top-faq {
  margin-top: 8.3333333333vw;
}
@media (max-width: 767px) {
  .top-faq {
    margin-top: 32vw;
  }
}
.top-faq .ttl {
  text-align: center;
}
.top-faq .ttl .en {
  font-weight: 700;
  font-size: clamp(18px * 0.8, 1.25vw, 18px * 1.05);
  line-height: 1.4444444444;
  color: #9EBCAD;
  position: relative;
}
@media (max-width: 767px) {
  .top-faq .ttl .en {
    font-size: 4.8vw;
  }
}
.top-faq .ttl .en:before {
  content: "";
  display: block;
  width: 3.4027777778vw;
  aspect-ratio: 98/142;
  background-image: url(../../img/common/icn_leaf.webp);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: -4.0972222222vw;
  transform: translateY(-50%);
}
@media (max-width: 767px) {
  .top-faq .ttl .en:before {
    width: 13.0666666667vw;
    left: -15.7333333333vw;
  }
}
.top-faq .ttl .ja {
  color: #006633;
  font-size: clamp(32px * 0.8, 2.2222222222vw, 32px * 1.05);
  font-weight: 700;
  line-height: 1.4375;
  margin-top: 0.8333333333vw;
}
@media (max-width: 767px) {
  .top-faq .ttl .ja {
    font-size: 5.8666666667vw;
    margin-top: 4vw;
  }
}
.top-faq .m-faq_list {
  margin-top: 3.4722222222vw;
}
@media (max-width: 767px) {
  .top-faq .m-faq_list {
    margin-top: 16vw;
  }
}
.top-faq .m-btn {
  margin: 3.4722222222vw auto 0;
}
@media (max-width: 767px) {
  .top-faq .m-btn {
    margin-top: 10.6666666667vw;
  }
}

.top-column {
  margin-top: 8.75vw;
  background-color: #fff;
  width: 91.6666666667vw;
  border-radius: 0 3.4722222222vw 3.4722222222vw 0;
  padding-top: 5.1388888889vw;
  padding-bottom: 4.6527777778vw;
}
@media (max-width: 767px) {
  .top-column {
    margin-top: 33.6vw;
    width: 96vw;
    border-radius: 0 10.6666666667vw 10.6666666667vw 0;
    padding-top: 10.6666666667vw;
    padding-bottom: 16vw;
  }
}
.top-column > .wrap {
  width: 83.3333333333vw;
  margin-left: auto;
}
@media (max-width: 767px) {
  .top-column > .wrap {
    width: 80vw;
    margin-left: 10vw;
  }
}
.top-column > .wrap .ttl {
  text-align: center;
}
.top-column > .wrap .ttl .en {
  font-weight: 700;
  font-size: clamp(18px * 0.8, 1.25vw, 18px * 1.05);
  line-height: 1.4444444444;
  color: #9EBCAD;
  position: relative;
}
@media (max-width: 767px) {
  .top-column > .wrap .ttl .en {
    font-size: 4.8vw;
  }
}
.top-column > .wrap .ttl .en:before {
  content: "";
  display: block;
  width: 3.4027777778vw;
  aspect-ratio: 98/142;
  background-image: url(../../img/common/icn_leaf.webp);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: -4.0972222222vw;
  transform: translateY(-50%);
}
@media (max-width: 767px) {
  .top-column > .wrap .ttl .en:before {
    width: 13.0666666667vw;
    left: -15.7333333333vw;
  }
}
.top-column > .wrap .ttl .ja {
  color: #006633;
  font-size: clamp(32px * 0.8, 2.2222222222vw, 32px * 1.05);
  font-weight: 700;
  line-height: 1.4375;
  margin-top: 0.8333333333vw;
}
@media (max-width: 767px) {
  .top-column > .wrap .ttl .ja {
    font-size: 5.8666666667vw;
    margin-top: 4vw;
  }
}
.top-column > .wrap .list {
  margin: 4.0277777778vw auto 0;
  width: 73.6111111111vw;
  display: flex;
  align-items: flex-start;
  gap: 3.4722222222vw;
}
@media (max-width: 767px) {
  .top-column > .wrap .list {
    margin-top: 10.6666666667vw;
    width: 100%;
    flex-direction: column;
    flex-wrap: wrap;
    gap: 8vw;
  }
}
.top-column > .wrap .list > li:not(.empty) {
  width: 30.1886792453%;
}
@media (max-width: 767px) {
  .top-column > .wrap .list > li:not(.empty) {
    width: 100%;
  }
}
.top-column > .wrap .list > li:not(.empty) > a {
  display: block;
  position: relative;
}
.top-column > .wrap .list > li:not(.empty) > a:hover .column_ttl {
  color: #009333;
}
@media (max-width: 767px) {
  .top-column > .wrap .list > li:not(.empty) > a:hover .column_ttl {
    color: #006633;
  }
}
.top-column > .wrap .list > li:not(.empty) > a .new {
  background-color: #006633;
  padding-left: 0.5555555556vw;
  padding-right: 0.5555555556vw;
  box-sizing: border-box;
  aspect-ratio: 46/46;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 700;
  font-size: clamp(14px * 0.8, 0.9722222222vw, 14px * 1.05);
  line-height: 1.5;
  position: absolute;
  top: -0.5555555556vw;
  left: -0.2083333333vw;
}
@media (max-width: 767px) {
  .top-column > .wrap .list > li:not(.empty) > a .new {
    padding-left: 2.1333333333vw;
    padding-right: 2.1333333333vw;
    font-size: 3.7333333333vw;
    top: -2.1333333333vw;
    left: -0.8vw;
  }
}
.top-column > .wrap .list > li:not(.empty) > a .img {
  width: 100%;
  aspect-ratio: 320/241;
  border-radius: 3.4722222222vw 3.4722222222vw 3.4722222222vw 0;
  overflow: hidden;
}
@media (max-width: 767px) {
  .top-column > .wrap .list > li:not(.empty) > a .img {
    border-radius: 10.6666666667vw 10.6666666667vw 10.6666666667vw 0;
  }
}
.top-column > .wrap .list > li:not(.empty) > a .img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.top-column > .wrap .list > li:not(.empty) > a .column_ttl {
  font-weight: 700;
  font-size: clamp(18px * 0.8, 1.25vw, 18px * 1.05);
  line-height: 1.5;
  margin-top: 0.6944444444vw;
  color: #006633;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  word-break: break-all;
  line-height: 1.5;
  max-height: 3em;
  transition: 0.3s;
}
@media (max-width: 767px) {
  .top-column > .wrap .list > li:not(.empty) > a .column_ttl {
    font-size: 4.2666666667vw;
    margin-top: 2.1333333333vw;
  }
}
.top-column > .wrap .list > li:not(.empty) > a .cat {
  margin-top: 0.6944444444vw;
  color: #fff;
  background-color: #99CC33;
  display: inline-block;
  font-size: clamp(14px * 0.8, 0.9722222222vw, 14px * 1.05);
  font-weight: 700;
  line-height: 1.5;
  padding: 0.2083333333vw 0.8333333333vw;
  border-radius: 2.0833333333vw;
  margin-right: 0.4166666667vw;
}
@media (max-width: 767px) {
  .top-column > .wrap .list > li:not(.empty) > a .cat {
    margin-top: 1.6vw;
    font-size: 3.4666666667vw;
    padding: 0.5333333333vw 3.2vw;
    border-radius: 8vw;
    margin-right: 1.0666666667vw;
  }
}
.top-column > .wrap .list > li.empty {
  font-size: font_size(18);
  line-height: 1.5;
  text-align: center;
  width: 100%;
}
@media (max-width: 767px) {
  .top-column > .wrap .list > li.empty {
    font-size: 3.7333333333vw;
  }
}
.top-column > .wrap .m-btn {
  margin: 3.4722222222vw auto 0;
}
@media (max-width: 767px) {
  .top-column > .wrap .m-btn {
    margin-top: 10.6666666667vw;
  }
}

.top-recruit {
  margin-top: 8.3333333333vw;
}
@media (max-width: 767px) {
  .top-recruit {
    margin-top: 21.3333333333vw;
  }
}
.top-recruit .m-link {
  width: 83.3333333333vw;
  border-radius: 3.4722222222vw;
  padding: 2.7777777778vw 4.8611111111vw 2.7777777778vw 11.1805555556vw;
  background-color: #FFFBEF;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  box-sizing: border-box;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .top-recruit .m-link {
    width: 89.3333333333vw;
    border-radius: 10.6666666667vw;
    padding: 10.6666666667vw;
    display: block;
  }
}
.top-recruit .m-link:before {
  content: "";
  display: block;
  aspect-ratio: 572/112;
  width: 39.7222222222vw;
  background-image: url(../../img/top/bg_recruit.webp);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50% 50%;
  position: absolute;
  top: 3.8194444444vw;
  left: -8.4722222222vw;
}
@media (max-width: 767px) {
  .top-recruit .m-link:before {
    width: 85.3333333333vw;
    top: 8vw;
    left: auto;
    right: -53.3333333333vw;
  }
}
.top-recruit .m-link:after {
  content: "";
  display: block;
  width: calc(100% - 2.2222222222vw);
  height: calc(100% - 2.2222222222vw);
  border-radius: 3.4722222222vw;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border: 0.0694444444vw solid #006633;
  pointer-events: none;
}
@media (max-width: 767px) {
  .top-recruit .m-link:after {
    width: calc(100% - 4.2666666667vw);
    height: calc(100% - 4.2666666667vw);
    border-radius: 10.6666666667vw;
    border-width: 0.2666666667vw;
  }
}
.top-recruit .m-link:hover > .wrap .ttl {
  color: #009333;
}
@media (max-width: 767px) {
  .top-recruit .m-link:hover > .wrap .ttl {
    color: #006633;
  }
}
.top-recruit .m-link > .wrap .ttl {
  font-weight: 700;
  font-size: clamp(32px * 0.8, 2.2222222222vw, 32px * 1.05);
  line-height: 1.4375;
  color: #006633;
  padding-top: 11.7361111111vw;
  display: flex;
  align-items: center;
  transition: 0.3s;
}
@media (max-width: 767px) {
  .top-recruit .m-link > .wrap .ttl {
    font-size: 5.8666666667vw;
    padding-top: 0;
  }
}
.top-recruit .m-link > .wrap .ttl:after {
  content: "";
  display: block;
  width: 2.1527777778vw;
  aspect-ratio: 18/18;
  background-image: url(../../img/common/icn_circle_arrow.svg);
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: contain;
  margin-left: 1.3888888889vw;
}
@media (max-width: 767px) {
  .top-recruit .m-link > .wrap .ttl:after {
    width: 6.4vw;
    margin-left: 5.3333333333vw;
  }
}
.top-recruit .m-link > .wrap .list {
  margin-top: 0.4861111111vw;
}
@media (max-width: 767px) {
  .top-recruit .m-link > .wrap .list {
    margin-top: 1.8666666667vw;
  }
}
.top-recruit .m-link > .wrap .list > li {
  color: #009333;
  font-weight: 700;
  font-size: clamp(24px * 0.8, 1.6666666667vw, 24px * 1.05);
  line-height: 1.4583333333;
}
@media (max-width: 767px) {
  .top-recruit .m-link > .wrap .list > li {
    font-size: 4.8vw;
  }
}
.top-recruit .m-link > .wrap .list > li:before {
  content: "・";
}
.top-recruit .m-link img {
  display: block;
  width: 47.9166666667vw;
  max-width: calc(100% - 13.8888888889vw);
}
@media (max-width: 767px) {
  .top-recruit .m-link img {
    width: 110%;
    max-width: 110%;
    margin-top: 5.3333333333vw;
    margin-left: -5%;
  }
}
.top-recruit .m-link .currently {
  font-size: clamp(16px * 0.8, 1.1111111111vw, 16px * 1.05);
  line-height: 1.4375;
  position: absolute;
  left: 3.8888888889vw;
  bottom: 3.3333333333vw;
}
@media (max-width: 767px) {
  .top-recruit .m-link .currently {
    position: static;
    font-size: 3.7333333333vw;
    margin-top: 5.3333333333vw;
  }
}

/*# sourceMappingURL=top.css.map */
