@charset "utf-8";
/*------------------------------------------------------------
	style
------------------------------------------------------------*/
.mainVisual {
  margin-bottom: 96px;
  padding: 0 20px;
  position: relative;
}
.mainVisual .swiper-container {
  position: relative;
  border-radius: 15px;
}
.mainVisual .swiper-container::after {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.1);
  z-index: 1;
  content: '';
}
@keyframes zoomUp {
  0% {
    transform: translateX(0px);
  }
  100% {
    transform: translateX(-50px);
  }
}
.mainVisual .swiper-slide-active .slide-img, .mainVisual .swiper-slide-duplicate-active .slide-img, .mainVisual .swiper-slide-prev .slide-img {
  animation: zoomUp 10s linear 0s 1 normal both;
}
.slide-img img {
  display: block;
  width: calc(100% + 100px);
  height: 100%;
  object-fit: cover;
  max-width: none;
}
.mainVisual .textBox {
  padding-bottom: 32px;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  z-index: 1;
  box-sizing: border-box;
}
.mainVisual .textBox > p {
  margin: 20px 0 16px;
  color: #FFF;
  font-size: 3.4rem;
  letter-spacing: 0.15em;
}
.mainVisual .textBox .text {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #FFF;
}
.mainVisual .textBox .text .tag {
  padding-bottom: 1px;
  width: 110px;
  font-size: 2rem;
  letter-spacing: 0.05em;
  text-align: center;
  border-radius: 50px;
  border: 1px solid #FFF;
}
.mainVisual .textBox .text h1 {
  margin-left: 20px;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
}
.mainVisual .news {
  width: 700px;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 10;
  background-color: #FFF;
  box-sizing: border-box;
  border-top-left-radius: 15px;
}
.mainVisual .news li a {
  padding: 16px 25px 14px;
  display: flex;
  align-items: center;
  background: url("../images/common/webp/icon02.webp") no-repeat right 35px center / 21px;
}
.no-webp .mainVisual .news li a {
  background: url("../images/common/icon02.png") no-repeat right 35px center / 21px;
}
.mainVisual .news li a p.time {
  margin-right: 30px;
  font-size: 1.2rem;
}
.mainVisual .news li a p {
  color: #33ACD6;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
}
#main > .photo {
  margin-bottom: 76px;
  padding: 0 20px;
  position: relative;
  z-index: 1;
  text-align: center;
}
#main .textArea {
  margin: 0 auto 158px;
}
#main .textArea .subBox {
  margin-bottom: 60px;
  display: flex;
  justify-content: space-between;
}
.wisdomBox {
  margin-bottom: 60px;
  text-align: center;
}
.wisdomBox img {
  width: 70%;
}
#main .textArea .textBox {
  padding-top: 22px;
  width: 600px;
}
#main .textArea .textBox h3 {
  margin-bottom: 36px;
  color: #33ACD6;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.42;
}
#main .textArea .textBox p {
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.86;
}
#main .photo01 {
  margin-bottom: 128px;
}
#main .features {
  margin-bottom: 176px;
}
#main .features .imgBox {
  margin: -113px 0 0 auto;
  position: relative;
  padding-left: 65px;
  width: 50%;
  box-sizing: border-box;
}
#main .features .imgBox::after {
  width: calc(100% - 65px);
  height: 1px;
  position: absolute;
  top: 233px;
  right: 0;
  background-color: #132A5A;
  content: '';
}
#main .features .imgBox::before {
  width: 50px;
  height: 4px;
  position: absolute;
  top: 232px;
  right: 0;
  background-color: #132A5A;
  border-radius: 10px;
  content: '';
}
#main .features .imgBox .inner {
  width: 385px;
}
#main .features .imgBox .subBox {
  margin-bottom: 18px;
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
}
#main .features .imgBox .textBox {
  width: calc(100% - 170px);
}
#main .features .imgBox .textBox h3 {
  margin-bottom: 29px;
  display: flex;
  align-items: center;
  font-size: 2rem;
  font-weight: 400;
  font-family: "bryant-web-compressed", sans-serif;
}
#main .features .imgBox .textBox h3 .num {
  margin-left: 16px;
  font-size: 6rem;
}
#main .features .imgBox .textBox p {
  color: #33ACD6;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
}
#main .features .imgBox .photoBox {
  padding-top: 19px;
  width: 170px;
}
#main .features .imgBox .inner > p {
  font-size: 1.5rem;
  line-height: 1.86;
  font-feature-settings: "palt";
  -moz-font-feature-settings: "palt";
}
#main .features .imgBox01 {
  margin: -70px auto 0 0;
  padding: 0 65px 0 0;
}
#main .features .imgBox01::after {
  left: 0;
  right: auto;
}
#main .features .imgBox01::before {
  left: 0;
  right: auto;
}
#main .features .imgBox01 .inner {
  margin: 0 0 0 auto;
}
#main .features .imgBox .textBox .h3Ttl {
  margin-bottom: 58px;
}
#main .features .imgBox02 {
  margin-top: -265px;
}
#main .features .imgBox04 {
  margin-bottom: 67px;
}
#main .bgBox {
  margin-bottom: -246px;
  padding-bottom: 400px;
  position: relative;
  background: url("../images/index/webp/bg05.webp") no-repeat right -106px top 116px / 601px, url("../images/index/webp/bg02.webp") no-repeat center top / 100% 100%;
}
.no-webp #main .bgBox {
  background: url("../images/index/bg05.png") no-repeat right -106px top 116px / 601px, url("../images/index/bg02.png") no-repeat center top / 100% 100%;
}
#main .bgBox::after {
  width: 100%;
  height: 100px;
  position: absolute;
  top: -100px;
  left: 0;
  background: url("../images/index/webp/bg01.webp") no-repeat center top / 100% 100px;
  content: '';
}
.no-webp #main .bgBox::after {
  background: url("../images/index/bg01.png") no-repeat center top / 100% 100px;
}
#main .care {
  padding-bottom: 188px;
  background: url("../images/index/webp/bg06.webp") no-repeat left top 106px / 392px, url("../images/index/webp/bg07.webp") no-repeat right top 256px / 358px;
}
.no-webp #main .care {
  background: url("../images/index/bg06.png") no-repeat left top 106px / 392px, url("../images/index/bg07.png") no-repeat right top 256px / 358px;
}
#main .care h2 {
  margin-bottom: 66px;
  width: 170px;
  height: 265px;
  font-size: 3.6rem;
  letter-spacing: 0.05em;
  line-height: 1.55;
  writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  direction: ltr;
  text-align: left;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
#main .care .textList {
  margin: 0 auto 60px;
  padding-left: 37px;
  width: 400px;
}
#main .care .textList li {
  padding-left: 32px;
  font-size: 2rem;
  letter-spacing: 0.05em;
  background: url("../images/common/webp/icon09.webp") no-repeat left center / 23px;
}
.no-webp #main .care .textList li {
  background: url("../images/common/icon09.png") no-repeat left center / 23px;
}
#main .care .textList li:not(:last-of-type) {
  margin-bottom: 12px;
}
#main .treatments {
  margin-bottom: 100px;
  position: relative;
}
#main .treatments::after {
  width: 601px;
  height: 515px;
  position: absolute;
  top: -76px;
  left: -111px;
  background: url("../images/index/webp/bg05.webp") no-repeat center / 601px;
  content: '';
}
.no-webp #main .treatments::after {
  background: url("../images/index/bg05.png") no-repeat center / 601px;
}
#main .treatments .imgBox {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
}
#main .treatments .imgBox .textBox h2 {
  margin-bottom: 38px;
}
#main .treatments .imgBox .textBox p {
  font-size: 2.4rem;
  line-height: 1.42;
}
#main .treatments .imgBox .iconList {
  margin: -20px 0 0;
  width: 504px;
  display: flex;
  flex-wrap: wrap;
}
#main .treatments .imgBox .iconList li {
  margin-top: 42px;
  width: 114px;
}
#main .treatments .imgBox .iconList li:not(:nth-of-type(4n)) {
  margin-right: 16px;
}
#main .treatments .imgBox .iconList li a {
  padding-top: 20px;
  display: block;
  position: relative;
  text-align: center;
}
#main .treatments .imgBox .iconList li a::after {
  width: 94px;
  height: 94px;
  position: absolute;
  top: 0;
  left: calc(50% - 47px);
  background-color: #EFEFEF;
  border-radius: 50%;
  transition: all 0.3s;
  content: '';
}
#main .treatments .imgBox .iconList li a span {
  position: relative;
  z-index: 1;
}
#main .treatments .imgBox .iconList li .txt {
  margin-top: 10px;
  display: block;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
  -moz-font-feature-settings: "palt";
}
#main .bgBox .recommend {
  margin-bottom: 128px;
}
#main .visit {
  margin-bottom: 74px;
}
#main .visit h2 {
  margin-bottom: 46px;
}
#main .visit .visitList {
  margin-bottom: 74px;
  display: flex;
  justify-content: space-between;
}
#main .visit .visitList li {
  width: 195px;
}
#main .visit .visitList li .sub {
  position: relative;
}
#main .visit .visitList li .sub::after {
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #132A5A;
  content: '';
}
#main .visit .visitList li .sub::before {
  width: 30px;
  height: 4px;
  position: absolute;
  bottom: -1px;
  left: 0;
  background-color: #132A5A;
  border-radius: 50px;
  content: '';
}
#main .visit .visitList li .pho {
  margin-bottom: 4px;
}
#main .visit .visitList li h3 {
  margin-bottom: 21px;
  display: flex;
  align-items: center;
  font-size: 1.8rem;
  line-height: 1.33;
  letter-spacing: 0.05em;
}
#main .visit .visitList li h3 .num {
  margin-right: 12px;
  font-size: 6rem;
  font-weight: 400;
}
#main .visit .visitList li p {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.71;
  font-feature-settings: "palt";
  -moz-font-feature-settings: "palt";
}
#main .textInner {
  padding: 40px 30px 30px;
  max-width: 900px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #fff;
  border-radius: 15px;
  box-sizing: border-box;
}
#main .textInner .ttl {
  padding-left: 50px;
  background: url("../images/common/webp/icon10.webp") no-repeat left center / 45px;
}
.no-webp #main .textInner .ttl {
  background: url("../images/common/icon10.png") no-repeat left center / 45px;
}
#main .textInner .ttl h2 {
  font-size: 2.4rem;
  letter-spacing: 0.05em;
  text-align: center;
}
#main .textInner .ttl h2 .sml {
  display: block;
  font-size: 1rem;
  font-weight: 400;
}
#main .textInner dl {
  width: 365px;
}
#main .textInner dt {
  padding: 0 0 3px;
  float: left;
  width: 100px;
  color: #FFF;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  text-align: center;
  background-color: #132A5A;
  border-radius: 100px;
}
#main .textInner dd {
  padding: 0 0 16px 8em;
  font-size: 1.4rem;
  font-weight: 400;
  font-feature-settings: "palt";
  -moz-font-feature-settings: "palt";
}
#main .textInner .comLink {
  margin: 0;
  width: 200px;
}
#main .photo02 {
  margin-bottom: 54px;
}
#main .director {
  margin-bottom: 143px;
}
#main .director .content {
  position: relative;
}
#main .director .content::after {
  width: 299px;
  height: 597px;
  position: absolute;
  top: -116px;
  right: 28px;
  background: url("../images/index/webp/director_img.webp") no-repeat center / cover;
  content: '';
  z-index: 10;
}
.no-webp #main .director .content::after {
  background: url("../images/index/director_img.png") no-repeat center / cover;
}
#main .director .textBox {
  margin-bottom: 60px;
  width: 500px;
  position: relative;
  z-index: 20;
}
#main .director .textBox h2 {
  margin-bottom: 36px;
}
#main .director .textBox h3 {
  margin-bottom: 34px;
  color: #33ACD6;
  font-size: 2.4rem;
  line-height: 1.41;
  letter-spacing: 0.05em;
}
#main .director .textBox p {
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.86;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
  -moz-font-feature-settings: "palt";
}
#main .director .textBox .name {
  margin-top: 38px;
  font-size: 3rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-align: right;
}
#main .director .textBox .name .sml {
  margin-bottom: -16px;
  display: block;
  font-size: 1.3rem;
}
#main .introduction {
  margin-bottom: 98px;
}
#main .introduction .content {
  position: relative;
}
#main .introduction .swiper-button-prev, #main .introduction .swiper-button-next {
  width: 51px;
  height: 51px;
  position: absolute;
  top: 30px;
  right: 84px;
  left: auto;
  background: url("../images/common/webp/prev_img_on.webp") no-repeat center / 51px;
}
.no-webp #main .introduction .swiper-button-prev {
  background: url("../images/common/prev_img_on.png") no-repeat center / 51px;
}
#main .introduction .swiper-button-next {
  left: auto;
  right: 20px;
  background: url("../images/common/webp/next_img_on.webp") no-repeat center / 51px;
}
.no-webp #main .introduction .swiper-button-next {
  background: url("../images/common/next_img_on.png") no-repeat center / 51px;
}
.swiper-button-prev::after, .swiper-button-next::after {
  content: '';
}
#main .introduction .swiper-button-prev picture, #main .introduction .swiper-button-next picture {
  transition: all 0.3s;
}
#main .introduction h2 {
  margin-bottom: 46px;
}
#main .introduction .photoList {
  margin: 0 0 70px auto;
  padding-bottom: 76px;
  width: calc(50% + 450px);
}
#main .introduction .photoList li {
  width: 250px;
}
#main .introduction .photoList li .pho {
  margin-bottom: 24px;
}
#main .introduction .photoList li h3 {
  margin-bottom: 28px;
  height: 52px;
  font-size: 2rem;
  letter-spacing: 0.1em;
}
#main .introduction .photoList li p {
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.85;
  letter-spacing: 0.05em;
}
#main .introduction .swiper-scrollbar-drag {
  height: 6px;
  top: -3px;
  background-color: #132A5A;
}
#main .introduction .swiper-container-horizontal > .swiper-scrollbar {
  height: 1px;
  background-color: #132A5A;
}
#main .survey {
  padding: 75px 0 178px;
  position: relative;
  background: url("../images/index/webp/bg04.webp") no-repeat top center / cover;
}
.no-webp #main .survey {
  background: url("../images/index/bg04.png") no-repeat top center / cover;
}
#main .survey .content {
  max-width: 540px;
}
#main .survey::after {
  width: 100%;
  height: 101px;
  position: absolute;
  top: 0;
  left: 0;
  background: url("../images/index/webp/bg03.webp") no-repeat center top / 100% 101px;
  content: '';
}
.no-webp #main .survey::after {
  background: url("../images/index/bg03.png") no-repeat center top / 100% 101px;
}
#main .survey::before {
  width: 100%;
  height: 100px;
  position: absolute;
  bottom: 0;
  left: 0;
  background: url("../images/index/webp/bg01.webp") no-repeat top center / 100% 100px;
  content: '';
}
.no-webp #main .survey::before {
  background: url("../images/index/bg01.png") no-repeat top center / 100% 100px;
}
#main .survey h2 {
  margin-bottom: 52px;
  width: 106px;
  height: 305px;
  font-size: 3.6rem;
  line-height: 1.55;
  letter-spacing: 0.05em;
  writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  direction: ltr;
  text-align: left;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
#main .survey p {
  margin-bottom: 31px;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.86;
}
#main .survey .link a:hover {
  opacity: 0.7;
}
#main .comContact.bg {
  margin-bottom: 0;
  padding-bottom: 75px;
  position: relative;
  z-index: 1;
  background-color: #F7F7F7;
  background-image: none;
}
#main .comContact.bg .map {
  background-color: #FFF;
}
.group .linkUl li a:hover img{
   opacity: 0.7;
	}
.group .linkUl li a:hover{
   opacity:0.7;
	transition: .3s;
	}
.group .linkUl li a{
	transition:.3s;
	}

@media all and (max-width: 1000px) {
  #main .introduction .photoList {
    margin-left: 20px;
  }
}
@media all and (max-width: 1000px) {
  .mainVisual .textBox > p {
    font-size: 3rem;
  }
  #main .textArea .textBox {
    width: 550px;
  }
  #main .features .imgBox .inner {
    margin: 0 20px;
    width: auto;
  }
  #main .features .imgBox {
    padding: 0;
  }
  #main .features .imgBox .textBox p {
    font-size: 1.8rem;
  }
  #main .treatments .imgBox .textBox p {
    font-size: 2rem;
  }
  #main .treatments .imgBox .iconList {
    width: 400px;
    justify-content: space-between;
  }
  #main .treatments .imgBox .iconList li:not(:nth-of-type(4n)) {
    margin-right: 0;
  }
  #main .visit .visitList li {
    width: 176px;
  }
  #main .textInner .ttl h2 {
    font-size: 2rem;
  }
  #main .textInner dd {
    padding-top: 2px;
  }
  #main .textInner .comLink {
    width: 150px;
  }
}
@media all and (min-width: 768px) {
  #main .treatments .imgBox .iconList li a:hover::after {
    background-color: #C2E6F3;
  }
  .mainVisual .news li a:hover {
    background: url("../images/common/webp/icon02_on.webp") no-repeat right 35px center / 21px;
  }
  .no-webp .mainVisual .news li a:hover {
    background: url("../images/common/icon02_on.png") no-repeat right 35px center / 21px;
  }
  #main .introduction .swiper-button-prev:hover picture, #main .introduction .swiper-button-next:hover picture {
    opacity: 0;
  }
}
@media all and (-ms-high-contrast:none) {
  .mainVisual .textBox .text .tag {
    padding: 6px 0 0;
  }
  #main .introduction .swiper-scrollbar-drag {
    top: 0;
  }
  #main .care .textList li {
    padding-top: 5px;
  }
  #main .textInner dt {
    padding-top: 10px;
  }
  #main .textInner dd {
    padding-top: 10px;
  }
  #main .textInner .comLink a {
    padding-top: 8px;
  }
  #main .director .textBox .name .sml {
    margin-bottom: -10px;
  }
  .swiper-scrollbar {
    margin-top: 76px;
  }
}


.lone {
  width: 900px;
  margin: auto;
  margin-top: 50px;
}
.parking {
  margin-top: 100px;
  border: solid 3px #15285c;
  border-radius: 21px;
  padding: 30px;
}
.parking h3 {
  text-align: center;
  font-size: 1.7em;
  margin-bottom: 30px;
  color: #309bc5;
}
.parking p {
  text-align: center;
}
/*2024-01117　追記*/
.p-banner {
  margin: 0 auto 7.2rem auto;
  width: 100%;
  border-radius: 2.4rem;
  border: 0.2rem solid var(--main);
  overflow: hidden;
  display: flex;
  align-items: center;
  background: #cce7f1;
}
.p-banner__img {
  width: 38.6%;
}
.p-banner__img img {
  width: 100%;
  height: 23.4rem;
  object-fit: cover;
  object-position: center;
}
.p-banner__txt {
  width: 61.4%;
  padding: 0 3.2rem;
  text-align: left;
  padding-left: 8rem;
}
.comContact h2.p-banner__title {
  font-size: 3rem;
  color: var(--main-dark);
  line-height: 1.6;
  text-align: left;
  margin-bottom: 2rem;
}
.p-banner__title span {
  color: var(--main);
}
.p-banner__subtitle {
  font-size: 1.8rem;
  font-weight: 600;
}
.p-banner__phone a {
  display: flex;
  align-items: center;
  gap: 0 0.8rem;
  color: var(--main);
  font-size: 3rem;
}
.p-banner__phone {
  margin: 1rem 0;
}


.headLine01 {
    margin-bottom: 69px;
    font-size: 1.3rem;
    letter-spacing: 0.05em;
    line-height: 1;
    font-weight: 300;
}



.comTxt {
    margin-bottom: 45px;
    font-size: 2.4rem;
    letter-spacing: 0.1em;
}
.comText {
    margin-bottom: 89px;
    font-size: 1.8rem;
    letter-spacing: 0.1em;
}

.content {
    margin: 0 auto;
    max-width: 800px;
}





.group {
  padding-bottom: 122px;
  padding-top: 130px;
  background-color: #fff;
}

.group .headLine01 {
  margin-bottom: 52px;
}

.group .linkUl {
    margin-top: -21px;
    display: flex;
    flex-wrap: wrap;
}





.group .linkUl li .topTxt {
    margin-bottom: 1px;
    font-size: 1.1rem;
    white-space: nowrap;
	margin-top: 10px;
}






.group .linkUl li p {
    font-size: 1.6rem;
    letter-spacing: 0.05em;
}
.group .linkUl {
    margin-top: -21px;
    display: flex;
    flex-wrap: wrap;
}

.group img {
	overflow-clip-margin: content-box;
    overflow: clip;
}

.group .linkUl li a {
    color: #03004C;
    display: block;
}


.pb_txt{
	margin: auto;
	margin-bottom: 0px;
	margin-top: 50px;
	width: 100%;
	box-shadow: 0 0 6px #444;
}

.group .linkUl li .txt {
  position: relative;
  background: url("../images/index/webp/group_icon.webp") no-repeat right 7px center / 10px;
}
.no-webp .group .linkUl li .txt {
  background: url("../images/index/group_icon.png") no-repeat right 7px center / 10px;
}


.group .linkUl li {
    margin: 17px 76px 28px 6px;
    text-align: center;
    width: calc(33.33333% - 61px);
}



@media (min-width: 897px) {
.group .linkUl li:nth-child(3n) {
    margin-right: 0;
}
}

@media (max-width: 896px){
.group .linkUl {
    margin-top: -26px;
}

}
@media (max-width: 896px){
.group .linkUl .img img {
    border-radius: 19px;
}
}

@media (max-width: 896px){
.group .linkUl li {
    margin: 26px 36px 0 0;
    text-align: center;
    width: calc(44% - 0px);
}
}

@media (max-width: 896px){
.group .linkUl li .txt {
    background: url(../images/index/webp/group_icon.webp) no-repeat center bottom / 10px;
    font-size: 1.6rem;
    padding-bottom: 20px;
    letter-spacing: 0;
    margin: 0 -10px;
}

}

@media (max-width: 897px) {
.group .linkUl li:nth-child(2n) {
    margin-right: 0;
	margin-left: 0;
}
}

@media (max-width: 896px){
.group .linkUl li .txt {
    background: url(../images/index/webp/group_icon.webp) no-repeat center bottom / 10px;
    font-size: 1.6rem;
    padding-bottom: 20px;
    letter-spacing: 0;
    margin: 0 -10px;
}
	}
.group .linkUl li .txt {
    position: relative;
    background: url(../images/index/webp/group_icon.webp) no-repeat right 7px center / 10px;
}

.group h3 { 
	margin: 2rem 0;
    font-size: 2rem;
}

@media (max-width: 896px){
.group .linkUl li a:hover img{
   opacity:0.7;
	}
.group .linkUl li a{
	transition:.3s;
	}
.group .linkUl li a:hover{
	 opacity:0.7;
	
	}
}

.kireirepo {text-align: center;}
.kireirepo a:hover{opacity: 0.8;}

@media (max-width: 896px){
	.kireirepo {margin: 50px 20px;}
}

.top-table{
	width: 100%;
}

.top-table th,.top-table td{
	border: 1px solid #b8bfcd;
	line-height: 1.7;
	padding: 1em;
	vertical-align: middle;
}

.top-table th{
	background: #efefef;
	font-weight: 700;
	width: 12em;
}

.bottom1{
	margin-bottom: 10px;
}

.bottom2{
	margin-top: 10px;
	margin-bottom: 7.2rem;
}

.txtBox a {
  display: flex;
  justify-content: center;
  align-content: center;
  flex-wrap: wrap;
  position: absolute;
  right: 60px;
  bottom: 70px;
  width: 220px;
  height: 220px;
  background-color: #fff;
  border-radius: 100%;
  border: 1px solid #03004C;
  text-align: center;
  z-index: 10;
}

.mainVisual .txtBox img {
    margin: -27px 0 5px 0px;
    width: 85px;
}

.span1{
	width: 100%;
	font-size: 1.8rem;
	letter-spacing: 0.115em;
	line-height: 1.33;
}

.highlight{
	color: #35A1E2;
	font-size: 27px;
	font-weight: bold;
}

.mainVisual .txtBox a::after {
  position: absolute;
  width: 188px;
  height: 188px;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  content: '';
  background-color: #EFEFEF;
  border-radius: 100%;
  z-index: -1;
  transition: .3s;
}

.txtBox-img{
	vertical-align: 0;
}
.recruit-banner{
	display:flex;
	justify-content:center;
	gap:10px;
}
.Recruit{
	margin-bottom: 90px;
}
@media all and (min-width: 897px) {
  .mainVisual .txtBox a:hover::after {
    width: 220px;
	  height: 220px;
  }
}
@media(max-width:768px){
	.recruit-banner{
		flex-direction: column;
	}
	.Recruit{
	margin-bottom: 75px;
}
}

#gHeader .linkBox .topBox .btn a{
	padding: 5px 0;
}





