@charset "UTF-8";
/* CSS Document */
@import url("https://fonts.googleapis.com/css2?family=Cardo&display=swap");

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  color: #333333;
  font-size: 15px;
  font-weight: 500;
  font-style: normal;
  line-height: 1.75;
  letter-spacing: 0.05em;
  text-align: justify;
}

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

  header

============================================================================*/
h1 {
  /* common */
  font-size: 12px;
  position: absolute;
  width: 1200px;
  top: 5px;
  right: 0;
  left: 0;
  margin: auto !important;
}

h1 span {
  display: inline-block !important;
}

/* TopHeader */
/*Side*/
.top_side_header {
  position: absolute;
  top: 0;
  left: 0;
  min-width: 300px;
  width: 300px !important;
  height: 950px;
  background-color: white;
  z-index: 1000;
}

.top_side_header h1 {
  position: absolute;
  top: 50px;
  left: 0;
  width: 300px;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
  font-size: 9px;
  text-align: center;
  line-height: 1.4;
}

.top_side_header .header_logo_link {
  position: absolute;
  /* top: 113px; */
  top: 100px;
  left: 73px;
  width: 155px;
  height: 237px;
}

.top_side_header .header_logo_link img {
  width: 155px;
  height: 237px;
}

.top_side_header .side_list {
  position: absolute;
  display: block;
  /*top: 392px;*/
  /* top: 375px; */
  top: 350px;
  left: 0px;
  width: 300px;
}

.top_side_header .side_list li a,
.top_side_header .side_list li div {
  display: block;
  width: 300px;
  height: auto;
  /*padding: 15px 0;*/
  padding: 13px 0;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 17px;
  font-weight: 400;
  text-align: center;
  line-height: 1;
  background-position: center;
}

.top_side_header .side_list li a:hover,
.top_side_header .side_list li div:hover {
  background-image: url("../images/navi_hover_icon.png");
  background-size: 25px 27px;
  background-position: center;
  background-repeat: no-repeat;
}

/* リンク先準備中（クリック不可） （リンク先#の場合）*/
.top_side_header .side_list li a[href="#"]{
  pointer-events: none;
  position:relative;
}
.top_side_header .side_list li a[href="#"]:before{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  position: absolute;
  top:0;
  left: 0;
  color: #fff;
  background: rgba(0, 0, 0, 0.5);
  content: "受付停止中";        
}

.top_side_header .side_list li.has_sub_menu {
  position: relative;
}

.top_side_header .side_list li.has_sub_menu::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 94px;
  width: 6px;
  height: 9px;
  background-image: url("../images/top_greeting_btn_icon.svg");
  background-repeat: no-repeat;
}

.top_side_header .side_list li.has_sub_menu .sub_menu {
  position: absolute;
  top:
    /*-106*/
    -235px;
  right: -300px;
  background-color: #92c975;
  z-index: 5000;
  opacity: 0;
  pointer-events: none;
  transition: .5s;
}

.top_side_header .side_list li.has_sub_menu .sub_menu li a {
  color: white;
}

.top_side_header .side_list li.has_sub_menu:hover .sub_menu {
  display: block;
  pointer-events: auto;
  opacity: 1;
}

/*TopNav*/
.top_nav {
  top: -90px;
}

/* /TopHeader */
header {
  width: 100%;
  /* height:93px;*/
  /* navのtopと同じ値にする */
  height: 120px;
  margin-bottom: 80px;
  /* navのheightと同じ値にする */
  background-color: rgba(255, 255, 255, 0.5);
}

header .inner {
  position: relative;
  width: 1200px;
  height: inherit;
  box-sizing: border-box;
  margin: auto;
  padding-top: 40px;
}

/* ロゴ */
header .header_logo {
  position: absolute;
  top: 30px;
}

header .header_logo,
header img {
  width: 345px;
  height: 70px;
}

/* 住所 */
.header_info {
  float: right;
  margin-right: 40px;
  text-align: right;
}

/* ご予約・お問合せ */
.header_tel {
  float: right;
  text-align: right;
  line-height: 1.4;
}

.header_tel a {
  color: #7db45f;
  position: relative;
  padding-left: 25px;
  font-size: 24.7px;
  font-weight: 700;
  letter-spacing: 0.1em;
  pointer-events: none;
}

.header_tel a:before {
  position: absolute;
  top: -2px;
  bottom: 0;
  left: -3px;
  width: 22px;
  height: 21.8px;
  margin: auto;
  background-image: url(../images/tel_icon.svg);
  background-repeat: no-repeat;
  content: "";
}

.header_mpcloud_links {
  display: flex;
  float: right;
  margin-left: 20px;
  width: 200px;
}

.header_mpcloud_links a {
  display: block;
  padding: 10px;
  min-width: 100px;
  background-color: #7db45f;
  color: #fff;
  text-align: center;
  border: 1px solid #fff;
  box-sizing: border-box;
  transition: all 0.5s ease;
  border-radius: 5px;
}

.header_mpcloud_links a:hover {
  color: #fff;
  background-color: rgba(125, 180, 95, 0.7);
}

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

  nav

============================================================================*/
nav {
  position: absolute;
  top: 120px;
  /* headerのheightと同じ値にする */
  width: 100%;
  height: 80px;
  /* headerのmargin-bottomと同じ値にする */
  background-color: #92c975;
  z-index: 9999;
}

nav ul {
  max-width: 1200px;
  min-width: 1200px;
  width: 100%;
  height: inherit;
  margin: 0 auto;
  text-align: center;
  display: flex;
  justify-content: center;
}

nav li {
  display: inline-block;
  position: relative;
  height: inherit;
  display: flex;
  justify-content: center;
  align-items: center;
}

nav li a {
  display: block;
  /*padding: 0 31px;*/
  padding: 0 13px;
  vertical-align: middle;
  /*line-height: 80px;*/
  /* 上下中央寄せのためにnavのheightと同じ値にする */
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  text-align: center;
  background-position: center;
}

nav li a:hover {
  color: rgba(255, 255, 255, 0.7);
}

nav li a:hover {
  background-image: url(../images/navi_hover_icon.png);
  background-size: 25px 27px;
  background-position: center;
  background-repeat: no-repeat;
}

nav li a span {
  position: relative;
}

nav li a span.lh01 {
  line-height: 1 !important;
}

nav li.active2 a {
  color: #fff;
}

/* リンク先準備中（クリック不可） （リンク先#の場合）*/
nav li a[href="#"]{
  pointer-events: none;
  position:relative;
}
nav li a[href="#"]:before{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  position: absolute;
  top:0;
  left: 0;
  color: #fff;
  background: rgba(0, 0, 0, 0.5);
  content: "受付停止中";
  z-index: 10;
}

/* 間のボーダー */
nav li a::after {
  content: "";
  position: absolute;
  left: 0px;
  width: 0;
  height: 15px;
  top: 0;
  bottom: 0;
  margin: auto;
  border-right: 1px dotted #fff;
  font-weight: 100;
  color: #666;
  font-size: 13px;
}

nav li:first-child a::after {
  display: none;
}

/* ホバーのボーダー */
nav li a span::before {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -7px;
  width: 100%;
  height: 1px;
  margin: auto;
  background-color: #3D4AA5;
  transition: 0.15s ease-out;
  transform: scaleX(0);
  content: "";
  z-index: 1;
}

nav li a:hover span::before,
nav li.active2 a span::before {
  /*transform: scaleX(1);*/
}

/* ホバーで出てくるメニューを示すアイコン */
.nav_slidebtm {
  position: relative;
}

.nav_slidebtm::after {
  position: absolute;
  top: 45px;
  left: 50%;
  transform: translateX(-50%);
  width: 10px;
  height: 12px;
  background-image: url(../images/arrow02.png);
  background-repeat: no-repeat;
  background-size: 10px;
  border: none;
}

/* ホバーで出てくるメニュー */
nav ul li div {
  position: absolute;
  display: none;
  width:
    /*150%*/
    330%;
  top: 100%;
  left: 0%;
  background-color: rgba(146, 201, 117, 0.9);
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.05);
  /* justify-content: center; */
}

nav ul li div a {
  display: block;
  position: relative;
  padding: 13px 18px;
  border-bottom: 1px solid #f0f0f0;
  line-height: 1.4;
  text-align:
    /*left*/
    center;
  font-size: 13px;
  background-position: center;
  width: 50%;
}

nav ul li div a:nth-child(odd) {
  border-right: 1px solid #f0f0f0;
}

nav ul li div a::after,
nav ul li div a::before {
  display: none;
}

nav ul li div a:hover {
  background-color: #92c975;
  background-image: url(../images/navi_hover_icon.png);
  background-size: 25px 27px;
  background-position: center;
  background-repeat: no-repeat;
}

/* 矢印 */
.nav_arrow img {
  display: block;
  position: absolute;
  top: 0;
  right: 5%;
  bottom: 0;
  margin: auto;
  transition: 0.2s ease-in-out;
}

nav ul li div a:hover .nav_arrow img {
  right: 3%;
}

/* スクロールで追加されるクラス */
nav.fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 5000;
  background-color: #92c975;
}

nav.fixed li a {
  display: block;
  color: #fff;
  background-position: center;
}

nav.fixed li a:hover {
  background-image: url(../images/navi_hover_icon.png);
  background-size: 25px 27px;
  background-position: center;
  background-repeat: no-repeat;
}

nav.fixed li div {
  background-color: rgba(146, 201, 117, 0.9);
}

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

  #mainvisual

============================================================================*/
/* 下層ページのメインビジュアルの高さ、背景画像（トップページの高さはtop.css参照） */
#mainvisual {
  display: block;
  position: relative;
  height: 240px;
  background-image: url("../images/page_mv_bg_img_01.jpg");
  background-color: #f0f0f0;
  background-position: center top -620px;
  background-repeat: no-repeat;
}

#mainvisual .inner {
  display: table;
  position: relative;
  height: inherit;
  width: 1200px;
  margin: 0 auto;
  background-repeat: no-repeat;
}

#mainvisual p.headline {
  position: relative;
}

/* キャッチフレーズ */
.mainvisual_catch {
  position: absolute;
  top: 120px;
}

.mainvisual_catch p.headline {
  margin-bottom: 20px;
  line-height: 42px;
  color: #1F2774;
  font-size: 27px;
  text-shadow: 0 0 5px rgba(255, 255, 255, 0.7);
}

.mainvisual_catch p {
  display: block;
  letter-spacing: 0.08em;
  font-size: 18.2px;
}

.mainvisual_catch span {
  display: block;
  letter-spacing: 0.08em;
  font-size: 15px;
}

.mainvisual_open {
  position: absolute;
  bottom: 30px;
  right: 0;
  width: 250px;
}

.mainvisual_open img {
  width: 100%;
}

/* 下層ページの見出し */
.mainvisual_headline {
  display: table-cell;
  padding-bottom: 2px;
  letter-spacing: 0.15em;
  vertical-align: middle;
  text-align: center;
  text-shadow: 0 0 5px rgba(255, 255, 255, 0.7), 0 0 5px rgba(255, 255, 255, 0.7), 0 0 5px rgba(255, 255, 255, 0.7), 0 0 5px rgba(255, 255, 255, 0.7);
}

.mainvisual_headline p.headline {
  margin-bottom: 0;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: bold;
  font-size: 32px;
  color: #333;
}

.mainvisual_headline p {
  color: #7db45f;
  font-family: "Kalam", cursive;
  font-size: 24px;
}

/* 飾りの英語の棒 */
/*.mainvisual_headline p::before,
.mainvisual_headline p::after{
  position: relative;
  content:"-";
}
.mainvisual_headline p::before{
  left:-0.5em;
}
.mainvisual_headline p::after{
  right:-0.5em;
}*/
/* 背景変更用 */
#mainvisual.bg01 {
  background-image: url(../images/main_bg01.png);
  background-position: center 0%;
  background-size: cover;
}

#mainvisual.bg02 {
  background-image: url(../images/main_bg02.png);
  background-position: center 0%;
  background-size: cover;
}

#mainvisual.bg03 {
  background-image: url(../images/main_bg03.png);
  background-position: center 0%;
  background-size: cover;
}

#mainvisual.bg04 {
  background-image: url(../images/main_bg04.png);
  background-position: center 0%;
  background-size: auto;
}

#mainvisual.bg05 {
  background-image: url(../images/main_bg05.png);
  background-position: center 0%;
  background-size: cover;
}

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

  #contents

==================================================================*/
main {
  display: block;
}

#container {
  padding-top: 80px;
  padding-bottom: 0;
}

#contents {
  position: relative;
  width: 1200px;
  margin: 0 auto;
  padding-top: 70px;
  padding-bottom: 100px;
}

#contents_left {
  float: left;
  width: 840px;
}

#contents_right {
  float: right;
  width: 280px;
  font-size: 15px;
  line-height: 1.6;
  position: sticky;
  top: 140px;
  padding: 0;
  margin: 70px 0 0;
}

.right_medical p {
  text-align: center;
}

.right_medical p a {
  display: block;
  padding: 15px 0;
  background-color: #fff;
  color: #000;
  font-weight: bold;
  font-size: 19px;
  transition: 0.1s ease-in-out;
  border-radius: 20px 20px 0 0;
}

.right_medical p a span {
  display: block;
  font-size: 14px;
}

.right_medical p a:hover {
  background-color: #e0d6ce;
  color: #1F2774;
}

.right_medical {
  padding: 10px;
  background: #1F2774;
  border-radius: 27px;
  position: relative;
}

.right_medical ul {
  background-color: #fff;
  border-radius: 15px;
}

.right_medical li:nth-child(odd) {
  background-color: #f1ebe2;
}

.right_medical li:nth-child(even) {
  background-color: #f9f4ee;
}

.right_medical li a {
  display: block;
  padding: 10px;
  text-align: center;
}

.right_medical li a:hover {
  background-color: #fff;
}

.right_medical li:last-child a:hover {
  border-radius: 0 0 20px 20px;
}

.right_medical li:last-child {
  margin-bottom: 0;
  border-radius: 0 0 20px 20px;
}

.right_medical img {
  width: 100%;
}

.right_medical li:nth-child(odd) {
  background-color: #f1ebe2;
}

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

  $footer

============================================================================*/
footer {
  position: relative;
  width: 100%;
  background-color: #fff;
}

/* フッターの医院概要 */
.footer_info {
  background-color: #f0f0f0;
}

.footer_info .inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 1200px;
  margin: 0 auto;
  padding: 55px 0 60px;
}

.footer_info_overview {
  width: 50%;
}

.footer_info_overview_logo,
.footer_info_overview_logo img {
  width: 115px;
  height: 70px;
}

.footer_info_overview dt {
  margin-bottom: 20px;
}

.footer_info_overview dd {
  margin-bottom: 12px;
  font-size: 13.5px;
}

.footer_info_overview dd:last-child {
  margin-bottom: 0;
}

.footer_info_overview_tel {
  padding-left: 26px;
  background-image: url(../images/header_tel.svg);
  background-size: 15px;
  background-position: left 23px;
  background-repeat: no-repeat;
  font-size: 26.5px !important;
  color: #1E2B68;
  font-family: 'Cardo', serif;
  line-height: 1.3;
  letter-spacing: 0.1em;
}

.footer_info_overview_tel span {
  display: block;
  position: relative;
  left: -27px;
  letter-spacing: 1px;
  font-weight: bold;
  font-size: 13px;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/* フッターのナビ */
.footer_navi .inner {
  width: 1200px;
  margin: 0 auto;
  padding: 60px 0 40px;
}

.footer_navi ul {
  position: relative;
  width: 100%;
  height: 80px;
  background-color: rgba(255, 255, 255, 0.5);
  z-index: 100;
}

.footer_navi ul {
  width: 1200px;
  height: inherit;
  margin: 0 auto;
  text-align: center;
  display: flex;
  justify-content: center;
}

.footer_navi ul li {
  display: inline-table;
  position: relative;
  height: inherit;
}

.footer_navi ul li a {
  display: block;
  padding: 0 29px;
  vertical-align: middle;
  line-height: 1.6;
  font-size: 15px;
  font-weight: bold;
  text-align: center;
}

.footer_navi ul li a:hover,
.footer_navi ul li.active2 a {
  color: #1F2774;
}

.footer_navi ul li a span {
  position: relative;
  padding: 0 5px;
}

/* 間のボーダー */
.footer_navi ul li a::after {
  content: "";
  position: absolute;
  left: -1px;
  width: 0;
  height: 15px;
  top: 0;
  bottom: 0;
  margin: auto;
  border-right: 1px dotted #ababab;
  font-weight: 100;
  color: #666;
  font-size: 13px;
}

.footer_navi ul li:first-child a::after {
  display: none;
}

/* ホバーのボーダー */
.footer_navi ul li a span::before {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -10px;
  width: 100%;
  height: 1px;
  margin: auto;
  background-color: #3D4AA5;
  -webkit-transition-duration: 0.15s;
  transition-duration: 0.15s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  transform: scaleX(0);
  content: "";
  z-index: 1;
}

.footer_navi ul li a:hover span::before,
.footer_navi ul li.active2 a span::before {
  transform: scaleX(1);
}

/* ページトップ */
.pagetop {
  position: fixed;
  bottom: 20px;
  /*right: 50px;*/
  left:50px;
  transition: .3s;
  cursor: pointer;
  z-index: 2000;
}

.pagetop:hover {
  opacity: .8;
}



/*.pagetop,
.pagetop img{
  width:50px;
  height:25px;
}
.pagetop{
  position:relative;
  margin:20px auto 20px;
  text-align:center;
  cursor:pointer;
  
}
.pagetop img{
  display:inline-block;
  position:relative;
  top:0; 
  transition:0.5s ease-in-out;
}
.pagetop:hover img{
  top:-5px;
  padding-bottom:5px;
  transform: rotateY(180deg);
}*/
/* コピーライト */
.copy {
  margin-bottom: 45px;
  text-align: center;
}

.copy small {
  line-height: 1;
  font-size: 13px;
  letter-spacing: 0.2em;
}

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

  タイトル

==================================================================*/
h1.title_01 {
  font-size: 12px;
  position: absolute;
  width: 1200px;
  top: 5px;
  right: 0;
  left: 0;
  margin: auto !important;
}

h1.title_01 span {
  display: inline-block !important;
}

.tit02 {
  position: relative;
  margin: 120px 0 40px;
  padding-left: 50px;
  color: #666666;
  font-size: 28px;
  font-weight: 700;
  font-family: fot-tsukuardgothic-std, sans-serif;
  line-height: 1.4;
  letter-spacing: 2px;
}

.tit02::before {
  content: "";
  position: absolute;
  top: -12px;
  left: 0;
  width: 40px;
  height: 50px;
  background-image: url("../images/icon_deco.png");
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 0;
}

.tit03 {
  position: relative;
  margin: 80px 0 40px;
  padding-left: 43px;
  color: #666666;
  font-size: 24px;
  font-weight: 700;
  font-family: fot-tsukuardgothic-std, sans-serif;
  line-height: 1.4;
  letter-spacing: 2px;
}

.tit03::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  height: 40px;
  background-image: url("../images/title_deco_02.svg");
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 0;
}

.tit04 {
  position: relative;
  margin: 40px 0 20px;
  padding-left: 43px;
  color: #666666;
  font-size: 20px;
  font-weight: 700;
  font-family: fot-tsukuardgothic-std, sans-serif;
  line-height: 1.4;
  letter-spacing: 6px;
}

.tit04::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 10px;
  height: 10px;
  background-color: #7db45f;
}

/*中央寄せ　背景画像あり*/
/*.tit01 {
  position: relative;
  margin-bottom: 30px;
  letter-spacing: 0.1em;
  line-height: 1.5;
  color: #1F2774;
  font-size: 24px;
  text-align: center;
}
.tit01::before{
  position: absolute;
  width: 200px;
  height: 62px;
  top:0;
  bottom: 0;
  right: 0;
  left:0;
  margin: auto ;
  background-image:url(../images/tit01_bg.png);
  background-repeat:no-repeat;
  background-position: center;
  background-size:cover;
  z-index: -1;
  content: "";
}*/
/* 左寄せ　背景画像あり */
/*.tit02 {
  position: relative;
  z-index: 0;
  margin-bottom: 30px;
  padding:14px ;
  letter-spacing: 0.15em;
  color: #1F2774;
  font-size: 24px;
  font-weight:bold;
  line-height: 1.4;
  text-align: left;
}
.tit02::before{
  position: absolute;
  width: 40px;
  height: 62px;
  top:0;
  bottom: 0;
  left:0;
  margin: auto ;
  background-image:url(../images/tit02_bg.png);
  background-repeat:no-repeat;
  background-position: center ;
  background-size:cover;
  z-index: -1;
  content: "";
}
.tit02 i{
  margin-right:7px;
}*/
/*左寄せ*/
/*.tit03 {
  position: relative;
  margin-bottom: 18px;
  letter-spacing: 0.15em;
  line-height: 1.4;
  color: #444;
  font-size: 19.5px;
  font-weight: bold;
  text-align: left;
  border-bottom: dotted 1px #ccc;
  padding-bottom: 10px;
}*/
/*左寄せ*/
/*.tit04 {
  position: relative;
  margin-bottom: 12px;
  letter-spacing: 0.1em;
  color: #1F2774;
  font-size: 16px;
  font-weight: bold;
}*/
/*中央寄せ　電球*/
/*.tit05 {
  position: relative;
  padding: 1rem;
  text-align: center;
  border-top: 1px solid #000;
  border-bottom: 3px solid #000;
  background: #fff;
  margin-bottom: 40px;
}
.tit05:before,
.tit05:after {
  position: absolute;
  content: '';
}
.tit05:before {
  top: -40px;
  left: calc(50% - 40px);
  width: 80px;
  height: 80px;
  border: 1px solid #000;
  border-radius: 50%;
  background: #fff;
}
.tit05:after {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
}
.tit05 i {
  font-size: 30px;
  font-size: 1.7rem;
  line-height: 60px;
  position: absolute;
  z-index: 1;
  top: -40px;
  left: calc(50% - 40px);
  width: 80px;
  height: 60px;
  text-align: center;
}
.tit05 span:before {
  top: -100px;
  left: calc(50% - 27px);
  width: 55px;
  height: 32px;
  background: url(../images/radiation.svg) top center no-repeat;
  position: absolute;
  content: '';
}
.tit05 span:last-child {
  font-size: 30px;
  font-weight: 600;
  position: relative;
  z-index: 1;
}*/
/* 青い背景+水玉（左右）+文字左寄せ */
/*.tit06 {
  position: relative;
  margin-bottom: 27px;
  letter-spacing: 0.15em;
  line-height: 1.4;
  color: #00568c;
  font-size: 19px;
  font-weight: bold;
  text-align: left;
  padding: 15px 15px 13px;
  background: #c6e3f1;
}
.tit06::before {
  position: absolute;
  top: -15px;
  left: -8px;
  width: 80px;
  height: 22px;
  background: url(../images/kazari_h_top.png) no-repeat;
  content: "";
  z-index: 1;
}
.tit06::after {
  position: absolute;
  bottom: -13px;
  right: 0;
  width: 80px;
  height: 22px;
  background: url(../images/kazari_h_bottom.png) no-repeat;
  content: "";
  z-index: 1;
}*/
/* 緑背景+左寄せ+右側に画像 */
.tit07 {
  position: relative;
  font-size: 18px;
  font-weight: 600;
  display: block;
  line-height: 1.5;
  margin: 0 0 25px;
  padding: 13px 80px 13px 15px;
  background-color: #daeccc;
  color: #48a565;
  border-radius: 5px;
}

.tit07::before {
  position: absolute;
  width: 73px;
  height: 82px;
  top: -15px;
  right: 3px;
  margin: auto;
  background: url(../images/kazari_dammy01.png);
  background-size: cover;
  z-index: 1;
  content: "";
}

/* 左寄せ+左右に三角 */
.tit08 {
  position: relative;
  margin-bottom: 20px;
  letter-spacing: 0.15em;
  line-height: 1.4;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
  border: 1px #000 solid;
  padding: 0.5em 0.7em;
}

.tit08::before {
  position: absolute;
  width: 55px;
  height: 45px;
  top: -5px;
  left: -5px;
  margin: auto;
  clip-path: polygon(0 0, 0 45%, 100% 0);
  background-color: #fffe00;
  z-index: -1;
  content: "";
}

.tit08::after {
  position: absolute;
  width: 55px;
  height: 45px;
  bottom: -5px;
  right: -5px;
  margin: auto;
  clip-path: polygon(0 100%, 100% 100%, 100% 45%);
  background-color: #fffe00;
  z-index: -1;
  content: "";
}

/* 左寄せ+斜線 */
.tit09 {
  position: relative;
  margin-bottom: 20px;
  letter-spacing: 0.15em;
  line-height: 1.4;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
  background: repeating-linear-gradient(45deg, #fff9e6, #fff9e6 5px, #fbf0d0 5px, #fbf0d0 10px);
  box-shadow: 0px 0px 0px 5px #fbf0d0;
  border: dashed 2px white;
  padding: 0.5em 0.7em 0.4em;
}

.tit09:after {
  position: absolute;
  content: '';
  left: -7px;
  top: -7px;
  border-width: 0 0 15px 15px;
  border-style: solid;
  border-color: #fff #fff #f3dfa4;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}

/* 左側に画像+左寄せ */
.tit10 {
  position: relative;
  margin-bottom: 30px;
  padding: 14px 14px 14px 45px;
  letter-spacing: 0.15em;
  line-height: 1.4;
  color: #1F2774;
  font-size: 22px;
  font-weight: 600;
  text-align: left;
}

.tit10::before {
  position: absolute;
  top: 0.7em;
  left: 0;
  display: block;
  width: 0.5em;
  height: 0.5em;
  background: #ffa3a3;
  box-shadow: 0 0.6em 0 #93e099, 0.6em 0 0 #8adaf9, 0.6em 0.6em 0 #efc378;
  content: "";
}

/* 左側に画像+左寄せ */
.tit11 {
  position: relative;
  margin-bottom: 30px;
  padding: 0 0 0 20px;
  letter-spacing: 0.15em;
  line-height: 1.4;
  color: #1F2774;
  font-size: 22px;
  font-weight: 600;
  text-align: left;
  border-left: 5px solid #82c79a;
}

.tit11::before {
  position: absolute;
  left: -5px;
  bottom: 0;
  content: '';
  width: 5px;
  height: 50%;
  background-color: #39588e;
}

/* 左側に電球+左寄せ */
.tit12 {
  position: relative;
  background: #f4f4f4;
  padding: 7px 5px 7px 70px;
  font-size: 20px;
  color: #474747;
  border-radius: 25px 15px 15px 25px;
  font-weight: 600;
  margin-bottom: 30px;
  line-height: 2;
}

.tit12:before {
  font-family: "Font Awesome 5 Free";
  content: "\f0eb";
  display: inline-block;
  position: absolute;
  padding: 0em;
  color: #fff;
  background: #ff6363;
  font-weight: normal;
  width: 55px;
  text-align: center;
  height: 55px;
  line-height: 55px;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  border-radius: 50%;
  box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.29);
}

/* 左寄せ+右側に背景画像 */
.tit13 {
  display: block;
  margin-bottom: 20px;
  padding: 2px 0 0;
  line-height: 2.6;
  border-top: 3px solid #333;
  border-bottom: 1px dashed #333;
  font-size: 20px;
  font-weight: 600;
  background: url(../images/kazari_dammy01.png) right center no-repeat;
}

/* 左側に●+左寄せ */
.tit14 {
  position: relative;
  margin-bottom: 70px;
  letter-spacing: 0.15em;
  line-height: 1.4;
  color: #0d6fb8;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
  padding-left: 1.5em;
}

.tit14:before {
  font-family: "Font Awesome 5 Free";
  content: "\f111";
  position: absolute;
  font-size: 1em;
  left: 0;
  color: #e69cbd;
}

/* 中央寄せ+上に画像+タイトル+下にサブタイトル */
.tit15 {
  position: relative;
  margin-bottom: 30px;
  padding: 70px 0 15px;
  letter-spacing: 0.15em;
  line-height: 1.2;
  font-weight: bold;
  text-align: center;
  color: #583a21;
  font-size: 30px;
  z-index: 100;
}

.tit15::before {
  position: absolute;
  width: 53px;
  height: 59px;
  top: 0;
  bottom: auto;
  right: 0;
  left: 0;
  margin: auto;
  background-image: url(../images/kazari_dammy01.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  z-index: -1;
  content: "";
}

.tit15 span {
  display: block;
  position: relative;
  letter-spacing: 2.5px;
  z-index: 2;
  font-weight: 500;
  font-style: normal;
  color: #583a21;
  font-size: 17px;
}

/* 左寄せ+左側に●+丸い背景 */
.tit16 {
  color: #505050;
  padding: 0.5em;
  display: inline-block;
  line-height: 1.3;
  background: #dbebf8;
  vertical-align: middle;
  border-radius: 25px 3px 3px 25px;
  font-weight: 600;
  font-size: 20px;
  margin-bottom: 20px;
}

.tit16:before {
  content: '●';
  color: #fff;
  margin-right: 8px;
}

/* 左寄せ+下線 */
.tit17 {
  border-bottom: solid 3px #87ceeb;
  position: relative;
  font-size: 22px;
  font-weight: 600;
  text-align: left;
  margin-bottom: 15px;
}

.tit17:before {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #ffc778;
  bottom: -3px;
  width: 15%;
}

/* 上下線 */
.tit18 {
  padding: 15px 30px;
  border-top: 3px solid #000;
  border-bottom: 3px solid #000;
}

/* 吹き出し+背景色あり */
.tit19 {
  position: relative;
  padding: 15px 30px;
  color: #fff;
  border-radius: 10px;
  background: #1f2774;
}

.tit19:after {
  position: absolute;
  bottom: -9px;
  left: 15px;
  width: 0;
  height: 0;
  content: '';
  border-width: 10px 10px 0 10px;
  border-style: solid;
  border-color: #1f2774 transparent transparent transparent;
}

/* 下線のみの吹き出し */
.tit20 {
  position: relative;
  padding: 15px 30px;
  border-bottom: 3px solid #1f2774;
  font-size: 24px;
}

.tit20:before {
  position: absolute;
  bottom: -14px;
  left: 1em;
  width: 0;
  height: 0;
  content: '';
  border-width: 14px 12px 0 12px;
  border-style: solid;
  border-color: #1f2774 transparent transparent transparent;
}

.tit20:after {
  position: absolute;
  bottom: -10px;
  left: 1em;
  width: 0;
  height: 0;
  content: '';
  border-width: 14px 12px 0 12px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
}

/* ナンバー+タイトル */
.tit21 {
  position: relative;
  overflow: hidden;
  padding: 20px 30px 20px 130px;
  border-top: 3px solid #000;
  font-size: 24px;
}

.tit21:before {
  position: absolute;
  top: -150%;
  left: -100px;
  width: 200px;
  height: 300%;
  content: '';
  -webkit-transform: rotate(25deg);
  transform: rotate(25deg);
  background: #000;
}

.tit21 span {
  font-size: 36px;
  position: absolute;
  z-index: 1;
  top: 8px;
  left: 0;
  display: block;
  padding-top: 3px;
  padding-left: 16px;
  color: #fff;
}

/* 下に小さな下線 */
.tit_box01 {
  position: relative;
  margin-bottom: 30px;
}

.tit_box01 h2 {
  font-size: 30px;
  position: relative;
  text-align: center;
}

.tit_box01 p {
  font-size: 18px;
  text-align: center;
}

.tit_box01:before {
  position: absolute;
  bottom: -10px;
  left: 0;
  right: 0;
  margin: auto;
  width: 60px;
  height: 5px;
  content: '';
  border-radius: 3px;
  background: #fa4141;
}

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

  .list
  共通CSSなので使っていないものも消さずに残してください

==================================================================*/
/*院長略歴*/
.list01 {
  margin: 0 0 15px;
  padding: 0;
  border-width: 0 1px 1px;
}

.list01 dt {
  margin: 0;
  padding: 14px 3px 0px;
}

.list01 dd {
  margin: -38px 0 0;
  padding: 12px 4px 10px 100px;
  border-bottom: 1px dotted #ACACAC;
}

/*院長略歴　年月無し*/
.list02 {
  margin: 0 0 15px;
  border-width: 0 1px 1px;
}

.list02 li {
  margin: 0 0px 0px;
  padding: 6px 4px 6px 0;
  border-bottom: 1px dotted #ddd;
}

/*まる*/
.list03 li {
  position: relative;
  margin-bottom: 10px;
  padding-left: 15px;
}

.list03 li:last-child {
  margin-bottom: 0;
}

.list03 li:before {
  display: block;
  position: absolute;
  top: 10px;
  left: 0;
  width: 3px;
  height: 3px;
  background-color: #E0D0BF;
  border: 1px solid #E0D0BF;
  border-radius: 100%;
  content: '';
}

.list03 li i {
  margin-right: 8px;
}

/*さんかく*/
.list04 li {
  position: relative;
  margin-bottom: 15px;
  padding-left: 22px;
  color: #223a70;
}

.list04 li:before {
  position: absolute;
  top: 0.5em;
  left: 7px;
  width: 0;
  height: 0;
  border: 5px solid transparent;
  border-left: 5px solid #4A577F;
  content: "";
}

/*やじるし*/
.list05 li {
  position: relative;
  margin-bottom: 10px;
  line-height: 1;
  padding-left: 15px;
}

.list05 li:before {
  position: absolute;
  left: 0;
  top: 0.3em;
  height: 5px;
  width: 5px;
  transform: rotate(45deg);
  background-color: transparent;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  content: "";
}

/* まる & 背景 */
.list06 {
  padding: 35px 15px 25px 45px;
  background-color: #f7f7f7;
}

.list06:after {
  display: block;
  clear: both;
  content: "";
}

.list06 li {
  position: relative;
  float: left;
  margin-bottom: 15px;
  padding-left: 0.9em;
  padding-right: 5%;
}

.list06 li:before {
  display: block;
  content: '';
  position: absolute;
  top: 10px;
  left: 0;
  width: 3px;
  height: 3px;
  background-color: #DAC58B;
  border: 1px solid #DAC58B;
  border-radius: 100%;
}

/*まる & 枠 */
.list07 {
  border: 3px solid #eee;
  padding: 30px;
}

.list07 li {
  padding-left: 0.9em;
  margin-bottom: 10px;
  position: relative;
}

.list07 li:last-child {
  margin-bottom: 0;
}

.list07 li:before {
  display: block;
  content: '';
  position: absolute;
  top: 10px;
  left: 0;
  width: 3px;
  height: 3px;
  background-color: #E0D0BF;
  border: 1px solid #E0D0BF;
  border-radius: 100%;
}

.list07 li i {
  margin-right: 8px;
}

/*チェック*/
.list08 {
  margin-bottom: 30px;
  padding: 35px 10px 20px 45px;
  background-color: #f7f7f7;
}

.list08:after {
  display: block;
  clear: both;
  content: "";
}

.list08 li {
  position: relative;
  float: left;
  margin-right: 5%;
  margin-bottom: 20px;
  margin-left: 28px;
  border-bottom: 1px dotted #cdcdcd;
}

.list08 li:before {
  display: block;
  position: absolute;
  top: 3px;
  left: -28px;
  width: 20px;
  height: 20px;
  background-image: url(../images/check.svg);
  background-repeat: no-repeat;
  background-position: left center;
  content: '';
}

.list08-box {
  position: relative;
  margin-bottom: 20px;
  letter-spacing: 0.15em;
  padding: 30px;
  background: #b8bfff;
}

.list08-box .list08 {
  margin-bottom: 0;
  padding: 35px 25px 20px 50px;
  background-color: #fff;
  font-size: 17px;
}

.list08-box .list08 li {
  width: auto;
}

.list08-box::before {
  position: absolute;
  width: 65px;
  height: 50px;
  top: -5px;
  left: -5px;
  margin: auto;
  clip-path: polygon(0 0, 0 85%, 100% 0);
  background-color: #1f2774;
  z-index: 0;
  content: "";
}

.list08-box::after {
  position: absolute;
  width: 65px;
  height: 50px;
  bottom: -5px;
  right: -5px;
  margin: auto;
  clip-path: polygon(0 100%, 100% 100%, 100% 15%);
  background-color: #1f2774;
  z-index: 0;
  content: "";
}

/*チェック 横並び*/
.list08_1 {
  margin-bottom: 30px;
  padding: 35px 10px 20px 45px;
  /*background-color: #f7f7f7;*/
  border: solid 3px #DEDEDE;
}

.list08_1:after {
  display: block;
  clear: both;
  content: "";
}

.list08_1 li {
  position: relative;
  /*float: left;*/
  margin-right: 5%;
  margin-bottom: 20px;
  margin-left: 28px;
  border-bottom: 1px dotted #cdcdcd;
}

.list08_1 li:before {
  display: block;
  position: absolute;
  top: 3px;
  left: -28px;
  width: 20px;
  height: 20px;
  background-image: url("../images/check_orange.svg");
  background-repeat: no-repeat;
  background-position: left center;
  content: '';
}

/*数字＋背景色*/
.list09 {
  padding: 25px;
  background: #f5f5ff;
  counter-reset: section;
}

.list09 li {
  position: relative;
  margin-bottom: 10px;
  padding-left: 5px;
  padding-bottom: 8px;
  line-height: 1.4;
  font-size: 16px;
  border-bottom: #1f2774 1px dashed;
}

.list09 li::before {
  counter-increment: section;
  content: counter(section);
  padding-right: 8px;
  font-size: 17px;
  font-weight: 700;
  color: #1F2774;
}

/*●の数字＋背景色*/
.list10 {
  padding: 25px;
  background: #f5f5ff;
  counter-reset: section;
}

.list10 li {
  position: relative;
  margin-bottom: 10px;
  padding-left: 5px;
  padding-bottom: 8px;
  line-height: 1.4;
  font-size: 16px;
  border-bottom: #1f2774 1px dashed;
}

.list10 li::before {
  display: inline;
  counter-increment: section;
  content: counter(section);
  font-size: 17px;
  font-weight: 700;
  color: #fff;
  background-color: #1F2774;
  border-radius: 20px;
  padding: 5px 11px;
  margin-right: 10px;
}

/*数字の右側に）＋背景色*/
.list11 {
  padding: 25px;
  background: #f5f5ff;
  counter-reset: section;
}

.list11 li {
  position: relative;
  margin-bottom: 10px;
  padding-left: 5px;
  padding-bottom: 8px;
  line-height: 1.4;
  font-size: 16px;
  border-bottom: #1f2774 1px dashed;
}

.list11 li::before {
  display: inline;
  counter-increment: section;
  content: counter(section);
  font-size: 17px;
  font-weight: 700;
  color: #1F2774;
  margin-right: 20px;
}

.list11 li::after {
  position: absolute;
  content: ")";
  color: #1F2774;
  font-size: 17px;
  left: 20px;
}

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

  .btn
  共通CSSなので使っていないものも消さずに残してください

==================================================================*/
/*ボタン ゴースト*/
.btn01 a {
  display: inline-block;
  position: relative;
  padding: 15px 25px;
  line-height: 1;
  border: 1px solid #33409a;
  text-align: center;
  color: #33409a;
  font-weight: bold;
  transition: ease-in-out 0.1s;
}

.btn01 a i {
  margin-right: 10px;
  color: #33409a;
  transition: ease-in-out 0.1s;
}

.btn01 {
  position: relative;
  top: 10px;
  margin-bottom: 10px;
}

.btn01 a:hover {
  background-color: #33409a;
  color: #fff;
}

.btn01 a:hover i {
  color: #fff;
}

/* btn02 */
.btn02 a {
  text-decoration: none;
  display: inline-block;
  color: #fff;
  border-radius: 4px;
  background: #a5cd95;
  box-shadow: 0px 5px 0 #74aa5f;
  padding: 16px;
  transition: 0.2s all ease 0s;
}

.btn02 a:hover {
  transform: translate3d(0, 3px, 0);
  box-shadow: 0px 1px 0 #74aa5f;
}

.btn02 a i {
  margin-right: 7px;
}

.clearfix:after {
  display: block;
  clear: both;
  content: "";
}

/* btn03 */
.btn03 a {
  position: relative;
  display: inline-block;
  padding: 8px 20px;
  border: 1px solid #00408f;
  background: #00408f;
  color: #fff;
  font-weight: bold;
  transition: ease-in-out 0.2s;
  border-radius: 25px;
  overflow: hidden;
}

.btn03 a::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  content: '';
  background: #fff;
  transform-origin: right top;
  transform: scale(0, 1);
  transition: transform .3s;
}

.btn03 a span {
  z-index: 2;
  position: relative;
}

.btn03 a i {
  margin-right: 7px;
}

.clearfix:after {
  display: block;
  clear: both;
  content: "";
}

.btn03 a:hover {
  color: #00408f;
}

.btn03 a:hover::before {
  transform-origin: left top;
  color: #00408f;
  transform: scale(1, 1);
}

/*btn04*/
.btn04 a {
  position: relative;
  display: inline-block;
  padding: 8px 20px;
  color: #fff;
  background: #00408f;
  font-weight: bold;
  transition: ease-in-out 0.2s;
}

.btn04 a i {
  margin-right: 7px;
}

.btn04 a:hover {
  color: #fff;
}

.btn04 a span {
  z-index: 2;
  position: relative;
}

.btn04 a::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  content: '';
  background: #6baaea;
  transform-origin: center center;
  transform: scale(0, 1);
  transition: transform .3s;
}

.btn04 a:hover::before {
  transform: scale(1, 1);
}

/*btn05*/
.btn05 a {
  width: 130px;
  display: inline-block;
  position: relative;
  padding: 9px 0 7px;
  font-family: serif;
  color: #ffffff;
  font-size: 15px;
  font-weight: 400;
  line-height: 25px;
  transition: ease-in-out 0.2s;
}

.btn05 a:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  transition: 0.5s;
  background: -webkit-linear-gradient(0deg, #0068b7 0%, #208ee1 100%);
  background: -moz-linear-gradient(0deg, #0068b7 0%, #208ee1 100%);
  background: -o-linear-gradient(0deg, #0068b7 0%, #208ee1 100%);
  background: linear-gradient(90deg, #0068b7 0%, #208ee1 100%);
}

.btn05 a:after {
  background: -webkit-linear-gradient(0deg, #59b4f9 0%, #94d0fd 100%);
  background: -moz-linear-gradient(0deg, #59b4f9 0%, #94d0fd 100%);
  background: -o-linear-gradient(0deg, #59b4f9 0%, #94d0fd 100%);
  background: linear-gradient(90deg, #59b4f9 0%, #94d0fd 100%);
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
}

.btn05 a:hover:before {
  opacity: 0;
}

.btn05 p {
  z-index: 5;
  position: relative;
  text-align: center;
  margin: 0 !important;
  padding: 0 !important;
}

.btn05 p img {
  position: absolute;
  right: 15px;
  top: 9px;
}

.btn05 a:hover img {
  opacity: 1;
  transform: translateX(0.3em);
  transition: ease-in-out 0.4s;
}

/*btn06*/
.btn06 {
  font-weight: 600;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

.btn06 a i {
  margin-right: 7px;
}

.btn06 a {
  border: 2px solid #000;
  border-radius: 0;
  background: #fff;
  -webkit-box-shadow: 4px 4px 0 #000;
  box-shadow: 4px 4px 0 #000;
  padding: 10px;
}

.btn06 a:hover {
  -webkit-box-shadow: -4px -4px 0 #000;
  box-shadow: -4px -4px 0 #000;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

/*btn07*/
.btn07 a {
  position: relative;
  display: block;
  padding: 0.8em;
  text-align: center;
  border: 1px solid #9C27B0;
  text-decoration: none;
  outline: none;
  transition: all .4s;
  font-weight: 600;
}

.btn07 a i {
  margin-right: 7px;
}

.btn07 a::before,
.btn07 a::after {
  position: absolute;
  top: -1px;
  right: -1px;
  bottom: -1px;
  left: -1px;
  z-index: 2;
  content: '';
  transition: all .4s;
}

.btn07 a::before {
  border-top: 1px solid #FF5722;
  border-bottom: 1px solid #FF5722;
  transform: scale(0, 1);
}

.btn07 a::after {
  border-right: 1px solid #fff;
  border-left: 1px solid #fff;
  transform: scale(1, 0);
}

.btn07 a:hover {
  color: #FF5722;
}

.btn07 a:hover::after,
.btn07 a:hover::before {
  transform: scale(1);
}

.btn01_arrow {
  position: relative;
  left: 0px;
  margin-right: 14px;
  transition: 0.2s ease-in, 0.22s ease-out;
}

.btn01_arrow img {
  opacity: 1 !important;
}

.btn01_arrow,
.btn01_arrow img {
  width: 18px;
  height: 13px;
}

.btn01 a:hover .btn01_arrow {
  left: 4px;
}


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

  $画像寄せ
  共通CSSなので使っていないものも消さずに残してください

==================================================================*/
/* 画像を右寄せ　※画像サイズはhtmlで調整 */
.img_fr {
  display: block;
  position: relative;
  float: right;
  margin-left: 30px;
  margin-bottom: 0 !important;
  text-align: center;
}

.img_fr img {
  border-radius: 3px;
  margin-bottom: 7px;
  max-width: 300px;
  height: auto;
}

/* 画像に対して説明文がある場合は、dlで囲い、dtに画像を、ddにテキストを使う */
.img_fr dd {
  padding-left: 20px;
  line-height: 1.3;
  font-size: 15px;
  font-weight: bold;
  color: #1F2774;
  text-align: left;
}

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

  $アンカーリンンク
  共通CSSなので使っていないものも消さずに残してください

==================================================================*/
/* 2個並び */
.ank02 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.ank02 li {
  width: 48%;
  margin: 0 1% 10px;
  display: flex;
  align-items: center;
  align-content: center;
  justify-content: center;
  position: relative;
  height: 100%;
}

.ank02 li a {
  width: 100%;
  height: 100%;
  padding: 10px 10px 20px;
  border: 1px solid #00408f;
  font-weight: bold;
  font-size: 13px;
  color: #00408f;
  text-align: center;
  vertical-align: middle;
  transition: 0.1s ease-in-out;
}

.ank02 li a:hover {
  background-color: #00408f;
  color: #fff;
}

.ank02 li i {
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 4px;
  margin: auto;
}

/* 3個並び */
.ank03 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.ank03 li {
  width: 30%;
  margin: 0 1% 10px;
  display: flex;
  align-items: center;
  align-content: center;
  justify-content: center;
  position: relative;
  height: 100%;
}

.ank03 li a {
  width: 100%;
  height: 100%;
  padding: 10px 10px 20px;
  border: 1px solid #00408f;
  font-weight: bold;
  font-size: 13px;
  color: #00408f;
  text-align: center;
  vertical-align: middle;
  transition: 0.1s ease-in-out;
}

.ank03 li a:hover {
  background-color: #00408f;
  color: #fff;
}

.ank03 li i {
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 4px;
  margin: auto;
}

/* 4個並び */
.ank04 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.ank04 li {
  width: 23%;
  margin: 0 1% 10px;
  display: flex;
  align-items: center;
  align-content: center;
  justify-content: center;
  position: relative;
  height: 100%;
}

.ank04 li a {
  width: 100%;
  height: 100%;
  padding: 10px 10px 20px;
  border: 1px solid #00408f;
  font-weight: bold;
  font-size: 13px;
  color: #00408f;
  text-align: center;
  vertical-align: middle;
  transition: 0.1s ease-in-out;
}

.ank04 li a:hover {
  background-color: #00408f;
  color: #fff;
}

.ank04 li i {
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 4px;
  margin: auto;
}

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

  .layout
  共通CSSなので使っていないものも消さずに残してください

==================================================================*/
/* --------------layout共通タイトル-------------- */
.layout_tit {
  color: #47762f;
  font-size: 18px;
  font-weight: bold;
  font-family: fot-tsukuardgothic-std, sans-serif;
}

.layout_tit font {
  color: #BDA087;
  font-size: 20px;
}

.layout_tit em {
  margin-right: 10px;
  color: #BDA087;
  font-family: "Times New Roman", Times, serif;
  font-size: 38px;
  font-weight: normal;
}

.layout_tit span {
  margin-right: 10px;
  color: #BDA087;
  font-family: "Times New Roman", Times, serif;
  font-size: 30px;
  font-weight: normal;
}

/* layout小タイトル */
.layout_tit_02 {
  color: #47762f;
  font-size: 18px;
  font-weight: bold;
  font-family: fot-tsukuardgothic-std, sans-serif;
}

/* 1つ並びのレイアウト。画像は無し、左にタイトル、右に文章 */
.layout01 {
  position: relative;
  margin: 0 0 15px;
}

.layout01:before {
  position: absolute;
  top: -3px;
  left: 0;
  width: 100%;
  border-top: 1px solid #ededed;
  content: "";
}

.layout01 dl {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  margin: 5px 0;
}

.layout01 dl:after {
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 100%;
  border-top: 1px solid #f0f0f0;
  content: "";
}

.layout01 dt {
  width: 30%;
  background-color: #f7f7f7;
  letter-spacing: 0.1em;
  color: #1F2774;
  font-weight: bold;
  font-size: 120%;
  text-align: center;
  display: flex;
  justify-content: center;
  align-content: center;
  align-items: center;
  flex-wrap: wrap;
  line-height: 1.5;
}

.layout01 dt em {
  display: block;
  width: 100%;
  line-height: 1;
  font-family: "Times New Roman", Times, serif;
  font-size: 150%;
  font-weight: normal;
  color: #C3AF97;
}

.layout01 dt span {
  font-size: 75%;
}

.layout01 dd {
  width: 70%;
  box-sizing: border-box;
  padding: 3%;
}

/* 2つ並びのレイアウト。最初(dt)にタイトル、画像がその下(dd)、画像の下に文章 */
.layout02 {
  margin: 0 0 15px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.layout02::after {
  display: block;
  clear: both;
  content: "";
}

.layout02 .layout02_box {
  width: 49%;
  margin: 0 2% 0 0;
  margin-bottom: 25px;
  padding: 3% 4%;
  background-color: #f7f7f7;
  box-sizing: border-box;
}

.layout02 .layout02_box:nth-child(even) {
  margin-right: 0;
}

.layout02 .layout02_box .layout02_text {
  margin-bottom: 10px;
  font-weight: bold;
  font-size: 18px;
  line-height: 1.5;
  text-align: center;
  color: #1F2774;
}

.layout02 .layout02_text img {
  width: 100%;
}

/* 1つ並びのレイアウト。画像が左、右にタイトル、タイトル下に文章 */
.layout03 {
  margin: 0 0 15px;
}

.layout03 .layout03_box {
  display: flex;
  margin-bottom: 20px;
  background-color: #e9f8e2cf;
  padding: 2%;
}

.layout03 .layout03_title {
  width: 27%;
  padding: 2%;
  background-color: #fff;
  text-align: center;
  display: flex;
  align-items: center;
  line-height: 1.5;
}

.layout03 .layout03_title img {
  width: 100%;
  height: auto;
}

.layout03 .layout03_text {
  position: relative;
  width: 73%;
  padding: 1% 3%;
}

.balloon {
  position: absolute;
  right: 30px;
  top: 0;
  display: inline-block;
  margin: 1.5em 0 1.5em 15px;
  padding: 10px 15px;
  min-width: 120px;
  max-width: 100%;
  outline: 2px dotted #FFF;
  outline-offset: -5px;
  background: #fabd39;
  color: #fff;
  font-size: 16px;
}

/*.balloon:before {
  content: "";
  position: absolute;
  top: 62%;
  left: -20px;
  margin-top: -15px;
  border: 10px solid transparent;
  border-right-color: #fabd39;
  border-right-style: solid;
  border-right-width: 10px;
}*/

.balloon p {
  margin: 0;
  padding: 0;
}

/* 1つ並びのレイアウト。画像が左、右にタイトル、タイトル下に文章、タイトルと文章のエリア(dd)は背景色が別の色 */
.layout04 {
  margin: 0 0 15px;
}

.layout04 .layout04_box {
  display: flex;
  margin-bottom: 20px;
  background-color: #f7f7f7;
  padding: 2%;
}

.layout04 .layout04_title {
  width: 27%;
  padding-right: 2%;
  display: flex;
  align-items: center;
}

.layout04 .layout04_title img {
  width: 100%;
}

.layout04 .layout04_text {
  width: 73%;
  padding: 3%;
  background-color: #fff;
}

/* 1つ並びで3列に区切られたレイアウト。画像が左、画像の下にタイトル、右に文章 */
.layout05 {
  margin: 0 0 15px;
}

.layout05 .layout05_box {
  display: flex;
  margin-bottom: 20px;
  background-color: #f7f7f7;
  padding: 2%;
}

.layout05 .layout05_title {
  padding: 2%;
  width: 25%;
  background-color: #fff;
  text-align: center;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
}

.layout05 .layout05_title img {
  width: 100%;
  padding-bottom: 10px;
  height: auto;
  display: block;
}

.layout05 .layout05_text1 {
  padding: 1% 3%;
  vertical-align: top;
}

.layout05 .layout05_text1:nth-child(2) {
  width: 40%;
}

.layout05 .layout05_text1:nth-child(3) {
  width: 40%;
  border-left: 1px solid #e2e2e2;
}

.layout05 .layout05_title h4 {
  font-size: 18px;
  font-weight: bold;
}

.layout05 .layout05_text1 h5 {
  font-weight: bold;
  margin: 0 0 5px;
}

.layout05 .layout05_text1 h4 em,
.layout05 .layout05_text1 h5 em {
  margin-right: 10px;
  color: #BDA087;
  font-family: "Times New Roman", Times, serif;
  font-size: 30px;
  font-weight: normal;
}

.layout05_text1 ul {
  margin-bottom: 15px;
}

.layout05 ul.list03 li {
  margin: 0;
}

/* 1つ並びで3列に区切られたレイアウト。左がタイトル、真ん中と右に文章 */
.layout06 {
  margin: 0 0 15px;
}

.layout06 .layout06_box {
  display: flex;
  padding-bottom: 5px;
  position: relative;
}

.layout06 .layout06_box:before {
  position: absolute;
  top: -3px;
  left: 0;
  width: 100%;
  border-top: 1px solid #ededed;
  content: "";
}

.layout06 .layout06_box:last-child:after {
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 100%;
  border-top: 1px solid #f0f0f0;
  content: "";
}

.layout06 .layout06_title {
  width: 30%;
  padding: 0 3%;
  background-color: #f7f7f7;
  vertical-align: middle;
  line-height: 1.5;
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  font-size: 120%;
}

.layout06 .layout06_title h4 {
  letter-spacing: 0.1em;
  color: #1F2774;
  font-weight: bold;
  text-align: center;
}

.layout06 .layout06_box:last-of-type {
  padding: 0;
}

/* 数字 */
.layout06 .layout06_title em {
  display: block;
  width: 100%;
  line-height: 1;
  margin: 0 8px;
  font-family: "Times New Roman", Times, serif;
  font-size: 170%;
  font-weight: normal;
  color: #C3AF97;
}

.layout06 .layout06_text1 {
  padding: 2% 3%;
  vertical-align: top;
}

.layout06 .layout06_text1:nth-child(2) {
  width: 35%;
}

.layout06 .layout06_text1:nth-child(3) {
  width: 35%;
  border-left: 1px solid #e2e2e2;
}

.layout06 .layout06_text1 h5 {
  font-size: 18px;
  font-weight: bold;
  margin: 0 0 5px;
}

/* 3つ並びのレイアウト。 */
.layout07 {
  margin: 0 0 15px;
  display: flex;
  align-content: flex-start;
  flex-wrap: wrap;
}

.layout07::after {
  display: block;
  clear: both;
  content: "";
}

.layout07 .layout07_box {
  width: 32%;
  margin-right: 2%;
  margin-bottom: 2%;
  box-sizing: border-box;
  padding: 3%;
  border-radius: 10px;
  background-color: #f7f7f7;
}

.layout07 .layout07_box:nth-child(3n) {
  margin-right: 0;
}

.layout07 .layout07_box .layout07_title {
  margin-bottom: 7px;
  padding-bottom: 7px;
  border-bottom: 1px dashed #ddd;
  font-size: 17px;
  font-weight: bold;
  text-align: center;
}

.layout07 .layout07_box .layout07_title em {
  margin-right: 8px;
  font-size: 24px;
  font-family: 'Quicksand', sans-serif;
}

.layout07 .layout07_box .layout07_text {
  line-height: 1.5;
}

/* 3つ並びのレイアウト。矢印付き */
.layout08 {
  margin: 0 0 15px;
  display: flex;
  align-content: flex-start;
  flex-wrap: wrap;
}

.layout08 .layout08_box {
  position: relative;
  width: 100%;
  margin-bottom: 25px;
  padding: 3%;
  border-radius: 10px;
  background-color: #f7f7f7;
  box-sizing: border-box;
}

.layout08 .layout08_box:nth-child(3n) {
  margin-right: 0;
}

.layout08 .layout08_box::before {
  position: absolute;
  right: 0px;
  left: 0;
  height: 7px;
  width: 7px;
  transform: rotate(135deg);
  background-color: transparent;
  border-top: 2px solid #1F2774;
  border-right: 2px solid #1F2774;
  content: "";
  bottom: -16px;
  margin: auto;
}

.layout08 .layout08_box:nth-child(3n)::before {
  display: none;
}

.layout08 .layout08_box .layout08_title {
  margin-bottom: 7px;
  padding-bottom: 7px;
  border-bottom: 1px dashed #ddd;
  font-size: 17px;
  font-weight: bold;
  text-align: center;
}

.layout08 .layout08_box .layout08_title em {
  margin-right: 8px;
  font-size: 24px;
  font-family: 'Quicksand', sans-serif;
}

.layout08 .layout08_box .layout08_text {
  line-height: 1.5;
}

/* layout10 */
.layout10 {
  position: relative;
}

.layout10::before {
  width: 1px;
  height: calc(100% - 16%);
  border-right: #71b4d7 dotted 4px;
  position: absolute;
  left: 62px;
  top: 8%;
  z-index: 1;
  content: "";
}

.course_ablation::before {
  height: calc(100% - 8%);
  top: 8%;
}

.layout10 .flow_box {
  display: flex;
  display: -ms-flex;
  padding: 4%;
  background: #fff;
}

.layout10 .flow_box:nth-child(even) {
  background: #dfebf5;
}

.layout10 .flow_box:nth-child(odd) {
  background: #f7f8f9;
}

.layout10 .flow_box .number {
  display: flex;
  display: -ms-flex;
  justify-content: center;
  justify-content: -ms-center;
  align-items: center;
  align-items: -ms-center;
  position: relative;
  z-index: 1;
  width: 60px;
  height: 60px;
  margin-bottom: 0;
  margin-right: 4%;
  background: #1f2774;
  border-radius: 50%;
  line-height: 1;
  color: #fff;
  font-size: 28px;
}

.layout10 .flow_box .layout10_box {
  width: 90%;
}

.layout10 .flow_box .layout10_text .title {
  background: #1f2774;
  margin-top: 24px;
  padding: 12px 18px;
  border-radius: 6px;
  color: #fff;
  line-height: 1;
  font-size: 18px;
  letter-spacing: 0.12em;
}

.layout10 .flow_box .layout10_text .title span {
  position: relative;
}

.layout10 .flow_box .layout10_text .title span::after {
  display: inline-block;
  content: "|";
  margin: 0 12px;
}

.layout10 .flow_box .layout10_text .title2 {
  padding-bottom: 2px;
  padding-top: 16px;
  margin-bottom: 10px;
  font-size: 18px;
  border-bottom: 1px dashed rgba(35, 24, 21, 0.4);
}

.layout10 .flow_box .layout10_text .list03 {
  margin-top: 8px;
}

.layout10 .flow_box .layout10_text .list03 li {
  margin-bottom: 0;
}

.layout10 .flow_box .layout10_text .list03 li::before {
  background-color: #1f2774;
  border: 1px solid #1f2774;
}

.layout10 .flow_box .layout10_text .list_column {
  display: flex;
  display: -ms-flex;
  flex-wrap: wrap;
}

.layout10 .flow_box .layout10_text .list_column li {
  margin-right: 5%;
}

/*注意書き*/
.caution {
  background: #f4f5fb;
  display: block;
  position: relative;
  padding: 25px;
  border-radius: 15px;
}

.caution span {
  width: 55px;
  height: 55px;
  background: #1F2774;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: -15px;
  left: -5px;
  border-radius: 50%;
  font-size: 25px;
  font-weight: 600;
  color: #fff;
  z-index: 2;
}

.caution span::before {
  position: absolute;
  width: 15px;
  height: 20px;
  bottom: -3px;
  right: -3px;
  margin: auto;
  clip-path: polygon(100% 85%, 40% 0, 0 53%);
  background-color: #1F2774;
  z-index: 1;
  content: "";
}

.caution p:nth-of-type(1) {
  font-size: 18px;
  margin: 0 0 15px;
  padding: 0 0 0 40px;
  font-weight: 600;
  color: #1F2774;
}

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

  $table
  共通CSSなので使っていないものも消さずに残してください

==================================================================*/
/* 診療時間（医院案内、アクセス共通） */
.footer_info_sche {
  width: 506px;
  margin-top: 4px;
}

.schedule table {
  width: 100%;
}

.schedule p {
  margin-left: 22px;
  margin-bottom: 2px;
}

.schedule p strong {
  color: #1F2774;
}

.schedule p:last-child {
  margin-bottom: 0;
}

.schedule_note li {
  display: block;
  font-size: 15px;
  font-weight: 700;
  text-align: right;
}

.schedule_note li span {
  color: #ebbc58;
}
.schedule_note li span.green{
 color:#92c975;	
}
.schedule_note li.day_off {
  color: #d29f31;
  font-weight: 700;
}

.schedule_note li.day_off span {
  margin-right: 10px;
  padding: 4px 10px 2px;
  color: #fff;
  font-size: 90%;
  background-color: #d29f31;
  border-radius: 5px;
}

.btn_schedule a{
	display:inline-block;
	padding:20px 0;
}

/*フッターの診療時間*/
.tb01 {
  margin-bottom: 7px;
  border-spacing: 0;
  border-collapse: collapse;
  white-space: nowrap;
  border: 1px solid #92c975;
}

.tb01 tr:nth-of-type(1) th,
.tb01 tr:nth-of-type(1) td {
  color: #fff;
  font-size: 16px;
  background-color: #92c975;
}

.tb01 tr:nth-of-type(n + 2) {
  background-color: #fff;
}

.tb01 tr:nth-of-type(n + 2) th {
  font-size: 15px;
  font-weight: 500;
  border-bottom: 1px solid #92c975;
}

.tb01 tr:nth-of-type(n + 2) td {
  color: #92c975;
  font-size: 18px;
  border-bottom: 1px solid #92c975;
}

.tb01 tr:nth-of-type(n + 2) td .star {
  color: #ebbc58;
}

.tb01 td,
.tb01 th {
  vertical-align: middle;
}

.tb01 th {
  width: 30%;
  height: 46px;
  line-height: 1;
  white-space: nowrap;
  text-align: center;
}

.tb01 td {
  width: 10%;
  text-align: center;
}

/**/
.tb02 {
  width: 100%;
  border-spacing: 0;
  margin-bottom: 12px;
}

.tb02 th {
  font-weight: bold;
  width: 26%;
  border-bottom: 1px solid #e0e0e0;
  padding: 5px 0;
}

.tb02 td {
  text-align: center;
  border-bottom: 1px solid #e0e0e0;
  padding: 5px 0;
}

/*本文中のテーブル*/
.tb03 {
  width: 100%;
  border-spacing: 1px;
  border-collapse: collapse;
  border: solid 1px #7db45f;
}

.tb03 td,
.tb03 th {
  padding: 8px 20px;
  border: 1px solid #7db45f;
}

.tb03 th {
  font-weight: bold;
  color: #fff;
  text-align: center;
  background-color: rgba(125, 180, 95, 0.8);
}

.tb03 th span {
  font-size: 13px;
}

.tb03 td {
  background-color: #ffffff;
  text-align: left;
}

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

  $box
  共通CSSなので使っていないものも消さずに残してください

==================================================================*/
.box1 {
  position: relative;
  width: 1200px;
  margin: 0 auto 100px;
}

.box2 {
  margin-bottom: 100px;
}
.box3{
  position: relative;
  width:100%;
  max-width: 1200px;
  margin: 0 auto 100px;
}
.text {
  position: relative;
  margin-bottom: 50px;
}

.text p {
  margin-bottom: 1em;
}

.tit_text {
  padding: 30px 0;
  margin-bottom: 20px;
}

.box_style01{
  padding: 15px;
  margin-bottom:20px;
  background-color: #f7f7f7;
}

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

  .top_info

==================================================================*/
/* ↓↓↓見た目確認用↓↓↓ */
/*.top_info:not(.top_info2){
  background: #f3f3f3;
}
.top_info:not(.top_info2) .top_info_flex{
  padding: 64px 0;
}*/
/* ↑↑↑見た目確認用↑↑↑ */
/*.top_info_flex{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.top_info_item{
  width: 49%;
}*/
/*-------- お知らせ --------*/
.top_news_headline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}

.top_info .top_news .top_news_flame {
  border: none;
  padding: 0;
  background: #fff;
  padding: 20px 12px;
}

.top_info .top_news .scroll_area {
  height: 285px;
}

.top_info .top_news ul {
  padding-right: 24px;
}

/*-------- 診療時間 --------*/
.top_sche .sub_info_note li {
  color: #1F2774;
  text-align: center;
  padding: 10px 5px;
  border: 1px solid #1F2774;
  margin-bottom: 12px;
}

/* 補足リスト */
.top_sche .sub_info_note li:last-child {
  margin-bottom: 0;
}

.top_info2 .top_sche {
  border-radius: 10px;
  padding: 12px;
  background-color: rgba(192, 171, 154, 0.3);
}

/* 診療科目、お問い合わせリスト */
.top_shce_note {
  margin-top: 10px;
}

.top_shce_note dl {
  display: flex;
  margin-bottom: 12px;
}

.top_shce_note dl:last-child {
  margin-bottom: 0;
}

.top_shce_note dl dt {
  width: 25%;
  text-align: center;
  color: #fff;
  font-weight: 700;
  font-weight: bold;
  padding: 16px 5px;
  background: #C0AB9A;
  border-radius: 10px;
  margin-right: 2%;
}

.top_shce_note dl dd {
  width: 73%;
  display: flex;
  align-items: center;
  padding: 10px;
  background: #fff;
  border-radius: 10px;
}

.top_shce_note dl dd a {
  color: inherit;
}

.top_shce_note dl dd a:hover {
  color: inherit;
}

/*-------- アクセス --------*/
.top_info2 .top_access {
  border-radius: 10px;
  background-color: rgba(192, 171, 154, 0.3);
}

.top_access {
  padding: 12px;
}

.top_access .map {
  position: relative;
}

.top_access .map .btn01 {
  position: absolute;
  top: auto;
  right: 0;
  bottom: 0;
  margin-bottom: 0;
}

.top_access .map img {
  width: 100%;
  /* 下記はサンプル画像が正方形のため調整用に記載しています */
  height: 320px;
  object-fit: cover;
  object-position: center;
}

.top_access p {
  margin-top: 10px;
}

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

  .top_doctor

==================================================================*/
.doctor_flex {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.doctor_flex .text {
  position: relative;
  width: 70%;
}

.top_doctor_img {
  width: 28%;
}

.top_doctor_img p img {
  width: 100%;
  height: auto;
}

.top_doctor_img p {
  color: #1F2774;
  line-height: 1.4;
  font-weight: bold;
}

.top_doctor_img p span {
  font-size: 30px;
}

.top_doctor .btn01 {
  float: right;
  width: 240px;
}

.top_doctor .btn01 a {
  display: block;
}

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

  .top_lp_link

==================================================================*/
.top_lp_link {
  position: relative;
  margin: 60px auto 0px;
}

.top_lp_box {
  display: flex;
  margin-bottom: 20px;
}

.top_lp_link .top_lp_box:nth-of-type(2n) {
  flex-flow: row-reverse;
}

.top_lp_box .top_lp_txt {
  width: 600px;
  position: relative;
}

.top_lp_box .top_lp_txt div {
  width: 580px;
  height: 310px;
  padding: 20px 20px 0 20px;
}

.top_lp_box:nth-of-type(2n) .top_lp_txt {
  background: #688873;
  vertical-align: middle;
  color: #f2f0eb;
}

.top_lp_box:nth-of-type(2n) .top_lp_txt div {
  position: absolute;
  top: 10px;
  left: 10px;
  border: solid 1px #f2f0eb;
  box-sizing: border-box;
}

/*---タイトル---*/
.top_lp_box .top_lp_txt h2 {
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 36px;
  font-weight: bold;
  letter-spacing: 3px;
  line-height: 1;
  margin-bottom: 5px;
}

.top_lp_box:nth-of-type(2n) .top_lp_txt h2 {
  color: #f2f0eb;
}

.top_lp_box:nth-of-type(2n) .top_lp_txt h2::after {
  content: url("../images/nikukyu_green.png");
  vertical-align: middle;
}

.top_lp_box:nth-of-type(2n+1) .top_lp_txt h2 {
  color: #311e10;
}

.top_lp_box:nth-of-type(2n+1) .top_lp_txt h2::after {
  content: url("../images/nikukyu_beige.png");
  vertical-align: middle;
}

/*---テキスト---*/
.top_lp_box .top_lp_txt div .main_txt {
  font-size: 14px;
  line-height: 1.6;
  margin-bottom: 8px;
}

/*---縦書きサブタイトル---*/
.top_lp_box .top_lp_txt h3 {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  position: absolute;
  right: 25px;
  top: 25px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 24px;
  font-weight: bold;
  /*line-height: 2.25;*/
  line-height: 0.65;
  letter-spacing: 0.12em;
  z-index: 999;
  display: inline-grid;
}

.top_lp_box:nth-of-type(1) .top_lp_txt div {
  padding-left: 11px;
}

.top_lp_box:nth-of-type(1) .top_lp_txt h3 {
  top: 20px;
}

.top_lp_box:nth-of-type(1) .top_lp_txt h3 span:nth-of-type(3)::after {
  content: none;
}

.top_lp_box:nth-of-type(2n) .top_lp_txt h3 {
  color: #f2f0eb;
}

.top_lp_box:nth-of-type(2n+1) .top_lp_txt h3 {
  color: #311e10;
}

.top_lp_box:nth-of-type(2n+1) .top_lp_txt h3 span:nth-of-type(1)::after {
  content: '';
  display: inline-block;
  width: 1px;
  height: 200px;
  background-image: url("../images/line_img_beige.png");
  background-size: contain;
  vertical-align: middle;
  margin-right: 11px;
}

.top_lp_box:nth-of-type(2n+1) .top_lp_txt h3 span:nth-of-type(2)::after {
  content: '';
  display: inline-block;
  width: 1px;
  height: 265px;
  background-image: url("../images/line_img_beige.png");
  background-size: contain;
  vertical-align: middle;
  margin-right: 11px;
}

.top_lp_box:nth-of-type(3) .top_lp_txt h3 span:nth-of-type(1)::after,
.top_lp_box:nth-of-type(3) .top_lp_txt h3 span:nth-of-type(2)::after {
  content: '';
  display: inline-block;
  width: 1px;
  height: 190px;
  background-image: url("../images/line_img_beige.png");
  background-size: contain;
  vertical-align: middle;
  margin-right: 11px;
}

.top_lp_box:nth-of-type(3) .top_lp_txt h3 span:nth-of-type(3)::after {
  content: '';
  display: inline-block;
  width: 1px;
  height: 135px;
  background-image: url("../images/line_img_beige.png");
  background-size: contain;
  vertical-align: middle;
  margin-right: 11px;
}

.top_lp_box:nth-of-type(2n) .top_lp_txt h3 span::after {
  content: '';
  display: inline-block;
  width: 1px;
  height: 240px;
  background-image: url("../images/line_img_green.png");
  background-size: contain;
  vertical-align: middle;
  margin-right: 11px;
}

.top_lp_box:nth-of-type(2n) .top_lp_txt h3 span:nth-of-type(2)::after {
  content: '';
  display: inline-block;
  width: 1px;
  height: 160px;
  background-image: url("../images/line_img_green.png");
  background-size: contain;
  vertical-align: middle;
  margin-right: 11px;
}

.top_lp_box:nth-of-type(4) .top_lp_txt h3 span:nth-of-type(3)::after {
  height: 160px;
}

.lp_link_dentisty .top_lp_box .top_lp_txt h3 span:nth-of-type(1)::after,
.top_lp_box:nth-of-type(5) .top_lp_txt h3 span:nth-of-type(1)::after {
  height: 224px;
}

.lp_link_dentisty .top_lp_box .top_lp_txt h3 span:nth-of-type(2)::after,
.top_lp_box:nth-of-type(5) .top_lp_txt h3 span:nth-of-type(2)::after {
  height: 190px;
}

.lp_link_dentisty .top_lp_box .top_lp_txt h3 span:nth-of-type(3)::after,
.top_lp_box:nth-of-type(5) .top_lp_txt h3 span:nth-of-type(3)::after {
  content: '';
  display: inline-block;
  width: 1px;
  height: 135px;
  background-image: url("../images/line_img_beige.png");
  background-size: contain;
  vertical-align: middle;
  margin-right: 11px;
}

.lp_link_dentisty .top_lp_box .top_lp_txt div {
  padding-left: 20px;
}

/*---ベージュグラデ背景---*/
.top_lp_box:nth-of-type(2n+1) .top_lp_txt {
  background-image: url("../images/top_lp_box_bg.png");
  background-size: cover;
}

/*---ベージュグラデ　線---*/
.top_lp_box:nth-of-type(2n+1) .top_lp_txt div {
  position: absolute;
  top: 10px;
  left: 10px;
  border: solid 1px #b8aa87;
  box-sizing: border-box;
}

/*---バナー---*/
.top_lp_box .top_lp_txt .top_lp_bnr {
  margin-left: 40px;
  display: inline-block;
  z-index: 2;
  position: relative;
}

.top_lp_box .top_lp_txt .top_lp_bnr :hover {
  transform: translate(0, -3px);
  transition: .3s;
  opacity: 0.8;
}

.top_lp_box .top_lp_txt .top_lp_bnr img {
  height: 88px;
  margin: 0;
  position: relative;
  z-index: 1;
}

.top_lp_bnr02 {
  width: 450px;
  margin: 0 auto;
}

.top_lp_bnr02 :hover {
  transform: translate(0, -3px);
  transition: .3s;
  opacity: 0.8;
}

.top_lp_bnr02 img {
  width: 100%;
}

/*---透過英語---*/
.top_lp_box .top_lp_txt .bg_txt {
  position: absolute;
  bottom: -22px;
  right: 0;
  margin-bottom: 0;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 50px;
  font-weight: bold;
  letter-spacing: 0.22em;
}

.top_lp_box:nth-of-type(2n+1) .top_lp_txt .bg_txt {
  color: rgba(178, 171, 153, 0.63);
}

.top_lp_box:nth-of-type(2n) .top_lp_txt .bg_txt {
  color: rgba(157, 176, 163, 0.63);
}

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

  .top_medical

==================================================================*/
.top_medical .text p {
  text-align: center;
}

.top_medical_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.top_medical_list a {
  display: block;
  width: 22%;
  margin-bottom: 20px;
  text-align: center;
}

.top_medical_list a img {
  width: 100%;
  height: auto;
}

.top_medical_list dl {
  width: 100%;
}

.top_medical_list dl dt {
  margin-bottom: 7px;
}

.top_medical_list dl dd {
  font-weight: bold;
}

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

  .top_medical2

==================================================================*/
.top_medical2 .text p {
  text-align: center;
}

.top_medical2_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.top_medical2_list a {
  display: block;
  width: 120px;
  margin-right: 17.14px;
  margin-bottom: 20px;
  text-align: center;
}

.top_medical2_list a:last-child {
  margin-right: 0;
}

.top_medical2_list dl {
  width: 100%;
}

.top_medical2_list dl dt {
  margin-bottom: 7px;
}

.top_medical2_list img {
  width: 100%;
  height: auto;
}

.top_medical2_list dl dd {
  font-weight: bold;
}

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

  .top_medical3

==================================================================*/
.top_medical3 .text p {
  text-align: center;
}

.top_medical3_list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.top_medical3_list li {
  width: 120px;
  margin-right: 17.14px;
  margin-bottom: 20px;
  text-align: center;
}

.top_medical3_list li:last-child {
  margin-right: 0;
}

.top_medical3_list img {
  width: 100%;
  height: auto;
}

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

  .top_medical4

==================================================================*/
.top_medical4 {
  padding-top: 80px;
}

.top_medical4_list {
  width: 980px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.top_medical4_list dl {
  position: relative;
  width: 270px;
  text-align: center;
  margin-bottom: 30px;
}

.top_medical4_list a {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}

.top_medical4_list dt img {
  width: 100%;
  height: auto;
  border-radius: 100%;
}

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

  $doctor

==================================================================*/
.doctor_carr {
  display: flex;
  flex-wrap: wrap;
}

.doctor_carr h4.tit01 {
  margin-bottom: 7px;
}

.doctor_carr_sec1 {
  width: 40%;
  margin-right: 20px;
  padding: 20px 30px;
  background-color: #f7f7f7;
  font-size: 14px;
}

.doctor_carr_sec1:last-child {
  margin-right: 0;
}

.doctor_carr .tb02 td,
.doctor_carr .tb02 th {
  font-size: 14px;
}

.doctor_carr_sec1 table {
  width: 100%;
}

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

  .news

==================================================================*/
.top_news {
  font-size: 14px;
}

.top_news_flame {
  padding: 35px 33px;
  border: 15px solid #F0F0F0;
}

.news_text p {
  margin-bottom: 10px;
}

/* タイトル */
.news_text p strong {
  margin-left: 20px;
  font-size: 17.5px;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #1F2774;
}

/* 日付 */
.news_text .date {
  margin-right: 10px;
  color: #C0AB92;
}

/* お知らせのブロックのボーダー */
.news_text .line {
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #eee;
}

/* お知らせの高さ */
.scroll_area {
  height: 200px;
  overflow-y: scroll;
}

/*スクロールバーの横幅指定*/
.scroll_area::-webkit-scrollbar {
  width: 5px;
}

/*スクロールバーの背景色・角丸指定*/
.scroll_area::-webkit-scrollbar-track {
  border-radius: 10px;
  background: #fff;
}

/*スクロールバーの色・角丸指定*/
.scroll_area::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background: #ccc;
}

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

  $access

==================================================================*/
.access_guide {
  margin-bottom: 20px;
  font-weight: bold;
}

.access_map {
  margin-bottom: 40px;
}

.access_map dt {
  margin-bottom: 10px;
}

.access_map dt i {
  margin-right: 7px;
}

.access .btn02 {
  text-align: center;
  margin-bottom: 50px;
}

.access_info {
  border: 4px solid #ededed;
  padding: 25px 30px 5px;
}

.access_info dt i {
  margin-right: 7px;
}

.access_train,
.access_bus,
.access_car,
.access_bike {
  margin-bottom: 25px;
}

.access_train dt,
.access_bus dt,
.access_car dt,
.access_bike dt {
  padding-left: 0;
  margin-bottom: 5px;
  font-size: 17px;
  font-weight: bold;
}

.access_train dd,
.access_bus dd,
.access_car dd,
.access_bike dd {
  font-size: 14px;
}

/* ルート */
.access_list {
  display: flex;
  display: -ms-flex;
  justify-content: space-between;
  justify-content: -ms-space-between;
  flex-wrap: wrap;
  flex-wrap: -ms-wrap;
  counter-reset: section;
}

.access_list dl {
  width: 32%;
  margin-bottom: 30px;
}

.access_list dl.last {
  margin-right: 30%;
}

.access_list dt {
  width: 100%;
  height: auto;
}

.access_list dt img {
  width: 100%;
}

.access_list dl dd {
  width: 94%;
  margin-top: 20px;
  font-size: 14px;
  line-height: 1.9;
  padding-left: 2.5em;
  text-indent: -2.7em;
  letter-spacing: 0.1em;
}

.access_list dl dd::before {
  counter-increment: section;
  content: counter(section);
  font-size: 18px;
  color: #fff;
  margin-right: 8px;
  padding: 7px 10px;
  line-height: 1;
  background: #1F2774;
  border-radius: 3px;
}

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

  $clinic

==================================================================*/
/* 院内スライド サムネイル下 */
.clinic_slide_wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  /* height: 820px; */
}

.clinic_slide_wrap :focus {
  outline: none;
}

.clinic_slide_wrap #slider {
  width: 100%;
  max-height: 533px;
}

.clinic_slide_wrap .slide-item {
  position: relative;
}

.clinic_slide_wrap .slide-item img {
  width: 100%;
  height: auto;
}

.clinic_slide_wrap .thumbnail-text-item {
  margin: 0 0 15px;
}

.clinic_slide_wrap #thumbnail-list {
  width: 100%;
  margin: 0 auto;
  display: flex;
  /*justify-content: space-between;*/
  gap: 0px 10px;
  flex-wrap: wrap;
}

.clinic_slide_wrap .thumbnail-item {
  flex: 0 1 15%;
  margin-bottom: 10px;
  box-sizing: border-box;
  position: relative;
  cursor: pointer;
  transition: .3s;
}

.clinic_slide_wrap .thumbnail-item:hover {
  opacity: 0.8;
}

.clinic_slide_wrap .thumbnail-item:after {
  content: '';
  background-color: rgba(0, 0, 0, 0.4);
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 1;
  transition: .3s opacity linear;
}

.clinic_slide_wrap .thumbnail-item.thumbnail-current:after {
  opacity: 0;
}

.clinic_slide_wrap .thumbnail-item img {
  width: 100%;
  height: auto;
  margin: 0 auto;
}

.clinic_slide_wrap .slide_text {
  position: absolute;
  bottom: 10px;
  left: 10px;
  background: rgba(255, 255, 255, 0.8);
  padding: 10px;
  font-weight: bold;
}

/*院内スライド サムネイル横*/
.clinic_slide_wrap2 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  /* height: 560px; */
}

.clinic_slide_wrap_flex {
  display: flex;
  flex-wrap: wrap;
}

.clinic_slide_wrap_flex :focus {
  outline: none;
}

.clinic_slide_wrap_flex #slider {
  margin: 0 auto 15px 0;
  width: 83%;
}

.clinic_slide_wrap_flex #thumbnail-list {
  width: 15%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  height: min-content;
}

.clinic_slide_wrap_flex .thumbnail-text-item {
  margin: 0 0 15px;
}

.clinic_slide_wrap_flex .thumbnail-item {
  width: 48%;
  margin-bottom: 10px;
  box-sizing: border-box;
  position: relative;
  cursor: pointer;
  transition: .3s;
}

.clinic_slide_wrap_flex .thumbnail-item:hover {
  opacity: 0.8;
}

.clinic_slide_wrap_flex .thumbnail-item:after {
  content: '';
  background-color: rgba(0, 0, 0, 0.4);
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 1;
  transition: .3s opacity linear;
}

.clinic_slide_wrap_flex .thumbnail-item.thumbnail-current:after {
  opacity: 0;
}

.clinic_slide_wrap_flex .thumbnail-item img {
  width: 100%;
  height: auto;
  margin: 0 auto;
}

.clinic_slide_wrap_flex .slide-item {
  position: relative;
}

.clinic_slide_wrap_flex .slide-item img {
  width: 100%;
  height: auto;
}

.clinic_slide_wrap_flex .slide_text {
  position: absolute;
  bottom: 10px;
  left: 10px;
  background: rgba(255, 255, 255, 0.8);
  padding: 10px;
  font-weight: bold;
}

/* 医院概要 */
.clinic_sec1 {
  position: relative;
  font-size: 14px;
}

.clinic_sec1 ul {
  margin-bottom: 15px;
}

.clinic_sec1 li {
  padding: 8px 0;
  border-bottom: 1px solid #E5E6EF;
}

.clinic_sec1 li:first-child {
  padding: 0 0 8px 0;
}

.clinic_sec1 li:last-child {
  border: none;
}

.clinic_sec1 dl:after {
  display: block;
  clear: both;
  content: "";
}

.clinic_sec1 dt {
  float: left;
  box-sizing: border-box;
  width: 25%;
  padding-left: 2px;
  font-size: 20px;
  font-weight: bold;
  color: #666666;
}

.clinic_sec1 dd {
  float: left;
  width: 75%;
}

.clinic_sec1 dd a,
.clinic_sec1 dd a:hover {
  color: inherit;
}

.clinic_sec1 .schedule .tb01 {
  /*border: 1px solid #e4e4e4;*/
  width: 100%;
  font-size: 14px;
}

.clinic_sec1 .schedule .tb01 tr:first-child th,
.clinic_sec1 .schedule .tb01 tr:first-child td {
  background-color: #92c975;
  color: #fff;
  font-weight: bold;
}

.clinic_sec1 .schedule li {
  border-bottom: none;
}

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

  $facilities

==================================================================*/
/* 機器紹介1 */
.facilities_equip dl {
  float: left;
  width: 42.3%;
  min-height: 280px;
  margin-bottom: 30px;
  margin-left: 3.4%;
  padding: 3%;
  border-top: 4px solid #9397BE;
  background-color: #f7f7f7;
  text-align: justify;
  font-size: 14px;
}

.facilities_equip dl:nth-child(odd) {
  margin-left: 0;
}

/* 機器紹介名前 */
.facilities_equip dt {
  margin-bottom: 14px;
  padding-bottom: 10px;
  line-height: 1.7;
  font-size: 17px;
  font-weight: bold;
  text-align: left;
}

.facilities_equip dt span {
  display: block;
  font-size: 15px;
}

.facilities_equip_img {
  margin: 0 0 20px;
}

.facilities_equip_img img {
  width: 100%;
  height: auto;
}

/* 機器紹介2 */
.facilities_equip2 {
  display: flex;
  flex-wrap: wrap;
}

.facilities_equip2 dl {
  width: 31%;
  margin-bottom: 30px;
  margin-right: 3.5%;
  background-color: #f7f7f7;
  text-align: justify;
  font-size: 14px;
}

.facilities_equip2 dl:nth-child(3n) {
  margin-right: 0;
}

/* 機器紹介名前 */
.facilities_equip2 dt img {
  width: 100%;
  height: auto;
}

.facilities_equip2 dd {
  padding: 10px 15px 18px;
  line-height: 1.35;
}

.facilities_equip2 dd .title {
  text-align: center;
  font-size: 17px;
  font-weight: bold;
}

.facilities_equip2 dd p {
  margin-top: 7px;
}

/* 機器紹介3 */
.facilities_equip3 {
  display: flex;
  flex-wrap: wrap;
}

.facilities_equip3 dl {
  width: 47.5%;
  margin-bottom: 35px;
  margin-right: 5%;
  background-color: #f7f7f7;
  text-align: justify;
  font-size: 14px;
}

.facilities_equip3 dl:nth-child(even) {
  margin-right: 0;
}

/* 機器紹介名前 */
.facilities_equip3 dt img {
  width: 100%;
  height: auto;
}

.facilities_equip3 dd {
  padding: 10px 15px 18px;
  line-height: 1.35;
}

.facilities_equip3 dd .title {
  text-align: center;
  font-size: 17px;
  font-weight: bold;
}

.facilities_equip3 dd p {
  margin-top: 7px;
}

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

  $care_salon

==================================================================*/
#care_salon03 .tit02 span {
  font-size: 18px;
  padding-left: 1em;
}

#care_salon05 h3.tit03,
#care_salon07 h3.tit03 {
  margin: 20px 0;
}

#care_salon05 h3.tit03:not(:first-of-type) {
  margin-top: 50px;
}

#care_salon05 .list07 a {
  color: #72ae53;
  transition: 0.3s;
}

#care_salon05 .list07 a:hover {
  color: #edb377;
  transition: 0.3s;
}

.marker {
  background: linear-gradient(transparent 60%, #F8E0C8 60%);
}

.layout02.care_salon_facilities h3 {
  position: relative;
  margin: 0 0 15px;
  padding-left: 43px;
  color: #666666;
  font-size: 20px;
  font-weight: 700;
  font-family: fot-tsukuardgothic-std, sans-serif;
  line-height: 1.4;
  letter-spacing: 1px;
}

.layout02.care_salon_facilities h3::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  height: 40px;
  background-image: url(../images/title_deco_02.svg);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 0;
}

.layout02.care_salon_facilities .layout02_text {
  margin-bottom: 10px;
  /*font-weight: bold;*/
  font-size: 16px;
  line-height: 1.5;
  text-align: left;
  color: #666666;
}

.layout02.care_salon_facilities .layout02_text .list03 {
  margin-top: 2rem;
}

.care_salon_point .point_cont {
  position: relative;
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 40px;
  padding: 30px 40px;
  background-color: rgba(237, 179, 119, 0.1);
  border: 10px solid #edb377;
  border-radius: 20px;
}

.care_salon_point .point_cont:nth-child(odd) {
  flex-direction: row-reverse;
}

.care_salon_point .point_cont .text_cont {
  width: 58%;
}

.care_salon_point .point_cont .text_cont .title_head {
  background-image: url("../images/nikukyu_icon.svg");
  background-repeat: no-repeat;
  background-position: 90px 0;
}

.care_salon_point .point_cont .text_cont .title_head .step {
  color: #edb377;
  font-size: 20px;
}

.care_salon_point .point_cont .text_cont .title_head .num {
  margin-right: 10px;
  font-size: 38px;
}

.care_salon_point .point_cont .text_cont h3 {
  position: relative;
  display: inline-block;
  margin-bottom: 40px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0;
  letter-spacing: -1px;
}

.care_salon_point .point_cont .text_cont h3.fz_22 {
  font-size: 20px;
}

.care_salon_point .point_cont .text_cont h3::after {
  content: "";
  position: absolute;
  bottom: -12px;
  left: 50%;
  transform: translateX(-50%);
  width: 90%;
  height: 10px;
  background-color: rgba(0, 0, 0, 0.2);
  border-radius: 100%;
}

.care_salon_point .point_cont .img_cont {
  width: 38%;
}

.care_salon_point .point_cont .img_cont video {
  margin: 43px 0;
  display: block;
  width: 100%;
}

.care_salon_point .point_cont .img_cont .img_link_cont {
  display: block;
  width: 100%;
  height: 300px;
  transition: .3s;
}

.care_salon_point .point_cont .img_cont .img_link_cont:hover {
  transform: translateY(-5px);
}

.care_salon_point .point_cont .img_cont .img_link_cont img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  object-position: 0 0;
}

.care_salon_point .point_cont .img_cont p {
  margin: 20px 0 0;
  font-weight: 700;
  text-align: center;
}

.line_bnr {
  position: absolute;
  right: 0;
  top: -150px;
}

.line_bnr img {
  max-width: 300px;
  width: 100%;
  transition: opacity 0.3s;
}

.line_bnr img:hover {
  opacity: 0.8;
}

#care_salon06 .tit02,
#care_salon03 .tit02 {
  display: flex;
}

#care_salon06 .tit02 span:first-of-type {}

#care_salon06 .tit02 span:last-of-type {
  padding-left: 1.5em;
  font-size: 0.6em;
}

#care_salon06 .list06 li.list_none {
  padding-left: 0;
}

#care_salon06 .list06 li.list_none::before {
  content: none;
}

img.tansan_img {
  margin-top: 10px;
}

.care_course {
  background-color: #fdf9f4;
  padding: 30px;
}

.care_img_flex {
  display: flex;
  margin: 0 auto;
  gap: 30px;
  text-align: center;
}

.care_img_flex p {
  width: 40%;
  margin: 0 auto;
}

.insta_box {
  background-color: #fdf9f4;
  border-radius: 20px;
  padding: 30px;
}

.insta_box p {
  font-size: 24px;
  font-weight: 700;
  font-family: fot-tsukuardgothic-std, sans-serif;
  color: #ee8518;
  text-align: center;
}

.care_img_flex02 {
  display: flex;
  justify-content: center;
  gap: 50px;
  margin: 33px auto;
}

.insta_btn {
  text-align: center;
}

.insta_btn a {
  position: relative;
  display: inline-block;
  padding: 8px 20px;
  border: 1px solid #92c975;
  background: #92c975;
  color: #fff;
  font-weight: bold;
  border-radius: 25px;
  transition: 0.4s;
}

.insta_btn a:hover {
  background: #fff;
  color: #92c975;
}

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

  $health_check

==================================================================*/
.attention {
  color: #666666;
  font-weight: bold;
  text-align: center;
  background: #e3f1d7;
  padding: 30px;
  border-radius: 10px;
}

.attention p {
  font-size: 20px;
}

.attention mark {
  background: linear-gradient(transparent 60%, #fff 60%);
  color: inherit;
}

.attention.beige {
  background: #f8edde;
  font-weight: normal;
}

.attention.beige h3 {
  position: relative;
  display: table;
  margin: 0 auto;
  padding: 0 10px 60px;
  color: #666666;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 26px;
  font-weight: 500;
  text-align: center;
  line-height: 1.6;
  letter-spacing: 3px;
  z-index: 10;
  background-image: url(../images/top_title_deco_icon.png);
  background-position: center 50px;
  background-repeat: no-repeat;
}

.attention.beige strong {
  font-size: 21px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: normal;
}

.attention.beige span {
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 60%, rgba(243, 202, 160, 0.9) 60%, rgba(243, 202, 160, 0.9) 90%, rgba(255, 255, 255, 0) 90%);
  font-weight: bold;
}

.attention.beige ul.list06 {
  font-size: 18px;
  text-align: left;
}

.attention.beige ul.list06 span {
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 60%, rgba(243, 202, 160, 0.5) 60%, rgba(243, 202, 160, 0.5) 90%, rgba(255, 255, 255, 0) 90%);
}

.attention.beige .health_img_flex {
  display: flex;
  justify-content: center;
  gap: 55px;
  padding: 20px;
}

.attention.beige .health_img_flex img {
  max-width: 350px;
  margin: 20px 0 30px;
}

.layout03.healthcheck .layout03_box {
  border: 10px solid rgba(125, 180, 95, 0.8);
  border-radius: 20px;
}

.layout03.healthcheck .layout03_text {
  width: 100%;
}

.layout03.healthcheck .layout03_text .balloon {
  margin-top: 1em;
}

/* 吹き出し本体 */
.balloon02 {
  position: relative;
  padding: 4% 5%;
  background-color: #e0edff;
  border-radius: 10px;
  opacity: 0.8;
}

/* 色付きの半円 */
.balloon02::before {
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-radius: 50%;
  transform: rotate(45deg);
  left: 20px;
  top: -15px;
  border-left: 20px solid #e0edff;
  border-top: 20px solid #e0edff;
  border-right: 20px solid transparent;
  border-bottom: 20px solid transparent;
  opacity: 0.8;
}

/* 白い半円 */
.balloon02::after {
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-radius: 50%;
  transform: rotate(45deg);
  left: 35px;
  top: -20px;
  border-left: 20px solid #ffffff;
  border-top: 20px solid #ffffff;
  border-right: 20px solid transparent;
  border-bottom: 20px solid transparent;
}

.clinic .care_salon_facilities .layout02_text {
  font-weight: normal;
  color: #333333;
}

.clinic .care_salon_facilities .layout02_text p {
  margin-bottom: 0;
}


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

  $qa

==================================================================*/
.qa1 dl {
  margin-bottom: 25px;
  padding-bottom: 25px;
  border-bottom: 1px dotted #c1c1c1;
}

.qa1 dl dt {
  position: relative;
  margin-bottom: 15px;
  padding-left: 40px;
  font-weight: bold;
}

.qa1 dl dt:before {
  position: absolute;
  top: -5px;
  left: 0;
  margin-right: 7px;
  line-height: 1;
  font-family: "Times New Roman", Times, serif;
  font-weight: normal;
  font-size: 28px;
  color: #72ae53;
  content: "Q.";
}

.qa1 dl dd {
  position: relative;
  padding-left: 40px;
}

.qa1 dl dd:before {
  position: absolute;
  top: -5px;
  left: 0;
  margin-right: 7px;
  line-height: 1;
  font-family: "Times New Roman", Times, serif;
  font-weight: normal;
  font-size: 28px;
  color: #666666;
  content: "A.";
}

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

  schedule（MPCLOUD）

============================================================================*/
#mpcloud_schedule {
  width: 220px;
  position: fixed;
  bottom: 15px;
  right: 72px;
  border-radius: 15px;
  background-color: rgba(255, 255, 255, 0.9);
  z-index: 2001;
  font-size: 14px;
  letter-spacing: 0.08em;
}

#mpcloud_schedule section {
  box-shadow: 0 8px 22px 8px rgba(0, 0, 0, 0.1);
}

.shcedule_title {
  font-size: 16px;
  font-weight: 600;
  border-bottom: 2px solid #aaa;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  padding: 10px 0;
  text-align: center;
}

.shcedule_title i {
  position: relative;
  top: -2px;
  right: -25px;
  font-style: normal;
  font-size: 12px;
  cursor: pointer;
}

.schedule_time {
  margin: 8px 0 0 0;
}

.schedule_time dt {
  font-weight: bold;
}

.shcedule_box dt {
  background: #eee;
  text-align: center;
}

.shcedule_box dd {
  height: auto;
  vertical-align: top;
}

.shcedule_box dd i {
  display: inline-block;
  width: 17px;
  height: 17px;
  /*background: url("../images/schedule.svg") no-repeat center left;*/
  background-size: 17px 17px;
  padding: 2px 0 2px 22px;
  margin-left: 15px;
  vertical-align: inherit;
}

.shcedule_today {
  padding: 10px 16px;
}

.schedule_comment {
  border-top: 1px solid #d6d6d6;
  padding: 8px 12px;
  font-size: 14px;
}

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

  .breadcrumb（ぱんくず）

==================================================================*/
.breadcrumbs {
  position: relative;
  width: 1200px;
  margin: 0 auto;
  margin: 0 auto 30px;
  font-size: 14px;
  z-index: 998;
}

.breadcrumbs:last-child {
  margin: 0 auto;
}

.breadcrumbs i {
  /*margin-left: 35px;*/
  margin-right: 5px;
}

.breadcrumbs a:hover {
  text-decoration: underline;
}

.breadcrumbs li {
  float: left;
  margin-right: 5px;
}

.breadcrumbs li:after {
  font-family: FontAwesome;
  content: ">";
  padding-left: 10px;
}

.breadcrumbs li:last-child:after {
  content: "";
}

.breadcrumbs li:last-child a {
  color: #d04634 !important;
}

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

  .404_p

==================================================================*/
.none_page_p {
  text-align: center;
  font-size: 26px;
  padding-top: 100px;
}

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

  .loop_slide

==================================================================*/
.loop_slide_wrap {
  margin: 0 auto 100px;
}

.loop_slide_wrap .slick-slider div {
  transition: none;
}

.loop_slide_wrap .slick-list {
  overflow: hidden !important;
}

.loop_slide_wrap .slick-initialized .slick-slide {
  height: auto;
}

.loop_slide_wrap .slick-initialized .slick-slide img {
  width: 400px;
  height: auto;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

.loop_slide_wrap .slick-initialized .slick-slide:focus {
  outline: none;
}

/*common*/
.pc_inline {
  display: inline !important;
}

.sp_inline {
  display: none !important;
}

.sp_inline_ip {
  display: none !important;
}

.pc_table {
  display: none !important;
}

.sp_table {
  display: none !important;
}

address,
body,
dd,
dl,
dt,
form,
h1,
h2,
h3,
h4,
h5,
h6,
option,
p,
pre,
select {
  margin: 0;
  padding: 0;
  -webkit-text-size-adjust: 100%;
}

img {
  vertical-align: bottom;
}

iframe {
  vertical-align: middle;
}

li,
ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

a img {
  border: none;
}

.w010par {
  width: 10%;
}

.w020par {
  width: 20%;
}

.w025par {
  width: 25%;
}

.w050par {
  width: 50%;
}

.w075par {
  width: 75%;
}

.w100par {
  width: 100%;
}

.w010 {
  width: 10px;
}

.w020 {
  width: 20px;
}

.w030 {
  width: 30px;
}

.w040 {
  width: 40px;
}

.w050 {
  width: 50px;
}

.w060 {
  width: 60px;
}

.w070 {
  width: 70px;
}

.w080 {
  width: 80px;
}

.w090 {
  width: 90px;
}

.w100 {
  width: 100px;
}

.w110 {
  width: 110px;
}

.w120 {
  width: 120px;
}

.w130 {
  width: 130px;
}

.w140 {
  width: 140px;
}

.w150 {
  width: 150px;
}

.w160 {
  width: 160px;
}

.w170 {
  width: 170px;
}

.w180 {
  width: 180px;
}

.w190 {
  width: 190px;
}

.w200 {
  width: 200px;
}

.w210 {
  width: 210px;
}

.w220 {
  width: 220px;
}

.w230 {
  width: 230px;
}

.w240 {
  width: 240px;
}

.w250 {
  width: 250px;
}

.w255 {
  width: 255px;
}

.w260 {
  width: 260px;
}

.w270 {
  width: 270px;
}

.w280 {
  width: 280px;
}

.w290 {
  width: 290px;
}

.w300 {
  width: 300px;
}

.w305 {
  width: 305px;
}

.w310 {
  width: 310px;
}

.w320 {
  width: 320px;
}

.w330 {
  width: 330px;
}

.w340 {
  width: 340px;
}

.w350 {
  width: 350px;
}

.w360 {
  width: 360px;
}

.w365 {
  width: 365px;
}

.w370 {
  width: 370px;
}

.w380 {
  width: 380px;
}

.w390 {
  width: 390px;
}

.w400 {
  width: 400px;
}

.w410 {
  width: 400px;
}

.w415 {
  width: 415px;
}

.w420 {
  width: 420px;
}

.w430 {
  width: 430px;
}

.w435 {
  width: 435px;
}

.w440 {
  width: 440px;
}

.w450 {
  width: 450px;
}

.w460 {
  width: 460px;
}

.w470 {
  width: 470px;
}

.w480 {
  width: 480px;
}

.w490 {
  width: 490px;
}

.w500 {
  width: 500px;
}

.w510 {
  width: 510px;
}

.w520 {
  width: 520px;
}

.w530 {
  width: 530px;
}

.w540 {
  width: 540px;
}

.w550 {
  width: 550px;
}

.w560 {
  width: 560px;
}

.w570 {
  width: 570px;
}

.w580 {
  width: 580px;
}

.w590 {
  width: 590px;
}

.w600 {
  width: 600px;
}

.w610 {
  width: 610px;
}

.w620 {
  width: 620px;
}

.w630 {
  width: 630px;
}

.w640 {
  width: 640px;
}

.w650 {
  width: 650px;
}

.w660 {
  width: 660px;
}

.w670 {
  width: 670px;
}

.w680 {
  width: 680px;
}

.w690 {
  width: 690px;
}

.w700 {
  width: 700px;
}

.w710 {
  width: 710px;
}

.w720 {
  width: 720px;
}

.w730 {
  width: 730px;
}

.w740 {
  width: 740px;
}

.w750 {
  width: 750px;
}

.w760 {
  width: 760px;
}

.w765 {
  width: 765px;
}

.w960 {
  width: 960px;
}

.w980 {
  width: 980px;
}

.h030 {
  height: 30px;
}

.h180 {
  height: 180px;
}

.h190 {
  height: 190px;
}

.h200 {
  height: 200px;
}

.h240 {
  height: 240px;
}

.h250 {
  height: 250px;
}

.h280 {
  height: 280px;
}

.h300 {
  height: 300px;
}

.h350 {
  height: 350px;
}

.mt00 {
  margin-top: 0 !important;
}

.mt01 {
  margin-top: 1px;
}

.mt02 {
  margin-top: 2px;
}

.mt03 {
  margin-top: 3px;
}

.mt04 {
  margin-top: 4px;
}

.mt05 {
  margin-top: 5px;
}

.mt06 {
  margin-top: 6px;
}

.mt07 {
  margin-top: 7px;
}

.mt08 {
  margin-top: 8px;
}

.mt09 {
  margin-top: 9px;
}

.mt10 {
  margin-top: 10px!important;
}

.mt15 {
  margin-top: 15px!important;
}

.mt20 {
  margin-top: 20px!important;
}

.mt25 {
  margin-top: 25px!important;
}

.mt30 {
  margin-top: 30px!important;
}

.mt35 {
  margin-top: 35px!important;
}

.mt40 {
  margin-top: 40px!important;
}

.mt45 {
  margin-top: 45px;
}

.mt50 {
  margin-top: 50px!important;
}

.mt60 {
  margin-top: 60px!important;
}

.mt64 {
  margin-top: 64px;
}

.mt70 {
  margin-top: 70px;
}

.mt80 {
  margin-top: 80px;
}

.mt90 {
  margin-top: 90px;
}

.mt100 {
  margin-top: 100px;
}

.mt110 {
  margin-top: 110px;
}

.mt120 {
  margin-top: 120px;
}

.mr00 {
  margin-right: 0 !important;
}

.mr01 {
  margin-right: 1px;
}

.mr02 {
  margin-right: 2px;
}

.mr03 {
  margin-right: 3px;
}

.mr04 {
  margin-right: 4px;
}

.mr05 {
  margin-right: 5px;
}

.mr06 {
  margin-right: 6px;
}

.mr07 {
  margin-right: 7px;
}

.mr08 {
  margin-right: 8px;
}

.mr09 {
  margin-right: 9px;
}

.mr10 {
  margin-right: 10px;
}

.mr15 {
  margin-right: 15px;
}

.mr20 {
  margin-right: 20px;
}

.mr25 {
  margin-right: 25px;
}

.mr30 {
  margin-right: 30px;
}

.mr35 {
  margin-right: 35px;
}

.mr40 {
  margin-right: 40px;
}

.mr45 {
  margin-right: 45px;
}

.mr50 {
  margin-right: 50px;
}

.mr60 {
  margin-right: 60px;
}

.mr70 {
  margin-right: 70px;
}

.mr80 {
  margin-right: 80px;
}

.mr90 {
  margin-right: 90px;
}

.mr100 {
  margin-right: 100px;
}

.mb00 {
  margin-bottom: 0 !important;
}

.mb01 {
  margin-bottom: 1px;
}

.mb02 {
  margin-bottom: 2px;
}

.mb03 {
  margin-bottom: 3px;
}

.mb04 {
  margin-bottom: 4px;
}

.mb05 {
  margin-bottom: 5px;
}

.mb06 {
  margin-bottom: 6px;
}

.mb07 {
  margin-bottom: 7px;
}

.mb08 {
  margin-bottom: 8px;
}

.mb09 {
  margin-bottom: 9px;
}

.mb10 {
  margin-bottom: 10px;
}

.mb15 {
  margin-bottom: 15px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb25 {
  margin-bottom: 25px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb35 {
  margin-bottom: 35px;
}

.mb40 {
  margin-bottom: 40px;
}

.mb45 {
  margin-bottom: 45px;
}

.mb50 {
  margin-bottom: 50px;
}

.mb60 {
  margin-bottom: 60px;
}

.mb70 {
  margin-bottom: 70px;
}

.mb80 {
  margin-bottom: 80px;
}

.mb90 {
  margin-bottom: 90px;
}

.mb100 {
  margin-bottom: 100px;
}

.ml00 {
  margin-left: 0 !important;
}

.ml01 {
  margin-left: 1px;
}

.ml02 {
  margin-left: 2px;
}

.ml03 {
  margin-left: 3px;
}

.ml04 {
  margin-left: 4px;
}

.ml05 {
  margin-left: 5px;
}

.ml06 {
  margin-left: 6px;
}

.ml07 {
  margin-left: 7px;
}

.ml08 {
  margin-left: 8px;
}

.ml09 {
  margin-left: 9px;
}

.ml10 {
  margin-left: 10px;
}

.ml12 {
  margin-left: 12px;
}

.ml15 {
  margin-left: 15px;
}

.ml20 {
  margin-left: 20px;
}

.ml25 {
  margin-left: 25px;
}

.ml30 {
  margin-left: 30px;
}

.ml35 {
  margin-left: 35px;
}

.ml40 {
  margin-left: 40px;
}

.ml45 {
  margin-left: 45px;
}

.ml50 {
  margin-left: 50px;
}

.ml60 {
  margin-left: 60px;
}

.ml70 {
  margin-left: 70px;
}

.ml80 {
  margin-left: 80px;
}

.ml90 {
  margin-left: 90px;
}

.ml100 {
  margin-left: 100px;
}

.ml140 {
  margin-left: 140px;
}

.ml160 {
  margin-left: 160px;
}

.ma10 {
  margin: 10px;
}

.ma15 {
  margin: 15px;
}

.ma_auto {
  margin-left: auto;
  margin-right: auto;
}

.pt00 {
  padding-top: 0 !important;
}

.pt01 {
  padding-top: 1px;
}

.pt02 {
  padding-top: 2px;
}

.pt03 {
  padding-top: 3px;
}

.pt04 {
  padding-top: 4px;
}

.pt05 {
  padding-top: 5px;
}

.pt06 {
  padding-top: 6px;
}

.pt07 {
  padding-top: 7px;
}

.pt08 {
  padding-top: 8px;
}

.pt09 {
  padding-top: 9px;
}

.pt10 {
  padding-top: 10px;
}

.pt15 {
  padding-top: 15px;
}

.pt20 {
  padding-top: 20px;
}

.pt25 {
  padding-top: 25px;
}

.pt30 {
  padding-top: 30px;
}

.pt35 {
  padding-top: 35px;
}

.pt40 {
  padding-top: 40px;
}

.pt45 {
  padding-top: 45px;
}

.pt50 {
  padding-top: 50px;
}

.pt60 {
  padding-top: 60px;
}

.pt70 {
  padding-top: 70px;
}

.pt80 {
  padding-top: 80px;
}

.pt90 {
  padding-top: 90px;
}

.pt100 {
  padding-top: 100px;
}

.pt120 {
  padding-top: 120px;
}

.pr00 {
  padding-right: 0 !important;
}

.pr01 {
  padding-right: 1px;
}

.pr02 {
  padding-right: 2px;
}

.pr03 {
  padding-right: 3px;
}

.pr04 {
  padding-right: 4px;
}

.pr05 {
  padding-right: 5px;
}

.pr06 {
  padding-right: 6px;
}

.pr07 {
  padding-right: 7px;
}

.pr08 {
  padding-right: 8px;
}

.pr09 {
  padding-right: 9px;
}

.pr10 {
  padding-right: 10px;
}

.pr15 {
  padding-right: 15px;
}

.pr20 {
  padding-right: 20px;
}

.pr25 {
  padding-right: 25px;
}

.pr30 {
  padding-right: 30px;
}

.pr35 {
  padding-right: 35px;
}

.pr40 {
  padding-right: 40px !important;
}

.pr45 {
  padding-right: 45px;
}

.pr50 {
  padding-right: 50px;
}

.pr60 {
  padding-right: 60px;
}

.pr70 {
  padding-right: 70px;
}

.pr80 {
  padding-right: 80px;
}

.pr90 {
  padding-right: 90px;
}

.pr100 {
  padding-right: 100px;
}

.pb00 {
  padding-bottom: 0 !important;
}

.pb01 {
  padding-bottom: 1px;
}

.pb02 {
  padding-bottom: 2px;
}

.pb03 {
  padding-bottom: 3px;
}

.pb04 {
  padding-bottom: 4px;
}

.pb05 {
  padding-bottom: 5px;
}

.pb06 {
  padding-bottom: 6px;
}

.pb07 {
  padding-bottom: 7px;
}

.pb08 {
  padding-bottom: 8px;
}

.pb09 {
  padding-bottom: 9px;
}

.pb10 {
  padding-bottom: 10px;
}

.pb15 {
  padding-bottom: 15px;
}

.pb20 {
  padding-bottom: 20px;
}

.pb25 {
  padding-bottom: 25px;
}

.pb30 {
  padding-bottom: 30px;
}

.pb35 {
  padding-bottom: 35px;
}

.pb40 {
  padding-bottom: 40px;
}

.pb45 {
  padding-bottom: 45px;
}

.pb50 {
  padding-bottom: 50px;
}

.pb60 {
  padding-bottom: 60px;
}

.pb70 {
  padding-bottom: 70px;
}

.pb80 {
  padding-bottom: 80px;
}

.pb90 {
  padding-bottom: 90px;
}

.pb100 {
  padding-bottom: 100px;
}

.pl00 {
  padding-left: 0 !important;
}

.pl01 {
  padding-left: 1px;
}

.pl02 {
  padding-left: 2px;
}

.pl03 {
  padding-left: 3px;
}

.pl04 {
  padding-left: 4px;
}

.pl05 {
  padding-left: 5px;
}

.pl06 {
  padding-left: 6px;
}

.pl07 {
  padding-left: 7px;
}

.pl08 {
  padding-left: 8px;
}

.pl09 {
  padding-left: 9px;
}

.pl10 {
  padding-left: 10px;
}

.pl15 {
  padding-left: 15px;
}

.pl20 {
  padding-left: 20px;
}

.pl25 {
  padding-left: 25px;
}

.pl30 {
  padding-left: 30px;
}

.pl35 {
  padding-left: 35px;
}

.pl40 {
  padding-left: 40px;
}

.pl45 {
  padding-left: 45px;
}

.pl50 {
  padding-left: 50px;
}

.pl60 {
  padding-left: 60px;
}

.pl70 {
  padding-left: 70px;
}

.pl80 {
  padding-left: 80px;
}

.pl90 {
  padding-left: 90px;
}

.pl100 {
  padding-left: 100px;
}

.pa01 {
  padding: 1px;
}

.pa02 {
  padding: 2px;
}

.pa03 {
  padding: 3px;
}

.pa04 {
  padding: 4px;
}

.pa05 {
  padding: 5px;
}

.pa10 {
  padding: 10px;
}

.pa15 {
  padding: 15px;
}

.fr {
  float: right;
}

.fl {
  float: left;
}

.fr10 {
  float: right;
  margin-left: 10px;
}

.fr15 {
  float: right;
  margin-left: 15px;
}

.fr30 {
  float: right;
  margin-left: 15px;
}

.fl10 {
  float: left;
  margin-right: 10px;
}

.fl15 {
  float: left;
  margin-right: 15px;
}

.fl30 {
  float: left;
  margin-right: 30px;
}

.txt10 {
  font-size: 10px;
}

.txt11 {
  font-size: 11px;
}

.txt12 {
  font-size: 12px;
}

.txt13 {
  font-size: 13px;
}

.txt14 {
  font-size: 14px;
}

.txt15 {
  font-size: 15px;
}

.txt16 {
  font-size: 16px;
}

.txt17 {
  font-size: 17px;
}

.txt18 {
  font-size: 18px;
}

.txt19 {
  font-size: 19px;
}

.txt20 {
  font-size: 20px;
}

.txt21 {
  font-size: 21px;
}

.txt22 {
  font-size: 22px;
}

.txt23 {
  font-size: 23px;
}

.txt24 {
  font-size: 24px;
}

.txt25 {
  font-size: 25px;
}

.txt26 {
  font-size: 26px;
}

.txt27 {
  font-size: 27px;
}

.txt28 {
  font-size: 28px;
}

.txt29 {
  font-size: 29px;
}

.txt30 {
  font-size: 30px;
}

.txt31 {
  font-size: 31px;
}

.txt32 {
  font-size: 32px;
}

.txt33 {
  font-size: 33px;
}

.txt34 {
  font-size: 34px;
}

.txt35 {
  font-size: 35px;
}

.txt36 {
  font-size: 36px;
}

.txt37 {
  font-size: 37px;
}

.txt38 {
  font-size: 38px;
}

.txt39 {
  font-size: 39px;
}

.txt40 {
  font-size: 40px;
}

.bold {
  font-weight: 700;
}

.left {
  text-align: left !important;
}

.center {
  text-align: center !important;
}

.right {
  text-align: right;
}

.clear {
  clear: both;
}

.v_top {
  vertical-align: top;
}

.v_mid {
  vertical-align: middle;
}

.v_btm {
  vertical-align: bottom;
}

.color_red {
  color: #f33;
}

.color_pink {
  color: #ed8c96;
}

.color_blue {
  color: #00408f;
}

.color_green {
  color: #479f9d;
}

.color_ore {
  color: #ff8327;
}

.color_yellow {
  color: #ffeb8b;
}

.color_beige {
  color: #dac58b;
}

.color_brown {
  color: #9b8052;
}

.color_navy {
  color: #1f2774;
}

.color_black {
  color: #3e3a39;
}

.ls_0 {
  letter-spacing: 0;
}

.ls_1 {
  letter-spacing: 1px;
}

.indent {
  margin-left: 1em !important;
  text-indent: -1em;
}

.line_h_2 {
  line-height: 2 !important;
}

.clearfix:after {
  display: block;
  clear: both;
  content: "";
}

.sp {
  display: none !important;
}

#loader-bg {
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: #7db45f;
  z-index: 1000;
}

#loader {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 200px;
  height: 200px;
  text-align: center;
  color: #fff;
  z-index: 2000;
}

#loader img {
  display: block;
  margin-bottom: 10px;
}

@keyframes logo_ani {
  0% {
    opacity: .1;
  }

  50% {
    opacity: 1;
  }

  100% {
    opacity: .2;
  }
}

.logo_ani {
  animation-name: logo_ani;
  animation-duration: 2s;
  animation-iteration-count: infinite;
}

/*tel*/
[href^="tel"]:hover {
  cursor: default;
}

::selection {
  background-color: #99C1DA;
}

::-moz-selection {
  background-color: #99C1DA;
}

body,
#mainvisual .inner,
header,
footer {
  min-width: 1200px;
}

@media print {
  html {
    -webkit-print-color-adjust: exact;
  }

  body {
    zoom: 80%;
  }

  .fixed {
    position: inherit !important;
  }
}

#mv {
  width: 100%;
  height: 680px;
  background: #5F9EA0;
}

#mv .mv_wrap {
  position: relative;
  width: 100%;
  height: 680px;
  margin: 0 auto;
}

/* MY CSS ---------------------------------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------------------------------- */
/** /
/* COMMON ---------------------------------------------------------------- */
.sp {
  display: none !important;
}

.pc {
  display: block;
}

img {
  display: block;
  max-width: 100%;
  -ms-interpolation-mode: bicubic;
  height: auto;
  margin: 0 auto;
  padding: 0;
  vertical-align: bottom;
  border: none;
  line-height: 1;
}

/* LINK ------------------------ */
a {
  color: #4F463B;
  text-decoration: none;
  transition: .3s;
}

a:hover {
  color: rgba(79, 70, 59, 0.8);
}

.anchor {
  display: block;
  margin-top: -20px;
  padding-top: 20px;
}

.anchor_02 {
  display: block;
  margin-top: -100px;
  padding-top: 80px;
}

.link_btn {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 320px;
  height: 67px;
  margin: 40px auto 0;
  padding-right: 10px;
  color: #fff;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 2px;
  background-color: #629E44;
  border-radius: 100px;
}

.link_btn::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 23px;
  width: 8px;
  height: 12px;
  background-image: url(../images/btn_icon.svg);
  background-size: 8px 12px;
  transition: .3s;
}

.link_btn:hover {
  background-color: rgba(98, 158, 68, 0.7);
}

.link_btn:hover::after {
  right: 18px;
}

/* CONT ------------------------ */
.nowrap {
  flex-wrap: nowrap !important;
}

.last-cont {
  margin-bottom: 0 !important;
}

.align_center_cont {
  display: table;
  margin: 0 auto;
}

/* TEXT ------------------------ */
p {
  margin-bottom: 20px;
  /*&:last-of-type{
  	margin-bottom: 0;
  }*/
}

.text_bold {
  font-weight: 900;
}

.alert_text {
  color: #c96a20;
  font-weight: 700;
}

/* IMG ------------------------ */
.img_left {
  float: left;
  margin: 0 40px 20px 0;
}

.img_right {
  float: right;
  margin: 0 0 20px 40px;
}

.img_center {
  margin: 20px auto;
}

.bdr_none {
  border: none;
}

/* ANI ------------------------ */
.fadein {
  opacity: 0;
  transform: translate(0, 50px);
  transition: all 1s;
}

.fadein.active {
  opacity: 1;
  transform: translate(0, 0);
}

/* LINK BTN ------------------------ */
.link_btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 210px;
  height: 50px;
  margin: 0 auto;
  color: #fff;
  font-family: Cardo;
  font-size: 15px;
  line-height: 1;
  background-color: #9acf7f;
  border-radius: 3px;
  transition: .3s;
}

.link_btn i {
  margin-right: 5px;
}

.link_btn:hover {
  color: white;
  transform: translate(0, -3px);
  box-shadow: 0 5px 5px rgba(0, 0, 0, 0.2);
}

/* SIDE LINK BTN ------------------------ */
.wrapper {
  position: relative;
}

.wrapper .side_link_group {
  position: fixed;
  top: 245px;
  right: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  z-index: 3000;
}

.wrapper .side_link_group .side_link_bn {
  position: relative;
  top: auto;
  right: auto;
}

.wrapper .side_link_bn {
  position: fixed;
  display: flex;
  flex-direction: row;
  writing-mode: vertical-rl;
  align-items: center;
  top: 245px;
  right: 0;
  width: 63px;
  height: auto;
  padding: 25px 0;
  color: #fff;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 18px;
  text-align: center;
  letter-spacing: 1.8px;
  background-color: #72ae53;
  border-radius: 2px 0 0 2px;
  transition: .5s;
  z-index: 3000;
}
.wrapper .side_link_bn:nth-of-type(2) {
  padding: 80px 0 20px 0;
}
.wrapper .side_link_bn:hover {
  background-color: #47762f;
}

.wrapper .side_link_bn img {
  position: absolute;
  top: 25px;
  left: 50%;
  transform: translateX(-50%);
  width: 28px;
  height: 44px;
}

/* リンク先準備中（クリック不可） （リンク先#の場合）*/
.wrapper .side_link_bn[href="#"]{
  pointer-events: none;
  position:relative;
}
.wrapper .side_link_bn[href="#"]:before{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  position: absolute;
  top:0;
  left: 0;
  color: #fff;
  background: rgba(0, 0, 0, 0.5);
  content: "準備中";
  z-index:10;
}

/* BTN ------------------------ */
.web_btn {
  position: relative;
  display: inline-block;
  width: auto;
  height: 40px;
  margin: 0px 0 40px;
  padding: 0 15px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 20px;
  letter-spacing: 2px;
  border: 1px solid #614c3f;
}

.web_btn::after {
  content: "";
  position: absolute;
  top: 16px;
  right: -21px;
  width: 30px;
  height: 5px;
  background-image: url("../images/more_arrow.svg");
  transition: .3s;
}

.web_btn:hover {
  background-color: #f5eee4;
}

.web_btn:hover::after {
  right: -31px;
}

.btn_schedule{
	position:relative;
	margin-top:10px;
}
.btn_schedule a{
	width:100%;
	background:#edb377;
	display:inline-block;
	padding:10px 0;
	border:2px solid #edb377;
	border-radius: 50px;
	text-align:center;
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-weight:bold;
	font-size: 16px;
	color:#fff;
	transition:.3s ease;
}
.btn_schedule a::before{
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 39px;
	width: 23px;
	height: 22px;
	background-image: url(../images/nikukyu_icon.svg);
}
.btn_schedule a::after{
	content: "";
  	position: absolute;
  	top: 50%;
  	transform: translate(0, -50%) rotate(-20deg);
  	right: 39px;
  	width: 23px;
  	height: 22px;
  	background-image: url(../images/nikukyu_icon.svg);
}
.btn_schedule a:hover{
	background-color:#fff;
	color:#edb377;
}
.btn_schedule a:hover::after,
.btn_schedule a:hover::before{
	background: url(../images/nikukyu_icon_ore.svg) no-repeat center center / 100% 100%;
}

@media print {
  html {
    -webkit-print-color-adjust: exact;
  }

  body {
    zoom: 80%;
  }

  .fixed {
    position: inherit !important;
  }
}

/* -----------------------------------------------------------------------------------------------------
-- TOP CONT 
----------------------------------------------------------------------------------------------------- */
/* Top Info */
.top_info {
  height:
    /*587px*/
    510px;
}

.top_info .box1 {
  margin: 0 auto 57px;
}

.top_info .flex_cont {
  display: flex;
  justify-content: space-between;
}

.top_info .flex_cont .info_cont_01 {
  width: 580px;
  /* TAB --------------------- */
  /* / TAB --------------------- */
}

.top_info .flex_cont .info_cont_01 .title,
.top_info .flex_cont .info_cont_02 .title {
  position: relative;
  display: table;
  margin: 0 auto 52px;
  padding-left: 78px;
  color: #7db45f;
  font-family: "Kalam", cursive;
  font-size: 32px;
  line-height: 1;
  letter-spacing: 4px;
}

.top_info .flex_cont .info_cont_01 .title::before,
.top_info .flex_cont .info_cont_02 .title::before {
  content: "";
  position: absolute;
  top: -7px;
  left: 3px;
  width: 48px;
  height: 36px;
  background-image: url("../images/top_info_icon.svg");
}

.top_info .flex_cont .info_cont_01 .title::after,
.top_info .flex_cont .info_cont_02 .title::after {
  content: "";
  position: absolute;
  top: 44px;
  left: 86px;
  width: 73px;
  height: 25px;
  background-image: url("../images/top_title_deco_icon.png");
}

.top_info .flex_cont .info_cont_01 .info_text {
  margin-bottom: 20px;
  text-align: center;
}

.top_info .flex_cont .info_cont_01 .tab-area {
  display: flex;
  justify-content: space-between;
  background-color: #fff;
  cursor: pointer;
}

.top_info .flex_cont .info_cont_01 .tab-area .tab {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 285px;
  height: 58px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  text-align: center;
  color: white;
}

.top_info .flex_cont .info_cont_01 .tab-area .tab.tab_01 {
  color: #FFFFFF;
  background-color: #83c162;
}

.top_info .flex_cont .info_cont_01 .tab-area .tab.tab_01.active {
  color: #83c162;
  background-color: #fff;
  background-color: #fff;
  border-top: 2px solid #cfedbf;
  border-right: 2px solid #cfedbf;
  border-left: 2px solid #cfedbf;
}

.top_info .flex_cont .info_cont_01 .tab-area .tab.tab_02 {
  color: #FFFFFF;
  background-color: #edcfb0;
}

.top_info .flex_cont .info_cont_01 .tab-area .tab.tab_02.active {
  color: #edcfb0;
  background-color: #fff;
  border-top: 2px solid #edcfb0;
  border-right: 2px solid #edcfb0;
  border-left: 2px solid #edcfb0;
}

.top_info .flex_cont .info_cont_01 .tab-area .tab.active {
  background-color: #fff;
}

.top_info .flex_cont .info_cont_01 .content-area {
  width: 100%;
  margin-top: -2px;
}

.top_info .flex_cont .info_cont_01 .content-area .content {
  display: none;
}

.top_info .flex_cont .info_cont_01 .content-area .content.show {
  display: block;
  width: 100%;
  height: 271px;
}

.top_info .flex_cont .info_cont_01 .content-area .content.show.cont_01 {
  padding: 20px;
  border-top: 2px solid #cfedbf;
  border-bottom: 2px solid #cfedbf;
  border-right: 2px solid #cfedbf;
  border-left: 2px solid #cfedbf;
}

.top_info .flex_cont .info_cont_01 .content-area .content.show.cont_01 .btn_01 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 167px;
  height: 35px;
  margin: 0 auto;
  padding-top: 2px;
  font-family: "Kalam", cursive;
  font-size: 15px;
  color: #fff;
  background-color: #83c162;
  border-radius: 50px;
  transition: .3s;
}

.top_info .flex_cont .info_cont_01 .content-area .content.show.cont_01 .btn_01:hover {
  transform: translateY(-5px);
}

.top_info .flex_cont .info_cont_01 .content-area .content.show.cont_02 {
  padding: 20px;
  border-top: 2px solid #edcfb0;
  border-bottom: 2px solid #edcfb0;
  border-right: 2px solid #edcfb0;
  border-left: 2px solid #edcfb0;
}

.top_info .flex_cont .info_cont_01 .content-area .content.show.cont_02 .btn_01 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 167px;
  height: 35px;
  margin: 0 auto;
  padding-top: 2px;
  font-family: "Kalam", cursive;
  font-size: 15px;
  color: #fff;
  background-color: #edcfb0;
  border-radius: 50px;
  transition: .3s;
}

.top_info .flex_cont .info_cont_01 .content-area .content.show.cont_02 .btn_01:hover {
  transform: translateY(-5px);
}

.top_info .flex_cont .info_cont_01 .content-area .top_blog-list {
  margin: 0 0 30px;
  padding: 0 20px;
}

.top_info .flex_cont .info_cont_01 .content-area .top_blog-list li {
  margin: 15px 0;
}

.top_info .flex_cont .info_cont_01 .content-area .top_blog-list li a {
  display: flex;
  justify-content: flex-start;
}

.top_info .flex_cont .info_cont_01 .content-area .top_blog-list li a .date {
  color: #edb377;
  margin-right: 20px;
  font-size: 14px;
}

.top_info .flex_cont .info_cont_01 .content-area .top_blog-list li a .title_blog_info {
  color: #333333;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 14px;
}

.top_info .flex_cont .info_cont_02 {
  width: 580px;
  padding-top: 34px;
}

.top_info .flex_cont .info_cont_02 .day_off{
  display: none;
}

.top_info .flex_cont .info_cont_02 .link_btn_01 {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 310px;
  height: 50px;
  margin: 14px auto 0;
  padding-left: 50px;
  color: #92c975;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 2px;
  border: 1px solid #92c975;
  border-radius: 50px;
}

.top_info .flex_cont .info_cont_02 .link_btn_01::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 42px;
  width: 34px;
  height: 32px;
  background-image: url("../images/calendar_icon.svg");
}

.top_info .flex_cont .info_cont_02 .link_btn_01:hover {
  color: #fff;
  background-color: rgba(146, 201, 117, 0.5);
}

.top_info .flex_cont .info_cont_02 .cont {
  position: relative;
  width: 100%;
}

/*.top_info .flex_cont .info_cont_02 .cont .day_info {
  position: absolute;
  top: 6px;
  left: 0;
  width: 150px;
  height: 213px;
  padding-top: 120px;
  background-image: url("../images/day_info_bg.png");
}*/
/*.top_info .flex_cont .info_cont_02 .cont .day_info span {
  display: block;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  line-height: 1.4;
}*/
.top_info .flex_cont .info_cont_02 .day_info {
  position: relative;
  margin-top: 40px;
}

.top_info .flex_cont .info_cont_02 .day_info::before {
  position: absolute;
  top: -22px;
  left: 0;
  content: "";
  width: 130px;
  height: 135px;
  background-image: url("../images/day_off_img.png");
  background-repeat: no-repeat;
  background-size: contain;
}

.top_info .flex_cont .info_cont_02 .day_info .day {
  display: block;
  width: 100%;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 16px;
  font-weight: 700;
  padding: 20px 10px 20px 150px;
  background-color: #f0f0f0;
}

.top_info .flex_cont .info_cont_02 .cont .top_info_img_01 {
  position: absolute;
  top: 34px;
  left: 205px;
}

.top_info .flex_cont .info_cont_02 .cont .top_info_img_02 {
  position: absolute;
  top: 34px;
  left: 397px;
}

/* Top First */
.top_first .box1 {
  /*margin: 0 auto 172px;*/
}

.top_first .flex_cont {
  display: flex;
  justify-content: space-between;
  height: 815px;
}

.top_first .flex_cont .img_cont {
  position: relative;
  width: 400px;
}

.top_first .flex_cont .img_cont .img_01 {
  position: absolute;
  /*top: -24px;*/
  top: 0px;
  left: -80px;
  max-width: none;
  width: 534px;
  height: auto;
}

.top_first .flex_cont .img_cont .img_02 {
  position: absolute;
  top: 375px;
  left: 112px;
  max-width: none;
  width: 379px;
  height: auto;
}

.top_first .flex_cont .img_cont .img_03 {
  position: absolute;
  top: 570px;
  left: 519px;
  max-width: none;
  width: 299px;
  height: auto;
}

.top_first .flex_cont .text_cont {
  position: relative;
  width: 670px;
}

.top_first .flex_cont .text_cont h3 {
  position: absolute;
  top: 92px;
  left: 0;
  color: #d7a652;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 24px;
  font-weight: 400;
  letter-spacing: 3px;
}

.top_first .flex_cont .text_cont p {
  position: absolute;
  top: 156px;
  left: 0;
  font-size: 15px;
  font-weight: 500;
  line-height: 2.2;
  letter-spacing: 2px;
}

.top_first .flex_cont .text_cont .link_cont {
  position: relative;
  top: 329px;
  left: 4px;
}

.top_first .flex_cont .text_cont .link_cont li {
  position: absolute;
  width: 320px;
  height: 67px;
  border-radius: 50px;
}

.top_first .flex_cont .text_cont .link_cont li::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 53px;
  width: 8px;
  height: 12px;
  background-image: url("../images/btn_icon.svg");
  background-size: 8px 12px;
  transition: .3s;
}

.top_first .flex_cont .text_cont .link_cont li:hover::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 40px;
  width: 8px;
  height: 12px;
  background-image: url("../images/btn_icon.svg");
  background-size: 8px 12px;
}

.top_first .flex_cont .text_cont .link_cont li:nth-of-type(1) {
  top: 0;
  left: 0;
  background-color: #edb377;
}

.top_first .flex_cont .text_cont .link_cont li:nth-of-type(2) {
  top: 0;
  left: 346px;
  background-color: #9acf7f;
}

.top_first .flex_cont .text_cont .link_cont li:nth-of-type(3) {
  top: 93px;
  left: 0;
  background-color: #9acf7f;
}

.top_first .flex_cont .text_cont .link_cont li:nth-of-type(4) {
  top: 93px;
  left: 346px;
  background-color: #edb377;
}

.top_first .flex_cont .text_cont .link_cont li a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 320px;
  height: 67px;
  padding-right: 30px;
  color: #fff;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 2px;
}

.top_first .flex_cont_02 {
  display: flex;
  justify-content: space-between;
}

.top_first .flex_cont_02 .link_cont_01 {
  position: relative;
  width: 580px;
  height: 236px;
  border: 4px solid #cfedbf;
}

.top_first .flex_cont_02 .link_cont_01 .img_01 {
  position: absolute;
  top: 29px;
  left: 38px;
}

.top_first .flex_cont_02 .link_cont_01 .text_01 {
  position: absolute;
  top: 51px;
  left: 197px;
  color: #6da451;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 2px;
}

.top_first .flex_cont_02 .link_cont_01 .link_btn_01 {
  position: absolute;
  top: 133px;
  left: 197px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 297px;
  height: 54px;
  margin: 0 auto;
  color: #fff;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
  background-color: #9acf7f;
  border-radius: 50px;
  transition: .3s;
}

.top_first .flex_cont_02 .link_cont_01 .link_btn_01:hover {
  color: white;
  transform: translate(0, -3px);
}

.top_first .flex_cont_02 .link_cont_02 {
  position: relative;
  width: 580px;
  height: 236px;
  border: 4px solid #f3e3d3;
}

.top_first .flex_cont_02 .link_cont_02 .img_01 {
  position: absolute;
  top: 46px;
  left: 46px;
}

.top_first .flex_cont_02 .link_cont_02 .text_01 {
  position: absolute;
  top: 51px;
  left: 197px;
  color: #edb377;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 20px;
  letter-spacing: 2px;
}

.top_first .flex_cont_02 .link_cont_02 .link_btn_01 {
  position: absolute;
  top: 133px;
  left: 197px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 297px;
  height: 54px;
  margin: 0 auto;
  color: #fff;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 17px;
  font-weight: 500;
  line-height: 1;
  background-color: #edb377;
  border-radius: 50px;
  transition: .3s;
}

.top_first .flex_cont_02 .link_cont_02 .link_btn_01:hover {
  color: white;
  transform: translate(0, -3px);
}

/* Top Feature */
.top_feature {
  position: relative;
  height: auto;
  background-color: #efe7d5;
  margin-top: 200px;
}

.top_feature .box1 {
  margin-bottom: 0;
}

.top_feature::before {
  position: absolute;
  top: -113px;
  left: 50%;
  transform: translateX(-50%);
  content: "";
  width: 100%;
  height: 113px;
  background-image: url("../images/top_feature_title_img.png");
  background-repeat: no-repeat;
  background-position: 38% 0;
}

.top_feature h2 {
  position: relative;
  display: table;
  margin: 0 auto;
  padding: 96px 10px 50px;
  color: #666666;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 26px;
  font-weight: 500;
  text-align: center;
  line-height: 1.6;
  letter-spacing: 3px;
  z-index: 10;
  background-image: url("../images/under_line_img.png"), url("../images/top_title_deco_icon.png");
  background-repeat: no-repeat;
  background-position: -1px 162px, center 204px;
}

.top_feature .flex_cont_01 {
  display: flex;
  justify-content: space-between;
  height: 784px;
}

.top_feature .flex_cont_01 .inner_cont_01 {
  position: relative;
  width: 600px;
}

.top_feature .flex_cont_01 .inner_cont_01 h3 {
  position: absolute;
  top: 82px;
  left: 123px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 435px;
  height: 100px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 22px;
  letter-spacing: 2px;
  background-color: #fff;
  z-index: 20;
}

.top_feature .flex_cont_01 .inner_cont_01 h3::before {
  content: "";
  position: absolute;
  top: -65px;
  left: -54px;
  width: 109px;
  height: 109px;
  background-image: url("../images/top_feature_01.png");
}

.top_feature .flex_cont_01 .inner_cont_01 img {
  position: absolute;
  top: 59px;
  left: 0;
  border-radius: 19px;
}

.top_feature .flex_cont_01 .inner_cont_01 p {
  position: absolute;
  top: 416px;
  left: 0;
  width: 520px;
  font-size: 15px;
  line-height: 2;
}

.top_feature .flex_cont_01 .inner_cont_01 .btn_01 {
  position: absolute;
  top: 613px;
  left: 115px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 352px;
  height: 69px;
  color: #fff;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 18px;
  font-weight: 700;
  background-color: #9acf7f;
  border-radius: 50px;
  letter-spacing: 4px;
  transition: .3s;
}

.top_feature .flex_cont_01 .inner_cont_01 .btn_01:hover {
  transform: translateY(-5px);
}

.top_feature .flex_cont_01 .inner_cont_01 .btn_01::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 39px;
  width: 23px;
  height: 22px;
  background-image: url("../images/nikukyu_icon.svg");
}

.top_feature .flex_cont_01 .inner_cont_01 .btn_01::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translate(0, -50%) rotate(-20deg);
  right: 39px;
  width: 23px;
  height: 22px;
  background-image: url("../images/nikukyu_icon.svg");
}

.top_feature .flex_cont_01 .inner_cont_02 {
  position: relative;
  width: 600px;
}
.top_greeting_sub_tit{
  position: relative;
  display: block;
  font-size: 21px;
  font-family: fot-tsukuardgothic-std, sans-serif;
}
.top_feature .flex_cont_01 .inner_cont_02 h3 {
  position: absolute;
  top: 82px;
  left: 123px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 435px;
  height: 100px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 22px;
  letter-spacing: 2px;
  background-color: #fff;
  z-index: 20;
}

.top_feature .flex_cont_01 .inner_cont_02 h3::before {
  content: "";
  position: absolute;
  top: -65px;
  left: -54px;
  width: 109px;
  height: 109px;
  background-image: url("../images/top_feature_02.png");
}

.top_feature .flex_cont_01 .inner_cont_02 img {
  position: absolute;
  top: 59px;
  left: 42px;
  border-radius: 19px;
}

.top_feature .flex_cont_01 .inner_cont_02 p {
  position: absolute;
  top: 416px;
  left: 42px;
  width: 520px;
  font-size: 15px;
  line-height: 2;
}

.top_feature .flex_cont_01 .inner_cont_02 .btn_01 {
  position: absolute;
  display: block;
  top: 613px;
  left: 134px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 352px;
  height: 69px;
  color: #fff;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 18px;
  font-weight: 700;
  background-color: #9acf7f;
  border-radius: 50px;
  letter-spacing: 4px;
  transition: .3s;
}

.top_feature .flex_cont_01 .inner_cont_02 .btn_01:hover {
  transform: translateY(-5px);
}

.top_feature .flex_cont_01 .inner_cont_02 .btn_01::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 39px;
  width: 23px;
  height: 22px;
  background-image: url("../images/nikukyu_icon.svg");
}

.top_feature .flex_cont_01 .inner_cont_02 .btn_01::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translate(0, -50%) rotate(-20deg);
  right: 39px;
  width: 23px;
  height: 22px;
  background-image: url("../images/nikukyu_icon.svg");
}

.top_feature .flex_cont_02 {
  display: flex;
  justify-content: space-between;
  height: 471px;
}

.top_feature .flex_cont_02 .inner_cont_01 {
  position: relative;
  width: 600px;
}

.top_feature .flex_cont_02 .inner_cont_01 img {
  border-radius: 19px;
}

.top_feature .flex_cont_02 .inner_cont_01 .link_btn_list {
  position: absolute;
  top: 243px;
  /* left: 44px; */
  left: 0;
  display: flex;
  justify-content: space-between;
  /* width: 513px; */
  width: 100%;
}

.top_feature .flex_cont_02 .inner_cont_01 .link_btn_list li {
  /* width: 163px; */
  /* height: 163px; */
  width: 140px;
  height: 140px;
  background-color: #9acf7f;
  border-radius: 100px;
}

.top_feature .flex_cont_02 .inner_cont_01 .link_btn_list li a {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100%;
  height: 100%;
  /* padding-top: 47px; */
  padding-top: 40px;
  color: #fff;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 18px;
  font-weight: 700;
  text-align: center;
  letter-spacing: 2px;
  line-height: 1.4;
}

.top_feature .flex_cont_02 .inner_cont_01 .link_btn_list li a::after {
  content: "";
  position: absolute;
  /* top: 111px; */
  top: 100px;
  left: 50%;
  transform: translateX(-50%);
  width: 12px;
  height: 19px;
  background-image: url("../images/btn_icon.svg");
  background-repeat: no-repeat;
  transition: .3s;
}

.top_feature .flex_cont_02 .inner_cont_01 .link_btn_list li a:hover::after {
  left: 56%;
  transform: translateX(-50%);
}

.top_feature .flex_cont_02 .inner_cont_02 {
  position: relative;
  width: 600px;
}

.top_feature .flex_cont_02 .inner_cont_02 h3 {
  position: absolute;
  top: 36px;
  left: -28px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 628px;
  height: 100px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 22px;
  letter-spacing: 2px;
  background-color: #fff;
  z-index: 20;
}

.top_feature .flex_cont_02 .inner_cont_02 h3::before {
  content: "";
  position: absolute;
  top: -85px;
  left: -33px;
  width: 109px;
  height: 109px;
  background-image: url("../images/top_feature_03.png");
}

.top_feature .flex_cont_02 .inner_cont_02 p {
  position: absolute;
  top: 158px;
  left: 42px;
  width: 520px;
  font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
  font-size: 15px;
  line-height: 2;
}

.top_feature .flex_cont_02 .inner_cont_02 .list_cont {
  position: absolute;
  top: 262px;
  left: 20px;
}

.top_feature .flex_cont_02 .inner_cont_02 .list_cont li {
  display: flex;
  align-items: center;
  width: 579px;
  height: 37px;
  margin-bottom: 7px;
  padding: 0 0 0 27px;
  font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
  font-size: 13px;
  letter-spacing: 2px;
  background-color: #dbc383;
  border-radius: 10px;
}

.top_feature .flex_cont_02 .inner_cont_02 .list_cont li .sub_text {
  letter-spacing: 2px;
}

.top_feature .flex_cont_02 .inner_cont_02 .list_cont li .title {
  margin-right: 15px;
  font-size: 17px;
}

.top_feature .flex_cont_02 .inner_cont_02 .list_cont li:nth-of-type(1) {
  background-color: #dbc383;
}

.top_feature .flex_cont_02 .inner_cont_02 .list_cont li:nth-of-type(1) .title {
  color: #8b7028;
}

.top_feature .flex_cont_02 .inner_cont_02 .list_cont li:nth-of-type(2) {
  background-color: #dbce83;
}

.top_feature .flex_cont_02 .inner_cont_02 .list_cont li:nth-of-type(2) .title {
  color: #90812d;
}

.top_feature .flex_cont_02 .inner_cont_02 .list_cont li:nth-of-type(3) {
  background-color: #d8db83;
}

.top_feature .flex_cont_02 .inner_cont_02 .list_cont li:nth-of-type(3) .title {
  color: #a2a639;
}

.top_feature .flex_cont_02 .inner_cont_02 .list_cont li:nth-of-type(4) {
  background-color: #c5db83;
}

.top_feature .flex_cont_02 .inner_cont_02 .list_cont li:nth-of-type(4) .title {
  color: #76a639;
}

.top_feature .flex_cont_03 {
  display: flex;
  justify-content: space-between;
  height: 800px;
}

.top_feature .flex_cont_03 .inner_cont_01 {
  position: relative;
  width: 600px;
}

.top_feature .flex_cont_03 .inner_cont_01 h3 {
  position: absolute;
  top: 82px;
  left: 123px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 435px;
  height: 100px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 22px;
  letter-spacing: 2px;
  background-color: #fff;
  z-index: 20;
}

.top_feature .flex_cont_03 .inner_cont_01 h3::before {
  content: "";
  position: absolute;
  top: -65px;
  left: -54px;
  width: 109px;
  height: 109px;
  background-image: url("../images/top_feature_04.png");
}

.top_feature .flex_cont_03 .inner_cont_01 img {
  position: absolute;
  top: 59px;
  left: 0;
  border-radius: 19px;
}

.top_feature .flex_cont_03 .inner_cont_01 p {
  position: absolute;
  top: 416px;
  left: 0;
  width: 520px;
  font-size: 15px;
  line-height: 2;
}

.top_feature .flex_cont_03 .inner_cont_01 .btn_01 {
  position: absolute;
  top: 636px;
  left: 91px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 352px;
  height: 69px;
  color: #fff;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 18px;
  font-weight: 700;
  background-color: #9acf7f;
  border-radius: 50px;
  letter-spacing: 4px;
  transition: .3s;
}

.top_feature .flex_cont_03 .inner_cont_01 .btn_01:hover {
  transform: translateY(-5px);
}

.top_feature .flex_cont_03 .inner_cont_01 .btn_01::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 39px;
  width: 23px;
  height: 22px;
  background-image: url("../images/nikukyu_icon.svg");
}

.top_feature .flex_cont_03 .inner_cont_01 .btn_01::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translate(0, -50%) rotate(-20deg);
  right: 39px;
  width: 23px;
  height: 22px;
  background-image: url("../images/nikukyu_icon.svg");
}

.top_feature .flex_cont_03 .inner_cont_02 {
  position: relative;
  width: 600px;
}

.top_feature .flex_cont_03 .inner_cont_02 h3 {
  position: absolute;
  top: 82px;
  left: 165px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 435px;
  height: 100px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 22px;
  letter-spacing: 2px;
  background-color: #fff;
  z-index: 20;
}

.top_feature .flex_cont_03 .inner_cont_02 h3::before {
  content: "";
  position: absolute;
  top: -65px;
  left: -54px;
  width: 109px;
  height: 109px;
  background-image: url("../images/top_feature_05.png");
}

.top_feature .flex_cont_03 .inner_cont_02 img {
  position: absolute;
  top: 59px;
  left: 42px;
  border-radius: 19px;
}

.top_feature .flex_cont_03 .inner_cont_02 p {
  position: absolute;
  top: 416px;
  left: 42px;
  width: 520px;
  font-size: 15px;
  line-height: 2;
}

.top_feature .flex_cont_03 .inner_cont_02 .btn_01 {
  position: absolute;
  display: block;
  top: 636px;
  left: 133px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 352px;
  height: 69px;
  color: #fff;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 18px;
  font-weight: 700;
  background-color: #9acf7f;
  border-radius: 50px;
  letter-spacing: 4px;
  transition: .3s;
}

.top_feature .flex_cont_03 .inner_cont_02 .btn_01:hover {
  transform: translateY(-5px);
}

.top_feature .flex_cont_03 .inner_cont_02 .btn_01::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 39px;
  width: 23px;
  height: 22px;
  background-image: url("../images/nikukyu_icon.svg");
}

.top_feature .flex_cont_03 .inner_cont_02 .btn_01::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translate(0, -50%) rotate(-20deg);
  right: 39px;
  width: 23px;
  height: 22px;
  background-image: url("../images/nikukyu_icon.svg");
}

/* Top Medical */
.top_medical .box1 {
  position: relative;
  padding-top: 91px;
  background-image: url("../images/top_medical_deco_01.png"), url("../images/top_medical_deco_02.png");
  background-position: left 22px top 200px, right 123px top
    /*-7px*/
    0;
  background-repeat: no-repeat;
}

.top_medical .title_cont_01 .sub_title {
  display: block;
  margin-top: -3px;
  text-align: center;
  color: #aea260;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 20px;
  text-align: center;
}

.top_medical .list_cont {
  display: flex;
  justify-content:
    /*space-between*/
    center;
  flex-wrap: wrap;
  /*margin-top: 64px;*/
}

.top_medical .list_cont .inner_cont {
  /*width: 233px;*/
  width: 190px;
  height: 395px;
  margin-bottom: 17px;
  background-color: #9acf7f;
  border-radius: 20px;
  margin: 10px 5px 17px;
}

.top_medical .list_cont .inner_cont a {
  display: block;
  width: 100%;
  height: 100%;
  /*padding-top: 50px;*/
  padding-top: 20px;
}

.top_medical .list_cont .inner_cont a img {
  transition: .3s;
}

.top_medical .list_cont .inner_cont a h3 {
  color: #fff;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 22px;
  font-weight: 700;
  text-align: center;
}

.top_medical .list_cont .inner_cont a .en_title {
  display: block;
  margin-top: -3px;
  color: #fff;
  font-family: "Kalam", cursive;
  font-size: 13px;
  font-weight: 400;
  text-align: center;
}

.top_medical .list_cont .inner_cont a .inner_list_cont {
  /*width: 208px;*/
  width: 176px;
  /*height: 167px;*/
  height: 190px;
  margin: 14px auto 0;
  padding-top: 24px;
  padding-right: 10px;
  background-color: rgba(255, 255, 255, 0.95);
}

.top_medical .list_cont .inner_cont a .inner_list_cont li {
  margin-bottom: 10px;
  padding-left: 31px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  background-image: url("../images/check_icon_green.svg");
  background-repeat: no-repeat;
  background-position: 11px -3px;
  background-size: 14px 14px;
}

.top_medical .list_cont .inner_cont .list_cont_midashi {
  height: calc(100% - 225px);
}

.top_medical .list_cont .inner_cont a:hover img {
  transform: translateY(-5px);
}

.top_medical .list_cont .inner_cont:nth-of-type(1) a {
  padding-top:
    /*50*/
    30px;
}

.top_medical .list_cont .inner_cont:nth-of-type(1) a h3 {
  margin-top: 0;
}

.top_medical .list_cont .inner_cont:nth-of-type(2) {
  background-color: #edb377;
}

.top_medical .list_cont .inner_cont:nth-of-type(2) a {
  padding-top:
    /*43*/
    23px;
}

.top_medical .list_cont .inner_cont:nth-of-type(2) a h3 {
  margin-top: 2px;
}

.top_medical .list_cont .inner_cont:nth-of-type(2) a .inner_list_cont li {
  background-image: url("../images/check_icon_orange.svg");
}

.top_medical .list_cont .inner_cont:nth-of-type(3) a {
  padding-top:
    /*42*/
    22px;
}

.top_medical .list_cont .inner_cont:nth-of-type(3) a h3 {
  margin-top: 7px;
}

.top_medical .list_cont .inner_cont:nth-of-type(4) {
  background-color: #edb377;
}

.top_medical .list_cont .inner_cont:nth-of-type(4) a {
  padding-top:
    /*48*/
    20px;
}

.top_medical .list_cont .inner_cont:nth-of-type(4) a h3 {
  margin-top: 14px;
}

.top_medical .list_cont .inner_cont:nth-of-type(4) a .inner_list_cont li {
  background-image: url("../images/check_icon_orange.svg");
}

.top_medical .list_cont .inner_cont:nth-of-type(5) a {
  padding-top:
    /*34*/
    40px;
}

.top_medical .list_cont .inner_cont:nth-of-type(5) a h3 {
  margin-top: 7px;
}

.top_medical .list_cont .inner_cont:nth-of-type(6) {
  background-color: #edb377;
}

.top_medical .list_cont .inner_cont:nth-of-type(6) a {
  padding-top: 17px;
}

.top_medical .list_cont .inner_cont:nth-of-type(6) a h3 {
  margin-top: 10px;
}

.top_medical .list_cont .inner_cont:nth-of-type(6) a .inner_list_cont {
  padding-top:
    /*15*/
    -5px;
}

.top_medical .list_cont .inner_cont:nth-of-type(6) a .inner_list_cont li {
  background-image: url("../images/check_icon_orange.svg");
}

.top_medical .list_cont .inner_cont:nth-of-type(7) a {
  padding-top:
    /*33*/
    13px;
}

.top_medical .list_cont .inner_cont:nth-of-type(7) a h3 {
  margin-top: 10px;
}

.top_medical .list_cont .inner_cont:nth-of-type(8) {
  background-color: #edb377;
}

.top_medical .list_cont .inner_cont:nth-of-type(8) a {
  padding-top:
    /*35*/
    15px;
}

.top_medical .list_cont .inner_cont:nth-of-type(8) a h3 {
  margin-top: 12px;
}

.top_medical .list_cont .inner_cont:nth-of-type(8) a .inner_list_cont li {
  background-image: url("../images/check_icon_orange.svg");
}

.top_medical .list_cont .inner_cont:nth-of-type(9) a {
  padding-top:
    /*36*/
    16px;
}

.top_medical .list_cont .inner_cont:nth-of-type(9) a h3 {
  margin-top: 16px;
}

.top_medical .list_cont .inner_cont:nth-of-type(10) .list_cont_midashi {
  padding-top: 3px;
}

.top_medical .list_cont .inner_cont:nth-of-type(10) {
  background-color: #edb377;
}

.top_medical .list_cont .inner_cont:nth-of-type(10) a .inner_list_cont li {
  background-image: url("../images/check_icon_orange.svg");
}

.top_medical .list_cont .inner_cont:nth-of-type(10) a h3 {
  margin-top: 13px;
}

.top_medical .list_cont .inner_cont:nth-of-type(10) a .inner_list_cont li {
  font-size: 12px;
}

.top_medical .list_cont .inner_cont:nth-of-type(11) a {
  padding-top:
    /*39*/
    19px;
}

.top_medical .list_cont .inner_cont:nth-of-type(11) a h3 {
  margin-top: 10px;
}

.top_medical .list_cont .inner_cont:nth-of-type(12) a h3 {
  margin-top: 10px;
}

.top_medical .list_cont .inner_cont:nth-of-type(12) {
  background-color: #edb377;
}

.top_medical .list_cont .inner_cont:nth-of-type(12) a .inner_list_cont li {
  background-image: url("../images/check_icon_orange.svg");
}

.top_medical .list_cont .inner_cont:nth-of-type(13) a h3 {
  margin-top: 10px;
}

.top_medical .list_cont .inner_cont:nth-of-type(13) a .inner_list_cont li {
  font-size: 12px;
}

.top_medical .list_cont .inner_cont:nth-of-type(14) {
  background-color: #edb377;
}

.top_medical .list_cont .inner_cont:nth-of-type(14) a .inner_list_cont li {
  background-image: url("../images/check_icon_orange.svg");
}

.top_medical .list_cont .inner_cont:nth-of-type(14) a h3 {
  margin-top: 10px;
}

/* Top Instagrm */
.top_instagram .box1 {
  height: 445px;
  margin-bottom: 0;
}

.top_instagram .box1 .insta_cont {
  width: 1200px;
  height: 234px;
  margin-top: 10px;
}

.top_instagram .box1 .insta_cont .link_btn {
  width: 234px;
  height: 234px;
  float: right;
}

.top_instagram h2 {
  padding: 0 0 0 69px;
  color: #92c975;
  font-family: "Kalam", cursive;
  font-size: 40px;
  letter-spacing: 2px;
  background-image: url("../images/top_insta_info_icon.svg"), url("../images/top_title_deco_icon.png");
  background-size: 54px 37px, 73px 25px;
  background-repeat: no-repeat;
  background-position: 0 9px, 272px 22px;
}

/* Greeting */
.top_greeting {
  height: 736px;
  background-color: #f8f3e8;
  overflow: hidden;
}

.top_greeting .box1 {
  position: relative;
  height: 736px;
  margin-bottom: 0;
  padding-top: 64px;
  background-image: url("../images/top_greeting_bg_img.png");
  background-repeat: no-repeat;
  background-position: 68px 43px;
  background-size: 923px 675px;
}

.top_greeting .flex_cont {
  display: flex;
  justify-content: space-between;
}

.top_greeting .flex_cont .inner_cont_01 {
  width: 330px;
  height: auto;
  margin-top: -52px;
}

.top_greeting .flex_cont .inner_cont_01 h3 {
  margin-bottom: -3px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 30px;
  text-align: center;
  letter-spacing: 4px;
  background-image: url("../images/top_greeting_title_deco.png");
  background-repeat: no-repeat;
  background-position: 50px 32px;
}

.top_greeting .flex_cont .inner_cont_01 h3 span {
  color: #63b838;
}

.top_greeting .flex_cont .inner_cont_01 .en_title {
  display: block;
  margin-bottom: 34px;
  color: #9acf7f;
  font-family: "Kalam", cursive;
  text-align: center;
  letter-spacing: 2px;
}

.top_greeting .flex_cont .inner_cont_02 {
  position: relative;
  width: 777px;
}

.top_greeting .flex_cont .inner_cont_02 .img_01 {
  position: absolute;
  top: -82px;
  left: 412px;
  width: 286px;
  height: 305px;
  z-index: 10;
}

.top_greeting .flex_cont .inner_cont_02 .img_02 {
  position: absolute;
  top: 127px;
  left: 553px;
  width: 344px;
  height: 285px;
  z-index: 0;
}

.top_greeting .flex_cont .inner_cont_02 .text_01 {
  position: absolute;
  top: 54px;
  left: 0;
  width: 470px;
  letter-spacing: 1.6px;
  line-height: 2.4;
  z-index: 20;
}

.top_greeting .flex_cont .inner_cont_02 .text_01 .shadow {
  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, 0 0 5px #fff, 0 0 5px #fff;
}

.top_greeting .flex_cont .inner_cont_02 .text_01 .position {
  display: inline-block;
  margin-top: 16px;
  margin-right: 3px;
  color: #edb377;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 15px;
  font-weight: 700;
}

.top_greeting .flex_cont .inner_cont_02 .text_01 .name {
  display: inline-block;
  margin-top: 16px;
  color: #edb377;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 18px;
  font-weight: 700;
}

.top_greeting .flex_cont .inner_cont_02 .btn_01 {
  position: absolute;
  top: 383px;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 232px;
  height: 48px;
  padding-right: 16px;
  color: #92c975;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 1px;
  background-color: #fff;
  border: 1px solid #92c975;
  border-radius: 50px;
}

.top_greeting .flex_cont .inner_cont_02 .btn_01::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 37px;
  width: 6px;
  height: 9px;
  background-image: url("../images/top_greeting_btn_icon.svg");
  background-repeat: no-repeat;
  transition: .3s;
}

.top_greeting .flex_cont .inner_cont_02 .btn_01:hover::after {
  right: 32px;
}

.top_greeting .flex_cont .inner_cont_02 .btn_02 {
  position: absolute;
  top: 383px;
  left: 240px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 284px;
  height: 48px;
  padding-right: -13px;
  color: #92c975;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 1px;
  background-color: #fff;
  border: 1px solid #92c975;
  border-radius: 50px;
}

.top_greeting .flex_cont .inner_cont_02 .btn_02::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 37px;
  width: 6px;
  height: 9px;
  background-image: url("../images/top_greeting_btn_icon.svg");
  background-repeat: no-repeat;
  transition: .3s;
}

.top_greeting .flex_cont .inner_cont_02 .btn_02:hover::after {
  right: 32px;
}

/* bnr */
.top_bnr_cont {
  display: flex;
  justify-content: space-around;
  align-items: center;
  width: 776px;
  height: 130px;
  margin: 0 auto;
}

.top_bnr_cont a {
  transition: .3s;
}

.top_bnr_cont a:hover {
  transform: translateY(-5px);
}

/* FOOTER ------------------------------------------------------------- */
footer {
  background-color: #e9f8e2;
  height: 1000px;
}

footer .footer_cont {
  width: 1200px;
  margin: 0 auto;
}

footer .footer_cont .flex_cont {
  display: flex;
  justify-content: space-between;
}

footer .footer_cont .flex_cont .inner_cont_01 {
  position: relative;
  width: 600px;
}

footer .footer_cont .flex_cont .inner_cont_01 .footer_nav_list {
  position: absolute;
  top: 0;
  left: 0;
}

footer .footer_cont .flex_cont .inner_cont_01 .footer_nav_list li {
  position: relative;
  margin: 17px 0;
  padding-left: 26px;
}

footer .footer_cont .flex_cont .inner_cont_01 .footer_nav_list li a {
  display: block;
  width: 100%;
  height: 100%;
  font-size: 16px;
  font-weight: 500;
}

/* リンク先準備中（クリック不可） （リンク先#の場合）*/
footer .footer_cont .flex_cont .inner_cont_01 .footer_nav_list li a[href="#"]{
  pointer-events: none;
  position:relative;
}
footer .footer_cont .flex_cont .inner_cont_01 .footer_nav_list li a[href="#"]:before{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  position: absolute;
  top:0;
  left: 0;
  color: #fff;
  background: rgba(0, 0, 0, 0.5);
  content: "受付停止中";
  z-index: 10;
}

footer .footer_cont .flex_cont .inner_cont_01 .footer_nav_list li::before {
  position: absolute;
  content: "";
  top: 5px;
  left: 0;
  width: 17px;
  height: 16px;
  background-image: url("../images/footer_navi_icon.svg");
  background-repeat: no-repeat;
  transition: .3s;
}

footer .footer_cont .flex_cont .inner_cont_01 .footer_nav_list li:hover::before {
  top: 5px;
  left: 5px;
}

footer .footer_cont .flex_cont .inner_cont_01 .footer_nav_list.f_list_01 {
  top: 121px;
  left: 0;
}

footer .footer_cont .flex_cont .inner_cont_01 .footer_nav_list.f_list_02 {
  top: 121px;
  left: 220px;
}

footer .footer_cont .flex_cont .inner_cont_01 .footer_nav_list.f_list_03 {
  top: 121px;
  left: 388px;
}

footer .footer_cont .flex_cont .inner_cont_02 {
  width: 580px;
  padding-top: 97px;
}

footer .footer_cont .flex_cont .inner_cont_02 .footer_logo {
  display: block;
  width: 406px;
  height: 83px;
  margin: 0 auto 0;
}

footer .footer_cont .flex_cont .inner_cont_02 .footer_address {
  display: block;
  text-align: center;
  margin: 19px auto 0;
}

footer .footer_cont .flex_cont .inner_cont_02 .footer_tel {
  position: relative;
  display: table;
  margin: -6px auto 0;
  padding-left: 40px;
  color: #60a03f;
  font-family: 'Roboto', sans-serif;
  font-size: 40px;
  letter-spacing: 2px;
  z-index: 2000;
}

footer .footer_cont .flex_cont .inner_cont_02 .footer_tel::before {
  content: "";
  position: absolute;
  top: 20px;
  left: 0;
  width: 29px;
  height: 29px;
  background-image: url(../images/tel_icon.svg);
}

footer .footer_cont .flex_cont .inner_cont_02 .footer_sche {
  position: relative;
  margin-top: 5px;
}

footer .footer_cont .flex_cont .inner_cont_02 .footer_sche .sche_btn {
  position: absolute;
  top: 150px;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 250px;
  height: 40px;
  color: #92c975;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 1px;
  background-color: #fff;
  border: 1px solid #92c975;
  border-radius: 50px;
  transition: .3s;
}

footer .footer_cont .flex_cont .inner_cont_02 .footer_sche .sche_btn:hover {
  transform: translateY(-5px);
}

footer .g_map_cont {
  position: relative;
  width: 100%;
  height: 423px;
}

footer .g_map_cont .map_info_01 {
  position: absolute;
  top: 212px;
  left: 354px;
  width: 181px;
  height: 181px;
  z-index: 10;
}

footer .g_map_cont .map_info_02 {
  position: absolute;
  top: 212px;
  left: 546px;
  width: 181px;
  height: 181px;
  z-index: 10;
}

footer .g_map_cont .map_cont {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 423px;
}

footer .g_map_cont .map_cont iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

footer .copy {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 78px;
  color: #fff;
  font-size: 13px;
  background-color: #92c975;
}

/* /FOOTER ------------------------------------------------------------- */
/* -----------------------------------------------------------------------------------------------------
-- UNDER COMMON CONT 
----------------------------------------------------------------------------------------------------- */
/* TITLE ------------------------ */
.title_cont_01 {
  display: table;
  margin: 0 auto;
  background-image: url("../images/top_title_deco_icon.png");
  background-position: center 71px;
  background-repeat: no-repeat;
}

.title_cont_01 .en_sub_title {
  display: block;
  color: #92c975;
  font-family: "Kalam", cursive;
  font-size: 40px;
  text-align: center;
  letter-spacing: 2px;
}

.title_cont_01 h2,
.title_cont_01 h3 {
  display: block;
  margin-top: 32px;
  color: #666666;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 26px;
  text-align: center;
  letter-spacing: 1px;
}

.title_03 {
  position: relative;
  margin: 120px 0 40px;
  padding-left: 74px;
  font-size: 28px;
  font-weight: 700;
  font-family: fot-tsukuardgothic-std, sans-serif;
  line-height: 1;
  letter-spacing: 6px;
}

.title_03::before {
  content: "";
  position: absolute;
  top: -20px;
  left: 14px;
  width: 51px;
  height: 52px;
  background-image: url("../images/title_deco_img_01.png");
  background-size: cover;
  z-index: 0;
}

.title_04 {
  position: relative;
  margin: 40px 0 20px;
  padding: 0 0 0 32px;
  font-family: "解ミン 宙 R", Kaimin Sora Regular, sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.4;
}

.title_04::before {
  font-family: "Font Awesome 5 Free";
  content: "\f138";
  font-weight: 900;
  position: absolute;
  font-size: 1em;
  left: 0;
  top: 2px;
  color: #7db45f;
}

.title_05 {
  position: relative;
  margin: 40px 0 20px;
  padding: 0 0 0 32px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
}

.title_05::before {
  content: "■";
  font-weight: 900;
  position: absolute;
  font-size: 10px;
  left: 20px;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
  color: #7db45f;
}

.title_06 {
  margin: 40px 0 20px;
  padding-left: 40px;
  color: #614c3f;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 24px;
  font-weight: 700;
  text-indent: -40px;
  line-height: 1.4;
}

.title_06:first-letter {
  padding-right: 10px;
  color: #7db45f;
  font-size: 30px;
}

.fz01 {
  font-size: 90%;
}

.fz02 {
  font-size: 80%;
}

.fz03 {
  font-size: 60%;
}

.cont_wrap {
  position: relative;
  margin-bottom: 80px !important;
  padding: 0 40px;
}

.cont_wrap_02 {
  margin-bottom: 40px;
}

.sec_inner_cont {
  width: 1200px;
  height: auto;
  margin: 0 auto 120px;
}

.page_info_cont {
  display: flex;
  justify-content: space-between;
  padding: 10px 20px;
  border-left: 1px solid #7db45f;
  border-right: 1px solid #7db45f;
}

.page_info_cont .text_cont {
  width: 60%;
}

.page_info_cont .img_cont {
  width: 38%;
}

.page_list_cont {
  width: 60%;
  height: auto;
  margin: 80px 20px 0;
  padding: 40px;
  background-color: rgba(217, 148, 173, 0.1);
  border: 2px solid #7db45f;
  border-radius: 10px;
}

.page_list_cont .title {
  display: inline-block;
  margin-bottom: 20px;
  font-family: "解ミン 宙 R", Kaimin Sora Regular;
  font-size: 20px;
  border-bottom: 1px solid #7db45f;
}

.page_list_cont ul {
  margin-left: 10px;
}

.page_list_cont ul li {
  position: relative;
  display: block;
  padding: 0 0 0 14px;
  line-height: 34px;
}

.page_list_cont ul li::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 5px;
  height: 5px;
  background-color: #d994ad;
  border-radius: 50%;
  transition: .3s;
}

.page_list_cont ul li a {
  font-size: 17px;
  font-weight: 500;
  transition: .3s;
}

.page_list_cont ul li a:hover {
  font-weight: 700;
}

.page_list_cont ul li:hover::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -5px;
  transform: translateY(-50%);
  width: 16px;
  height: 17px;
  background-color: rgba(255, 255, 255, 0);
  border-radius: 0%;
  background-image: url("../images/top_medical_info_title_deco.png");
}

.first_cont {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.last_cont {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.dis_block {
  display: block;
}

.img_right {
  float: right;
  margin: 0 0 20px 40px;
}

.img_center {
  margin: 20px auto;
}

.bdr_none {
  border: none;
}

/* INFO TEXT */
.info_01 {
  margin: 40px 0;
  padding: 10px 40px;
  color: #666666;
  font-size: 18px;
  line-height: 1.8;
  border-left: 1px solid #7db45f;
  border-right: 1px solid #7db45f;
}

.info_01 a {
  font-weight: 700;
  text-decoration: underline !important;
}

.info_02 {
  margin: 24px 0;
  padding: 0 20px;
}

.info_03 {
  margin: 16px 0;
  padding: 0 20px;
}

/* FIGURE */
.fig_01 {
  width: 90%;
  height: auto;
  margin: 40px auto;
}

.fig_01 img {
  max-width: 100%;
}

.fig_01 figcaption {
  margin: 5px 0;
  text-align: center;
}

/* LIST */
.list_01 {
  margin: 30px 0 30px 50px;
}

.list_01 li {
  margin: 10px 0;
  list-style: disc;
}

.list_01 li a {
  font-weight: 700;
}

.list_02 {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 20px 50px;
}

.list_02 li {
  width: 25%;
  margin: 5px 0;
  list-style: disc;
}

.list_ol_01 {
  counter-reset: list_count;
  list-style-type: none;
  margin: 24px 0 24px 20px;
}

.list_ol_01 li {
  position: relative;
  margin: 10px 0;
  padding-left: 24px;
}

.list_ol_01 li::before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  counter-increment: list_count;
  content: counter(list_count) ".";
  display: inline-block;
  color: #7db45f;
  font-size: 22px;
  font-weight: bold;
}
.list_ol_01.list_ol_top li::before{
	top:-7px;
	transform:none;
}

.list_cont_01 {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
  margin: 0 0 40px 0 !important;
}

.list_cont_01 li {
  width: 45%;
  margin-bottom: 20px;
  list-style: none;
}

.list_cont_01 li figure {
  margin-bottom: 10px;
}

.list_cont_01 li figure img {
  max-width: 100%;
}

.list_cont_01 li .info_text {
  width: 80%;
  margin: 0 auto;
  font-size: 16px;
  line-height: 1.4;
}

/* FLEX_CONTENT */
.flex_cont_00 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  margin: 0 auto;
}

.flex_cont_00 .img_cont {
  width: 48%;
  align-items: center;
}

.flex_cont_00 .text_cont {
  width: 48%;
}

dl.faq_cont {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 40px;
}

dl.faq_cont dt.q_lettet {
  width: 50px;
  margin-bottom: 20px;
  color: #0d2b50;
  font-size: 24px;
  font-weight: 700;
}

dl.faq_cont dd.q_text {
  width: 90%;
  margin-bottom: 20px;
  padding-top: 10px;
  font-size: 16px;
}

dl.faq_cont dt.a_lettet {
  width: 50px;
  color: #235087;
  font-size: 24px;
  font-weight: 700;
}

dl.faq_cont dd.a_text {
  width: 90%;
  padding-top: 10px;
  font-size: 16px;
}

/* TABLE */
/* --01 */
.table_01 {
  width: 90%;
  margin: 0 auto;
  border-collapse: collapse;
  border: 1px solid #5F9EA0;
}

.table_01 th {
  padding: 5px 0;
  color: white;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
  background-color: #5F9EA0;
}

.table_01 th:first-of-type {
  border-right: 1px solid #FFF;
}

.table_01 td {
  padding: 10px 0;
  font-size: 18px;
  text-align: center;
  border-collapse: collapse;
  border: 1px solid #5F9EA0;
}

/* --02 */
.table_02 {
  width: 90%;
  margin: 0 auto;
  border-collapse: collapse;
  border: 1px solid #5F9EA0;
}

.table_02 th {
  padding: 5px 0;
  color: white;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  background-color: #5F9EA0;
  border-right: 1px solid #FFF;
}

.table_02 th:last-of-type {
  border-right: 1px solid #5F9EA0;
}

.table_02 td {
  padding: 10px;
  font-size: 14px;
  text-align: center;
  border-collapse: collapse;
  border: 1px solid #5F9EA0;
}

.table_title_01 {
  width: 90%;
  margin: 0 auto 1px;
  padding: 5px 0;
  color: #fff;
  background-color: #5F9EA0;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
}

.table_info_text_01 {
  width: 90%;
  margin: 5px auto 0;
  font-size: 14px;
}

/* STAFF ---------------------------------------------------------
------------------------------------------------------------------ */
.staff .page_link {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 80px;
  gap: 0 30px;
}

.staff .page_link li {
  width: auto;
  height: 60px;
  margin-bottom: 5px;
}

.staff .page_link li a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 0 10px;
  color: #7db45f;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 18px;
  font-weight: 700;
  background-position: center;
}

.staff .page_link li a::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 2px;
  background-color: #999;
}

.staff .page_link li a::before {
  content: "\f107";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -15px;
  width: 11px;
  height: 40px;
  color: #7db45f;
  font-family: "Font Awesome 5 Free";
  font-size: 16px;
  transition: .3s;
}

.staff .page_link li a:hover {
  /*color: $main_color;
        background-color: #fff;
        background-image: url("../images/navi_hover_icon.png");
        background-repeat: no-repeat;
        background-size: 30px auto;
        background-position: center;*/
}

.staff .page_link li a:hover::before {
  bottom: -18px;
}

.staff .page_link li a:hover::after {
  background-color: #edb377;
}

.staff .flex_cont_01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 80%;
  margin: 0 auto 40px;
}

.staff .flex_cont_01 .img_cont {
  width: 40%;
  align-items: center;
}

.staff .flex_cont_01 .img_cont figure {
  position: relative;
  width: 80%;
  margin: 0 auto;
}

.staff .flex_cont_01 .img_cont figure img {
  width: 286px;
}

.staff .flex_cont_01 .img_cont figure .sub {
  position: absolute;
  top: 260px;
  left: -160px;
  width: 260px;
  height: auto;
}

.staff .flex_cont_01 .img_cont figure .sub02 {
  position: absolute;
  top: 260px;
  left: -160px;
  width: 200px;
  height: auto;
}

.staff .flex_cont_01 .img_cont figure.sub_cont {
  height: 600px;
}

.staff .flex_cont_01 .text_cont {
  width: 60%;
}

.staff .flex_cont_01 .text_cont .tit03 {
  margin: 0px 0 20px;
}

.staff .flex_cont_01 .text_cont .info {
  display: block;
  margin-bottom: 5px;
}

.staff .flex_cont_01 .text_cont .info .s_title {
  display: block;
  margin-right: 5px;
  color: #7db45f;
  font-weight: 700;
}

.staff .flex_cont_01 .text_cont .name_cont {
  margin-bottom: 20px;
  color: #7db45f;
  font-family: fot-tsukuardgothic-std, sans-serif;
  text-align: right;
}

.staff .flex_cont_01 .text_cont .name_cont span {
  display: inline-block;
}

.staff .flex_cont_01 .text_cont .name_cont .position {
  margin-right: 10px;
  font-size: 24px;
  font-weight: 700;
}

.staff .flex_cont_01 .text_cont .name_cont .dr_name {
  font-size: 30px;
  font-weight: 700;
}

.staff .flex_cont_01 .text_cont .name_cont .en {
  color: #999999;
  font-family: Times New Roman;
  font-size: 16px;
  letter-spacing: 2px;
}

.staff .flex_cont_02 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  margin: 0 auto 40px;
}

.staff .flex_cont_02.colms_3 .img_cont {
  width: 33%;
}

.staff .flex_cont_02.colms_3 .carr_cont:nth-of-type(2) {
  width: 31%;
  background-color: #fff;
}

.staff .flex_cont_02.colms_3 .carr_cont:nth-of-type(3) {
  width: 31%;
  background-color: #fff;
}

.staff .flex_cont_02 .img_cont .dr_name_cont {
  font-weight: 700;
  text-align: center;
}

.staff .flex_cont_02 .img_cont .dr_name_cont .position {
  display: block;
  font-size: 14px;
  font-weight: 700;
}

.staff .flex_cont_02 .img_cont .dr_name_cont .dr_name {
  font-size: 20px;
  font-weight: 700;
}

.staff .flex_cont_02 .carr_cont {
  width: 48%;
  padding: 40px 36px;
  border: 10px solid rgba(125, 180, 95, 0.4);
  background-color: #fff;
  background-image: url("../images/top_feature_title_img_sp.png");
  background-repeat: no-repeat;
  background-position: right 20px bottom 10px;
  /* 経歴 */
  /* 資格・所属学会 */
}

.staff .flex_cont_02 .carr_cont .carr_tit_01 {
  display: table;
  margin: 0 auto 40px;
  padding-bottom: 10px;
  font-size: 24px;
  font-weight: 700;
  color: #7db45f;
  font-family: "解ミン 宙 R", Kaimin Sora Regular, sans-serif;
  text-align: center;
  line-height: 1;
  letter-spacing: 0;
  border-bottom: 1px solid #7db45f;
}

.staff .flex_cont_02 .carr_cont .carr_tit_01:nth-of-type(n+2) {
  margin-top: 60px;
  margin-bottom: 40px;
}

.staff .flex_cont_02 .carr_cont table {
  width: 100%;
  margin-bottom: 12px;
  border-collapse: collapse;
  border-spacing: 0;
}

.staff .flex_cont_02 .carr_cont table th {
  width: 140px;
  padding: 5px 0;
  font-weight: bold;
  border-bottom: 1px solid #7db45f;
}

.staff .flex_cont_02 .carr_cont table td {
  width: auto;
  padding: 15px 0;
  border-bottom: 1px solid #7db45f;
}

.staff .flex_cont_02 .carr_cont ul {
  margin: 25px 0 0;
}

.staff .flex_cont_02 .carr_cont ul li {
  margin: 0;
  /*padding: 15px 0;*/
  padding: 12px 0;
  font-size: 16px;
  list-style: none;
}

.staff .flex_cont_02 .carr_cont ul.s_text li {
  font-size: 13px;
}

.staff .flex_mov_cont {
  display: flex;
  justify-content: space-around;
}

.staff .flex_mov_cont a {
  width: 45%;
  height: auto;
}

.staff .movies_cont {
  margin-top: 120px;
}

.image_flex {
  display: flex;
  float: right;
  padding: 0 0 80px 0;
}

.image_flex img {
  width: 250px;
  padding-left: 40px;
}

.staff_image01 {
  /* width: 300px; */
  /* margin: 0 0 0 auto; */
  /* padding: 30px 0 60px 0; */

  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 2%;
  margin-block: 30px 60px;
}

.staff_image01 img {
  width: 49%;
  margin: 0;
}

.staff_image01 img:nth-child(n + 3) {
  margin-top: 10px;
}


.rec_movie_cont{
	position: relative;
	aspect-ratio:16 / 9;
	width:100%;
	height:auto;
}
.rec_movie_cont iframe{
	width:100%;
	height:100%;
}

.rec_movie_cont iframe,
.rec_movie_cont .video-cover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.rec_movie_cont .video-cover{
  z-index: 2;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #000;
}
.video-cover img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.rec_movie_cont.is-playing .video-cover {
  display: none;
}
/* PRICE ---------------------------------------------------------
------------------------------------------------------------------ */
.price .tit02 {
  margin: 80px 0 40px;
  padding-left: 0;
}

.price .tit02::before {
  display: none;
}

.price .tit03 {
  margin: 40px 0 20px;
  color: #744f20;
}

.price .page_link {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
  margin: 80px auto 20px;
  /*&::after{
  	content: "";
  	width: calc(100% / 4 - 5px);
  }*/
}

.price .page_link li {
  width: calc(100% / 5 - 40px);
  height: 60px;
  margin: 5px 20px 0;
}

.price .page_link li a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 0 10px;
  color: #7db45f;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 18px;
  font-weight: 700;
  background-position: center;
}

.price .page_link li a::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 2px;
  background-color: #999;
}

.price .page_link li a::before {
  content: "\f107";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -15px;
  width: 11px;
  height: 40px;
  color: #7db45f;
  font-family: "Font Awesome 5 Free";
  font-size: 16px;
  transition: .3s;
}

.price .page_link li a:hover {
  /*color: $main_color;
        background-color: #fff;
        background-image: url("../images/navi_hover_icon.png");
        background-repeat: no-repeat;
        background-size: 30px auto;
        background-position: center;*/
}

.price .page_link li a:hover::before {
  bottom: -18px;
}

.price .page_link li a:hover::after {
  background-color: #edb377;
}

.price .price_tbl {
  border-collapse: collapse;
  white-space: nowrap;
  border: 2px solid #7db45f;
  /*width: 800px;*/
  /*width: 900px;*/
  width:100%;
  font-size: 18px;
}

.price .price_tbl th {
  width: 250px;
  padding: 5px 40px;
  color: #fff;
  font-weight: 500;
  text-align: center;
  background-color: rgba(125, 180, 95, 0.8);
  border: 2px solid #7db45f;
  width: 33%;
}

.price .price_tbl td {
  padding: 5px 40px;
  border: 2px solid #7db45f;
}

.price .tax_info {
  display: block;
  width: 548px;
  font-size: 18px;
  font-weight: 700;
  color: #c96a20;
}

.price .sub_info {
  margin-left: 10px;
}

.price .mt_cut {
  margin: 60px 0 40px;
}

.price .dog_cat {
  margin: 10px 0 0 10px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 24px;
  font-weight: 700;
}

.price .dog_cat+ul {
  margin-top: 0 !important;
}

/* CLINIC ---------------------------------------------------------
------------------------------------------------------------------ */
.clinic {
  /* SLIDE */
  /**/
}

.clinic .page_link {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 80px;
  /*&::after{
    	content: "";
    	width: calc(100% / 4 - 5px);
    }*/
}

.clinic .page_link li {
  width: auto;
  height: 60px;
  margin: 0 20px 5px;
}

.clinic .page_link li a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 0 10px;
  color: #7db45f;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 18px;
  font-weight: 700;
  background-position: center;
}

.clinic .page_link li a::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 2px;
  background-color: #999;
}

.clinic .page_link li a::before {
  content: "\f107";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -15px;
  width: 11px;
  height: 40px;
  color: #7db45f;
  font-family: "Font Awesome 5 Free";
  font-size: 16px;
  transition: .3s;
}

.clinic .page_link li a:hover {
  /*color: $main_color;
          background-color: #fff;
          background-image: url("../images/navi_hover_icon.png");
          background-repeat: no-repeat;
          background-size: 30px auto;
          background-position: center;*/
}

.clinic .page_link li a:hover::before {
  bottom: -18px;
}

.clinic .page_link li a:hover::after {
  background-color: #edb377;
}

.clinic .box2 {
  width: 800px;
  margin: 0 auto;
}

.clinic .clinic_slide_wrap .slide_text {
  position: absolute;
  bottom: 10px;
  left: 20px;
  color: #fff;
  background: #7db45f;
  padding: 10px 20px;
  font-weight: bold;
  border-radius: 5px;
}

.clinic #thumbnail-list::after {
  content: "";
  width: 24%;
}

.clinic .clinic_slide_wrap .thumbnail-item {
  flex: 0 1 24%;
  margin-bottom: 10px;
  box-sizing: border-box;
  position: relative;
  cursor: pointer;
  transition: .3s;
}

.clinic .facility_flex_cont {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.clinic .facility_flex_cont li {
  width: calc(100% / 2 - 10px);
  margin-bottom: 20px;
}

.clinic .facility_flex_cont li figure {
  margin-bottom: 20px;
}

.clinic .facility_flex_cont li h3 {
  position: relative;
  margin: 20px 0 15px;
  padding-left: 43px;
  color: #666666;
  font-size: 20px;
  font-weight: 700;
  font-family: fot-tsukuardgothic-std, sans-serif;
  line-height: 1.4;
  letter-spacing: 1px;
}

.clinic .facility_flex_cont li h3::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  height: 40px;
  background-image: url(../images/title_deco_02.svg);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 0;
}

.clinic .facility_flex_cont li p {
  padding: 0 10px;
}

/* FIRST ---------------------------------------------------------
------------------------------------------------------------------ */
.first .page_link,
.care_salon .page_link {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin-top: 80px;
}

.first .page_link li,
.care_salon .page_link li {
  width: auto;
  height: 60px;
  margin: 0 10px 50px 10px;
}

.first .page_link li a,
.care_salon .page_link li a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 0 10px;
  color: #7db45f;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 18px;
  font-weight: 700;
  background-position: center;
}

.first .page_link li a::after,
.care_salon .page_link li a::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 2px;
  background-color: #999;
}

.first .page_link li a::before,
.care_salon .page_link li a::before {
  content: "\f107";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -15px;
  width: 11px;
  height: 40px;
  color: #7db45f;
  font-family: "Font Awesome 5 Free";
  font-size: 16px;
  transition: .3s;
}

.first .page_link li a:hover {
  /*color: $main_color;
        background-color: #fff;
        background-image: url("../images/navi_hover_icon.png");
        background-repeat: no-repeat;
        background-size: 30px auto;
        background-position: center;*/
}

.first .page_link li a:hover::before,
.care_salon .page_link li a:hover::before {
  bottom: -18px;
}

.first .page_link li a:hover::after,
.care_salon .page_link a:hover::after {
  background-color: #edb377;
}

.first .info_01 {
  font-size: 18px;
}

.first .step_cont {
  position: relative;
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 80px;
  padding: 30px 60px;
  background-color: rgba(160, 180, 132, 0.2);
  border: 10px solid rgba(125, 180, 95, 0.8);
  border-radius: 20px;
}

.first .step_cont::after {
  content: "";
  position: absolute;
  bottom: -67px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 30px 70px 0 70px;
  border-color: #2D6606 transparent transparent transparent;
}

.first .step_cont:last-child::after {
  display: none;
}

.first .step_cont.arrow_none::after {
  display: none;
}

.first .step_cont .text_cont {
  width: 50%;
}

.first .step_cont .text_cont .title_head {
  background-image: url("../images/nikukyu_icon.svg");
  background-repeat: no-repeat;
  background-position: 78px 0;
}

.first .step_cont .text_cont .title_head .step {
  color: #2D6606;
  font-size: 20px;
}

.first .step_cont .text_cont .title_head .num {
  margin-right: 10px;
  font-size: 38px;
}

.first .step_cont .text_cont .title_head.sec_head {
  position: relative;
  display: inline-block;
  margin-bottom: 40px;
  padding-right: 80px;
}

.first .step_cont .text_cont .title_head.sec_head::after {
  content: "";
  position: absolute;
  bottom: -12px;
  left: 50%;
  transform: translateX(-50%);
  width: 90%;
  height: 10px;
  background-color: rgba(0, 0, 0, 0.2);
  border-radius: 100%;
}

.first .step_cont .text_cont h3 {
  position: relative;
  display: inline-block;
  margin-bottom: 40px;
  padding:0;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 32px;
  font-weight: 700;
  letter-spacing: 0;
}

.first .step_cont .text_cont h3::after {
  content: "";
  position: absolute;
  bottom: -12px;
  left: 50%;
  transform: translateX(-50%);
  width: 90%;
  height: 10px;
  background-color: rgba(0, 0, 0, 0.2);
  border-radius: 100%;
}

.first .step_cont .img_cont {
  width: 40%;
}

.first .step_cont .img_cont .img_link_cont {
  display: block;
  width: 100%;
  height: 300px;
  transition: .3s;
}

.first .step_cont .img_cont .img_link_cont:hover {
  transform: translateY(-5px);
}

.first .step_cont .img_cont .img_link_cont img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  object-position: 0 0;
}

.first .step_cont .img_cont p {
  margin: 20px 0 0;
  font-weight: 700;
  text-align: center;
}

.first .tax_info {
  font-size: 18px;
  font-weight: 700;
  color: #c96a20;
}

.first .price_tbl {
  border-collapse: collapse;
  white-space: nowrap;
  border: 2px solid #7db45f;
  width: 800px;
  margin-left: 10px;
  font-size: 18px;
}

.first .price_tbl th {
  width: 250px;
  padding: 5px 40px;
  color: #fff;
  font-weight: 500;
  text-align: center;
  background-color: rgba(125, 180, 95, 0.8);
  border: 2px solid #7db45f;
}

.first .price_tbl td {
  padding: 5px 40px;
  border: 2px solid #7db45f;
}

.first .good_list_cont {
  display: flex;
  justify-content: flex-start;
}

.first .good_list_cont li {
  width: 200px;
  margin: 0 5px;
  padding: 30px 20px 10px;
  background-color: #9acf7f;
  border-radius: 10px;
  cursor: pointer;
  transition: .3s;
}

.first .good_list_cont li img {
  margin-bottom: 10px;
}

.first .good_list_cont li img.good_list_cont_img {
  margin: 17px auto 15px;
}

.first .good_list_cont li span {
  display: block;
  color: #fff;
  font-size: 22px;
  text-align: center;
}

.first .good_list_cont li:hover {
  transform: translateY(-5px);
}

.first .yoyaku_bnr {
  width: 500px;
  cursor: pointer;
  transition: .3s;
}

.first .yoyaku_bnr:hover {
  transform: translateY(-5px);
}

.first .step_cont_02 {
  display: flex;
  justify-content: space-between;
}

.first .step_cont_02 li {
  position: relative;
  width: calc(100% / 4 - 5px);
}

.first .step_cont_02 li img {
  width: 90%;
  height: 496px;
  margin-bottom: 20px;
}

.first .step_cont_02 li .step {
  margin-right: 5px;
  color: #7db45f;
  font-size: 24px;
}

.first .step_cont_02 li .num {
  margin-right: 30px;
  color: rgba(0, 0, 0, 0.6);
  font-size: 28px;
}

.first .step_cont_02 li h4 {
  display: block;
  width: 90%;
  margin: 0 auto 20px 0;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 24px;
  line-height: 1.4;
  border-bottom: 1px solid #7db45f;
}

.first .step_cont_02 li p {
  padding-right: 20px;
}

.first .step_cont_02 li::after {
  content: "";
  position: absolute;
  top: 28%;
  right: -15px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 30px 0 30px 16px;
  border-color: transparent transparent transparent #2D6606;
}

.first .step_cont_02 li:last-child::after {
  display: none;
}

.first .down_load_cont {
  padding: 40px;
  background-color: rgba(41, 184, 192, 0.4);
  border-radius: 20px;
}

.first .down_load_cont .title {
  position: relative;
  display: table;
  width: auto;
  margin: 0 auto 40px;
  padding: 20px 80px;
  color: #fff;
  font-size: 30px;
  font-weight: 700;
  background-color: #29b8c0;
  border-radius: 100px;
}

.first .down_load_cont .title::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 39px;
  width: 23px;
  height: 22px;
  background-image: url(../images/nikukyu_icon.svg);
}

.first .down_load_cont .title::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translate(0, -50%) rotate(-20deg);
  right: 39px;
  width: 23px;
  height: 22px;
  background-image: url(../images/nikukyu_icon.svg);
}

.first .down_load_cont .app_link_btn_cont {
  display: flex;
  justify-content: center;
}

.first .down_load_cont .app_link_btn_cont a {
  display: block;
  margin: 0 10px;
  transition: .3s;
}

.first .down_load_cont .app_link_btn_cont a:hover {
  transform: translateY(-5px);
}

.first .down_load_cont .info_cont {
  width: 80%;
  margin: 40px auto 20px;
  padding: 40px 0;
  text-align: center;
  border-top: 2px solid #29b8c0;
  border-bottom: 2px solid #29b8c0;
}

.first .down_load_cont .info_cont .title_02 {
  display: table;
  margin: 0 auto 40px;
  padding: 10px 40px;
  color: #fff;
  font-size: 26px;
  font-weight: 700;
  background-color: #29b8c0;
  border-radius: 10px;
}

.first .down_load_cont .info_cont p {
  padding: 10px 40px;
  background-color: #fff;
  border-radius: 5px;
}

.first .down_load_cont .app_link {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 320px;
  height: 67px;
  margin: 40px auto 0;
  padding-right: 30px;
  color: #fff;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 2px;
  background-color: #1A6EA3;
  border-radius: 100px;
}

.first .down_load_cont .app_link::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 53px;
  width: 8px;
  height: 12px;
  background-image: url(../images/btn_icon.svg);
  background-size: 8px 12px;
  transition: .3s;
}

.first .down_load_cont .app_link:hover {
  background-color: rgba(26, 110, 163, 0.7);
}

.first .down_load_cont .app_link:hover::after {
  right: 48px;
}

.first .flex_cont_03 {
  display: flex;
  justify-content: space-between;
  margin-bottom: 80px;
}

.first .flex_cont_03 .inner_cont {
  width: 48%;
  background-color: #629E44;
}

.first .flex_cont_03 .inner_cont h4 {
  position: relative;
  margin-left: 36px;
  padding: 20px 20px 20px 32px;
  color: #fff;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 22px;
  font-weight: 700;
}

.first .flex_cont_03 .inner_cont h4::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 4px;
  width: 23px;
  height: 22px;
  background-image: url(../images/nikukyu_icon.svg);
}

.first .flex_cont_03 .inner_cont p {
  padding: 0 40px;
  color: #fff;
  font-size: 18px;
}

.first .faq_list {
  margin: 24px 0 24px 30px;
}

.first .faq_list li {
  list-style: none;
  position: relative;
  margin: 10px 0;
  padding-left: 36px;
  font-size: 18px;
}

.first .faq_list li a:hover {
  color: #72ae53;
}

.first .faq_list li::before {
  content: "Q.";
  position: absolute;
  top: -5px;
  left: 0;
  color: #72ae53;
  font-family: Verdana, Geneva, "sans-serif";
  font-size: 20px;
  font-weight: 700;
}

.first .link_btn_02 {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 320px;
  height: 67px;
  margin: 40px auto 0;
  padding-right: 10px;
  color: #fff;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 2px;
  background-color: #629E44;
  border-radius: 100px;
}

.first .link_btn_02::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 23px;
  width: 8px;
  height: 12px;
  background-image: url(../images/btn_icon.svg);
  background-size: 8px 12px;
  transition: .3s;
}

.first .link_btn_02:hover {
  background-color: rgba(98, 158, 68, 0.7);
}

.first .link_btn_02:hover::after {
  right: 18px;
}

.first .link_btn_02.second_opinion {
  width: 460px;
}

.first .credit_logo {
  width: 600px;
}

.first .credit_logo img {
  margin: 0 auto 0 0;
  text-align: left;
}

.first .credit_logo figcaption {
  text-align: center;
}

.first .clinic_info_flex_cont {
  /*display: flex;
  justify-content: space-between;*/
  margin: 40px auto 0;
}

.first .clinic_info_flex_cont .info_list {
  /*width: 42%;*/
  width: 50%;
  margin: 0 auto;
}

.first .clinic_info_flex_cont .info_list li {
  position: relative;
  padding: 30px 10px 30px 55px;
  line-height: 1.4;
  border-top: 1px dashed #7db45f;
  font-size: 20px;
}

.first .clinic_info_flex_cont .info_list li.tel_num {
  color: #7db45f;
  font-size: 30px;
  font-weight: 700;
}

.first .clinic_info_flex_cont .info_list li:last-child {
  border-bottom: 1px dashed #7db45f;
}

.first .clinic_info_flex_cont .info_list li i {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  color: #7db45f;
  font-size: 40px;
}

.first .clinic_info_flex_cont .g_map_cont {
  width: 54%;
  height: 427px;
}

.first .clinic_info_flex_cont .g_map_cont .map_cont {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 427px;
}

.first .clinic_info_flex_cont .g_map_cont .map_cont iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.calendar iframe {
  width: 100%;
  height: 680px;
}

.sotomachi_mov{
	display:flex;
	justify-content:space-between;
}

.sotomachi_mov > div{
	width:48%;
	background-color:#eaf2e5;
	padding: 20px 10px;
}
.sotomachi_mov video{
	width:100%;
	height: 100%;
	max-height:500px;
}
/* RECRUIT ---------------------------------------------------------
------------------------------------------------------------------ */
/*.sec_inner_cont.recruit h3 {
  margin: 0 auto;
  padding: 96px 10px 50px;
  color: #666666;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 26px;
  font-weight: 500;
  text-align: center;
  line-height: 1.6;
  letter-spacing: 3px;
}*/

.philosophy {
  display: flex;
  justify-content: space-between;
}

.philosophy .left_box {
  width: 45%;
  margin-right: 5%;
  background-color: rgba(237, 179, 119, 0.1);
  padding: 2% 3%;
  position: relative;
}

.philosophy .left_box::after {
  position: absolute;
  content: "";
  border: solid 16px transparent;
  border-left: solid 16px #edb377;
  top: 50%;
  right: -70px;
}

.left_box h4,
.right_box h4 {
  position: relative;
  color: #666666;
  font-size: 24px;
  font-weight: 700;
  font-family: fot-tsukuardgothic-std, sans-serif;
  line-height: 1.4;
  letter-spacing: 2px;
  text-align: center;
  margin-bottom: 30px;
}

/*.left_box h4::before,.right_box h4::before{
	content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 30px;
    height: 40px;
    background-image: url(../images/title_deco_02.svg);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 0;
}*/
.left_box ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.left_box ul li {
  padding: 5px 12px;
  border: 1px solid #edb377;
  color: #edb377;
  width: 47%;
  text-align: center;
}

.left_box ul li:nth-child(1),
.left_box ul li:nth-child(2) {
  margin-bottom: 20px;
}

.philosophy .right_box {
  width: 45%;
  background-color: rgba(237, 179, 119, 0.1);
  padding: 2% 3%;
}

.right_box ul li span {
  color: #edb377;
}

.right_box ul li {
  font-weight: bold;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 18px;
}

.img_fl {
  display: block;
  position: relative;
  float: left;
  margin-right: 30px;
  margin-bottom: 0 !important;
  text-align: center;
}

.recruit_flow {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 30px;
}

.recruit_flow li {
  position: relative;
  color: #fff;
  background-color: #92c975;
  padding: 2% 5%;
  margin-right: 50px;
  display:flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
}

.recruit_flow li::after {
  position: absolute;
  content: "";
  border: solid 13px transparent;
  border-left: solid 13px #2D6606;
  top: 50%;
  transform:translateY(-50%);
  right: -45px;
}

.recruit_flow li:last-child {
  margin-right: 0;
}

.recruit_flow li:last-child::after {
  display: none;
}

.recruit .page_link {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 30px;
}

.recruit .page_link li {
  width: auto;
  height: 60px;
  margin: 0 50px 50px;
}

.recruit .page_link li a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 0 10px;
  color: #7db45f;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 18px;
  font-weight: 700;
  background-position: center;
}

.recruit .page_link li a::before {
  content: "\f107";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -15px;
  width: 11px;
  height: 40px;
  color: #7db45f;
  font-family: "Font Awesome 5 Free";
  font-size: 16px;
  transition: .3s;
}

.recruit .page_link li a::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 2px;
  background-color: #999;
}

.btn_entry {
  text-align: center;
  margin: 50px auto 40px;
}

.btn_entry a {
  color: #fff;
  font-weight: bold;
  font-size: 1.2em;
  background-color: #edb377;
  border-radius: 10px;
  padding: 20px 80px;
  letter-spacing: 2;
}

/* MEDICAL ---------------------------------------------------------
------------------------------------------------------------------ */
.medical .page_link {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 80px;
  gap: 0 30px;
}

.medical .page_link li {
  width: auto;
  height: 60px;
  margin-bottom: 5px;
}

.medical .page_link li a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 0 10px;
  color: #7db45f;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 18px;
  font-weight: 700;
  background-position: center;
}

.medical .page_link li a::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 2px;
  background-color: #999;
}

.medical .page_link li a::before {
  content: "\f107";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -15px;
  width: 11px;
  height: 40px;
  color: #7db45f;
  font-family: "Font Awesome 5 Free";
  font-size: 16px;
  transition: .3s;
}

.medical .page_link li a:hover {
  /*color: $main_color;
        background-color: #fff;
        background-image: url("../images/navi_hover_icon.png");
        background-repeat: no-repeat;
        background-size: 30px auto;
        background-position: center;*/
}

.medical .page_link li a:hover::before {
  bottom: -18px;
}

.medical .page_link li a:hover::after {
  background-color: #edb377;
}

.medical .list_01 {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 20px 50px;
}

.medical .list_01 li {
  position: relative;
  list-style: none;
  width: auto;
  margin: 5px 50px 5px 0;
  padding-left: 26px;
  font-size: 18px;
  font-weight: 700;
}

.medical .list_01 li::before {
  content: '\f1b0';
  position: absolute;
  top: -6px;
  left: -5px;
  width: 24px;
  height: 40px;
  color: #a78b57;
  font-family: "Font Awesome 5 Free";
  font-size: 24px;
  z-index: 0;
}

.medical .list_02 {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 20px 50px;
}

.medical .list_02 li {
  position: relative;
  list-style: none;
  width: calc(100% / 3 - 40px);
  margin: 5px 40px 5px 0;
  padding-left: 24px;
  font-size: 18px;
  font-weight: 700;
}

.medical .list_02 li::before {
  content: '\f14a';
  position: absolute;
  top: 0;
  left: 0;
  width: 24px;
  height: 40px;
  color: #edb377;
  font-family: "Font Awesome 5 Free";
  z-index: 0;
}

.medical .list_02 li:hover::before {
  color: #7db45f;
}

.medical .blog_link_02 {
  position: relative;
  display: table;
  margin: 40px auto 20px;
  padding: 10px 80px;
  font-size: 16px;
  color: #fff;
  text-align: center;
  background-color: #72ae53;
  border-radius: 50px;
}

.medical .blog_link_02::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 53px;
  width: 8px;
  height: 12px;
  background-image: url(../images/btn_icon.svg);
  background-size: 8px 11px;
  background-repeat: no-repeat;
  transition: .3s;
}

.medical .blog_link_02 i {
  margin: 0 10px;
}

.medical .blog_link_02::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 53px;
  width: 8px;
  height: 12px;
  background-image: url(../images/btn_icon.svg);
  background-size: 8px 11px;
  background-repeat: no-repeat;
  transition: .3s;
}

.medical .blog_link_02:hover {
  background-color: rgba(114, 174, 83, 0.7);
}

.medical .blog_link_02:hover::after {
  right: 33px;
}


.medical .title_dog {
  position: relative;
  margin: 80px 0 40px;
  color: #666666;
  padding-left: 43px;
  font-size: 28px;
  font-weight: 700;
  font-family: fot-tsukuardgothic-std, sans-serif;
  line-height: 1.4;
  letter-spacing: 2px;
}

.medical .title_dog::before {
  content: '\f6d3';
  position: absolute;
  top: -4px;
  left: 0;
  color: #a78b57;
  font-family: "Font Awesome 5 Free";
  font-size: 35px;
  z-index: 0;
}

.medical .title_cat {
  position: relative;
  margin: 80px 0 40px;
  color: #666666;
  padding-left: 43px;
  font-size: 32px;
  font-weight: 700;
  font-family: fot-tsukuardgothic-std, sans-serif;
  line-height: 1.4;
  letter-spacing: 2px;
}

.medical .title_cat::before {
  content: '\f6be';
  position: absolute;
  top: -4px;
  left: 0;
  color: #a78b57;
  font-family: "Font Awesome 5 Free";
  font-size: 35px;
  z-index: 0;
}

.medical .info_02 img {
  width: 340px;
  height: auto;
}

.medical .info_02::after {
  display: block;
  clear: both;
  content: "";
}

.medical .point_cont {
  position: relative;
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 20px;
  padding: 30px 40px;
  background-color: rgba(237, 179, 119, 0.1);
  border: 10px solid #edb377;
  border-radius: 20px;
}

.medical .point_cont:nth-child(odd) {
  flex-direction: row-reverse;
}

.medical .point_cont .text_cont {
  width: 58%;
}

.medical .point_cont .text_cont .title_head {
  background-image: url("../images/nikukyu_icon.svg");
  background-repeat: no-repeat;
  background-position: 90px 0;
}

.medical .point_cont .text_cont .title_head .step {
  color: #edb377;
  font-size: 20px;
}

.medical .point_cont .text_cont .title_head .num {
  margin-right: 10px;
  font-size: 38px;
}

.medical .point_cont .text_cont h3 {
  position: relative;
  display: inline-block;
  margin-bottom: 40px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0;
  letter-spacing: -1px;
}

.medical .point_cont .text_cont h3.fz_22 {
  font-size: 20px;
}

.medical .point_cont .text_cont h3::after {
  content: "";
  position: absolute;
  bottom: -12px;
  left: 50%;
  transform: translateX(-50%);
  width: 90%;
  height: 10px;
  background-color: rgba(0, 0, 0, 0.2);
  border-radius: 100%;
}

.medical .point_cont .img_cont {
  width: 38%;
}

.medical .point_cont .img_cont video {
  margin: 43px 0;
  display: block;
  width: 100%;
}

.medical .point_cont .img_cont .img_link_cont {
  display: block;
  width: 100%;
  height: 300px;
  transition: .3s;
}

.medical .point_cont .img_cont .img_link_cont:hover {
  transform: translateY(-5px);
}

.medical .point_cont .img_cont .img_link_cont img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  object-position: 0 0;
}

.medical .point_cont .img_cont p {
  margin: 20px 0 0;
  font-weight: 700;
  text-align: center;
}

.medical .step_cont {
  position: relative;
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 0;
  padding: 30px;
  background-color: #fdf9f4;
  overflow: hidden;
}

.medical .step_cont:nth-of-type(even) {
  background-color: #fff;
}

.medical .step_cont::before {
  content: "";
  position: absolute;
  top: 0;
  left: 79px;
  width: 4px;
  height: 100%;
  background-color: #fabd39;
  z-index: 0;
}

.medical .step_cont:first-of-type::before {
  top: 50%;
}

.medical .step_cont:last-of-type::before {
  top: -50%;
}

.medical .step_cont .num_cont {
  width: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.medical .step_cont .num_cont .num {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 56px;
  height: 56px;
  color: #fff;
  text-align: center;
  font-size: 36px;
  background-color: #fabd39;
  border-radius: 100%;
  z-index: 1;
}

.medical .step_cont .text_cont {
  display: flex;
  align-items: center;
  width: 580px;
}

.medical .step_cont .text_cont h3 {
  position: relative;
  display: inline-block;
  margin-bottom: 20px;
  color: #9dcd75;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0;
}

.medical .step_cont .text_cont p {
  font-size: 16px;
}

.medical .step_cont .img_cont {
  width: 320px;
}

.medical .step_cont .img_cont .img_link_cont {
  display: block;
  width: 100%;
  height: 300px;
  transition: .3s;
}

.medical .step_cont .img_cont .img_link_cont:hover {
  transform: translateY(-5px);
}

.medical .step_cont .img_cont .img_link_cont img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  object-position: 0 0;
}

.medical .step_cont .img_cont p {
  margin: 20px 0 0;
  font-weight: 700;
  text-align: center;
}

.medical .tax_alt_text {
  color: #c96a20;
  font-size: 18px;
  font-weight: 700;
}

.medical .medical_tbl {
  border-collapse: collapse;
  white-space: nowrap;
  border: 2px solid #7db45f;
  width: 800px;
  margin-left: 10px;
  font-size: 18px;
}

.medical .medical_tbl th {
  width: 250px;
  padding: 5px 40px;
  color: #fff;
  font-weight: 500;
  text-align: center;
  background-color: rgba(125, 180, 95, 0.8);
  border: 2px solid #7db45f;
}

.medical .medical_tbl td {
  padding: 5px 40px;
  border: 2px solid #7db45f;
}
.medical .link_cont {
  margin-top: 80px;
  padding: 70px 0;
  background-color: rgba(114, 174, 83, 0.2);
  border-radius: 20px;
}

.medical .link_cont .reserve_link {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 500px;
  height: 60px;
  margin: 0 auto 40px;
  padding: 0 40px;
  font-size: 24px;
  color: #fff;
  background-color: #1A6EA3;
  border-radius: 50px;
}

.medical .link_cont .reserve_link i {
  margin: 0 20px;
}

.medical .link_cont .reserve_link::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 53px;
  width: 8px;
  height: 12px;
  background-image: url(../images/btn_icon.svg);
  background-size: 8px 11px;
  background-repeat: no-repeat;
  transition: .3s;
}

.medical .link_cont .reserve_link:hover {
  background-color: rgba(26, 110, 163, 0.7);
}

.medical .link_cont .reserve_link:hover::after {
  right: 33px;
}

.medical .link_cont .blog_link {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 800px;
  height: 60px;
  margin: 0 auto 20px;
  padding: 0 40px;
  font-size: 24px;
  color: #fff;
  background-color: #72ae53;
  border-radius: 50px;
}

.medical .link_cont .blog_link i {
  margin: 0 20px;
}

.medical .link_cont .blog_link::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 53px;
  width: 8px;
  height: 12px;
  background-image: url(../images/btn_icon.svg);
  background-size: 8px 11px;
  background-repeat: no-repeat;
  transition: .3s;
}

.medical .link_cont .blog_link:hover {
  background-color: rgba(114, 174, 83, 0.7);
}

.medical .link_cont .blog_link:hover::after {
  right: 33px;
}

.medical .alt_text {
  font-size: 17px;
  font-weight: 700;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 60%, rgba(178, 230, 255, 0.5) 60%, rgba(178, 230, 255, 0.5) 90%, rgba(255, 255, 255, 0) 90%);
}

.medical .alt_text_01 {
  color: #edb377;
  font-weight: 700;
}

.medical .alt_text_02 {
  color: #9acf7f;
  font-weight: 700;
}

.medical .alt_text_03 {
  font-weight: 700;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 60%, rgba(178, 230, 255, 0.5) 60%, rgba(178, 230, 255, 0.5) 90%, rgba(255, 255, 255, 0) 90%);
}

.medical .alt_text_04 {
  font-weight: 700;
  background: linear-gradient(to bottom, transparent 60%, #faee3970 60%);
}

.medical .list_ol_01 li {
  font-size: 120%;
  font-weight: 700;
}

.small_text {
  font-size: 17px;
}

.vertical_align_middle {
  vertical-align: middle;
}

.clinic .facility_flex_cont.medical li {
  width: calc(100% / 2 - 65px);
}

.clinic .facility_flex_cont.medical li img {
  border-radius: 20px;
}

/* 動画を囲うdiv */
.video {
  position: relative;
  width: 100%;
  /* 横幅は100%にしておく(ここを変えたい場合は実装コード2の方法を確認してください) */
  height: 0;
  /* 高さは0にしておく(padding-topで高さを指定するため) */
  padding-top: 56.25%;
  /* 高さを指定(16:9) */
}

/* YouTube埋め込み用のiframe */
.video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* CONTACT ---------------------------------------------------------
------------------------------------------------------------------ */
.tb04 {
  width: 100%;
  border-spacing: 1px;
  border-collapse: separate;
  background-color: #f0f0f0;
}

.tb04 td,
.tb04 th {
  padding: 12px 36px;
}

.tb04 th {
  font-weight: bold;
  text-align: left;
  color: #666;
  background-color: #FAFAFA;
  font-size: 16px;
  word-wrap: break-word;
}

.tb04 th span {
  font-size: 13px;
}

.tb04 td {
  background-color: #ffffff;
  color: #666666;
}

.table_note {
  font-size: 90%;
  padding-top: 40px;
}

.table_note li {
  line-height: 1.8;
}

.table_note li:before {
  top: 10px;
}

.tb04 input {
  height: 28px;
  width: 70%;
}

.tb04 .contact_radio input {
  margin-right: 20px;
  height: auto;
  width: auto;
}

/*ご希望*/
.tb04 .request tr td input[type="checkbox"] {
  width: 20px;
  margin-right: 10px;
  vertical-align: middle;
}

.tb04 .request tr td span:last-of-type input[type="checkbox"] {
  margin-left: 20px;
}

form textarea {
  border: 1px solid #ccc;
  width: 70%;
}

.submit_btn {
  padding-top: 40px;
  text-align: center;
  font-size: 16px;
}

.submit_btn input[type="reset"] {
  display: inline-block;
  width: 200px;
  height: 44px;
  margin-right: 40px;
  border: solid 1px #7db45f;
  color: #7db45f;
  transition: ease-in-out 0.3s;
  cursor: pointer;
  border-radius: 5px;
}

.submit_btn input[type="reset"]:hover {
  background-color: rgba(125, 180, 95, 0.7);
  color: #fff;
  transition: ease-in-out 0.3s;
}

.submit_btn input[type="submit"] {
  display: inline-block;
  width: 300px;
  height: 44px;
  margin-right: 40px;
  border: solid 1px #7db45f;
  background-color: #7db45f;
  color: #5c9dc6;
  transition: ease-in-out 0.3s;
  color: #fff;
  cursor: pointer;
  border-radius: 5px;
}

.submit_btn input[type="submit"]:hover {
  background-color: rgba(125, 180, 95, 0.7);
  color: #fff;
  transition: ease-in-out 0.3s;
}

.required {
  margin-left: 20px;
  padding: 6px 10px;
  background-color: #d37777;
  border-radius: 3px;
  color: #fff;
}

/* THANKS ------- */
.thanks .cont_wrap {
  margin-top: 80px;
}

/* CONTACT ---------------------------------------------------------
------------------------------------------------------------------ */
.single .profile_cont {
  width: 100%;
  min-height: 200px;
  margin-bottom: 50px;
  padding: 30px 20px;
  box-shadow: 0 0 5px #e8e8e8;
  border-radius: 15px;
}

.single .profile_cont .flex_cont {
  display: flex;
  justify-content: space-around;
}

.single .profile_cont .flex_cont figure {
  width: 20%;
}

.single .profile_cont .flex_cont figure figcaption {
  margin-top: 10px;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  transition: .3s;
}

.single .profile_cont .flex_cont figure figcaption:hover {
  transform: translateY(-2px);
}

.single .profile_cont .flex_cont figure figcaption a {
  color: #7db45f;
}

.single .profile_cont .flex_cont .info_cont {
  width: 70%;
}

.single .profile_cont .flex_cont .info_cont .title {
  margin-bottom: 20px;
  font-size: 18px;
  font-weight: 700;
}

.single .profile_cont .flex_cont .info_cont .name {
  display: block;
  margin-bottom: 5px;
  font-size: 24px;
  font-weight: 700;
}

.single .profile_cont .flex_cont .info_cont .name .sub_name {
  font-size: 20px;
}

.single .profile_cont .flex_cont .info_cont .carr_list {
  list-style-position: outside;
  margin: 20px 0;
}

.single .profile_cont .flex_cont .info_cont .carr_list li {
  list-style: disc;
  margin-left: 30px;
}

.single .profile_cont .flex_cont .info_cont .carr_list.no_style li {
  list-style: none;
  margin-left: 10px;
}

.single .profile_cont .flex_cont .info_cont .link_btn_02 {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  height: 40px;
  margin: 10px 10px auto 0;
  padding: 0 40px 0 22px;
  color: #fff;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 2px;
  background-color: #629E44;
  border-radius: 100px;
}

.single .profile_cont .flex_cont .info_cont .link_btn_02::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 23px;
  width: 8px;
  height: 12px;
  background-image: url(../images/btn_icon.svg);
  background-size: 8px 12px;
  transition: .3s;
}

.single .profile_cont .flex_cont .info_cont .link_btn_02:hover {
  background-color: rgba(98, 158, 68, 0.7);
}

.single .profile_cont .flex_cont .info_cont .link_btn_02:hover::after {
  right: 18px;
}

/*top_belief*/
.top_belief {
  background: url(../images/top_belief_bg.png) no-repeat;
  background-size: 100% auto;
  padding-top: 50px;
}

.top_belief .box1 {
  /*	margin-bottom: 200px;*/
}

.top_belief_nav {
  margin: 120px auto 0;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 46px;
  flex-wrap: wrap;
}

.top_belief_nav_item {
  display: block;
}

.top_belief_nav_item img {
  display: block;
  width: 180px;
  max-width: 100%;
  height: auto;
}

.top_belief_nav_item:nth-child(1),
.top_belief_nav_item:nth-child(4) {
  transform: translateY(-60px);
}

.top_belief_nav_item:hover {
  opacity: 0.8;
}

.top_belief_box {
  margin: 60px auto;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
}

.top_belief_txt {
  padding: 30px 50px;
  width: 590px;
}
.top_belief_txt,.top_belief.recruit_berief .top_belief_box .top_belief_txt{
	max-width: 590px;
  	width: 48%;
}
.top_belief_txt .main_txt {
  margin-top: 10px;
}

.top_belief_txt h2 {
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 22px;
  letter-spacing: 2px;
}

.top_belief_txt h2::first-letter {
  font-size: 30px;
  font-weight: bold;
}

.top_belief_txt h2 span {
  font-family: "Kalam", cursive;
}

.top_belief_txt.be_green {
  background: #e3f1d7;
}

.top_belief_txt.be_green h2::first-letter,
.top_belief_txt.be_green strong {
  color: #79b838;
}

.top_belief_txt.be_pink {
  background: #f8edde;
}

.top_belief_txt.be_pink h2::first-letter,
.top_belief_txt.be_pink strong {
  color: #eda967;
}

.top_belief_txt.be_yellow {
  background: #f3f3d4;
}

.top_belief_txt.be_yellow h2::first-letter,
.top_belief_txt.be_yellow strong {
  color: #ccbe30;
}

.top_belief_txt.be_blue {
  background: #e7edea;
}

.top_belief_txt.be_blue h2::first-letter,
.top_belief_txt.be_blue strong {
  color: #49a877;
}

.first .top_belief,
.top_belief.recruit_berief{
  padding-top: 100px;
  margin: 0 calc(50% - 50vw);
  width: 99vw;
  background: url(../images/top_belief_first_bg.png) no-repeat;
  background-size: 100% auto;
}

.mission {
  background: url(../images/mission_bg.png) no-repeat;
  background-size: cover;
  padding: 100px;
  margin: 0 calc(50% - 50vw);
  width: 99vw;
  background-position: center top;
  height: 830px;
}

.vision,.purpose {
  background: url(../images/vision_bg.png) no-repeat;
  background-size: cover;
  padding: 100px;
  margin: 0 calc(50% - 50vw);
  width: 99vw;
  background-position: center top;
}
.purpose{
	background: url("../images/first/purpose_bg.jpg") no-repeat center center;
}
.mission .text,
.vision .text,
.purpose .text{
  background: #ffffffa8;
  position: relative;
  display: table;
  margin: 50px auto;
  padding: 50px;
  color: #666666;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 26px;
  font-weight: 500;
  text-align: center;
  line-height: 1.6;
  letter-spacing: 3px;
}

.first .title_cont_01,.recruit .title_cont_01 {
  filter: drop-shadow(0 0 5px #fff) drop-shadow(0 0 10px #fff) drop-shadow(0 0 10px #fff);
}

/*reCAPTCHAのロゴ（バッジ）を非表示*/
.grecaptcha-badge { visibility: hidden; }

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

  $second_opinion

==================================================================*/
.second_opinion .sec_inner_cont {
  margin-top: 80px;
}

.second_opinion .head {}

.second_opinion .head p:nth-child(1) {
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 32px;
  letter-spacing: 4px;
  text-align: center;
  margin-bottom: 30px;
}

.second_opinion .head p:nth-child(2) {}


.second_opinion .layout03 .layout03_title {
  width: 40%;
}

.second_opinion_bnr {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}

.second_opinion_bnr a:hover {
  transform: translate(0, -3px);
  transition: .3s;
  opacity: 0.8;
}

.flex{
  display: flex;
  gap: 2%;
}
.mt00{
	margin-top:0!important;
}




.chat_sns {
  display: flex;
  justify-content: center;
  gap: 16px;
  padding: 80px 0 60px;
}
.chat_sns_link {
  color: #60a03f;
  font-size: 32px;
  line-height: 1;
}