/**
Theme Name: yamadadc
Author: Brainstorm Force
Author URI: https://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: yamadadc
Template: astra
*/
html {
  scroll-padding-top: 80px;
  color: #362e2b;
}
body {
  background: #ebe9e8;
}
header li {
  font-family: 'Ryumin Regular KL';
}
footer li, div {
  font-family: 'TBUDGothic R';
}
a:hover {
  opacity: 0.8;
}
.flex {
  display: flex;
}
.flexw {
  display: flex;
  flex-wrap: wrap;
}
.flexsb {
  justify-content: space-between;
}
.serif {
  font-family: 'Ryumin Regular KL';
}
.red {
  color: #8d3043;
}
.btn a {
  display: block;
}
input.btn_br1, .btn_br1 a {
  display: block;
  padding: 3.5% !important;
  background: #6a3906 !important;
}
input.btn_br2, .btn_br2 a {
  display: block;
  padding: 3.5% !important;
  background: #81511c !important;
}
input.btn_br1, input.btn_br2 {
  width: 100%;
}
.grecaptcha-badge {
  visibility: hidden;
}
/* sidebar
--------------------------- */
@media screen and (max-width:767px) {
  #secondary {
    display: none;
  }
}
#secondary {
  padding: 0 !important;
}
.sidebar-main {
  margin: 0 !important;
  padding: 30px;
  background: rgba(255, 255, 255, 0.5);
}
.sidebar-main .side_reason h2 {
  margin-bottom: 0.5em;
}
.sidebar-main .side_reason h3 {
  margin-bottom: 0.5em;
}
/* header
--------------------------- */
h1#site_id a {
  display: block;
  width: 200px;
  height: 67px;
  background: url(images/site_id_m.png) no-repeat;
  background-size: cover;
  text-indent: -9999px;
}
@media screen and (min-width:821px) {
  h1#site_id a {
    width: 253px;
    height: 85px;
  }
}
/* footer
--------------------------- */
footer {
  margin-bottom: 75px;
}
.footer_sticky {
  position: fixed;
  bottom: 0;
  width: 100%;
  padding-bottom: 6px;
  background: #45403f !important;
}
.footer_sticky a {
  display: block;
  width: 100%;
  padding-left: 10px !important;
  text-align: left !important;
  background: none !important;
  color: #aaa !important;
  line-height: 1 !important;
  font-size: 30px !important;
}
.footer_sticky i {
  margin-top: 10px;
}
.footer_sticky .title {
  display: inline-block;
  margin-left: 10px;
  font-family: 'TBUDGothic E';
  font-size: 14px !important;
}
.footer_sticky .comment {
  display: block;
  width: 100%;
  margin-top: 7px;
  margin-left: 10px;
  font-size: 12px !important;
}
.footer_sticky_sp {
  position: fixed;
  bottom: 0;
  width: 100%;
  padding-bottom: 6px;
  background: #45403f !important;
}
.footer_sticky_sp a {
  display: block;
  width: 100%;
  padding: 15px 0 10px;
  background: none !important;
  color: #aaa !important;
  font-size: 12px !important;
}
.footer_sticky_sp i {
  display: block;
  width: 100%;
  margin-bottom: -20px;
  font-size: 20px !important;
}
@media screen and (max-width:767px) {
  #ast-scroll-top {
    bottom: 175px !important;
    right: 7px !important;
  }
}
/* アクセスマップ
--------------------------- */
.accessmap {
  position: relative;
  width: 100%;
  margin-top: 15px;
}
.accessmap:before {
  content: "";
  display: block;
  padding-top: 60%; /* 高さと幅の比を16:9に固定。9/16*100=56.25 */
}
.accessmap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}
/* top
--------------------------- */
.main_image_s {
  position: relative;
  height: 50vh !important;
}
.main_image {
  position: relative;
  margin-top: -120px;
}
.main_image_inner {
  position: relative;
  height: 90vh !important;
}
.main_image .main_image_inner .elementor-element:nth-of-type(1) .elementor-widget-container {
  height: 90vh !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}
.news_topics {
  background: #e5dcd0;
}
.news_topics_title a, .news_topics_title {
  font-family: 'Ryumin Regular KL' !important;
  letter-spacing: 1px !important;
}
.news_topics h3 {
  font-family: 'TBUDGothic E' !important;
}
.news_topics .uael-post-wrapper {
  /*
	border-bottom:1px solid #b9afa3 !important;
*/
}
@media screen and (min-width:1025px) {
  /*
	.news_topics .uael-post-wrapper:first-child{
		border-left:1px solid #554739;
	}
*/
}
.news_topics .uael-post-wrapper p {
  margin-bottom: 0 !important;
}
.onayami_group {
  padding: 50px 0;
}
.onayami_group #onayami_title {
  color: #f2eee7;
}
.onayami_group #onayami_title .sub {
  margin-bottom: 0;
  font-family: 'Ryumin Regular KL' !important;
  font-size: 16px;
}
.onayami_group #onayami_title .title {
  margin-bottom: 0.5em;
  font-family: 'Ryumin Regular KL' !important;
  font-size: 36px;
  line-height: 1.3;
}
.onayami_group .marker {
  display: inline-block;
  margin-bottom: 10px;
  padding: 10px;
  background: #100d0d;
  line-height: 1;
}
@media screen and (min-height:1025px) {
  .onayami_group .marker {
    margin-right: 10px;
  }
  .onayami_group #onayami_title br {
    display: none;
  }
}
.onayami_group #onayami_content .col {
  display: flex;
  align-items: center;
  width: 31%;
  margin-bottom: 3%;
  background: #ffffff;
  font-size: 22px;
  line-height: 1.3;
}
.onayami_group #onayami_content .col p {
  margin: 1em !important;
  font-family: 'Ryumin Bold KL' !important;
}
@media screen and (max-width:767px) {
  .onayami_group #onayami_content .col {
    width: 48%;
    font-size: 16px;
  }
}
.treatment_menu h3 {
  display: inline-block;
  margin-bottom: 0 !important;
  padding-bottom: 5px;
  border-bottom: 3px solid #5d2f0b;
  font-family: 'Ryumin Bold KL' !important;
  font-size: 24px;
}
.treatment_menu p {
  font-family: 'Ryumin Regular KL' !important;
}
.treatment_menu .btn a {
  padding: 1em;
  background: #81511c;
  border-radius: 50px;
}
.about_group, .about_group h3 {
  color: #ccc !important;
}
.about_group .about_title h2 {
  margin: 50px 0 !important;
  color: #fff !important;
  font-family: 'Ryumin Regular KL' !important;
}
.about_group .about_title .uael-sub-heading {
  padding: 10px 30px;
  border-left: 1px solid #ccc;
}
.about_group p {
  font-size: 14px;
}
.reason_group h2 .title {
  display: inline-block;
  margin-right: 15px;
  color: #6a3906 !important;
  font-size: 50px !important;
  font-style: italic;
}
.reason_group h2 .sub {
  font-family: 'Ryumin Bold KL' !important;
  font-size: 16px !important;
}
@media screen and (max-width:767px) {
  .reason_group h2 .title {
    display: block;
    margin-right: 0;
    margin-bottom: 7px;
  }
}
/* 本文共通
--------------------------- */
#page-title {
  height: 25vh;
  background: url(images/bg_about.jpg) no-repeat 50% 50%;
  background-size: cover;
}
#page-title .inner {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
#page-title h2 {
  width: 60%;
  color: #ebe9e8;
  text-align: center;
}
#page-title .thumb {
  width: 40%;
  height: 25vh;
}
@media screen and (min-width:1200px) {
  #page-title h2 {
    /* margin:0 0 8vh 0 !important; */
  }
}
@media screen and (max-width:767px) {
  #page-title {
    height: auto !important;
    margin-bottom: -60px;
    background: none;
  }
  #page-title .inner {
    display: block;
  }
  #page-title h2 {
    width: 100%;
    padding: 30px 0;
    background: url(images/bg_about.jpg) no-repeat 50% 50%;
    background-size: cover;
  }
  #page-title .thumb {
    width: 100%;
    height: 25vh;
    overflow: hidden;
  }
  #page-title h2 {
    font-size: 24px;
  }
}
h1.entry-title, h2.entry-title, body:not(.home) .entry-content h2 {
  position: relative;
  margin-top: 2em !important;
  padding-bottom: .5em;
  border-bottom: 4px solid #81511c;
  line-height: 1.3;
}
h1.entry-title::after, h2.entry-title::after, body:not(.home) .entry-content h2::after {
  position: absolute;
  bottom: -4px;
  left: 0;
  z-index: 2;
  content: '';
  width: 20%;
  height: 4px;
  background-color: #45403f;
}
body:not(.home) .entry-content h3 {
  color: #81511c;
}
body:not(.home) .entry-content th {
  background: rgba(129, 81, 28, 0.2);
}
body:not(.home) .entry-content td {
  background: rgba(255, 255, 255, 0.5);
}
.entry-header .entry-meta {
  text-align: right;
}
.entry-header .entry-meta span {
  color: #81511c !important;
}
.ast-archive-title {
  display: none !important;
}
/* 予約・お問い合わせ
--------------------------- */
input, textarea {
  font-size: 16px !important;
}
input[type="text"],
input[type="email"],
input[type="tel"],
textarea{
	width:100%;
}
.hissu {
  display: inline-block;
  margin-right: 10px;
  padding: 0.5em;
  background: #890837;
  color: #fff;
  font-size: 12px;
	line-height:1;
}
.col_inquiry {
  display: flex;
  flex-wrap: wrap;
}
.col_inquiry .col-3, .col_inquiry .col-7 {
  padding: 1em 1em 0 1em;
  border: 1px solid #ddd;
}
.col_inquiry .col-3 {
  width: 25%;
  background: #d6cbbf;
}
.col_inquiry .col-7 {
  width: 75%;
  background: #f5f4f3;
}
.col_inquiry .col-7 .wpcf7-list-item {
  display: block;
  margin-top: 15px;
}
@media screen and (max-width:767px) {
  .col_inquiry .col-3, .col_inquiry .col-7 {
    width: 100%;
  }
}
/* 診療時間
--------------------------- */
.guide .tel {
  display: inline-block;
  margin-left: 10px;
  font-family: century;
  font-size: 30px;
  letter-spacing: 0.1em;
}
.guide a {
  color: #fff;
  text-decoration: none;
}
.guide p {
  margin: 0;
}
table.guidance {
  border: none;
}
table.guidance th {
  background: #c8c6c6;
  border: none;
  color: #45403f;
  font-size: 18px;
  text-align: center;
}
table.guidance th.title {
  font-size: 14px;
  text-align: left;
}
table.guidance td {
  background: none;
  border: none;
  border-bottom: 1px solid #aaa;
  color: #8c695a;
  font-size: 18px;
  text-align: center;
  vertical-align: middle;
}
table.guidance td.title {
  color: #fff;
  font-size: 14px;
  text-align: left;
}
table.guidance td.holiday {
  color: #aaa;
}
table.guidance td.friday {
  color: #c8c6c6;
  font-size: 10px;
  line-height: 1.2;
}
.guide .kome {
  color: #fff;
  font-size: 12px;
}
@media screen and (max-width:413px) {
  table.guidance td, table.guidance th {
    padding: 3px;
    font-size: 14px;
  }
}