@charset "UTF-8";

/*
Theme Name:Original Style - 1column
Version:1.2
*/

.home #contents > .inner {
  /* トップページ幅 100% */
  width: 100%;
  max-width: 100%;
}
.topinner {
  /* コンテンツは1000pxに */
  width: 1400px;
  margin: 0 auto;
  max-width: 96%;
}

/* tinyMCE用に見出しをリセット */

.toppage h3, .toppage h4, .toppage h5 {
  background: none;
  border: none;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
  margin: 0;
  padding: 0;
}
.toppage h3::before, .toppage h3::after, .toppage h4::before, .toppage h4::after, .toppage h5::before, .toppage h5::after {
  display: none;
}

/*==========================
	　mainimage
==========================*/

.main_address {
  position: absolute;
  bottom: 0;
  right: 0;
}

/*-- スライダーの時 ------------*/

.slider {}
.slick-slide img {
  margin: 0 auto;
}
button.slick-arrow {
  /* 矢印ボタン */
  background: none;
  border: none;
  position: absolute;
  top: 50%;
  margin-top: -20px;
  height: 40px;
  width: 16px;
  text-indent: -9px;
  z-index: 1;
}
button.slick-arrow:hover {
  cursor: pointer;
  opacity: 0.7;
}
button.slick-prev {
  /* 矢印（前へ）ボタン */
  background: url(img/btn_prev.png) no-repeat;
  left: 18%;
  margin-left: -16px;
}
button.slick-next {
  /* 矢印（次へ）ボタン */
  background: url(img/btn_next.png) no-repeat;
  right: 18%;
  margin-right: -16px;
}
@media screen and (max-width: 1650px) {
  button.slick-prev {
    left: 13.7%;
  }
  button.slick-next {
    right: 13.7%;
  }
}
@media screen and (max-width: 1400px) {
  button.slick-prev {
    left: 8%;
  }
  button.slick-next {
    right: 8%;
  }
}
@media screen and (min-width: 1200px) {
  .slick-track {}
  .mainimage .slick-slide:not(.slick-center) {
    /* 前と次の画像を半透明に */
    opacity: 0.4;
    -moz-opacity: 0.4;
    filter: alpha(opacity=40);
  }
}

/*==========================
	汎用に使えるボタン
==========================*/

.link_btn, .btn-style {
  text-align: center;
}
.link_btn a, .btn-style a {
  background: #b0a280;
  width: 266px;
  max-width: 100%;
  padding: 1.3em 1.5em;
  text-align: center;
  color: #fff;
  display: inline-block;
  text-decoration: none;
  line-height: 1.2;
  box-sizing: border-box;
  font-size: 16px;
  font-weight: bold;
  position: relative;
  letter-spacing: 0.1em;
}
.btn-style.reverse a {
  color: #4c4c4c;
  background: #fff;
}
.link_btn a span, .btn-style a span {
  display: block;
  font-size: 12px;
}
.link_btn a::after, .btn-style a::after {
  content: '';
  background: url(img/arrow.png) no-repeat;
  position: absolute;
  top: 50%;
  margin-top: -8px;
  right: -11px;
  width: 31px;
  height: 8px;
  -webkit-transition: .3s;
  transition: .3s;
}
.link_btn a:hover:after, .btn-style a:hover:after {
  right: -5px;
}
.link_btn a:hover, .btn-style a:hover {
  opacity: 0.7;
  -moz-opacity: 0.7;
  filter: alpha(opacity=70);
  cursor: pointer;
}
.under .link_btn a, .under .btn-style a {
  width: auto;
  min-width: 280px;
}

/*==========================
	loopSlider　無限ループスライダー
==========================*/

.loopSliderWrap {
  top: 0;
  left: 0;
  height: 200px;
  overflow: hidden;
  position: absolute;
}
.loopSlider {
  margin: 0 auto;
  width: 100%;
  height: 200px;
  text-align: left;
  position: relative;
  overflow: hidden;
}
.loopSlider ul {
  height: 200px;
  float: left;
  overflow: hidden;
}
.loopSlider ul li {
  width: 300px;
  height: 200px;
  float: left;
  display: inline;
  overflow: hidden;
}

/*==========================
	　TOP コンテンツ
==========================*/

.top .mainblock a {
  text-decoration: none;
}
.top .mainblock a:hover {}

/*-- 新着情報 --------------*/

.sec_news {
  padding: 4em 0;
  background: url(img/bg01.png);
}
.sec_news .news {
  position: relative;
  box-sizing: border-box;
}
.sec_news .news dl {
  line-height: 1.3;
  background: #fff;
  padding: 2% 4%;
  width: 1000px;
  margin: 0 auto 3%;
}
.sec_news .news dt {
  float: left;
  clear: left;
  color: #433f3f;
  padding: 15px 0;
  width: 120px;
}
.sec_news .news dd {
  padding: 15px 0 15px 120px;
}
.news dd a {
  text-decoration: none;
  color: #433f3f;
}
.sec_news .news dd a:hover {
  text-decoration: underline;
}
.sec_news .news .btn a:hover {
  opacity: 0.7;
  -moz-opacity: 0.7;
  -webkit-opacity: 0.7;
}
.sec_news .news h3 {
  font-size: 26px;
  color: #433f3f;
  line-height: 1.5;
  letter-spacing: 0.1em;
  position: relative;
  font-weight: bold;
  padding: 3px 10px 12px 0.5em;
  margin: 0 auto 10px;
  box-sizing: border-box;
  text-align: left;
  border-radius: 0;
}
.sec_news .news .btn a {
  position: absolute;
  top: 39px;
  right: 0;
  color: #433f3f;
  font-size: 12px;
  display: table;
  padding: 1px 12px;
  text-decoration: none;
}
.sec_news .news .btn a:after {
  content: " ＞";
  font-weight: bold;
}
.sec_news .bg {
  background: #fff;
  box-sizing: border-box;
  padding: 4% 6%;
  -webkit-box-flex: 1;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
  height: 100%;
}
table.table01.table02 th, table.table01.table02 td {
  border: none;
  line-height: 1.3;
  padding: 8px 0;
}
table.table01.table02 th {
  width: 6em;
}

/*見出し*/

.top h2 {
  font-size: 30px;
  color: #4c4c4c;
  text-align: center;
  line-height: 1.4;
  letter-spacing: 0.1em;
  margin-bottom: 0.5em;
  font-weight: bold;
}
.top h3 {
  font-size: 20px;
  color: #433f3f;
  text-align: center;
  line-height: 1.4;
  letter-spacing: 0.05em;
  margin-bottom: 0.8em;
  font-weight: bold;
}
h2 span.sub {
  display: block;
  font-size: 20px;
  color: #b0a280;
  letter-spacing: 0.05em;
  font-family: Arial, Helvetica, "sans-serif";
}
.top h2.line {
  text-align: left;
}
h2.line span.sub {
  display: inline-block;
  margin-left: 1em;
}

/*-- ボックスその他 --------------*/

.secNew {
  padding: 5em 0;
  background: url(img/new_bg.jpg) no-repeat center / cover;
}
.secNew .bg1 {
  background: #fff;
  box-sizing: border-box;
  padding: 3em 1em 1em;
  width: 800px;
  max-width: 100%;
  margin: 0 auto 4%;
}
.secNew .bg2 {
  background: rgba(222, 215, 191, .9);
  box-sizing: border-box;
  padding: 3em 1em 2em;
  max-width: 100%;
  width: 1000px;
  margin: 0 auto;
}
.secNew h3 {
  color: #7d6c44;
  font-size: 30px;
  text-align: center;
  margin-bottom: 2%;
}
.sec01 {
  padding: 5em 0;
  background: url(img/bg02.jpg) no-repeat center /cover;
}
.sec01 .inner {
  width: 670px;
  max-width: 100%;
  margin: 0 auto;
}
.sec01 p {
  line-height: 2.3;
  margin: 9% auto 0;
}
.sec01 p span {
  font-weight: bold;
}
.sec02 {
  padding: 4em 0 5em;
  background: url(img/bg03.png);
}
.sec02 .col_txt {
  background: #ded7bf;
  box-sizing: border-box;
  padding: 5% 3%;
}
.sec02 .col_txt ul {
  text-align: center;
  margin: 0 auto 2%;
  width: 360px;
  max-width: 100%;
}
.sec02 .col_txt ul li {
  font-size: 18px;
  background: #eceadd;
  text-align: left;
  padding: 1em 1.5em;
  margin-bottom: 5%;
}
.sec02 .bg {
  background: rgba(255, 255, 255, .7);
  box-sizing: border-box;
  padding: 2%;
  margin-top: 3%;
}
.sec02 .bg .col_txt {
  background: #b0a280;
  color: #fff;
}
.sec02 .bg .col_txt h3 {
  font-size: 24px;
  color: #fff;
  line-height: 2;
}
.sec02 .bg .col_txt {
  padding: 4% 4% 2%;
}
.sec03 {
  padding: 6em 0 10px;
  background: url(img/bg04.jpg) no-repeat center /cover;
}
.sec03 h2, .sec03 h2 .sub {
  color: #fff;
  margin-bottom: 2%;
}
.sec03 .column {
  position: relative;
  box-sizing: border-box;
  text-align: center;
  margin-bottom: 4%;
}
.box_link {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.box_link a {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  text-indent: -9999px;
}
.sec03 .column:hover {
  -moz-opacity: 0.8;
  opacity: 0.8;
}
.sec03 .column p.btn {
  font-size: 24px;
  text-align: center;
  font-weight: bold;
  display: inline-block;
  position: relative;
  margin: 18px auto 0;
}
.sec03 .column p.btn:after {
  border-top: 2px solid #4c4c4c;
  border-right: 2px solid #4c4c4c;
  content: "";
  display: block;
  height: 6px;
  margin-top: -6px;
  position: absolute;
  right: -1em;
  top: 50%;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  width: 6px;
}
.sec03 .column:hover p.btn:after {
  right: -1.1em;
}
.sec04 .bg1 {
  padding: 5em 0 0;
  background: url(img/bg05.jpg) no-repeat center /cover;
}
.sec04 h2 {
  margin-bottom: 4%;
}
.sec04 p.ttl {
  display: inline;
  font-size: 20px;
  font-weight: bold;
  border-bottom: 1px solid;
  letter-spacing: 0.05em;
  line-height: 2;
}
.sec04 .bg1 .column:nth-of-type(1) {
  background: url(img/bg05_1.jpg) no-repeat center /cover;
}
.sec04 .bg1 .column:nth-of-type(2) {
  background: url(img/bg05_2.jpg) no-repeat center /cover;
}
.sec04 .bg1 .column:nth-of-type(3) {
  background: url(img/bg05_3.jpg) no-repeat center /cover;
}
.sec04 .bg1 .column:nth-of-type(4) {
  background: url(img/bg05_4.jpg) no-repeat center /cover;
}
.sec04 .bg1 .column:nth-of-type(5) {
  background: url(img/bg05_5.jpg) no-repeat center /cover;
}
.sec04 .bg1 .column:nth-of-type(6) {
  background: url(img/bg05_6.jpg) no-repeat center /cover;
}
.sec04 .bg1 .column {
  box-sizing: border-box;
  margin-top: 5%;
  padding-bottom: 6%;
}
.sec04 .bg {
  background: #fff;
  max-width: 320px;
  width: 96%;
  margin: -5% auto auto;
  box-sizing: border-box;
  padding: 6% 4% 4%;
  line-height: 2;
  height: 100%;
}
.sec04 .bg h3 {
  font-size: 24px;
  line-height: 1.7;
  margin-bottom: 4%;
}
.sec04 .bg2 {
  padding: 5em 0;
  background: url(img/bg06.jpg) no-repeat center /cover;
}
.sec04 .bg2 .column {
  background: #ded7bf;
  box-sizing: border-box;
  padding: 2.5% 4%;
}
.sec04 .bg2 p {
  line-height: 2;
}
.sec05 {
  padding: 4em 0;
}
.sec05 h2 {
  margin-bottom: 5%;
}
.sec05 p {
  line-height: 2;
}
.sec05 .btn-style.mt {
  margin-top: 9%;
}
.sec05 p .t-in {
  padding-left: 4em;
  display: inline-block;
}

.sec_covid{
  padding: 5% 0;
}
.sec_covid .topinner{
  padding: 5% 10%;
  background: #b0a280;
  color: #fff;
  box-sizing: border-box;
}
.sec_covid h2,
.sec_covid h2 span.sub{
  color: #fff;
}
.sec_covid ul li{
  font-size: 18px;
  padding-left: 1em;
  position: relative;
}
.sec_covid ul li:not(:last-child){
  margin-bottom: 1.2em;
}
.sec_covid ul li:before{
  content: '・';
  position: absolute;
  top: 0;
  left: 0;
  margin: auto;
}



/********************************
	Responsive
*********************************/

@media screen and (min-width: 768px) {
  /* タブレットまで */
  /*================================
	mainimage　が一枚画像の場合
================================*/
  .mainimage {}
  /*==========================
	　TOP コンテンツ
==========================*/
  .btn-style {
    text-align: left;
  }
  .btn-style.tac {
    text-align: center;
  }
  /*-- FLEX設定 --------------*/
  .columns {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
  }
  .col_wrap {
    /*改行して組む場合*/
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    /*IE10*/
    -webkit-flex-wrap: wrap;
    /* Safari6.1以降 */
  }
  .columns.reverse {
    /*左右反転*/
    -webkit-box-direction: reverse;
    -moz-box-direction: reverse;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: row-reverse;
    -moz-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .columns .column {
    box-sizing: border-box;
    max-width: 48.6%;
    -webkit-box-flex-basis: 48.6%;
    -webkit-flex-basis: 48.6%;
    flex-basis: 48.6%;
  }
  .columns.col3 {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
  .columns.col3 .column {
    max-width: 30%;
    -webkit-box-flex-basis: 30%;
    -webkit-flex-basis: 30%;
    flex-basis: 30%;
    margin-right: 5%;
  }
  .columns.col3 .column:nth-of-type(3n) {
    margin-right: 0;
  }
  .columns.w33 .column {
    max-width: 33.3333%;
    -webkit-box-flex-basis: 33.3333%;
    -webkit-flex-basis: 33.3333%;
    flex-basis: 33.3333%;
  }
  .columns.col4 {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
  .columns.col4 .column {
    max-width: 23.5%;
    -webkit-box-flex-basis: 23.5%;
    -webkit-flex-basis: 23.5%;
    flex-basis: 23.5%;
    margin-right: 2%;
  }
  .columns.col4 .column:nth-of-type(4n) {
    margin-right: 0;
  }
  .col_align {
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center;
  }
  /*-- ボックスその他 --------------*/
  .sec_news .columns .column {
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .sec02 .columns .column.col_img {
    max-width: 51%;
    -webkit-box-flex-basis: 51%;
    -webkit-flex-basis: 51%;
    flex-basis: 51%;
  }
  .sec02 .columns .column.columns, .sec05 .columns .column.columns {
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center;
  }
  .columns .column.columns figure {
    width: 100%;
  }
  .sec02 .columns .column.col_txt {
    max-width: 37%;
    -webkit-box-flex-basis: 37%;
    -webkit-flex-basis: 37%;
    flex-basis: 37%;
  }
  .sec03 .columns .column {
    max-width: 19%;
    -webkit-box-flex-basis: 19%;
    -webkit-flex-basis: 19%;
    flex-basis: 19%;
  }
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
  /* 程よいブラウザサイズでメインイメージを縮小 */
  .mainimage {
    height: 370px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1041px) {
  .sec_news .time-table {
    font-size: 14px;
  }
  .sec02 .columns .column.col_txt {
    max-width: 48%;
    -webkit-box-flex-basis: 48%;
    -webkit-flex-basis: 48%;
    flex-basis: 48%;
  }
  .columns.w33 .column {
    max-width: 50%;
    -webkit-box-flex-basis: 50%;
    -webkit-flex-basis: 50%;
    flex-basis: 50%;
  }
}
@media screen and (max-width: 1041px) {
  /*コンテンツが横幅いっぱいになったら*/
  .sec04 p.ttl {
    font-size: 18px;
  }
  .sec02 .col_txt ul li {
    font-size: 16px;
    padding: 1em 1.2em
  }
  .sec03 .column p.btn {
    font-size: 18px;
  }
}
@media screen and (max-width: 767px) {
  /* スマホ */
  .topinner {
    width: 420px;
    margin: 0 auto;
    box-sizing: border-box;
  }
  .top #contents, .top #aside {
    margin-bottom: 0;
  }
  /*==========================
	　mainimage
==========================*/
  .mainimage, .slider {
    margin-bottom: 0;
  }
  .mainimage img {
    height: auto;
    max-width: none;
    max-height: none;
    width: 100%;
  }
  .mainimage {
    margin-bottom: 5%;
  }
  /*==========================
	ボタン
==========================*/
  /*==========================
	loop
==========================*/
  .loopSlider {
    height: 100px;
  }
  .loopSlider ul {
    height: 100px;
  }
  .loopSlider ul li {
    width: 150px;
    height: 100px;
  }
  /*==========================
	　TOP コンテンツ
==========================*/
  .sp-columns {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
  }
  .sp-columns .column {
    box-sizing: border-box;
    max-width: 49%;
    -webkit-box-flex-basis: 49%;
    -webkit-flex-basis: 49%;
    flex-basis: 49%;
    margin-bottom: 2%;
  }
  .sec_news .news {
    padding-bottom: 1px;
  }
  .sec_news .news dt {
    width: 100%;
    padding: 5px 0 0;
  }
  .sec_news .news + .news {
    margin-top: 1.5em;
  }
  .sec_news .news dd {
    padding: 0 0 5px;
  }
  .sec_news .news dl {
    margin-top: 10px;
  }
  .sec_news .news .btn a {
    top: 70px;
  }
  /*-- 余白・背景 --------------*/
  .secNew {
    padding: 2em 0;
    margin-top: 5%;
    background: url(img/sp_new_bg.png) no-repeat center / cover;
  }
  .sec_news {
    padding: 2em 0;
  }
  .sec01 {
    padding: 2em 0;
  }
  .sec02 {
    padding: 2em 0;
    background-size: 50px;
  }
  .sec03 {
    padding: 2em 0 10px;
  }
  /*-- 見出し --------------*/
  .secNew h3 {
    font-size: 20px;
  }
  .sec_news .news h3 {
    font-size: 24px;
  }
  .top h2 {
    font-size: 21px;
  }
  h2 span.sub {
    font-size: 16px;
  }
  /*-- ボックスその他 --------------*/
  .secNew .bg1 {
    padding: 2em 1em 1em
  }
  .sec_news .column {
    margin-top: 1.5em;
  }
  .sec02 .column + .column {
    margin-top: 10px;
  }
  .sec02 .bg .col_txt h3 {
    font-size: 20px;
    line-height: 1.3;
  }
  .sec04 .bg1 .column {
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    margin-top: 10%;
    padding-bottom: 100px;
  }
  .sec04 .bg1 {
    padding: 2em 0 0;
  }
  .sec04 .bg {
    padding: 6% 4% 1%;
  }
  .sec04 .bg h3 {
    font-size: 20px;
    line-height: 1.4;
  }
  .sec04 .bg2 {
    padding: 2em 0;
    background-position: right;
  }
  .sec05 {
    padding: 2em 0;
  }
  .sec05 .column + .column {
    margin-top: 1em;
  }
  .sec05 .column.columns.img img {
    text-align: center;
    margin: 3em auto 10px;
    display: block;
  }
  .sec_covid .topinner{
    padding: 5%;
  }
  .sec_covid ul li{
    font-size: 15px;
  }
}
@media screen and (max-width: 480px) {
  /* スマホ480px */
}
@media screen and (max-width: 320px) {
  /* スマホ320px */
}

/*グーグルカレンダー設定*/

.cal_wrapper {
  max-width: 900px;
  /* 最大幅 */
  min-width: 260px;
  /* 最小幅 */
  margin: 2.0833% auto;
  padding: 0 .5em;
}
.googlecal {
  position: relative;
  padding-bottom: 80%;
  /* 縦横比 */
  height: 0;
  overflow: hidden;
}
.googlecal iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
.calendar-container {
  position: relative!important;
  padding-bottom: 80%;
  padding-top: 30px;
  height: 0;
}
.calendar-container iframe, .calendar-container object, .calendar-container embed {
  position: absolute!important;
  top: 0;
  left: 0;
  width: 100%!important;
  height: 100%!important;
}
@media screen and (max-width: 460px) {
  .calendar-container {
    padding-bottom: 140%;
  }
}
.entry-content img, #content embed, #content object, #content iframe, #content video {
  padding: 6px!important;
  border-radius: 3px;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .cal_wrapper {
    padding: 0!important;
  }
  .googlecal {
    padding-bottom: 100%;
    /* 縦横比 */
  }
}


/*==========================
	Modify Day Surgery
==========================*/
/*-------------- 20200821 START --------------*/
.sec_pagetheme * {
  box-sizing: border-box;
}
.sec_pagetheme .topinner {
  padding: 5% 10% 0;
}
.sec_pagetheme h1 {
  margin-bottom: 1.5em;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
}
.sec_pagetheme h1 span {
  font-size: 30px;
  font-weight: bold;
  display: block;
}
.sec_pagetheme p {
  text-align: center;
}
/*-------------- 20200821 END --------------*/
