@charset "UTF-8";
*,
*::before,
*::after {
  box-sizing: border-box; }

header, section, footer, aside, nav, article, figure {
  display: block;
  position: relative; }

html {
  height: 100%;
  -webkit-print-color-adjust: exact; }

html, body {
  margin: 0;
  padding: 0;
  font-style: normal;
  vertical-align: baseline;
  text-indent: 0;
  line-height: 1;
  color: #000; }

html, body, small, h1, h2, h3, h4, h5 {
  font-size: 1em; }

div, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  position: relative;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  font-family: "游ゴシック", "Yu Gothic", sans-serif;
  font-style: normal;
  text-indent: 0;
  list-style: none; }

table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  font-family: "游ゴシック", "Yu Gothic", sans-serif;
  font-style: normal;
  text-indent: 0;
  list-style: none; }

iframe {
  display: block;
  width: 100%;
  height: auto;
  border: none; }

img {
  display: block;
  width: 100%;
  height: auto; }

.fixImg {
  width: auto;
  height: auto; }

nav ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none; }

#container a,
footer a {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
  color: #0082b2;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out; }
  #container a:hover, #container a:active,
  footer a:hover,
  footer a:active {
    color: rgba(0, 130, 178, 0.7); }
  #container a:hover,
  footer a:hover {
    opacity: 0.7; }

del {
  text-decoration: line-through; }

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

th {
  font-weight: normal; }

td, th {
  line-height: 1.3em; }

input,
select {
  vertical-align: middle; }

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

area {
  cursor: pointer !important; }

section p,
.section p {
  margin-bottom: 1em;
  line-height: 1.8em; }

#contents ul,
#contents ol,
#contents dl {
  margin-bottom: 1em;
  margin-top: 1em; }

#contents li,
#contents dd {
  line-height: 1.5em; }

#contents ul li {
  margin-left: 0em;
  padding-left: normal; }

.low #contents section ol:not(.flow) li,
.low #contents .section ol:not(.flow) li {
  margin-left: 1.5em;
  list-style: decimal;
  padding-left: normal; }

/* clearfix -------------*/
.cf {
  zoom: 1; }

.cf:before,
.cf:after,
#hdUpper:after,
header:after,
header nav:after,
#container:after,
footer:after,
#contents:after,
#contents section:after,
#contents .sectiion:after,
#sidebar section:after,
#sidebar .section:after,
#bread:after,
footer:after,
#btInfo:after,
.innerL:after,
.innerM:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden; }

.cf,
.float_block {
  overflow: hidden; }

/* Layout Document */
/* Layout Basic block   //////////////////////////////////////*/
body {
  line-height: 1.6;
  color: #000; }

header nav ul {
  margin: 0 auto; }

#contents {
  width: 100%;
  max-width: 1600px;
  margin: auto;
  padding-left: 3%;
  padding-right: 3%; }
  @media only screen and (max-width: 560px) {
    #contents {
      width: 100%; } }
  .home #contents {
    max-width: 100%;
    padding-left: 0;
    padding-right: 0; }

footer {
  padding: 40px 3% 20px 3%; }
  @media only screen and (max-width: 560px) {
    footer {
      padding: 15px 0 80px 0; } }

.innerL {
  max-width: 1800px;
  margin: 0 auto; }

.innerM {
  max-width: 1200px;
  margin: 0 auto; }

/* slidenav Scss */
/*############################################################################################33*/
/* スライドメニュー指定 */
/*############################################################################################*/
@media only screen and (max-width: 560px) {
  #slide-menu {
    display: -webkit-box;
    display: flex;
    flex-direction: column;
    position: fixed;
    z-index: 20 !important;
    top: 0;
    right: -100%;
    bottom: 0;
    width: 100%;
    max-width: 85%;
    height: 100%;
    padding-top: 50px;
    overflow-y: scroll;
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
    background: #397763;
    opacity: 0.1; }
    .menu-active #slide-menu {
      right: 0px;
      opacity: 1;
      box-shadow: 0 0 10px #397763; }
    #slide-menu #globalNav {
      width: 100%;
      margin: 0 !important;
      order: 1;
      z-index: 30 !important; }

  #wrapper {
    position: relative;
    right: 0; }

  .menu-trigger {
    position: fixed;
    z-index: 21;
    top: 10px;
    right: 10px;
    width: 40px;
    height: 40px;
    background: #fff;
    cursor: pointer;
    border-radius: 50%;
    border: 2px solid #397763;
    -webkit-transition: all 300ms;
    transition: all 300ms; }
    .menu-trigger:before {
      display: inline-block;
      content: '\f0c9';
      width: 36px;
      height: 36px;
      color: #397763;
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      font-size: 1.2em;
      text-align: center;
      line-height: 36px; }
    .menu-active .menu-trigger:before {
      content: '×';
      font-family: Arial, Helvetica, "sans-serif"; } }
#contents > section section,
#contents > section .section,
#contents > .section section,
#contents > .section .section {
  margin-bottom: 50px; }

.low #contents > section,
.low #contents > .section {
  margin-bottom: 70px;
  margin-left: 3%; }
  @media only screen and (max-width: 560px) {
    .low #contents > section,
    .low #contents > .section {
      margin-left: 0;
      padding: 0 4%; } }

.low h1 {
  margin: 20px 0 20px 0;
  color: #74bca5;
  letter-spacing: 2px;
  font-family: a-otf-futo-go-b101-pr6n, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 2.5rem; }

h2 {
  font-size: 1.8rem; }

h3 {
  font-size: 1.5rem; }

h4 {
  font-size: 1em; }

@media only screen and (max-width: 560px) {
  .low h1 {
    font-size: 7.5vw;
    letter-spacing: 0; }

  h2 {
    font-size: 6.5vw; }

  h3 {
    font-size: 5vw; }

  h4 {
    font-size: 5vw; } }
.low body {
  background: #fff url("../img/hdBg.png") no-repeat right top;
  background-size: 100% auto; }

header {
  position: relative;
  padding-top: 10px;
  width: 100%;
  z-index: 10;
  background: #fff; }
  @media only screen and (min-width: 561px) and (max-width: 959px) {
    header {
      margin-top: 0px !important; } }
  .low header {
    position: relative;
    padding-top: 10px; }
  @media only screen and (max-width: 560px) {
    header {
      padding-top: 0; } }
  header #hdInfo {
    padding-bottom: 20px; }
    @media only screen and (max-width: 560px) {
      header #hdInfo {
        padding-bottom: 0; } }
    header #hdInfo #hdLogo {
      float: left;
      width: 50%;
      max-width: 550px; }
      @media only screen and (min-width: 561px) and (max-width: 959px) {
        header #hdInfo #hdLogo {
          width: 55%; } }
      @media only screen and (max-width: 560px) {
        header #hdInfo #hdLogo {
          float: none;
          width: 60%;
          margin: 0 0 0 3%; } }
    header #hdInfo #hdTel {
      float: right;
      width: 25%;
      max-width: 412px; }
      @media only screen and (min-width: 561px) and (max-width: 959px) {
        header #hdInfo #hdTel {
          width: 35%; } }
      @media only screen and (max-width: 560px) {
        header #hdInfo #hdTel {
          display: none; } }
      header #hdInfo #hdTel a {
        display: block; }

#globalNav {
  width: 100%;
  padding: 20px 0;
  -webkit-transition: box-shadow 0.2s ease-out, background 0.2s ease-out;
  transition: box-shadow 0.2s ease-out, background 0.2s ease-out;
  background: #fff; }
  @media only screen and (max-width: 560px) {
    #globalNav {
      padding: 0; } }
  #globalNav ul#mainmenu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    @media only screen and (min-width: 561px) and (max-width: 959px) {
      #globalNav ul#mainmenu {
        flex-wrap: nowrap;
        margin-top: 10px; } }
    @media only screen and (max-width: 560px) {
      #globalNav ul#mainmenu {
        display: block; } }
    #globalNav ul#mainmenu > li {
      position: relative;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-flex: 1 1;
      -ms-flex: 1 1;
      flex: 1 1;
      margin: 0; }
      @media only screen and (min-width: 960px) {
        #globalNav ul#mainmenu > li {
          border: 1px solid #74bca5; }
          #globalNav ul#mainmenu > li:not(:last-child) {
            border-right: none; } }
      @media only screen and (min-width: 561px) and (max-width: 959px) {
        #globalNav ul#mainmenu > li {
          webkit-box-flex: 1 1 25%;
          -ms-flex: 1 1 25%;
          flex: 1 1 25%;
          align-content: stretch;
          border-bottom: none;
          margin: 0; } }
      @media only screen and (max-width: 560px) {
        #globalNav ul#mainmenu > li {
          display: block;
          margin: 0;
          border-bottom: 1px solid #74bca5;
          text-align: center; }
          #globalNav ul#mainmenu > li:first-child {
            border-top: 1px solid #fff; } }
      #globalNav ul#mainmenu > li > a {
        position: relative;
        display: block;
        width: 100%;
        margin: 0;
        padding: 20px 5px;
        text-align: center;
        color: #000;
        font-family: a-otf-futo-go-b101-pr6n, sans-serif;
        font-style: normal;
        font-size: 1.0rem;
        font-weight: 500;
        line-height: 1;
        text-decoration: none;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
        text-shadow: #fff 2px 0px, #fff -2px 0px, #fff 0px -2px, #fff 0px 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px; }
        #globalNav ul#mainmenu > li > a:hover {
          color: #74bca5 !important; }
        @media all and (-ms-high-contrast: none) {
          #globalNav ul#mainmenu > li > a {
            padding-bottom: 5px; } }
        @media only screen and (min-width: 561px) and (max-width: 959px) {
          #globalNav ul#mainmenu > li > a {
            font-size: 1.5vw; } }
        @media only screen and (max-width: 560px) {
          #globalNav ul#mainmenu > li > a {
            margin: 0;
            padding: 0.9em 0 0.9em 1em;
            font-size: 4vw;
            font-weight: normal;
            text-align: left;
            text-shadow: none; }
            #globalNav ul#mainmenu > li > a:before {
              display: inline-block;
              content: "";
              font-family: "Font Awesome 5 Free";
              font-weight: 900;
              color: #74bca5;
              margin-right: 5px; } }
      .home #globalNav ul#mainmenu > li:nth-child(1) {
        display: none; }
      .home #globalNav ul#mainmenu > li:nth-of-type(2) > a {
        background: rgba(116, 188, 165, 0.5);
        color: #397763;
        text-shadow: none; }
      .greeting #globalNav ul#mainmenu > li:nth-of-type(3) > a {
        background: rgba(116, 188, 165, 0.5);
        color: #397763;
        text-shadow: none; }
      .treat #globalNav ul#mainmenu > li:nth-of-type(4) > a {
        background: rgba(116, 188, 165, 0.5);
        color: #397763;
        text-shadow: none; }
      .clinic #globalNav ul#mainmenu > li:nth-of-type(5) > a {
        background: rgba(116, 188, 165, 0.5);
        color: #397763;
        text-shadow: none; }
      .faq #globalNav ul#mainmenu > li:nth-of-type(6) > a {
        background: rgba(116, 188, 165, 0.5);
        color: #397763;
        text-shadow: none; }
      .access #globalNav ul#mainmenu > li:nth-of-type(7) > a {
        background: rgba(116, 188, 165, 0.5);
        color: #397763;
        text-shadow: none; }
      @media only screen and (max-width: 560px) {
        #globalNav ul#mainmenu > li {
          text-shadow: none;
          text-shadow: none;
          text-shadow: none;
          text-shadow: none;
          text-shadow: none;
          text-shadow: none; }
          #globalNav ul#mainmenu > li.telMenu a {
            color: #000;
            padding: 1.5em 0 1.5em 0;
            font-size: 4vw;
            background: #ffbc65;
            text-align: center; }
            #globalNav ul#mainmenu > li.telMenu a i {
              display: inline-block;
              margin-right: 0.5em; }
            #globalNav ul#mainmenu > li.telMenu a:before {
              display: none; }
          .home #globalNav ul#mainmenu > li:nth-of-type(1) > a {
            background: rgba(82, 171, 142, 0.5); }
          .greeting #globalNav ul#mainmenu > li:nth-of-type(2) > a {
            background: rgba(82, 171, 142, 0.5); }
          .treat #globalNav ul#mainmenu > li:nth-of-type(3) > a {
            background: rgba(82, 171, 142, 0.5); }
          .clinic #globalNav ul#mainmenu > li:nth-of-type(4) > a {
            background: rgba(82, 171, 142, 0.5); }
          .faq #globalNav ul#mainmenu > li:nth-of-type(5) > a {
            background: rgba(82, 171, 142, 0.5); }
          .access #globalNav ul#mainmenu > li:nth-of-type(6) > a {
            background: rgba(82, 171, 142, 0.5); } }
    @media only screen and (max-width: 560px) {
      #globalNav ul#mainmenu .submenu {
        display: -webkit-box;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        background: #fff; }
        #globalNav ul#mainmenu .submenu li {
          -webkit-box-flex: 0 1 50%;
          flex: 0 1 50%;
          margin: 0;
          border: 1px solid #cae5dd; }
          #globalNav ul#mainmenu .submenu li a {
            display: block;
            padding: 0.5em 0 0.5em 1em;
            text-decoration: none;
            text-align: left !important;
            color: #000 !important;
            font-size: 3.5vw; }
        .trInd #globalNav ul#mainmenu .submenu li:nth-of-type(1) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trNai #globalNav ul#mainmenu .submenu li:nth-of-type(2) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trJun #globalNav ul#mainmenu .submenu li:nth-of-type(3) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trRon #globalNav ul#mainmenu .submenu li:nth-of-type(4) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trReh #globalNav ul#mainmenu .submenu li:nth-of-type(5) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trIns #globalNav ul#mainmenu .submenu li:nth-of-type(6) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trEd #globalNav ul#mainmenu .submenu li:nth-of-type(7) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trAga #globalNav ul#mainmenu .submenu li:nth-of-type(8) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trNon #globalNav ul#mainmenu .submenu li:nth-of-type(9) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trNin #globalNav ul#mainmenu .submenu li:nth-of-type(10) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trPla #globalNav ul#mainmenu .submenu li:nth-of-type(11) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trZai #globalNav ul#mainmenu .submenu li:nth-of-type(12) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trShe #globalNav ul#mainmenu .submenu li:nth-of-type(13) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; } }
    @media only screen and (min-width: 561px) {
      #globalNav ul#mainmenu .submenu {
        display: none !important; } }
  @media only screen and (min-width: 561px) {
    #globalNav > .submenu {
      display: block;
      max-width: 1800px;
      margin: 0 auto;
      padding: 8px 10px;
      border: 1px solid #74bca5;
      border-top: none; }
      #globalNav > .submenu li {
        display: inline-block; }
        #globalNav > .submenu li:not(:last-of-type) {
          margin-right: 1.5em;
          margin-bottom: 0.5em; }
        #globalNav > .submenu li a {
          text-decoration: none !important;
          color: #000 !important; }
          #globalNav > .submenu li a:before {
            display: inline-block;
            content: "";
            font-family: "Font Awesome 5 Free";
            font-weight: 900;
            margin-right: 5px;
            color: #74bca5 !important; }
        .trInd #globalNav > .submenu li:nth-of-type(1) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trNai #globalNav > .submenu li:nth-of-type(2) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trJun #globalNav > .submenu li:nth-of-type(3) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trRon #globalNav > .submenu li:nth-of-type(4) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trReh #globalNav > .submenu li:nth-of-type(5) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trIns #globalNav > .submenu li:nth-of-type(6) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trEd #globalNav > .submenu li:nth-of-type(7) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trAga #globalNav > .submenu li:nth-of-type(8) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trNon #globalNav > .submenu li:nth-of-type(9) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trNin #globalNav > .submenu li:nth-of-type(10) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trPla #globalNav > .submenu li:nth-of-type(11) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trZai #globalNav > .submenu li:nth-of-type(12) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; }
        .trShe #globalNav > .submenu li:nth-of-type(13) a {
          background: rgba(116, 188, 165, 0.5);
          color: #397763;
          text-shadow: none; } }
  @media only screen and (max-width: 560px) {
    #globalNav > .submenu {
      display: none; } }

.fixed {
  position: fixed;
  z-index: 20;
  top: 0;
  width: 100%; }
  @media only screen and (min-width: 561px) {
    .fixed {
      box-shadow: 1px 1px 20px rgba(202, 229, 221, 0.7);
      -webkit-transition: box-shadow 0.5s ease-in-out, background 0.5s ease-in-out;
      transition: box-shadow 0.5s ease-in-out, background 0.5s ease-in-out; } }

@media only screen and (min-width: 561px) {
  .home #globalNav.fixed {
    background: rgba(255, 255, 255, 0.95); }

  .low #globalNav.fixed {
    background: rgba(202, 229, 221, 0.95); } }
/* //////////////////////////////////////////////////////////////////////// 
コンテンツ 
///////////////////////////////////////////////////////////////*/
#container {
  background: #fff; }
  @media only screen and (max-width: 560px) {
    #container {
      background: -webkit-linear-gradient(#ffffff 0%, #ffffff 25%, 100%);
      background: linear-gradient(#ffffff 0%, #ffffff 25%, 100%); } }

#bread {
  position: relative;
  float: left;
  width: 90%;
  margin: 0 auto 15px auto !important;
  padding: 20px 0.3em 0.4em 0.8em;
  font-size: 0.875rem;
  line-height: 1.4em; }
  @media only screen and (max-width: 560px) {
    #bread {
      margin: 0 auto 10px auto !important;
      padding: 6px 0.3em 6px 0em;
      border-top: 1px dotted #c0c0c0;
      border-bottom: 1px dotted #c0c0c0; } }
  .home #bread {
    display: none; }
  #bread * {
    color: #5e5e5e; }
  #bread li {
    float: left;
    list-style: none !important; }
    #bread li:not(:last-of-type):after {
      display: inline-block;
      margin: 0 0.5em 0 0;
      display: inline-block;
      content: "";
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      color: #c0c0c0;
      font-size: 0.9em; }
      @media only screen and (max-width: 560px) {
        #bread li:not(:last-of-type):after {
          content: '/';
          font-family: "游ゴシック", "Yu Gothic", sans-serif;
          font-size: 1em; } }
    @media only screen and (max-width: 560px) {
      #bread li:first-of-type span {
        display: none; } }
  #bread a {
    margin-right: 0.5em; }
    @media only screen and (min-width: 960px) {
      #bread a {
        text-decoration: underline !important; } }

.textresizer {
  float: right; }
  @media only screen and (max-width: 560px) {
    .textresizer {
      display: none; } }
  .textresizer li {
    display: inline-block;
    margin-left: 8px; }
    .textresizer li:first-of-type:before {
      display: block;
      margin: 0 auto;
      content: '文字サイズ '; }
    .textresizer li:last-of-type {
      font-size: 1.2em; }
    .textresizer li a {
      display: block;
      padding: 3px;
      border: 1px solid #ccc;
      background: #e6e6e6 !important;
      text-decoration: none !important;
      border-radius: 4px;
      text-align: center;
      color: #000 !important; }
      .textresizer li a:hover {
        color: #6E6C64; }
      .textresizer li a:hover, .textresizer li a.textresizer-active {
        color: #fff;
        background: #3e8bc7; }

#contents h2 span,
#contents h3 span,
#contents h4 span,
#contents h5 span,
#contents .inline span {
  display: inline-block; }

@media only screen and (max-width: 560px) {
  .inlineSp span {
    display: inline-block; } }
.low #contents {
  padding: 30px 0 30px 0; }
  .low #contents h2 {
    position: relative;
    display: inline-table;
    margin-bottom: 35px;
    padding: 1rem 2rem calc(1rem + 10px);
    background: rgba(116, 188, 165, 0.5);
    background: linear-gradient(#cae5dd 0%, rgba(116, 188, 165, 0.5) 25%, 100%);
    font-size: 1.375rem;
    font-weight: bold; }
    .low #contents h2:before {
      position: absolute;
      top: -8px;
      left: -8px;
      width: 100%;
      height: 100%;
      content: '';
      border: 3px solid #397763; }
    @media only screen and (max-width: 560px) {
      .low #contents h2 {
        padding: 0.5rem 1.5rem calc(0.5rem + 10px) 1rem; } }
  .low #contents h3 {
    display: inline-block;
    margin-bottom: 15px;
    padding-left: 6px;
    border-left: 3px solid #397763;
    color: #000; }
    .low #contents h3:after {
      content: "";
      display: block;
      height: 0;
      visibility: hidden;
      clear: both; }
  .low #contents a {
    text-decoration: underline; }

/* //////////////////////////////////////////////////////////////////////// 
コンテンツフッター
///////////////////////////////////////////////////////////////*/
#btInfo {
  width: 100% !important;
  background: rgba(57, 119, 99, 0.2);
  padding: auto !important; }
  #btInfo > div {
    max-width: 1200px;
    margin: 0px auto;
    padding: 30px 0 !important; }
    @media only screen and (max-width: 560px) {
      #btInfo > div {
        max-width: auto; } }
  #btInfo #btInfoL {
    float: left;
    width: 47%;
    text-align: left; }
    @media only screen and (max-width: 560px) {
      #btInfo #btInfoL {
        float: none;
        width: 92%;
        margin: 0 auto 20px auto !important;
        padding-top: 0px; } }
    #btInfo #btInfoL ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      margin-top: 25px; }
      @media only screen and (max-width: 560px) {
        #btInfo #btInfoL ul {
          flex-wrap: nowrap;
          width: 100%; } }
      #btInfo #btInfoL ul li {
        -webkit-box-flex: 1 1 30%;
        -ms-flex: 1 1 30%;
        flex: 1 1 30%;
        margin: 0 0.5% 30px 0.5%; }
        @media only screen and (max-width: 560px) {
          #btInfo #btInfoL ul li {
            -webkit-box-flex: 1 1 48%;
            flex: 1 1 48%;
            margin: 0 0.5% 4px 0.5%; }
            #btInfo #btInfoL ul li:first-of-type {
              display: none; } }
        #btInfo #btInfoL ul li a {
          display: inline-block; }
          #btInfo #btInfoL ul li a img {
            display: block;
            width: 100% !important;
            min-width: 160px;
            height: auto !important; }
            @media only screen and (max-width: 560px) {
              #btInfo #btInfoL ul li a img {
                min-width: 100px !important; } }
  #btInfo #btInfoR {
    float: right;
    width: 47%; }
    @media only screen and (max-width: 560px) {
      #btInfo #btInfoR {
        float: none;
        width: 94% !important;
        margin: 0 auto 20px auto; } }
    #btInfo #btInfoR iframe {
      display: block;
      width: 100%; }

footer {
  background: #fff;
  text-align: center; }
  @media only screen and (max-width: 560px) {
    footer {
      font-size: 0.8rem; } }
  footer #ddBan img {
    max-width: 210px;
    margin: 0 auto; }
  footer #ftLogo img {
    display: block;
    max-width: 266px;
    margin: 30px auto; }
    @media only screen and (max-width: 560px) {
      footer #ftLogo img {
        width: 70%; } }
  footer #copy a {
    margin-top: 1em;
    font-size: 0.75rem;
    color: #6a6a6a !important; }
    @media only screen and (max-width: 560px) {
      footer #copy a {
        font-size: 2.3vw;
        line-height: 0.5 !important; } }

#ptBtn {
  position: fixed;
  bottom: 10px;
  right: 20px; }
  @media only screen and (max-width: 560px) {
    #ptBtn {
      bottom: 5px;
      right: 5px; } }
  #ptBtn a {
    display: block;
    padding: 6px;
    background: rgba(57, 119, 99, 0.8);
    box-sizing: border-box;
    border-radius: 50%;
    color: #fff;
    text-align: center; }
    #ptBtn a:hover {
      background: rgba(116, 188, 165, 0.8); }
    #ptBtn a span {
      display: block;
      font-size: 0.85rem; }
  #ptBtn img {
    margin: 0 auto; }

table {
  margin: 1em 0 1.5em 0;
  background: #ffffff; }

caption {
  margin-bottom: 0.7em;
  text-align: left;
  font-weight: bold; }

tbody th {
  text-align: left;
  white-space: nowrap; }

th,
td {
  padding: 0.4em 1em 0.2em 1em;
  font-size: 1rem;
  font-weight: normal;
  vertical-align: middle;
  border: 1px solid #998788; }

.timeTable {
  width: auto; }
  #btInfo .timeTable {
    width: 100% !important; }
  .timeTable thead th {
    text-align: center; }
  .timeTable th {
    background: #397763;
    color: #fff !important; }
  .timeTable td {
    color: #397763;
    text-align: center; }
  @media only screen and (max-width: 560px) {
    .timeTable {
      font-size: 0.875rem; }
      .timeTable th, .timeTable td {
        padding: 0.8em 0.2em !important;
        font-size: 0.875rem !important;
        white-space: wrap !important; } }

.price td {
  text-align: right; }

strong {
  font-weight: bold;
  color: #e50043; }

#bread strong {
  font-weight: normal; }

.red {
  color: #ce0a4c; }

.blue {
  color: #477fb4; }

.bold {
  font-weight: bold; }

.cc1 {
  color: #730524; }

.size-ss {
  font-size: 80% !important; }

.size-s {
  font-size: 88% !important; }

.size-l {
  font-size: 120% !important; }

.size-ll {
  font-size: 150% !important; }

.anno {
  color: #FF0000; }

.anno-s {
  color: #FF0000;
  font-size: 88%; }

.anno-l {
  color: #FF0000;
  font-size: 120%;
  font-weight: bold; }

.anno-ll {
  color: #FF0000;
  font-size: 150%;
  font-weight: bold; }

.anno2 {
  margin: 1em 0em; }
  .anno2 li {
    margin-bottom: 0em;
    color: #44494c;
    font-size: 90%; }
    .anno2 li .red {
      color: #ce0a4c; }
    .anno2 li:before {
      content: "※ "; }

.point1 {
  display: inline;
  font-weight: bold;
  background: rgba(255, 255, 255, 0) linear-gradient(transparent 60%, #cce5ff 0%) repeat scroll 0 0;
  color: #000; }

.point2 {
  display: inline;
  font-weight: bold;
  background: rgba(255, 255, 255, 0) linear-gradient(transparent 60%, #ffbc65 0%) repeat scroll 0 0;
  color: #000; }

.fix img {
  width: auto !important; }

.edge img,
.addImgCap img {
  border: 5px solid #ffffff;
  box-shadow: 1px 1px 7px #000; }

.addImgCap li img {
  margin: 0 auto; }

.photo figcaption {
  margin-top: 10px;
  font-size: 0.9em;
  text-align: center; }
  .photo figcaption:before {
    display: inline-block;
    content: "";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: 0.5em; }

.w10 {
  width: 10%;
  height: auto; }

.w15 {
  width: 15%;
  height: auto; }

.w20 {
  width: 20%;
  height: auto; }

.w25 {
  width: 25%;
  height: auto; }

.w30 {
  width: 30%;
  height: auto; }

.w35 {
  width: 35%;
  height: auto; }

.w40 {
  width: 40%;
  height: auto; }

.w45 {
  width: 45%;
  height: auto; }

.w50 {
  width: 50%;
  height: auto; }

.w55 {
  width: 55%;
  height: auto; }

.w60 {
  width: 60%;
  height: auto; }

.w65 {
  width: 65%;
  height: auto; }

.w70 {
  width: 70%;
  height: auto; }

.w75 {
  width: 75%;
  height: auto; }

.w80 {
  width: 80%;
  height: auto; }

.w85 {
  width: 85%;
  height: auto; }

.w90 {
  width: 90%;
  height: auto; }

.w100 {
  width: 100%;
  height: auto; }

.w31 img {
  max-width: 30px; }

.w51 img {
  max-width: 50px; }

.w81 img {
  max-width: 80px; }

.w101 img {
  max-width: 100px; }

.w130 img {
  max-width: 130px; }

.w120 img {
  max-width: 120px; }

.w150 img {
  max-width: 150px; }

.w160 img {
  max-width: 160px; }

.w180 img {
  max-width: 180px; }

.w200 img {
  max-width: 200px; }

.w220 img {
  max-width: 220px; }

.w230 img {
  max-width: 230px; }

.w240 img {
  max-width: 230px; }

.w250 img {
  max-width: 250px; }

.w260 img {
  max-width: 260px; }

.w280 img {
  max-width: 280px; }

.w300 img {
  max-width: 300px; }

.w320 img {
  max-width: 320px; }

.w330 img {
  max-width: 330px; }

.w350 img {
  max-width: 350px; }

.w360 img {
  max-width: 360px; }

.w370 img {
  max-width: 370px; }

.w380 img {
  max-width: 380px; }

.w400 img {
  max-width: 400px; }

.w410 img {
  max-width: 410px; }

.w420 img {
  max-width: 420px; }

.w430 img {
  max-width: 430px; }

.w440 img {
  max-width: 440px; }

.w450 img {
  max-width: 450px; }

.w470 img {
  max-width: 470px; }

.w480 img {
  max-width: 480px; }

.w500 img {
  max-width: 500px; }

.w530 img {
  max-width: 530px; }

.w550 img {
  max-width: 550px; }

.w560 img {
  max-width: 560px; }

.w570 img {
  max-width: 570px; }

.w580 img {
  max-width: 580px; }

.w600 img {
  max-width: 600px; }

.w620 img {
  max-width: 620px; }

.w630 img {
  max-width: 630px; }

.w640 img {
  max-width: 640px; }

.w650 img {
  max-width: 650px; }

.w680 img {
  max-width: 680px; }

.w700 img {
  max-width: 700px; }

.w720 img {
  max-width: 720px; }

.w750 img {
  max-width: 750px; }

.w780 img {
  max-width: 780px; }

.w800 img {
  max-width: 800px; }

.w840 img {
  max-width: 840px; }

.w860 img {
  max-width: 860px; }

.w960 img {
  max-width: 960px; }

.w1000 img {
  max-width: 1000px; }

.w1200 img {
  max-width: 1200px; }

.h250 {
  max-height: 250px;
  width: auto; }

.block {
  display: block; }

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

.center {
  text-align: center; }

.right {
  text-align: right; }

.left {
  text-align: left; }

.posR {
  float: right; }

.posL {
  float: left; }

.posC {
  display: block;
  margin-right: auto;
  margin-left: auto; }

.imgR {
  float: right;
  margin: 0 0 15px 5%; }

.imgL {
  float: left;
  margin: 0 5% 15px 0; }

.imgC img {
  display: block;
  margin: 0 auto; }

.posR img,
.imgR img {
  margin-right: 0;
  margin-left: auto; }

.mb20 {
  margin-bottom: 20px !important; }

.mb30 {
  margin-bottom: 30px !important; }

.mb2e {
  margin-bottom: 2em !important; }

.mb1e {
  margin-bottom: 1em !important; }

.mb15e {
  margin-bottom: 1.5em !important; }

.mb2e {
  margin-bottom: 2em !important; }

.mb3e {
  margin-bottom: 3em !important; }

.ml20 {
  margin-left: 20px !important; }

.mr20 {
  margin-right: 20px !important; }

.mr5 {
  margin-right: 5% !important; }

.mr30 {
  margin-right: 30px !important; }

.mr1e {
  margin-right: 1em !important; }

.mt1e {
  margin-top: 1em !important; }

.mt05e {
  margin-top: 0.5em !important; }

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

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

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

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

.sep2 > p,
.sep2 > li,
.sep2 > figure {
  width: 46%;
  margin: 0 1.5% 1em 1.5%;
  float: left; }

.sep3 > p,
.sep3 > li,
.sep3 > figure {
  width: 31%;
  margin: 0 1% 1em 1%;
  float: left; }

#contents section p,
#contents .section p {
  margin-bottom: 1em; }

h2 span,
h3 span,
h4 span,
h5 span,
.inline span {
  display: inline-block; }

h2 span.w31 img {
  display: inline !important;
  margin-left: 5px; }

.inline-li li {
  display: inline-block;
  margin-right: 0.5em; }
  .inline-li li:before {
    content: "・";
    color: #666;
    font-weight: bold; }

.sameHeight {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  align-self: stretch; }
  .sameHeight li {
    align-self: stretch;
    -webkit-flex-grow: 1;
    flex-grow: 1; }

#contents ul.list-nor li {
  margin-left: 1.5em;
  margin-bottom: 0.7em;
  padding-left: 0.2em;
  list-style: disc; }

#contents section ol li,
#contents .section ol li {
  margin-bottom: 0.7em; }

.list-tp1 li {
  padding: 0.5em 0 0.3em 3%;
  border-bottom: 1px dotted #74bca5;
  line-height: 1.3em; }

.list-tp2,
.list-tp2b,
.list-tp2-in {
  list-style: none !important; }

.list-tp2 li,
.list-tp2b li {
  margin-left: 1em;
  margin-bottom: 0.8em;
  padding-left: 1em;
  /*padding-left:normal;*/
  line-height: 1.4em;
  list-style: none !important; }

.list-tp2-in li {
  display: inline-block;
  margin-right: 35px; }

.list-tp2b li {
  margin-bottom: 0.3em;
  line-height: 1.3em; }

.list-tp2 li:before,
.list-tp2-in li:before,
.list-tp2b li:before {
  position: relative;
  content: '';
  width: 6px;
  height: 6px;
  display: inline-block;
  border-radius: 100%;
  background: #74bca5;
  left: -5px;
  top: -3px; }

.listCheck li {
  margin-bottom: 0.7em;
  line-height: 1.4em; }
  .listCheck li:before {
    margin-right: 5px;
    content: "\f14a";
    font-family: "Font Awesome 5 Free";
    font-weight: 500;
    color: #397763; }

.list-cel li {
  padding: 0.4em 1em !important;
  border: 1px solid #d1d1d1; }

.dl-tp1 dt {
  margin-top: 0.8em;
  padding: 0.3em 0 0.1em 1.4%;
  line-height: 1.3em;
  font-weight: bold;
  border-left: 4px solid #4eb2a5; }
.dl-tp1 dd {
  padding: 0.5em 0 0.3em 2%;
  border-bottom: 1px dotted #666;
  line-height: 1.3em; }
.dl-tp1 dd:last-child {
  border-bottom: none; }

.dl-tp2 dt {
  margin-top: 0.8em;
  line-height: 1.3em;
  font-weight: bold; }
.dl-tp2 dd {
  padding: 0.2em 0 0.3em 1em;
  line-height: 1.3em; }

.dl-table {
  display: table;
  line-height: 1.3em; }
  .dl-table dt {
    margin-top: 0.6em;
    padding: 0.3em 0 0.1em 10px;
    font-weight: normal;
    border-left: none; }
  .dl-table dd {
    margin: -1.4em 0 0.6em 0;
    padding: 0 10px 0.3em 8em;
    border-bottom: 1px dotted #CCC; }

.dl-table02 {
  display: table;
  width: 100%;
  max-width: 600px;
  line-height: 1.3em;
  background: #f4e8ed;
  background: -moz-linear-gradient(top, #f4e8ed 0%, #f9dade 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #f4e8ed), color-stop(100%, #f9dade));
  background: -webkit-linear-gradient(top, #f4e8ed 0%, #f9dade 100%);
  background: -o-linear-gradient(top, #f4e8ed 0%, #f9dade 100%);
  background: -ms-linear-gradient(top, #f4e8ed 0%, #f9dade 100%);
  background: linear-gradient(to bottom, #f4e8ed 0%, #f9dade 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$start-color', endColorstr='$end-color',GradientType=0 );
  border-radius: 10px;
  padding: 10px; }
  .dl-table02 dt {
    margin-top: 0.6em;
    padding: 0.3em 0 0.1em 10px;
    font-weight: bold;
    font-size: 1.3em;
    border-left: none;
    z-index: 5;
    color: #ef8291;
    text-align: right;
    width: 3.8em; }
  .dl-table02 dd {
    margin: -2em 0 0.6em 0;
    padding: 10px 10px 0.3em 7em;
    background: #fff; }

.dl-op dt {
  margin-top: 0.8em;
  padding: 0.3em 0 0.1em 1.4%;
  line-height: 1.3em;
  font-weight: normal;
  font-weight: bold;
  border-left: none; }
.dl-op dd {
  margin: -1.6em 0 0.6em 0;
  padding: 0 0 0.2em 8em;
  border-bottom: 1px dotted #CCC; }

.icon_exp ul {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
.icon_exp li {
  margin: 0 0.5% 10px 0.5%;
  padding: 0;
  border: 1px solid #c4adaf; }
  .icon_exp li img {
    max-width: 50px; }
.icon_exp dl {
  margin: 0;
  margin-top: 5px; }
.icon_exp dt {
  width: 18%;
  margin-left: 5px; }
.icon_exp dd {
  width: 80%;
  margin-left: 22%;
  margin-top: -30px;
  font-size: 0.9em;
  padding: 0; }

.flow li {
  margin-bottom: 80px !important;
  padding: 12px;
  background: #85c4b0;
  border-radius: 10px;
  text-align: center; }
  @media only screen and (max-width: 560px) {
    .flow li {
      text-align: left; } }
  .flow li:last-of-type {
    margin-bottom: 50px !important; }
  .flow li:not(:last-of-type):after {
    display: block;
    position: absolute;
    right: 0;
    left: 0;
    bottom: -80px;
    content: url("../img/first/flow-arrow.png");
    width: 77px;
    margin: 0 auto; }

.btn-this {
  display: table;
  margin-top: 1em; }
  .btn-this a {
    display: block;
    padding: 0.3em 1.5em !important;
    color: #fff !important;
    font-size: 0.95em;
    text-decoration: none !important;
    border: 1px solid #d3d3d3;
    border-radius: 4px;
    background: #0082b2 !important; }
    .btn-this a::after {
      content: " ";
      position: absolute;
      top: 50%;
      right: 10px;
      width: 6px;
      height: 6px;
      margin-top: -3px;
      border-top: 1px solid #fff;
      border-right: 1px solid #fff;
      transform: rotate(45deg); }

.btn-ask {
  display: inline-table;
  margin: 1em auto;
  border: 1px solid #d3d3d3;
  border-radius: 4px;
  background: #ffa220 url(../img/marker-nav-wh.png) no-repeat 95% center; }
  .btn-ask a {
    display: block;
    padding: 0.6em 2em 0.4em 1.8em !important;
    color: #fff !important;
    font-size: 1rem;
    text-shadow: 1px 1px 1px #919191;
    text-decoration: none !important;
    -webkit-transition: background-color 0.25s ease-out;
    transition: background-color 0.25s ease-out; }
    .btn-ask a:hover {
      background: url(../img/marker-nav-wh.png) no-repeat 95% center, rgba(0, 130, 178, 0.8); }

.btn-gmap {
  display: inline-block;
  margin: 1em auto; }
  .btn-gmap a {
    display: block;
    padding: 0.3em 2.5em !important;
    color: #fff !important;
    font-size: 0.95em;
    text-decoration: none !important;
    border: 1px solid #d3d3d3;
    border-radius: 4px;
    background: linear-gradient(to right, #00a0e9 47%, rgba(0, 160, 233, 0.5) 94%) !important;
    -webkit-transition: background-color 0.25s ease-out;
    transition: background-color 0.25s ease-out; }
    .btn-gmap a::after {
      content: " ";
      position: absolute;
      top: 50%;
      right: 10px;
      width: 6px;
      height: 6px;
      margin-top: -3px;
      border-top: 1px solid #fff;
      border-right: 1px solid #fff;
      transform: rotate(45deg); }
    .btn-gmap a:hover {
      background: linear-gradient(to right, rgba(0, 160, 233, 0.8) 47%, rgba(0, 160, 233, 0.4) 94%); }

.tel-link {
  font-weight: bold;
  font-size: 1.2em;
  color: #63adf2; }

@media only screen and (max-width: 560px) {
  .hideSp,
  .dispTab,
  .dispPc {
    display: none !important; }

  .sameHeightPc {
    display: block !important; }

  .w10,
  .w15,
  .w20,
  .w25,
  .w30 {
    width: 45%;
    height: auto; }

  .w35,
  .w40,
  .w45,
  .w50,
  .w55,
  .w60,
  .w65,
  .w70,
  .w75,
  .w80,
  .w85,
  .w90,
  .w100 {
    width: 100%;
    height: auto; }

  .telLink a {
    display: inline-block;
    padding: 6px;
    font-weight: bold;
    line-height: 1;
    color: #fff !important;
    background: #0082b2;
    border-radius: 4px; }

  #footerAsk {
    display: flex;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    border-top: 1px solid #fff;
    z-index: 30; }
    #footerAsk li {
      text-align: center;
      border-right: 1px solid #fff; }
      #footerAsk li:nth-child(3) {
        width: 20%; }
      #footerAsk li:nth-child(1), #footerAsk li:nth-child(2) {
        width: 40%; }
      #footerAsk li:nth-child(3) {
        border-right: none; }
      #footerAsk li a {
        display: block;
        padding: 10px 0 20px;
        background: #85c4b0;
        color: #000;
        font-size: 3.6vw;
        text-decoration: none; }
        #footerAsk li a i {
          color: #316655; }
      #footerAsk li span {
        display: block;
        font-size: 3.4vw; }

  .scroll {
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch; }
    .scroll table {
      width: auto;
      margin-top: 0 !important; }
    .scroll::-webkit-scrollbar {
      height: 5px; }
    .scroll::-webkit-scrollbar-track {
      border-radius: 5px;
      background: #eee; }
    .scroll::-webkit-scrollbar-thumb {
      border-radius: 5px;
      background: #666; } }
  @media only screen and (max-width: 560px) and (max-width: 560px) {
    .scroll th, .scroll td {
      -webkit-text-size-adjust: 100%; } }

@media only screen and (max-width: 560px) {
  .remarks {
    font-size: 0.75rem; }

  .form th,
  .form td {
    display: block;
    padding: 0.8em 1em 0.5em 1em;
    border: none;
    text-align: left;
    font-size: 95%; }
  .form th {
    padding: 0.6em 0em 0.4em 1em; }
  .form td {
    padding: 1em 0em 1.5em 1em; } }
/* タブレット向けのレイアウトの指定  ------------*/
@media only screen and (min-width: 561px) and (max-width: 959px) {
  .dispSp,
  .dispPri,
  .dispPc,
  .hideTab {
    display: none !important; }

  .sameHeightPc {
    display: block !important; } }
/* PC向けのレイアウトの指定  ------------*/
@media only screen and (min-width: 960px) {
  .hidePc,
  .dispTab,
  .dispSp,
  .dispPri {
    display: none !important; }

  .sameHeightPc {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; } }
.home #contents > section,
.home #contents > .section {
  max-width: 100% !important;
  margin: 0 auto;
  padding: 40px 3%; }
  .home #contents > section#point,
  .home #contents > .section#point {
    max-width: 1600px !important; }
  .home #contents > section#homeMenu div,
  .home #contents > .section#homeMenu div {
    max-width: 1600px !important;
    margin: auto !important; }
    @media only screen and (max-width: 560px) {
      .home #contents > section#homeMenu div,
      .home #contents > .section#homeMenu div {
        max-width: 100% !important; } }
.home header {
  z-index: -1; }
  .home header #hdInfo {
    position: absolute;
    z-index: 1;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    width: 96%; }
    @media only screen and (max-width: 560px) {
      .home header #hdInfo {
        transform: none;
        -webkit-transform: none;
        left: 0;
        width: 100%; } }
  .home header h1 {
    position: absolute;
    z-index: 20;
    top: 50%;
    left: 50%;
    text-align: center;
    font-family: a-otf-futo-go-b101-pr6n, sans-serif;
    color: #5f5f5f;
    font-size: 2.4vw;
    font-weight: bold;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    opacity: 0; }
    @media only screen and (max-width: 560px) {
      .home header h1 {
        top: 40%;
        font-size: 5vw;
        line-height: 1.7em;
        width: 100%;
        text-shadow: #fff 3px 0px, #fff -3px 0px, #fff 0px -3px, #fff 0px 3px, #fff 3px 3px, #fff -3px 3px, #fff 3px -3px, #fff -3px -3px, #fff 1px 3px, #fff -1px 3px, #fff 1px -3px, #fff -1px -3px, #fff 3px 1px, #fff -3px 1px, #fff 3px -1px, #fff -3px -1px; } }
    @media only screen and (min-width: 561px) and (max-width: 959px) {
      .home header h1 {
        font-size: 2.9vw; } }
    .home header h1.on {
      opacity: 1;
      -webkit-transition: opacity 0.3s ease-in-out;
      transition: opacity 0.3s ease-in-out; }
    .home header h1 strong {
      color: #0082b2; }
      .home header h1 strong span {
        font-size: 1.5em;
        color: #74bca5; }
  .home header .slide {
    position: relative;
    overflow: hidden;
    width: 100%; }
.home #globalNav {
  width: 100%; }
  @media only screen and (max-width: 560px) {
    .home #globalNav {
      z-index: 2001; } }
@media only screen and (min-width: 561px) {
  .home #container {
    padding-top: 60px; } }
@media only screen and (max-width: 560px) {
  .home #container {
    padding-top: 0px; } }
.home #homeMenu {
  padding: 40px !important;
  background: rgba(202, 229, 221, 0.15); }
  @media only screen and (max-width: 560px) {
    .home #homeMenu {
      padding: 40px 3% !important; } }
  .home #homeMenu ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-items: stretch; }
    @media only screen and (max-width: 560px) {
      .home #homeMenu ul {
        width: 100%;
        display: block; } }
    .home #homeMenu ul li {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      align-items: stretch;
      -webkit-box-flex: 0 1 20%;
      -ms-flex: 0 1 20%;
      flex: 0 1 20%;
      margin: 0 1% 30px 1%; }
      .home #homeMenu ul li:nth-of-type(1) {
        background: #cae5dd url("../img/home/top_banner_01.png") no-repeat right center;
        background-size: contain; }
      .home #homeMenu ul li:nth-of-type(2) {
        background: #cae5dd url("../img/home/top_banner_02.png") no-repeat right center;
        background-size: contain; }
      .home #homeMenu ul li:nth-of-type(3) {
        background: #cae5dd url("../img/home/top_banner_03.png") no-repeat right center;
        background-size: contain; }
      @media only screen and (max-width: 560px) {
        .home #homeMenu ul li {
          -webkit-box-flex: 0 0 49%;
          flex: 0 0 49%;
          margin: 0 0.5% 4px 0.5%; } }
      .home #homeMenu ul li a {
        -webkit-box-flex: 1 1 100%;
        -ms-flex: 1 1 100%;
        flex: 1 1 100%;
        align-self: center;
        display: block;
        padding: 40px 5%;
        color: #397763;
        font-size: 1.375rem !important;
        text-shadow: #cae5dd 2px 0px, #cae5dd -2px 0px, #cae5dd 0px -2px, #cae5dd 0px 2px, #cae5dd 2px 2px, #cae5dd -2px 2px, #cae5dd 2px -2px, #cae5dd -2px -2px, #cae5dd 1px 2px, #cae5dd -1px 2px, #cae5dd 1px -2px, #cae5dd -1px -2px, #cae5dd 2px 1px, #cae5dd -2px 1px, #cae5dd 2px -1px, #cae5dd -2px -1px; }
        @media only screen and (max-width: 560px) {
          .home #homeMenu ul li a {
            padding-top: 16px; } }
.home #intro {
  margin-bottom: 80px !important;
  padding: 80px 0 !important;
  text-align: center;
  font-size: 1.125rem;
  background: rgba(57, 119, 99, 0.15) url("../img/home/intro_bg.jpg") no-repeat center center;
  background-size: cover; }
  @media only screen and (max-width: 560px) {
    .home #intro {
      padding: 60px 5% !important;
      text-align: left; } }
  .home #intro h2 {
    margin-bottom: 1em;
    font-size: 2.375rem;
    color: #397763; }
    @media only screen and (max-width: 560px) {
      .home #intro h2 {
        font-size: 6vw;
        text-align: center; }
        .home #intro h2 span {
          display: inline-block; } }
  .home #intro .img {
    width: 50%;
    margin: 40px auto; }
    @media only screen and (max-width: 560px) {
      .home #intro .img {
        width: 80%; } }
  .home #intro .text {
    font-size: 1.2em; }
    @media only screen and (max-width: 560px) {
      .home #intro .text {
        text-align: left; } }
.home #news > div {
  max-width: 50% !important;
  margin: 0 auto 50px auto;
  background: #fff; }
  @media only screen and (max-width: 959px) {
    .home #news > div {
      max-width: 94% !important; } }
  .home #news > div h2 {
    display: inline-block;
    padding: 6px 10px;
    background: #cae5dd;
    color: #397763;
    font-size: 1.5rem;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px; }
  .home #news > div dl {
    max-height: 400px;
    padding: 15px 3% !important;
    overflow-y: scroll;
    border: 1px solid rgba(202, 229, 221, 0.3); }
    .home #news > div dl::-webkit-scrollbar {
      height: 5px; }
    .home #news > div dl::-webkit-scrollbar-track {
      background: #ecf6f3; }
    .home #news > div dl::-webkit-scrollbar-thumb {
      border-radius: 5px;
      background: #cae5dd; }
  .home #news > div dd {
    margin-bottom: 1em;
    padding-bottom: 1em;
    border-bottom: 1px solid #c0c0c0; }

.greeting #low02 {
  width: 80%;
  padding: 0 8%;
  border: 1px solid #c0c0c0;
  box-shadow: 3px 3px 10px #c0c0c0;
  text-align: center; }
  @media only screen and (max-width: 560px) {
    .greeting #low02 {
      width: 100%;
      box-shadow: none;
      border: none;
      margin-left: auto !important;
      margin-right: auto !important; } }
  .greeting #low02 h2 {
    border: none;
    text-align: center;
    background: none;
    letter-spacing: 3px;
    color: #74bca5;
    font-size: 1.625rem; }
    .greeting #low02 h2:before {
      position: absolute;
      top: auto;
      bottom: 10px;
      left: calc(50% - 1.5em);
      width: 3em;
      height: 5px;
      content: '';
      border-radius: 3px;
      background: #cae5dd; }
  .greeting #low02 > div {
    text-align: left; }
    .greeting #low02 > div .photo {
      float: left;
      width: 40%;
      max-width: 250px; }
      @media only screen and (max-width: 560px) {
        .greeting #low02 > div .photo {
          float: none;
          width: 90%;
          margin: 0 auto;
          text-align: center; } }
      .greeting #low02 > div .photo .name span {
        display: block;
        font-size: 0.75rem;
        line-height: 1.3em; }
    .greeting #low02 > div .text {
      float: left;
      width: 55%;
      margin-left: 5%; }
      @media only screen and (max-width: 560px) {
        .greeting #low02 > div .text {
          float: none;
          width: 90%;
          margin: 0 auto; }
          .greeting #low02 > div .text .dl-table dd {
            margin: -1.5em 0 0.6em 0;
            padding: 0 0 0.3em 6em; } }

.clinic .flexBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start !important; }
  .clinic .flexBox figure {
    border: 1px solid red;
    -webkit-box-flex: 0 0 21%;
    -ms-flex: 0 0 21%;
    flex: 0 0 21%;
    min-width: 250px;
    max-width: 21% !important;
    margin: 30px 2%;
    padding: 10px;
    box-shadow: 1px 1px 5px #c0c0c0; }
    .clinic .flexBox figure img {
      margin-bottom: 15px; }
    .clinic .flexBox figure figcaption {
      color: #397763; }
    @media only screen and (max-width: 560px) {
      .clinic .flexBox figure {
        margin: 15px 2%; } }
.clinic #lowMap #imgMap img {
  max-width: 1200px; }
  @media only screen and (max-width: 560px) {
    .clinic #lowMap #imgMap img {
      max-width: 480px; } }
.clinic #lowAccess dt:before {
  content: "●";
  margin-right: 5px;
  color: #cae5dd; }
.clinic #lowAccess dd {
  margin: 0 0 1em 1.6em; }

.trInd #low01 ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-items: stretch; }
  @media only screen and (max-width: 560px) {
    .trInd #low01 ul {
      width: 100%; } }
  .trInd #low01 ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    align-items: stretch;
    position: relative; }
    .trInd #low01 ul li a {
      display: block;
      padding: 8px 6% 8px 3%;
      text-decoration: none;
      color: #000;
      border-radius: 10px; }
      @media only screen and (max-width: 560px) {
        .trInd #low01 ul li a {
          padding-top: 16px; } }
  .trInd #low01 ul#cat1 li {
    -webkit-box-flex: 0 1 31%;
    -ms-flex: 0 1 31%;
    flex: 0 1 31%;
    margin: 0 1% 30px 1%; }
    @media only screen and (max-width: 560px) {
      .trInd #low01 ul#cat1 li {
        -webkit-box-flex: 0 0 100%;
        flex: 0 0 100%;
        margin: 0 0 12px 0; } }
    .trInd #low01 ul#cat1 li a {
      border: 1px solid #ffa632;
      background: rgba(255, 188, 101, 0.5); }
      .trInd #low01 ul#cat1 li a::after {
        content: "";
        position: absolute;
        top: 50%;
        right: 6px;
        width: 0px;
        height: 0px;
        margin-top: -5px;
        border-left: 5px solid #ffbc65;
        border-top: 5px solid transparent;
        border-bottom: 5px solid transparent; }
    .trInd #low01 ul#cat1 li dt {
      margin-bottom: 8px;
      padding: 4px 0 4px 1em;
      font-weight: bold;
      font-size: 1.375rem;
      color: #000 !important;
      background: #ffbc65; }
  .trInd #low01 ul#cat2 li {
    -webkit-box-flex: 0 1 23%;
    -ms-flex: 0 1 23%;
    flex: 0 1 23%;
    margin: 0 1% 30px 1%; }
    @media only screen and (max-width: 560px) {
      .trInd #low01 ul#cat2 li {
        -webkit-box-flex: 0 0 100%;
        flex: 0 0 100%;
        margin: 0 0 12px 0; } }
    .trInd #low01 ul#cat2 li a {
      display: block;
      width: 100%;
      border: 1px solid #fe3a42;
      background: rgba(254, 109, 115, 0.5);
      font-size: 1.375rem;
      font-weight: bold; }
      .trInd #low01 ul#cat2 li a::after {
        content: "";
        position: absolute;
        top: 50%;
        right: 6px;
        width: 0px;
        height: 0px;
        margin-top: -5px;
        border-left: 5px solid #fe6d73;
        border-top: 5px solid transparent;
        border-bottom: 5px solid transparent; }
      .trInd #low01 ul#cat2 li a span {
        display: block;
        font-weight: normal;
        font-size: 1rem; }
      @media only screen and (max-width: 560px) {
        .trInd #low01 ul#cat2 li a {
          font-size: 1.125rem; } }
@media only screen and (max-width: 560px) {
  .trInd #low02 .timeTable {
    width: 100%; } }
.trInd #low04 .photo {
  float: left;
  width: 25%; }
  @media only screen and (max-width: 560px) {
    .trInd #low04 .photo {
      float: none;
      width: 80%;
      margin: 0 auto 20px auto; } }
.trInd #low04 .text {
  float: right;
  width: 72%; }
  @media only screen and (max-width: 560px) {
    .trInd #low04 .text {
      float: none;
      width: 100%; } }

.trJun #low02 h3 {
  display: block; }
.trJun #low02 .fix {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start; }
  @media only screen and (max-width: 560px) {
    .trJun #low02 .fix {
      display: block; } }
  .trJun #low02 .fix section {
    -webkit-box-flex: 1 1 30%;
    -ms-flex: 1 1 30%;
    flex: 1 1 30%;
    min-width: 300px;
    margin: 0 1.5% 30px 1.5%; }

.trRon #low01 .photo {
  float: right;
  width: 25%;
  margin: 0 0 2em 3em; }
  @media only screen and (max-width: 560px) {
    .trRon #low01 .photo {
      float: none;
      width: 75%;
      margin: 0 auto 2em auto; } }

.trReh #low01 .fix {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start; }
  @media only screen and (max-width: 560px) {
    .trReh #low01 .fix {
      display: block; } }
  .trReh #low01 .fix figure {
    -webkit-box-flex: 0 1 23%;
    -ms-flex: 0 1 23%;
    flex: 0 1 23%;
    min-width: 250px;
    margin: 0 1% 30px 1%; }
.trReh #low02 .name {
  font-weight: bold; }
  @media only screen and (max-width: 560px) {
    .trReh #low02 .name {
      text-align: center; } }
.trReh #low02 .photo {
  float: right;
  width: 30%; }
  @media only screen and (max-width: 560px) {
    .trReh #low02 .photo {
      float: none;
      width: 80%;
      margin: 0 auto 20px auto; } }
.trReh #low02 .text {
  float: left;
  width: 67%; }
  @media only screen and (max-width: 560px) {
    .trReh #low02 .text {
      float: none;
      width: 100%; } }

.trIns #low04 .photo {
  float: right;
  width: 50%;
  max-width: 610px;
  margin-left: 3em; }
  @media only screen and (max-width: 560px) {
    .trIns #low04 .photo {
      float: none;
      width: 100%;
      margin: 0; } }
.trIns #low04 dl {
  margin-bottom: 2em; }
  .trIns #low04 dl dt {
    margin-bottom: 12px;
    font-size: 1.125rem;
    font-weight: bold;
    color: #397763; }
    .trIns #low04 dl dt:before {
      display: inline-block;
      content: "";
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      margin-right: 1em;
      color: #cae5dd; }
  .trIns #low04 dl dd {
    padding-left: 2em; }

@media only screen and (max-width: 560px) {
  #low01 .imgR {
    float: right;
    width: 45%;
    margin-left: 5%; } }
.trNon #low02 dl {
  margin-bottom: 2em; }
.trNon #low02 dt {
  font-weight: bold;
  font-size: 1.125rem;
  color: #74bca5; }
.trNon #low03 dl {
  float: left;
  width: 72%; }
  @media only screen and (max-width: 560px) {
    .trNon #low03 dl {
      float: none;
      width: 100%; } }
  .trNon #low03 dl dd {
    margin-bottom: 2em; }
  .trNon #low03 dl dt {
    display: inline-table;
    margin-bottom: 1em;
    color: #397763;
    font-weight: bold;
    border-bottom: 3px solid #cae5dd; }
.trNon #low03 figure {
  float: right;
  width: 25%; }
  @media only screen and (max-width: 560px) {
    .trNon #low03 figure {
      float: none;
      width: 100%; } }
  .trNon #low03 figure img {
    max-width: 200px; }
  .trNon #low03 figure figcaption {
    display: block;
    margin-top: 1em; }
    .trNon #low03 figure figcaption span {
      display: block;
      font-weight: bold; }
.trNon #low04 h4 {
  color: #74bca5; }
.trNon #low04 .list-tp2b {
  position: relative;
  display: inline-table;
  padding: 1em;
  background: rgba(255, 188, 101, 0.5); }
  .trNon #low04 .list-tp2b:before {
    position: absolute;
    top: -24px;
    left: 0;
    height: 24px;
    padding: 0 1em;
    content: '長所';
    font-size: 15px;
    color: #fff;
    border-radius: 10px 10px 0 0;
    background: #ffbc65; }
  .trNon #low04 .list-tp2b li:before {
    background: #cb7300; }

.trNin #low01 .dl-table dt {
  color: #397763;
  font-weight: bold; }
.trNin #low01 .dl-table dd {
  padding-left: 25em; }
  @media only screen and (max-width: 560px) {
    .trNin #low01 .dl-table dd {
      margin: 0;
      padding: 0; } }

.trPla #low01 .imgR {
  float: right;
  width: 25%;
  margin: 0 0 2em 3em; }
  @media only screen and (max-width: 560px) {
    .trPla #low01 .imgR {
      width: 45%;
      margin: 0 0 1em 5%; } }
.trPla #low03 ol {
  display: inline-table;
  padding: 1em;
  border: 1px solid rgba(116, 188, 165, 0.5);
  border-radius: 10px; }
  .trPla #low03 ol li {
    position: relative;
    margin: 1.5em 0; }
    .trPla #low03 ol li:not(:last-of-type):after {
      content: "▼";
      position: absolute;
      left: 20%;
      bottom: -1.3em;
      color: rgba(116, 188, 165, 0.5); }
.trPla #low03 .dl-table dt {
  color: #397763;
  font-weight: bold; }
.trPla #low03 .dl-table dd {
  padding-left: 15em; }
  @media only screen and (max-width: 560px) {
    .trPla #low03 .dl-table dd {
      margin: 0;
      padding: 0 0 0 1em; } }

.trShe #low01 .btn a {
  display: inline-block;
  width: 200px; }
  .trShe #low01 .btn a span {
    display: inline-block; }
    @media only screen and (max-width: 560px) {
      .trShe #low01 .btn a span {
        display: block; } }

.access #lowMap #imgMap img {
  max-width: 1200px; }
.access #lowAcc dt {
  color: #397763;
  font-weight: bold; }
  .access #lowAcc dt:before {
    content: "●";
    margin-right: 5px;
    color: #cae5dd; }
.access #lowAcc dd {
  margin: 0 0 1em 1.6em; }
  .access #lowAcc dd.photo img {
    max-width: 600px; }

.ask #lowMap #imgMap img {
  max-width: 1200px; }
  @media only screen and (max-width: 560px) {
    .ask #lowMap #imgMap img {
      max-width: 480px; } }
.ask #lowAccess dt:before {
  content: "●";
  margin-right: 5px;
  color: #cae5dd; }
.ask #lowAccess dd {
  margin: 0 0 1em 1.6em; }

.faq dl {
  margin-bottom: 3.5em !important; }
.faq dt {
  display: inline-table;
  font-weight: bold;
  border-bottom: 3px solid #cae5dd; }
  .faq dt:before {
    content: "Q.";
    margin-right: 5px;
    color: #397763;
    font-size: 1.2em; }
.faq dd {
  margin: 1em 0 1em 1em; }
  @media only screen and (max-width: 560px) {
    .faq dd {
      margin-left: 0.5em; } }
  .faq dd:before {
    content: "A.";
    margin-right: 5px;
    color: #74bca5;
    font-size: 1.2em; }

.reserve #lowMap #imgMap img {
  max-width: 1200px; }
  @media only screen and (max-width: 560px) {
    .reserve #lowMap #imgMap img {
      max-width: 480px; } }
.reserve #lowAccess dt:before {
  content: "●";
  margin-right: 5px;
  color: #cae5dd; }
.reserve #lowAccess dd {
  margin: 0 0 1em 1.6em; }

/* Scss Document */
.blockTel {
  width: 96%;
  max-width: 680px;
  margin: 0 1%; }
  @media only screen and (max-width: 560px) {
    .blockTel {
      margin: 0 auto 20px auto;
      padding: 20px 0 10px 0; } }
  .blockTel div p {
    display: inline-block;
    width: 48%;
    margin: 0 !important; }
    @media only screen and (max-width: 560px) {
      .blockTel div p {
        display: block;
        width: 90%;
        margin: 0 auto !important; } }
  .blockTel img {
    margin: 0 auto;
    max-width: 400px; }

.reserve .nextBtn,
.reserve .dispChange,
.reserve .time,
.reserve .nextBtn {
  display: none; }
.reserve #stepNav {
  margin-bottom: 40px; }
  .reserve #stepNav li {
    display: inline-block;
    position: relative;
    padding: 12px 20px;
    border: 1px solid #c0c0c0;
    border-radius: 10px; }
    @media only screen and (max-width: 560px) {
      .reserve #stepNav li {
        padding: 6px;
        font-size: 0.75rem; } }
    .reserve #stepNav li:not(:last-child) {
      margin-right: 20px; }
      @media only screen and (max-width: 560px) {
        .reserve #stepNav li:not(:last-child) {
          margin-right: 16px; } }
    .reserve #stepNav li.hide {
      background: #D4D4D4;
      color: #3A3A3A; }
    .reserve #stepNav li.dispNow {
      background: #85c4b0;
      color: #fff; }
    .reserve #stepNav li:not(:last-of-type)::before {
      display: inline-block;
      position: absolute;
      top: 0;
      bottom: 0;
      right: -19px;
      margin: auto;
      content: " ";
      width: 0;
      height: 0;
      vertical-align: middle;
      border-style: solid;
      border-width: 10px 0 10px 12px;
      border-color: transparent transparent transparent #cae5dd; }
      @media only screen and (max-width: 560px) {
        .reserve #stepNav li:not(:last-of-type)::before {
          right: -16px;
          border-width: 7px 0 7px 9px; } }
    .reserve #stepNav li a {
      display: block;
      background: #fff; }
.reserve .calendar {
  width: 44%;
  float: left;
  margin: 0 3% 30px 3%; }
  @media only screen and (max-width: 560px) {
    .reserve .calendar {
      float: none;
      width: 100%;
      margin: 0 auto 30px auto; } }
  .reserve .calendar th,
  .reserve .calendar td {
    text-align: center;
    vertical-align: middle; }
    @media only screen and (max-width: 560px) {
      .reserve .calendar th,
      .reserve .calendar td {
        display: table-cell !important; } }
  .reserve .calendar thead th {
    width: 14.2857142857%;
    background: rgba(116, 188, 165, 0.5); }
  .reserve .calendar td:not(.out):hover {
    background: rgba(202, 229, 221, 0.4); }
  .reserve .calendar .out {
    background: #bcbcbc;
    color: #969696; }
  .reserve .calendar .half {
    background: rgba(116, 188, 165, 0.3); }
  .reserve .calendar .halfp {
    background: rgba(202, 229, 221, 0.3); }
  .reserve .calendar .today a,
  .reserve .calendar .today span {
    border: 1px solid #ff270d;
    border-radius: 50%; }
  .reserve .calendar a {
    display: block;
    color: #000 !important; }
  .reserve .calendar .selCel {
    background: #ff270d !important; }
    .reserve .calendar .selCel a {
      color: #fff !important; }
.reserve .comm li {
  display: inline-block;
  margin-right: 1.5em;
  font-size: 0.875rem; }
  .reserve .comm li span {
    display: inline-block; }
    .reserve .comm li span.today, .reserve .comm li span.check {
      color: #ff270d !important; }
    .reserve .comm li span.half {
      color: rgba(116, 188, 165, 0.3) !important; }
    .reserve .comm li span.halfp {
      color: rgba(202, 229, 221, 0.3) !important; }
    .reserve .comm li span.out {
      color: #bcbcbc; }
.reserve table.form caption {
  padding: 0;
  color: #000;
  text-align: left; }
  .reserve table.form caption:before, .reserve table.form caption:after {
    content: ""; }
.reserve .acc dl {
  margin: 0 0 3px 0 !important;
  padding: 6px;
  background: rgba(116, 188, 165, 0.4); }
  .reserve .acc dl:after {
    content: "";
    display: block;
    height: 0;
    visibility: hidden;
    clear: both; }
.reserve .acc dt {
  float: left;
  width: 28%;
  min-width: 15em;
  margin-right: 2%; }
.reserve .acc dd {
  float: left;
  width: 70%; }
.reserve .acc label {
  display: inline-block;
  margin-right: 18px; }
.reserve .input-group {
  display: flex;
  align-items: center; }
  .reserve .input-group input {
    border: 1px solid #c3c3c3;
    height: 36px;
    line-height: 36px;
    width: 80%;
    padding: 4px;
    max-width: 360px;
    border-radius: 3px;
    background: #fff; }
.reserve a.input-button {
  text-decoration: none;
  border: 1px solid #bbb;
  display: block;
  padding: 13px;
  border-left: 0;
  cursor: pointer;
  align-self: center;
  justify-content: center;
  line-height: 1; }

table.form caption,
table.form th,
table.form td {
  position: relative;
  padding: 0.8em 1em 0.5em 1em;
  text-align: left;
  font-size: 95%; }
table.form caption {
  padding: 1.2em 1em 0.9em 1em;
  color: #ffbc65;
  text-align: center; }
  table.form caption:before, table.form caption:after {
    content: " ◆ "; }
table.form caption,
table.form tr:last-child td {
  border-bottom-style: solid; }
table.form th,
table.form td {
  border: 1px solid #d1c6bf !important; }
table.form th {
  width: 20%;
  white-space: nowrap;
  color: #000;
  font-weight: normal;
  text-align: left;
  background: #dbeee8; }
  .reserve table.form th {
    background: rgba(116, 188, 165, 0.4); }
  .recruit table.form th {
    background: rgba(255, 188, 101, 0.4); }
table.form td {
  width: 80%; }
table.form .red {
  font-size: 1.125rem; }
table.form select {
  cursor: pointer; }
table.form select::-ms-expand {
  display: none; }
table.form .select span:after {
  display: block;
  position: absolute;
  top: 50%;
  left: 9em;
  width: 7px;
  height: 7px;
  margin-top: -5px;
  content: " ";
  border: 1px solid #999;
  border-right: 0;
  border-top: 0;
  pointer-events: none;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg); }
table.form textarea {
  width: 95%; }
@media only screen and (max-width: 560px) {
  table.form {
    width: 100%; }
    table.form th,
    table.form td {
      display: block;
      width: 100%;
      padding: 0.8em 1em 0.5em 1em;
      border: none;
      text-align: left;
      font-size: 95%; }
    table.form th {
      padding: 0.6em 0em 0.4em 1em; }
    table.form td {
      padding: 1em 0em 1.5em 1em; }
    table.form select {
      margin: 0;
      padding: 4px 0; } }

input[type="text"],
input[type="tel"],
input[type="number"],
input[type="email"],
textarea,
select {
  outline: none;
  border: 1px solid #c6c6c6;
  border-radius: 4px;
  padding: 4px; }
  @media only screen and (max-width: 560px) {
    input[type="text"],
    input[type="tel"],
    input[type="number"],
    input[type="email"],
    textarea,
    select {
      display: inline-block;
      font-size: 1.15rem; } }

input[type="text"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
textarea:focus,
select:focus {
  box-shadow: 0 0 7px #a0e2b5;
  border: 1px solid #c6c6c6; }

input[type="button"],
input[type="reset"],
input[type="submit"] {
  display: inline-block;
  margin: 0 2%;
  padding: 0.4em 1.8em;
  border: 1px solid #d3d1b7;
  border-radius: 2em;
  letter-spacing: 0.1em;
  cursor: pointer; }

input[type="button"],
input[type="submit"] {
  margin-bottom: 1em;
  background: -webkit-linear-gradient(top, #fefac8 4%, #d1a300 83%);
  background: linear-gradient(to bottom, #fefac8 4%, #d1a300 83%); }
  @media only screen and (max-width: 560px) {
    input[type="button"],
    input[type="submit"] {
      font-size: 0.85em; } }

input[type="button"]:hover,
input[type="submit"]:hover {
  background: -webkit-linear-gradient(top, #d1a300 11%, #fefac8 90%);
  background: linear-gradient(to bottom, #d1a300 11%, #fefac8 90%); }

input[type="tel"],
input[type="number"],
input[type="email"] {
  ime-mode: disabled; }

::placeholder,
::-webkit-input-placeholder,
::-moz-placeholder,
::-ms-input-placeholder,
:-ms-input-placeholder {
  color: #cecece !important; }

.inputMail {
  width: 100%;
  max-width: 380px; }

.postal {
  width: 7em; }

.inputAdd1 {
  width: 100%;
  max-width: 280px; }

.inputAdd2 {
  width: 100%;
  max-width: 480px; }

@media only screen and (max-width: 560px) {
  .inputMail,
  .inputAdd2 {
    max-width: 94%; }

  label {
    display: block; } }
input,
textarea {
  ime-mode: active; }

input[type="tel"],
input[type="number"],
input[type="email"],
.imeOff {
  ime-mode: disabled; }

button {
  cursor: pointer; }

.bn-bu button {
  padding: 0;
  margin: 0 auto;
  background: none;
  border: none; }

.ime {
  ime-mode: disabled; }

.ermes {
  display: inline-block;
  padding: 0.5em 0.5em 0.2em 0.5em;
  border: 1px solid red;
  border-radius: 8px;
  line-height: 1;
  font-size: 0.8em;
  color: #fff;
  background: red; }

/* slidenav Scss */
/*############################################################################################33*/
/* スライドメニュー指定 */
/*############################################################################################*/
@media only screen and (max-width: 560px) {
  #slide-menu {
    display: -webkit-box;
    display: flex;
    flex-direction: column;
    position: fixed;
    z-index: 20 !important;
    top: 0;
    right: -100%;
    bottom: 0;
    width: 100%;
    max-width: 85%;
    height: 100%;
    padding-top: 50px;
    overflow-y: scroll;
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
    background: #397763;
    opacity: 0.1; }
    .menu-active #slide-menu {
      right: 0px;
      opacity: 1;
      box-shadow: 0 0 10px #397763; }
    #slide-menu #globalNav {
      width: 100%;
      margin: 0 !important;
      order: 1;
      z-index: 30 !important; }

  #wrapper {
    position: relative;
    right: 0; }

  .menu-trigger {
    position: fixed;
    z-index: 21;
    top: 10px;
    right: 10px;
    width: 40px;
    height: 40px;
    background: #fff;
    cursor: pointer;
    border-radius: 50%;
    border: 2px solid #397763;
    -webkit-transition: all 300ms;
    transition: all 300ms; }
    .menu-trigger:before {
      display: inline-block;
      content: '\f0c9';
      width: 36px;
      height: 36px;
      color: #397763;
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      font-size: 1.2em;
      text-align: center;
      line-height: 36px; }
    .menu-active .menu-trigger:before {
      content: '×';
      font-family: Arial, Helvetica, "sans-serif"; } }
/* print Scss */
/*############################################################################################33*/
/* 印刷向けレイアウトの指定 */
/*############################################################################################*/
@media only print {
  html, body, div, span, object, iframe,
  h1, h2, h3, h4, h5, h6, p, blockquote, pre,
  abbr, address, cite, code,
  del, dfn, em, img, ins, kbd, q, samp,
  small, strong, sub, sup, var,
  b, i,
  dl, dt, dd, ol, ul, li,
  fieldset, form, label, legend,
  table, caption, tbody, tfoot, thead, tr, th, td,
  article, aside, canvas, details, figcaption, figure,
  footer, header, hgroup, menu, nav, section, summary,
  time, mark, audio, video {
    font-size: 97%; }

  .fixed {
    position: relative;
    top: auto;
    z-index: auto; }

  .sameHeightPc {
    display: block; }

  .dispSp,
  .slider,
  #ptBtn,
  .low footer {
    display: none !important;
    float: none !important; }

  header:after {
    content: "";
    display: block;
    height: 0;
    visibility: hidden;
    clear: both; }

  .home #container {
    margin: 200px auto 0 auto;
    padding: 25px 0 0 0; }
  .home #forPatient {
    float: left;
    width: 65%;
    margin-right: 0; }
  .home #forMedical {
    float: right;
    width: 30%; }
  .home #forRegion li {
    display: block;
    float: left;
    height: 70px; }
    .home #forRegion li:nth-of-type(even) {
      float: right; }

  #bread {
    font-size: 10px;
    margin: 15px 0; }

  .home #hdImage {
    height: 300px !important; }

  .pBreak,
  .home footer {
    page-break-before: always; }

  .pBreakAf {
    page-break-after: always !important; } }
