@charset "UTF-8";
/* ---------------------
  - *reset css
  - *メインビジュアル
  - *共通
  - *お知らせ
  - *医院概要
  - *ご挨拶
  - *診療案内
  - *当院の特徴
  - *医療コラム
  - *ループスライダー
--------------------- */

/*==================================================================================================================================

  *reset css

==================================================================================================================================*/
body.home h2,
body.home h3 {
  display: block;
  padding: 0;
  margin: 0;
  font-weight: normal;
  border: none;
  background: none;
}
body.home h2::before,
body.home h2::after,
body.home h3::before,
body.home h3::after {
  display: none;
}
body.home ol {
  counter-reset: none;
}
body.home ol li {
  margin: 0;
}
body.home ol li:last-of-type {
  margin: 0;
}
body.home ol li:before {
  display: none;
}
body.home .btn01:not(:first-child) a {
  margin-top: 0;
}
body.home .btn01:not(:last-child) a {
  margin-bottom: 0;
}

/*==================================================================================================================================

  *メインビジュアル

==================================================================================================================================*/
.home_mv {
  display: block;
  max-width: 2000px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
}

.home_mv_bg {
  width: 100%;
  height: 756px;
  background: url(../images/home/mv_bg.png) center bottom/auto 100% no-repeat;
  pointer-events: none;
  position: absolute;
  bottom: 0;
  left: 0;
}

/* ---- animation ---- */
.home_mv_bg * {
  background-size: 100% auto;
  background-repeat: no-repeat;
}

.home_mv_bg > * {
  height: 226px;
  aspect-ratio: 1;
  position: absolute;
  z-index: 1;
}

/* 小鹿 */
@keyframes fawnAnime {
  0%, 100% {
    background-image: url(../images/home/anime/fawn1.png);
  }
  10%, 90% {
    background-image: url(../images/home/anime/fawn2.png);
  }
  20% {
    background-image: url(../images/home/anime/fawn3.png);
  }
}

@keyframes fawnAnimeLeg {
  0%, 40% {
    background-image: url(../images/home/anime/fawn_leg1.png);
  }
  41%, 60% {
    background-image: url(../images/home/anime/fawn_leg2.png);
  }
  61%, 90% {
    background-image: url(../images/home/anime/fawn_leg3.png);
  }
}

.home_mv_fawnLeg {
  background-image: url(../images/home/anime/fawn_leg1.png);
  bottom: 20%;
  right: 50%;
  transform: translateX(-30%);
  animation: fawnAnimeLeg 1.5s steps(1) infinite;
}

.home_mv_fawn {
  width: 100%;
  height: 100%;
  background-image: url(../images/home/anime/fawn1.png);
  animation: fawnAnime 3.6s steps(1) infinite;
}

/* うさぎ */
@keyframes rabbitJumpOut {
  0%, 7% {
    background-image: url(../images/home/anime/rabbit1.png);
    right: 0;
  }
  8%, 15% {
    background-image: url(../images/home/anime/rabbit2.png);
    right: 10%;
  }
  16%, 23% {
    background-image: url(../images/home/anime/rabbit1.png);
    right: 20%;
  }
  24%, 31% {
    background-image: url(../images/home/anime/rabbit2.png);
    right: 30%;
  }
  32%, 39% {
    background-image: url(../images/home/anime/rabbit1.png);
    right: 40%;
  }
  40%, 47% {
    background-image: url(../images/home/anime/rabbit2.png);
    right: 50%;
  }
  48%, 55% {
    background-image: url(../images/home/anime/rabbit1.png);
    right: 60%;
  }
  56%, 63% {
    background-image: url(../images/home/anime/rabbit2.png);
    right: 70%;
  }
  64%, 71% {
    background-image: url(../images/home/anime/rabbit1.png);
    right: 80%;
  }
  72%, 79% {
    background-image: url(../images/home/anime/rabbit2.png);
    right: 90%;
  }
  80%, 87% {
    background-image: url(../images/home/anime/rabbit1.png);
    right: 100%;
  }
}

.home_mv_rabbit {
  background-image: url(../images/home/anime/rabbit1.png);
  bottom: 14%;
  right: 0;
  animation: rabbitJumpOut 10s steps(1) infinite;
}

.home_mv_slider {
  position: relative;
}

.home_mv .slider-fade .slick-slide img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.home_mv_catch {
  text-align: center;
}

.home_mv_con {
  margin-top: 22px;
}

.home_mv_bannerArea {
  margin-bottom: 40px;
}

.home_mv_features {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
}

.home_mv_features a {
  transition: none;
}
.home_mv_features a:hover {
  color: #fff;
}

.home_mv_features_item,
.home_mv_features_item03 {
  display: block;
/*   width: 166px; */
	width:160px;
  aspect-ratio: 1 / 1;
  font-size: 15px;
  letter-spacing: .1.5px;
  line-height: 1.3;
  text-align: center;
  margin-right: 5px;
  border-radius: 50%;
  background-color: rgba(243, 115, 60, .5);
  color: #fff;
  display: flex;
  justify-content: center;
  flex-flow: column;
  position: relative;
}

.home_mv_features_item::before {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  border-radius: 50%;
  border: 2px dashed #fff;
  position: absolute;
  left: 0;
  top: 0;
}
.home_mv_features_item03::before {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  border-radius: 50%;
  border: 2px dashed #036eb8;
  position: absolute;
  left: 0;
  top: 0;
}

.home_mv_features_tit {
  font-family: "FOT-筑紫A丸ゴシック Std B";
	transition: transform .3s ease-in-out;
}
.home_mv_features_tit04 {
  font-family: "FOT-筑紫A丸ゴシック Std B";
	transition: transform .3s ease-in-out;
	color: #036eb8;
}
.home_mv_features_tit04 .small{
font-family: "FOT-筑紫A丸ゴシック Std";
    font-size: 66%;
    color: #fff;
    background-color: #036eb8;
    padding: 2px 10px;
    border-radius: 13px;
}

.home_mv_features_item.home_mv_features_item-l {
/*   width: 246px; */
	width: 160px;
/*   font-size: 15px; */
  background-color: rgba(128, 177, 18, .5);
	padding-top:15px;
}

.home_mv_features_item.home_mv_features_item-l::after {
  content: "";
  display: block;
  width: 100%;
  height: 82px;
  background: url(../images/home/mv_features_leaf.png) center bottom/auto 100% no-repeat;
  position: absolute;
  top: -35px;
  left: 0;
}

.home_mv_features_item.home_mv_features_item-l .home_mv_features_tit {
  font-size: 16px;
  letter-spacing: .1.3px;
  line-height: 1.3;
  margin-bottom: 10px;
}

.home_mv_features_item.home_mv_features_item-s {
  width: 160px;
  font-size: 20px;
  line-height: 1.5;
  background-color: rgba(75, 179, 226, .5);
}
.home_mv_features_item03.home_mv_features_item-t{
/* 	width: 160px; */
	width: 208px;
    font-size: 23px;
    line-height: 1.1;
	background-color: #fff;
}
.home_mv_features_item03.home_mv_features_item-t::after {
  content: "";
  display: block;
  width: 100%;
  height: 82px;
  background: url(../images/home/inful_bnr.png) center bottom/auto 70% no-repeat;
  position: absolute;
  top: -8px;
  left: 0;
}

.home_mv_features_item.home_mv_features_item-s .home_mv_features_tit {
  letter-spacing: .1em;
/*   font-size: 19px;
　line-height: 1.5; */
}

.home_mv_features_text {
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
}

.home_mv_open {
  border: 2px solid #fff;
  background-color: rgba(255, 255, 255, .7);
}

.home_mv_open_inner {
  padding: 25px 15px 15px;
}

.home_mv_open_date,
.home_mv_open_tit {
  line-height: 1;
  text-align: center;
}

.home_mv_open_date {
  font-size: 16px;
  letter-spacing: .12em;
  color: #da7d38;
  font-family: "タカモダン";
  margin-bottom: 10px;
}

.home_mv_open_date .large {
  font-size: 181%;
}

.home_mv_open_tit {
  font-size: 39px;
  letter-spacing: .12em;
  color: #38a0d0;
  font-family: "タカモダン";
  text-shadow: #fff 2px 0px, #fff -2px 0px,
      #fff 0px -2px, #fff 0px 2px,
      #fff 2px 2px , #fff -2px 2px,
      #fff 2px -2px, #fff -2px -2px,
      #fff 1px 2px, #fff -1px 2px,
      #fff 1px -2px, #fff -1px -2px,
      #fff 2px 1px, #fff -2px 1px,
      #fff 2px -1px, #fff -2px -1px;
  margin-bottom: 10px;
}
.home_mv_open_tit > span:nth-child(1) {
  color: #ef7b3e;
}
.home_mv_open_tit > span:nth-child(2) {
  color: #84b41b;
}
.home_mv_open_tit > span:nth-child(3) {
  color: #ec51a7;
}

.home_mv_open_tour {
  color: #666;
  font-family: "FOT-筑紫A丸ゴシック Std B";
  font-size: 17px;
  letter-spacing: .05em;
  line-height: 1.4;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.home_mv_open_tour_tit {
  letter-spacing: .1em;
  min-width: 74px;
  width: 74px;
  aspect-ratio: 1 / 1;
  border: 2px solid #fff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  flex-flow: column;
  text-align: center;
}

.home_mv_open_tour_date {
  padding-left: 10px;
}
.home_mv_open_tour_date .small {
  font-size: 76%;
}

.home_mv .mv_ribon {
  position: absolute;
  bottom: 150px;
  left: 0;
}

.home_mv .mv_banner {
  max-width: 550px;
}

.home_mv .mv_banner a:hover {
  opacity: 0.8;
}

.home_mv .mv_banner .btn01 a {
  font-size: 120%;
}

/* ---------- PC ---------- */
@media print, screen and (min-width: 641px) {
  .home_mv {
    height: 1180px;
  }

  .home_mv_slider {
    z-index: -1;
  }

  .home_mv .slider-fade .slick-slide img {
    height: 950px;
  }

  .home_mv .inner {
    max-width: 1200px;
    width: 100%;
    height: calc(100% - 260px);
    padding-top: 75px;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
  }

  .home_mv_bannerArea {
    margin-top: 40px;
  }

  .home_mv_info {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
  }
  .home_mv_info_sp {
    background: #e8efab;
  }

  a.home_mv_features_item::before {
    animation: rotation 30s infinite linear paused;
  }
  a.home_mv_features_item03::before {
    animation: rotation 30s infinite linear paused;
  }
  a.home_mv_features_item:hover::before {
    animation-play-state: running;
  }
  a.home_mv_features_item03:hover::before {
    animation-play-state: running;
  }

  .home_mv_open {
    min-width: 310px;
    width: 310px;
  }
}

/* ---------- スマホ ---------- */
@media screen and (max-width: 640px) {
  .home_mv {
    background-color: #e8efab;
  }

  .home_mv_slider,
  .home_mv .slider-fade .slick-slide img,
  .home_mv_catch {
    /* height: 350px; */
    aspect-ratio: 768 / 700;
  }

  .home_mv_slider {
    padding-bottom: 9.5%;
    box-sizing: content-box;
    overflow: hidden;
  }

  .home_mv_bg {
    height: auto;
    aspect-ratio: 750 / 286;
    background-image: url(../images/home/mv_bg_sp.png);
  }

  .home_mv_bg > * {
    height: 59%;
  }

  .home_mv_fawnLeg {
    bottom: 0;
    right: auto;
    left: 24%;
    transform: none;
  }

  .home_mv_rabbit {
    bottom: -9%;
  }

  .home_mv .slick-slider {
    width: 100%;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
  }

  .home_mv_catch {
    width: 100%;
    padding-left: 5%;
    padding-right: 5%;
    padding-bottom: calc(22.3% + 10px);
    display: flex;
    flex-flow: column;
    justify-content: flex-end;
    align-items: center;
    position: absolute;
    left: 0;
    top: 0;
  }

  .home_mv_con {
    padding-left: 5%;
    padding-right: 5%;
    margin-top: 50px;
  }

  .home_mv_features {
    max-width: 326px;
    margin-left: auto;
    margin-right: auto;
    justify-content: center;
  }

  .home_mv_features_item {
    padding-left: 20px;
    padding-right: 20px;
    margin-top: 5px;
  }
	.home_mv_features_item.home_mv_features_item-t{
		line-height: 1.3;
		font-size:17px;
	}
  .home_mv_features_item03.home_mv_features_item-t{
    width: 160px;
      font-size: 17px;
      line-height: 1.1;
    background-color: #fff;
    position: absolute;
      top: 13px;
      left: 16px;
  }
  .home_mv_features_item03.home_mv_features_item-t::after {
    background-size: 25%;
      position: absolute;
      top: -28px;
      left: 0px;
  }

  .home_mv_open {
    max-width: 310px;
    margin-top: 40px;
    margin-left: auto;
    margin-right: auto;
  }

  .home_mv .mv_banner {
    text-align: center;
  }
}


/*==================================================================================================================================

  *共通

==================================================================================================================================*/
/* main */
body.home main {
  max-width: 2000px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
}

/* ---------- PC ---------- */
@media print, screen and (min-width: 641px) {
  body.home main {
    margin-top: -130px;
  }
}

/* box */
/* ---------- PC ---------- */
@media print, screen and (min-width: 641px) {
  body.home .box1 {
    max-width: 1200px;
    margin: 0 auto;
  }
}

/* タイトル */
.home_tit {
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  font-size: 32px;
  padding-left: 120px;
  padding-right: 120px;
  background-image: url(../images/home/tit_l.png),url(../images/home/tit_r.png);
  background-size: 86px auto;
  background-position: left top,right top;
  background-repeat: no-repeat;
  margin-bottom: 30px;
  text-align: center;
}

.home_tit_en {
  font-family: 'Architects Daughter', cursive;
  font-size: 81%;
  letter-spacing: .12em;
  color: #8fb270;
  line-height: 1;
  margin-bottom: 15px;
}

.home_tit_main {
  font-family: "タカモダン";
  font-size: inherit;
  letter-spacing: .12em;
  color: #6d645d;
  line-height: 1.4;
}

.home_tit.home_tit-white {
  background-image: url(../images/home/tit_l_white.png),url(../images/home/tit_r_white.png);
}
.home_tit.home_tit-white .home_tit_en {
  color: #fff;
}

/* ---------- PC ---------- */
@media print, screen and (min-width: 641px) {
  .home_tit {
    padding-top: 10px;
  }
}

/* ---------- スマホ ---------- */
@media screen and (max-width: 640px) {
  .home_tit {
    font-size: 24px;
    padding-left: 60px;
    padding-right: 60px;
    background-size: 50px auto;
  }

  .home_tit_en {
    margin-bottom: 10px;
  }
}


/*==================================================================================================================================

  *お知らせ

==================================================================================================================================*/
.home_news {
  position: relative;
  background: linear-gradient(180deg, transparent 0%, transparent 129px, #e8efab 129px, #e8efab 100%);
}

.home_news .box1 {
  padding-bottom: 24px;
}

.home_news_headline {
  aspect-ratio: 292 / 352;
  padding-top: 80px;
  background: url(../images/home/news_tit_bg.png) center top/100% auto no-repeat;
  position: relative;
}

.home_news_tit {
  text-align: center;
}
.home_news_tit h2 {
  font-size: 28px;
  font-family: "タカモダン";
  line-height: 1.2;
  letter-spacing: .12em;
  color: #6d645d;
}
.home_news_tit::before {
  display: block;
  content: "News";
  font-size: 23px;
  font-family: 'Architects Daughter', cursive;
  line-height: 1;
  letter-spacing: .12em;
  color: #8fb270;
  margin-bottom: 10px;
}

.home_news_btn {
  width: 142px;
  margin-left: auto;
  margin-top: 10px;
}
.home_news_btn a {
  display: block;
  aspect-ratio: 142 / 122;
  background: url(../images/home/news_btn_bg.png) center top/100% auto no-repeat;
  padding-bottom: 42%;
  display: flex;
  flex-flow: column;
  justify-content: flex-end;
  text-align: center;
  color: #fff;
  font-family: "FOT-筑紫A丸ゴシック Std B";
  font-size: 17px;
  letter-spacing: .12em;
  line-height: 1;
  transition: none;
}

/* リス */
@keyframes squirrelAnime {
  0% {
    background-image: url(../images/home/anime/squirrel1.png);
  }
  20% {
    background-image: url(../images/home/anime/squirrel2.png);
  }
  90% {
    background-image: url(../images/home/anime/squirrel2.png);
  }
}

@keyframes squirrelAnimeTail {
  0%, 50% {
    background-image: url(../images/home/anime/squirrel_tail1.png);
  }
  50%, 100% {
    background-image: url(../images/home/anime/squirrel_tail2.png);
  }
}

.home_news_squirrel {
  width: 56%;
  aspect-ratio: 488 / 430;
  background: url(../images/home/anime/squirrel1.png) center/100% auto no-repeat;
  pointer-events: none;
  position: absolute;
  bottom: 0;
  left: 2.4%;
  animation: squirrelAnime 2.4s steps(1) infinite;
}

.home_news_squirrel_tail {
  width: 100%;
  height: 100%;
  background: url(../images/home/anime/squirrel_tail1.png) center/100% auto no-repeat;
  position: absolute;
  left: 0;
  top: 0;
  animation: squirrelAnimeTail 1s steps(1) infinite;
}

.home_news_list {
  padding: 70px 75px;
}

.home_news_list li:not(:last-child) {
  margin-bottom: 30px;
}
.home_news_list li * {
  letter-spacing: .12em;
}
.home_news_list li a {
  color: #333;
  transition-property: color;
}
.home_news_list li a:hover {
  color: var(--main-color);
}
.home_news_list li a br {
  display: none;
}
.home_news_list li span {
  margin-right: 30px;
}
.home_news_list li em {
  text-align: center;
  display: inline-block;
  padding: 8px 10px;
  font-style: normal;
  font-size: 14px;
  margin-right: 30px;
  color: #fff;
  min-width: 105px;
  line-height: 1.2;
}

/* ---------- PC ---------- */
@media print, screen and (min-width: 641px) {
  .home_news .box1 {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    background: url(../images/home/news_dec.png) right 15px bottom 10px/114px auto no-repeat;
  }

  .home_news_headline {
    min-width: 292px;
    width: 292px;
  }

  .home_news_btn a {
    transition: transform .3s ease-in-out;
  }
  .home_news_btn a:hover {
    transform: translateY(-10px);
  }

  .home_news_list {
    width: calc(100% - 30px - 292px);
    margin-left: 30px;
    margin-top: 15px;
  }
  .home_news_list li {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
}

/* ---------- スマホ ---------- */
@media screen and (max-width: 640px) {
  .home_news {
    padding-top: 60px;
    background: #e8efab;
  }

  .home_news .box1 {
    padding-bottom: 74px;
  }

  .home_news_headline {
    aspect-ratio: 292 / 250;
    max-width: 292px;
    margin-left: auto;
    margin-right: auto;
  }

  .home_news_btn {
    margin-top: -15px;
    margin-right: 5.9%;
    position: relative;
  }

  .home_news_squirrel {
    bottom: -10px;
  }

  .home_news_list {
    padding: 40px 5.9% 55px;
    margin-top: -5px;
  }

  .home_news_list li a {
    display: block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
}


/*==================================================================================================================================

  *医院概要

==================================================================================================================================*/
.home_info {
  margin-top: -54px;
  padding-top: 145px;
  padding-bottom: 115px;
  position: relative;
  z-index: 0;
}

.home_info::before,
.home_info::after {
  content: "";
  display: block;
  width: 100%;
  position: absolute;
  left: 0;
  z-index: -1;
}

.home_info::before {
  height: calc(100% - 53px);
  background-color: #d6df88;
  background-image: url(../images/home/info_tree_l.png),url(../images/home/info_tree_r.png),url(../images/pattern1.png);
  background-position: left bottom,right bottom,left top;
  background-repeat: no-repeat,no-repeat,repeat;
  background-size: 38.3% auto,36.6% auto,auto;
  bottom: 0;
}

.home_info::after {
  height: 54px;
  background: url(../images/pattern1.png) left bottom #d6df88;
  -webkit-mask: url(../images/grass_mask.svg) center bottom/auto 100% repeat-x;
  mask: url(../images/grass_mask.svg) center bottom/auto 100% repeat-x;
  top: 0;
}

.home_info_overview address {
  text-align: center;
}
.home_info_overview_add {
  line-height: 1.3;
  margin-bottom: 25px;
  letter-spacing: .12em;
}
.home_info_overview_tel {
  margin-bottom: 35px;
}
.home_info_overview_tel a {
  display: block;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  font-family: "FOT-筑紫A丸ゴシック Std B";
  font-size: 30px;
  letter-spacing: .1em;
  line-height: 1;
  color: #90c31f;
  padding: 20px 42px 20px calc(.9em + 10px + 42px);
  word-break: break-all;
  position: relative;
  transition-property: opacity;
}
.home_info_overview_tel a::after {
  content: "";
  display: block;
  width: .9em;
  height: .9em;
  background: url(../images/tel.svg) left center/100% auto no-repeat;
  position: absolute;
  left: 42px;
  top: 50%;
  transform: translateY(-50%);
}

.home_access_map {
  text-align: center;
}

.home_access_map iframe {
  width: 100%;
  height: 400px;
  vertical-align: bottom;
}

.home_access_desc {
  width: 182px;
  font-size: 16px;
  color: #fff;
  font-family: "FOT-筑紫A丸ゴシック Std B";
  letter-spacing: .12em;
  line-height: 1.5;
  background: url(../images/access_bg.png) center top/100% auto no-repeat;
  aspect-ratio: 364 / 344;
  text-align: center;
  display: flex;
  flex-flow: column;
  justify-content: center;
  position: relative;
}

.home_access .btn01 {
  margin-top: 20px;
  text-align: center;
}
.home_access .btn01 a {
  font-size: 17px;
  font-family: "FOT-筑紫A丸ゴシック Std B";
  letter-spacing: .12em;
}

/* ---------- PC ---------- */
@media print, screen and (min-width: 641px) {
  .home_info .box1 {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
  }

  .home_info_overview {
    width: 47.5%;
  }
  .home_info_overview .tb02 th {
    width: 33%;
  }
  .home_info_overview .tb02 td {
    width: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
  .home_info_overview .tb02 td:last-child {
    width: 16%;
    text-align: left;
  }

  .home_access {
    width: 47.7%;
  }

  .home_access_desc {
    margin-top: -130px;
    margin-left: 53%;
  }
}

/* ---------- スマホ ---------- */
@media screen and (max-width: 640px) {
  .home_info {
    padding-top: 74px;
    padding-bottom: 80px;
  }

  .home_info_overview_tel a {
    font-size: min(8vw, 30px);
    padding-left: calc(.9em + 10px + 6%);
    padding-right: 6%;
  }
  .home_info_overview_tel a::after {
    left: 6%;
  }

  .home_access {
    margin-top: 40px;
  }

  .home_access_map img {
    width: 100%;
    max-width: 440px;
  }

  .home_access_desc {
    margin-left: auto;
    margin-right: auto;
    margin-top: 20px;
  }
}


/*==================================================================================================================================

  *ご挨拶

==================================================================================================================================*/
.home_greeting {
  padding-top: 100px;
  padding-bottom: 230px;
  background: url(../images/pattern3.jpg);
  position: relative;
  overflow: hidden;
}

.home_greeting::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(../images/home/greeting_dec.png) center top/100% auto no-repeat;
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
}

/* 雲 */
@keyframes cloudAnime {
  0%, 100% {
    transform: scale(1, 1);
  }
  50% {
    transform: scale(1, .95);
  }
}

.home_greeting_clouds {
  pointer-events: none;
}

.home_greeting_clouds > * {
  position: absolute;
}

.home_greeting_clouds > * > * {
  width: 100%;
  height: 100%;
  background-size: 100% auto;
  background-repeat: no-repeat;
  transform-origin: bottom left;
}

.home_greeting_cloud1 {
  width: 81%;
  aspect-ratio: 1622 / 772;
  bottom: 0;
  left: 0;
  transform: translate(-24%, 40%);
}

.home_greeting_cloud1 > * {
  background-image: url(../images/home/anime/cloud_left1.png);
  animation: cloudAnime 6s ease infinite;
}

.home_greeting_cloud2 {
  width: 70%;
  aspect-ratio: 1404 / 938;
  bottom: 0;
  left: 0;
  transform: translate(-18%, 32%);
}

.home_greeting_cloud2 > * {
  background-image: url(../images/home/anime/cloud_left2.png);
  animation: cloudAnime 5s ease -1s infinite;
}

.home_greeting_cloud3 {
  width: 74%;
  aspect-ratio: 1474 / 738;
  bottom: 0;
  right: 0;
  transform: translate(20%, 41%);
}

.home_greeting_cloud3 > * {
  background-image: url(../images/home/anime/cloud_right1.png);
  animation: cloudAnime 5s ease -1.2s infinite;
}

.home_greeting_cloud4 {
  width: 74%;
  aspect-ratio: 1470 / 912;
  bottom: 0;
  right: 0;
  transform: translate(27%, 35%);
}

.home_greeting_cloud4 > * {
  background-image: url(../images/home/anime/cloud_right2.png);
  animation: cloudAnime 6s ease -.5s infinite;
}

.home_greeting .box1 {
  position: relative;
  z-index: 1;
}

.home_greeting_flex_img {
  max-width: 484px;
  text-align: center;
  padding-top: 50px;
  background: url(../images/home/greeting_bird.png) right top/92px auto no-repeat;
}

.home_greeting_img {
  aspect-ratio: 484 / 457;
  -webkit-mask: url(../images/home/greeting_img_mask.svg) center 100% no-repeat;
  mask: url(../images/home/greeting_img_mask.svg) center 100% no-repeat;
}
.home_greeting_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.home_greeting_text {
  margin-bottom: 40px;
}

.home_greeting .home_greeting_text h3 {
  margin-bottom: 25px;
}

.home_greeting_text > p {
  line-height: 2.3;
  letter-spacing: .12em;
}

.home_greeting_text > p:not(:last-child) {
  margin-bottom: 25px;
}

.home_greeting_nameWrap {
  font-family: "FOT-筑紫A丸ゴシック Std B";
}

.home_greeting_name {
  font-size: 18px;
  letter-spacing: .12em;
  color: #f2c12c;
  line-height: 1.4;
  text-align: center;
}

.home_greeting_name span {
  display: block;
  font-size: 122%;
  color: #ef9902;
}

.home_greeting_flex_text .btn01 a {
  font-size: 17px;
  letter-spacing: .12em;
}

/* ---------- PC ---------- */
@media print, screen and (min-width: 641px) {
  .home_greeting .home_tit {
    margin-bottom: 35px;
  }
  .home_greeting_flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    flex-direction: row-reverse;
  }

  .home_greeting_flex_img {
    width: 40%;
  }

  .home_greeting_flex_text {
    width: 56%;
    padding-top: 15px;
  }

  .home_greeting_nameWrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    padding-right: 45px;
  }

  .home_greeting_name {
    order: 1;
  }

  .home_greeting_flex_text .btn01 {
    order: 0;
  }
}

/* ---------- スマホ ---------- */
@media screen and (max-width: 640px) {
  .home_greeting {
    padding-top: 80px;
    padding-bottom: calc(16% + 80px);
    background-image: url(../images/pattern3.jpg);
    background-size: 500px auto;
  }

  .home_greeting::after {
    background-image: url(../images/home/greeting_dec_sp.png);
  }

  /* 雲 */
  .home_greeting_cloud1 {
    width: 200%;
  }

  .home_greeting_cloud2 {
    width: 180%;
  }

  .home_greeting_cloud3,
  .home_greeting_cloud4 {
    display: none;
  }

  .home_greeting_flex_img {
    max-width: 320px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px;
  }

  .home_greeting_text {
    margin-bottom: 25px;
  }

  .home_greeting_name {
    text-align: right;
    margin-bottom: 30px;
  }

  .home_greeting_flex_text .btn01 {
    text-align: center;
  }
}


/*==================================================================================================================================

  *診療案内

==================================================================================================================================*/
.home_medical {
  padding-top: 280px;
  padding-bottom: 8.5%;
  background: url(../images/home/medical_bg.png) center top no-repeat,linear-gradient(180deg, transparent 0%, transparent 400px, #badcb4 400px, #badcb4 100%);
  margin-top: -194px;
  position: relative;
}

.home_medical .box1 {
  position: relative;
  z-index: 1;
}

.home_medical .home_medical_item a {
  display: block;
  transition: none;
}
.home_medical .home_medical_item_imgArea {
  position: relative;
}
.home_medical .home_medical_item_imgArea img {
  width: 100%;
  max-width: 89.8%;
}

.home_medical .home_medical_item_titArea {
  width: 158px;
  aspect-ratio: 1 / 1;
  color: #fff;
  text-align: center;
  font-size: 20px;
  display: flex;
  flex-flow: column;
  justify-content: center;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 0;
}
.home_medical .home_medical_item_titArea::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #f2a72c;
  -webkit-mask: url(../images/home/medical_tit_mask.svg) center/100% no-repeat;
  mask: url(../images/home/medical_tit_mask.svg) center/100% no-repeat;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
}

.home_medical .home_medical_item_tit {
  font-family: "FOT-筑紫A丸ゴシック Std B";
  letter-spacing: .1em;
  line-height: 1.2;
}
.home_medical .home_medical_item h3 {
  font-size: inherit;
}
.home_medical .home_medical_item_en {
  font-family: 'Architects Daughter', cursive;
  font-size: 70%;
  letter-spacing: .1em;
  line-height: 1;
  margin-top: 8px;
}
.home_medical .home_medical_item_text {
  letter-spacing: .1em;
  line-height: 1.6;
  color: #333;
  margin-top: 20px;
}

/* ---------- PC ---------- */
@media print, screen and (min-width: 641px) {
  .home_medical .home_tit {
    margin-bottom: 70px;
  }
  .home_medical .home_medical_flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 50px 54px;
  }
  .home_medical .home_medical_item {
    width: 334px;
  }

  .home_medical .home_medical_item_imgArea img {
    transition: opacity .3s ease-in;
  }
  .home_medical a:hover .home_medical_item_imgArea img {
    opacity: .7;
  }

  .home_medical a .home_medical_item_titArea::before {
    transition: background-color .3s ease-in;
  }
  .home_medical a:hover .home_medical_item_titArea::before {
    background-color: #ebaaaa!important;
  }
  .home_medical .home_medical_item:nth-child(2) .home_medical_item_titArea::before,
  .home_medical .home_medical_item:nth-child(5) .home_medical_item_titArea::before {
    background-color: #eabb37;
  }

  .home_medical .home_medical_item_text {
    font-size: 15px;
    max-width: 250px;
    margin-left: auto;
    margin-right: auto;
  }
}

/* ---------- スマホ ---------- */
@media screen and (max-width: 640px) {
  .home_medical {
    padding-top: calc(16% + 80px);
    padding-bottom: calc(80px + 9% + 2.7%);
    background: url(../images/home/medical_bg_sp.png) center top/100% auto no-repeat,linear-gradient(180deg, transparent 0%, transparent 400px, #badcb4 400px, #badcb4 100%);
    margin-top: -16%;
  }

  .home_medical .home_medical_flex {
    max-width: 334px;
    margin-left: auto;
    margin-right: auto;
  }

  .home_medical .home_medical_item:not(:last-child) {
    margin-bottom: 30px;
  }

  .home_medical .home_medical_item_imgArea {
    padding-bottom: 20px;
  }

  .home_medical .home_medical_item_titArea {
    width: 170px;
    font-size: 18px;
  }

  .home_medical .home_medical_item:nth-child(even) .home_medical_item_titArea::before {
    background-color: #eabb37;
  }
}


/*==================================================================================================================================

  *当院の特徴

==================================================================================================================================*/
.home_feature_wrap {
  position: relative;
  margin-top: calc(-9% - 2.7%);
}

/* 鳥 */
@keyframes birdAnimeFlap {
  0%, 50% {
    background-image: url(../images/home/anime/bird1.png);
  }
  50%, 100% {
    background-image: url(../images/home/anime/bird2.png);
  }
}
@keyframes birdAnime {
  0%, 17% {
    left: 28%;
    top: 0;
  }
  26% {
    left: 42%;
    top: -50px;
  }
  35% {
    left: 50%;
    top: -20px;
  }
  45% {
    left: 64%;
    top: -90px;
  }
  54% {
    left: 72%;
    top: -55px;
  }
  63% {
    left: 86%;
    top: -150px;
  }
  73% {
    left: 94%;
    top: -110px;
  }
  83%, 100% {
    left: 100%;
    top: -200px;
  }
}

.home_feature_bird {
  width: 8.2%;
  aspect-ratio: 1;
  background:  url(../images/home/anime/bird1.png) center/100% auto no-repeat;
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 28%;
  margin-top: 4%;
  animation: birdAnimeFlap 1s steps(1) infinite, birdAnime 6s linear infinite;
}

.home_feature {
  padding-top: 17.3%;
  padding-bottom: 205px;
  position: relative;
  z-index: 0;
  overflow: hidden;
}

.home_feature,
.home_feature .box1::before {
  pointer-events: none;
}

.home_feature::before,
.home_feature::after,
.home_feature .box1::before {
  content: "";
  display: block;
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.home_feature::before {
  height: 100%;
  background: url(../images/pattern2.png) #f9f5ea;
  z-index: -2;
  margin-top: calc(9% + 2.7% - 1px);
}

.home_feature::after {
  height: 0;
  padding-top: 2.7%;
  background: url(../images/pattern2.png) left bottom #f9f5ea;
  -webkit-mask: url(../images/grass_mask.svg) center bottom/auto 100% repeat-x;
  mask: url(../images/grass_mask.svg) center bottom/auto 100% repeat-x;
  z-index: -2;
  margin-top: 9%;
}

.home_feature .box1 {
  position: static;
  pointer-events: auto;
}
.home_feature .box1::before {
  height: 100%;
  background-image: url(../images/home/features_head.png),url(../images/home/features_tree_btm.png);
  background-position: center top,center bottom;
  background-repeat: no-repeat,repeat-x;
  background-size: 100% auto,auto;
  z-index: -1;
}

.home_feature .home_feature_item_num {
  margin-left: 15px;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 35px;
  color: #fff;
  line-height: 1;
  margin-bottom: -20px;
  position: relative;
  z-index: 1;
}
.home_feature .home_feature_item_num::before {
  display: block;
  content: "";
  height: 100%;
  aspect-ratio: 256 / 63;
  background-color: #90c2d5;
  -webkit-mask: url(../images/home/features_num_bg_mask.png) left top/100% auto no-repeat;
  mask: url(../images/home/features_num_bg_mask.png) left top/100% auto no-repeat;
  position: absolute;
  left: 0;
  bottom: 0;
}
.home_feature .home_feature_item_num p {
  font-family: 'Architects Daughter', cursive;
  font-size: 28px;
  letter-spacing: .12em;
  width: fit-content;
  transform: rotate(-8deg);
}
.home_feature .home_feature_item_num p em {
  font-size: 150%;
  padding-left: .5em;
  line-height: 1;
}

.home_feature .home_feature_item_img img {
  -webkit-mask: url(../images/home/features_img_mask.png) center/100% no-repeat;
  mask: url(../images/home/features_img_mask.png) center/100% no-repeat;
}

.home_feature .home_feature_item_tit,
.home_feature .home_feature_item_tit::after {
  border-radius: 26px;
}

.home_feature .home_feature_item_tit {
  background-color: #90c2d5;
  padding: 16px;
  font-family: "FOT-筑紫A丸ゴシック Std B";
  color: #fff;
  font-size: 22px;
  letter-spacing: .12em;
  line-height: 1.4;
  text-align: center;
  margin-bottom: 20px;
  position: relative;
  z-index: 0;
}

.home_feature .home_feature_item_tit::after {
  content: "";
  display: block;
  width: calc(100% - 16px);
  height: calc(100% - 16px);
  border: 1px dashed #fff;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  z-index: -1;
}
.home_feature .home_feature_item_text {
  line-height: 1.9;
  letter-spacing: .12em;
}
.home_feature .home_feature_item .btn01 {
  margin-top: 20px;
  text-align: center;
}
.home_feature .home_feature_item .btn01 a,
.home_feature .home_feature_item .btn01 a::before {
  background: #90c2d5;
}
.home_feature .home_feature_item .btn01 a {
  font-family: 'Architects Daughter', cursive;
  font-size: 17px;
  letter-spacing: .12em;
  padding: 10px 65px 10px 45px;
  background: linear-gradient(-90deg, transparent 0%, transparent 6px, #90c2d5 6px, #90c2d5 100%);
}
.home_feature .home_feature_item .btn01 a::after {
  right: 40px;
}

.home_feature_item:nth-child(2) .home_feature_item_num::before,
.home_feature_item:nth-child(2) .home_feature_item_tit,
.home_feature_item:nth-child(2) .btn01 a,
.home_feature_item:nth-child(2) .btn01 a::before {
  background-color: #e59b74;
}
.home_feature_item:nth-child(2) .btn01 a {
  background: linear-gradient(-90deg, transparent 0%, transparent 6px, #e59b74 6px, #e59b74 100%);
}
.home_feature_item:nth-child(3) .home_feature_item_num::before,
.home_feature_item:nth-child(3) .home_feature_item_tit,
.home_feature_item:nth-child(3) .btn01 a,
.home_feature_item:nth-child(3) .btn01 a::before {
  background-color: #a3c25e;
}
.home_feature_item:nth-child(3) .btn01 a {
  background: linear-gradient(-90deg, transparent 0%, transparent 6px, #a3c25e 6px, #a3c25e 100%);
}
.home_feature_item:nth-child(4) .home_feature_item_num::before,
.home_feature_item:nth-child(4) .home_feature_item_tit,
.home_feature_item:nth-child(4) .btn01 a,
.home_feature_item:nth-child(4) .btn01 a::before {
  background-color: #ebaaaa;
}
.home_feature_item:nth-child(4) .btn01 a {
  background: linear-gradient(-90deg, transparent 0%, transparent 6px, #ebaaaa 6px, #ebaaaa 100%);
}
.home_feature_item:nth-child(5) .home_feature_item_num::before,
.home_feature_item:nth-child(5) .home_feature_item_tit,
.home_feature_item:nth-child(5) .btn01 a,
.home_feature_item:nth-child(5) .btn01 a::before {
  background-color: #eec144;
}
.home_feature_item:nth-child(5) .btn01 a {
  background: linear-gradient(-90deg, transparent 0%, transparent 6px, #eec144 6px, #eec144 100%);
}
.home_feature_item:nth-child(6) .home_feature_item_num::before,
.home_feature_item:nth-child(6) .home_feature_item_tit,
.home_feature_item:nth-child(6) .btn01 a,
.home_feature_item:nth-child(6) .btn01 a::before {
  background-color: #83bc8c;
}
.home_feature_item:nth-child(6) .btn01 a {
  background: linear-gradient(-90deg, transparent 0%, transparent 6px, #83bc8c 6px, #83bc8c 100%);
}

/* アライグマ */
@keyframes raccoonAnime {
  0% {
    background-image: url(../images/home/anime/raccoon1.png);
  }
  16% {
    background-image: url(../images/home/anime/raccoon2.png);
  }
  32% {
    background-image: url(../images/home/anime/raccoon3.png);
  }
  48% {
    background-image: url(../images/home/anime/raccoon4.png);
  }
  64% {
    background-image: url(../images/home/anime/raccoon5.png);
  }
  80% {
    background-image: url(../images/home/anime/raccoon6.png);
  }
}

.home_feature_raccoon {
  width: 15.4%;
  aspect-ratio: 1;
  background:  url(../images/home/anime/raccoon1.png) center/100% auto no-repeat;
  pointer-events: none;
  position: absolute;
  top: 0;
  right: 15.5%;
  margin-top: 10.5%;
  animation: raccoonAnime 2.6s steps(1) infinite;
}

/* ---------- PC ---------- */
@media print, screen and (min-width: 641px) {
  .home_feature .home_tit {
    margin-bottom: 50px;
  }
  .home_feature .home_feature_list {
    display: flex;
    flex-wrap: wrap;
    gap: 80px 6%;
  }
  .home_feature .home_feature_item {
    width: 47%;
  }

  .home_feature .home_feature_item_img,
  .home_feature .home_feature_item_text,
  .home_feature .home_feature_item .btn01 {
    max-width: 535px;
  }

  .home_feature .home_feature_item_tit {
    max-width: 426px;
    min-height: 106px;
    margin-top: -53px;
    margin-left: auto;
    display: flex;
    flex-flow: column;
    justify-content: center;
  }
}

/* ---------- スマホ ---------- */
@media screen and (max-width: 640px) {
  .home_feature_wrap {
    margin-top: calc(-15% - 2.7%);
  }

  /* 鳥 */
  @keyframes birdAnime {
    0%, 17% {
      left: 22%;
      top: 0;
    }
    26% {
      left: 35%;
      top: -40px;
    }
    35% {
      left: 43%;
      top: -16px;
    }
    45% {
      left: 56%;
      top: -72px;
    }
    54% {
      left: 63%;
      top: -44px;
    }
    63% {
      left: 76%;
      top: -120px;
    }
    73% {
      left: 84%;
      top: -88px;
    }
    83%, 100% {
      left: 100%;
      top: -160px;
    }
  }
  .home_feature_bird {
    width: 21%;
    left: 22%;
    margin-top: 21%;
  }

  .home_feature {
    padding-top: calc(57% + 25px);
    padding-bottom: 100px;
  }

  .home_feature::before {
    margin-top: calc(15% + 2.7%);
  }

  .home_feature::after {
    margin-top: calc(15% + 1px);
  }

  .home_feature .box1::before {
    background-image: url(../images/home/features_head_sp.png), url(../images/home/features_tree_btm.png);
    background-size: 100% auto, 140px auto;
  }

  .home_feature .home_feature_list {
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
  }

  .home_feature .home_feature_item:not(:last-child) {
    margin-bottom: 50px;
  }

  .home_feature .home_feature_item_img {
    text-align: center;
  }

  .home_feature_item_textArea {
    padding-left: 5.9%;
    padding-right: 5.9%;
  }

  .home_feature .home_feature_item_tit,
  .home_feature .home_feature_item_tit::after {
    border-radius: 16px;
  }

  .home_feature .home_feature_item_tit {
    margin-top: calc(-.7em - 16px);
  }

  /* アライグマ */
  .home_feature_raccoon {
    width: 41%;
    right: -8%;
    margin-top: 25%;
  }
}


/*==================================================================================================================================

  *医療コラム

==================================================================================================================================*/
.home_column {
  padding-bottom: 120px;
  background: url(../images/home/column_bg.jpg) center bottom no-repeat;
  margin-bottom: 30px;
}
.home_column .box1 {
  padding-top: 110px;
  position: relative;
}
.home_column .box1::after {
  content: "";
  display: block;
  width: 100%;
  height: 134px;
  background: url(../images/home/column_dec_head.png) left bottom/auto 100% no-repeat;
  position: absolute;
  left: 0;
  top: -96px;
}

.home_column_flex dt {
  max-width: 276px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: -35px;
  background-color: #9dc057;
  color: #fff;
  font-size: 112.5%;
  letter-spacing: .12em;
  line-height: 1.4;
  text-align: center;
  border-radius: 60px;
  padding: 10px;
  position: relative;
}
.home_column_flex dd {
  aspect-ratio: 584 / 498;
  padding-left: 30px;
  padding-right: 30px;
  padding-top: 75px;
  background: url(../images/home/column_item_bg.png) center top/100% auto no-repeat;
}
.home_column_flex dd a {
  color: #333;
}
.home_column_flex dd ul li:not(:last-child) {
  margin-bottom: 15px;
}
.home_column_flex dd ul li a {
  display: block;
  max-width: 100%;
  width: fit-content;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 15px;
  letter-spacing: .12em;
  line-height: 1;
  padding: 10px 5px 5px 28px;
  position: relative;
  transition-property: color;
}

.home_column_flex dd ul li a::before {
  content: "";
  display: block;
  width: 100%;
  height: calc(1em + 8px);
  background: url(../images/home/column_leaf.svg) left top/auto 100% no-repeat;
  position: absolute;
  left: 0;
  top: 0;
}
.home_column_flex dd ul li a br {
  display: none;
}
.home_column .btn01 {
  margin-top: 40px;
  text-align: center;
}
.home_column .btn01 a {
  font-size: 17px;
  font-family: "FOT-筑紫A丸ゴシック Std B";
  letter-spacing: .12em;
}

/* ハリネズミ */
@keyframes hedgehogAnime {
  0%, 50% {
    background-image: url(../images/home/anime/hedgehog1.png);
  }
  50%, 100% {
    background-image: url(../images/home/anime/hedgehog2.png);
  }
}

.home_column_hedgehog {
  width: 178px;
  aspect-ratio: 1;
  background: url(../images/home/anime/hedgehog1.png) center/100% auto no-repeat;
  pointer-events: none;
  position: absolute;
  top: -103px;
  left: 52px;
  animation: hedgehogAnime 2s steps(1) infinite;
}

/* 音符 */
@keyframes musicalAnime {
  0% {
    background-image: url(../images/home/anime/hedgehog_musical1.png);
  }
  14% {
    background-image: url(../images/home/anime/hedgehog_musical2.png);
  }
  28% {
    background-image: url(../images/home/anime/hedgehog_musical3.png);
  }
  42% {
    background-image: url(../images/home/anime/hedgehog_musical4.png);
  }
  56% {
    background-image: url(../images/home/anime/hedgehog_musical5.png);
  }
  70% {
    background-image: url(../images/home/anime/hedgehog_musical6.png);
  }
  84% {
    background-image: url(../images/home/anime/hedgehog_musical7.png);
  }
}

.home_column_musical {
  width: 90px;
  aspect-ratio: 180 / 124;
  background:  url(../images/home/anime/hedgehog_musical7.png) center/100% auto no-repeat;
  pointer-events: none;
  position: absolute;
  top: -96px;
  left: 0;
  animation: musicalAnime 2s steps(1) infinite;
}

/* ---------- PC ---------- */
@media print, screen and (min-width: 641px) {
  .home_column .home_tit {
    margin-bottom: 50px;
  }
  .home_column_flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px 8px;
  }
  .home_column_flex dl {
    width: 294px;
  }

  .home_column_flex dd ul li a:hover {
    color: var(--sub-color);
  }
}

/* ---------- スマホ ---------- */
@media screen and (max-width: 640px) {
  .home_column {
    padding-bottom: 100px;
    background-image: url(../images/home/column_bg_sp.jpg);
    background-size: 100% auto;
  }

  .home_column_flex {
    max-width: 294px;
    margin-left: auto;
    margin-right: auto;
  }

  .home_column_flex dl:not(:last-child) {
    margin-bottom: 50px;
  }
}


/*==================================================================================================================================

  *ループスライダー

==================================================================================================================================*/
.home_loopSlider {
  margin-bottom: 40px;
  overflow: hidden;
}
.home_loopSlider li {
  width: 480px;
  padding-left: 20px;
  padding-right: 20px;
}
.home_loopSlider li img {
  -webkit-mask: url(../images/img_mask.png) center/100% no-repeat;
  mask: url(../images/img_mask.png) center/100% no-repeat;
}

/* ---------- スマホ ---------- */
@media screen and (max-width: 640px) {
  .home_loopSlider li {
    width: 260px;
    padding-left: 10px;
    padding-right: 10px;
  }
}