@charset "UTF-8";
/* ---------------------
  - *共通設定
  - *メインビジュアル
  - *スマホのみのエリア
  - *お知らせ
  - *ご挨拶
  - *当院の特徴
  - *診療案内
  - *医療コラム
  - *ループスライダー
--------------------- */
/*==================================================================================================================================

  *共通設定

==================================================================================================================================*/
/*----------inner----------*/
.home_inner {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 640px) {
  .home_inner {
    padding-left: 5%;
    padding-right: 5%;
  }
}


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

  *メインビジュアル

==================================================================================================================================*/
.home_mv {
  position: relative;
  height: 755px;
  overflow: hidden;
}
.home_mv::before{
  content: "";
  z-index: 1;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 20px;
  background: url(../images/mv_wave_btm.png) repeat-x center bottom;
}

.home_mv_main {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 100%;
  margin: 0 auto;
  width: 1200px;
}

/*　スライダー */
.slider-fade .slick-slide img {
  width: 100%;
  height: 755px;
  -o-object-fit: cover;
     object-fit: cover;
}

/*　キャッチコピー　*/
.main_catch {
  position: absolute;
  left: 0;
  top: 274px;
  width: 100%;
  text-align: center;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-content: center;
  font-weight: bold;
}

.catchcopy_tit {
  margin-bottom: 5px;
  display: block;
}

.catchcopy_tit span {
  display: inline-block;
  font-size: 32px;
  color: var(--text-color);
  line-height: 1.3;
  background: rgba(255, 255, 255, 0.6);
  padding: 5px 7px;
}

.catchcopy_text {
  margin-bottom: 5px;
  display: block;
}

.catchcopy_text span {
  display: inline-block;
  font-size: 22px;
  color: var(--text-color);
  line-height: 1.3;
  background: rgba(255, 255, 255, 0.6);
  padding: 5px 7px;
}

/*　キャッチコピー（スライドごと）　*/
.slide_catch {
  z-index: 1;
  position: absolute;
  left: calc((100% - 1200px) / 2);
  top: 200px;
  display: inline-block;
  font-size: 32px;
  color: var(--text-color);
  line-height: 1.3;
  background: rgba(255, 255, 255, 0.6);
  padding: 5px 7px;
}

/*　RIBONバナー　*/
.home_mv .mv_ribon {
  position: absolute;
  bottom: 150px;
  left: 0;
}

/*　バナー　*/
.home_mv .mv_banner {
  position: absolute;
  bottom: 30px;
  left: 0;
}

.home_mv .mv_banner:not(.mv_banner-btn) {
  width: 550px;
  height: 110px;
}

.home_mv .mv_banner:not(.mv_banner-btn) img {
  max-height: 100%;
  width: auto;
}

.home_mv .mv_banner:not(.mv_banner-btn) a:hover {
  opacity: 0.8;
}

.mv_banner .btn01 a {
  font-size: 120%;
  line-height: 1.7;
  margin-top: 0;
  margin-bottom: 0;
}

.mv_point{
  position: absolute;
  right: 290px;
  bottom: 48px;
  display: flex;
  gap: 0 20px;
}
.mv_point a{
  display: block;
}
@media (hover: hover){
  .mv_point a:hover{
    opacity: 0.8;
    transform: translateY(-10px);
  }
}

.home_mv .mv_bnr_list{
  position: absolute;
  left: 0;
  bottom: 41px;
}
.mv_bnr_list{
  display: flex;
  gap: 0 17px;
}
.mv_bnr_list a{
  display: block;
}
@media (hover: hover){
  .mv_bnr_list a:hover{
    opacity: 0.8;
    transform: translateY(-10px);
  }
}

.home_mv .mv_open{
  position: absolute;
  right: 0;
  bottom: 41px;
}

.mv_open{
  text-align: center;
}

@media screen and (max-width: 640px) {
  .home_mv {
    height: calc(100vh - 175px);
  }
  .home_mv::before{
    height: 10px;
    background-size: auto 100%;
  }

  .home_mv_main {
    width: 100%;
  }

  /* スライダー */
  .slider-fade .slick-slide img {
    height: calc(100vh - 175px);
  }

  /* キャッチフレーズ */
  .main_catch {
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    width: auto;
    height: 330px;
    max-width: 100%;
    padding: 10px;
    box-sizing: border-box;
  }

  .catchcopy_tit span {
    font-size: 5vw;
  }

  .catchcopy_text span {
    font-size: 3vw;
  }

  .slide_catch {
    left: 0;
    top: 140px;
    right: 0;
    max-width: calc(100% - 20px);
    width: auto;
    margin: auto;
    padding: 10px;
    font-size: 5vw;
  }
  .mv_point{
	  right: 0;
        bottom: 0;
        gap: 0 10px;
        position: relative;
        left: 0;
        justify-content: center;
  }
  .mv_point li{
/*     width: 150px; */
  }
  .mv_bnr_list{
    justify-content: center;
    gap: 0 10px;
	  right: 0;
  }
	.mv_bnr_list li{
		width:150px;
	}
}

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

  *スマホのみのエリア

==================================================================================================================================*/
@media screen and (max-width: 640px) {
  .top_sp_only {
    padding: 20px 5% 0;
  }

  .top_sp_only .mv_banner,
  .top_sp_only .mv_ribon {
    text-align: center;
  }
}

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

  *お知らせ

==================================================================================================================================*/
/* パターンE(pattern05) お知らせ+医院概要+アクセス */
/* お知らせ */
.bg_info{
  background: url(../images/bg_info_leaf01.png) no-repeat left top 355px,
  url(../images/bg_info_leaf02.png) no-repeat right top 315px;
	    background-size: 15%;
}

.top_news.pattern05 {
}
.top_news.pattern05 .home_inner{
/*   padding: 85px 0 160px; */
	padding:60px 0 160px;
	background: url(../images/bg_info_dots.png) no-repeat right 10px top 15px;
}
.top_news.pattern05 .news_heading{
  display: flex;
  align-items: center;
  flex-flow: column wrap;
  justify-content: center;
  background: url(../images/bg_tit_news.png) no-repeat center;
  width: 357px;
  min-height: 382px;
	background-size: 95%;
}
.top_news.pattern05 .news_heading hgroup{
/*   padding-top: 115px; */
	padding-top:100px;
  background: url(../images/tit_news.png) no-repeat center top;
	background-size: 50%;
}
.top_news.pattern05 .news_heading .btn01{
  margin-top: 10px;
}
.top_news.pattern05 .news_heading .btn01 a{
  background: #f5d662;
  border-color: #f5d662;
}
.top_news.pattern05 .news_heading .btn01 a:hover{
  color: #f5d662;
  background: #fff;
}
.top_news.pattern05 .news_heading .btn01 a:hover:before{
  background: #f5d662;
}

.top_news.pattern05 .btn01 {
  text-align: center;
}
.top_news.pattern05 .btn01 a {
  margin: 0;
}
.top_news.pattern05 .top_news_list li{
  position: relative;
  padding: 15px 20px 15px 15px;
  background: var(--bg-color);
  border-radius: 20px;
  letter-spacing: 0.1em;
}
.top_news.pattern05 .top_news_list li::before{
  content: "";
  position: absolute;
  top: 50%;
  right: 45px;
  display: block;
  width: 13px;
  height: 12px;
  background: #f7b54a;
  mask: url(../images/icon_arrow.png) no-repeat center / cover;
  -webkit-mask: url(../images/icon_arrow.png) no-repeat center / cover;
  transform: translateY(-50%);
  transition: right 0.2s , background 0.2s;
}
.top_news.pattern05 .top_news_list li:has(a:hover)::before {
  right: 40px;
}
.top_news.pattern05 .top_news_list li:not(:last-child) {
  margin-bottom: 30px;
}
.top_news.pattern05 .top_news_list li a {
  color: var(--text-color);
}
.top_news.pattern05 .top_news_list li a:hover {
  color: var(--main-color);
}
.top_news.pattern05 .top_news_list li span {
  font-family: var(--sh6);
  font-weight: 600;
  margin-right: 15px;
}
.top_news.pattern05 .top_news_list li em {
  text-align: center;
  display: inline-block;
  font-family: var(--sh6);
  font-weight: 600;
  padding: 1px 10px;
  font-style: normal;
  margin-right: 15px;
  min-width: 111px;
  line-height: 1.3;
}


/* 医院概要&アクセス */
.top_info.pattern05 {
  padding: 0 0 70px;
}
.top_info.pattern05 .home_inner{
  position: relative;
  background: url(../images/bg_info_box01.jpg) no-repeat center top / 100% auto,
  #fdfcfa url(../images/bg_info_box02.jpg) no-repeat center bottom / 100% auto;
  border-radius: 40px;
  padding: 60px 20px;
}
.top_info.pattern05 .home_inner::before{
  content: "";
  position: absolute;
  top: -167px;
  left: 0;
  width: 100%;
  height: 167px;
  background: url(../images/bg_info_head.png) no-repeat center bottom -7px / auto;
	    background-size: 78%;
}
.top_info.pattern05 .top_info_free {
  margin-bottom: 20px;
}
.top_info.pattern05 .sche_wrap:not(:last-child) {
  margin-bottom: 30px;
}

/* アクセス */
.top_info.pattern05 .top_access_map {
  text-align: center;
}
.top_info.pattern05 .top_access_map iframe {
  width: 100%;
  height: 400px;
}
.top_info.pattern05 .top_access_guide {
  margin-top: 20px;
}
.top_info.pattern05 .top_access_guide li {
  position: relative;
  display: table;
  padding: 5px 15px;
  background: var(--bg-color);
}
.top_info.pattern05 .top_access_guide li:not(:last-child) {
  margin-bottom: 5px;
}
.top_info.pattern05 .top_access > .btn01 {
  text-align: center;
  margin-top: 20px;
}
.top_info.pattern05 .top_access > .btn01 a {
  margin: 0;
}

@media print, screen and (min-width: 641px) {
  .top_news.pattern05 .home_inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
.top_news.pattern05 .news_heading{
/*   margin-left: -40px; */
}
  /* お知らせ */
  .top_news.pattern05 .top_news_list,
  .top_news.pattern05 .top_news_frame {
/*     width: 821px; */
	  width:800px;
  }
  .top_news.pattern05 .top_news_list li {
    position: relative;
    padding: 15px 60px 15px 40px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  /* 医院概要&アクセス */
  .top_info.pattern05 .home_inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 0 94px;
    padding: 84px 0 99px;
  }
}

@media screen and (max-width: 640px) {
  .bg_info{
    background-position: left top 10px,right top 10px;
    background-size: 120px auto,120px auto;
  }
  .top_news.pattern05 .home_inner{
    background-size: 60px auto;
    padding: 85px 5% 170px;
  }
  .top_news.pattern05 .news_heading{
/*     width: 100%; */
	      min-height: 320px;
    background-size: contain;
	  width:70%;
	  margin:auto;
  }

  .top_news.pattern05 .btn01 {
    text-align: center;
    margin-top: 25px;
  }
  .top_news.pattern05 .top_news_list li::before{
    right: 7px;
  }
  .top_news.pattern05 .top_news_list li a {
    display: block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .top_info.pattern05 .home_inner{
    max-width: 90%;
    margin: 0 auto;
    padding: 60px 20px;
  }
  .top_info.pattern05 .home_inner::before{
            top: -140px;
        height: 140px;
    background-position: center bottom -3px;
	  background: url(../images/bg_info_head_sp.png) no-repeat center bottom -7px / auto;
	  background-size: 100% auto;
  }
  .top_info.pattern05 .top_info_left {
    margin-bottom: 50px;
  }
}
/*==================================================================================================================================

  *ご挨拶

==================================================================================================================================*/
.sec_top_doctor {
  position: relative;
  overflow: hidden;
  padding: 455px 0 180px;
  margin-bottom: 16px;
  background: url(../images/bg_greet.png) no-repeat center bottom;
}
.sec_top_doctor::before{
  content: "";
  position: absolute;
  top: 0;
  right: calc(((100% - 1200px) / 2) - 35px);
  width: 508px;
  height: 257px;
  background: url(../images/acce_greet01.png) no-repeat center / cover;
}
.sec_top_doctor hgroup{
  max-width: 851px;
  width: 100%;
  margin: 0 auto -18px;
  padding: 155px 0 34px;
  background: url(../images/tit_greet.png) no-repeat center top,
  url(../images/tit_greet_line.png) no-repeat center bottom,
  url(../images/tit_greet_clo01.png) no-repeat left top 140px,
  url(../images/tit_greet_clo02.png) no-repeat right top 140px;
}
.top_greeting_flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.top_greeting_flex_img {
  position: relative;
  width: 425px;
  margin-bottom: 20px;
}
.top_greeting_flex_img::before,
.top_greeting_flex_img::after{
  content: "";
  position: absolute;
}
.top_greeting_flex_img::before{
  width: 141px;
  height: 194px;
  left: -30px;
  bottom: 80px;
  background: url(../images/acce_gree_img01.png) no-repeat center / cover;
}
.top_greeting_flex_img::after{
  width: 178px;
  height: 152px;
  right: 33px;
  bottom: 2px;
  background: url(../images/acce_gree_img02.png) no-repeat center / cover;
}
.top_doctor_name {
  width: fit-content;
  margin: 20px auto 0;
  text-align: left;
  font-family: var(--sh6);
  font-weight: bold;
  letter-spacing: 0.1em;
}
.text .top_doctor_name p{
  margin-bottom: 0;
}
.top_doctor_name .carr{
  font-size: 100%;
}
.top_doctor_name .carr span{
  font-size: 110%;
}
.top_doctor_name .name{
  font-size: 156.3%;
}
.top_doctor_name .name span{
  font-size: 64%;
}
.top_doctor_name .name rt{
  font-size: 13px;
  font-weight: 400;
}
.top_greeting_flex_text {
  position: relative;
  z-index: 1;
  margin-top: 80px;
  width: 730px;
}
.top_greeting_flex_text h3{
  color: var(--text-color);
  font-family: var(--sh6);
  font-size: 22px;
  line-height: 2.23;
  letter-spacing: 0.1em;
  margin-bottom: 25px;
}
.top_greeting_flex_text .text {
  margin-bottom: 0;
}
.top_greeting_flex_text .text p{
  line-height: 2;
  letter-spacing: 0.1em;
  margin-bottom: 2em;
}
.top_greeting_flex_text .btn01{
  text-align: right;
}
.top_greeting_flex_text .btn01 a{
  min-width: 171px;
  text-align: left;
  background: #65c498;
  border-color: #65c498;
}
@media (hover: hover){
  .top_greeting_flex_text .btn01 a:hover{
    background: #fff;
    color: #65c498;
  }
  .top_greeting_flex_text .btn01 a:hover:before{
    background: #65c498;
  }
}

@media screen and (max-width: 640px) {
  .sec_top_doctor {
    padding: 150px 0 100px;
    background: url(../images/bg_gree01_sp.png) no-repeat left top 100px / 80% auto,
    url(../images/bg_gree02_sp.png) no-repeat right bottom / 80% auto;
  }
  .sec_top_doctor::before{
    right: 5px;
    width: 250px;
    height: 126px;
  }
  .sec_top_doctor hgroup{
    padding: 105px 0 34px;
    background-size: auto 100px,auto,100px auto,100px auto;
    margin-bottom: 40px;
  }

  .top_greeting_flex {
    display: block;
  }

  .top_greeting_flex_img {
    width: 100%;
/*     padding-bottom: 60px; */
	  padding-bottom: 130px;
  }
	.top_greeting_flex_img::before{
		left: -15px;
    bottom: 100px;
	}
  .top_greeting_flex_img::after{
    right: 0;
  }
  .top_greeting_flex_text {
    width: 100%;
    margin-top: 20px;
  }
  .top_greeting_flex_text h3{
	  font-size: 110%;
	  letter-spacing:0;
  }
  .top_greeting_flex_text .btn01 {
    text-align: center;
  }

  .top_doctor_img {
    text-align: center;
  }

  .top_doctor_name {
    position: relative;
    z-index: 2;
    text-align: center;
  }
}


/* ご挨拶パターンA(写真右) */
.sec_top_doctor.pattern01 .top_greeting_flex {
  flex-direction: row-reverse;
}

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

  *当院の特徴

==================================================================================================================================*/
/*.sec_top_feature {
  padding: 155px 0 130px;
  background: url(../images/bg_feature01.png) no-repeat left top 135px,
  url(../images/bg_info_leaf02.png) no-repeat right top 135px,
  url(../images/bg_feature03.png) no-repeat right top 785px,
  url(../images/bg_feature_dot.png) no-repeat center top 565px;
}*/

.sec_top_feature {
  padding: 155px 0 130px;
  background: 
  url(../images/bg_feature01_A.png) no-repeat left top 135px,
  url(../images/bg_feature01_B.png) no-repeat left top 934px,
  url(../images/bg_info_leaf02.png) no-repeat right top 135px,
  url(../images/bg_feature03.png) no-repeat right top 965px,
  url(../images/bg_feature_dot.png) no-repeat center top 565px;
}

.sec_top_feature hgroup{
  padding: 228px 0 25px;
  margin-bottom: 148px;
  background: url(../images/tit_feature.png) no-repeat center top,
  url(../images/line_feature.png) no-repeat center bottom;
}

.top_feature_item {
  position: relative;
  min-height: 520px;
}


/* 当院の特徴パターンA(写真と文章分離、並列並び) */
.top_feature_wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 267px 59px;
}
.top_feature_wrap .top_feature_item {
  display: flex;
  flex-flow: column wrap;
  width: 360px;
}
.top_feature_wrap .top_feature_item .top_feature_num {
  /* 枠上のナンバリング */
  position: absolute;
  left: 0;
  top: -77px;
  text-align: center;
}
.top_feature_wrap .top_feature_item .top_feature_title{
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 113px;
  background: #fff url(../images/line_feature_item.png) no-repeat center bottom / 90%;
/*   margin-bottom: 10px; */
  border-radius: 20px 20px 8px 8px;
}
.top_feature_wrap .top_feature_item .top_feature_text{
	/*background: #ffffffd9;
    border-radius: 8px 8px 20px 20px;
     padding: 0 0px 30px; 
    min-height: 180px;
    margin-bottom: 15px;*/
    text-align: left;
	    padding: 10px 15px 30px;
}
.top_feature_wrap .top_feature_item h3 {
  font-family: var(--sh6);
  font-size: 137.5%;
  line-height: 1.59;
  letter-spacing: 0.1em;
  text-align: center;
}
.top_feature_wrap .top_feature_item .btn01 {
  margin: 5px auto 0;
  max-width: 310px;
  width: 100%;
  text-align: right;
}
.top_feature_wrap .top_feature_item .btn01 a{
  min-width: 150px;
  text-align: left;
  padding-left: 30px;
  margin: 0;
}
.top_feature_wrap .top_feature_item .top_feature_box {
  position: relative;
  max-width: 310px;
  margin: -39px auto 0;
	background: #ffffffa1;
    border-radius: 20px;
    margin-bottom: 15px;
    min-height: 340px;
    box-shadow: 0px 0px 10px rgba(239, 239, 239);
}
.top_feature_wrap .top_feature_item .top_feature_box p{
  line-height: 2.1875;
  letter-spacing: 0.1em;
}

/*個別*/
.top_feature_item:nth-of-type(1) h3 span{color: #f067ae;}
.top_feature_item:nth-of-type(2) h3 span{color: #b3a14f;}
.top_feature_item:nth-of-type(3) h3 span{color: #54aaf3;}
.top_feature_item:nth-of-type(4) h3 span{color: #7cba31;}
.top_feature_item:nth-of-type(5) h3 span{color: #bf81b2;}
.top_feature_item:nth-of-type(6) h3 span{color: #f4a74b;}

.top_feature_item:nth-of-type(1) .btn01 a{
  background: #f096bd;
  border-color: #f096bd;
}
.top_feature_item:nth-of-type(2) .btn01 a{
  background: #f5da5e;
  border-color: #f5da5e;
}
.top_feature_item:nth-of-type(3) .btn01 a{
  background: #80cff4;
  border-color: #80cff4;
}
.top_feature_item:nth-of-type(4) .btn01 a{
  background: #7cba31;
  border-color: #7cba31;
}
.top_feature_item:nth-of-type(5) .btn01 a{
  background: #bf81b2;
  border-color: #bf81b2;
}
.top_feature_item:nth-of-type(6) .btn01 a{
  background: #f4a74b;
  border-color: #f4a74b;
}
@media (hover: hover){
  .top_feature_item:nth-of-type(1) .btn01 a:hover{
    color: #f096bd;
    background: #fff;
  }
  .top_feature_item:nth-of-type(1) .btn01 a:hover:before{
    background: #f096bd;
  }
  .top_feature_item:nth-of-type(2) .btn01 a:hover{
    color: #f5da5e;
    background: #fff;
  }
  .top_feature_item:nth-of-type(2) .btn01 a:hover:before{
    background: #f5da5e;
  }
  .top_feature_item:nth-of-type(3) .btn01 a:hover{
    color: #80cff4;
    background: #fff;
  }
  .top_feature_item:nth-of-type(3) .btn01 a:hover:before{
    background: #80cff4;
  }
  .top_feature_item:nth-of-type(4) .btn01 a:hover{
    color: #7cba31;
    background: #fff;
  }
  .top_feature_item:nth-of-type(4) .btn01 a:hover:before{
    background: #7cba31;
  }
  .top_feature_item:nth-of-type(5) .btn01 a:hover{
    color: #bf81b2;
    background: #fff;
  }
  .top_feature_item:nth-of-type(5) .btn01 a:hover:before{
    background: #bf81b2;
  }
  .top_feature_item:nth-of-type(6) .btn01 a:hover{
    color: #f4a74b;
    background: #fff;
  }
  .top_feature_item:nth-of-type(6) .btn01 a:hover:before{
    background: #f4a74b;
  }
}

@media screen and (max-width: 640px) {
.sec_top_feature {
	padding: 145px 0 200px;
	background-image: 
		url(../images/bg_feature01_A.png), 
		url(../images/bg_feature01_B.png), 
		url(../images/bg_info_leaf02.png), 
		url(../images/bg_feature03.png);
	
	background-repeat: 
		no-repeat,
		no-repeat, 
		no-repeat, 
		no-repeat;
	
	background-size: 
		130px auto, 
		150px auto, 
		130px auto, 
		150px auto;
	
	background-position: 
		left top, 
		left bottom 17px, 
		right top, 
		right bottom 17px;
/*   padding: 155px 0 200px;

  background-image:
    url(../images/bg_feature01.png),
    url(../images/bg_info_leaf02.png),
    url(../images/bg_feature03.png),
    url(../images/bg_feature_dot.png);

  background-repeat:
    no-repeat,
    no-repeat,
    no-repeat,
    no-repeat;

  background-size:
    130px auto,
    130px auto,
    150px auto,
    100% auto;

  background-position:
left top 110px,
  right top,
  right bottom,
  center top 580px */
}
  .sec_top_feature hgroup{
    background-size: auto 130px,auto;
    padding-top: 145px;
    margin-bottom: 80px;
  }
  .top_feature_wrap{
    gap: 80px 59px;
	  background-image: url(../images/bg_feature_dot.png);
        background-repeat: repeat;
        background-size: 100% auto;
        background-position: center top;
  }
  .top_feature_wrap .top_feature_item {
    width: 100%;
    min-height: unset;
  }
  .top_feature_wrap .top_feature_item .top_feature_title{
    min-height: unset;
    padding: 20px 0;
  }
	.top_feature_wrap .top_feature_item .top_feature_box{
		min-height:unset;
	}
  .top_feature_wrap .top_feature_item .top_feature_num {
    top: -45px;
  }
  .top_feature_wrap .top_feature_item .top_feature_num img{
    width: 100px;
    height: auto;
  }
  .top_feature_wrap .top_feature_item .btn01{
    margin-top: 20px;
	  text-align:center;
  }
}

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

  *診療案内

==================================================================================================================================*/
.sec_top_medical {
  position: relative;
  overflow: hidden;
  background: url(../images/acce_medical03.png) no-repeat center top 435px,
  url(../images/acce_medical04.png) no-repeat center bottom 60px,
  url(../images/bg_tit_medical.png) no-repeat center top 100px,
  url(../images/wave_fff_bottom.png) repeat-x center bottom,
  url(../images/bg_medical.jpg) no-repeat center top 130px,
  linear-gradient(to Top,#f7f2df,#fff);
}
.sec_top_medical .home_inner{
  position: relative;
  padding: 110px 0 180px;
}
.sec_top_medical .home_inner::before,
.sec_top_medical .home_inner::after{
  content: "";
  position: absolute;
  z-index: 0;
  width: 313px;
  height: 238px;
}
.sec_top_medical .home_inner::before{
  top: 0;
  left: -17px;
  background: url(../images/acce_medical01.png) no-repeat left top;
}
.sec_top_medical .home_inner::after{
  top: 0;
  right: -16px;
  background: url(../images/acce_medical02.png) no-repeat right top;
}

.sec_top_medical hgroup{
  position: relative;
  z-index: 1;
  padding: 200px 0 25px;
  background: url(../images/tit_medical.png) no-repeat center top,
  url(../images/line_feature.png) no-repeat center bottom;
  margin-bottom: 210px;
}

.sec_top_medical .sec_top_medical_flex {
  display: flex;
  flex-wrap: wrap;
}


/* 診療案内パターンA(アイコンを目立たせるタイプ) */
.sec_top_medical.pattern01 .sec_top_medical_flex{
  justify-content: center;
  gap: 110px 140px;
}
.sec_top_medical.pattern01 .sec_top_medical_flex .item {
  width: 248px;
}
.sec_top_medical.pattern01 .sec_top_medical_flex .item a {
  display: flex;
  flex-flow: column wrap;
  justify-content: center;
  height: 100%;
}
.sec_top_medical.pattern01 .sec_top_medical_flex .item a[href*="#"] {
  pointer-events: none;
}
@media (hover: hover){
  .sec_top_medical.pattern01 .sec_top_medical_flex .item a:hover{
    transform: translateY(-10px);
  }
}
.sec_top_medical.pattern01 .sec_top_medical_flex .item a .item_img {
  margin-bottom: -44px;
  text-align: center;
}
.sec_top_medical.pattern01 .sec_top_medical_flex .item a .title {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 196px;
  height: 70px;
  margin: 0 auto;
}
.sec_top_medical.pattern01 .sec_top_medical_flex .item a .title h3{
  color: #fff;
  font-family: var(--sh6);
  font-size: 18px;
  line-height: 1.22;
  letter-spacing: 0.1em;
  text-align: center;
}

/* 個別 */
.sec_top_medical.pattern01 .sec_top_medical_flex .item:nth-of-type(1) a .title{
  background: url(../images/sub_tit_medical01.png) no-repeat center / auto 100%;
}
.sec_top_medical.pattern01 .sec_top_medical_flex .item:nth-of-type(2) a .title{
  background: url(../images/sub_tit_medical02.png) no-repeat center / auto 100%;
}
.sec_top_medical.pattern01 .sec_top_medical_flex .item:nth-of-type(3) a .title{
  background: url(../images/sub_tit_medical03.png) no-repeat center / auto 100%;
}
.sec_top_medical.pattern01 .sec_top_medical_flex .item:nth-of-type(4) a .title{
  background: url(../images/sub_tit_medical04.png) no-repeat center / auto 100%;
}
.sec_top_medical.pattern01 .sec_top_medical_flex .item:nth-of-type(5) a .title{
  background: url(../images/sub_tit_medical05.png) no-repeat center / auto 100%;
}
.sec_top_medical.pattern01 .sec_top_medical_flex .item:nth-of-type(6) a .title{
  background: url(../images/sub_tit_medical06.png) no-repeat center / auto 100%;
}
.sec_top_medical.pattern01 .sec_top_medical_flex .item:nth-of-type(7) a .title{
  background: url(../images/sub_tit_medical07.png) no-repeat center / auto 100%;
}
.sec_top_medical.pattern01 .sec_top_medical_flex .item:nth-of-type(8) a .title{
  background: url(../images/sub_tit_medical08.png) no-repeat center / auto 100%;
}
.sec_top_medical.pattern01 .sec_top_medical_flex .item:nth-of-type(9) a .title{
  background: url(../images/sub_tit_medical09.png) no-repeat center / auto 100%;
}

@media screen and (max-width: 640px) {
  .sec_top_medical.pattern01{
	  background: url(../images/acce_medical03.png) no-repeat center top 435px, url(../images/acce_medical04_sp.png) no-repeat center top 77%, url(../images/bg_tit_medical.png) no-repeat center top 100px, url(../images/wave_fff_bottom.png) repeat-x center bottom, url(../images/bg_medical.jpg) no-repeat center top 130px, linear-gradient(to Top, #f7f2df, #fff);
    background-size: auto,100%,400px auto,auto 10px,auto;
  }
  .sec_top_medical .home_inner::before,
  .sec_top_medical .home_inner::after{
    width: 150px;
    height: 105px;
    background-size: contain;
  }
  .sec_top_medical.pattern01 hgroup{
	  background: url(../images/tit_medical_sp.png) no-repeat center top, url(../images/line_feature.png) no-repeat center bottom;
    background-size: 300px auto,auto;
    padding: 135px 0 25px;
    margin-bottom: 100px;
  }
  .sec_top_medical.pattern01 .sec_top_medical_flex .item {
    width: 49%;
  }
  .sec_top_medical.pattern01 .home_inner{
    padding: 110px 5% 100px;
  }
  .sec_top_medical.pattern01 .sec_top_medical_flex{
    gap: 20px 2%;
  }
  .sec_top_medical.pattern01 .sec_top_medical_flex .item a .title{
    width: 100%;
    height: 54px;
  }
  .sec_top_medical.pattern01 .sec_top_medical_flex .item a .title h3{
    font-size: 14px;
  }
}

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

  *医療コラム

==================================================================================================================================*/
.sec_top_column {
  padding-top: 80px;
  padding-bottom: 80px;
}
.column_list_flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0 32px;
}
.column_list_flex dl {
  width: 276px;
  margin-bottom: 20px;
}
.column_list_flex dt {
  background: var(--main-color);
  color: #fff;
  font-size: 130%;
  font-weight: bold;
  text-align: center;
}
.column_list_flex dd {
  padding: 10px;
}
.column_list_flex dd ul li {
  position: relative;
  line-height: 2;
  display: flex;
  align-items: baseline;
}
.column_list_flex dd ul li::before {
  content: "\f054";
  color: var(--main-color);
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 90%;
  margin-right: 5px;
}
.column_list_flex dd ul li a {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  color: var(--text-color);
}
@media (hover: hover) {
  .column_list_flex dd ul li a:hover {
    color: var(--sub-color);
  }
}

@media screen and (max-width: 640px) {
  .column_list_flex{
    /* gap: 20px 2%; */
    /* 一列にする場合はこちら */
    gap: 0;
  }
  .column_list_flex dl {
    /* width: 48%; */
    /* 一列にする場合はこちら */
    width: 100%;
  }
}

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

  *ループスライダー

==================================================================================================================================*/
.home_loopSlider {
  overflow: hidden;
}
.home_loopSlider div {
  vertical-align: top;
}
.home_loopSlider .slick-slide{
  width: 400px !important;
  margin: 0 5px;
}
.home_loopSlider img {
  width: 100%;
  border-radius: 40px;
}
@media screen and (max-width: 640px) {
  .home_loopSlider .slick-slide{
    width: 200px!important;
  }
  .home_loopSlider img{
    border-radius: 20px;
  }
}