@charset "utf-8";
@import url("add.css");


/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}

ol, ul {list-style: none;}
table {border-collapse: separate;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img {border: 0;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}

body{
font-family:Arial, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
font-size: 87.5%;
line-height: 1.75;
color:#333333;
}
.hiddenSp{
  display: block;
}
.hiddenPc{
  display: none;
}
@media only screen and (max-width: 959px){
  .hiddenSp{
    display: none;
  }
  .hiddenPc{
    display: block;
  }
}


/* リンク設定
------------------------------------------------------------*/
a{
margin:0;
padding:0;
text-decoration:none;
outline:0;
vertical-align:baseline;
background:transparent;
font-size:100%;
color:#B89D76;
}

a:hover, a:active{
-webkit-transition:opacity 1s;-moz-transition:opacity 1s;-o-transition:opacity 1s;
outline: none;
color:#927a49;
}


/**** Clearfix ****/
.nav .panel:before,nav .panel:after, nav#mainNav:before,nav#mainNav:after, .newsTitle:before,.newsTitle:after{content: ""; display: table;}
nav .panel:after,nav#mainNav:after,.newsTitle:after{clear: both;}
nav .panel,nav#mainNav,.newsTitle{zoom: 1;}


/* フォーム
------------------------------------------------------------*/
input[type="text"],
input[type="email"],
 textarea{
vertical-align:middle;
max-width:100%;
width:100%;
font-size: 100%;
line-height:30px;
height:30px;
padding:1px 5px;
border:1px solid #d4d4d7;
border-radius:3px;
-webkit-border-radius:3px;
-moz-border-radius:3px;
color:#555;
background:#fcfcfc;
}

textarea{
height:auto;
line-height:1.5;
}

input[type="submit"],input[type="reset"],input[type="button"]{
padding:10px 50px;
background: #4f4d4d;
border:0;
color:#fff;
}

input[type="submit"]:hover,input[type="reset"]:hover,input[type="button"]:hover{
background: #808080;
cursor:pointer;
}

*:first-child+html input[type="submit"]{padding:3px;}


/* レイアウト
------------------------------------------------------------*/
.inner{
margin:0 auto;
width:1000px;
}
.inner02{
margin:0 auto;
width:45%;
}
@media only screen and (max-width: 959px){
  .inner02{
  margin:0 auto;
  width:80%;
  }
}

#mainNav{}

#header{
	border-bottom: 5px solid #76B77D;
	padding: 20px 0;
}

#wrapper {
  overflow: hidden;
}

#content{
/* float:left; */
width:100%;
box-sizing:border-box;
}

#sidebar{
float:right;
width:250px;
padding-bottom: 15px;
}

#footer{
background: #76B77D;
}


/* ヘッダー
*****************************************************/

/* サイト説明文
----------------------------------*/
/*
#header h1{
padding:5px 0;
color: #333333;
font-size:87.5%;
font-weight:normal;
text-align: right;
}
*/


/* ロゴ (サイトタイトル)
----------------------------------*/
#header h1{
font-size:160%;
}

/* トップページ　スライド画像
----------------------------------*/
#mainImg{
max-width: 1500px;
line-height:0;
text-align:center;
margin: 0 auto;
z-index:0;
}
#mainImg img {width: 100%}

/* タイポグラフィ
*****************************************************/
h2.title{
clear:both;
margin:30px 0 20px;
padding:10px 0 10px 10px;
}

h2.first{margin-top:0;}

h2.sub_title {
  background: url(images/subBg.png) no-repeat center center;
  background-size: cover;
  text-align: center;
  font-size: 2em;
  color: #fff;
  font-weight: bold;
  padding: 2em 0;
}

ul.thumb {
  margin-bottom: 30px;
}

ul.thumb li {
  padding: 10px 0;
  border-bottom: 1px solid #b89d76;
  margin-bottom: 0.5em;
}

.post ol li{list-style:decimal;}

.post h1{
margin:20px 0;
padding:5px 0;
font-size:150%;
color: #252525;
border-bottom:3px solid #3c2f13;
}

.post h2{
margin:10px 0;
padding-bottom:2px;
font-size:130%;
font-weight:bold;
color: #252525;
border-bottom:2px solid #3c2f13;
}

.post h3{
margin:10px 0;
font-size:1.6em;
font-weight:normal;
color:#76B77D;
border-bottom:1px solid #333;
}

.post table{
border: 1px #bbb solid;
border-collapse: collapse;
border-spacing: 0;
margin:10px auto 20px;
width: 80%;
font-size: 1.3em;
}

.post table th{
padding:7px 10px 7px 5px;
border: #bbb solid;
border-width: 0 0 1px 1px;
color:#333;
}

.post table td{
padding:7px 5px;
border: 1px #bbb solid;
border-width: 0 0 1px 1px;
background:#fff;
text-align: right;
}
.post table tr.week td {background-color: #e8e8e8;}
.post table.examination td {width: 80px;text-align: center;}
.post table.examination th {text-align: center; background-color: #78b67f; color:#fff;}

.post dt{font-weight:bold;}

.post dd{padding-bottom:10px;}

.post img{max-width:100%;height:auto;}

img.aligncenter {
display: block;
margin:5px auto;
}

img.alignright, img.alignleft{
padding:4px;
margin:0 0 2px 7px;
display:inline;
}

img.alignleft{margin: 0 7px 2px 0;}

.alignright{float:right;}
.alignleft{float: left;}



/* サイドバー　ウィジェット
*****************************************************/
#sidebar h3{
clear:both;
margin:0 0 10px;
padding:5px 0;
font-size:100%;
font-weight:normal;
color: #252525;
border-bottom:3px solid #3c2f13;
}

#sidebar a{
display:block;
}

/* 更新情報
-------------*/

.news p{
clear:both;
padding-bottom:2px;
border-bottom: 1px solid #bab48d;
}

.news p a{
display:block;
padding:5px 0;
color:#252525;
}

.news span{padding-left:10px;}

.news a:hover span{color:#927a49;}



/* フッター
*****************************************************/
#footerLogo{
}

#footerLogo img{
width: 100%;
display: block;
height:auto;
margin: 0 auto;
}

#footer .f_top {
  padding:10px 0;
}

#footer .f_bottom {
  padding: 10px 0;
/*   background:#8c8c8c; */
color: #fff;
}

#footer ul{
font-size:95%;
max-width: 1000px;
margin: 20px auto;
}

#footer ul.f_menu {
  border-top: 1px dashed #fff;
  font-size: 0.8em;
}

#footer ul ul{padding-bottom:0;width:auto;}

#footer ul li{
display:inline-block;
vertical-align:text-top;
text-align:left;
padding:3px 20px;
/* border-left: 1px solid #333333; */
color: #fff;
}

#footer ul li:last-child {
/*   border-right: 1px solid #333333; */
}

#footer ul li a{
/* display:block; */
overflow:hidden;
text-decoration: underline;
color: #fff;
}

#footer ul li a:hover {
  text-decoration: none;
}

*:first-child+html #footer ul li{display:inline;}
*:first-child+html #footer ul ul,*:first-child+html #footer ul li li a,*:first-child+html #footer ul li li{display:none;}

#copyright{
clear:both;
padding:5px;
text-align:center;
font-style:normal;
font-size:85%;
zoom:1;
}


/* page navigation
------------------------------------------------------------*/
.pagenav{
clear:both;
width: 100%;
height: 30px;
margin: 5px 0 20px;
}

.prev{float:left}

.next{float:right;}

#pageLinks{
clear:both;
color:#4f4d4d;
text-align:center;
}


/* トップページ 最新記事3件 + お勧め商品
------------------------------------------------------------*/
.thumbWrap{
width:645px;
margin-right:-20px;
}

.thumbWrap li{
float:left;
width: 195px;
margin:0 20px 0 0;
padding:2px 0 40px;
background:none;
}


/* 最新記事リンク */
ul.thumb h3{
margin-top:10px;
padding:1px;
font-weight:normal;
font-size:100%;
text-align:center;
background:#fff;
border:1px solid #bcbcbc;
}

ul.thumb h3 span{
display:block;
padding:2px 3px;
background:#dedabc;
}

ul.thumb h3:hover{background:#f1efe4;}

ul.thumb h3:hover span{background:#e3dfc4;}

/* 調整 */
img {
  vertical-align: middle;
}

strong {
  font-weight: bold;
}

a:hover img {
  opacity: 0.8;
}

.contactInfo {
  float: right;
}

ul.c_banner {
  overflow: hidden;
}

ul.c_banner li {
  float: left;
}

ul.c_banner li:first-child {
  margin-right: 20px;
}

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


/*flex_box*/
div.flex_box,
dl.flex_box {
	overflow: hidden;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack:justify;
	-webkit-justify-content: space-between;
    justify-content: space-between;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
div.flex_start,
dl.flex_box {
	-ms-flex-pack:start;
	-webkit-justify-content: flex-start;
    justify-content: flex-start;
}
ul.flex_box {
  overflow: hidden;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack:justify;
  -webkit-justify-content: space-around;
    justify-content: space-around;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
div.flex_box div {width: 48%;}
div.flex_box div.thcal {width: 33%;}
div.flex_box div.w20 {width: 20%;}
div.flex_box div.w30 {width: 30%;}
div.flex_box div.w40 {width: 40%;}
div.flex_box div.w50 {width: 50%;}
div.flex_box div.w60 {width: 60%;}
div.flex_box div.w70 {width: 70%;}
div.flex_box div.w80 {width: 80%;}
.w80 p:nth-child(2) {
    background: #eee;
    padding: 0.5em 1em;
}
div.flex_box dt {width: 20%;}
div.flex_box dd {width: 80%;}
footer div.flex_box dd {width: 100%;}


/*/flex_box*/
div.flex_box div.exthcal {width: 334px;}
div.flex_box div.exthcal:nth-child(2) {width: 332px;}
div.flex_box div.extwo {width: 50%;}
div.flex_box div.posi_rel, div.banner_box img, div.exthcal img, div.extwo img {width: 100%;}
div.flex_box div.header_logo {width: 41%; padding: 0 20px;}
div.flex_box div.header_logo img, .full_width {width: 100%;}
div.flex_box div.header_info {width: 27%; border-left: 1px dashed #B89D76;}
div.flex_box div.footer_logo {width: 38%;}
div.flex_box div.footer_detail { width: 15%; text-align: center; color: #fff;}
div.flex_box div.footer_top { width: 27%;}
div.posi_rel p.banner_title {position: absolute; top: 0; left: 0; background: #76B77D; padding: 5px 20px; color: #fff; z-index: 9999;}
section {max-width: 1000px; width: 100%; margin: 20px auto;}
.footer_address {margin-left: 6.3em; font-size: 12px; color: #fff;}
.footer_address span {font-size: 15px; font-weight: bold;}
div.footer_detail dt {float: left; width: 50px;}
span.footer_time, .footer_guide {border: 1px solid #fff; width: 110px; padding: 10px 20px; margin-top: 20px; display: block;}
.footer_top p {font-size: 20px; font-weight: bold; margin-top: 20px;}
.f_guideList li:before {content: ">"; padding-right: 5px;}
.detail_link {position: absolute; bottom: 50px; right: 200px; font-size: 20px;}
.detail_link a {color: #000;}
#wpsbc_widget-2 {width: 800px; margin: 0 auto;}
.fixed_nav {position: fixed; top: 100px; right: 50px; z-index: 9999;}
div.zoom_img img {
	-webkit-transition: -webkit-transform 2s cubic-bezier(0, 0.5, 0.2, 1);
	transition: transform 0.2s ease-out;
}
div.zoom_img  a:hover img {
	opacity: 1;
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
transform: scale(1.1);
}



.align_right {text-align: right;}
.white {color: #fff;}
.posi_rel {position: relative;}
.bold {font-weight: bold;}
.center {text-align: center;}
.mbp20 {margin-bottom: 20px;}
.mtp20 {margin-top: 20px;}
.right {text-align: right;}

/*カレンダー設定*/
.wpsbc-widget .wpsbc-calendar, .wpsbc-widget .wpsbc-calendar:first-child {width: 300px; margin-right: 40px;}
div.wpsbc-calendar ul li {width: 38px;}
div.wpsbc-calendar div.wpsbc-heading {width: 100%;}
div.wpsbc-calendar div.wpsbc-heading div.wpsbc-select-container {text-align: center; width: 200px;}


/* 追加
------------------------------------------------------------*/
.bg_gray {
  background-color: #F5F2F0;
  padding: 2em 0;
}
.bg_white {
  background-color: #fff;
  padding: 2em 0;
}
.button {
  position: relative;
  border: 2px solid #76B77D;
  background-color: #fff;
  border-radius: 6px;
  color: #76B77D;
  display: inline-block;
  width: 200px;
  height: 39px;
  text-align: center;
  text-decoration: none;
  line-height: 37px;
  -webkit-transition: none;
  transition: none;
  box-shadow: 0 3px 0 #76B77D;
  outline: none;
}
.button:hover {
  top: -4px;
  box-shadow: 0 7px 0 #76B77D;
}
.button:active {
  top: 3px;
  box-shadow: none;
}
.button::before,
.button::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.button,
.button::before,
.button::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.button_blue {
  position: relative;
  border: 2px solid #36527B;
  background-color: #fff;
  border-radius: 6px;
  color: #36527B;
  display: inline-block;
  width: 200px;
  height: 39px;
  text-align: center;
  text-decoration: none;
  line-height: 37px;
  -webkit-transition: none;
  transition: none;
  box-shadow: 0 3px 0 #36527B;
  outline: none;
}
.button_blue:hover {
  top: -4px;
  box-shadow: 0 7px 0 #36527B;
}
.button_blue:active {
  top: 3px;
  box-shadow: none;
}
.button_blue::before,
.button_blue::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.button_blue,
.button_blue::before,
.button_blue::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

p.care_time {
  background-color: #B89D76;
  color: #fff;
  text-align: center;
  padding: 5px;
  margin: 0 13px 0 15px;
}
.medical ul {
  color: #B89D76;
  margin: 5px 65px 0;
}
.mail p {
  margin: 0 15px;
  font-size: 1.2em;
}
p.header_tel {
  color: #76B77D;
  font-size: 1.8em;
}
p.header_mail {
  color: #76B77D;
  font-size: 1.5em;
}
a.syosai {
  width: 420px;
}
p.page_top a {
  font-size: 1.6em;
  color: #fff;
}
div.line {
  background: url(images/line.png);
  height: 10px;
}
.breadcrumbs {
  color: #76B77D;
}
ul.decimal {
  list-style-type: decimal;
}
ul.disc {
  list-style-type: disc;
}
div.flex_box div.three {
  background-color: #F5F2F0;
  border: 2px solid #76B77D;
  width: 30%;
  padding:1em 0.5em;
  line-height: 2;
  margin: 1em auto;
}
p.faq {
  color: #573731;
  margin-top:1em;
  font-size: 1.4em;
}
p.faq span {
  background-color: #f2566c;
  color: #fff;
  padding: 0.25em 0.5em;
  margin-right: 0.25em;
}
p.faq a {
  color: #573731;
}
h3.voice {
  margin:10px 0;
  font-size:2em;
  font-weight:normal;
  color:#76B77D;
  border-bottom:1px dashed #B89D76;
  padding-bottom: 0.25em;
}
h3.voice span {
  color: #fff;
  background-color: #B89D76;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  padding: 0.25em 0.5em;
  margin-right: 0.25em;
}
h3.pay span {font-size:0.75em;}
.align_right {
  text-align: right;
}
div.flex_box div.four {
  width: 35%;
  background-color: #76B77D;
  color: #fff;
  font-size: 1.5em;
}
div.flex_box div.six {
  width: 64.5%;
  border: 1px solid #76B77D;
}
div.flex_box div.four h4 {
  padding: 1.5em 1em;
}
div.flex_box div.six p {
  padding: 1em;
}
div.deco_title h3 {
  text-align: center;
  border-bottom: 0;
}
div.deco_title h3.brown {
  text-align: center;
  border-bottom: 0;
  color: #B89D76;
  font-size: 1.8em;
  font-weight: bold;
}
div.deco_title p {
  text-align: center;
  color: #B89D76;
  font-size: 2.2em;
  font-weight: bold;
}
.simple_box {
  background-color: #F5F2F0;
    border: 2px solid #fff;
    box-shadow: 0 0 0 2px #F5F2F0;
    color: #0a8915;
    margin: 0 0 2em;
    padding: 2em;
}
div.red_title h3 {
  color: #f04d6b;
  text-align: center;
  font-size: 2em;
  font-weight: bold;
  border-bottom: 0;
  text-shadow: 1px 1px #ccc;
}
p.deco_box {
  background-color: #f04d6b;
  border: 2px dashed #fff;
  box-shadow: 0 0 0 4px #f04d6b;
    color: #fff;
    margin: 2em 0;
    padding: 2em;
    position: relative;
}
p.deco_box span {
  font-size: 2em;
}
.list li {
  background-color: #f04d6b;
  -webkit-border-radius: 25%;
  border-radius: 50%;
  color: #fff;
  padding: 0.5em 1em;
  margin-bottom: 0.5em;
}
div.flex_box div.four_another {
  width: 35%;
  background-color: #B89D76;
  color: #fff;
  font-size: 1.5em;
  margin: 1.2em 0;
}
div.flex_box div.six_another {
  width: 64.5%;
  border: 1px solid #B89D76;
  margin: 1.8em 0;
}
div.flex_box div.four_another h4 {
  padding: 1.5em 1em;
}
div.flex_box div.six_another p {
  padding: 1em 1em 0;
}
div.flex_box div.six ul,
div.flex_box div.six_another ul,
div.flex_box div.six_red ul {
  padding: 1em 2em;
}
div.flex_box div.four_red {
  width: 35%;
  background-color: #f04d6b;
  color: #fff;
  font-size: 1.8em;
  margin: 1em 0;
}
div.flex_box div.six_red {
  width: 64.5%;
  border: 1px solid #f04d6b;
  margin: 1.8em 0;
}
div.flex_box div.four_red h4 {
  padding: 1.5em 1em;
}
div.flex_box div.six_red p {
  padding: 1em 1em 0;
}
ul.flex_box li {
  width:20%;
}
.make {
  position: relative;
  height: 50px;
  line-height: 50px;
  padding: 0 1em;
  background-color: #f0f0f0;
  margin-bottom: 1.6em;
  font-weight: bold;
}
.make::before,
.make::after {
  content: '';
  position: absolute;
}
.make::before {
  top: 100%;
  left: 0;
  border-width: 0 15px 15px 0;
  border-style: solid;
  border-color: transparent;
  border-right-color: #ccc;
}
.make::after {
  top: 0;
  right: 0;
  z-index: 2;
  border-width: 25px 20px;
  border-style: solid;
  border-color: transparent;
  border-right-color: #fff;
}
li.simple_box {
  color: #333;
  font-weight: bold;
}
p.ans {
  background-color: #F5F2F0;
    border: 2px solid #fff;
    box-shadow: 0 0 0 2px #F5F2F0;
    color: #1f8bd8;
    margin: 0 0 2em;
    padding: 2em;
    font-size: 1.2em;
    line-height: 2;
}
p.ans span {
  background-color: #1f8bd8;
    color: #fff;
    padding: 0.25em 0.5em;
    margin-right: 0.25em;
}
.contact {
  margin-top: 1em;
}
div.underline ul li a {
  position: relative;
  text-decoration: none;
}
div.underline ul li a::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2.5px;
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  background-color: #b89d76;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}
div.underline ul li a:hover::after {
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1);
}
span.news_thum {color:#fff; background:#b89d76; padding:0.5em 1em; margin-left:1em;}
span.blog_thum {color:#fff; background:#78b67f; padding:0.5em 1em; margin-left:1em;}
.before_after {padding:1em 2em;}
p.dateLabel {
 line-height:2;
}
.contact {
  margin: 60px 0;
}
.contact__tel{
  text-align: center;
}
.contact__mail{
  text-align: center;
}
.contact__txt{
  font-size: 16px;
  margin-bottom: 30px;
}
.contact__link {
  text-align: center;
  font-size: 24px;
  background-color: #84b582;
  color: #fff;
  padding: 15px 30px;
  border-radius: 8px;
  margin: 15px 0px 80px;
  display: inline-block;
}
.contact__link:hover {
  background-color: #fff;
  color: #84b582;
  border: 1px solid #84b582;
  transition: .3s;
}
.ttl{
  margin-top: 15px;
}
.check{
  margin-top: 60px !important;
  text-align: center;
}
.anime01 .posi_rel,
.anime02 .posi_rel,
.anime03 .posi_rel{
  width: 100%;
}
.anime01 .posi_rel:nth-of-type(1) img,
.anime03 .posi_rel:nth-of-type(2) img{
  height: 298px;
  object-fit: cover;
}
.anime03 .posi_rel:nth-of-type(2) img{
  width: 100%;
}
.anime01 .posi_rel:nth-of-type(2) img,
.anime03 .posi_rel:nth-of-type(1) img{
  height: 200px;
  object-fit: cover;
}
.anime02 .posi_rel:nth-of-type(1) img,
.anime02 .posi_rel:nth-of-type(2) img,
.anime02 .posi_rel:nth-of-type(3) img{
  height: 166px;
  object-fit: cover;
}
.anime02 .posi_rel:nth-of-type(2) img{
object-position: bottom;
}
.anime02 .posi_rel:nth-of-type(3) img{
object-position: top;
}
.flexbox-btn{
  display: flex;
  justify-content: center;
  gap: 30px;
  flex-direction: row;
  align-items: center;
  margin-bottom: 20px;
}
.flexbox-btn .button i{
  position: absolute;
  right: 10px;
  top: 53%;
  transform: translate(0,-50%);
  font-size: 12px;
}
.practice__link{
  position: relative;
  margin: 15px auto;
  max-width: 240px;
  width: 180px;
  text-align: center;
  padding: 12px 25px;
  font-size: 16px;
  color: #FFF;
  transition: 0.3s ease-in-out;
  font-weight: 600;
  background: #84b582;
  border-radius: 8px;
  border-bottom: solid 5px #6d986c;
}
.practice__link:hover {
  color: #FFF;
  border-bottom: solid 2px #6d986c;
  transform: translateY(3px);
}
.video{
  padding: 30.25% 0 0 0;
  position: relative;
  width: 60%;
  margin: 80px auto 40px;
}
#map{
  padding-top: 250px;
  margin-top: -250px;
}


/* MARQUEE */
.marqueeRightLeft p {
  display: inline-block;
  border-bottom: 0;
}
.marqueeRightLeft a {
  margin-right: 5em;
}
.marqueeRightLeft {
  max-width: 100%;
  padding: 0.5em 0;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  text-align: left;
  border-top: 1px solid #6c5441;
  border-bottom: 1px solid #6c5441;
  color:#6c5441;
  font-weight: bold;
}
.marqueeRightLeft p:after {
  content: "";
  white-space: nowrap;
}
.marqueeRightLeft p {
  margin: 0;
  padding-left: 100%;
  display: inline-block;
  white-space: nowrap;
    -webkit-animation-name:marqueeRL;
    -webkit-animation-timing-function:linear;
    -webkit-animation-duration:20s;
    -webkit-animation-iteration-count:infinite;
    -moz-animation-name:marqueeRL;
    -moz-animation-timing-function:linear;
    -moz-animation-duration:20s;
    -moz-animation-iteration-count:infinite;
    -ms-animation-name:marqueeRL;
    -ms-animation-timing-function:linear;
    -ms-animation-duration:20s;
    -ms-animation-iteration-count:infinite;
    -o-animation-name:marqueeRL;
    -o-animation-timing-function:linear;
    -o-animation-duration:20s;
    -o-animation-iteration-count:infinite;
    animation-name:marqueeRL;
    animation-timing-function:linear;
    animation-duration:20s;
    animation-iteration-count:infinite;
}

@-webkit-keyframes marqueeRL {
  from {-webkit-transform:translate(0);} to {-webkit-transform:translate(-100%);}
}
@-moz-keyframes marqueeRL {
  from {-moz-transform:translate(0);} to {-moz-transform:translate(-100%);}
}
@-ms-keyframes marqueeRL {
  from {-ms-transform:translate(0);} to {-ms-transform:translate(-100%);}
}
@-o-keyframes marqueeRL {
  from {-o-transform:translate(0);} to {-o-transform:translate(-100%);}
}
@keyframes marqueeRL {
  from {transform:translate(0);} to {transform:translate(-100%);}
}


/* メインメニュー PC用
------------------------------------------------------------*/
@media only screen and (min-width: 1025px){
  nav#mainNav{
  clear:both;
  position:relative;
  z-index:200;
  }

  .panel ul{
  }

  .panel ul li{
  float: left;
  position: relative;
  width: 160px;
  height:50px;
  line-height:50px;
  letter-spacing: -1px;
  }

  .panel ul li a{
  display: block;
  text-align: center;
  color:#333;
  }

  nav div.panel{
  display:block !important;
  float:left;
  }

  a#menu{display:none;}

  /* 親メニュー */
  .panel ul li.current-menu-item a, .panel ul li a:hover, .panel ul li a:active, .panel ul li.current-menu-parent a{
  color: #76B77D;
  }

  .panel ul ul{
    width: 160px;
    margin-top: 0.75em;
    margin-left: 0.5em;
  }

  .panel ul li ul{display: none;}

  .panel ul li li{
  float: none;
  height:40px;
  line-height:40px;
  width:160px;
  padding:0;
  }

  .panel ul li:hover ul{
  display: block;
  position: absolute;
  top:40px;
  left:-7px;
  z-index:500;
  }

  .panel ul li li a{
  width:100%;
  height:40px;
  padding:0;
  line-height:40px;
  font-size:85%;
  color: #222;
  text-align: center;
  background: #f5f2f0;
  border-radius: 0;
  }

  .panel ul li li a span{padding:0 10px;}

  .panel ul li li a:hover,.panel ul li li.current-menu-item a{color:#222;}

  .panel ul li:hover ul li{
  margin:0;
  background: #2d2c2d;
  border-bottom:1px dotted #4f4d4d;
  }

  .panel ul li:hover ul li:last-child{
  border:0;
  border-radius:0 0 6px 6px;
  }


div.mask_l {
	position: absolute;
	width: 640px;
	height: 100%;
	top: 0;
	right: 0;
}
div.mask_s {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 330px;
}
div.map {
position: relative;
}
}


/* メインメニュー iPadサイズ以下から
------------------------------------------------------------*/
@media only screen and (max-width:1024px){
  nav#mainNav{
  clear:both;
  width:100%;
  margin:0 auto;
  padding:10px 0;
  background:#76b77d;
  }

  nav#mainNav .inner{width:95%;}

  nav#mainNav a.menu{
  width:100%;
  display:block;
  height:40px;
  line-height:40px;
  font-weight: bold;
  text-align:left;
  color:#fff;
  background: #76b77d;
  border:1px solid #fff;
  }

  nav#mainNav a#menu span{padding-left:2.5em;}

  nav#mainNav a.menuOpen{
  border-bottom:0;
  color:#fff;
  background: #76b77d;
  }

  nav#mainNav a#menu:hover{cursor:pointer;}

  nav .panel{
  display: none;
  width:100%;
  position: relative;
  right: 0;
  top:0;
  z-index: 1;
  border:1px solid #726749;
  }

  .panel ul{margin:0;padding:0;}

  .panel ul li{
  float: none;
  clear:both;
  width:100%;
  height:auto;
  line-height:1.2;
  }

  .panel ul li a,.panel ul li.current-menu-item li a{
  display: block;
  width:100%;
  padding:1em 0;
  text-align:left;
  color:#b6a68a;
  background:#fff;
  }

 .panel ul li a span{padding-left:1em;}

  .panel ul li.current-menu-item a,.panel ul li a:hover,.panel ul li.current-menu-item a,.panel ul li a:active, .panel ul li li.current-menu-item a, .panel ul li.current-menu-item li a:hover, .panel ul li.current-menu-item li a:active{
  color:#000;
  background:#ddffcc;
  }

  .panel ul li li{
  float:left;
  border:0;
  }

  .panel ul li li a, .panel ul li.current-menu-item li a, .panel ul li li.current-menu-item a{background:#2d2c2d url(images/sub1.png) no-repeat 20px 50%;}

  .panel ul li li a:hover, .panel ul li.current-menu-item li a:hover{background:#181616 url(images/sub1.png) no-repeat 20px 50%;}

  .panel ul li li:last-child a{background:#2d2c2d url(images/subLast.png) no-repeat 20px 50%;}
  .panel ul li li:last-child a:hover,.panel ul li.current-menu-item li:last-child a:hover{background:#181616 url(images/subLast.png) no-repeat 20px 50%;}

  .panel ul li li a span{padding-left:35px;}

  nav div.panel{float:none;}
  #header {border-bottom: none;}
}


/* 959px以下から 1カラム表示
------------------------------------------------------------*/
@media only screen and (max-width: 959px){
  #wrapper, #header, .inner{width:100%;}

  #header h1, #header h2{padding:10px;}
  #headerInfo{padding-right:10px;}

  .panel ul, .thumbWrap{margin:0 auto;}
  .panel ul ul{padding:0;}

  nav div.panel{float:none;}

  #mainImg img{width:98%;height:auto;}

  #content, #sidebar{
  width: 95%;
  clear:both;
  float:none;
  margin:0 auto;
  padding: 10px 0;
  }

  #banners{width:100%;margin:0 auto;text-align:center;}
  #banners p{width:30%; float:left;margin:0 1% 0 2%;}
  #banners p img{width:100%;height:auto;}

  section.widget_search{text-align:center;}
  #contactBanner{margin:0 auto;}

  #footer{margin:0;border:0;text-align:center;}

  #footerLogo, #footer ul{
  float:none;
  width:auto;
  padding-bottom:20px;
  text-align:center;
  }

  #footer ul{
  padding-top:20px;
  border-top:1px solid #ccc;
  }

  #footer ul ul{padding-top:0;border:0;}

  /* 調整 */
  img {
    max-width: 100%;
  }

  #header {
    padding: 10px;
    box-sizing:border-box;
  }

  #header h1,#header h2,.contactInfo {
    margin-bottom: 10px;
  }

  #header h1 {
    text-align: center;
    padding: 0;
  }
  .contactInfo {
    float: none;
  }

  #content {
    background: none;
  }

  ul.c_banner li{
    float: none;
    margin-bottom: 20px;
  }

  ul.c_banner li:first-child {
    margin-right: 0;
  }

  ul.c_banner li img,#sidebar img {
    display: block;
    margin: 0 auto;
  }


/*追加分*/
div.flex_box div.header_logo, div.flex_box div.header_info, div.flex_box div.exthcal, div.flex_box div.exthcal:nth-child(2), div.flex_box div, div.flex_box div.footer_logo, #wpsbc_widget-2, .post table, div.flex_box div.four, div.flex_box div.six, div.flex_box div.four_another, div.flex_box div.six_another, div.flex_box div.four_red, div.flex_box div.six_red, div.flex_box div.three, ul.flex_box li {width:100%;}
.page_top {display: none;}
.fixed_nav {bottom: 0; right: 0; top: initial;}
div.flex_box div.posi_rel {margin-bottom: 10px;}
.detail_link {bottom: 26px; right: 0px; font-size: 11px;}
a.syosai {width: 185px;}
.button_blue {height: 23px; line-height: 20px;}
.bg_gray, .bg_white {padding: 5px 0;}
section {margin: 10px auto;}
.wpsbc-container, .wpsbc-calendars {float: none;}
.footer_address {margin-left: initial;}
div.flex_box div.footer_detail {width: 80%; margin: 0 auto;}
span.footer_time, .footer_guide {margin: 5px auto;}
div.footer_detail dt {width: 100px;}
.wpsbc-widget .wpsbc-calendar, .wpsbc-widget .wpsbc-calendar:first-child {margin-right: 1px;}
#footer ul li {text-align: center; display: block;}
#footer ul {margin: 20px auto 0px;}
div.flex_box div.header_info {border-left: none; text-align: center;}
h2.sub_title, div.deco_title p, div.red_title h3, div.deco_title h3.brown {font-size: 1.5em;}
.post table td, div.flex_box div.three {text-align: center;}
div.flex_box div.four_another {margin: 1em 0 0;}
div.flex_box div.six_another {margin: 0 0 1.8em}
input[type="email"]{width: 100%;}
.check {margin-top: 20px;}
p.faq {text-align: left;}
.medical ul {text-align: center;}
.fixed_nav img {border: 2px solid #fff; border-radius: 5px;}
ul.flex_box li {padding: initial;}

.anime01 .posi_rel:nth-of-type(1) img,
.anime03 .posi_rel:nth-of-type(2) img{
  height: 180px;
}
.anime03 .posi_rel:nth-of-type(2) img{
  width: 100%;
}
.anime01 .posi_rel:nth-of-type(2) img,
.anime03 .posi_rel:nth-of-type(1) img{
  height: 180px;
}
.anime02 .posi_rel:nth-of-type(1) img,
.anime02 .posi_rel:nth-of-type(2) img,
.anime02 .posi_rel:nth-of-type(3) img{
  height: 180px;
}
.flexbox-btn{
  flex-direction: column;
  gap: 15px;
}
p.deco_box {
  margin: 2em 0 4em;
}
.video{
  padding: 100% 0 0 0;
  position: relative;
  width: 100%;
  margin: 80px auto 40px;
}
.video iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  text-align: left;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 62%;
}
}


/* 幅648px以下から  トップページの３画像調節
------------------------------------------------------------*/
@media only screen and (max-width: 648px){
  .thumbWrap{width:100%;margin:0 auto;text-align:center;}
  .thumbWrap ul.thumb li{width:30%; float:left;margin:0 1% 0 2%;}
  .thumbWrap img{width:100%;height:auto;}

div.wpsbc-calendar {float: none;}
.wpsbc-widget .wpsbc-calendar, .wpsbc-widget .wpsbc-calendar:first-child {margin: 0 auto 10px;}
.post p.ex_menu {line-height: 25px;}

}


/* 幅644px以下から ヘッダー等微調節
------------------------------------------------------------*/
@media only screen and (max-width: 644px){
  #header{text-align:center;}
  #header h2,#footerLogo,#headerInfo{float:none;padding:0;}
  #headerInfo{width:250px;margin:0 auto;}
  img.alignright, img.alignleft{display: block; margin:5px auto;}
  .alignright,.alignleft{float:none;}
  #footer ul{text-align:left;padding:15px 0 0;}
  #footer ul ul{padding:0;}
}
