@charset "UTF-8";
/***************************************************************
全体
***************************************************************/
.inner {
  margin-right: auto;
  margin-left: auto;
  max-width: 1200px;
  width: 90%;
}

/*-----------------------
sp 続きを見る
-----------------------*/
.sp-txt-show__trigger,
.sp-txt-show__btn {
  display: none;
}

/*--------------------------------------------------------------
フォント
--------------------------------------------------------------*/
body {
  font-family: Meiryo, "Hiragino Kaku Gothic ProN", "MS PGothic", Sans-Serif;
  animation: fadeIn 3s ease 0s 1 normal;
  -webkit-animation: fadeIn 3s ease 0s 1 normal;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/*--------------------------------------------------------------
リンク
--------------------------------------------------------------*/
a {
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

/***************************************************************
ヘッダー
***************************************************************/
.header-title {
  font-size: 14px;
  padding: 10px 0 10px 12.5%;
}

/*--------------------------------------------------------------
パソコン用
--------------------------------------------------------------*/
/* 固定
--------------------------------------------------------------*/
.header-inner {
  position: absolute;
  top: 40px;
  width: 100%;
  height: 82px;
  padding: 5px 0;
  background: rgba(255, 255, 255, 0.8);
  z-index: 5;
}

/* テーブル
--------------------------------------------------------------*/
header #pc {
  display: table;
  table-layout: fixed;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* ロゴ
--------------------------------------------------------------*/
header #pc .logo {
  display: table-cell;
  width: 25%;
  vertical-align: middle;
}

header #pc .logo a {
  display: inline-block;
  color: #333;
  font-size: 25px;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
}

header #pc .logo a span {
  display: block;
  color: #333;
  font-size: 12px;
  font-weight: bold;
}

header #pc .logo a span img {
  display: ineline-block;
  vertical-align: middle;
  width: 25px;
  height: 25px;
  padding: 0 10px 0 0;
}

/* メニュー
--------------------------------------------------------------*/
header #pc .menu {
  display: table-cell;
  width: 75%;
  vertical-align: middle;
  padding: 0 0 0 5%;
  font-size: 0;
}

.menu__item {
  display: inline-block;
  width: 25%;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
  -webkit-transform: skewX(150deg);
  transform: skewX(150deg);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.menu__item:nth-of-type(2),
.menu__item:nth-of-type(3),
.menu__item:nth-of-type(4),
.menu__item:nth-of-type(6),
.menu__item:nth-of-type(7),
.menu__item:nth-of-type(8) {
  border-color: #fff;
  border-width: 0 0 0 1px;
  border-style: solid;
}

.menu__item:hover {
  background: rgba(0, 0, 0, 0.2);
}

.menu__link,
.nav-btn {
  display: inline-block;
  padding: 5px;
  color: #ffc300;
  font-size: 14px;
  font-weight: bold;
  text-decoration: none;
  -webkit-transform: skewX(-150deg);
  transform: skewX(-150deg);
}

.nav-btn {
  line-height: 1;
}

.menu__item a span,
.nav-btn span {
  display: block;
  margin: 5px 0 0 0;
  font-family: 'Indie Flower', cursive;
  color: #333;
  font-size: 12px;
  font-weight: bold;
}

.nav-parent {
  position: relative;
  z-index: 5;
}

.nav-list-wrapper {
  -webkit-transform: skewX(-150deg);
  transform: skewX(-150deg);
}

.nav-list {
  margin-left: -100px;
  position: absolute;
  left: 50%;
  width: 200px;
  z-index: 5;
}

.nav-list__item {
  list-style: none;
}

.nav-list__item:not(:last-child) {
  border-bottom: 1px solid #EEE;
}

.nav-list__link {
  background: #989898;
  color: #ffc300;
  display: block;
  font-size: 14px;
  font-weight: bold;
  padding: 10px 15px 5px;
  text-decoration: none;
  -webkit-transition: .3s;
  transition: .3s;
}

.nav-list__link:hover {
  background: #666;
}

/*--------------------------------------------------------------
タブレット&スマートフォン用
--------------------------------------------------------------*/
/* 固定
--------------------------------------------------------------*/
header #sp {
  display: none;
}

/* オープン時
--------------------------------------------------------------*/
header #sp nav.global_menu ul {
  display: none;
}

/*ロゴ*/
header #sp nav.global_menu ul li:nth-of-type(1) {
  display: none;
}

header #sp nav.global_menu ul li:nth-of-type(1) a {
  display: none;
}

header #sp nav.global_menu ul li:nth-of-type(1) a span {
  display: none;
}

header #sp nav.global_menu ul li:nth-of-type(1) a span img {
  display: none;
}

/*トグル*/
header #sp nav.global_menu ul li:nth-of-type(2) {
  display: none;
}

header #sp nav.global_menu ul li:nth-of-type(2) a {
  display: none;
}

/* クローズ時
--------------------------------------------------------------*/
/*領域*/
header #sp #category_list {
  display: none;
}

/*グローバルナビゲーション*/
header #sp #category_list ul.globalnavi {
  display: none;
}

header #sp #category_list ul.globalnavi li {
  display: none;
}

header #sp #category_list ul.globalnavi li:nth-of-type(n+3) {
  display: none;
}

header #sp #category_list ul.globalnavi li a {
  display: none;
}

/*まずはお気軽にお問い合わせください*/
header #sp #category_list .inquiry {
  display: none;
}

header #sp #category_list .inquiry .text p {
  display: none;
}

header #sp #category_list .inquiry .telephone {
  display: none;
}

header #sp #category_list .inquiry .telephone a {
  display: none;
}

header #sp #category_list .inquiry .telephone a i {
  display: none;
}

header #sp #category_list .inquiry .link a {
  display: none;
}

header #sp #category_list .inquiry .link a span:nth-of-type(1) {
  display: none;
}

header #sp #category_list .inquiry .link a span:nth-of-type(2) {
  display: none;
}

header #sp #category_list .inquiry .link a span:nth-of-type(2) i {
  display: none;
}

/*閉じる*/
header #sp p.list_close {
  display: none;
}

/***************************************************************
フッター
***************************************************************/
footer {
  border-top: 3px solid #ffc300;
  padding-top: 30px;
  position: relative;
}

.page-top {
  background: #FFF;
  border-color: #ffc300;
  border-radius: 8px 8px 0 0;
  border-style: solid;
  border-width: 3px 3px 0 3px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #ffc300;
  cursor: pointer;
  font-size: 14px;
  height: 50px;
  padding-top: 15px;
  position: absolute;
  top: -50px;
  right: 13%;
  text-align: center;
  width: 150px;
}

.page-top i {
  margin-right: 5px;
}

/*--------------------------------------------------------------
インフォ
--------------------------------------------------------------*/
/*footer-info*/
.footer-info__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.footer-info__item {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  list-style: none;
  padding: 10px;
  vertical-align: middle;
}

.footer-info__item:nth-child(1),
.footer-info__item:nth-child(2) {
  width: 500px;
}

.footer-info__item:nth-child(3) {
  width: 600px;
}

/*reservation line*/
.reservation,
.line {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: table;
  table-layout: fixed;
  width: 100%;
}

.reservation {
  border: 5px solid #ffc300;
  border-radius: 20px;
  overflow: hidden;
}

.reservation__txt,
.reservation__img,
.line__txt,
.line__img {
  display: table-cell;
}

.reservation__txt {
  padding: 15px 0;
  text-align: center;
  vertical-align: middle;
  width: 70%;
}

.reservation__txt01,
.reservation__txt02 {
  display: inline-block;
  font-weight: bold;
  vertical-align: middle;
}

.reservation__txt01 {
  font-size: 24px;
}

.reservation__txt02 {
  background: #ff8383;
  border-radius: 8px;
  color: #FFF;
  font-size: 18px;
  margin-left: 20px;
  padding: 10px 20px;
  white-space: nowrap;
}

.reservation__tac {
  text-align: center;
}

.reservation__txt03 {
  display: inline-block;
  font-size: 24px;
  margin-top: 30px;
  padding: 0 6px 0 15px;
  position: relative;
  text-align: center;
}

.reservation__txt03::before,
.reservation__txt03::after {
  background: #333;
  content: "";
  height: 20px;
  position: absolute;
  top: 0;
  width: 1px;
}

.reservation__txt03::before {
  right: 0;
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
}

.reservation__txt03::after {
  left: 0;
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
}

.reservation__txt04 {
  color: #76b755;
  font-size: 32px;
  font-weight: bold;
  margin-top: 10px;
}

.reservation__txt04 i {
  display: inline-block;
  font-size: 48px;
  padding-right: 10px;
  vertical-align: middle;
}

.reservation__txt05 {
  color: #666;
  font-size: 12px;
  line-height: 1.3;
  padding: 5px 10px 0;
  text-align: left;
}

.tel-change {
  display: inline-block;
  font-weight: inherit;
}

.tel-change a {
  color: inherit;
  font-weight: inherit;
}

.reservation__img,
.line__img {
  vertical-align: bottom;
  width: 30%;
}

.reservation__img01,
.line__img01 {
  vertical-align: bottom;
}

.line {
  background-color: #00a734;
  background-image: url(image.php?id=8);
}

.line-wrapper {
  position: relative;
}

.line-wrapper:hover {
  opacity: .8;
}

.footer-line-link {
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.line__txt {
  color: #FFF;
  text-align: center;
  vertical-align: middle;
}

.line__txt-inner {
  display: inline-block;
}

.line__txt01 {
  border-bottom: 1px solid #FFF;
  font-size: 48px;
  font-weight: bold;
  line-height: 1.2;
  padding-bottom: 15px;
}

.line__txt02 {
  font-size: 24px;
  font-weight: bold;
  margin-top: 20px;
}

/*open-close*/
.oc-table {
  font-size: 14px;
  width: 100%;
}

.oc-table thead {
  background: #76b755;
}

.oc-table th,
.oc-table td {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 12px 5px;
  text-align: center;
}

.oc-table__h-ttl,
.oc-table__h-txt {
  border-color: #FFF;
  border-style: solid;
  border-width: 0 1px 0 0;
  color: #FFF;
}

.oc-table__h-txt:last-child {
  border-color: #76b755;
}

.oc-table__b-ttl,
.oc-table__b-txt {
  border-color: #76b755;
  border-style: solid;
  border-width: 0 1px 1px 1px;
}

.oc-table__b-txt {
  color: #76b755;
}

.open-close__box {
  text-align: center;
}

.open-close__close {
  margin: 20px 0;
}

.open-close__txt {
  background: #ffc300;
  border-radius: 8px;
  color: #FFF;
  display: inline-block;
  font-weight: bold;
  padding: 10px 25px;
  text-align: center;
}

/*symptom*/
.symptom {
  background-image: url(image.php?id=7);
  background-color: #4baee6;
  background-position: center;
  padding: 20px 10px;
}

.symptom__ttl {
  color: #FFF;
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 30px;
  text-align: center;
}

.symptom__item {
  background: #FFF;
  border-radius: 8px;
  color: #0060d0;
  display: inline-block;
  font-weight: bold;
  list-style: none;
  margin: 0 5px 10px 0;
  padding: 10px 30px;
  text-align: center;
}

/*--------------------------------------------------------------
メニュー
--------------------------------------------------------------*/
/* 領域
--------------------------------------------------------------*/
footer #menu {
  margin: 20px 0 0 0;
  padding: 20px 0;
  background: url(/image.php?id=5);
}

/* テーブル
--------------------------------------------------------------*/
footer #menu .wrapper {
  display: table;
  table-layout: fixed;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* セル
--------------------------------------------------------------*/
footer #menu .wrapper .content {
  display: table-cell;
  vertical-align: top;
}

footer #menu .wrapper .content:nth-of-type(1) {
  padding: 0 10px 0 0;
}

footer #menu .wrapper .content:nth-of-type(2) {
  padding: 0 5px;
}

footer #menu .wrapper .content:nth-of-type(3) {
  padding: 0 0 0 10px;
}

/* 見出し（参照：https://saruwakakun.com/html-css/reference/ribbon）
--------------------------------------------------------------*/
footer #menu .wrapper .content .midasi .ribbon {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 80%;
  padding: 7px 0;
  background: #D2B48C;
  font-family: 'Indie Flower', cursive;
  color: #fff;
  font-size: 14px;
  letter-spacing: 2px;
  text-align: center;
}

footer #menu .wrapper .content .midasi .ribbon p {
  vertical-align: middle;
  margin: 0;
  padding: 0 40px;
  border-top: dashed 2px rgba(255, 255, 255, 0.5);
  border-bottom: dashed 2px rgba(255, 255, 255, 0.5);
  line-height: 38px;
  font-weight: bold;
}

footer #menu .wrapper .content .midasi .ribbon:before,
footer #menu .wrapper .content .midasi .ribbon:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}

footer #menu .wrapper .content .midasi .ribbon:before {
  top: 0;
  left: 0;
  border-width: 30px 0px 30px 15px;
  border-color: transparent transparent transparent transparent;
  border-style: solid;
}

footer #menu .wrapper .content .midasi .ribbon:after {
  top: 0;
  right: 0;
  border-width: 30px 15px 30px 0px;
  border-color: transparent transparent transparent transparent;
  border-style: solid;
}

/* リンク
--------------------------------------------------------------*/
footer #menu .wrapper .content .link {
  margin: 20px 0 0 0;
}

footer #menu .wrapper .content .link p {
  padding-left: 10px;
  position: relative;
}

footer #menu .wrapper .content .link p::before {
  color: green;
  content: "\f105";
  font-family: "FontAwesome";
  font-size: 18px;
  margin-top: -10px;
  position: absolute;
  left: 0;
  top: 50%;
}

footer #menu .wrapper .content .link p a {
  display: inline-block;
  padding: 5px;
  color: #fff;
  font-size: 14px;
  letter-spacing: 2px;
  text-decoration: none;
}

footer #menu .wrapper .content .link p a:hover {
  background: rgba(0, 0, 0, 0.2);
}

/*--------------------------------------------------------------
著作権
--------------------------------------------------------------*/
footer #copyright {
  padding: 10px 0;
  background: url(/image.php?id=6);
  font-size: 0;
  text-align: center;
}

footer #copyright p {
  display: inline-block;
  color: #fff;
  font-size: 12px;
  letter-spacing: 2px;
}

footer #copyright p:nth-of-type(n+2) {
  padding: 0 0 0 10px;
}

/*--------------------------------------------------------------
ライン
--------------------------------------------------------------*/
.line-reserve.-footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  float: none;
  margin-top: 50px;
  width: 100%;
}

.line-reserve.-footer .line-reserve__btn {
  min-width: auto;
  width: 250px;
}

.line-reserve.-footer .line-reserve__txt {
  font-size: 14px;
}