@charset "utf-8";


/*----------------------------------------------------
 visual
----------------------------------------------------*/

#visual {
  position: relative;
  padding: 1.9rem 0 0 0;
}

#visual .inner {
  max-width: 1880px;
}

#visual .visualBox {
  width: 100%;
  height: calc(100vh - 3.8rem);
  position: relative;
  background: url('../img/home/visualBg.jpg') center right no-repeat;
  background-size: cover;
  border-radius: 28px;
}

#visual .visualBox .obj01 {
  position: absolute;
  width: 100%;
  max-width: 470px;
  left: 80px;
  bottom: 0;
}

#visual .visualBox .obj02 {
  position: absolute;
  width: 100%;
  max-width: 470px;
  left: 340px;
  bottom: 0;
}

#visual .visualBox .obj03 {
  position: absolute;
  width: 100%;
  max-width: 470px;
  right: 323px;
  bottom: 0;
}

#visual .visualBox .obj04 {
  position: absolute;
  width: 100%;
  max-width: 470px;
  right: 74px;
  bottom: 0;
}

#visual .visualBox .obj05 {
  width: 100%;
  max-width: 208px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

#visual .visualBox .obj05 .animeImg {
  animation: fuwafuwa 2s infinite;
}

@keyframes fuwafuwa {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-30px);
  }
  100% {
    transform: translateY(0px);
  }
}


#visual .visualBox .obj06 {
  width: 100%;
  max-width: 560px;
  position: absolute;
  top: 50%;
  left: 12%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

#visual .scrollBox {
  z-index: 10;
  width: 200px;
  height: 200px;
  background: #fff;
  border-radius: 50%;
  position: absolute;
  bottom: -100px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

#visual .scrollBox .scrolldown2 {
	position:absolute;
	bottom: 38px;
	left: 50%;
}

#visual .scrolldown2 span {
	position: absolute;
	color: #29b5b2;
	font-size: 20px;
  font-weight: 500;
	letter-spacing: 0.12em;
  font-family: 'Oswald', sans-serif;
  top: -115px;
	left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

#visual .scrolldown2:before {
  content: "";
  position: absolute;
  z-index: 10;
  bottom:0;
  left:-4px;
  width:10px;
  height:10px;
  border-radius: 50%;
  background:#29b5b2;
  animation:
  circlemove 1.6s ease-in-out infinite,
  cirlemovehide 1.6s ease-out infinite;
}

@keyframes circlemove {
  0%{bottom:45px;}
  100%{bottom:-5px;}
}

@keyframes cirlemovehide {
  0%{opacity:0}
  50%{opacity:1;}
  80%{opacity:0.9;}
  100%{opacity:0;}
}

#visual .scrolldown2:after {
	content:"";
	position: absolute;
	bottom:0;
	left:0;
	width:2px;
	height: 60px;
  background: #c3c3c3;
}

/*----------------------------------------------------
 pickupInfo
----------------------------------------------------*/

#pickupInfo {
  position: relative;
  padding: 170px 0 0 0;
}

#pickupInfo .inner {
  max-width: 1200px;
}

#pickupInfo .pickupBox {
  display: flex;
  align-items: center;
  border-radius: 12px;
  background: #F8F6EF;
}

#pickupInfo .pickupBox .head {
  width: 215px;
  padding: 42px 0;
  border-right: 1px dotted #6A5E0F;
  display: flex;
  justify-content: center;
  align-items: center;
}

#pickupInfo .pickupBox .head p {
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.12em;
}

#pickupInfo .pickupBox .conts {
  width: calc(100% - 215px);
  padding: 0 59px;
}

#pickupInfo .pickupBox .conts p a {
  font-size: 16px;
  font-weight: 700;
  color: #444444;
  text-decoration: none;
  letter-spacing: 0.12em;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

/*----------------------------------------------------
 homeVision
----------------------------------------------------*/

#homeVision {
  position: relative;
  padding: 93px 0 200px 0;
}

#homeVision .inner {
  max-width: 1439px;
}

#homeVision .enTitle {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1235px;
  margin: 0 auto;
  transform: translate(53px, 10px);
  -webkit-transform: translate(53px, 10px);
  -ms-transform: translate(53px, 10px);
}

#homeVision .visionFlex {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  margin-bottom: 93px;
}

#homeVision .visionFlex .image {
  width: 100%;
  max-width: 774px;
}

#homeVision .visionFlex .conts {
  padding: 52px 0 0 45px;
}

#homeVision .visionFlex .conts h2 {
  position: relative;
  font-size: 48px;
  font-weight: 700;
  line-height: 1.791;
  letter-spacing: 0.12em;
  margin-bottom: 49px;
}

#homeVision .visionFlex .conts h2:before {
  content: '';
  width: 103px;
  height: 103px;
  background: #F8F6EF;
  border-radius: 8px;
  position: absolute;
  left: 356px;
  top: 80px;
  z-index: -1;
}

#homeVision .visionFlex .conts h2 span {
  color: #F29C97;
}

#homeVision .visionFlex .conts p {
  font-size: 18px;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.08em;
  margin-bottom: 25px;
}

#homeVision .visionFlex .conts ul {
  margin-bottom: 29px;
}

#homeVision .visionFlex .conts ul li {
  font-size: 20px;
  font-weight: 700;
  line-height: 2.1;
  letter-spacing: 0.08em;
  position: relative;
  margin-bottom: 3px;
  padding: 0 0 0 34px;
}

#homeVision .visionFlex .conts ul li:before {
  content: '';
  width: 10px;
  height: 10px;
  background: #F29C97;
  border-radius: 50%;
  position: absolute;
  left: 5px;
  top: 14px;
}


/*----------------------------------------------------
 homeContactBlue
----------------------------------------------------*/

#homeContactBlue {
  position: relative;
  background: url('../img/home/contact-bg-blue.jpg') no-repeat;
  background-size: cover;
  padding: 106px 0 103px 0;
}

#homeContactBlue .inner {
  width: 100%;
  max-width: 100%;
}

#homeContactBlue .contactFlex {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 0 0 0 267px;
}

#homeContactBlue .contactFlex .headBox {
  width: 30%;
  max-width: 430px;
  color: #fff;
}

#homeContactBlue .contactFlex .headBox .oracleHead {
  padding: 20px 0 0 0;
}

#homeContactBlue .contactFlex .headBox .oracleHead h2 {
  display: flex;
  flex-direction: column;
  margin-bottom: 45px;
}

#homeContactBlue .contactFlex .headBox .oracleHead h2 small {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.12em;
  font-family: "Roboto", sans-serif;
  position: relative;
  margin-bottom: 33px;
  padding: 0 0 0 30px;
}

#homeContactBlue .contactFlex .headBox .oracleHead h2 small:before {
  content: '';
  width: 10px;
  height: 10px;
  background: #fff;
  border-radius: 50%;
  position: absolute;
  left: 9px;
  top: 9px;
}

#homeContactBlue .contactFlex .headBox .oracleHead b {
  font-size: 32px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.12em;
}

#homeContactBlue .contactFlex .headBox p {
  font-size: 18px;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.08em;
}

#homeContactBlue .contactFlex .conts {
  background: #fff;
  border-radius: 12px 0 0 12px;
  padding: 39px 0 43px 22px;
  width: 68.64%;
  max-width: 1126px;
}

#homeContactBlue .contactFlex .conts .contsBox {
  display: flex;
}

#homeContactBlue .contactFlex .conts .formArea {
  width: 587px;
  border-right: 1px solid #707070;
  padding: 6px 0 0 0;
}

#homeContactBlue .contactFlex .conts .formArea .topTex {
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.12em;
  text-align: center;
  margin-bottom: 19px;
}

#homeContactBlue .contactFlex .conts .telArea {
  width: 487px;
  padding: 6px 0 0 0;
}

#homeContactBlue .contactFlex .conts .telArea .topTex {
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.12em;
  text-align: center;
  margin-bottom: 26px;
}

#homeContactBlue .contactFlex .conts .telArea .telNo {
  margin-bottom: 21px;
}

#homeContactBlue .contactFlex .conts .telArea .telNo a {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #3A98BB;
}

#homeContactBlue .contactFlex .conts .telArea .telNo a .icon {
  width: 100%;
  max-width: 30px;
  transform: translate(-7px, -2px);
  -webkit-transform: translate(-7px, -2px);
  -ms-transform: translate(-7px, -2px);
}

#homeContactBlue .contactFlex .conts .telArea .telNo a .tex {
  font-size: 40px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.12em;
  font-family: 'Roboto', sans-serif;
}

#homeContactBlue .contactFlex .conts .telArea .telBottom {
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.12em;
  text-align: center;
}

/*----------------------------------------------------
 homeContactPink
----------------------------------------------------*/

#homeContactPink {
  position: relative;
  background: url('../img/home/contact-bg-pink.jpg') no-repeat;
  background-size: cover;
  padding: 106px 0 103px 0;
}

#homeContactPink .inner {
  width: 100%;
  max-width: 100%;
}

#homeContactPink .contactFlex {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  align-items: flex-start;
  padding: 0 219px 0 0;
}

#homeContactPink .contactFlex .headBox {
  width: 25%;
  max-width: 430px;
  color: #fff;
}

#homeContactPink .contactFlex .headBox .oracleHead {
  padding: 20px 0 0 0;
}

#homeContactPink .contactFlex .headBox .oracleHead h2 {
  display: flex;
  flex-direction: column;
  margin-bottom: 45px;
}

#homeContactPink .contactFlex .headBox .oracleHead h2 small {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.12em;
  font-family: "Roboto", sans-serif;
  position: relative;
  margin-bottom: 33px;
  padding: 0 0 0 30px;
}

#homeContactPink .contactFlex .headBox .oracleHead h2 small:before {
  content: '';
  width: 10px;
  height: 10px;
  background: #fff;
  border-radius: 50%;
  position: absolute;
  left: 9px;
  top: 9px;
}

#homeContactPink .contactFlex .headBox .oracleHead b {
  font-size: 32px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.12em;
}

#homeContactPink .contactFlex .headBox p {
  font-size: 18px;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.08em;
}

#homeContactPink .contactFlex .conts {
  background: #fff;
  border-radius: 0 12px 12px 0;
  padding: 39px 0 43px 22px;
  width: 68.64%;
  max-width: 1126px;
}

#homeContactPink .contactFlex .conts .contsBox {
  display: flex;
}

#homeContactPink .contactFlex .conts .formArea {
  width: 587px;
  border-right: 1px solid #707070;
  padding: 6px 0 0 0;
}

#homeContactPink .contactFlex .conts .formArea .topTex {
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.12em;
  text-align: center;
  margin-bottom: 19px;
}

#homeContactPink .contactFlex .conts .telArea {
  width: 487px;
  padding: 6px 0 0 0;
}

#homeContactPink .contactFlex .conts .telArea .topTex {
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.12em;
  text-align: center;
  margin-bottom: 26px;
}

#homeContactPink .contactFlex .conts .telArea .telNo {
  margin-bottom: 21px;
}

#homeContactPink .contactFlex .conts .telArea .telNo a {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #f29c97;
}

#homeContactPink .contactFlex .conts .telArea .telNo a .icon {
  width: 100%;
  max-width: 30px;
  transform: translate(-7px, -2px);
  -webkit-transform: translate(-7px, -2px);
  -ms-transform: translate(-7px, -2px);
}

#homeContactPink .contactFlex .conts .telArea .telNo a .tex {
  font-size: 40px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.12em;
  font-family: 'Roboto', sans-serif;
}

#homeContactPink .contactFlex .conts .telArea .telBottom {
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.12em;
  text-align: center;
}

/*----------------------------------------------------
 homeService
----------------------------------------------------*/

#homeService {
  position: relative;
  overflow: hidden;
  background: #FFF3F2;
  padding: 266px 0 221px 0;
}

#homeService .serviceBg {
  position: absolute;
  left: -176px;
  top: 564px;
  width: 2229px;
}

#homeService .enTitle {
  width: 100%;
  max-width: 1655px;
  position: absolute;
  top: -75px;
  left: 47.5%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

#homeService .serviceHead {
  position: relative;
  display: flex;
  justify-content: space-between;
  margin-bottom: 210px;
}

#homeService .serviceHead .imageLeft {
  width: 25.5%;
  border-radius: 0 12px 12px 0;
}

#homeService .serviceHead .imageLeft img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#homeService .serviceHead .imageRight {
  width: 40.3%;
  border-radius: 12px 0 0 12px;
}

#homeService .serviceHead .imageRight img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#homeService .serviceHead .titleConts {
  width: 34.2%;
  padding: 88px 101px 0 116px;
}

#homeService .serviceHead .titleConts h2 {
  font-size: 52px;
  font-weight: 700;
  line-height: 1.596;
  letter-spacing: 0.08em;
  color: #F29C97;
  margin-bottom: 24px;
}

#homeService .serviceHead .titleConts p {
  font-size: 18px;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.08em;
}

#homeService .serviceNurs {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
  justify-content: space-between;
  position: relative;
  z-index: 1;
  margin-bottom: 254px;
  padding: 0 0 0 267px;
}

#homeService .serviceNurs .image {
  width: 61.25%;
  max-width: 1176px;
  border-radius: 12px 0 0 12px;
}

#homeService .serviceNurs .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#homeService .serviceNurs .conts {
  width: 30%;
  max-width: 348px;
}

#homeService .serviceNurs .conts .oracleHead {
  padding: 20px 0 0 0;
}

#homeService .serviceNurs .conts .oracleHead h2 {
  display: flex;
  flex-direction: column;
  margin-bottom: 20px;
}

#homeService .serviceNurs .conts .oracleHead h2 small {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.12em;
  color: #F29C97;
  font-family: "Roboto", sans-serif;
  position: relative;
  margin-bottom: 16px;
  padding: 0 0 0 30px;
}

#homeService .serviceNurs .conts .oracleHead h2 small:before {
  content: '';
  width: 10px;
  height: 10px;
  background: #F29C97;
  border-radius: 50%;
  position: absolute;
  left: 8px;
  top: 7px;
}

#homeService .serviceNurs .conts .oracleHead b {
  font-size: 32px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.12em;
}

#homeService .serviceNurs .conts .oracleHead p {
  font-size: 18px;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.08em;
}

#homeService .servicePlan {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 1;
  margin-bottom: 170px;
  padding: 0 229px 0 0;
}

#homeService .servicePlan .image {
  width: 61.25%;
  max-width: 1176px;
  border-radius: 12px 0 0 12px;
}

#homeService .servicePlan .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#homeService .servicePlan .conts {
  width: 427px;
}

#homeService .servicePlan .conts .oracleHead {
  padding: 20px 0 0 0;
}

#homeService .servicePlan .conts .oracleHead h2 {
  display: flex;
  flex-direction: column;
  margin-bottom: 20px;
}

#homeService .servicePlan .conts .oracleHead h2 small {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.12em;
  color: #F29C97;
  font-family: "Roboto", sans-serif;
  position: relative;
  margin-bottom: 16px;
  padding: 0 0 0 30px;
}

#homeService .servicePlan .conts .oracleHead h2 small:before {
  content: '';
  width: 10px;
  height: 10px;
  background: #F29C97;
  border-radius: 50%;
  position: absolute;
  left: 8px;
  top: 7px;
}

#homeService .servicePlan .conts .oracleHead b {
  font-size: 32px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.12em;
}

#homeService .servicePlan .conts .oracleHead p {
  font-size: 18px;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.08em;
}


/*----------------------------------------------------
 homeOffice
----------------------------------------------------*/

#homeOffice {
  position: relative;
  overflow: hidden;
  padding: 192px 0 0 251px;
}

#homeOffice .oracleHead {
  margin-bottom: 52px;
  padding: 20px 0 0 0;
}

#homeOffice .oracleHead h2 {
  display: flex;
  flex-direction: column;
  margin-bottom: 20px;
}

#homeOffice .oracleHead h2 small {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.12em;
  color: #0085A1;
  font-family: "Roboto", sans-serif;
  position: relative;
  margin-bottom: 28px;
  padding: 0 0 0 49px;
}

#homeOffice .oracleHead h2 small:before {
  content: '';
  width: 10px;
  height: 10px;
  background: #0085A1;
  border-radius: 50%;
  position: absolute;
  left: 22px;
  top: 7px;
}

#homeOffice .oracleHead b {
  font-size: 32px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.12em;
  padding: 0 0 0 15px;
}

#homeOffice .officeFlex {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  background: #F8F6EF;
  margin-bottom: 96px;
  border-radius: 12px 0 0 12px;
}

#homeOffice .officeFlex .image {
  width: 57.5%;
  transform: translateY(-88px);
  -webkit-transform: translateY(-88px);
  -ms-transform: translateY(-88px);
}

#homeOffice .officeFlex .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#homeOffice .officeFlex .conts {
  width: 42.5%;
}

#homeOffice .officeFlex .conts .contsFlex {
  display: flex;
  flex-wrap: wrap;
}

#homeOffice .officeFlex .conts .box01 {
  width: 40%;
  display: flex;
  align-items: center;
  justify-content: center;
  border-right: 1px dotted #9A937A;
  border-bottom: 1px dotted #9A937A;
  padding: 107px 0 109px;
}

#homeOffice .officeFlex .conts .box01 img {
  width: 100%;
  max-width: 135px;
}

#homeOffice .officeFlex .conts .box02 {
  width: 60%;
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: 1px dotted #9A937A;
  padding: 117px 0 105px;
}

#homeOffice .officeFlex .conts .box02 h3 {
  display: flex;
  flex-direction: column;
  align-items: center;
}

#homeOffice .officeFlex .conts .box02 h3 small {
  font-size: 21px;
  font-weight: 700;
  letter-spacing: 0.12em;
  margin-bottom: 6px;
}

#homeOffice .officeFlex .conts .box02 h3 b {
  width: 100%;
  max-width: 180px;
}

#homeOffice .officeFlex .conts .box03 {
  width: 100%;
  padding: 58px 72px 80px 72px;
}

#homeOffice .officeFlex .conts .box03 p {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-align: justify;
}

#homeOffice .button {
  transform: translateX(-125.5px);
  -webkit-transform: translateX(-125.5px);
  -ms-transform: translateX(-125.5px);
}

/*----------------------------------------------------
 homeInfo
----------------------------------------------------*/

#homeInfo {
  position: relative;
  overflow: hidden;
  padding: 292px 0 269px 0;
}

#homeInfo .oracleHead {
  margin-bottom: 56px;
  padding: 20px 0 0 0;
}

#homeInfo .oracleHead h2 {
  display: flex;
  flex-direction: column;
  margin-bottom: 20px;
}

#homeInfo .oracleHead h2 small {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.12em;
  color: #F29C97;
  font-family: "Roboto", sans-serif;
  position: relative;
  margin-bottom: 28px;
  padding: 0 0 0 49px;
}

#homeInfo .oracleHead h2 small:before {
  content: '';
  width: 10px;
  height: 10px;
  background: #F29C97;
  border-radius: 50%;
  position: absolute;
  left: 22px;
  top: 7px;
}

#homeInfo .oracleHead b {
  font-size: 32px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.12em;
  padding: 0 0 0 15px;
}

#homeInfo .infoFlex {
  display: flex;
  justify-content: space-between;
}

#homeInfo .infoFlex .titleBox {
  width: 355px;
  padding: 0 0 0 14px;
}

#homeInfo .infoFlex .titleBox .link {
  padding: 0 0 0 24px;
}

#homeInfo .infoFlex .titleBox .link a {
  display: flex;
  align-items: center;
}

#homeInfo .infoFlex .titleBox .link a .text {
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.08em;
  color: #F29C97;
  margin-right: 13px;
}

#homeInfo .infoFlex .titleBox .link a .icon {
  width: 50px;
  height: 50px;
  background: #F29C97;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}

#homeInfo .infoFlex .titleBox .link a .icon img {
  width: 100%;
  max-width: 6.18px;
}

#homeInfo .infoFlex .conts {
  width: 100%;
  max-width: 972px;
  padding: 16px 0 0 0;
}

#homeInfo .infoFlex .conts .infoList ul li a {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #C9C9C9;
  padding: 44px 30px 44px 0;
}

#homeInfo .infoFlex .conts .infoList ul li a .listHead {
  display: flex;
  align-items: center;
  padding: 0 0 0 18px;
  width: 273px;
}

#homeInfo .infoFlex .conts .infoList ul li a .listHead .date {
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.12em;
  color: #F29C97;
  font-family: 'Lato', sans-serif;
  margin-right: 20px;
}

#homeInfo .infoFlex .conts .infoList ul li a .listHead .cat {
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  color: #fff;
  background: #F29C97;
  border-radius: 18px;
  padding: 6px 17px;
  white-space: nowrap;
}

#homeInfo .infoFlex .conts .infoList ul li a .title {
  font-size: 16px;
  font-weight: 500;
  color: #444444;
  text-decoration: none;
  letter-spacing: 0.08em;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  width: calc(100% - 273px);
  transition: all 0.3s ease;
}

/*----------------------------------------------------
 homeRecruit
----------------------------------------------------*/

#homeRecruit {
  position: relative;
  overflow: hidden;
  padding: 0 0 270px;
}

#homeRecruit .inner {
  max-width: 1878px;
}

#homeRecruit .imageBox {
  position: relative;
  margin-bottom: 300px;
}

#homeRecruit .imageBox .box {
  width: 497px;
  height: 497px;
  border-radius: 26px;
  position: absolute;
  bottom: -162px;
  right: 335px;
  z-index: 10;
}

#homeRecruit .imageBox .box .innerBox {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  background: #fff;
  position: relative;
  border-radius: 26px;
  width: 100%;
  height: 100%;
  box-shadow: 4px 4px 20px rgba(245,160,169,0.1);
}

#homeRecruit .imageBox .box .innerBox .icon {
  width: 100%;
  max-width: 125px;
  margin: -30px 0 27px;
}

#homeRecruit .imageBox .box .innerBox .head h2 {
  font-size: 32px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-align: center;
}

#homeRecruit .imageBox .box .innerBox .head p {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 2;
  text-align: center;
}

#homeRecruit .imageBox .box .innerBox .banner {
  margin-top: 18px;
}

#homeRecruit .imageBox .box:before {
  content: '';
  width: 100%;
  height: 100%;
  background: url('../img/common/bg-dots.svg') right bottom;
  position: absolute;
  right: -33px;
  bottom: -33px;
  border-radius: 26px;
}

#homeRecruit #presentBn {
  margin-bottom: 126px;
}

#homeRecruit .recruitList {
  display: flex;
  justify-content: center;
  width: calc(100% - 3.6rem);
  max-width: 1426px;
  margin: 0 auto 200px;
}

#homeRecruit .recruitList .box {
  width: 100%;
  max-width: 344px;
  margin: 0 54px;
}

#homeRecruit .recruitList .box a {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
  height: 100%;
}

#homeRecruit .recruitList .box a .searchBox {
  width: 107px;
  height: 107px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  border-radius: 50%;
  background: #fff;
  border: 4px solid #F29C97;
  box-shadow: 4px 4px 20px rgba(0,0,0,0.1);
  position: absolute;
  top: 235px;
  right: -10px;
}

#homeRecruit .recruitList .box a .searchBox .icon {
  width: 100%;
  max-width: 31px;
  margin: 4px 0;
}

#homeRecruit .recruitList .box a .searchBox .text {
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.08em;
  color: #F29C97;
}

#homeRecruit .recruitList .box a .image {
  width: 100%;
  max-width: 340px;
  margin: 0 auto 30px;
}

#homeRecruit .recruitList .box a h3 {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.611;
  letter-spacing: 0.12em;
  text-align: center;
  color: #444444;
  margin-bottom: 18px;
}

#homeRecruit .recruitList .box a p {
  font-size: 18px;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.08em;
  text-align: justify;
  color: #444444;
}

#homeRecruit .recruitList .box a .link {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 43px;
}

#homeRecruit .recruitList .box a .link .text {
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.08em;
  color: #F29C97;
  margin-right: 13px;
}

#homeRecruit .recruitList .box a .link .icon {
  width: 50px;
  height: 50px;
  background: #F29C97;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}

#homeRecruit .recruitList .box a .link .icon img {
  width: 100%;
  max-width: 6.18px;
}

/*----------------------------------------------------
 PC
----------------------------------------------------*/
@media screen and  (max-width: 1700px) {
  #homeContactBlue .contactFlex {
    padding: 0 0 0 120px;
  }

  #homeContactPink .contactFlex {
    padding: 0 120px 0 0;
  }

  #homeService .serviceHead .titleConts {
    padding: 88px 75px 0 75px;
  }

  #homeOffice {
    padding: 192px 0 0 150px;
  }

}

@media screen and (min-width: 769px) {

  #pickupInfo .pickupBox .conts p a:hover {
    color: #F29C97;
  }

  #homeInfo .infoFlex .conts .infoList ul li a:hover .title {
    color: #F29C97;
  }

  #homeInfo .infoFlex .titleBox .link a:hover {
    opacity: 0.7;
  }

  #homeRecruit .recruitList .box a:hover {
    opacity: 0.7;
  }

}

/*----------------------------------------------------
 PC VW
----------------------------------------------------*/

@media screen and (min-width: 769px) and (max-width: 1426px) {

  /*----------------------------------------------------
  visual
  ----------------------------------------------------*/

  #visual .inner {
    max-width: 131.837vw;
  }

  #visual .visualBox {
    border-radius: 1.964vw;
  }

  #visual .visualBox .obj01 {
    max-width: 32.959vw;
    left: -4.39vw;
  }

  #visual .visualBox .obj02 {
    max-width: 32.959vw;
    left: 12.843vw;
  }

  #visual .visualBox .obj03 {
    max-width: 32.959vw;
    right: 11.651vw;
  }

  #visual .visualBox .obj04 {
    max-width: 32.959vw;
    right: -5.811vw;
  }

  #visual .visualBox .obj05 {
    max-width: 14.586vw;
  }

  #visual .visualBox .obj06 {
    left: 8%;
    max-width: 39.271vw;
  }

  #visual .scrollBox {
    width: 14.025vw;
    height: 14.025vw;
    bottom: -7.013vw;
  }

  #visual .scrollBox .scrolldown2{
    bottom: 2.665vw;
  }

  #visual .scrolldown2 span{
    font-size: 1.403vw;
    top: -8.065vw;
  }

  #visual .scrolldown2:before {
    left:-0.281vw;
    width:0.701vw;
    height:0.701vw;
  }

  @keyframes circlemove{
    0%{bottom:3.156vw;}
    100%{bottom:-0.351vw;}
  }

  #visual .scrolldown2:after{
    width:0.14vw;
    height: 4.208vw;
  }

  /*----------------------------------------------------
  pickupInfo
  ----------------------------------------------------*/

  #pickupInfo {
    padding: 11.921vw 0 0 0;
  }

  #pickupInfo .inner {
    max-width: 84.151vw;
  }

  #pickupInfo .pickupBox {
    border-radius: 0.842vw;
  }

  #pickupInfo .pickupBox .head {
    width: 15.077vw;
    padding: 2.945vw 0;
    border-right: 0.07vw dotted #6A5E0F;
  }

  #pickupInfo .pickupBox .head p {
    font-size: 1.543vw;
  }

  #pickupInfo .pickupBox .conts {
    width: calc(100% - 15.077vw);
    padding: 0 4.137vw;
  }

  #pickupInfo .pickupBox .conts p a {
    font-size: 1.122vw;
  }

  /*----------------------------------------------------
  homeVision
  ----------------------------------------------------*/

  #homeVision {
    padding: 6.522vw 0 14.025vw 0;
  }

  #homeVision .inner {
    max-width: 100.912vw;
  }

  #homeVision .enTitle {
    max-width: 86.606vw;
    transform: translate(3.717vw, 0.701vw);
    -webkit-transform: translate(3.717vw, 0.701vw);
    -ms-transform: translate(3.717vw, 0.701vw);
  }

  #homeVision .visionFlex {
    margin-bottom: 6.522vw;
  }

  #homeVision .visionFlex .image {
    max-width: 54.278vw;
  }

  #homeVision .visionFlex .conts {
    padding: 3.647vw 0 0 3.156vw;
  }

  #homeVision .visionFlex .conts h2 {
    font-size: 3.366vw;
    margin-bottom: 3.436vw;
  }

  #homeVision .visionFlex .conts h2:before {
    width: 7.223vw;
    height: 7.223vw;
    border-radius: 0.561vw;
    left: 24.827vw;
    top: 5.61vw;
  }

  #homeVision .visionFlex .conts p {
    font-size: 1.262vw;
    margin-bottom: 1.753vw;
  }

  #homeVision .visionFlex .conts ul {
    margin-bottom: 2.034vw;
  }

  #homeVision .visionFlex .conts ul li {
    font-size: 1.403vw;
    margin-bottom: 0.21vw;
    padding: 0 0 0 2.384vw;
  }

  #homeVision .visionFlex .conts ul li:before {
    width: 0.701vw;
    height: 0.701vw;
    left: 0.351vw;
    top: 0.982vw;
  }


  /*----------------------------------------------------
  homeContactBlue
  ----------------------------------------------------*/

  #homeContactBlue {
    padding: 7.433vw 0 7.223vw 0;
  }

  #homeContactBlue .contactFlex {
    padding: 0 0 0 4.724vw;
  }

  #homeContactBlue .contactFlex .headBox {
    width: 24.154vw;
  }

  #homeContactBlue .contactFlex .headBox .oracleHead {
    padding: 1.403vw 0 0 0;
  }

  #homeContactBlue .contactFlex .headBox .oracleHead h2 {
    margin-bottom: 3.156vw;
  }

  #homeContactBlue .contactFlex .headBox .oracleHead h2 small {
    font-size: 1.403vw;
    margin-bottom: 2.314vw;
    padding: 0 0 0 2.104vw;
  }

  #homeContactBlue .contactFlex .headBox .oracleHead h2 small:before {
    width: 0.701vw;
    height: 0.701vw;
    left: 0.631vw;
    top: 0.631vw;
  }

  #homeContactBlue .contactFlex .headBox .oracleHead b {
    font-size: 2.244vw;
  }

  #homeContactBlue .contactFlex .headBox p {
    font-size: 1.262vw;
  }

  #homeContactBlue .contactFlex .conts {
    border-radius: 0.842vw 0 0 0.842vw;
    padding: 2.735vw 0 3.015vw 1.543vw;
    width: 67.962vw;
  }

  #homeContactBlue .contactFlex .conts .formArea {
    width: 41.164vw;
    border-right: 0.07vw solid #707070;
    padding: 0.421vw 0 0 0;
  }

  #homeContactBlue .contactFlex .conts .formArea .topTex {
    font-size: 1.543vw;
    margin-bottom: 1.332vw;
  }

  #homeContactBlue .contactFlex .conts .telArea {
    width: 34.151vw;
    padding: 0.421vw 0 0 0;
  }

  #homeContactBlue .contactFlex .conts .telArea .topTex {
    font-size: 1.543vw;
    margin-bottom: 1.823vw;
  }

  #homeContactBlue .contactFlex .conts .telArea .telNo {
    margin-bottom: 1.473vw;
  }

  #homeContactBlue .contactFlex .conts .telArea .telNo a .icon {
    max-width: 2.104vw;
    transform: translate(-0.491vw, -0.14vw);
    -webkit-transform: translate(-0.491vw, -0.14vw);
    -ms-transform: translate(-0.491vw, -0.14vw);
  }

  #homeContactBlue .contactFlex .conts .telArea .telNo a .tex {
    font-size: 2.805vw;
  }

  #homeContactBlue .contactFlex .conts .telArea .telBottom {
    font-size: 1.403vw;
  }

  /*----------------------------------------------------
  homeContactPink
  ----------------------------------------------------*/

  #homeContactPink {
    padding: 7.433vw 0 7.223vw 0;
  }

  #homeContactPink .contactFlex {
    padding: 0 4.724vw 0 0;
  }

  #homeContactPink .contactFlex .headBox {
    width: 24.154vw;
  }

  #homeContactPink .contactFlex .headBox .oracleHead {
    padding: 1.403vw 0 0 0;
  }

  #homeContactPink .contactFlex .headBox .oracleHead h2 {
    margin-bottom: 3.156vw;
  }

  #homeContactPink .contactFlex .headBox .oracleHead h2 small {
    font-size: 1.403vw;
    margin-bottom: 2.314vw;
    padding: 0 0 0 2.104vw;
  }

  #homeContactPink .contactFlex .headBox .oracleHead h2 small:before {
    width: 0.701vw;
    height: 0.701vw;
    left: 0.631vw;
    top: 0.631vw;
  }

  #homeContactPink .contactFlex .headBox .oracleHead b {
    font-size: 2.244vw;
  }

  #homeContactPink .contactFlex .headBox p {
    font-size: 1.262vw;
  }

  #homeContactPink .contactFlex .conts {
    border-radius: 0 0.842vw 0.842vw 0;
    padding: 2.735vw 0 3.015vw 1.543vw;
    width: 67.962vw;
  }

  #homeContactPink .contactFlex .conts .formArea {
    width: 41.164vw;
    border-right: 0.07vw solid #707070;
    padding: 0.421vw 0 0 0;
  }

  #homeContactPink .contactFlex .conts .formArea .topTex {
    font-size: 1.543vw;
    margin-bottom: 1.332vw;
  }

  #homeContactPink .contactFlex .conts .telArea {
    width: 34.151vw;
    padding: 0.421vw 0 0 0;
  }

  #homeContactPink .contactFlex .conts .telArea .topTex {
    font-size: 1.543vw;
    margin-bottom: 1.823vw;
  }

  #homeContactPink .contactFlex .conts .telArea .telNo {
    margin-bottom: 1.473vw;
  }

  #homeContactPink .contactFlex .conts .telArea .telNo a .icon {
    max-width: 2.104vw;
    transform: translate(-0.491vw, -0.14vw);
    -webkit-transform: translate(-0.491vw, -0.14vw);
    -ms-transform: translate(-0.491vw, -0.14vw);
  }

  #homeContactPink .contactFlex .conts .telArea .telNo a .tex {
    font-size: 2.805vw;
  }

  #homeContactPink .contactFlex .conts .telArea .telBottom {
    font-size: 1.403vw;
  }

  /*----------------------------------------------------
  homeService
  ----------------------------------------------------*/

  #homeService {
    padding: 18.654vw 0 15.498vw 0;
  }

  #homeService .serviceBg {
    left: -12.342vw;
    top: 39.551vw;
    width: 145.311vw;
  }

  #homeService .enTitle {
    max-width: 116.059vw;
    top: -5.259vw;
  }

  #homeService .serviceHead {
    margin-bottom: 14.727vw;
  }

  #homeService .serviceHead .imageLeft {
    border-radius: 0 0.842vw 0.842vw 0;
  }

  #homeService .serviceHead .imageRight {
    border-radius: 0.842vw 0 0 0.842vw;
  }

  #homeService .serviceHead .titleConts {
    padding: 6.171vw 5.083vw 0 5.135vw;
  }

  #homeService .serviceHead .titleConts h2 {
    font-size: 3.047vw;
    margin-bottom: 1.683vw;
  }

  #homeService .serviceHead .titleConts p {
    font-size: 1.262vw;
  }

  #homeService .serviceNurs {
    margin-bottom: 17.812vw;
    padding: 0 0 0 8.724vw;
  }

  #homeService .serviceNurs .image {
    max-width: 82.468vw;
    border-radius: 0.842vw 0 0 0.842vw;
  }

  #homeService .serviceNurs .conts {
    width: 24.404vw;
  }

  #homeService .serviceNurs .conts .oracleHead {
    padding: 1.403vw 0 0 0;
  }

  #homeService .serviceNurs .conts .oracleHead h2 {
    margin-bottom: 1.403vw;
  }

  #homeService .serviceNurs .conts .oracleHead h2 small {
    font-size: 1.403vw;
    margin-bottom: 1.122vw;
    padding: 0 0 0 2.104vw;
  }

  #homeService .serviceNurs .conts .oracleHead h2 small:before {
    width: 0.701vw;
    height: 0.701vw;
    left: 0.561vw;
    top: 0.491vw;
  }

  #homeService .serviceNurs .conts .oracleHead b {
    font-size: 2.244vw;
  }

  #homeService .serviceNurs .conts .oracleHead p {
    font-size: 1.262vw;
  }

  #homeService .servicePlan {
    margin-bottom: 11.921vw;
    padding: 0 8.724vw 0 0;
  }

  #homeService .servicePlan .image {
    max-width: 82.468vw;
    border-radius: 0.842vw 0 0 0.842vw;
  }

  #homeService .servicePlan .conts {
    width: 29.944vw;
  }

  #homeService .servicePlan .conts .oracleHead {
    padding: 1.403vw 0 0 0;
  }

  #homeService .servicePlan .conts .oracleHead h2 {
    margin-bottom: 1.403vw;
  }

  #homeService .servicePlan .conts .oracleHead h2 small {
    font-size: 1.403vw;
    margin-bottom: 1.122vw;
    padding: 0 0 0 2.104vw;
  }

  #homeService .servicePlan .conts .oracleHead h2 small:before {
    width: 0.701vw;
    height: 0.701vw;
    left: 0.561vw;
    top: 0.491vw;
  }

  #homeService .servicePlan .conts .oracleHead b {
    font-size: 2.244vw;
  }

  #homeService .servicePlan .conts .oracleHead p {
    font-size: 1.262vw;
  }

  /*----------------------------------------------------
  homeOffice
  ----------------------------------------------------*/

  #homeOffice {
    padding: 13.464vw 0 0 8.602vw;
  }

  #homeOffice .oracleHead {
    margin-bottom: 3.647vw;
    padding: 1.403vw 0 0 0;
  }

  #homeOffice .oracleHead h2 {
    margin-bottom: 1.403vw;
  }

  #homeOffice .oracleHead h2 small {
    font-size: 1.403vw;
    margin-bottom: 1.964vw;
    padding: 0 0 0 3.436vw;
  }

  #homeOffice .oracleHead h2 small:before {
    width: 0.701vw;
    height: 0.701vw;
    left: 1.543vw;
    top: 0.491vw;
  }

  #homeOffice .oracleHead b {
    font-size: 2.244vw;
    padding: 0 0 0 1.052vw;
  }

  #homeOffice .officeFlex {
    margin-bottom: 6.732vw;
    border-radius: 0.842vw 0 0 0.842vw;
  }

  #homeOffice .officeFlex .image {
    transform: translateY(-6.171vw);
    -webkit-transform: translateY(-6.171vw);
    -ms-transform: translateY(-6.171vw);
  }

  #homeOffice .officeFlex .conts .box01 {
    border-right: 0.07vw dotted #9A937A;
    border-bottom: 0.07vw dotted #9A937A;
    padding: 7.504vw 0 7.644vw;
  }

  #homeOffice .officeFlex .conts .box01 img {
    max-width: 9.467vw;
  }

  #homeOffice .officeFlex .conts .box02 {
    border-bottom: 0.07vw dotted #9A937A;
    padding: 8.205vw 0 7.363vw;
  }

  #homeOffice .officeFlex .conts .box02 h3 small {
    font-size: 1.473vw;
    margin-bottom: 0.421vw;
  }

  #homeOffice .officeFlex .conts .box02 h3 b {
    max-width: 12.623vw;
  }

  #homeOffice .officeFlex .conts .box03 {
    padding: 4.067vw 5.049vw 5.61vw 5.049vw;
  }

  #homeOffice .officeFlex .conts .box03 p {
    font-size: 1.262vw;
  }

  #homeOffice .button {
    transform: translateX(-4.801vw);
    -webkit-transform: translateX(-4.801vw);
    -ms-transform: translateX(-4.801vw);
  }

  /*----------------------------------------------------
  homeInfo
  ----------------------------------------------------*/

  #homeInfo {
    padding: 20.477vw 0 18.864vw 0;
  }

  #homeInfo .oracleHead {
    margin-bottom: 3.927vw;
    padding: 1.403vw 0 0 0;
  }

  #homeInfo .oracleHead h2 {
    margin-bottom: 1.403vw;
  }

  #homeInfo .oracleHead h2 small {
    font-size: 1.403vw;
    margin-bottom: 1.964vw;
    padding: 0 0 0 3.436vw;
  }

  #homeInfo .oracleHead h2 small:before {
    width: 0.701vw;
    height: 0.701vw;
    left: 1.543vw;
    top: 0.491vw;
  }

  #homeInfo .oracleHead b {
    font-size: 2.244vw;
    padding: 0 0 0 1.052vw;
  }

  #homeInfo .infoFlex .titleBox {
    width: 24.895vw;
    padding: 0 0 0 0.982vw;
  }

  #homeInfo .infoFlex .titleBox .link {
    padding: 0 0 0 1.683vw;
  }

  #homeInfo .infoFlex .titleBox .link a .text {
    font-size: 1.543vw;
    margin-right: 0.912vw;
  }

  #homeInfo .infoFlex .titleBox .link a .icon {
    width: 3.506vw;
    height: 3.506vw;
  }

  #homeInfo .infoFlex .titleBox .link a .icon img {
    max-width: 0.433vw;
  }

  #homeInfo .infoFlex .conts {
    max-width: 68.163vw;
    padding: 1.122vw 0 0 0;
  }

  #homeInfo .infoFlex .conts .infoList ul li a {
    border-bottom: 0.07vw solid #C9C9C9;
    padding: 3.086vw 2.104vw 3.086vw 0;
  }

  #homeInfo .infoFlex .conts .infoList ul li a .listHead {
    padding: 0 0 0 1.262vw;
    width: 19.144vw;
  }

  #homeInfo .infoFlex .conts .infoList ul li a .listHead .date {
    font-size: 1.122vw;
    margin-right: 1.403vw;
  }

  #homeInfo .infoFlex .conts .infoList ul li a .listHead .cat {
    font-size: 0.842vw;
    border-radius: 1.262vw;
    padding: 0.421vw 1.192vw;
  }

  #homeInfo .infoFlex .conts .infoList ul li a .title {
    font-size: 1.122vw;
    width: calc(100% - 19.144vw);
  }

  /*----------------------------------------------------
  homeRecruit
  ----------------------------------------------------*/

  #homeRecruit {
    padding: 0 0 18.934vw;
  }

  #homeRecruit .inner {
    max-width: 131.697vw;
  }

  #homeRecruit .imageBox {
    margin-bottom: 21.038vw;
  }

  #homeRecruit .imageBox .box {
    width: 30.853vw;
    height: 30.853vw;
    border-radius: 1.823vw;
    bottom: -10.36vw;
    right: 15.492vw;
  }

  #homeRecruit .imageBox .box .innerBox {
    border-radius: 1.823vw;
    box-shadow: 0.281vw 0.281vw 1.403vw rgba(245,160,169,0.1);
  }

  #homeRecruit .imageBox .box .innerBox .icon {
    max-width: 8.766vw;
    margin: -2.104vw 0 1.893vw;
  }

  #homeRecruit .imageBox .box .innerBox .head h2 {
    font-size: 2.244vw;
  }

  #homeRecruit .imageBox .box .innerBox .head p {
    font-size: 1.262vw;
  }

  #homeRecruit .imageBox .box:before {
    right: -1.314vw;
    bottom: -1.314vw;
    border-radius: 1.823vw;
    background-size: 70%;
  }

  #homeRecruit #presentBn {
    margin-bottom: 8.836vw;
  }

  #homeRecruit .recruitList {
    width: calc(100% - 3.6rem);
    max-width: 100vw;
    margin: 0 auto 14.025vw;
  }

  #homeRecruit .recruitList .box {
    max-width: 24.123vw;
    margin: 0 3.787vw;
  }

  #homeRecruit .recruitList .box a .searchBox {
    width: 7.504vw;
    height: 7.504vw;
    border: 0.281vw solid #F29C97;
    box-shadow: 0.281vw 0.281vw 1.403vw rgba(0,0,0,0.1);
    top: 16.48vw;
    right: -0.701vw;
  }

  #homeRecruit .recruitList .box a .searchBox .icon {
    max-width: 2.174vw;
    margin: 0.281vw 0;
  }

  #homeRecruit .recruitList .box a .searchBox .text {
    font-size: 1.122vw;
  }

  #homeRecruit .recruitList .box a .image {
    max-width: 23.843vw;
    margin: 0 auto 2.104vw;
  }

  #homeRecruit .recruitList .box a h3 {
    font-size: 1.262vw;
    margin-bottom: 1.262vw;
  }

  #homeRecruit .recruitList .box a p {
    font-size: 1.262vw;
  }

  #homeRecruit .recruitList .box a .link {
    margin-top: 3.015vw;
  }

  #homeRecruit .recruitList .box a .link .text {
    font-size: 1.543vw;
    margin-right: 0.912vw;
  }

  #homeRecruit .recruitList .box a .link .icon {
    width: 3.506vw;
    height: 3.506vw;
  }

  #homeRecruit .recruitList .box a .link .icon img {
    max-width: 0.433vw;
  }


}

/*----------------------------------------------------
 SP
----------------------------------------------------*/

@media screen and (max-width: 768px) {

  /*--------------------------
  visual
  --------------------------*/

  #visual {
    margin-bottom: 14.8vw;
    padding: 2.667vw 0 0 0;
  }

  #visual .visualBox {
    width: 100%;
    height: 79.733vw;
    background: url('../img/home/visualBg-sp.jpg') center right no-repeat;
    background-size: cover;
    border-radius: 1.067vw;
  }

  #visual .visualBox .obj01 {
    max-width: 49.984vw;
    left: -13.867vw;
    bottom: 0;
  }

  #visual .visualBox .obj02 {
    max-width: 49.984vw;
    left: 6.667vw;
    bottom: 0;
  }

  #visual .visualBox .obj03 {
    max-width: 49.984vw;
    right: 5.867vw;
    bottom: 0;
  }

  #visual .visualBox .obj04 {
    max-width: 49.984vw;
    right: -20vw;
    bottom: 0;
  }

  #visual .visualBox .obj05 {
    max-width: 19.848vw;
  }

  @keyframes fuwafuwa {
    0% {
      transform: translateY(0px);
    }
    50% {
      transform: translateY(-20px);
    }
    100% {
      transform: translateY(0px);
    }
  }

  #visual .visualBox .obj06 {
    max-width: 56vw;
    left: 7%;
  }

  #visual .scrollBox {
    width: 17.733vw;
    height: 17.733vw;
    bottom: -8.867vw;
  }

  #visual .scrollBox .scrolldown2 {
    bottom: 2.667vw;
  }

  #visual .scrolldown2 span {
    font-size: 2.667vw;
    top: -12.533vw;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }

  #visual .scrolldown2:before {
    bottom: 0;
    left: -0.533vw;
    width: 1.067vw;
    height: 1.067vw;
  }

  #visual .scrolldown2:after {
    width: 0.267vw;
    height: 6.667vw;
  }

  @keyframes circlemove {
    0%{ bottom: 6.667vw;}
    100%{ bottom: -1.333vw;}
  }

  /*--------------------------
  pickupInfo
  --------------------------*/

  #pickupInfo {
    padding: 0 0 0 0;
  }

  #pickupInfo .pickupBox {
    border-radius: 1.6vw;
  }

  #pickupInfo .pickupBox .head {
    width: 22.4vw;
    padding: 5.333vw 0;
  }

  #pickupInfo .pickupBox .head p {
    font-size: 3.2vw;
  }

  #pickupInfo .pickupBox .conts {
    width: calc(100% - 22.4vw);
    padding: 0 5.067vw;
  }

  #pickupInfo .pickupBox .conts p a {
    font-size: 2.667vw;
    font-weight: 500;
    line-height: 1.6;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  /*--------------------------
  homeVision
  --------------------------*/

  #homeVision {
    padding: 6.933vw 0 13.333vw 0;
  }

  #homeVision .enTitle {
    max-width: 82.8vw;
    transform: translate(-0.267vw, 2.667vw);
    -webkit-transform: translate(-0.267vw, 2.667vw);
    -ms-transform: translate(-0.267vw, 2.667vw);
  }

  #homeVision .visionFlex {
    display: block;
    margin-bottom: 12.533vw;
  }

  #homeVision .visionFlex .image {
    width: 100%;
    max-width: 67.659vw;
    margin: 0 auto 0;
    transform: translate(-2.4vw, -0.533vw);
    -webkit-transform: translate(-2.4vw, -0.533vw);
    -ms-transform: translate(-2.4vw, -0.533vw);
  }

  #homeVision .visionFlex .conts {
    padding: 5.6vw 0 0 3.467vw;
  }

  #homeVision .visionFlex .conts h2 {
    font-size: 5.333vw;
    font-weight: 700;
    line-height: 1.791;
    letter-spacing: 0.12em;
    margin-bottom: 3.2vw;
  }

  #homeVision .visionFlex .conts h2:before {
    content: '';
    width: 9.6vw;
    height: 9.6vw;
    border-radius: 1.067vw;
    left: 68.8vw;
    top: 3.2vw;
    z-index: -1;
  }

  #homeVision .visionFlex .conts p {
    font-size: 2.933vw;
    line-height: 2;
    margin-bottom: 3.2vw;
  }

  #homeVision .visionFlex .conts ul {
    margin-bottom: 2.4vw;
  }

  #homeVision .visionFlex .conts ul li {
    font-size: 2.933vw;
    line-height: 2;
    margin-bottom: -0.267vw;
    padding: 0 0 0 4.267vw;
  }

  #homeVision .visionFlex .conts ul li:before {
    width: 1.333vw;
    height: 1.333vw;
    left: 0.8vw;
    top: 2.133vw;
  }

  /*--------------------------
  homeContactBlue
  --------------------------*/

  #homeContactBlue {
    background: url('../img/home/contact-bg-blue-sp.jpg') no-repeat;
    background-size: cover;
    padding: 6.133vw 0 11.2vw 0;
  }

  #homeContactBlue .inner {
    width: calc(100% - 3rem);
    max-width: 100%;
  }

  #homeContactBlue .contactFlex {
    display: block;
    padding: 0 0 0;
  }

  #homeContactBlue .contactFlex .headBox {
    width: 100%;
    max-width: initial;
    margin-bottom: 6.4vw;
  }

  #homeContactBlue .contactFlex .headBox .oracleHead h2 {
    margin-bottom: 1.6vw;
  }

  #homeContactBlue .contactFlex .headBox .oracleHead h2 small {
    font-size: 2.667vw;
    margin-bottom: 2.4vw;
    padding: 0 0 0 8vw;
  }

  #homeContactBlue .contactFlex .headBox .oracleHead h2 small:before {
    width: 1.333vw;
    height: 1.333vw;
    left: 5.067vw;
    top: 1.333vw;
  }

  #homeContactBlue .contactFlex .headBox .oracleHead b {
    font-size: 4.267vw;
    padding: 0 0 0 4vw;
  }

  #homeContactBlue .contactFlex .headBox p {
    font-size: 3.2vw;
    padding: 0 0 0 4vw;
  }

  #homeContactBlue .contactFlex .conts {
    border-radius: 1.6vw;
    padding: 6.933vw 0 8.267vw 0;
    width: 100%;
  }

  #homeContactBlue .contactFlex .conts .contsBox {
    display: block;
  }

  #homeContactBlue .contactFlex .conts .formArea {
    width: 100%;
    border-right: none;
    border-bottom: 0.267vw solid #707070;
    padding: 1.6vw 0 8vw 0;
  }

  #homeContactBlue .contactFlex .conts .formArea .topTex {
    font-size: 2.933vw;
    margin-bottom: 4.267vw;
  }

  #homeContactBlue .contactFlex .conts .telArea {
    width: 100%;
    padding: 8.533vw 0 0 0;
  }

  #homeContactBlue .contactFlex .conts .telArea .topTex {
    font-size: 2.933vw;
    margin-bottom: 1.867vw;
  }

  #homeContactBlue .contactFlex .conts .telArea .telNo {
    margin-bottom: 0.8vw;
  }

  #homeContactBlue .contactFlex .conts .telArea .telNo a .icon {
    max-width: 4vw;
    line-height: 2.525vw;
    transform: translate(-1.067vw, 0);
    -webkit-transform: translate(-1.067vw, 0);
    -ms-transform: translate(-1.067vw, 0);
  }

  #homeContactBlue .contactFlex .conts .telArea .telNo a .tex {
    font-size: 5.867vw;
  }

  #homeContactBlue .contactFlex .conts .telArea .telBottom {
    font-size: 2.667vw;
  }

  /*--------------------------
  homeService
  --------------------------*/

  #homeService {
    padding: 6.133vw 0 16.267vw 0;
  }

  #homeService .serviceHead {
    display: block;
    margin-bottom: 12.267vw;
  }

  #homeService .enTitle {
    max-width: 70.281vw;
    top: 6.4vw;
    left: 50%;
  }

  #homeService .serviceHead .titleConts {
    width: 100%;
    padding: 20.267vw 6.933vw 0 10.667vw;
  }

  #homeService .serviceHead .titleConts h2 {
    font-size: 5.467vw;
    margin-bottom: 2.133vw;
  }

  #homeService .serviceHead .titleConts p {
    font-size: 2.933vw;
  }

  #homeService .serviceNurs {
    display: block;
    margin-bottom: 18.4vw;
    padding: 0 0 0 4vw;
  }

  #homeService .serviceNurs .image {
    max-width: initial;
    width: 100%;
    margin-bottom: 2.667vw;
    border-radius: 1.6vw 0 0 1.6vw;
  }

  #homeService .serviceNurs .conts {
    width: 100%;
  }

  #homeService .serviceNurs .conts .oracleHead h2 {
    margin-bottom: 1.333vw;
  }

  #homeService .serviceNurs .conts .oracleHead h2 small {
    font-size: 2.667vw;
    margin-bottom: 4.267vw;
    padding: 0 0 0 10.933vw;
  }

  #homeService .serviceNurs .conts .oracleHead h2 small:before {
    width: 1.333vw;
    height: 1.333vw;
    left: 7.2vw;
    top: 1.067vw;
  }

  #homeService .serviceNurs .conts .oracleHead b {
    font-size: 4.267vw;
    padding: 0 0 0 6.4vw;
  }

  #homeService .serviceNurs .conts .oracleHead p {
    font-size: 2.933vw;
    padding: 0 10.4vw 0 6.4vw;
  }

  #homeService .servicePlan {
    display: block;
    margin-bottom: 10.933vw;
    padding: 0 4vw 0 0;
  }

  #homeService .servicePlan .image {
    max-width: initial;
    width: 100%;
    margin-bottom: 2.667vw;
    border-radius: 1.6vw 0 0 1.6vw;
  }

  #homeService .servicePlan .conts {
    width: 100%;
  }

  #homeService .servicePlan .conts .oracleHead h2 {
    margin-bottom: 1.333vw;
  }

  #homeService .servicePlan .conts .oracleHead h2 small {
    font-size: 2.667vw;
    margin-bottom: 4.267vw;
    padding: 0 0 0 14.933vw;
  }

  #homeService .servicePlan .conts .oracleHead h2 small:before {
    width: 1.333vw;
    height: 1.333vw;
    left: 11.2vw;
    top: 1.067vw;
  }

  #homeService .servicePlan .conts .oracleHead b {
    font-size: 4.267vw;
    padding: 0 0 0 10.4vw;
  }

  #homeService .servicePlan .conts .oracleHead p {
    font-size: 2.933vw;
    padding: 0 6.4vw 0 10.4vw;
  }

  /*--------------------------
  homeContactPink
  --------------------------*/

  #homeContactPink {
    background: url('../img/home/contact-bg-pink-sp.jpg') no-repeat;
    background-size: cover;
    padding: 6.133vw 0 11.2vw 0;
  }

  #homeContactPink .inner {
    width: calc(100% - 3rem);
    max-width: 100%;
  }

  #homeContactPink .contactFlex {
    display: block;
    padding: 0 0 0;
  }

  #homeContactPink .contactFlex .headBox {
    width: 100%;
    max-width: initial;
    margin-bottom: 6.933vw;
  }

  #homeContactPink .contactFlex .headBox .oracleHead h2 {
    margin-bottom: 1.6vw;
  }

  #homeContactPink .contactFlex .headBox .oracleHead h2 small {
    font-size: 2.667vw;
    margin-bottom: 2.4vw;
    padding: 0 0 0 8vw;
  }

  #homeContactPink .contactFlex .headBox .oracleHead h2 small:before {
    width: 1.333vw;
    height: 1.333vw;
    left: 5.067vw;
    top: 1.333vw;
  }

  #homeContactPink .contactFlex .headBox .oracleHead b {
    font-size: 4.267vw;
    padding: 0 0 0 4vw;
  }

  #homeContactPink .contactFlex .headBox p {
    font-size: 3.2vw;
    padding: 0 0 0 4vw;
  }

  #homeContactPink .contactFlex .conts {
    border-radius: 1.6vw;
    padding: 6.933vw 0 8.267vw 0;
    width: 100%;
  }

  #homeContactPink .contactFlex .conts .contsBox {
    display: block;
  }

  #homeContactPink .contactFlex .conts .formArea {
    width: 100%;
    border-right: none;
    border-bottom: 0.267vw solid #707070;
    padding: 1.6vw 0 8vw 0;
  }

  #homeContactPink .contactFlex .conts .formArea .topTex {
    font-size: 2.933vw;
    margin-bottom: 4.267vw;
  }

  #homeContactPink .contactFlex .conts .telArea {
    width: 100%;
    padding: 8.533vw 0 0 0;
  }

  #homeContactPink .contactFlex .conts .telArea .topTex {
    font-size: 2.933vw;
    margin-bottom: 1.867vw;
  }

  #homeContactPink .contactFlex .conts .telArea .telNo {
    margin-bottom: 0.8vw;
  }

  #homeContactPink .contactFlex .conts .telArea .telNo a .icon {
    max-width: 4vw;
    line-height: 2.525vw;
    transform: translate(-1.067vw, 0);
    -webkit-transform: translate(-1.067vw, 0);
    -ms-transform: translate(-1.067vw, 0);
  }

  #homeContactPink .contactFlex .conts .telArea .telNo a .tex {
    font-size: 5.867vw;
  }

  #homeContactPink .contactFlex .conts .telArea .telBottom {
    font-size: 2.667vw;
  }

  /*--------------------------
  homeOffice
  --------------------------*/

  #homeOffice {
    position: relative;
    overflow: hidden;
    padding: 8.533vw 0 0 0;
  }

  #homeOffice .oracleHead {
    margin-bottom: 10.133vw;
    padding: 5.333vw 0 0 0;
  }

  #homeOffice .oracleHead h2 small {
    font-size: 2.667vw;
    margin-bottom: 4vw;
    padding: 0 0 0 11.733vw;
  }

  #homeOffice .oracleHead h2 small:before {
    width: 1.333vw;
    height: 1.333vw;
    left: 8.267vw;
    top: 1.067vw;
  }

  #homeOffice .oracleHead b {
    font-size: 4.267vw;
    padding: 0 0 0 7.467vw;
  }

  #homeOffice .officeFlex {
    position: relative;
    display: block;
    background: none;
    margin-bottom: 8.267vw;
    border-radius: 0;
  }

  #homeOffice .officeFlex:before {
    content: '';
    width: 100%;
    height: 69%;
    background: #F8F6EF;
    position: absolute;
    left: 0;
    bottom: 0;
  }

  #homeOffice .officeFlex .image {
    width: calc(100% - 8vw);
    margin: 0 auto 0;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    position: relative;
    z-index: 1;
  }

  #homeOffice .officeFlex .conts {
    width: 100%;
    position: relative;
    z-index: 1;
  }

  #homeOffice .officeFlex .conts .box01 {
    width: 43%;
    padding: 0;
  }

  #homeOffice .officeFlex .conts .box01 img {
    width: 100%;
    max-width: 17.6vw;
  }

  #homeOffice .officeFlex .conts .box02 {
    width: 57%;
    padding: 11.467vw 0 4.533vw;
  }

  #homeOffice .officeFlex .conts .box02 h3 small {
    font-size: 2.8vw;
    margin-bottom: 0.267vw;
  }

  #homeOffice .officeFlex .conts .box02 h3 b {
    max-width: 27.467vw;
  }

  #homeOffice .officeFlex .conts .box03 {
    padding: 4.533vw 8.533vw 6.133vw 8.533vw;
  }

  #homeOffice .officeFlex .conts .box03 p {
    font-size: 2.933vw;
  }

  #homeOffice .button {
    transform: translateX(0);
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
  }

  /*--------------------------
  homeInfo
  --------------------------*/

  #homeInfo {
    position: relative;
    overflow: hidden;
    padding: 21.6vw 0 26.667vw 0;
  }

  #homeInfo .infoFlex {
    display: block;
  }

  #homeInfo .infoFlex .titleBox {
    width: 100%;
    padding: 0 0 0 0;
    display: flex;
    justify-content: space-between;
  }

  #homeInfo .oracleHead {
    margin-bottom: 0;
    padding: 5.333vw 0 0 0;
  }

  #homeInfo .oracleHead h2 {
    margin-bottom: 0;
  }

  #homeInfo .oracleHead h2 small {
    font-size: 2.667vw;
    margin-bottom: 2.4vw;
    padding: 0 0 0 7.2vw;
  }

  #homeInfo .oracleHead h2 small:before {
    width: 1.333vw;
    height: 1.333vw;
    left: 4vw;
    top: 1.333vw;
  }

  #homeInfo .oracleHead b {
    font-size: 4.267vw;
    padding: 0 0 0 2.933vw;
  }

  #homeInfo .infoFlex .titleBox .link {
    padding: 9.6vw 0 0 0;
  }

  #homeInfo .infoFlex .titleBox .link a .text {
    font-size: 2.933vw;
    margin-right: 1.6vw;
  }

  #homeInfo .infoFlex .titleBox .link a .icon {
    width: 6.667vw;
    height: 6.667vw;
  }

  #homeInfo .infoFlex .titleBox .link a .icon img {
    max-width: 0.824vw;
  }

  #homeInfo .infoFlex .conts {
    width: 100%;
    max-width: 100%;
    margin-bottom: 1.6vw;
    padding: 3.733vw 0 0 0;
  }

  #homeInfo .infoFlex .conts .infoList ul li a {
    display: block;
    border-bottom: 0.267vw solid #C9C9C9;
    padding: 4vw 2.667vw 2.933vw 2.933vw;
  }

  #homeInfo .infoFlex .conts .infoList ul li a .listHead {
    padding: 0 0 0 0;
    width: 100%;
  }

  #homeInfo .infoFlex .conts .infoList ul li a .listHead .date {
    font-size: 2.667vw;
    margin-right: 2.667vw;
  }

  #homeInfo .infoFlex .conts .infoList ul li a .listHead .cat {
    font-size: 2.667vw;
    border-radius: 4.8vw;
    padding: 1.333vw 3.2vw;
  }

  #homeInfo .infoFlex .conts .infoList ul li a .title {
    font-size: 2.667vw;
    line-height: 2.1;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    width: 100%;
  }

  /*--------------------------
  homeRecruit
  --------------------------*/

  #homeRecruit {
    padding: 3.2vw 0 26.667vw 0;
  }

  #homeRecruit .inner {
    max-width: 100%;
    width: 100%;
  }

  #homeRecruit .imageBox {
    position: relative;
    margin-bottom: 13.067vw;
  }

  #homeRecruit .imageBox .box {
    width: 57.067vw;
    height: 40.533vw;
    border-radius: 3.467vw;
    position: absolute;
    bottom: 8.267vw;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    z-index: 10;
  }

  #homeRecruit .imageBox .box:before {
    background: url('../img/common/bg-dots.svg') right bottom;
    background-size: 55.467vw;
    position: absolute;
    right: -2.933vw;
    bottom: -2.933vw;
    border-radius: 6.933vw;
  }

  #homeRecruit .imageBox .box .innerBox {
    border-radius: 3.467vw;
    box-shadow: 0.533vw 0.533vw 2.667vw rgba(245,160,169,0.1);
  }

  #homeRecruit .imageBox .box .innerBox .icon {
    width: 100%;
    max-width: 16.533vw;
    margin: -2.667vw 0 2.667vw;
  }

  #homeRecruit .imageBox .box .innerBox .head h2 {
    font-size: 3.467vw;
    margin: -1.333vw 0;
  }

  #homeRecruit .imageBox .box .innerBox .head p {
    font-size: 2.933vw;
  }

  #homeRecruit #presentBn {
    margin-bottom: 16.8vw;
  }

  #homeRecruit .recruitList {
    display: block;
    width: calc(100% - 3rem);
    max-width: 100%;
    margin: 0 auto 10.933vw;
  }

  #homeRecruit .recruitList .box {
    width: 100%;
    max-width: 69.467vw;
    margin: 0 auto 15.733vw;
  }

  #homeRecruit .recruitList .box:last-child {
    margin: 0 auto 0;
  }

  #homeRecruit .recruitList .box a .image {
    max-width: 56vw;
    margin: 0 auto 6.133vw;
  }

  #homeRecruit .recruitList .box a .searchBox {
    width: 14.267vw;
    height: 14.267vw;
    border: 0.533vw solid #F29C97;
    box-shadow: 0.533vw 0.533vw 2.667vw rgba(0,0,0,0.1);
    position: absolute;
    top: 41.867vw;
    right: 6.667vw;
  }

  #homeRecruit .recruitList .box a .searchBox .icon {
    width: 100%;
    max-width: 3.6vw;
    line-height: 1;
    margin: 0.267vw 0;
  }

  #homeRecruit .recruitList .box a .searchBox .text {
    font-size: 2.667vw;
    transform: scale(0.8);
    -webkit-transform: scale(0.8);
    -ms-transform: scale(0.8);
  }

  #homeRecruit .recruitList .box a h3 {
    font-size: 3.2vw;
    margin-bottom: 1.333vw;
  }

  #homeRecruit .recruitList .box a p {
    font-size: 2.933vw;
  }

  #homeRecruit .recruitList .box a .link {
    margin-top: 5.333vw;
  }

  #homeRecruit .recruitList .box a .link .text {
    font-size: 2.933vw;
    margin-right: 1.867vw;
  }

  #homeRecruit .recruitList .box a .link .icon {
    width: 6.667vw;
    height: 6.667vw;
  }

  #homeRecruit .recruitList .box a .link .icon img {
    width: 100%;
    max-width: 0.824vw;
  }


}
