@charset "UTF-8";
/*============================================================
　デフォルトスタイルのリセット
  ============================================================*/
header, footer, section, summary, article, aside, details, menu, nav, figcaption, figure, img {
  display: block;
}

body, menu, figure, form, h1, h2, h3, h4, h5, h6, p, img, dl, dt, dd, ul, ol, li, input {
  margin: 0px;
  padding: 0px;
  border: 0;
  outline: 0;
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

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

li {
  list-style: none;
}

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

select {
  border-radius: 0;
  border: 0;
  margin: 0;
  padding: 0;
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
}

/*============================================================
　基本スタイル
  ============================================================*/
body {
  -webkit-text-size-adjust: 100%;
}

html {
  font-size: 62.5%;
  background-color: #fff;
}

/*　変数　*/
/*　共通　*/
body {
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", 'Verdana', "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-size: 1.4rem;
  color: #2c2c2c;
}

a {
  color: #2c2c2c;
  text-decoration: none;
}

input,
select {
  border: solid 1px #cccccc;
  border-radius: 5px;
  background-color: #fff;
  color: #666666;
  font-size: 16px;
}

/*　書式　*/
.mincho {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

footer dl dt,
button[class^="btn-"],
a[class^="btn-"],
div.views {
  font-family: 'Montserrat', sans-serif;
  letter-spacing: 5px;
}

.main h2,
.topmain h2,
.topside h2,
.search-box h2,
.sidebox h2,
.other-interview h2,
.new-list h2 {
  text-align: center;
  position: relative;
  padding-bottom: 60px;
  margin-bottom: 50px;
}

.main h2:after,
.topmain h2:after,
.topside h2:after,
.search-box h2:after,
.sidebox h2:after,
.other-interview h2:after,
.new-list h2:after {
  position: absolute;
  content: "";
  top: 45px;
  left: -30px;
  margin-left: 50%;
  width: 60px;
  height: 1px;
  background-color: #000;
}

/*　レイアウト　*/
#container {
  position: relative;
}

#contents {
  overflow: hidden;
  margin: 0 auto 75px;
}

/*　ボタン　*/
button[class^="btn-"],
a[class^="btn-"],
div.caloo-btn div a {
  position: relative;
  display: block;
  background-color: #fff;
  border: 1px solid #2c2c2c;
  color: #2c2c2c;
  text-align: center;
  text-decoration: none;
  width: 100%;
  border-radius: 2px;
  padding: 18px 0;
  cursor: pointer;
}

button[class^="btn-"]:after,
a[class^="btn-"]:after {
  position: absolute;
  top: 50%;
  content: '';
  border-top: 2px solid #2c2c2c;
  border-right: 2px solid #2c2c2c;
  transform: rotate(45deg);
  right: 20px;
  width: 5px;
  height: 5px;
  margin-top: -3px;
}

/*　WP-PageNavi　*/
div.wp-pagenavi {
  text-align: center;
}

div.wp-pagenavi span.pages, div.wp-pagenavi span.extend, div.wp-pagenavi a.first, div.wp-pagenavi a.last {
  display: none;
}

div.wp-pagenavi span.current,
div.wp-pagenavi a {
  display: inline-block;
  width: 56px;
  cursor: pointer;
  padding: 20px 0;
  color: #000;
  border-bottom: solid 2px #000;
  background-color: #fff;
  margin: 0 2px;
  font-weight: bold;
}

div.wp-pagenavi span.current {
  color: #666666;
  background-color: #cccccc;
  border-bottom: solid 2px #cccccc;
}

div.linkpages {
  text-align: center;
  margin: 40px auto;
}

/*　新着インタビュー小リスト　*/
.sidebox {
  border: solid #dcdcdc 1px;
  padding: 45px 20px;
  width: 87.5%;
  margin: 30px auto 0;
}

.sidebox div.thumbnails {
  overflow: hidden;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  border-radius: 50px;
  display: inline-block;
}

.sidebox div.thumbnails img {
  width: 65px;
  height: 65px;
}

.sidebox ul li a{
  padding: 25px 4px;
  display: block;
}

.sidebox ul li:last-child a{
  border-bottom: none;
}

.sidebox dl {
  display: inline-block;
  vertical-align: top;
  font-size: 1.3rem;
  margin-left: 15px;
  line-height: 1.6;
  width: 50vw;
}

.sidebox dl dd {
  font-weight: bold;
  color: #666666;
  margin-top: 5px;
}

@media only screen and (min-device-width: 320px) and (max-device-width: 374px) {
  .sidebox dl {
    width: 45vw;
  }
}

@media only screen and (min-device-width: 375px) and (max-device-width: 413px) {
  .sidebox dl {
    width: 51vw;
  }
}

.sidebox div.tag-cloud {
  padding-top: 15px;
}

.sidebox div.tag-cloud a {
  margin: 0 1.5em .8em 0em;
}

/*　new　*/
div.new {
  color: #fff;
  border-radius: 100px;
  background-color: #f7ab00;
  opacity: 0.9;
  width: 50px;
  height: 50px;
  line-height: 50px;
  position: absolute;
  top: -20px;
  right: -10px;
  text-align: center;
  z-index: 1;
}

/*　tag　*/
div.tag {
  color: #fff;
  background-color: #15568a;
  border-radius: 30px;
  padding: 4px 20px;
  font-size: 1.3rem;
  display: inline-block;
  position: absolute;
  top: -10px;
  left: -5px;
}

/*　PC用画像（非表示）　*/
img.pc-img,
div.pc-img {
  display: none !important;
}

/*============================================================
　ヘッダー
  ============================================================*/
header {
  width: 100%;
  height: 65px;
  border-bottom: solid #dedede 1px;
  position: relative;
}

header a#di-logo {
  display: block;
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
}

header a#di-logo img {
  width: 250px;
}

header h1 {
  display: none;
  color: #666666;
  font-weight: normal;
  font-size: 1.2rem;
}

/*　SPメニュー　*/
#menu {
  position:fixed;
  z-index: 999;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.9);
  transition: all 0.5s;
  color: #fff;
  padding: 65px 0 0;
  opacity: 0;
  pointer-events: none;
  overflow-y: scroll;
}

.active #menu {
  opacity: 1;
  pointer-events: auto;
}

#menu li {
  border-top: solid 1px #666666;
  height: 60px;
  position: relative;
}

#menu li a {
  color: #fff;
  display: block;
  line-height: 60px;
  padding: 0 30px;
}

#menu li a:after {
  position: absolute;
  top: 50%;
  content: '';
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  right: 30px;
  width: 5px;
  height: 5px;
  margin-top: -3px;
}

#menu ul li dl {
  padding: 0 30px 10px;
}

#menu ul li dl dt {
  margin: 25px 0 15px;
}

#menu ul li dl dd {
  margin-bottom: 20px;
}

#menu ul li dl dd ul li {
  border-top: none;
  height: 45px;
  margin-bottom: 12px;
}

#menu ul li dl input, #menu ul li dl select {
  width: 100%;
  height: 40px;
  padding-left: 10px;
}

#menu ul li dl select:active {
  background-color: #fff;
}

#menu ul li dl button {
  padding: 18px 0;
  margin-top: 15px;
  color: #fff;
  border: 1px solid #fff;
  background-color: transparent;
}

#menu ul li dl button:after {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

/* ハンバーガー */
#btn-menu {
  position: absolute;
  z-index: 99999;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
  cursor: pointer;
  width: 25px;
  height: 25px;
}

#btn-menu span, #btn-menu span:before, #btn-menu span:after {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  display: block;
  width: 25px;
  height: 1px;
  font-size: 0;
  background: #2c2c2c;
  transition: all .3s;
}

#btn-menu span:before {
  transform: translateY(-8px);
  top: 0px;
}

#btn-menu span {
  top: 50%;
  transform: translateY(-50%);
}

#btn-menu span:after {
  transform: translateY(8px);
  top: 0px;
}

/* ×に変化 */  
.active #btn-menu span {
  background: none;
}

.active #btn-menu span:before {
  transform: rotate(45deg);
  background: #fff;
}

.active #btn-menu span:after {
  transform: rotate(-45deg);
  background: #fff;
}


/*============================================================
　フッター
  ============================================================*/
footer {
  background-color: #3f3f3f;
  color: #cccccc;
  padding-top: 80px;
}

div.footer-menu {
  margin: 0 auto 60px;
  padding: 0 20px;
}

div.footer-menu a {
  color: #cccccc;
}

div.footer-menu dl {
  margin-bottom: 60px;
}

div.footer-menu dl dt {
  font-size: 2.4rem;
  margin-bottom: 30px;
}

div.footer-menu dl dd {
  font-size: 1.3rem;
}

div.footer-menu dl dd h4 {
  font-size: 1.6rem;
  font-weight: normal;
  margin-bottom: 25px;
}

div.footer-menu dl dd p {
  line-height: 2;
}

div.footer-menu ul li {
  margin-bottom: 20px;
}

div.footer-box {
  border-top: solid 1px #292929;
  position: relative;
  text-align: center;
}

div.footer-box:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  border-top: 1px solid #5f5f5f;
}

div.copyright {
  margin: 0 auto;
  padding: 35px 0;
  position: relative;
}

div.copyright div.caloologo {
  display: inline-block;
  font-size: 1.3rem;
  letter-spacing: 1.5px;
}

div.copyright div.caloologo img {
  width: 95px;
  display: inline;
  margin-left: 10px;
}

div.copyright p {
  font-size: 1rem;
  margin-top: 25px;
}

/*　ページトップへ　*/
p.gotop {
  position: fixed;
  right: 5%;
  bottom: 0;
}

p.gotop a {
  width: 50px;
  height: 50px;
  display: block;
  background-color: #cccccc;
  position: relative;
}

p.gotop a span {
  width: 16px;
  height: 16px;
  border-top: 2px solid #666;
  border-right: 2px solid #666;
  transform: rotate(-45deg);
  position: absolute;
  top: 10px;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

/*============================================================
　TOPページ：スライダー
  ============================================================*/

#top-slider {
  margin-bottom: 80px;
  border-bottom: solid #dedede 1px;
}
#top-slider .wpsisac-slick-slider-wrp {
  position: relative;
}
#top-slider .wpsisac-slick-slider .slick-dots li {
  margin: 0 4px !important;
}
#top-slider .wpsisac-slick-slider .slick-dots li button {
  width: 10px !important;
  height: 10px !important;
}
#top-slider .wpsisac-slick-slider .slick-dots li button:hover {
  cursor: pointer;
}
#top-slider .wpsisac-slide-wrap {
  height: 270px !important;
}
#top-slider .wpsisac-slick-slider.design-1 .wpsisac-image-slide img {
  width: auto;
  height: 100%;
}
/* レスポンシブ */
@media screen and (max-width: 455px) {
  #top-slider .wpsisac-slide-wrap {
    height: 225px !important;
  }
  #top-slider .wpsisac-slick-slider.design-1 .wpsisac-image-slide img {
    width: auto;
    height: 100%;
  }
}
@media screen and (max-width: 374px) {
  #top-slider .wpsisac-slide-wrap {
    height: 200px !important;
  }
  #top-slider .wpsisac-slick-slider.design-1 .wpsisac-image-slide img {
    width: auto;
    height: 100%;
  }
}
#top-slider .wpsisac-image-slide, .wpsisac-slide-wrap {
  height: auto !important;
  width: 100%;
}
.wpsisac-image-slide, .wpsisac-slide-wrap {
  height: auto !important;
}
/* スライダードット */
#top-slider .wpsisac-slick-slider .slick-dots li.slick-active button {
  background: #666 !important;
}
#top-slider .wpsisac-slick-slider .slick-dots li button {
  border:none;
  background: #eee !important;
}
#top-slider .wpsisac-slick-slider.design-1 .slick-dots {
  position: absolute;
  bottom: -30px !important;
  left: 15px;
  right: 15px;
}
/* スライダー矢印 */
#top-slider .wpsisac-slick-slider.design-1 .slick-arrow {
  display: none !important;
}

/*============================================================
　TOPページ：メインコンテンツ
  ============================================================*/
.main,
.topmain {
  width: 100%;
}

.main h2,
.topmain h2 {
  font-size: 1.9rem;
  margin-bottom: 0;
}

.main ul.list,
.topmain ul.list {
  margin: 0 0 10px;
  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;
}

.main ul.list li,
.topmain ul.list li {
  margin: 0 auto 60px;
  width: 87.5%;
  list-style: none;
  position: relative;
}

.main ul.list br,
.topmain ul.list br {
  display: none;
}

.main .btn-more,
.topmain .btn-more {
  width: 87.5%;
  margin: 0 auto 100px;
  display: block;
}

.main .btn-more:after,
.topmain .btn-more:after {
  width: 8px;
  height: 8px;
  margin-top: -5px;
  right: 20px;
}

.main {
  margin-top: 75px;
}

ul.list li a {
  display: block;
}

ul.list li img {
  width: 100%;
  height: auto;
  border-radius: 5px;
}

ul.list li h3 {
  margin: 10px 0;
  line-height: 1.6;
}

ul.list li p {
  font-size: 1.3rem;
  line-height: 1.6;
}

ul.list li dl {
  border-top: solid 1px #cccccc;
  font-size: 1.3rem;
  line-height: 1.4;
  color: #666666;
  margin: 10px 0;
}

ul.list li dl dt {
  margin: 10px 0 5px;
}

ul.list li dl dd {
  font-weight: bold;
}

/*============================================================
　TOPページ：サイドコンテンツ
  ============================================================*/
.topside .btn-more {
  margin-top: 20px;
}

.topside .banner {
  margin: 40px auto 0;
  width: 87.5%;
}

.topside .banner ul li {
  margin-bottom: 20px;
}

.topside .banner ul li img {
  width: 100%;
}

.search-box,
.s-box {
  background-color: #f3f2ee;
  padding: 45px 20px;
  margin-bottom: 40px;
  width: 87.5%;
  margin: 0 auto;
}

.search-box ul li,
.s-box ul li {
  margin-bottom: 20px;
}

.search-box input,
.search-box select,
.s-box input,
.s-box select {
  width: 100%;
  height: 40px;
  padding-left: 10px;
}

/* セレクトボタン共通(トップ・検索結果一覧) */
#searchform ul li label {
  position: relative;
  display: block;
}

#searchform ul li label:after {
  content: '';
  position: absolute;
  top: 14px;
  right: 10px;
  display: block;
  width: 4px;
  height: 4px;
  border-right: 2px solid #666666;
  border-bottom: 2px solid #666666;
  transform: rotate(45deg);
}

.search-box .btn-search,
.s-box .btn-search {
  background-color: #f3f2ee;
  font-size: 1.4rem;
}

.search-box h2,
.sidebox h2 {
  font-size: 1.6rem;
  padding-bottom: 0;
}

.search-box h2:after,
.sidebox h2:after {
  top: 45px;
}

/*============================================================
　新着インタビュー（トップ）
  ============================================================*/

.topside .new-list {
  width: 100%;
}

.topside .new-list .tag,
.topside .new-list h3,
.topside .new-list p,
.topside .new-list .tag-list,
.topside .new-list .new {
  display: none;
}

.topside .new-list ul li a {
  padding: 25px 0px;
  overflow: hidden;
  display: flex;
  color: #666666;
}

.topside .new-list ul li a:hover {
  opacity: 0.7 !important;
  transition: all .3s !important;
}

.topside .new-list ul li:last-child a{
  border-bottom: none;
}

.topside .new-list .thumbnail {
  width: auto !important;
}

.topside .new-list .thumbnail img {
  width: 65px;
  height: 65px;
  object-fit: cover;
  border-radius: 50%;
}

.topside .new-list ul li dl {
  margin: 0 0 0 15px !important;
  line-height: 1.6;
  border: none;
  margin-top: 0;
}

.topside .new-list ul li dl dt {
  margin-top: 0;
}

/*============================================================
　インタビュー記事：共通
  ============================================================*/
img.spimg {
  width: 100%;
}

div.interview,
div.hospital-box,
div.new-list,
div.other-interview {
  width: 87.5%;
  margin: 0 auto;
}

div.interview img {
  width: 100%;
  height: auto;
  border-radius: 5px;
}

/*　インタビュー本文　*/
div.interview {
  margin-top: 10px;
  margin-bottom: 35px;
}

div.interview > div:first-child {
  padding: 30px 20px;
  line-height: 2;
}

div.interview h2 {
  border-left: none !important;
  margin: 60px 0 30px;
  text-align: justify;
}

div.interview h3 {
  margin: 20px 0;
  font-size: 1.7rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
  text-align: justify;
}

div.interview p {
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
  text-align: justify;
  word-break: break-all;
}

div.interview a,
div.message a {
  text-decoration: underline;
}

div.interview img {
  margin: 45px auto;
}

div.interview img.alignnone {
  max-width: 370px;
}

div.interview img.aligncenter {
  max-width: 250px;
}


/*　目次(治療法・人柄)　*/
section.treatment-main .interview .no_bullets,
section.personal-main .interview .no_bullets  {
  border: double 3px #ccc;
  margin: 40px 0 0;
  padding: 35px 15px 10px;
  position: relative;
  font-size: 13px;
}

section.treatment-main .interview .toc_title,
section.personal-main .interview .toc_title  {
  color: #fff;
  background-color: #aaa;
  width: 70px;
  line-height: 25px;
  font-size: 14px;
  border-radius: 1px;
  text-align: center;
  position: absolute;
  top: -13px;
  left: 15px;
}

section.treatment-main .interview .toc_list > li > a,
section.personal-main .interview .toc_list > li > a {
  position: relative;
  padding-left: 14px;
}

section.treatment-main .interview .toc_list > li,
section.personal-main .interview .toc_list > li {
  border-top: dashed 1px #ccc;
  margin: 5px 0 0;
  padding: 20px 0 0;
}

section.treatment-main .interview .toc_list > li:first-of-type,
section.personal-main .interview .toc_list > li:first-of-type {
  border-top: none;
  margin: 0;
  padding: 0;
}

section.treatment-main .interview .toc_list > li > a:before,
section.personal-main .interview .toc_list > li > a:before {
  position: absolute;
  content:"■";
  font-size: 85%;
  top: 2px;
  transform: translateX(-14px);
}

section.treatment-main .interview .toc_list a,
section.personal-main .interview .toc_list a {
  display: inline-block;
  margin-bottom: 15px;
  padding-left: 15px;
}

/*　自由診療の費用(治療法・人柄)　*/
section.treatment-main .interview .price h2,
section.personal-main .interview .price h2  {
  font-weight: normal;
  font-size: 17px;
  border-bottom: dashed 1px #ccc;
  margin: 20px 0;
  padding: 0 0 5px 0;
}

section.treatment-main .interview .price p,
section.personal-main .interview .price p  {
  font-size: 14px;
  margin-top: 20px;
}

section.treatment-main .interview .price h2 + p,
section.personal-main .interview .price h2 + p {
  margin-top: 0px !important;
}

section.treatment-main .interview .price #pricelist-readmore,
section.personal-main .interview .price #pricelist-readmore {
  display: none;
}

section.treatment-main .interview .price #pricelist-readmore-btn,
section.personal-main .interview .price #pricelist-readmore-btn {
  width: fit-content;
  margin-top: 10px;
  color: #868686;
  text-decoration: underline;
  text-decoration-color: #868686;
}


/*　ドクターからのメッセージ　*/
div.message {
  background-color: #fdf7f0;
  padding: 35px 15px;
  margin: 0 auto 35px;
  position: relative;
  width: 87.5%;
}

div.message div {
  color: #71675c;
  margin-bottom: 40px;
  text-align: center;
  font-size: 2rem;
  margin-bottom: 20px;
}

div.message div ul {
  display: block;
  margin-top: 240px;
  font-size: 1.6rem;
}

div.message p {
  line-height: 2;
  text-align: justify;
  letter-spacing: 0.05em;
  word-break: break-all;
}

div.message img {
  width: 200px;
  height: 200px;
  border-radius: 300px;
  margin: 0 auto;
  position: absolute;
  top: 80px;
  bottom: 0;
  right: 0;
  left: 0;
}

/*　別のインタビューを見るボタン　*/
a.btn-another {
  width: 87.5%;
  margin: 60px auto 0;
  letter-spacing: 2px;
  font-weight: bold;
}

/*　動物病院情報　*/
div.hospital-box {
  margin: 60px auto;
  background: #f2f2f2;
  padding: 30px 15px;
}

div.hospital-box img {
  width: 100%;
  height: auto;
  border: 2px solid #fff;
  border-radius: 5px;
}

div.hospital-info p {
  position: relative;
  display: flex;
  align-items: center;
  margin: 30px 0;
  min-height: 50px;
  padding-right:80px;
  font-weight: bold;
  font-size: 1.8rem;
}

.hospital-box div.hospital-info p a {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 70px;
  height: 50px;
  text-align: center;
  font-size: 12px;
  font-weight: bold;
  border: 1px solid #ccc;
  border-radius: 3px;
  background: linear-gradient(180deg, #fff, #e5e5e5);
}

.hospital-box div.hospital-info p a span {
  display:block;
  margin: 10px auto 3px;
  color: #2771ad;
}

div.hospital-box dl {
  font-size: 1.2rem;
}

div.hospital-box dl dt {
  width: 90px;
  background-color: #999;
  color: #fff;
  text-align: center;
  padding: 2px 0;
  letter-spacing: 2px;
}

div.hospital-box dl dd {
  margin: 10px 0 20px;
  line-height: 1.6;
}

div.hospital-box dl dd:last-child {
  margin-bottom: 0;
}

.hospital-box div.caloo-btn {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 40px;
}

.hospital-box div.caloo-btn div {
  width: 48%;
  height: 50px;
  margin-top: 10px;
}

.hospital-box div.caloo-btn div:only-child {width:100%;}
@media screen and (max-width: 374px) {.hospital-box div.caloo-btn div {width:100%;}}


.hospital-box div.caloo-btn div a {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: bold;
  white-space: nowrap;
  border-radius: 3px;
}

.hospital-box div.caloo-btn div a span::before {
  margin-right: 5px;
  font-size: 15px;
}

.hospital-box [class$='-btn'] a {
  border: 1px solid #2771ad;
  color: #2771ad;
}

.hospital-box .line-btn a {
  border: 1px solid #06c755;
  color: #06c755;
}


/*　この記事に関するキーワード　*/
div.tag-box {
  width: 87.5%;
  margin: 0 auto;
  overflow: hidden;
  text-align: center;
  margin-bottom: 30px;
}

div.tag-box p {
  margin-bottom: 5px;
  float: left;
}

ul.doctor-list li{
  margin: 0 10px 0 0 !important;
  display: inline;
}

ul.tag-list {
  display: inline-block;
  padding: 0;
}

ul.tag-list li {
  display: inline-block;
  margin: 0 0.5em 0.5em !important;
  padding: 0;
  width: auto !important;
}

ul.tag-list li a,
div.tag-cloud a {
  position: relative;
  display: inline-block;
  height: 20px;
  line-height: 20px;
  padding: 0 0.6em 0 1em;
  background-color: #eeeeee;
  border-radius: 0 3px 3px 0;
  color: #868686;
  font-size: 1.3rem;
}

ul.tag-list li a:before,
div.tag-cloud a:before {
  position: absolute;
  top: 0;
  left: -10px;
  content: '';
  width: 0;
  height: 0;
  border-color: transparent #eeeeee transparent transparent;
  border-style: solid;
  border-width: 10px 10px 10px 0;
}

ul.tag-list li a:after,
div.tag-cloud a:after {
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 2;
  display: block;
  content: '';
  width: 5px;
  height: 5px;
  margin-top: -2px;
  background-color: #fff;
  border-radius: 100%;
}

/*============================================================
この病院の他のインタビュー記事・新着インタビュー（記事中）
（スタイル兼用）
  ============================================================*/

.interview-list-sp {
  margin-bottom: 30px;
}

.interview-list-sp h2 {
  font-size: 1.6rem;
  margin-bottom: 0;
  padding-bottom: 50px;
}

.interview-list-sp ul.list {
  margin-bottom: 30px;
}

.interview-list-sp ul.list li {
  position: relative;
}

.interview-list-sp ul.list > li > a {
  display: flex;
  padding: 25px 0;
  border-bottom: solid 1px #cccccc;
}

.interview-list-sp ul.list > li .new {
  width: 35px;
  height: 35px;
  line-height: 35px;
  font-size: 1.1rem;
  top: 10px;
  left: -10px;
}

.interview-list-sp ul.list > li .thumbnail {
  width: 35%;
  margin: 0 10px 0 0;
}

.interview-list-sp ul.list > li .text {
  width: 65%;
}

.interview-list-sp ul.list > li .text .tag {
  padding: 2px 10px;
  font-size: 1rem;
  position: static;
  margin-bottom: 5px;
  vertical-align: top;
}

.interview-list-sp ul.list > li h3 {
  margin: 0 0 5px;
  line-height: 1.5;
  font-size: 1.4rem;
}

.interview-list-sp ul.list > li p,
.interview-list-sp ul.list > li br {
  display: none;
}

/*　この病院の他のインタビュー記事　*/
.other-interview ul.list {
  margin-bottom: 30px;
}

.other-interview ul.list > li:first-of-type a {
  border-top: solid 1px #cccccc;
}

.other-interview ul.list > li .thumbnail img {
  width: 100%;
  height: auto;
  border-radius: 5px;
  vertical-align: middle;
  display: inline-block;
}

.other-interview ul.list > li h3 br {
  display: none;
}

.other-interview ul.list > li ul {
  line-height: 1.2;
  display: inline-block;
  color: #666666;
  font-size: 1.2rem;
  font-weight: bold;
}

/* 新着インタビュー（記事中） */
.new-list ul.list > li:last-child a {
  border-bottom: none;
}

.new-list ul.list > li .text dl {
  font-size: 1.2rem;
  border: none;
  margin: 10px 0 0;
}

.new-list ul.list > li ul.tag-list {
  display: none;
}

/*============================================================
　インタビュー記事：頼れる獣医が教える治療法
  ============================================================*/
section.treatment-main div.detail-head {
  margin: 25px auto;
  width: 90vw;
  letter-spacing: 1px;
}

/* vol. */
section.treatment-main div.detail-head p.vol-num {
  color: #254e77;
  text-align: right;
  font-size: 1.2rem;
}

section.treatment-main div.detail-head p.vol-num span {
  margin-left: 0.5em;
}

/* 診察領域 */
section.treatment-main div.detail-head div.detail-ttl p.tag {
  color: #fff;
  margin: 10px 0;
  background: #15568a;
  display: inline-block;
  line-height: 24px;
  padding: 0 20px;
  font-size: 1.2rem;
  border-radius: 30px;
}

/* タイトル */
section.treatment-main div.detail-head div.detail-ttl div.treatment-head {
  font-size: 2.3rem;
  font-weight: bold;
  color: #254e77;
  line-height: 1.5;
}

/* SP版ではタイトル改行しない */
.treatment-head br {
  display: none;
}

/* 画像 */
section.treatment-main div.detail-head img {
  width: 50%;
  margin: 12px auto 20px;
  max-width: 230px;
}

/* 病院名・先生名 */
section.treatment-main div.detail-head div.detail-m-img dl {
  text-align: center;
  border-top: solid 1px #cccccc;
  border-bottom: solid 1px #cccccc;
  padding: 13px 0 10px;
  line-height: 1.3;
  font-weight: bold;
}

section.treatment-main div.detail-head div.detail-m-img dl dt {
  font-size: 1.2rem;
  margin-bottom: 6px;
}

section.treatment-main div.detail-head div.detail-m-img dl dd {
  font-size: 1.6rem;
}

section.treatment-main div.detail-head div.detail-m-img dl dd ul li {
  display: inline-block;
  margin: 0 5px;
}

section.treatment-main a.btn-another {
  color: #3e7d5b;
  border-color: #3e7d5b;
}

section.treatment-main a.btn-another:after {
  border-top: 2px solid #3e7d5b;
  border-right: 2px solid #3e7d5b;
}

section.treatment-main div.interview > div:first-child {
  background-color: #ebf2f6;
  color: #2771ad;
  text-align: justify;
  word-break: break-all;
}

section.treatment-main div.interview h2 {
  border-left: solid #2771ad 3px;
}

section.treatment-main div.interview h3 {
  color: #2771ad;
}

/*============================================================
　インタビュー記事：街の頼れる獣医達
  ============================================================*/
section.personal-main div.personal-img {
  position: relative;
}

section.personal-main div.detail-img img {
  width: 105%;
}

section.personal-main div.detail-img div.personal-head {
  position: absolute;
  top: 50%;
  transform: translateY(-60%);
  left: 5%;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 4.0rem;
  letter-spacing: 2px;
  text-shadow: 0px 0px 10px rgba(255, 255, 255), 0px 0px 10px rgba(255, 255, 255), 0px 0px 20px rgba(255, 255, 255), 0px 0px 30px rgba(255, 255, 255), 0px 0px 40px rgba(255, 255, 255);
  max-width: 220px;
}

section.personal-main div.detail-img div.personal-head span {
  margin-left: -1rem;
}

/* タイトル一行表示 */
section.personal-main div.detail-img div.personal-head .no-break {
  width: 90vw;
}

@media only screen and (min-width: 320px) and (max-width: 374px) {
  section.personal-main div.detail-img div.personal-head {
    font-size: 1.4rem;
    line-height: 3.0rem;
    max-width: 180px;
  }
}

@media only screen and (min-width: 375px) and (max-width: 413px) {
  section.personal-main div.detail-img div.personal-head {
    font-size: 1.5rem;
    max-width: 200px;
  }  
}

@media screen and (min-width: 600px) {
  section.personal-main div.detail-img div.personal-head {
    font-size: 2.4rem;
    max-width: 290px;
    line-height: 5rem;
  }
}

section.personal-main div.detail-img div.personal-name p {
  background-color: #1d844d;
  color: #fff;
  display: block;
  padding: 8px 20px;
  font-size: 1.1rem;
  text-align: center;
  letter-spacing: 1px;
}

section.personal-main div.detail-img div.personal-name p span {
  margin: 0 0 0 0.5em;
}

section.personal-main div.detail-img div.personal-name span.tag {
  margin: 0;
  display: block;
}

section.personal-main div.detail-img div.personal-name dl {
  letter-spacing: 1px;
  text-align: center;
  padding: 20px 0 15px;
  margin: 0 auto;
  width: 87.5%;
  line-height: 1.5;
}

section.personal-main div.detail-img div.personal-name dl dt {
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", 'Verdana', sans-serif;
  font-size: 1.2rem;
  margin-bottom: 10px;
}

section.personal-main div.detail-img div.personal-name dl dd {
  font-size: 1.6rem;
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", 'Verdana', sans-serif;
}

section.personal-main div.detail-img div.personal-name dl dd ul li {
  margin: 0 5px;
}

section.personal-main a.btn-another {
  color: #15568a;
  border-color: #15568a;
}

section.personal-main a.btn-another:after {
  border-top: 2px solid #15568a;
  border-right: 2px solid #15568a;
}

section.personal-main div.interview > div:first-child {
  background-color: #e9f7ef;
  color: #3e7d5b;
  text-align: justify;
  word-break: break-all;
}

section.personal-main div.interview h2 {
  border-left: solid #009847 3px;
}

section.personal-main div.interview h3 {
  color: #009847;
}

/*============================================================
　検索
  ============================================================*/
div.more-search {
  width: 87.5%;
  margin: 0 auto;
  background-color: #f3f2ee;
}

div.more-search a {
  width: 87.5%;
  margin: 0 auto;
  background-color: #f3f2ee;
  border-radius: 0;
  border: none;
  font-weight: bold;
}

div.more-search a:after {
  border-top: none;
  border-bottom: 2px solid #2c2c2c;
}

div.s-box {
  padding: 20px;
}

div.s-box button[class^="btn-"]:after {
  border-top: none;
  border-bottom: 2px solid #2c2c2c;
}

div.search-result {
  margin: 40px auto;
  font-weight: bold;
  font-size: 1.6rem;
}

div.search-result ul {
  width: 87.5%;
  margin: 0 auto 60px;
}

div.search-result ul li {
  margin-bottom: 10px;
}

div.search-result ul li span {
  color: #32b25f;
  word-break: break-all;
}

div.search-result ul li span.search-num {
  padding: 0 5px;
}

div.search-result ul li:nth-last-child(2) {
  display: inline-block;
}

div.search-result ul li:last-child {
  display: inline-block;
}

div.no-article {
  text-align: center;
}

/*============================================================
　タグ一覧ページ
  ============================================================*/
div.tag-list-box {
  width: 87.5%;
  margin: 0 auto;
}

div.tag-list-box h3 {
  font-size: 1.6rem;
  margin-bottom: 20px;
  padding-left: 10px;
  border-left: solid #2c2c2c 3px;
}

div.tag-list-box h4 {
  margin-bottom: 10px;
  border-bottom: solid #333 2px;
  display: inline-block;
  padding-bottom: 5px;
}

div.tag-list-box ul {
  margin-bottom: 30px;
}

div.tag-list-box ul li {
  display: inline-block;
  margin: 0 20px 10px 0;
  color: #969696;
}

div.tag-list-box ul li.tag-none {
  color: #2c2c2c;
}

div.tag-list-box h4 + ul {
  margin-top: 10px;
}

/*============================================================
　404エラーページ
  ============================================================*/
div#error404 {
  margin-top: -60px;
}

div#error404 img {
  max-width: 60%;
  height: auto;
  margin: 0 auto 30px;
}

div#error404 h3 {
  font-size: 1.8rem;
  line-height: 1.6;
  margin: 0 20px;
}

div#error404 ol {
  margin: 30px 10px 35px 20px;
  padding-left: 15px;
}

div#error404 ol li {
  list-style: outside decimal;
  margin: 5px 0 20px 20px;
}

div#error404 ol li a {
  color: #32B25F;
  text-decoration: underline;
}

div#error404 ol li a:hover {
  text-decoration: none;
}

/*============================================================
　SNSボタン・アクセスカウンター
============================================================*/
/*　SNS　*/
.share {
	margin:30px auto;
	}

.share ul {
	margin: 0;
	padding: 0;
	list-style: none;
	text-align:center;
	}

.share li {
	display: inline-block;
	vertical-align: top;
	margin: 0 0 0 10px;
}

.share li a {
  display: inline-block;
  vertical-align: middle;
  color: #fff;
  font-size: 18px;
  text-decoration: none;
  text-align: center;
  width: 30px;
  height: 30px;
  border-radius: 5px;
  line-height: 32px;
}

.share li a:visited {
  color: #fff;
}

.tweet a {
  background-color: #000;
}

.facebook a {
  background-color: #315096;
}

.googleplus a {
  background-color: #dd4b39;
}

.hatena a {
  background-color: #008fde;
}

.line a {
  background-color: #06c755;
}

.pocket a {
  background-color: #f03e51;
}

.rss a {
  background-color: #ff8c00;
}

.feedly a {
  background-color: #6cc655;
}

div.linkpages div.share ul.detail-sns {
  width: 201px;
  margin: 0 auto;
}

.sns-pc {
  display: none;
}

/*　アクセスカウンター　*/
div.views {
  width: 87.5%;
  margin: 0 auto;
  text-align: left;
  font-size: 1rem;
  color: #32a1d0;
  letter-spacing: 0.1em;
}

div.views em {
  font-size: 2rem;
  font-style: normal;
  color: #3692c1;
}

section.personal-main div.views {
  color: #47b36a;
}

section.personal-main div.views em {
  font-size: 1.8rem;
  font-style: normal;
  color: #3aa25c;
}
section.topside div.share ul {
  margin: 0 auto;
}

/*============================================================
　LP
  ============================================================*/
div#lp−contents {
  margin: 0 auto;
  padding-bottom: 75px;
  overflow: hidden;
}

div#lp−contents section.main {
  margin-top: 0;
}

div#lp−contents h2 {
  display: none;
}

div#lp−contents h3 {
  font-size: 1.3rem;
  border-bottom: solid #21110d 4px;
  width: 180px;
  display: inline-block;
  padding: 0 0 5px 10px;
  margin-bottom: 45px;
  letter-spacing: 2px;
}

div#lp−contents div.btn-box {
  overflow: hidden;
  text-align: center;
  margin: 30px auto;
}

div#lp−contents div.btn-box a {
  width: 80%;
  height: 60px;
  margin: 0 auto 15px;
  display: block;
  letter-spacing: 4;
  background-color: transparent;
  border-radius: 4px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  /* 縦方向中央揃え（Safari用） */
  align-items: center;
  /* 縦方向中央揃え */
  -webkit-justify-content: center;
  /* 横方向中央揃え（Safari用） */
  justify-content: center;
  /* 横方向中央揃え */
  font-weight: bold;
  font-size: 4vw;
}

div#lp−contents div.btn-box a:after {
  right: 15px;
}

div#lp−contents div.btn-box a.btn-entry {
  border: solid #00b259 2px;
  color: #00b259;
  letter-spacing: 0;
}

div#lp−contents div.btn-box a.btn-entry:after {
  border-top: 2px solid #00b259;
  border-right: 2px solid #00b259;
}

div#lp−contents div.btn-box a.btn-inquiry {
  border: solid #2771ad 2px;
  color: #2771ad;
}

div#lp−contents div.btn-box a.btn-inquiry:after {
  border-top: 2px solid #2771ad;
  border-right: 2px solid #2771ad;
}

div#lp−contents section.lp-top,
div#lp−contents section.lp-merrit,
div#lp−contents section.lp-media,
div#lp−contents section.lp-flow,
div#lp−contents section.lp−voice,
div#lp−contents section.lp−banner {
  letter-spacing: 4px;
}

div#lp−contents h3,
div#lp−contents section.lp-merrit dl dt,
div#lp−contents section.lp-media,
div#lp−contents section.lp-flow dl dt,
div#lp−contents section.lp−voice div.sp-img,
div#lp−contents section.lp−banner {
  font-family: "a-otf-ud-reimin-pr6n",sans-serif;
}

div#lp−contents section.lp−voice,
div#lp−contents section.lp-media,
div#lp−contents section.lp−banner,
div#lp−contents section.lp-flow {
  padding: 50px 0 30px;
}

div#lp−contents section.lp-top {
  color: #fff;
  margin-bottom: 200px;
  text-align: center;
  position: relative;
  width: 100%;
  height: 0;
  padding-top: calc(640 / 640 * 100%);
  /* calc(画像高さ ÷ 画像横幅 × 100%) */
  background-image: url(./img/lp/lp_mainimg_sp.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

div#lp−contents section.lp-top dl {
  text-shadow: 3px 3px 5px rgba(0, 0, 0, 0.5);
  width: 90%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  /* Safari用 */
  transform: translate(-50%, -50%);
}

div#lp−contents section.lp-top dt, div#lp−contents section.lp-top dd {
  margin: 20px 0;
}

div#lp−contents section.lp-top dt {
  font-size: 2.2rem;
}

div#lp−contents section.lp-top dd {
  line-height: 1.6;
}

div#lp−contents section.lp-top dd br {
  display: none;
}

div#lp−contents section.lp-merrit dl {
  margin-bottom: 80px;
  min-height: 70px;
  padding: 5px 0 0 80px;
}

div#lp−contents section.lp-merrit dl.merrit1 {
  background: url(./img/lp/lp_1.png) no-repeat 0 0;
}

div#lp−contents section.lp-merrit dl.merrit2 {
  background: url(./img/lp/lp_2.png) no-repeat 0 0;
}

div#lp−contents section.lp-merrit dl.merrit3 {
  background: url(./img/lp/lp_3.png) no-repeat 0 0;
}

div#lp−contents section.lp-merrit dt {
  font-size: 1.6rem;
  margin-bottom: 25px;
}

div#lp−contents section.lp-merrit dd {
  font-size: 1.2rem;
}

div#lp−contents section.lp−voice {
  background-color: #f3faff;
}

div#lp−contents section.lp−voice div.voice-body div.sp-img {
  width: 80vw;
  margin: 0 auto 20px;
  text-align: center;
}

div#lp−contents section.lp−voice div.voice-body div.sp-img img {
  width: 100px;
  display: inline-block;
}

div#lp−contents section.lp−voice div.voice-body div.sp-img p {
  font-size: 1.2rem;
  margin: 27px 0 0 20px;
  line-height: 2;
  display: inline-block;
  vertical-align: top;
}

div#lp−contents section.lp−voice div.voice-body div.sp-img p span {
  font-size: 1.6rem;
  margin-right: 5px;
}

div#lp−contents section.lp−voice div.voice-body dl {
  margin: 0 auto;
  width: 90vw;
}

div#lp−contents section.lp−voice div.voice-body dt {
  font-size: 1.8rem;
  line-height: 1.8;
  margin-bottom: 10px;
}

div#lp−contents section.lp−voice div.voice-body dd {
  line-height: 2.2;
}

div#lp−contents section.lp−voice div.voice-body dd p {
  display: none;
}

div#lp−contents section.lp-media h4 {
  text-align: center;
  margin-bottom: 80px;
  text-indent: 3px;
  letter-spacing: 3px;
  font-weight: lighter;
  font-size: 24px;
}

div#lp−contents section.lp-media p {
  display: inline-block;
  border-bottom: solid #21110d 2px;
  position: absolute;
  right: 0;
  top: -50px;
  text-align: right;
  letter-spacing: 2px;
  padding: 0 10px 5px 0;
  font-size: 1.2rem;
}

div#lp−contents section.lp-media div {
  margin: 0 auto;
  position: relative;
}

div#lp−contents section.lp-media div.media1 {
  background: url(./img/lp/media_1.jpg) no-repeat center top;
  background-size: 90%;
  height: 50vh;
}

div#lp−contents section.lp-media div.media1 p {
  width: 140px;
}

div#lp−contents section.lp-media div.media2 {
  background: url(./img/lp/media_2.jpg) no-repeat center top;
  background-size: 90%;
  height: 50vh;
}

div#lp−contents section.lp-media div.media2 p {
  width: 155px;
}

div#lp−contents section.lp-media div.media3 {
  background: url(./img/lp/media_3.jpg) no-repeat center top;
  background-size: 90%;
  height: 30vh;
}

div#lp−contents section.lp-media div.media3 p {
  width: 200px;
}

div#lp−contents section.lp−banner {
  background-color: #f2f9fc;
}

div#lp−contents section.lp−banner div.lp-box p {
  line-height: 2.2;
  width: 80%;
  margin: 0 auto;
}

div#lp−contents section.lp−banner div.lp-box div.sp-img {
  margin: 40px auto;
}

div#lp−contents section.lp−banner div.lp-box div.sp-img img {
  width: 100%;
}

div#lp−contents section.lp-flow div.flow-point p {
  width: 90vw;
  margin: 0 auto 40px;
  padding: 20px 0;
  color: #0A5293;
  font-size: 1rem;
  line-height: 1.6;
}

div#lp−contents section.lp-flow div.flow-point dl {
  min-height: 100px;
  margin: 0 20px;
}

div#lp−contents section.lp-flow div.flow-point dl.flow1 {
  background: url(./img/lp/flow_1.jpg) no-repeat 0 0;
  background-size: 100px 100px;
  margin-bottom: 30px;
}

div#lp−contents section.lp-flow div.flow-point dl.flow2 {
  background: url(./img/lp/flow_2.jpg) no-repeat 0 0;
  background-size: 100px 100px;
}

div#lp−contents section.lp-flow div.flow-point dt {
  margin: 0px 0 10px 120px;
  font-size: 1.6rem;
  line-height: 1;
}

div#lp−contents section.lp-flow div.flow-point dd {
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", 'Verdana', "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-size: 1.2rem;
  margin-left: 120px;
  line-height: 1.6;
}

div#lp−contents section.lp-flow div.flow-point img.sp-img {
  width: 150px;
  margin: 0 auto 20px;
}

div#lp−contents ul.detail-sns {
  width: 210px;
  margin: 0 auto;
}

/*============================================================
　お問い合わせフォーム
  ============================================================*/
h2.form:after {
  top: 75px;
}

@media only screen and (device-height: 736px), only screen and (device-width: 736px) {
  h2.form:after {
    top: 45px;
  }
}

h2.form-inquiry:after {
  top: 45px;
}

@media only screen and (min-device-width: 320px) and (max-device-width: 374px) {
  h2.form-inquiry:after {
    top: 75px;
  }
}

p.form-txt,
div.wpcf7 {
  width: 90vw;
  margin: 0 auto;
}

p.form-txt {
  margin-bottom: 30px;
  line-height: 2;
  text-align: center;
  font-size: 3.5vw;
  font-family: "a-otf-ud-reimin-pr6n",sans-serif;
}

div.wpcf7 {
  margin: 0 auto !important;
}

div.wpcf7 input[type="text"],
div.wpcf7 input[type="email"],
div.wpcf7 input[type="tel"],
div.wpcf7 textarea {
  background-color: #fff;
  width: 100%;
  height: 60px;
  border: 1px solid #d7dce1;
  border-radius: 0;
  padding: 1em;
  outline: none;
  font-size: 1.4rem;
}

div.wpcf7 input[type="text"]:focus,
div.wpcf7 input[type="email"]:focus,
div.wpcf7 input[type="tel"]:focus,
div.wpcf7 textarea:focus {
  border: solid #f7ab00 1px;
}

div.wpcf7 input::-webkit-input-placeholder {
  color: #ccc;
  font-weight: normal;
}

div.wpcf7 input:-ms-input-placeholder {
  color: #ccc;
  font-weight: normal;
}

div.wpcf7 input::-moz-placeholder {
  color: #ccc;
  font-weight: normal;
}

div.wpcf7 textarea {
  height: 100px;
  resize: none;
}

div.wpcf7 span.wpcf7-not-valid-tip {
  color: #f79700;
  margin-top: 10px;
}

div.wpcf7 table {
  width: 800px;
  margin: 0 auto;
}

div.wpcf7 table th, div.wpcf7 table td {
  display: block;
  width: 90vw;
}

div.wpcf7 table th {
  padding: 20px 0 0px;
  text-align: left;
  vertical-align: middle;
  position: relative;
}

div.wpcf7 table th span.required {
  color: #f79700;
  font-weight: normal;
  border: solid #f79700 1px;
  padding: 2px 5px;
  position: absolute;
  right: 0;
  line-height: 1;
}

div.wpcf7 table td {
  padding: 10px 0;
}

div.wpcf7 table td span {
  position: relative;
}

div.wpcf7 div.btn-box {
  width: 100%;
  margin: 40px auto;
  text-align: center;
}

div.wpcf7 div.btn-box input {
  width: 90vw;
  height: 80px;
  transition: all .3s;
  border-radius: 5px;
  -webkit-appearance: button;
  font-size: 4.5vw;
  font-weight: bold;
}

div.wpcf7 div.btn-box input:after {
  transition: all .3s;
  position: absolute;
  top: 50%;
  content: '';
  border-top: 2px solid #2c2c2c;
  border-right: 2px solid #2c2c2c;
  transform: rotate(45deg);
  right: 10px;
  width: 5px;
  height: 5px;
  margin-top: -3px;
}

div.wpcf7 div.btn-box input.btn-entry {
  background-color: #00b259;
  color: #fff;
}

div.wpcf7 div.wpcf7-validation-errors,
div.wpcf7 div.formErrorArrow,
div.wpcf7 span.ajax-loader {
  display: none;
}

div.wpcf7 div.wpcf7-response-output {
  display: none !important;
}

div.wpcf7 div.formError {
  top: 250% !important;
  left: 0 !important;
  margin: 0 0 0 5px !important;
}

div.wpcf7 div.formErrorContent {
  background-color: transparent;
  font-size: 3.5vw;
  padding: 4px 0 0 0;
  color: #ee0101;
  border: none;
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  -o-box-shadow: none;
  border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  -o-border-radius: 0;
}

div.wpcf7 div.formErrorContent br {
  display: none;
}

a.btn-gototop {
  width: 87.5%;
  margin: 0 auto;
  letter-spacing: 3px;
  font-size: 3vw;
}
