/*
Theme Name:tpl15
Template:astra
Version:1.0.0
*/
@font-face {
  font-family: AdjustedYuGothic;
  font-weight: 400;
  src: local("Yu Gothic Medium"), local("-apple-system");
  ;
}
@font-face {
  font-family: AdjustedYuGothic;
  font-weight: 700;
  src: local("Yu Gothic Bold"), local("-apple-system");
  ;
}
@font-face {
  font-family: "Century Gothic";
  src: local("BlinkMacSystemFont"), local("-apple-system");
}
@font-face {
  font-family: "Century Gothic";
  font-weight: bold;
  src: local("BlinkMacSystemFont"), local("-apple-system");
}
/* common
--------------------- */
body {
  line-height: 2em;
  font-family: AdjustedYuGothic, Yu Gothic, YuGothic, Meiryo, "Hiragino Kaku Gothic ProN", sans-serif;
}
/* common */
@media all and (max-width:1024px) {
  .pc {
    display: none;
  }
}
/* font */
i {
  /* color: var(--ast-global-color-6); */
}
.vertical {
  -ms-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
}
.heading .uael-sub-heading, .vertical .uael-sub-heading {
  font-family: Baskerville, Baskerville Old Face, Garamond, Times New Roman, serif;
}
.gothic {
  font-family: "Century Gothic", sans-serif;
}
.serif {
  font-family: serif;
}
.large {
  font-size: 125%;
}
/* table */
table {
  border-collapse: collapse;
  background: var(--ast-global-color-4);
}
table th {
  padding: 7px 15px;
  text-align: left;
  width: 25%;
  color: var(--ast-global-color-1);
  background: #f5f8eb;
  line-height: 1.7;
  vertical-align: top;
}
table td {
  padding: 7px 15px;
  line-height: 1.7;
}
table, table th, table td {
  border: 1px solid #7e6b5a;
}
@media all and (max-width:767px) {
  table th {
    width: 7em;
    padding: 7px;
    font-size: 0.9rem;
  }
  table td {
    padding: 7px;
    font-size: 0.9rem;
  }
}
/* header
--------------------- */
#header_tel p.elementor-icon-box-description {
  position: relative;
  left: -1.7vw;
}
#header_access .elementor-icon-box-title a span.btn {
  display: inline-block;
  margin-left: 10px;
  padding: 5px 7px;
  background: var(--ast-global-color-4);
  border: 1px solid var(--ast-global-color-6);
  border-radius: 20px;
  color: var(--ast-global-color-6);
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0;
}
#header_access .elementor-icon-box-title a span.btn:hover {
  background: var(--ast-global-color-8);
  color: var(--ast-global-color-4);
}
@media all and (max-width:820px) {
  #header_access .elementor-icon-box-title a span.btn {
    display: block;
    margin: 10px 0 0;
    text-align: center;
  }
  #header_tel p.elementor-icon-box-description {
    left: -24px;
    text-align: center;
  }
}
@media all and (max-width: 767px) {
  #header_info {
    position: fixed;
    bottom: 0;
    left: 0;
  }
}
/* global_nav
--------------------- */
#global_nav a.uael-menu-item {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 130px;
}
/* sidebar
--------------------- */
/* 検索 */
#secondary .wp-block-search__inside-wrapper {
  display: flex;
  border: none;
}
#secondary input.wp-block-search__input {}
#secondary button.wp-block-search__button {
  padding: 0 1em;
  background: var(--ast-global-color-8) !important;
}
#secondary button.wp-block-search__button svg {
  fill: var(--ast-global-color-4);
}
#secondary label {
  font-weight: bold;
}
/* 診療スケジュールカテゴリ非表示 */
option[value$="info-schedule"] {
  display: none;
}
/* footer
--------------------- */
@media all and (min-width: 768px) {
  #footer_nav ul {
    display: flex !important;
    flex-wrap: wrap !important;
  }
}
/* main
--------------------- */
/* キャッチコピー */
#catchcopy .large {
  display: inline-block;
  margin-right: 10px;
}
@media all and (max-width: 1024px) {
  #catchcopy {
    background-color: var(--ast-global-color-4);
  }
  #catchcopy h1 {
    padding: 30px 0 30px 40px;
    /* border-top-left-radius:16px; */
  }
}
@media all and (max-width: 767px) {
  #catchcopy h1 {
    padding: 20px 0 20px 60px;
  }
  #catchcopy .large {
    margin-right: 5px;
  }
  #catchcopy br {
    /* display: none; */
  }
}
/* 待ち時間の目安 */
#waiting-time {
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--ast-global-color-4);
  font-size: 30px;
  font-weight: bold;
  line-height: 1;
}
#waiting-time .mark {
  display: inline-block;
  margin-right: 10px;
  font-size: 30px;
}
/* 診療時間 */
.time_table table {
  width: 100%;
  border-color: var(--ast-global-color-1);
}
.time_table table tr:first-of-type {
  background: var(--ast-global-color-1);
}
.time_table table tr:first-of-type th {
  color: var(--ast-global-color-4);
}
.time_table table tr:first-of-type th:not(:last-of-type) {
  border-color: var(--ast-global-color-4);
}
.time_table table th, .time_table table td {
  border-color: var(--ast-global-color-1);
}
.time_table table th {
  width: auto;
  background: none;
  text-align: center;
}
.time_table table th:first-of-type {
  font-size: 90%;
  text-align: left;
}
.time_table table td {
  color: var(--ast-global-color-0);
  text-align: center;
}
.time_table p {
  padding: 15px;
  background: var(--ast-global-color-5);
  font-size: 14px;
  font-weight: bold;
  line-height: 1.3;
}
.time_table .add {
  margin: 1em 0 0;
  font-size: 90%;
  line-height: 1;
}
.time_table .add a {
  display: inline-block;
  margin-left: 10px;
  padding: 5px 15px;
  border: 1px solid var(--ast-global-color-8);
  border-radius: 20px;
  color: var(--ast-global-color-8);
  font-size: 12px;
  text-decoration: none !important;
  letter-spacing: 0.1em;
}
@media all and (max-width: 1024px) {
  #waiting-time {
    font-size: 24px;
  }
}
@media all and (max-width: 767px) {
  .vertical {
    -ms-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
  }
  #waiting-time {
    font-size: 30px;
  }
  .time_table table th, .time_table table td, .time_table table th:first-of-type {
    padding: 5px;
  }
}
/* お知らせ */
#topics_list .uael-post__bg-wrap {
  border-radius: 8px;
}
#topics_list .uael-post__content-wrap {
  display: flex !important;
  flex-wrap: wrap;
}
#topics_list h3.uael-post__title {
  width: 100%;
  padding: 0.5em;
  order: 3;
}
#topics_list .uael-post__terms-wrap {
  margin-right: 10px;
  border: 1px solid var(--ast-global-color-6);
  order: 1;
}
#topics_list .uael-post__meta-data {
  position: absolute;
  top: -5px;
  right: 20px;
  order: 2;
}
@media all and (max-width: 767px) {
  #topics_list .uael-post__meta-data {
    right: 10px;
  }
}
/* Contact Form 7
--------------------- */
.grecaptcha-badge {
  visibility: hidden;
}
.entry-content table.inquiry th {
  position: relative;
  min-width: 30%;
}
.entry-content table.inquiry td {
  max-width: 70%;
}
.entry-content table.inquiry td input {
  width: 100%;
}
.haveto {
  display: inline-block;
  margin-right: 10px;
  font-size: 11px;
  padding: 2px 10px;
  background: var(--ast-global-color-7);
  border-radius: 2px;
}
.any {
  display: inline-block;
  margin-right: 10px;
  font-size: 11px;
  padding: 2px 10px;
  background: var(--ast-global-color-6);
  border-radius: 2px;
}
.verticallist .wpcf7-list-item {
  display: block;
}
@media all and (max-width:767px) {
  .entry-content table.inquiry th, .entry-content table.inquiry td {
    display: block;
    width: 100%;
    padding: 7px !important;
  }
  .entry-content table.inquiry th {
    padding: 7px 7px 0 !important;
    border-right: none;
  }
}
/* ページタイトル
--------------------- */
.ast-single-entry-banner, .ast-archive-entry-banner {
  width: calc(100% - 75px) !important;
  margin: -240px auto 0;
  padding: 220px 30px 110px !important;
  background-color: #f5f8eb;
  background-repeat: no-repeat;
  background-position: 75vw 90%;
  background-size: 15vw;
  border-radius: 48px;
}
body.single .ast-single-entry-banner {
  padding: 180px 30px 110px !important;
}
.ast-single-entry-banner .ast-container, .ast-archive-entry-banner .ast-container {
  width: 50% !important;
  padding: 45px 50px 0px 50px;
  /* background: var(--ast-global-color-4); */
  border-top-left-radius: 48px;
  border-top-right-radius: 48px;
}
.ast-single-entry-banner .ast-container h1, .ast-archive-entry-banner .ast-container h1 {
  font-size: clamp(24px, 6vw, 36px) !important;
}
@media all and (max-width:1024px) {
  .ast-single-entry-banner, .ast-archive-entry-banner {
    background-position: 70vw 100%;
  }
  .ast-single-entry-banner .ast-container, .ast-archive-entry-banner .ast-container {
    width: 85% !important;
  }
  body.single .ast-single-entry-banner {
    padding: 220px 30px 30px !important;
  }
}
@media all and (max-width:767px) {
  .ast-single-entry-banner, .ast-archive-entry-banner {
    width: calc(100% - 25px) !important;
    padding: 240px 30px 60px !important;
    background-position: 65vw 100%;
    background-size: 23.5vw;
    border-radius: 40px;
  }
  .ast-single-entry-banner .ast-container, .ast-archive-entry-banner .ast-container {
    min-width: auto;
    display: inline-block;
    padding: 15px 30px;
  }
}
/* パンくず */
.breadcrumbs {
  font-size: 13px;
  line-height: 1;
  text-align: center;
}
.breadcrumbs a {
  color: var(--ast-global-color-2);
  text-decoration: none !important;
}
/* Table of Contents */
.uael-toc-list {
  display: flex;
  align-items: center;
  margin: 0 !important;
  padding: 0 !important;
  background: var(--ast-global-color-4);
  border: 1px solid var(--ast-global-color-1);
}
.inner_toc .uael-toc-list {
  background: none;
  border: none;
}
.uael-toc-list li {
  display: flex;
  margin: 0 !important;
  padding: 0 !important;
}
.uael-toc-list li:not(:last-of-type) {
  border-right: 1px dotted var(--ast-global-color-1);
}
.uael-toc-list li a {
  display: block;
  width: 100%;
  padding: 20px 30px;
  text-decoration: none !important;
}
.inner_toc .uael-toc-list li a {
  padding: 10px;
}
.uael-toc-list li a::after {
  display: inline-block;
  margin-left: 10px;
  font-family: "Font Awesome 5 Free";
  content: "\f107";
}
.uael-toc-list li a:hover {
  background: var(--ast-global-color-1);
}
@media all and (max-width:767px) {
  .uael-toc-list {
    /* display: block; */
    flex-wrap: wrap;
    justify-content: center;
    border: none;
  }
  .uael-toc-list li {
    border-bottom: 1px dotted var(--ast-global-color-1);
  }
  .uael-toc-list li:not(:last-of-type) {
    border-right: none;
  }
  .uael-toc-list li a {
    margin-right: 10px;
    padding: 10px;
    font-size: 14px;
  }
}
/* アーカイブ・投稿
--------------------- */
body.archive #primary, body.single #primary {
  padding: 4em 2.5em 0;
}
body.single .ast-single-entry-banner h1.entry-title::before {
  display: block;
  content: "お知らせ";
  color: var(--ast-global-color-6);
  font-size: 70%;
}
body.archive .entry-meta {
  line-height: 2;
}
.ast-taxonomy-container.cat-links a {
  padding: 4px 8px;
  font-size: 12px;
}
.ast-taxonomy-container.cat-links a[href$="/event"] {
  border: 1px solid #5BC26A !important;
  color: #5BC26A;
}
.ast-taxonomy-container.cat-links a[href$="/kikyo"] {
  border: 1px solid #716da9 !important;
  color: #716da9;
}
@media all and (max-width:1024px) {
  body.archive #primary {
    padding: 4em 0;
  }
  body.single #primary {
    padding: 4em 1.5em !important;
  }
}
@media all and (max-width:921px) {
  .ast-right-sidebar #secondary {
    padding-top: 4em;
    border-top: 1px solid var(--ast-border-color);
  }
}
/* トップへスクロール
--------------------- */
@media all and (max-width:921px) {
  .ast-scroll-to-top-right {
    bottom: 100px;
  }
}

/* 検索結果ページ */
/*文字色*/
#primary .post-content a:hover {
  color: #f18c00;
}
#primary .post-content span:hover {
	color: #b18850;
}
