@charset "UTF-8";

#container {
  padding-top: 110px;
  padding-bottom: 57px;
}

@media print, screen and (min-width: 641px) {
  .nav_wrap {
    top: 871px;
  }
}

/*==================================================================

  メインビジュアル

==================================================================*/
.top_mainvisual{
  display:block;
  position:relative;
  height: 840px;
  margin-top: 10px
}
.mainvisual_wrap{
  height: 840px;
}
.top_mainvisual .inner{
  height: inherit;
  width: 89.5%;
  max-width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  
}

/* キャッチフレーズ */
.mainvisual_catch {
  position:absolute;
  bottom: 9%;
}
.mainvisual_catch p {
  display:block;
  font-size: 32px;
  letter-spacing: 0.025em;
}
.mainvisual_catch span{
  display: inline-block;
  line-height: 1.5;
  background: rgba(255,255,255,0.9);
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #006a82;
  border-radius: 5px;
  padding: 3px 20px 3px 30px;
}


/*==================================================================

  .top_point

==================================================================*/
.top_point .tit01 {
  line-height: 1;
}
@media screen and (max-width:640px) {
  .top_point .tit01 b {
    position: relative;
    left: 30px;
    top: 15px;
  }
}
.top_point .tit01 span {
  display: inline-block;
  font-size: 90px;
  font-weight: 500;
  line-height: 1;
  position: relative;
  z-index: 1;
}
.top_point .tit01 span::before {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  content: "６";
  color: rgba(0,0,0,0);
  background: linear-gradient(180deg,rgba(204, 174, 97, 1) 0%, rgba(204, 174, 97, 1) 31%, rgba(0, 106, 130, 1) 100%);
	-webkit-background-clip:text;
  text-shadow: none;

}
.top_point_list {
  margin-top: 69px;
  position: relative;
}
.top_point_list:before {
  position: absolute;
  top: 51.5%;
  right: 0;
  background: url("../images/point_bg_right01.jpg") top right no-repeat;
  width: 80%;
  max-width: 850px;
  height: 400px;
  content: "";
  background-size: 100%;
  z-index: -1;
}
.top_point_list:after {
  position: absolute;
  bottom: -140px;
  right: 0;
  background: url("../images/point_bg_right02.jpg") top right no-repeat;
  width:50%;
  max-width: 554px;
  height: 588px;
  content: "";
  background-size: 100%;
  z-index: -1;
}
.top_point_item {
  background: #ddf0ee;
  display: flex;
  position: relative;
  margin-bottom: 110px;
  z-index: 1;
}

.top_point_item::before {
  position: absolute;
  background: url("../images/point_m_blue.jpg") top left no-repeat;
  background-size: cover;
  width: 16.5%;
  height: 100%;
  content: "";
}
.top_point_kazari_en {
  position: absolute;
  top:0;
  left: -3%;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  font-size: 13px;
  letter-spacing: 0.025em;
  line-height: 1;
  color: #006a82;
  height: 100%;
  text-align: center;
  font-family: "josefin-sans", sans-serif;
  font-weight: 300;
  font-style: normal;
}
.top_point_kazari_en.item_02 {
  color: #5b814c;
}
.top_point_kazari_en.item_03 {
  color: #316a45;
}
.top_point_item_detail {
  width: 48.8%;
}
.top_point_item_detail02 {
  width: 100%;
   padding-left: 7.2%;
}
.top_point_item_inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 90%;
  max-width: 1380px;
  margin: auto;
  padding-left:160px;
  position: relative;
  z-index: 2;
  min-height: 470px;
}
.top_point_item_inner::before {
  position: absolute;
  top: -23%;
  left: 33%;
  background: url("../images/point_item_bg_kazari.png") top center  no-repeat;
  background-size: cover;
  width: 50%;
  max-width: 469px;
  height: 1274px;
  content: "";
  z-index: -1;
}
.top_point_item_num {
  position: absolute;
  left: 0;
  top: -72px;
  width: 12%;
  max-width: 160px;
}
.top_point_item_tit {
  font-size: 34px;
  letter-spacing: 0.025em;
  line-height: 1.76;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  padding-left: 6.2%;
  margin-bottom: 5.4%;
  text-align: left;
}
.top_point_item_img {
  position: absolute;
  width: 42.8%;
  right: 0;
  border-top-left-radius: 30px;
  overflow: hidden;
  margin-top: -50px;
  z-index: 2;
  height:calc(100% + 50px);
}
.top_point_item_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;

}
.top_point_item:nth-of-type(3) .top_point_item_img img  {
  object-position: right center;
}
.top_point_item_text {
  font-size: 18px;
  letter-spacing: 0.025em;
  line-height: 2.5;
}
.top_point_item_sub_tit { 
  font-size: 28px;
  letter-spacing: 0.025em;
  color: #006a82;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  margin-top: 4%;
  margin-bottom: 3%;
  position: relative;
}
.top_point_item_sub_tit::before {
  position: absolute;
  right: 4%;
  top: 54%;
  width: 35%;
  height: 2px;
  background: #3f8f9c;
  content: "";
}
.top_point_t_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 25px;
}

.top_point_t_item {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 18.5%;
  text-align: center;
  align-content: center;
  background: url("../images/point_t_list_bg_odd.png") center no-repeat;
  background-size: 100%;
  height: 134px;
  margin-bottom: 25px;
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0.025em;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
}
.top_point_t_item span {
  display: block;
  font-size: 85%;
  width: 100%;
}
.top_point_t_item:nth-child(even) {
  background-image: url("../images/point_t_list_bg_even.png");
}
.top_point_item_kazar {
  position: absolute;
  right: 0;
  bottom: -176px;
  z-index: -1;
}
.top_point_item_kazari01 {
  position: absolute;
  left: 0;
  bottom: -296px;
  z-index: -1;
}
.top_point_item_kazari02 {
  position: absolute;
  left: 17px;
  bottom: -162px;
  z-index: -1;
}
.top_point_item_kazari03 {
  position: absolute;
  right: 0;
  top: -100px;
  z-index: -1;
}

.f_color_blue {
  color: #007496;
}
.f_color_yellow {
  color: #c68c01;;
}
.f_color_pink {
  color: #e65757;
}
.f_color_green {
  color: #339e5e;
}

.top_point_item:nth-child(odd) {
  margin-left: 5.2%;
  border-top-left-radius: 50px;
  border-bottom-left-radius: 50px;
}
.top_point_item:nth-child(odd)::before {
    border-top-left-radius: 50px;
  border-bottom-left-radius: 50px;
}

.top_point_item:nth-child(even) {
  margin-right: 5.2%;
  border-top-right-radius: 50px;
  border-bottom-right-radius: 50px;
}
.top_point_item:nth-child(even)::before {
  border-top-right-radius: 50px;
  border-bottom-right-radius: 50px;
  left: auto;
  right: 0;
}
.top_point_item:nth-child(even) .top_point_item_img {
  right: auto;
  left: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 30px;
}
.top_point_item:nth-child(even) .top_point_item_inner {
  padding-left: 0;
  padding-right: 160px;
}
.top_point_item:nth-child(even) .top_point_item_inner::before {
  left: auto;
  right: 33%
}
.top_point_item:nth-child(even) .top_point_item_detail {
  margin-left: auto;
}
.top_point_item:nth-child(even) .top_point_item_num {
  left: auto;
  right: 0;
}
.top_point_item:nth-child(even) .top_point_kazari_en {
  left: auto;
  right: -3%;
}


.top_point_item:nth-child(2) {
  background: #edf1d9;
}
.top_point_item:nth-child(2)::before {
  background-image: url("../images/point_m_yellow.jpg");
}
.top_point_item:nth-child(3) {
  background: #e0f0dd;
}
.top_point_item:nth-child(3)::before {
  background-image: url("../images/point_m_green.jpg");
}
.top_point_item:nth-child(5) {
  background: #edf1d9;
}
.top_point_item:nth-child(5)::before {
  background-image: url("../images/point_m_yellow02.jpg");
}

.top_point_item:nth-child(5) .top_point_item_img {
  width: 38.4%;
}
.top_point_item:nth-child(5)  .top_point_item_detail {
  width: 58%;
  padding: 40px 0 55px;
}
.top_point_item:nth-child(5) .top_point_item_tit {
  margin-bottom: 3.4%;
  padding-left: 5%;
}
.top_point_item:nth-child(5) .top_point_item_text {
  padding-right: 8%;
}
.top_point_item:nth-child(5) .top_point_item_img img {
  object-position: center;
}

.top_point_item:nth-child(6) {
  padding-bottom: 3.8%;
  background: #e0f0dd;
}
.top_point_item:nth-child(6)::before {
  background-image: url("../images/point_m_green02.jpg");
}
.top_point_item:nth-child(6) .top_point_item_inner {
  padding-right: 0;
}
.top_point_item:nth-child(6) .top_point_item_detail {
  margin-right: 160px;
  width: 43.6%;
  padding-top:57px;
}
.top_point_item:nth-child(6) .top_point_item_img {
  height: auto;
  border-bottom-right-radius: 30px;
}
.top_point_item:nth-child(6) .top_point_item_tit {
  padding-left: 0;
}
.top_point_item:nth-child(6)  .top_point_item_sub_tit {
  margin-top: 2%;
  margin-bottom: 0.7%;
}

@media screen and (max-width: 1600px) {
  .top_point_item_inner {
    width: 95%;
    padding-left: 9.7%;
  }
  .top_point_item:nth-child(odd) {
  margin-left: 3%;
  }
  .top_point_item:nth-child(even) {
    margin-right: 3%
  }
  .top_point_item_img {
    width: 35%
  }
  .top_point_item_detail {
    width: 58%
  }
  .top_point_item:nth-child(5) .top_point_item_detail {
    width: 68%;
  }
  .top_point_item:nth-child(5) .top_point_item_img {
    width: 29%;
  }
    
}

/*==================================================================

  .top_message

==================================================================*/
.top_message_wrap {
  padding-top: 54px;
  padding-bottom: 120px;
  position: relative;
}
.top_message_wrap::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 78%;
  background: #CDECF5;
  background: linear-gradient(0deg,rgba(205, 236, 245, 1) 0%, rgba(247, 249, 226, 1) 57%, rgba(255, 255, 255, 1) 100%);
  content: "";
}
.top_message_copy {
  text-align: center;
  font-size: 32px;
  letter-spacing: 0.025em;
  color: #e4718c;
  line-height: 1.71;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  width: 100%;
}
.top_message_wrap .inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
  position: relative;
  z-index: 2;
}
.top_message_wrap_kazari {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 80%;
  z-index: 1;
  content: ""
  
}
.top_message_wrap_kazari::before {
  position: absolute;
  left: 0;
  top: -60px;
  background: url("../images/message_img01.png") top left no-repeat;
  width: 20%;
  max-width: 292px;
  height: 305px;
  content: "";
  background-size: 100%;
}
.top_message_wrap_kazari::after {
  position: absolute;
  right: 0;
  top: 381px;
  background: url("../images/message_img02.png") top left no-repeat;
  width: 20%;
  max-width: 292px;
  height: 305px;
  content: "";
  background-size: 100%;
}
.top_message_doctor_img {
  width: 24%;
}
.top_message_text {
  width: 71.5%;
  font-size: 18px;
  letter-spacing: 0.024em;
  line-height:2.5; 
  
}

.top_message_sub_tit {
  position: relative;
  z-index: 2;
  text-align: center;
  letter-spacing: 0.025em;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 32px;
  color: #006a82;
  padding-top: 31px;
  padding-bottom: 31px;
  background: url("../images/message_sub_tit_bg.png") center no-repeat;
  width: 90%;
  margin: auto;
  max-width: 1280px;
  text-shadow: 0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff;
}
.top_message_sub_tit::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 490px;
  height: 2px;
  background: #fff;
  content: "";
}
.top_message_sub_tit::after{
  position: absolute;
  top: 50%;
  right: 0;
  width: 490px;
  height: 2px;
  background: #fff;
  content: "";
}
.top_message_sub_tit.item_01 {
  margin-top: -14px;
}
.top_message_sub_tit.item_02::before,
.top_message_sub_tit.item_02::after{
  width: 30px;
}
.top_message_a_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  position: relative;
  z-index: 2;
  max-width: 1280px;
  width: 90%;
  margin: 0 auto 80px;
  padding-top: 8px;
}
.top_message_a_item {
  width: 16%;
  text-align: center;
  font-size: 20px;
  letter-spacing: 0.025em;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  white-space: nowrap
}

.top_message_a_item img {
  padding-bottom: 18px;
}


.top_message_b_list_wrap {
  padding-top: 20px;
  position: relative;
  z-index: 1;
}
.top_message_b_list_wrap::before {
  position: absolute;
  top: 350px;
  left: 0;
  width: 100%;
  height: 400px;
  content: "";
  background: #A3D5E0;
  background: linear-gradient(180deg,rgba(163, 213, 224, 1) 0%, rgba(255, 255, 255, 1) 100%);
  content: "";
  z-index:-1;
}
.top_message_b_list_wrap::after {
  position: absolute;
  top: -104px;
  left: 0;
  background: url("../images/message_kazari_left01.png") top left no-repeat;
  background-size: 100%;
  width: 44%;
  max-width: 832px;
  height: 520px;
  content: "";
  z-index: -2;
}

.top_message_b_list_wrap .top_message_text {
  text-align: center;
  width: 100%;
  position: relative;
  z-index: 1;
}
.top_message_b_list_wrap .top_message_text::before {
  position: absolute;
  bottom: -114px;
  left: 0;
  background: url("../images/wave_blue.png") top center repeat-x;
  background-size:cover;
  width: 100%;
  height: 116px;
  content: "";
}

.top_message_b_list {
  display: flex;
  justify-content: space-between;
  width: 90%;
  max-width: 1280px;
  margin: auto;
  padding-top: 48px;
  position: relative;
  z-index: 2;
}
.top_message_b_item {
  width: 31.3%;
  text-align: center;
}
.top_message_b_item > img {
  border-radius: 5px;
}

.top_message_b_item_tit {
  font-size: 30px;
  letter-spacing: 0.025em;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  margin-top: 19px;
  line-height: 1;
  position: relative;
}
.top_message_b_item_tit::before {
  position: absolute;
  top: 51%;
  left: 0;
  background: #006a82;
  width: 140px;
  height: 2px;
  content: "";
}
.top_message_b_item_tit::after{
  position: absolute;
  top: 51%;
  right: 0;
  background: #006a82;
  width: 140px;
  height: 2px;
  content: "";
}
.top_message_b_item:nth-child(2) .top_message_b_item_tit::before,
.top_message_b_item:nth-child(2) .top_message_b_item_tit::after {
  background-color: #7fb07c;
  width: 130px;
}
.top_message_b_item:nth-child(3) .top_message_b_item_tit::before,
.top_message_b_item:nth-child(3) .top_message_b_item_tit::after {
  background-color: #caa13f;
  width: 110px;
}
.top_message_b_item_tit_en {
  font-size: 14px;
  letter-spacing: 0.025em;
  color: #006a82;
  font-family: "josefin-sans", sans-serif;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  margin: 15px;
}
.top_message_b_item:nth-child(2) .top_message_b_item_tit_en  {
  color: #7fb07c;
}
.top_message_b_item:nth-child(3) .top_message_b_item_tit_en  {
  color: #caa13f;
}

.top_message_b_item_job {
  color: #006a82;
  font-size: 22px;
  letter-spacing: 0;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  text-shadow: 0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff;
  padding: 14px 0 10px;
}

.top_message_b_item:nth-child(2) .top_message_b_item_job {
  color: #7fb07c;
}

.top_message_b_item:nth-child(3) .top_message_b_item_job {
  color: #caa13f;
}
.top_message_b_item_text {
  font-size: 18px;
  letter-spacing: 0;
  line-height: 2.5;
  text-align: left;
  padding-bottom: 30px;
}
.top_message_b_item_btn {
  display: block;
  width: 100%;
  height:60px;
  line-height: 60px;
  border-radius: 100vh;
  color: #57adc7;
  border: solid 1px #57adc7;
  font-size: 18px;
  letter-spacing: 0;
  position: relative;
  background:rgba(255,255,255,0.7);
}
.top_message_b_item_btn span {
   position: relative;
}
.top_message_b_item_btn span::before {
  position: absolute;
  top: 3px;
  right: -24px;
  background: url("../images/arrow_b.png") center no-repeat;
  width: 7px;
  height: 12px;
  content: "";
  transition: 0.15s ease-out;
}

.top_message_b_item_btn:hover span::before  {
  right: -34px;
}
.top_message_bottom_kazari {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 500px;
  z-index: 1;
}
.top_message_bottom_kazari::before {
  position: absolute;
  left: 0;
  bottom: -174px;;
  background: url("../images/message_b_left.png") bottom left no-repeat;
  width: 25%;
  max-width: 278px;
  height: 394px;
  content: "";
  background-size: 100%;
}
.top_message_bottom_kazari::after {
  position: absolute;
  right: 0;
  bottom: -304px;
  background: url("../images/message_b_right.png") bottom left no-repeat;
  width: 25%;
  max-width: 283px;
  height: 517px;
  content: "";
  background-size: 100%;
}


.top_message_b_item:nth-child(2) .top_message_b_item_btn {
  color: #469641;
  border-color: #469641;
}
.top_message_b_item:nth-child(3) .top_message_b_item_btn {
  color: #caa13f;
  border-color: #caa13f;
}
.top_message_b_item:nth-child(2) .top_message_b_item_btn span::before {
  background-image: url("../images/arrow_g.png");
}
.top_message_b_item:nth-child(3) .top_message_b_item_btn span::before {
  background-image: url("../images/arrow_o.png");
}


/*==================================================================

  .top_voice

==================================================================*/
 .top_voice {
  position: relative;
   z-index: 1;
   margin-top: 15px;
   
 }
 .top_voice_wrap {
   padding-top: 30px;
   overflow: hidden;
   padding-bottom: 134px;
   position: relative;
 }
.top_voice_wrap::before {
  position: absolute;
  bottom: 0;
  left: 0;
  background: url("../images/voice_bg_left02.png") bottom left no-repeat;
  width: 45%;
  max-width: 811px;
  height:501px;
  content: "";
  background-size: 100%;
}
.top_voice_wrap::after {
  position: absolute;
  bottom: 0;
  right: 0;
  background: url("../images/voice_bg_right03.png") bottom right no-repeat;
  width: 55%;
  max-width: 1164px;
  height:3741px;
  content: "";
  background-size: 100%;
}
 .top_voice .tit01 i::before {
   content: "スタッフインタビュー・働くスタッフの声";

 }

.top_voice_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 90%;
  max-width: 1280px;
  margin: 0 auto 96px;
  position: relative;
  z-index: 1;
}
.top_voice_img {
  width: 24%;
  text-align: center;
}
.top_voice_detail {
  width: 71.6%;
}

.top_voice_sub_tit {
  font-size: 32px;
  letter-spacing: 0.025em;
  line-height: 1.71;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #e4718c;
  margin-top: 4%;
  margin-bottom: 4.4%;
}
.top_voice_faq > dt {
  font-size: 24px;
  letter-spacing: 0.025em;
  line-height: 1.71;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #0a6d80; 
  margin-bottom: 10px;
}

.top_voice_faq > dd {
  font-size: 18px;
  letter-spacing: 0.025em;
  line-height: 2.222;
  margin-bottom: 28px;
}
.top_voice_img {
  font-size: 23px;
  letter-spacing: 0.025em;
  line-height: 1.71;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #e4718c;
  
}
.top_voice_img img {
  padding-bottom: 26px;
}
.mwrap_admission_celebration {
  position: absolute;
  top: 0;
  left: 80%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: 5;
}
.mwrap_admission_celebration img {
  width: 245px;
  height: auto;
  max-width: unset;
}

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

  .mwrap_admission_celebration {
    position: absolute;
    top: 76px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    z-index: 5;
  }
  
  .mwrap_admission_celebration img {
    width: 260px;
  }
}

.top_voice_massage_wrap {
  width: 100%;
  background: #ddf0ee;
  text-align: center;
  position: relative;
  margin-top: 45px;
  border-radius: 10px;
}
.top_voice_massage_wrap::before {
  position: absolute;
  left: 9%;
  top: 0;
  background: url("../images/voice_box_kazari_left.png") top left no-repeat;
  width: 20%;
  max-width: 253px;
  height: 100%;
  background-size: 100%;
  content: "";
  
}
.top_voice_massage_wrap::after {
  position: absolute;
  right:0;
  top: 0;
  background: url("../images/voice_box_kazari_right.png") top right no-repeat;
  width: 20%;
  max-width: 246px;
  height: 100%;
  background-size: 100%;
  content: "";
}
.top_voice_massage {
  position: relative;
  padding-bottom: 40px;
  z-index: 1;
  border-radius: 10px;
  overflow: hidden;
}
.top_voice_massage::before {
  position: absolute;
  top: 0;
  left: 0;;
  background: url("../images/voice_box_kazari_side.jpg") top left no-repeat;
  width: 14%;
  height: 100%;
  max-width: 100px;
  background-size: cover;
  content: "";
  border-bottom-left-radius: 10px;
}
.top_voice_massage::after {
  position: absolute;
  top: 0;
  right: 0;;
  background: url("../images/voice_box_kazari_side.jpg") top left no-repeat;
  width: 8%;
  height: 100%;
  max-width: 100px;
  background-size: cover;
  content: "";
}
.top_voice_massage > dt {
  font-size: 30px;
  letter-spacing: 0.025em;
  line-height:1;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #0a6d80; 
  padding-top: 49px;
  margin-bottom: 42px;
  position: relative;
  z-index: 1;
}
.top_voice_massage dd {
  font-size: 18px;
  letter-spacing: 0.025em;
  line-height: 2.222;
  position: relative;
  z-index: 1;
}

.top_voice_massage dd p {
  margin-bottom: 20px;
}

.top_voice_box.item_02 .top_voice_sub_tit {
  margin-top: -22px;
}
.top_voice_message_kazari {
  position:  absolute;
  top: -18px;
  left: 0;
  right: 0;
  margin: auto;
  display: block;
  width: 100%;
  height: 20px;
}
.top_voice_message_kazari::before {
  position: absolute;
  left: 0;
  right: 0;
  margin:auto;
  width: 20%;
  background: url("../images/top_voice_message_kazari.png") center no-repeat;
  height: 39px;
  max-width: 88px;
  content: "";
}
.top_voice_box.item_01 {
  z-index: 2;
}
.top_voice_box.item_01::before {
  position: absolute;
  left: calc((100vw - 1280px)  / 2 * -1);
  top: 300px;
  background: url("../images/voice_bg_left.png") top left no-repeat;
  width: 26%;
  max-width: 336px;
  height: 527px;
  content: "";
  z-index: -1;
  background-size: 100%;
}
.top_voice_box.item_01::after {
  position: absolute;
  right: calc((100vw - 1280px)  / 2 * -1);
  top: 147px;
  background: url("../images/voice_bg_right.png") top left no-repeat;
  width: 33%;
  max-width: 388px;
  height: 439px;
  content: "";
  z-index: -1;
  background-size: 100%;
}
.top_voice_box.item_02::before {
  position: absolute;
  right: calc((100vw - 1280px)  / 2 * -1);
  top: -245px;
  background: url("../images/voice_bg_right02.png") top left no-repeat;
  width: 33%;
  max-width: 411px;
  height: 531px;
  content: "";
  z-index: -1;
  background-size: 100%;
}

@media screen and (max-width:1425px) {
  .top_voice_box.item_01::before {
    left: -6%;
  }
  .top_voice_box.item_01::after,
  .top_voice_box.item_02::before {
  right: -6%;
  }
}

/*==================================================================

  .top_schedule

==================================================================*/

.top_schedule {
  position: relative;
  z-index: 1;
  top: -3px;
}
.top_schedule::before {
  position: absolute;
  bottom: -120px;
  left: 0;
  width: 100%;
  height: 121px;
  background: url("../images/bg_flow_wave.png") bottom center no-repeat;
  background-size: cover;
  content: "";
}

.top_schedule .tit01 i::before {
  content: "1日の流れ";
}
.top_schedule_item {
  background: rgba(163,213,224,0.5);
  border-radius: 10px;
  padding: 1.6% 1.2% 0.3%;
  position: relative;
}
.top_schedule_item_img {
  position: absolute;
  top: -35px;
  right: -10px;
}
.top_schedule_item_tit {
  font-size: 25px;
  letter-spacing: 0;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight:500;
  font-style: normal;
  color: #005f73;
  border-bottom: solid 1px #a3d5e0;
  padding-bottom: 1%;
}
.top_schedule_list_wrap {
  margin-top: 66px;
  padding-bottom: 79px;
  background: #CDECF5;
  background: linear-gradient(0deg,rgba(205, 236, 245, 1) 0%, rgba(255, 255, 255, 1) 100%);
  position: relative;
  z-index: 1;
}
.top_schedule_list_wrap::before {
  position: absolute;
  bottom: -153px;
  left: 7.5%;
  background: url("../images/sche_bg01.png") bottom center no-repeat;
  width: 15%;
  max-width: 225px;
  height: 131px;
  content: "";
  background-size: 100%;
  z-index: -1;
}
.top_schedule_list_wrap::after {
  position: absolute;
  bottom: -70px;
  right: 0;
  background: url("../images/sche_bg02.png") bottom center no-repeat;
  width: 20%;
  max-width: 309px;
  height: 402px;
  content: "";
  background-size: 100%;
   z-index: -1;
}
.top_schedule_item_tit span {
  font-size: 22px;
  letter-spacing: 0.075em;
  color: #0494ad;
  font-family: "josefin-sans", sans-serif;
  font-weight: 300;
  font-style: normal;
  padding-right: 20px;
}
.top_schedule_item_tit.item_small {
  font-size: 23px;
  padding-bottom: 2%;
}
.top_schedule_item_tit i {
  line-height: 1;
  font-style: normal;
}
.top_schedule_item_text {
  font-size: 17px;
  letter-spacing: 0;
  line-height: 2.05;
  padding: 5.8% 1% 6.8%;
  text-align: left;
}

@media screen and (min-width:641px) {
  .top_schedule_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 0 2.8%;
    width: 90%;
    max-width: 1270px;
    margin: auto;
  }
  .top_schedule_item {
    width: 31.4%;
    margin-bottom: 50px;
    position: relative;
  }
  .top_schedule_item:not(:nth-child(3n))::before {
    position: absolute;
          top: 46%;
        right: -5.8%;
    background: url("../images/sche_item_arrow.png") center no-repeat;
    width: 15px;
    height: 20px;
    content: "";
  }
}


/*==================================================================

  .top_tour

==================================================================*/
.top_tour {
  text-align: center;
  background: url("../images/tour_bg01.jpg") top -5px center no-repeat;
  background-size: 100%;
  padding-top: 162px;
  padding-bottom: 114px;
  position: relative;
}
.top_tour::before {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 45%;
  width: 100%;
  content: "";
  background: #FFF;
background: linear-gradient(180deg,rgba(255, 255, 255, 1) 0%, rgba(214, 232, 242, 1) 100%);
z-index: -1;
}
.top_tour .tit01 i::before {
  content: "クリニック見学会のご案内";
}
.top_tour_sub_tit {
  display:inline-block;
  font-size: 32px;
  line-height: 1;
  color: #e4718c;
  letter-spacing: 0.075em;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  margin-top: 88px;
  margin-bottom: 53px;
  position: relative;
}
.top_tour_sub_tit::before {
  position: absolute;
  right: -40px;
  bottom: 0;
  background:url("../images/tour_sub_tit_kazari.png") bottom center no-repeat;
  width: 29px;
  height: 21px;
  content: "";
}
.top_tour_sub_tit::after {
  position: absolute;
  left: -40px;
  bottom: 0;
  background:url("../images/tour_sub_tit_kazari.png") bottom center no-repeat;
  width: 29px;
  height: 21px;
  content: "";
  transform: scale(-1,1)
}
.top_tour_bal_list {
  width: 90%;
  max-width: 1000px;
  height: 400px;
  background: url("../images/tour_img.jpg") center no-repeat;
  background-size: cover;
  margin: auto;
  position: relative;
}

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

 .top_tour_bal_list {
  background: url("../images/tour_img_sp.jpg") center no-repeat;
  background-size: 100%;
 }
}

.top_tour_bal_item {
  font-size: 24px;
  letter-spacing: 0.025em;
  line-height: 1.6666;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  -webkit-text-stroke: 3px #fff;
  text-stroke: 3px #fff;
  paint-order: stroke;
  color: #0394ac;
  position: absolute;
}
.top_tour_bal_item:nth-child(1) {
    left: -11.8%;
    top: 15%;
}
.top_tour_bal_item:nth-child(1)::before {
  position: absolute;
  left: -7%;
  right: 0;
  margin:auto;
  bottom: -40px;
  background: url("../images/tour_bal01.png") bottom center no-repeat;
  width: 114%;
  height: 50px;
  content: "";
  background-size: 100%;
}
.top_tour_bal_item:nth-child(2) {
  left: -7%;
  bottom: 20%;
  color: #e18d29;
}
.top_tour_bal_item:nth-child(2)::before {
  position: absolute;
  left:0;
  right: 0;
  margin:auto;
  bottom: -46px;
  background: url("../images/tour_bal02.png") bottom center no-repeat;
  width: 65%;
  height: 70px;
  content: "";
  background-size: 100%;
}
.top_tour_bal_item:nth-child(3) {
  right: -12%;
  top: 39%;
  color: #328a44;
}
.top_tour_bal_item:nth-child(3)::before {
  position: absolute;
  left: -16%;
  right: 0;
  margin:auto;
  bottom: -56px;
  background: url("../images/tour_bal03.png") bottom center no-repeat;
  width: 124%;
  height: 110px;
  content: "";
  background-size: 100%;
}
.top_tour_text {
  font-size: 18px;
  letter-spacing: 0.025em;
  line-height: 2.2222;
  margin-top: 45px;
  margin-bottom: 50px;
}
.top_tour_btn {
  display: block;
  width: 90%;
  max-width: 600px;
  line-height: 60px;
  height: 60px;
  margin: auto;
  border-radius: 100vh;
  text-align: center;
  letter-spacing: 0;
  padding-right: 30px;
  font-size: 18px;
  color: #fff;
  background: #006A82;
  background: linear-gradient(90deg,rgba(0, 106, 130, 1) 0%, rgba(204, 174, 97, 1) 100%);
}
.top_tour_btn i {
  padding-right: 10px;
  font-size: 24px;
}
.top_tour_btn span {
  position: relative;
}
.top_tour_btn span::before {
  position: absolute;
  right: -30px;
  top: 25%;
  background: url("../images/tour_btn_arrow.png") center no-repeat;
  width: 7px;
  height: 11px;
  content: "";
  transition: 0.15s ease-out;
}
.top_tour_btn:hover {
  color: #fff;
}
.top_tour_btn:hover span::before {
  right: -40px;
}

/*==================================================================

  .top_flow

==================================================================*/

.top_flow {
  position: relative;
  z-index: 1;
}



.top_flow .tit01_wrapper {
  background: #449CB0;
  background: linear-gradient(0deg,rgba(68, 156, 176, 1) 0%, rgba(163, 213, 224, 1) 100%);
  padding-bottom: 88px;
}
.top_flow .tit01_wrapper::before {
  background-image: url("../images/flow_wave.png");
}
.top_flow  .tit01_wrapper::after {
  display: none;
}
.top_flow .tit01 i::before {
  content: "採用までの流れ";
}
.top_flow_list {
  position: relative;
  height: 450px;
  overflow: hidden;
}
.top_flow_item {
  position: absolute;
  top: 0;
  left: 0;
  width: 34%;
  text-align: center;
  color: #fff;
  background-size: cover;
  height: 450px;
  padding-left: 1%;
}
.top_flow_item:nth-child(1) {
  z-index: 3;
  
}
.top_flow_item:nth-child(2) {
  z-index: 2;
  left: 0;
  right: 0;
  margin: auto;
  width: 36%;
}
.top_flow_item:nth-child(3) {
  z-index: 1;
  left: auto;
  right: 0;
  width: 31%;
}
.top_flow_item::before {
  position: absolute;
  top: 0;
  left: -11%;
  background: url("../images/flow_item_b01.png") center right;
  width: 118%;
  height: 100%;
  content: "";
  z-index: -1;
  background-size: cover;
}
.top_flow_item:nth-child(2)::before {
  background-image: url("../images/flow_item_b02.png");
  left: -8%;
}
.top_flow_item:nth-child(3)::before {
  background-image: url("../images/flow_item_b03.png");
}
.top_flow_item_tit {
  font-size: 30px;
  text-shadow: 0 0 5px #007a94,0 0 5px #007a94,0 0 5px #007a94;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 500;
   font-style: normal;
  letter-spacing: 0.025em;
  margin-bottom: 10px;
}
.top_flow_item_text {
  font-size: 18px;
  letter-spacing: 0.025em;
  line-height: 2.2222;
  text-shadow: 0 0 5px #007a94,0 0 5px #007a94,0 0 5px #007a94
}
.top_flow_item_num {
  font-family: "josefin-sans", sans-serif;
  font-weight: 400;
  font-style: normal; 
  font-size: 52px;
  letter-spacing: 0.075em;
  text-shadow: 0 0 5px #007a94,0 0 5px #007a94,0 0 5px #007a94;
  line-height: 1.45;
  height: 125px;
  width: 160px;
  margin: auto;
  margin-bottom: 20px;
  background: url("../images/flow_item_num_bg.png") bottom center no-repeat;
  background-size: 100%
}
@media screen and (max-width: 1550px) {
  .top_flow_item_tit {
    font-size: 25px;
  }
  .top_flow_item_text {
    font-size: 16px;
    letter-spacing: 0;
  }
  .top_flow_item:nth-child(2)::before {
    left: -6%;
  }
}
@media screen and (max-width: 1350px) {
  .top_flow_item_tit {
    font-size: 23px;
    letter-spacing: 0;
  }
  .top_flow_item:nth-child(1) {
    padding-left: 0;
    padding-right: 2%;
  }

}

/*==================================================================

  .top_form

==================================================================*/
.top_form {
  position: relative;
  z-index: 1;
  margin-top: -14px;
}
.top_form .tit01 i::before {
  content: "応募フォーム";
}
.top_form_wrap {
  position: relative;
  padding-bottom: 200px;
}
.top_form_wrap::before {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 80%;
  width: 100%;
  content: "";
  z-index: -1;
  background: #CDECF5;
background: linear-gradient(0deg,rgba(205, 236, 245, 1) 0%, rgba(247, 249, 226, 1) 57%, rgba(255, 255, 255, 1) 100%);
content: ""
}
.top_form_recruit_list {
  width: 90%;
  max-width: 1280px;
  margin: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 23px 2.9%;
  margin-bottom: 60px;
}

.top_form_sub_tit {
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  text-align: center;
  font-size: 32px;
  letter-spacing: 0.075em;
  color: #ec8e3b;
  margin: 36px auto 54px;
  
}
.top_form_recruit_list > dt {
  font-size: 28px;
  letter-spacing: 0.025em;
  color: #006a82;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  width: 100%;
  margin-bottom: 20px;
  position: relative;
}
.top_form_recruit_list > dt::before {
  position: absolute;
  right: 0;
  top: 50%;
  width: 74%;
  height: 2px;
  background:#3f8f9c;
  content: "";
}
.top_form_recruit_item {
  width: 31.4%;
  
}
.top_form_recruit_item a {
  display: block;
  border: solid 1px #57adc7;
  color: #57adc7;
  border-radius: 100vh;
  height: 60px;
  line-height: 56px;
  font-weight: 500;
  font-size: 18px;
  letter-spacing: 0;
  padding-left: 10%;
  position: relative;
  transition: 0.15s ease-out;
}
.top_form_recruit_item a:hover {
  background: #57adc7;
  color: #fff;
}
.top_form_recruit_item a::before {
  position: absolute;
  top: 10px;
  right: 10px;
  background: url("../images/form_recruit_btn_arrow.png") center no-repeat;
  width: 40px;
  height: 40px;
  background-size: 100%;
  content: "";
}

.box_form {

  border-radius: 40px;
  background: #fff;
  padding: 40px 10px 60px;
  width: 90%;
  max-width: 1280px;
  margin: auto;
  box-shadow: 0 0 25px rgba(145,212,227,0.2);
}

.anchor {
	padding-top: -70px;
	margin-top: 70px;
}

#submit-button {
  position: relative;
  max-width: 600px;
  display: block;
  width: 90%;
  color: #fff;
  font-size: 19px;
  letter-spacing: 0.05em;
  border-radius: 50px;
  padding: 21px;
  background: #006A82;
  background: linear-gradient(90deg, rgba(0, 106, 130, 1) 0%, rgba(204, 174, 97, 1) 100%);
  border: none;
  transition: 0.2s ease;
  margin: auto;
  cursor: pointer;
  font-weight:500;
}
#submit-button:hover {
  opacity: 0.7;
}
#submit-button:hover::after {
  right: 55px;
}

.table_form {
  max-width: 1100px;
  width: 100%;
  margin: 0 auto 10px;
  position: relative;
  left: -13px;
  padding-bottom: 14px;
}
.table_form dl {
  display: flex;
  border-bottom: 2px solid #efefef;
  padding: 18px;
}
.table_form dl:last-of-type {
  display: flex;

}
.table_form dt {
  font-size: 18px;
  width: 34.7%;
  letter-spacing: 0;
  font-weight: bold;
  display: flex;
  align-items: flex-start;
}
.table_form dt span {
  display: inline-block;
  color: #fff;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.05em;
  border-radius: 3px;
  padding: 5px 15px 6px;
  margin-right: 24px;
  line-height: 1.0;
  position: relative;
  top: 6px;
}
.table_form dt span.required {
    background: #ff748c;
}
.table_form dt span.optional {
    background: #92cc68;
}
.table_form dd {
  width: 100%;
}
.table_form dd.radio {
  display: flex;
	flex-wrap: wrap;
  row-gap: 10px;
}
.table_form dd.radio label {
  padding-right: 20px;
  margin-right: 34px;
}
.table_form dl:nth-child(2) dd.radio label {
  padding-right: 12px;
  margin-right: 17px;
  margin-bottom:5px;
}
input[type=text], input[type=tel],input[type=mail] {
  border: none;
  background: #f2f2f2;
  padding: 15px 20px;
  width: 100%;
  border-radius: 5px;
  font-size: 16px;
}
textarea {
  border: none;
  background: #f2f2f2;
  padding: 17.5px 20px;
  width: 100%;
  border-radius: 5px;
  font-size: 15px;
  height: 135px;
}
textarea::placeholder {
  color: #ababab;
  font-size: 17px;
  letter-spacing: 0.05em;
  font-weight: bold;
}
input[type=text]::-webkit-input-placeholder, input[type=tel]::-webkit-input-placeholder,input[type=mail]::-webkit-input-placeholder {
  color: #ababab;
  font-size: 17px;
  letter-spacing: 0.05em;
}
input[type=text]:-ms-input-placeholder, input[type=tel]:-ms-input-placeholder {
  color: #ababab;
  font-size: 17px;
  letter-spacing: 0.05em;
}
input[type=text]::-ms-input-placeholder, input[type=tel]::-ms-input-placeholder {
  color: #ababab;
  font-size: 17px;
  letter-spacing: 0.05em;
}
input[type=text]::placeholder,
input[type=tel]::placeholder {
  color: #ababab;
  font-size: 17px;
  letter-spacing: 0.05em;
}
input[type=text]:focus, input[type=text]:focus-visible,
input[type=tel]:focus,
input[type=tel]:focus-visible {
  outline: none;
  border: none;
  background: #f6f3f0;
}

.visibility_hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

/*ラジオボタンの枠 */
.radio_text::before {
  content: "";
  display: block;
  width: 25px;
  height: 25px;
  position: absolute;
  left: 5px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  border-radius: 50%;
  background: #ececec;
}

.radio_text {
  cursor: pointer;
  display: inline-block;
  padding: 0 0 0 45px;
  position: relative;
  font-size: 18px;
  letter-spacing: 0;
  font-weight: 500;
}

/* チェックのアイコン */
.radio_text::after {
  content: "";
  display: block;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background-color: #5db2d6;
  position: absolute;
  top: 50%;
  left: 11px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  opacity: 0;
}

/* チェックされた時 */
input[type=radio]:checked + .radio_text::after {
  opacity: 1;
}

.box_consent {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto 43px;
  background: #fff2df;
  border-radius: 20px;
  font-size: 17px;
  letter-spacing: 0.05em;
  line-height: 2.06;
  padding: 35px 40px;
  text-align: center;
}
.box_consent h4 {
  margin-bottom: 13px;
	font-family: "dnp-shuei-gothic-kin-std", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.box_consent p {
  font-size: 16px;
  letter-spacing: 0.1em;
  text-align: left;
  font-family: "dnp-shuei-gothic-kin-std", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.grecaptcha-badge {
   margin: 0px auto 80px;
	z-index: 12;
	visibility: hidden;
}
/*==================================================================

  .loop_slide

==================================================================*/
.loop_slide_wrap {
  position: relative;
  z-index: 1;
  margin-top: -180px;

}

@media screen and (max-width:640px) {
  .loop_slide_wrap {
    margin-top: -100px;
  }
  .loop_slide_wrap .slick-slide img {
    height: 200px;
    width: auto;
  }
}
/*============================================================

  タイトル

==============================================================*/
.tit01_wrapper {
  background: #A3D5E0;
  background: linear-gradient(180deg,rgba(163, 213, 224, 1) 0%, rgba(255, 247, 225, 1) 100%);
  padding-top: 101px;
  content: "";
  position: relative;
  text-align: center;
  padding-bottom: 96px;
}
.tit01_wrapper::before {
  position: absolute;
  left: 0;
  top: -10px;
  background: url("../images/tit01_bg_wave.png") top left repeat-x;
  width: 100%;
  height: 20px;
  content: "";
}
.tit01_wrapper::after {
  position: absolute;
  left: 0;
  bottom: 0;
  background: url("../images/wave_white.png") top left repeat-x;
  width: 100%;
  height: 20px;
  content: "";
  z-index: 1;
}

.tit01 {
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 600;
  font-style: normal;
  font-size: 40px;
  letter-spacing: 0.075em;
  color: #006a82;
  text-shadow: 0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff;
  position: relative;
  z-index: 2;
}
.tit01::before {
  position: absolute;
  top: -65px;
  left: 0;
  right: 0;
  margin: auto;
  background: url("../images/tit01_bg01.png") center no-repeat;
  width: 180px;
  height: 267px;
  content: "";
  z-index: -1;
}
.tit01:after {
  position: absolute;
  top: -41px;
  left: 0;
  right: 0;
  margin: auto;
  background: url("../images/tit01_kazari01.png") center no-repeat;
  width: 114px;
  height: 49px;
  content: "";
  z-index: -1;
}
.tit01 i {
  display: inline-block;
  font-size: 50px;
  font-weight: 700;
  line-height: 1;
  position: relative;
  z-index: 1;
  font-style: normal;
      margin-top: 27px;
    margin-bottom: 30px;
}
.tit01 i::before {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  content: "院長挨拶・メッセージ";
  color: rgba(0,0,0,0);
  background: linear-gradient(180deg,rgba(204, 174, 97, 1) 0%, rgba(204, 174, 97, 1) 31%, rgba(0, 106, 130, 1) 100%);
	-webkit-background-clip:text;
  text-shadow: none;

}

.tit01_en {
 background: linear-gradient(180deg,rgba(204, 174, 97, 1) 0%, rgba(204, 174, 97, 1) 31%, rgba(0, 106, 130, 1) 100%);
	-webkit-background-clip:text;
	-webkit-text-fill-color: transparent;
  font-family: "josefin-sans", sans-serif;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0.1em;
  font-size: 20px;
  width: 90%;
  max-width: 550px;
  border-top: solid 3px #fff;
  border-bottom: solid 3px #fff;
  margin: 8px auto;
  padding: 6px 0 10px;
  position: relative;
   z-index: 2;
}
.tit01_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.tit01_bg::before {
  position: absolute;
  left: 0;
  top: 36px;
  background: url("../images/tit01_bg_left.png") center left no-repeat;
  width: 30%;
  max-width: 305px;
  height: 286px;
  background-size: 100%;
  content: "";
}
.tit01_bg::after {
  position: absolute;
  right: 0;
  top: 20px;
  background: url("../images/tit01_bg_right.png") center left no-repeat;
  width: 30%;
  max-width: 489px;
  height: 339px;
  background-size: 100%;
  content: "";
}
.tit01_bg_fish_left {
  position: absolute;
  left: 1.9%;
  top: 7%;
  animation: yurayura 2.5s ease-in-out infinite;
  z-index: 1;
}
.tit01_bg_fish_right {
  position: absolute;
  right: 0.1%;
  top: 15%;
  animation: suisui 2s ease-in-out infinite;
  z-index: 1;
}


@keyframes yurayura {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-20px);
  }
}
@keyframes suisui {
  0%, 100% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(-20px);
  }
}


@media screen and (max-width:640px) {
  .tit01_wrapper {
    padding-bottom: 70px;
    padding-top: 70px;
  }

  .tit01 i,
  .top_tour .tit01 i::before,
  .tit01{
    font-size: 28px !important;
  }
  .tit01::before {
    width: 100px;
    background-size: 100%;
  }
  .tit01:after {
    width: 70px;
    background-size: 100%;
  }
  .tit01_bg_fish_left {
    width: 80%;
    top: auto;
    bottom: 0;
  }
  .tit01_bg_fish_right {
    width: 70%;
    top: 0;
    bottom: auto;
  }
  .tit01_bg::before {
    background-position: top left;
    width: 40%;
  }
  .tit01_bg::after {
    background-position: bottom right;
    top: auto;
    bottom: 10px;
    width: 40%;
  }
}

/*==================================================================================================================

  スマホ

==================================================================================================================*/
@media screen and (max-width:640px) {
  #wrapper, html, body{
    min-height:500px;
  }
  #container {
    padding-top: 10px;
    padding-bottom: 10px;
  }

  /*==================================================================

    メインビジュアル（スマホ）

  ==================================================================*/
  .top_mainvisual{
    height:400px;
  }

  .mainvisual_wrap{
    height: 400px;
  }

  .top_mainvisual .inner {
    width: auto;
  }

  /* トップページキャッチフレーズ */
  .mainvisual_catch {
    position: absolute;
    left: 10px;
  }
  .mainvisual_catch h2 {
    margin-bottom: 10px;
    font-size: 22px;
  }
  .mainvisual_catch p {
    font-size: 17px;
  }
  .mainvisual_catch span {
    padding: 3px 10px 3px 10px
  }

  .slick-slide {
    height: auto;
    padding-right: 5px
  }
  .slick-slide img { 
    width: auto;
    height: 400px;
    object-fit: cover;
  }

  
  /*==================================================================

     .top_point（スマホ）

  ==================================================================*/
  .top_point .tit01 span::before,
  .top_point .tit01 span {
    font-size: 60px;
  }
  .top_point_item_inner {
    padding-left: 0;
    min-height: 100%;
    padding: 20px 0 40px;
  }
  .top_point_list:after {
    background-position: bottom right;
  }
  .top_point_item {
    flex-wrap: wrap;
    margin-bottom: 130px;
  }
  
  .top_point_item:last-child {
    margin-bottom: 100px;
  }
  .top_point_item::before {
    width: 30%;
  }
  .top_point_item:nth-child(odd) {
    margin-left: 5%;
  }
  .top_point_item:nth-child(even) {
    margin-right: 5%;
  }
  .top_point_item_img {
    position: static;
    width: 100% !important;
    order: -1;
  }
  .top_point_item_detail {
    width: 90% !important;
    margin: auto !important;
    padding: 0 !important;
  }
  .top_point_item_inner {
    width: 100%;
  }
  .top_point_item:nth-child(odd) .top_point_kazari_en {
    left: -4%;
  }
  .top_point_item:nth-child(even) .top_point_kazari_en {
    right: -5%;
  }
  .top_point_item:nth-child(even) .top_point_item_inner {
    padding-right: 0;
  }
  .top_point_item_tit{
    font-size: 21px;
    padding-left: 0 !important;
    letter-spacing: 0em;
  }
  .top_point_item_text {
    font-size: 16px;
    line-height: 1.9;
    padding-right: 0 !important
    
  }
  
  .top_point_t_item {
    width: 48%;
    height: auto;
    background-size: 100%;
    aspect-ratio: 235 / 134;
    margin-bottom: 10px;
    font-size: 16px;
  }
  .top_point_t_item span {
    font-size: 70%;
  }
  .top_point_item_kazar {
    bottom: auto;
    top: -100px;
    right: 0;
    width: 15%;
    background-size: 100%;
  }
  .top_point_item_kazari01 {
    bottom:auto;
    top: -130px;
    width: 20%;
  }
  .top_point_item_kazari02 {
    left: auto;
    right: 0;
    bottom: auto;
    top: -130px;
    width: 20%;
  }
  .top_point_item:nth-child(1) {
    margin-top: 100px;
  }
  .top_point_item_sub_tit {
    font-size: 19px;
  }
  .top_point_item_sub_tit::before {
    width: 11%;
    right: 2%;
  }
  .top_point_item_detail02 {
    padding-left: 0;
    width: 90%;
    margin: auto;
  }
  
  /*==================================================================

     .top_message（スマホ）

  ==================================================================*/
  .top_message_wrap_kazari::before {
    width: 30%;
  }
  .top_message_wrap::before {
    height: 58%;
  }
  .top_message_wrap .inner {
    display: block;
  }
  .top_message_copy {
    font-size: 20px;
  }
  .top_message_doctor_img {
    width: 50%;
    margin: auto;
  }
  
  .top_message_text {
    font-size: 16px;
    line-height: 1.9;
    width:100%;
    margin: 0 auto 30px;
    
  }
  .top_message_sub_tit {
    font-size: 22px;
    background-size: 70px;
    line-height: 1.8;
    z-index: 1;
  }
  .top_message_sub_tit::before{
    width:20%;
    z-index: -1;
  }
  .top_message_sub_tit::after{
    width:20%;
    z-index: -1;
  }
  .top_message_wrap_kazari::after {
    top: 6%;
    width: 35%;
  }
  .top_message_a_list {
  margin-bottom: 10px;
  }
  .top_message_a_item {
    width: 49%;
    font-size: 17px;
    margin-bottom: 20px;
  }
  .top_message_a_item img {
    width: 90%;
    margin: auto;
    padding-bottom: 5px;
  }
  .top_message_b_list {
    display: block;
  }
  .top_message_b_item {
    width: 100%;
    margin-bottom: 55px;
  }
  .top_message_b_list_wrap {
    padding-top: 0;
  }
  .top_message_b_list_wrap .top_message_text {
    padding: 0 5%;
  }
  .top_message_b_list_wrap .top_message_text::before {
    background-size: 100%;
    background-position: bottom center;
    bottom: -48px;
  }
  .top_message_b_list_wrap::after {
    background-position: bottom left;
    top: -160px;
    width: 60%;
  }
  
  .top_message_b_item_tit {
    font-size: 24px;
  }
  .top_message_b_item_job {
    font-size: 19px;
    padding-top: 0;
  }
  .top_message_b_item_text {
    font-size: 16px;
    line-height: 1.9;
    padding-bottom: 20px;
  }
  
  /*==================================================================

     .top_voice（スマホ）

  ==================================================================*/
  .top_voice .tit01 i{
    line-height: 1.3;
  }
  .top_voice_wrap {
    padding-bottom: 90px;
  }
  .top_voice_box {
    display: block;
    margin-bottom: 45px;
  }
  .top_voice_name {
    font-size: 19px;
  }
  .top_voice_img {
    width:100%;
    margin: auto;
  }
  .top_voice_img img {
    width: 50%;
    margin: auto;
    padding-bottom: 14px;
  }
  .top_voice_detail {
    width: 100%;
  }
  .top_voice_sub_tit {
  font-size:   24px;
  margin-top: 10px !important;
  }
  .top_voice_faq > dt {
    font-size: 20px;
  }
  .top_voice_faq > dd {
    font-size: 16px;
    line-height: 1.9;
    margin-bottom: 20px;
  }
  .top_voice_massage {
    padding-bottom: 20px;
  }
  .top_voice_message_kazari::before {
    background-size: 100%;
  }
  .top_voice_massage > dt {
    font-size: 25px;
    padding-top: 35px;
    margin-bottom: 160px;
  }
  .top_voice_massage dd {
    width: 90%;
    margin: auto;
    font-size: 16px;
    line-height: 1.9;
    text-align: left;
  }
  
  /*==================================================================

     .top_tour（スマホ）

  ==================================================================*/
  .top_tour {
    background-size: 280%;
    padding-top: 100px;
    padding-bottom: 90px;
  }
  .top_tour_sub_tit {
  margin-top: 40px;
  }
  .top_tour_bal_item {
    font-size: 15px;
  }
  .top_tour_sub_tit {
    font-size: 20px;
  }
  .top_tour_sub_tit::before {
    right: -9%;
  }
  .top_tour_bal_item:nth-child(3)::before {
    width: 100%;
  }
  .top_tour_bal_item:nth-child(3) {
    right: 0;
  }
  .top_tour_bal_item:nth-child(1) {
    left: -3%;
    top: 5%;
  }
  .top_tour_bal_item:nth-child(1)::before {
    bottom: -20px;
    width: 100%
  }
  .top_tour_bal_item:nth-child(3) {
    right: -4%;
    top: -7%;
  }
  .top_tour_bal_item:nth-child(3)::before {
    bottom: -20px;
    left: 2%;
  }
  .top_tour_bal_item:nth-child(2) {
    left: -3%;
  }
  .top_tour_bal_item:nth-child(2)::before {
    bottom: -30px;
  }
  .top_tour_text {
    font-size: 15px;
    line-height: 1.9;
    width: 90%;
    margin: 25px auto 34px;
  }
  
  /*==================================================================

     .top_schedul（スマホ）

  ==================================================================*/
  .top_schedule::before {
    background-position: top center;
    background-size: 100%;
  }
  .top_schedule_list_wrap {
   padding: 0 5%;
   overflow: hidden;
   margin-top: 30px;
   padding-bottom: 60px;
  }
  
  .top_schedule_list_wrap::after {
    background-position: center;
  }
  .top_schedule_list_wrap .slick-list {
     padding-top: 40px;
  }
  .top_schedule_list_wrap .slick-slide {
    padding-right: 20px;
  }
  .top_schedule_item_img {
    right: 0;
    width: 100px!important;
	height:  100px!important;
	object-fit: fill!important;
  }
  .top_schedule_item_tit {
    font-size:  20px;
  }
  .top_schedule_item_tit span {
    font-size: 17px;
    padding-right: 10px;
  }
  .top_schedule_item {
   padding: 20px;
   height: 295px;
  }
  .top_schedule_list_wrap .slick-dots {
    bottom: -34px;
  }

   

  /*==================================================================

     .top_flow（スマホ）

  ==================================================================*/
  .top_flow .tit01_bg::after {
    bottom: 0;  
  }
  .top_flow_list {
    height: auto;
  }
  .top_flow_item {
    position: relative;
    height: auto;
    width: 100% !important;
    padding: 0 5% 60px !important;
  }
  .top_flow_item:last-child {
    padding-bottom: 80px !important;
  }
  .top_flow_item::before {
    left: 0% !important;
    width: 123%
  }
  .top_flow_item_num {
    width: 120px;
    height: 100px;
    background-position: top center;
    font-size: 45px;
    margin-bottom: 10px;
  }
  .top_flow_item_tit {
  font-size: 22px;
  }
  .top_flow_item_text {
    font-size: 15px;
    line-height: 1.9;
    text-align: left;
  }
  .top_flow_item_text br {
    display: none;
  }
  

  /*==================================================================

     .top_form（スマホ）

  ==================================================================*/
    .top_form_wrap {
    padding-bottom: 140px;
    }
    .top_form_sub_tit {
      margin: 10px 10px;
      font-size: 22px;
    }
    .top_form_recruit_list > dt {
      font-size: 20px;
      line-height: 1;
      margin-top: 20px;
    }
    .top_form_recruit_list {
      gap: 10px 2%;
    }
    .top_form_recruit_list > dt::before {
      width: 35%;
    }
    .top_form_recruit_item {
      width: 100%;
    }
    .top_form_recruit_item a {
      height: 50px;
      line-height: 45px;
      font-size: 17px;
    }
    .top_form_recruit_item a::before {
     top: 4px;
      width: 36px;
    }
    .box_form {
      width: 96%;
      padding: 20px 10px 30px;
    }
    .table_form {
      left: auto;
      
    }
    .table_form dl {
      display: block !important;
		padding: 18px 0;
    }
    .table_form dt {
      width: 100% !important;
      margin-bottom: 14px;
      font-size: 17px;
    }
    .table_form dd {
      width: 100%;
    }
    .table_form dt br {
      display:   none;
    }
    .radio_text {
      font-size:15px;
      padding-left: 40px;
    }
    .table_form dd.radio label {
      padding-right: 10px;
      margin-right: 10px;
    }
    
  
  
  
  
  

  }
