@charset "UTF-8";
/* ================================================================= 
 License : e-TRUST Inc.
 File name : common.css
 Style : common
================================================================= */
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

body {
  background: url(../images/common/bg.jpg) repeat-x center top;
  color: #292c2f;
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 16px;
  word-wrap: break-word; }

figure {
  padding: 0;
  margin: 0; }

.inner {
  margin: 0 auto;
  max-width: 1000px; }

@media screen and (max-width: 1000px) {
  .inner {
    padding-left: 20px !important;
    padding-right: 20px !important; } }
@media screen and (max-width: 468px) {
  .inner {
    padding-left: 10px !important;
    padding-right: 10px !important; } }
.sinner {
  max-width: 620px; }

#contents_wrap {
  position: relative;
  z-index: 1;
  overflow: hidden; }

#contents {
  padding: 0; }

.map {
  margin: 56px 20px 0; }

.map li {
  border-left: 5px solid #CCCCCC;
  list-style: none;
  margin: 0 0 15px;
  padding: 0 0 0 10px;
  text-align: left; }

.policy h3 {
  border-bottom: 2px solid #BBBBBB;
  font-size: 18px;
  font-weight: bold;
  margin: 0 0 15px;
  padding: 0 0 5px; }

.policy p {
  margin: 0 0 20px; }

table {
  table-layout: fixed; }

.tlauto table {
  table-layout: auto; }

.tbl_block table td {
  margin-top: -1px; }

.tbl_scroll table {
  table-layout: auto; }

.tdpd0 table td {
  padding: 0 !important; }

.tdpd5 table td {
  padding: 5px !important; }

table td img {
  max-width: 100% !important;
  height: auto !important; }

pre {
  margin: 0;
  padding: 0;
  white-space: pre-line; }

b, strong, .fwb a {
  font-weight: bold; }

u {
  text-decoration: line-through; }

img {
  max-width: 100%;
  height: auto !important; }

small {
  font-size: 80%; }

hr {
  border: none;
  height: 0;
  border-bottom: 1px dashed #B3B3B3; }

span {
  font-weight: inherit; }

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%; }

.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important; }

u {
  text-decoration: underline; }

input[type="button"] {
  cursor: pointer;
  padding: 5px 10px; }

.tacenter {
  text-align: center !important; }

.ColLeft {
  float: left; }

.ColRight {
  float: right; }

.flexleft {
  display: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  overflow: hidden; }

.flexcenter {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  overflow: hidden; }

@media screen and (max-width: 1000px) {
  .imgR, .imgL {
    max-width: 30% !important; } }
@media screen and (max-width: 468px) {
  .imgR, .imgL {
    display: block;
    float: none;
    margin: 0 auto 10px;
    max-width: 100% !important;
    text-align: center; } }

.fwb {
  font-weight: bold; }

.mincho {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif; }

.gothic {
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }

@media screen and (max-width: 768px) {
  .ColLeft {
    float: none;
    width: 100% !important; }

  .ColRight {
    float: none;
    width: 100% !important; } }
@media screen and (max-width: 468px) {
  .sptal {
    text-align: left !important; }

  .sptar {
    text-align: right !important; }

  .sptac {
    text-align: center !important; } }
header#global_header {
  clear: both;
  min-width: 0;
  max-width: 100%;
  position: relative;
  z-index: 2; }

#headerinner {
  padding-top: 20px;
  padding-bottom: 20px;
  position: relative; }
  #headerinner h1 {
    float: left;
    text-align: left; }
  #headerinner #logo {
    position: absolute;
    top: 20px;
    left: 50%;
    margin-left: -55px; }
  #headerinner dl {
    float: right;
    text-align: right; }
    #headerinner dl dd {
      margin-top: 10px; }
  @media screen and (max-width: 768px) {
    #headerinner #logo {
      margin: 2em 0 0 -40px;
      width: 80px; } }
  @media screen and (max-width: 600px) {
    #headerinner {
      padding-top: 15px;
      padding-bottom: 15px; }
      #headerinner h1 {
        float: none;
        margin-bottom: 10px; }
      #headerinner #logo {
        position: inherit;
        top: inherit;
        left: inherit;
        margin: 0;
        float: left;
        max-width: 31.79%;
        width: auto; }
      #headerinner dl {
        max-width: 67.26%; }
        #headerinner dl dt img {
          width: 65.04%; }
        #headerinner dl dd {
          margin-top: 4.42%; }
          #headerinner dl dd img {
            width: 95.57%; }
          #headerinner dl dd .tel img {
            width: 100%; } }

#gnavi {
  background: rgba(202, 229, 255, 0.9); }
  #gnavi ul li {
    float: left;
    position: relative;
    width: 16.66%; }
    #gnavi ul li a {
      color: #000000;
      display: block;
      font-size: 17px;
      padding: 15px;
      text-decoration: none; }
      #gnavi ul li a:hover {
        color: #4E8FCB; }
    #gnavi ul li ul {
      position: absolute;
      top: 100%;
      left: 0;
      width: 100%; }
      #gnavi ul li ul li {
        float: none;
        width: 100%; }
        #gnavi ul li ul li a {
          background: rgba(78, 144, 205, 0.8);
          border-bottom: 1px solid #FFFFFF;
          color: #FFFFFF;
          font-size: 15px;
          padding: 10px; }
        #gnavi ul li ul li:before {
          display: none; }
        #gnavi ul li ul li:last-child:after {
          display: none; }
    #gnavi ul li:before {
      position: absolute;
      top: 50%;
      left: 0;
      margin-top: -3px;
      background: #8BC1F3;
      border-radius: 50%;
      display: block;
      content: "";
      height: 5px;
      width: 5px; }
    #gnavi ul li:last-child:after {
      position: absolute;
      top: 50%;
      right: 0;
      margin-top: -3px;
      background: #8BC1F3;
      border-radius: 50%;
      display: block;
      content: "";
      height: 5px;
      width: 5px; }
  @media screen and (max-width: 1000px) {
    #gnavi ul li a {
      font-size: 1.7vw;
      padding: 9.03%; }
    #gnavi ul li ul li a {
      font-size: 1.5vw;
      padding: 6.02%; } }

.mean-container .mean-nav ul.inner {
  padding: 0 !important; }

footer#global_footer {
  background: url(../images/common/bg.jpg) repeat center top;
  min-width: 0;
  max-width: 100%; }
  footer#global_footer a {
    color: #292c2f;
    text-decoration: none; }
    footer#global_footer a:hover {
      color: #4E8FCB;
      text-decoration: underline; }

#footerinner {
  padding-top: 30px;
  padding-bottom: 30px;
  text-align: left; }
  #footerinner .f_left {
    float: left;
    width: 36%; }
    #footerinner .f_left dl {
      margin-top: 20px; }
      #footerinner .f_left dl dd {
        margin-top: 10px; }
  #footerinner #f_schedule {
    float: right;
    width: 58%; }
    #footerinner #f_schedule .ttl {
      background: url(../images/common/icon_cat.png) no-repeat left top;
      border-bottom: 1px solid #4E8FCB;
      font-size: 25px;
      font-weight: bold;
      line-height: 1.1;
      padding: 18px 0 9px 50px; }
    #footerinner #f_schedule table {
      border: 1px solid #4E8FCB;
      background: #FFFFFF;
      font-weight: bold;
      line-height: 1.1;
      table-layout: auto; }
      #footerinner #f_schedule table thead {
        background: #E4F2FE; }
        #footerinner #f_schedule table thead th {
          border: 1px solid #4E8FCB;
          font-weight: bold;
          padding: 15px 0;
          text-align: center;
          width: 10%; }
          #footerinner #f_schedule table thead th.time {
            width: 20%; }
          #footerinner #f_schedule table thead th.blue {
            color: #267ac9; }
          #footerinner #f_schedule table thead th.red {
            color: #af3737; }
      #footerinner #f_schedule table tbody td {
        border: 1px solid #4E8FCB;
        font-weight: bold;
        padding: 10px 0;
        text-align: center; }
        #footerinner #f_schedule table tbody td span {
          display: block;
          font-size: 14px; }
  @media screen and (max-width: 768px) {
    #footerinner .f_left {
      float: none;
      width: 100%; }
      #footerinner .f_left .fnavi {
        float: left;
        max-width: 67%; }
      #footerinner .f_left dl {
        float: right;
        margin-top: 0;
        text-align: right;
        max-width: 31%; }
        #footerinner .f_left dl dd {
          margin-top: 4.42%; }
    #footerinner #f_schedule {
      float: none;
      margin-top: 20px;
      width: 100%; } }
  @media screen and (max-width: 468px) {
    #footerinner .f_left .fnavi {
      float: none;
      max-width: 100%;
      text-align: center; }
    #footerinner .f_left dl {
      float: none;
      margin-top: 20px;
      max-width: 100%;
      text-align: center; }
      #footerinner .f_left dl dd {
        margin-top: 10px; }
    #footerinner #f_schedule table {
      font-size: 13px;
      table-layout: fixed; }
      #footerinner #f_schedule table thead th {
        padding: 10px 0; }
        #footerinner #f_schedule table thead th.time {
          width: 25% !important; }
      #footerinner #f_schedule table tbody td {
        padding: 10px 0; }
        #footerinner #f_schedule table tbody td span {
          font-size: 10px;
          font-weight: normal; } }

#copyright {
  background: #4E8FCB;
  color: #FFFFFF;
  font-size: 12px;
  padding: 5px 0; }

#contents_wrap {
  overflow: hidden;
  padding: 0 0 100px;
  width: auto;
  position: relative;
  z-index: 1; }
  @media screen and (max-width: 1000px) {
    #contents_wrap {
      min-width: 0;
      padding: 0 20px 60px; } }
  @media screen and (max-width: 468px) {
    #contents_wrap {
      padding: 0 10px 50px; } }

@media screen and (max-width: 1000px) {
  #contents, #main, #main #col_main {
    float: none;
    width: 100%; } }

#main #col_main {
  background: rgba(255, 255, 255, 0.8); }

/* common */
.btn1 a {
  background: url(../images/common/icon_arrow.png) no-repeat right 15px center #4E8FCB;
  border-radius: 30px;
  color: #FFFFFF;
  display: block;
  font-size: 17px;
  font-weight: bold;
  padding: 5px;
  text-align: center;
  text-decoration: none; }
  .btn1 a:hover {
    opacity: 0.7; }

.box1 {
  border: 1px solid #B4BBC1; }

.bB01 {
  border-bottom: 1px solid #CEE5FC; }

/* headline */
.ttl1 {
  font-size: 24px;
  line-height: 1.2; }
  @media screen and (max-width: 468px) {
    .ttl1 {
      font-size: 20px; } }

.ttl_cat, .ttl_dog {
  background: url(../images/common/icon_cat.png) no-repeat left top;
  border-bottom: 2px solid #4E8FCB;
  font-size: 25px;
  font-weight: bold;
  line-height: 1.1;
  padding: 18px 0 9px 50px; }

.ttl_dog {
  background: url(../images/common/icon_dog.png) no-repeat left top; }

.pgttl {
  background: url(../images/common/icon_cat.png) no-repeat 10px top, url(../images/common/icon_dog2.png) no-repeat right top;
  display: inline-block;
  font-size: 36px;
  font-weight: bold;
  padding: 0 70px; }
  @media screen and (max-width: 468px) {
    .pgttl {
      font-size: 25px;
      background-position: 5px 7px, right 7px;
      background-size: 20px, 25px;
      padding: 0 40px; } }

.ttl2 {
  background: url(../images/common/pgttl_treatment.png) no-repeat center top;
  color: #4E8FCB;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.3;
  padding: 37px 0; }
  .ttl2 span {
    color: #949494;
    display: block;
    font-size: 16px;
    font-weight: normal; }
  @media screen and (max-width: 468px) {
    .ttl2 {
      font-size: 25px;
      padding: 41px 0; } }

.facilitybox {
  border: 1px solid #E4F2FE; }
  .facilitybox table td {
    padding: 0 20px 20px !important; }
    .facilitybox table td.img {
      padding: 0 0 20px !important; }
    .facilitybox table td.ttl {
      padding-bottom: 10px !important; }

.faq_q {
  background: url(../images/common/faq_q.png) no-repeat left top;
  border-bottom: 1px dotted #4E8FCB;
  color: #4E8FCB;
  font-size: 20px;
  font-weight: bold; }

.faq_a {
  background: url(../images/common/faq_a.png) no-repeat left top;
  border-bottom: 3px double #4E8FCB; }
