﻿@charset "UTF-8";

#header {
  padding: 25px 0 15px;
}

.h-inner {
  width: 100%;
	display: block;
}

.h-logo {
  width: 250px;
  padding-left: 10px;
}

.h-contents {
  display: none;
}

.h-time {
  display: block;
}

.h-time li {
  justify-content: center;
}

.h-time li:first-child {
  margin-right: 0px;
}

.main-slider li {
  height: 350px;
}

.slide01 {
  background: url(../img/topsp1.jpg) no-repeat center/cover;
}
/*
.slide02 {
  background: url(../images/slide02_sp.jpg) no-repeat center/cover;
}

.slide03 {
  background: url(../images/slide03_sp.jpg) no-repeat center/cover;
}

.slide04 {
  background: url(../images/slide04_sp.jpg) no-repeat center/cover;
}
    */
.sec00-img {
  width: 90%;
}

.sec01 {
  padding: 30px 0 50px;
}

.sec01-ttl {
  font-size: 23px;
  line-height: 1.8;
  margin-bottom: 30px;
}

.sec01-ttl .border {
  padding-bottom: 5px;
}

.sec01-txt {
  text-align: left;
  margin-bottom: 30px;
}

.sec02 {
  padding: 50px 0;
}

.sec02-box01 {
  padding: 30px 20px;
  margin-bottom: 100px;
}

.sec02-box01::before {
  width: 80%;
  bottom: -80px;
}

.sec02-check li {
  font-size: 16px;
  padding-left: 25px;
}

.sec02-check li::before {
  top: 8px;
}

.sec02-box02 {
  display: block;
  margin-bottom: 50px;
}

.sec02-box02 .l-img {
  width: 100%;
  margin-left: 0;
  margin-bottom: 5px;
}
.sec02-box03{
  padding-top: 80px;
}
.sec02-h401 {
  font-size: 22px;
  padding-bottom: 10px;
  margin-bottom: 10px;
}

.sec02-txt {
  margin-bottom: 30px;
}

.sec02-h402 {
  font-size: 22px;
  margin-bottom: 10px;
}

.sec02-h402::before {
  width: 50px;
  height: 34px;
}

.sec02-h402 span::before {
  content: none;
}

.sec02-h402 span::after {
  content: none;
}

.sec02-good li {
  font-size: 16px;
  padding-left: 30px;
}

.sec02-good li::before {
  top: 8px;
}

.sec03 {
  padding: 40px 0;
}

.sec03-ttl {
  margin-bottom: 10px;
}

.sec03-ttl .small {
  font-size: 23px;
  margin-bottom: 10px;
}

.sec03-ttl .large {
  font-size: 35px;
}

.sec03-txt {
  font-size: 18px;
  text-align: left;
  margin-bottom: 20px;
}

.sec04 {
  padding: 30px 0 40px;
  margin-bottom: 40px;
}

.sec04-box {
  margin-bottom: 35px;
}

.sec04-h4 {
  font-size: 20px;
  padding: 5px 0 8px;
  margin-bottom: 10px;
}

.sec04-img {
  display: block;
  width: 100%;
}

.sec04-img li {
  width: 100%;
  height: 200px;
  margin-bottom: 20px;
}

.sec04-img li:last-child {
  margin-bottom: 0;
}

.sec04-img li .img {
  display: none;
}

.sec04-img li .sec04-cont .ttl {
  width: 100%;
  text-align: center;
  font-size: 20px;
  top: 10px;
}

.sec04-img li .sec04-cont .ttl::before {
  bottom: -10px;
}

.sec04-img li .sec04-cont .txt {
  width: 100%;
  padding: 0 10px;
  font-size: 14px;
  opacity: 1;

  top: 65px;
}

.list01 {
  background: url(../img/sp1.jpg) no-repeat center/cover;
}

.list02 {
  background: url(../img/sp2.jpg) no-repeat center/cover;
}

.list03 {
  background: url(../img/sp3.jpg) no-repeat center/cover;
}

.list04 {
  background: url(../img/sp4.jpg) no-repeat center/cover;
}

.sec04-btn {
  display: block;
  margin-top: 10px;
}

.sec04-btn .txt {
  text-align: center;
  margin-bottom: 15px;
}

.sec04-btn .btn {
  margin-left: 0;
  margin-bottom: 10px;
  text-align: center;
}

.sec04-box02 {
  display: block;
  padding: 20px 20px 30px;
}

.sec04-box02 .l-img {
  width: 100%;
  margin-right: 0;
  margin-bottom: 10px;
}

.sec04-h402 {
  font-size: 23px;
  padding-bottom: 10px;
  margin-bottom: 10px;
}

.sec04-txt {
  margin-bottom: 10px;
}

.sec05 {
  margin: 0 auto 40px !important;
}

.sec05-boxL,
.sec05-boxR {
  display: block;
  margin-bottom: 30px;
}

.sec05-boxL .l-img,
.sec05-boxR .l-img {
  width: 100%;
  margin: 0 0 5px;
}

.sec05-h4 {
  font-size: 18px;
  padding: 10px 0 10px 45px;
  margin-bottom: 10px;
}

.sec05-h4 .num {
  width: 36px;
  height: 37px;
  font-size: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.sec06 {
  margin: 0 auto 50px !important;
}

.sec06-post {
  display: block;
  margin-bottom: 30px;
}

.sec06-post li {
  width: 100%;
}

.sec06-post li + li {
  margin-left: 0;
  margin-top: 25px;
}

.sec06-post li .img img {
  width: 100%;
}

.sec06-post li .ttl {
  line-height: 1;
}

.sec07 {
  padding: 40px 0 10px;
}

.sec07-inner {
  display: block;
}

.sec07-box {
  width: 100%;
}

.sec07-ttl02 {
  font-size: 22px;
  padding: 0 0 5px 30px;
  margin-bottom: 15px;
}

.sec07-list {
  margin-bottom: 40px;
}

.sec07-list li {
  display: block;
}

.sec07-list li + li {
  margin-top: 20px;
}

.sec07-list li .l-img {
  width: 100%;
  margin-right: 0;
  margin-bottom: 10px;
}

.sec07-list li .l-desc time {
  font-size: 14px;
  line-height: 1;
  margin-bottom: 5px;
}

.sec07-list li .l-desc a {
  font-size: 17px;
  margin-bottom: 0;
  line-height: 1.5;
}

.sec08 {
  padding: 40px 0 50px;
}

.sec08-ttl {
  margin-bottom: 20px;
}

.sec08-list {
  flex-wrap: wrap;
  margin-bottom: 30px;
}

.sec08-list li {
  width: 48%;
  margin-bottom: 10px;
}

.sec09 {
  padding: 50px 0;
}

.sec09-list {
  display: block;
}

.sec09-list li {
  width: 100%;
  margin: 0 auto 20px;
}

.sec09-list li iframe {
  height: 350px !important;
  width: 100%;
}

.sec02-h402 {
    font-size: 22px;
}

.sec10-h402 span::before {
  content: none;
}

.sec10-h402 span::after {
  content: none;
}

.top-map {
  height: 250px;
}

.top-map iframe {
  height: 250px;
}

.top-btn a {
  min-width: 200px;
  font-size: 16px;
  padding: 7px 10px;
}

.top-btn a::before {
  right: 5px;
}

.t-contener {
  padding-left: 5%;
  padding-right: 5%;
}

.top-ttl {
  margin-bottom: 30px;
}

.top-ttl .eng {
  font-size: 16px;
  margin-bottom: 0;
  line-height: 1;
}

.top-ttl .jp {
  font-size: 23px;
  padding-bottom: 3px;
  line-height: 1.5;
}

.pagetop {
  bottom: 110px;
  right: 10px;
}

.pagetop a {
  width: 50px;
}

.fixed-menu .pc {
  display: none;
}

.fixed-menu .sp {
  display: flex;
  background: #317925;
}

.fixed-menu .sp li {
  width: 18%;
  color: #fff;
  text-align: center;
  border-right: 1px solid #fff;
  padding: 10px 0;
}

.fixed-menu .sp li a {
  font-size: 14px;
  font-family: "FOT-筑紫明朝 Pr6N RB";
}

.fixed-menu .sp .right {
  width: 46%;
  border-right: none;
}

.fixed-menu .sp .right i {
  margin-left: 10px;
}

.sp-app {
  display: block;
  width: 50px;
  position: fixed;
  right: 10px;
  bottom: 55px;
}

#footer {
  padding: 40px 0 48px;
  margin-top: 50px;
}

.f-logo {
  width: 250px;
}

.f-bnr {
  display: block;
  width: 100%;
  padding: 0 5%;
}

.f-bnr li {
  width: 100%;
  text-align: center;
}

.f-bnr li + li {
  margin-top: 20px;
}

.f-contener {
  width: 100%;
  padding-left: 5%;
  padding-right: 5%;
  display: block;
}

.f-contents {
  widows: 100%;
  margin-bottom: 20px;
}

.f-table {
  width: 100%;
}

.f-table table {
  margin-bottom: 10px;
}

.f-table table th {
  font-size: 10px;
  padding: 5px 0;
}

.f-table table th:first-child {
  width: 100px;
}

.f-table table th:last-child {
  border-right: none;
}

.f-table table td {
  padding: 5px 0;
}

.f-table table td:first-child {
  font-size: 12px;
  width: 100px;
}

.f-table .open {
  background: url(../images/share/open.png) no-repeat 50% 50%/10px;
}

.f-table .close {
  background: url(../images/share/close.png) no-repeat 50% 50%/10px;
}

.f-table .sankaku {
  background: url(../images/share/sankaku.png) no-repeat 50% 50%/10px;
}

.f-table-list {
  display: block;
}

.sitemap {
  padding: 0 5%;
}

.sitemap ul {
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 0;
}

.sitemap ul li {
  width: 48%;
  margin-bottom: 8px;
}

.sitemap ul li + li {
  margin-left: 0;
  padding-left: 0;
  border-left: none;
}

/*------------
下層レイアウト
--------------*/
.breadcrumb {
  padding: 0 5%;
  margin: 10px 0 0;
}

#pagettl {
  height: 250px;
}

#pagettl h2 {
  font-size: 28px;
}

/*------------
下層パーツ
--------------*/
.u-h3 {
  font-size: 23px;
  margin-bottom: 30px;
  line-height: 2;
}

.u-h4, .postdata h4 {
  font-size: 20px;
  margin-bottom: 15px;
}

.u-h5, .postdata h5 {
  font-size: 18px;
  margin-bottom: 10px;
}

.u-h6 {
  font-size: 16px;
  margin-bottom: 10px;
}

.short + .short {
  margin: 20x 0 0;
}

.tall {
  padding: 30px 0;
}

.tall-inner {
  padding-left: 5%;
  padding-right: 5%;
}

.col2 > li, .col3 > li, .col5 > li {
  margin: 0 0 25px;
  width: 100%;
}

.col2-col2, .col3-col2, .col4-col2 {
  justify-content: space-between;
}

.col2-col2 > li, .col3-col2 > li, .col4-col2 > li {
  margin: 0 0 4%;
  width: 48%;
}

.l-imgR, .l-imgL {
  display: block;
}

.l-imgR .l-img, .l-imgL .l-img {
  margin: 0 0 15px;
  text-align: center;
  width: 100%;
}

.l-imgR .w-20, .l-imgL .w-20 {
  width: 100%;
}

.l-imgR .l-img {
  margin: 0 0 15px;
}

.u-table {
  border: none;
}

.u-table tr th {
  border: none;
  display: block;
  padding: 10px;
  text-align: left;
}

.u-table tr td {
  border: none;
  display: block;
  padding: 10px;
  text-align: left;
}

.first-menu {
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0;
}

.first-menu li {
  width: 48%;
  margin: 0 0 10px;
  text-align: center;
}

.first-menu li a {
  padding: 0 0 5px;
  font-size: 16px;
  border-bottom: 1px dotted #5f381a;
}

.col6 {
  flex-wrap: wrap;
}

.col6 li {
  width: 33%;
  text-align: center;
}

.img-col3 {
  display: block;
}

.img-col3 .l-img {
  margin: 0 auto;
  text-align: center;
  margin-bottom: 10px;
}

.img-list-col2,
.img-list-col3 {
  display: block;
}

.img-list-col2 li,
.img-list-col3 li {
  width: 100%;
}
.list_arrow_r li a{
  display: block;
}
.list-col2 {
  -webkit-column-count: 1;
  column-count: 1;
}

.bg-area {
  padding: 15px 10px;
}

.l-fasting-btn {
  display: block;
  text-align: center;
}

.l-fasting-btn div + div {
  margin-top: 15px;
}

/*------------
お問い合わせ
--------------*/
.contact-form table {
  margin: 0 0 30px;
}

.contact-form table tr {
  border-bottom: 1px dashed #CCC;
}

.contact-form table th, .contact-form table td {
  display: block;
}

.contact-form table th {
  padding: 15px 0 10px;
}

.contact-form table td {
  padding: 0 0 15px;
}

.contact-form .submit-btn [type="submit"] {
  padding: 15px;
  width: 250px;
}

.contact-form .submit-btn [type="submit"].back-btn {
  margin-right: 25px;
}

.contact-form .mwform-age-field input {
  width: 100px;
}

.doctor-box {
  display: block;
}

.doctor-box .l-img {
  width: 100%;
  margin-right: 0;
}

.slide-btn {
  font-size: 18px;
  padding: 8px 30px 10px;
}

.slide-btn::before {
  right: 5px;
  top: 33px;
}

.contact-bnr .tel {
  font-size: 30px;
}

.contact-bnr .txt span {
  display: block;
  margin-right: 0;
}

.select-area .select-item {
  width: 100%;
}

/*------------
Commmon
--------------*/
.pc-only {
  display: none;
}

.sp-only {
  display: block;
}

.sp-tac {
  text-align: center !important;
}

.sp-tar {
  text-align: right !important;
}

.sp-tal {
  text-align: left !important;
}

.tar-c {
  text-align: center;
}

.tal-c {
  text-align: center;
}

.tac-l {
  text-align: left;
}

.tac-r {
  text-align: right;
}

.mb30-15 {
  margin-bottom: 15px !important;
}

.mb50-30 {
  margin-bottom: 30px !important;
}

.sp-map {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

.sp-map iframe,
.sp-map object,
.sp-map embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*-------------
zero menu
-------------*/
/* PC用のナビを非表示 */
.g-navi {
  display: none;
}

/* PC用のナビを非表示 */
.sp-navi {
  display: block;
}

/* ナビ本体 */
.sp-navi {
  background: url(../images/sec04-bg.jpg) no-repeat center/cover;
  width: calc(100% - 60px);
  height: 100%;
  -webkit-text-size-adjust: 100%;
  position: fixed;
  top: 0;
  right: 0;
  transition: .5s;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  z-index: 150;
}

.sp-navi.is-open {
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.4);
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

/* ハンバーガー */
.humberger {
  background-color: #317925;
  border-radius: 5px 0 0 5px;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.4);
  cursor: pointer;
  display: block;
  position: absolute;
  top: 20px;
  left: -50px;
  width: 50px;
  height: 50px;
  transition: .4s;
  z-index: 150;
}

.humberger span {
  background: #fff;
  position: absolute;
  left: 50%;
  width: 25px;
  height: 2px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  transition: .4s;
}

.humberger span:nth-of-type(1) {
  top: 15px;
}

.humberger span:nth-of-type(2) {
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.humberger span:nth-of-type(3) {
  bottom: 15px;
}

.is-open .humberger span:nth-of-type(1) {
  -webkit-transform: translate(-50%, 9px) rotate(-45deg);
  transform: translate(-50%, 9px) rotate(-45deg);
}

.is-open .humberger span:nth-of-type(2) {
  opacity: 0;
}

.is-open .humberger span:nth-of-type(3) {
  -webkit-transform: translate(-50%, -9px) rotate(45deg);
  transform: translate(-50%, -9px) rotate(45deg);
}

/* 中身 */
.sp-navi-inner {
  overflow: scroll;
  padding: 30px;
  height: 100%;
}

.sp-navi-main {
  font-family: "FOT-筑紫明朝 Pr6N RB";
  margin: 0 0 30px;
}

.sp-navi-main > li {
  border-bottom: 1px solid #317925;
}

.sp-navi-main > li > a {
  background: url(../images/share/arrow_w.png) no-repeat center right/contain;
  background-size: 5px 9px;
  color: #317925;
  display: block;
  font-size: 17px;
  padding: 15px 0;
}

.sp_child li {
  font-size: 12px;
  margin: -10px 0 15px 5px;
  padding-left: 10px;
  position: relative;
}

.sp_child li::before {
  content: "";
  background-color: #317925;
  width: 5px;
  height: 5px;
  display: block;
  border-radius: 50%;
  position: absolute;
  top: 9px;
  left: 0;
}

.sp_child li a {
  color: #317925;
}

.sp-line {
  margin-bottom: 15px;
}

.sp-time {
  margin-bottom: 5px;
}

.sp-time li:first-child {
  margin-bottom: 10px;
}

.sp-time li .ttl {
  color: #fff;
  font-size: 13px;
  line-height: 1;
  background: url(../images/share/btn-bg.jpg) no-repeat center/cover;
  display: inline-block;
  padding: 8px 10px;
  margin-right: 10px;
}

.sp-time li .txt {
  color: #333;
  font-family: "FOT-筑紫明朝 Pr6N RB";
  font-size: 13px;
  line-height: 1.4;
}

.sp-txt {
  font-size: 12px;
}

/*------------
投稿パーツ
--------------*/
.list-post-type01 li {
  overflow: hidden;
}

.list-post-type01 li + li {
  margin-top: 30px;
}

.list-post-type01 .list-ttl {
  margin: 0 0 10px;
}

.list-post-type01 .list-img {
  float: none;
  margin: 0 0 15px;
  width: 100%;
}

.list-post-type01 .list-data {
  margin: 0 0 10px;
}

.list-post-type01 .list-txt {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

.list-post-type01 .post-img {
  float: none;
  text-align: center;
  margin: 0 auto 10px;
}

.list-post-type01 .post-btn {
  text-align: center;
}

/*詳細ページ*/
.l-post-single .post-data {
  margin: 0 0 10px;
}

.l-post-single .l-ttl {
  font-size: 20px;
  margin: 0 0 20px;
}

.index-list{
  	display:block;
}