@charset "UTF-8";
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, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

.pcOFF {
  display: none !important;
}

body {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  line-height: 1.6em;
  text-align: justify;
  text-justify: inter-ideograph;
}

a {
  color: #339;
}
a:hover {
  color: #933;
}

/*--------------------------
基本
---------------------------- */
/* width */
.w10 {
  width: 10%;
}

.w20 {
  width: 20%;
}

.w30 {
  width: 30%;
}

.w40 {
  width: 40%;
}

.w50 {
  width: 50%;
}

.w60 {
  width: 60%;
}

.w70 {
  width: 70%;
}

.w80 {
  width: 80%;
}

.w90 {
  width: 90%;
}

.w100 {
  width: 100%;
}

/* flex-basis */
.fb10 {
  flex-basis: 10%;
}

.fb20 {
  flex-basis: 20%;
}

.fb30 {
  flex-basis: 30%;
}

.fb40 {
  flex-basis: 40%;
}

.fb45 {
  flex-basis: 45%;
}

.fb49 {
  flex-basis: 49%;
}

.fb50 {
  flex-basis: 50%;
}

.fb60 {
  flex-basis: 60%;
}

.fb70 {
  flex-basis: 70%;
}

.fb80 {
  flex-basis: 80%;
}

.fb90 {
  flex-basis: 90%;
}

.fb100 {
  flex-basis: 100%;
}

.hr01 {
  border: 0;
  border-bottom: dashed 1px #000;
  margin: 50px 0;
}

/* box01 */
.box01 {
  margin-bottom: 40px;
}

/* box02 */
.box02 {
  margin-bottom: 40px;
  border: solid 1px #ccc;
  padding: 20px;
}

/* layout01 */
.layout01 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.layout01__pic {
  text-align: center;
}
.layout01__pic img {
  width: 70%;
  height: auto;
}

.tit01 {
  font-weight: bold;
  background: url(../img/tit01_icon.png) no-repeat left center;
  border-bottom: solid 3px #8D8DB3;
  padding: 18px 0 18px 30px;
  margin-bottom: 45px;
  font-size: 22px;
}

.tit02 {
  text-align: center;
  margin-bottom: 80px;
  font-size: 35px;
  color: #000;
}
.tit02__sub {
  margin-top: 20px;
  display: block;
  font-size: 18px;
}

.tit03 {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 20px;
}

.tit04 {
  font-size: 20px;
  font-weight: bold;
  background: #F5F5FB;
  border-top: solid 3px #8D8DB3;
  border-bottom: 2px dotted #DEDEDE;
  padding: 10px;
  margin-bottom: 30px;
}

.tit_spring,
.tit_summer,
.tit_autumn,
.tit_winter {
  font-size: 16px;
  font-weight: bold;
  padding: 10px;
  margin-bottom: 30px;
}

.tit_spring {
  background: #ffe5e8;
}

.tit_summer {
  background: #e0fad7;
}

.tit_autumn {
  background: #ffdba8;
}

.tit_winter {
  background: #cfe3fe;
}

.txt01 {
  line-height: 2;
  margin-bottom: 15px;
}
.txt01:last-child {
  margin-bottom: 0;
}

ul.lst01 {
  margin-bottom: 30px;
  font-size: 16px;
}
ul.lst01 li {
  margin-left: 20px;
  margin-bottom: 5px;
  list-style: disc;
}

ol.lst01 {
  margin-bottom: 30px;
  font-size: 16px;
}
ol.lst01 li {
  margin-left: 25px;
  margin-bottom: 5px;
  list-style: decimal;
}

ol.lst01.donationLst li {
  margin-bottom: 30px;
}
ol.lst01.donationLst li .donationLst__tit {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
}
ol.lst01.donationLst li ol li {
  list-style: decimal-leading-zero !important;
  margin-bottom: 10px !important;
}
ol.lst01.donationLst li p {
  margin-bottom: 15px;
}

.otherLnk01 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.otherLnk01__item {
  flex-basis: 24.5%;
}
.otherLnk01__item a {
  color: #000;
  text-decoration: none;
  text-align: center;
  display: block;
  border: dashed 1px #ccc;
  padding: 15px 10px;
  box-sizing: border-box;
  border-radius: 3px;
  background: #f5f5f5;
}
.otherLnk01__item a:hover {
  background: #eee;
}

.btn01 {
  margin: 0 auto 30px;
}
.btn01 a {
  display: block;
  background: #546715;
  color: #fff;
  font-weight: bold;
  padding: 10px 0;
  text-align: center;
  text-decoration: none;
  border-radius: 5px;
}
.btn01 a:hover {
  background: #000;
}

.pdfLnk {
  margin: 0 auto 30px;
}
.pdfLnk a {
  background: url(../img/PDF_32.png) no-repeat left center;
  background-size: auto 100%;
  padding-left: 35px;
  color: #00f;
}

.downloadBtn {
  color: #fff;
  text-decoration: none;
  display: block;
  background: #000;
  padding: 4px 10px;
  text-align: center;
  border-radius: 4px;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#114e79+0,003c66+100 */
  background: #114e79;
  /* Old browsers */
  background: -moz-linear-gradient(top, #114e79 0%, #003c66 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #114e79 0%, #003c66 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #114e79 0%, #003c66 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#114e79', endColorstr='#003c66',GradientType=0 );
  /* IE6-9 */
}
.downloadBtn:hover {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#003c66+0,114e79+100 */
  background: #003c66;
  /* Old browsers */
  background: -moz-linear-gradient(top, #003c66 0%, #114e79 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #003c66 0%, #114e79 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #003c66 0%, #114e79 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#003c66', endColorstr='#114e79',GradientType=0 );
  /* IE6-9 */
  color: #ff0;
}

.tbl01 {
  margin: 0 auto 30px;
}
.tbl01 caption {
  font-weight: bold;
  background: #e8f3c5;
  padding: 7px;
  margin-bottom: 10px;
}
.tbl01 th {
  padding: 15px 10px;
  border: solid 1px #ccc;
  width: 30%;
  background: #eee;
}
.tbl01 td {
  padding: 15px 10px;
  border: solid 1px #ccc;
  width: 70%;
}

.tbl02 {
  margin: 0 auto 30px;
}
.tbl02 caption {
  font-weight: bold;
  background: #e8f3c5;
  padding: 7px;
  margin-bottom: 10px;
}
.tbl02 th {
  padding: 15px 10px;
  border: solid 1px #ccc;
  width: 60%;
  font-size: 14px;
}
.tbl02 td {
  padding: 15px 10px;
  border: solid 1px #ccc;
  width: 40%;
  font-size: 14px;
}

.priceTbl {
  margin: 0 auto 30px;
}
.priceTbl caption {
  font-weight: bold;
  background: #e8f3c5;
  padding: 7px;
  margin-bottom: 10px;
}
.priceTbl th {
  padding: 15px 10px;
  border: solid 1px #ccc;
  width: 30%;
  background: #eee;
  font-size: 14px;
}
.priceTbl td {
  padding: 15px 10px;
  border: solid 1px #ccc;
  width: 70%;
  font-size: 14px;
}
.priceTbl thead tr th:nth-child(1) {
  width: 30%;
}
.priceTbl thead tr th:nth-child(2) {
  width: 30%;
}
.priceTbl thead tr th:nth-child(3) {
  width: 13.33%;
  text-align: center;
}
.priceTbl thead tr th:nth-child(4) {
  width: 13.33%;
  text-align: center;
}
.priceTbl thead tr th:nth-child(5) {
  width: 13.33%;
  text-align: center;
}
.priceTbl tbody tr td:nth-child(1) {
  width: 30%;
}
.priceTbl tbody tr td:nth-child(2) {
  width: 30%;
}
.priceTbl tbody tr td:nth-child(3) {
  width: 13.33%;
  text-align: center;
}
.priceTbl tbody tr td:nth-child(4) {
  width: 13.33%;
  text-align: center;
}
.priceTbl tbody tr td:nth-child(5) {
  width: 13.33%;
  text-align: center;
}

.formTbl {
  width: 90%;
  margin: 0 auto 30px;
}
.formTbl caption {
  font-weight: bold;
  background: #e8f3c5;
  padding: 7px;
  margin-bottom: 10px;
}
.formTbl th {
  padding: 15px 10px;
  border: solid 1px #ccc;
  width: 30%;
  background: #eee;
  font-size: 14px;
}
.formTbl th div {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.formTbl th div .fornTbl__th {
  flex-basis: 75%;
}
.formTbl th div .hissu {
  flex-basis: 25%;
  background: #b34949;
  color: #fff;
  box-sizing: border-box;
  font-size: 12px;
  text-align: center;
  border-radius: 4px;
}
.formTbl th div .nini {
  flex-basis: 25%;
  background: #ccc;
  color: #fff;
  box-sizing: border-box;
  font-size: 12px;
  text-align: center;
  border-radius: 4px;
}
.formTbl td {
  padding: 15px 10px;
  border: solid 1px #ccc;
  width: 70%;
  font-size: 14px;
}
.formTbl input[type=text] {
  width: 100%;
  padding: 10px;
  box-sizing: border-box;
}
.formTbl select {
  width: 100%;
  padding: 10px;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  box-sizing: border-box;
}
.formTbl textarea {
  width: 100%;
  padding: 10px;
  box-sizing: border-box;
}

.formTblBtn {
  width: 90%;
  margin: 0 auto 30px;
}
.formTblBtn .formBtns {
  text-align: center;
}

.contactBox {
  width: 90%;
  border: solid 1px #b53535;
  background: #fff4f4;
  padding: 15px;
  margin: 0 auto 20px;
  box-sizing: border-box;
}
.contactBox__main {
  text-align: center;
  font-weight: bold;
  margin-bottom: 10px;
  font-size: 16px;
}
.contactBox__sub {
  text-align: center;
  font-size: 14px;
}

.map {
  margin-bottom: 25px;
}
.map iframe {
  width: 100%;
  height: 350px;
}

.imgCenter {
  text-align: center;
  margin-bottom: 25px;
}
.imgCenter img {
  width: 80%;
  height: auto;
}

/*--------------------------
.acd-check　（アコーディオン）
---------------------------- */
.acd-check {
  display: none;
}

.acd-label {
  display: block;
  margin-bottom: 1px;
  position: relative;
}

.acd-label:after {
  content: '▼';
  box-sizing: border-box;
  display: block;
  height: 52px;
  padding: 10px 20px;
  position: absolute;
  right: 0;
  top: 0px;
}

.acd-content {
  display: block;
  height: 0;
  opacity: 0;
  padding: 0 10px;
  transition: .1s;
  visibility: hidden;
}

.acd-check:checked + .acd-label:after {
  content: '―';
}

.acd-check:checked + .acd-label + .acd-content {
  height: auto;
  opacity: 1;
  padding: 10px;
  visibility: visible;
}

.accLst {
  width: 100%;
}
.accLst__tit {
  font-size: 16px;
  font-weight: bold;
  background: #eee;
  border: solid 1px #ccc;
  padding: 10px;
  margin-bottom: 2px;
}

/*--------------------------
header
---------------------------- */
.header {
  margin: 0 auto 30px;
  position: relative;
  max-width:1170px;
}

body.home .header {
  max-width:1600px;
}
.header__inner {
  margin: 0 auto;
  z-index: 2;
  width: 1170px;

  position:relative;

}

.header__logo {
	position:absolute;
	top:10px;
	left:0px;
	z-index:10;
}
.header__logo img {
  width: 100%;
  height: auto;
  max-width: 240px;
}

body.home .header__logo {
	position:absolute;
	top:auto;
	left:50px;
	bottom:0;
	z-index:10;
}
body.home .header__logo img {
  width: 100%;
  height: auto;
  max-width: 240px;
}




.header__nav {
  flex-basis: 570px;
  margin-right: 100px;
  box-sizing: border-box;
  display: flex;
  /* justify-content:space-between; */
  /* <<<<< 言語復活時に生かす*/
  justify-content: flex-end;
  /* <<<<< 言語復活時に削除*/
  flex-wrap: wrap;
}
.header__nav__lst {
  width: 370px;
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
}
.header__nav__lst__item {
  flex-basis: 50%;
}
.header__nav__lst__item a {
  color: #fff;
  text-decoration: none;
  display: block;
  text-align: center;
  padding: 8px 0;
  background: rgba(0, 0, 0, 0.5);
}
.header__nav__lst__item a span {
  background: url(../img/marker02.png) no-repeat left center;
  padding-left: 15px;
}
.header__nav__lst__item a:hover {
  background-color: #AF1915;
}
.header__nav__lang {
  display: none;
  /* <<<<<<  言語復活時に削除する */
}

/* ヘッダー言語選択ドロップダウン */
.header .langDropdwn {
  background: rgba(0, 0, 0, 0.5);
  width: 170px;
}
.header .langDropdwn__parent {
  position: relative;
  width: 100%;
}
.header .langDropdwn__parent span {
  display: block;
  padding: 8px 0 8px 10px;
  box-sizing: border-box;
  display: inline-block;
  background: url(../img/marker03.png) no-repeat 95% center;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  width: 100%;
  font-size: 13px;
}
.header .langDropdwn__parent span:hover {
  background-color: #AF1915;
  color: #fff;
}
.header .langDropdwn__child {
  width: 170px;
  display: none;
  position: absolute;
  padding: 0;
  background: #ddd;
}
.header .langDropdwn__child__item {
  width: 100%;
  padding: 5px;
}
.header .langDropdwn__child__item a {
  display: block;
  text-decoration: none;
  font-weight: bold;
  color: #000;
}
.header .langDropdwn__child__item a:hover {
  color: #AF1915;
}

body.home .header .header__inner {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
}

.mainVisual {
  position: static;
  z-index: 1;
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
}
.mainVisual img {
  width: 100%;
  height: auto;
}

/*--------------------------
important
---------------------------- */
.important {
  width: 1170px;
  margin: 0 auto 40px;
  border-radius: 4px;
  padding: 10px;
}
.important__tit {
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 20px;
  color: #791210;
  text-align: center;
}
.important__lst {
  width: 100%;
}
.important__lst__item {
  background: #ccc;
}
.important__lst__item__inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  font-size: 18px;
}
.important__lst__item span {
  display: inline-block;
  flex-basis: 25%;
  max-width:25%;
  background: #791210;
  color: #fff;
  padding: 10px;
  box-sizing: border-box;
  font-size: 16px;
  text-align: center;
  font-weight: bold;
  overflow: hidden;
}
.important__lst__item a {
  display: inline-block;
  flex-basis: 75%;
  max-width:75%;
  color: #000;
  font-weight: bold;
  padding: 10px;
  padding-left: 15px;
  background: #fee;
  box-sizing: border-box;
  font-weight: none;
}
.important__lst__item a:hover {
  color: #00f;
  font-weight: bold;
}
.important .slick-dots {
  margin-bottom: 20px;
}

/*--------------------------
nav
---------------------------- */
.nav__lst {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 1170px;
  margin: 0 auto 30px;
  /*子階層以降共通*/
}
.nav__lst__item {
  position: relative;
  flex: 1;
}
.nav__lst__item a, .nav__lst__item span {
  background: url(../img/nav_border.png) no-repeat left center;
  text-decoration: none;
  color: #000;
  font-size: 18px;
  display: block;
  width: 100%;
  text-align: center;
  padding: 8px 0;
}
.nav__lst__item a:hover, .nav__lst__item span:hover {
  color: #f00;
}
.nav__lst__item:last-child a {
  background-image: url(../img/nav_border.png), url(../img/nav_border.png);
  background-repeat: no-repeat , no-repeat;
  background-position: right center , left center;
}
.nav__lst li ul {
  width: 100%;
  position: absolute;
  z-index: 100;
  border-left: solid 1px #ccc;
  border-right: solid 1px #ccc;
}
.nav__lst li li {
  height: 0;
  overflow: hidden;
  transition: .1s;
}
.nav__lst li ul li:first-child a {
  border-top: 1px solid #ccc;
}
.nav__lst li li a {
  border-bottom: 1px solid #ccc;
  background: none;
  box-sizing: border-box;
  display: block;
  width: 100%;
  padding: 10px 5px;
  font-size: 14px;
  text-align: left;
  background: #fff;
}
.nav__lst li:hover > ul > li {
  overflow: visible;
  height: auto;
}

/*--------------------------
aboutBox
---------------------------- */
.aboutBox {
  padding: 20px 0;
  margin-bottom: 60px;
}
.aboutBox__lst {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 auto 0px;
}
.aboutBox__lst__item {
  flex-basis: 32.33%;
}
.aboutBox__lst__item a {
  text-decoration: none;
  color: #000;
}
.aboutBox__lst__item a:hover .aboutBox__lst__item__pic img {
  opacity: 0.8;
}
.aboutBox__lst__item a:hover .aboutBox__lst__item__tit {
  color: #333;
}
.aboutBox__lst__item a:hover .aboutBox__lst__item__txt {
  color: #333;
}
.aboutBox__lst__item__pic img {
  width: 100%;
  height: auto;
}
.aboutBox__lst__item__tit {
  color: #647911;
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 10px;
}
.aboutBox__lst__item__txt {
  font-size: 16px;
  color: #000;
  line-height: 1.6;
}

body.home .aboutBox {
  background: #eee url(../img/bk03.jpg) repeat;
}
body.home .aboutBox .aboutBox__lst {
  width: 1170px;
}

/*--------------------------
breadcrumb
---------------------------- */
.breadcrumb {
  background: #546715;
  box-shadow: 0px 3px 3px #dedede;
}
.breadcrumb__lst {
  width: 1170px;
  padding: 6px 0;
  margin: 0 auto;
  font-size: 14px;
}
.breadcrumb__lst__item {
  display: inline !important;
  color: #fff;
}
.breadcrumb__lst__item a {
  text-decoration: none;
  color: #fff !important;
}
.breadcrumb__lst__item a:after {
  content: " 》";
  width: auto;
  height: auto;
  margin-left: 4px;
}

/*--------------------------
content
---------------------------- */
.content {
  width: 1000px;
  margin: 0 auto 100px;
}

.mainTit {
  padding: 70px 0;
  background: url(../img/bk03.jpg) repeat;
  margin-bottom: 80px;
  border-bottom: solid 1px #eee;
}
.mainTit__txt {
  width: 1000px;
  display: block;
  margin: 0 auto 10px;
  text-align: center;
  font-size: 35px;
  color: #000;
}

body.home .content {
  width: 1170px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 1170px;
  margin: 0 auto 100px;
}
body.home .content main {
  flex-basis: 870px;
}
body.home .content sub {
  flex-basis: 270px;
}

/*--------------------------
wp-pagenavi
---------------------------- */
.wp-pagenavi {
  text-align: center;
  padding-bottom: 10px;
  margin-bottom: 60px;
}

.wp-pagenavi span,
.wp-pagenavi a {
  margin: 0 3px;
  text-decoration: none;
}

.wp-pagenavi span,
.wp-pagenavi a {
  background: #000;
  padding: 5px 7px;
  border-radius: 3px;
  color: #fff;
}

.wp-pagenavi span.current {
  color: #000;
  border: solid 1px #f00;
  background: #fff;
}

.wp-pagenavi span.pages {
  color: #000;
  border: none;
  background: #fff;
}

/*--------------------------
sub
---------------------------- */
/* sideInfo */
.sideInfo {
  margin-bottom: 15px;
  background: url(../img/bk01.jpg) repeat;
}
.sideInfo__tit {
  color: #000;
  font-weight: bold;
  font-size: 18px;
  background: url(../img/bk02.jpg) repeat;
  padding: 15px 10px;
}
.sideInfo__tit span {
  background: url(../img/marker01.png) no-repeat left center;
  padding: 10px 0px 10px 27px;
}
.sideInfo__inner {
  padding: 20px 15px;
}
.sideInfo__time__main {
  text-align: center;
  margin-bottom: 5px;
  font-size: 36px;
}
.sideInfo__time__sub {
  text-align: center;
  margin-bottom: 5px;
  font-size: 16px;
}
.sideInfo__time__memo {
  font-size: 14px;
  line-height: 1.5;
}
.sideInfo__price__tbl {
  width: 100%;
  margin-bottom: 5px;
}
.sideInfo__price__tbl th {
  background: #ECECEC;
  border: solid 1px #666;
  padding: 8px 3px;
  width: 60%;
  font-size: 16px;
  line-height: 1.5;
}
.sideInfo__price__tbl th span {
  font-size: 14px;
}
.sideInfo__price__tbl td {
  background: #fff;
  border: solid 1px #666;
  padding: 8px 3px;
  width: 40%;
  font-size: 16px;
  text-align: center;
}
.sideInfo__price__memo {
  font-size: 13px;
  margin-bottom: 10px;
}
.sideInfo__price__btn a {
  color: #fff;
  text-decoration: none;
  display: block;
  background: #546715;
  text-align: center;
  padding: 15px 5px;
  font-size: 18px;
  font-weight: bold;
}
.sideInfo__price__btn a:hover {
  background: #000;
}
.sideInfo__banner__item {
  margin-bottom: 10px;
}
.sideInfo__banner__item img {
  vertical-align: bottom;
  width: 100%;
  height: auto;
}

/*--------------------------
pageTop
---------------------------- */
.pageTop {
  width: 1170px;
  margin: 0 auto;
  text-align: right;
}
.pageTop a {
  background: url(../img/pageTop.png) no-repeat;
  display: inline-block;
  width: 140px;
  padding: 35px 0 20px;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
}

/*--------------------------
footerBanner
---------------------------- */
.footerBanner {
  background: #eee url(../img/) repeat;
  padding: 50px 0px;
}
.footerBanner__lst {
  width: 1170px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.footerBanner__lst__item {
  flex-basis: 370px;
}
.footerBanner__lst__item img {
  width: 100%;
  height: auto;
  border: solid 1px #000;
  vertical-align: bottom;
}

/*--------------------------
footer
---------------------------- */
.footer {
  padding-top: 30px;
  background: #546715;
}
.footer .footerNav {
  width: 1170px;
  margin: 0 auto 30px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.footer .footerNav__lst {
  flex-basis: 292px;
}
.footer .footerNav__lst__item {
  margin-bottom: 10px;
}
.footer .footerNav__lst__item.child {
  padding-left: 1em;
}
.footer .footerNav a {
  color: #fff;
  text-decoration: none;
  font-weight: bold;
}
.footer .footerNav a:hover {
  color: #ff0;
  text-decoration: underline;
}
.footer .footerNav a:active {
  color: #f00;
  text-decoration: underline;
}
.footer .footerInfo {
  width: 1170px;
  margin: 0 auto;
  border-top: dashed 1px #fff;
  border-bottom: dashed 1px #fff;
  padding: 10px 0;
  display: flex;
  justyfiy-content: space-between;
  flex-wrap: wrap;
  align-items: center;
  /* 子要素をflexboxにより中央に配置する */
}
.footer .footerInfo__main {
  flex-basis: 270px;
  max-width: 270px;
  box-sizing: border-box;
  text-align: center;
  font-size: 32px;
  border-right: dashed 1px #fff;
  color: #fff;
  line-height: 1.5;
  padding: 10px 0;
}
.footer .footerInfo__main__name{
	line-height:1.4;
	text-align:left;
}
.footer .footerInfo__main__name span{
	font-size:24px;
}
.footer .footerInfo__sub {
  flex-basis: 900px;
  max-width: 900px;
  box-sizing: border-box;
  padding: 10px 0;
  padding-left: 40px;
  color: #fff;
}
.footer .footerInfo__sub__address {
  font-size: 18px;
  margin-bottom: 15px;
}
.footer .footerInfo__sub__contact {
  font-size: 36px;
  letter-spacing: 2px;
}
.footer .footerInfo__sub__contact span {
  font-size: 16px;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}
.footer address {
  width: 1170px;
  margin: 0 auto;
  padding: 20px 0;
  text-align: center;
  color: #fff;
  font-size: 13px;
}

.footerLang {
  width: 1170px;
  height: 40px;
  position: relative;
  margin: 0 auto 30px;
  /* ヘッダー言語選択ドロップダウン */
}
.footerLang .langDropdwn {
  position: absolute;
  right: 0;
  background: #7F8D50;
  width: 170px;
}
.footerLang .langDropdwn__parent {
  position: relative;
  width: 100%;
}
.footerLang .langDropdwn__parent span {
  display: block;
  padding: 8px 0 8px 10px;
  box-sizing: border-box;
  border: solid 1px #fff;
  display: inline-block;
  background: url(../img/marker03.png) no-repeat 95% center;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  width: 100%;
  font-size: 13px;
}
.footerLang .langDropdwn__parent span:hover {
  background-color: #AF1915;
  color: #fff;
}
.footerLang .langDropdwn__child {
  width: 170px;
  display: none;
  position: absolute;
  padding: 0;
  background: #ddd;
}
.footerLang .langDropdwn__child__item {
  width: 100%;
  padding: 5px;
}
.footerLang .langDropdwn__child__item a {
  display: block;
  text-decoration: none;
  font-weight: bold;
  color: #000;
}
.footerLang .langDropdwn__child__item a:hover {
  color: #AF1915;
}

/*--------------------------
eventBox
---------------------------- */
.eventBox {
  margin-bottom: 100px;
}
.eventBox__lst {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.eventBox__lst__item {
  flex-basis: 300px;
  box-sizing: border-box;
  margin-bottom: 30px;
}
.eventBox__lst__item__pic {
  background: #eee;
  padding: 0px;
  margin-bottom: 11px;
  height: 200px;
  box-sizing: border-box;
  overflow: hidden;
  text-align: center;
  position:relative;
}
.eventBox__lst__item__pic img {
  width: 100%;
  height: auto;
  object-fit: cover;
  vertical-align: bottom;
}
.eventBox__lst__item__new{
	position:absolute;
	top:0;
	left:0;
	background:#f00;
	color:#fff;
	padding:2px 10px;
	font-size:12px;
	font-weight:bold;
	display:inline-block;
}
.eventBox__lst__item__date {
  font-size: 14px;
}
.eventBox__lst__item__tit {
  font-size: 18px;
  color: #41500C;
  font-weight: bold;
}
.eventBox__lst__item__txt {
  font-size: 16px;
}
.eventBox__lst__item__sponsor {
  font-size: 14px;
}
.eventBox__lst__item a {
  text-decoration: none;
  color: #000;
}
.eventBox__lst__item a:hover .eventBox__lst__item__pic img {
  opacity: 0.8;
}
.eventBox__lst__item a:hover .eventBox__lst__item__date {
  color: #333;
}
.eventBox__lst__item a:hover .eventBox__lst__item__tit {
  color: #000;
}
.eventBox__lst__item a:hover .eventBox__lst__item__txt {
  color: #333;
}
.eventBox__lst__item a:hover .eventBox__lst__item__sponsor {
  color: #333;
}

body.home .eventBox .eventBox__lst {
  width: 870px;
}
body.home .eventBox .eventBox__lst__item {
  flex-basis: 270px;
}
body.home .eventBox .eventBox__lst__item__pic img {
  width: 270px;
  height: 100%;
}

/*--------------------------
infoBox
---------------------------- */
.infoBox__lst__item {
  margin-bottom: 30px;
}
.infoBox__lst__item__date {
  font-size: 14px;
}
.infoBox__lst__item__tit {
  font-size: 18px;
  color: #41500C;
  font-weight: bold;
}
.infoBox__lst__item__txt {
  font-size: 16px;
}
.infoBox__lst__item a {
  text-decoration: none;
  color: #000;
}
.infoBox__lst__item a:hover .infoBox__lst__item__date {
  color: #333;
}
.infoBox__lst__item a:hover .infoBox__lst__item__tit {
  color: #000;
}
.infoBox__lst__item a:hover .infoBox__lst__item__txt {
  color: #333;
}

/* ===========================

blogdetail

   =========================== */
.blogDate {
  text-align: right;
  margin-bottom: 15px;
}

.blogTit {
  background: #eae8d2;
  padding: 20px;
  font-size: 20px;
  margin-bottom: 35px;
  border-radius: 4px;
}

.blogdetail {
  margin-bottom: 50px;
  line-height: 150%;
}

.blogdetail p {
  overflow: hidden;
  margin-bottom: 15px;
  font-size: 16px;
  line-height: 2;
}

.blogdetail ul {
  list-style: disc;
  font-size: 16px;
  margin-left: 15px;
}

.blogdetail ol {
  list-style: decimal;
  font-size: 16px;
  margin-left: 15px;
}

.blogdetail a {
  color: #00f;
  text-decoration: none;
}
.blogdetail a:hover {
  text-decoration: underline;
}

.blogdetail hr {
  border: none;
  border-bottom: solid 1px #ddd;
  margin-bottom: 30px;
}

.blogdetail strong {
  font-weight: bold;
}

.blogdetail img {
  border: solid 1px #ccc;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  max-width: 690px;
  height: auto;
}

.blogdetail img.aligncenter {
  display: block;
  text-align: center;
  margin: 15px auto;
}

.blogdetail img.alignleft {
  float: left;
  margin-top: 15px;
  margin-right: 15px;
  margin-bottom: 15px;
  max-width: 45%;
  height: auto;
}

.blogdetail img.alignright {
  float: right;
  margin-top: 15px;
  margin-left: 15px;
  margin-bottom: 15px;
}

.blogdetail img.alignnone {
  margin: 15px 0;
}

.blogdetail img.size-full {
  display: block !important;
  float: none !important;
  width: 95%;
  height: auto;
  margin: 0 auto 30px;
}

.blogdetail img.size-large {
  display: block;
  width: 80%;
  height: auto;
  margin: 0 auto 30px;
}

.blogdetail .news-photo {
  text-align: center;
  margin-bottom: 15px;
}
.blogdetail .news-photo img {
  width: 70%;
  height: auto;
}

.blogcat {
  background: #eee;
  padding: 5px;
  border-radius: 4px;
  text-decoration: none;
  color: #000;
}

/*===============
 * faqLst
=================*/
.faqLst {
  margin-bottom: 40px;
}
.faqLst__tit {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 20px;
  color: #000;
}
.faqLst__tit span {
  background: #990833;
  color: #fff;
  padding: 3px;
  border-radius: 3px;
  margin-right: 10px;
}
.faqLst__txt {
  font-size: 14px;
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: dashed 1px #999;
  padding-left: 40px;
  position: relative;
}
.faqLst__txt:after {
  content: "A.";
  font-weight: bold;
  font-size: 1.1rem;
  width: 1.1rem;
  height: 1.1rem;
  position: absolute;
  top: 0;
  left: 1rem;
}
.faqLst__txt .blogdetail {
  margin-bottom: 0;
  padding-bottom: 0;
}
.faqLst__txt .blogdetail p {
  font-size: 16px;
}

/*===============
 * flowerLst
=================*/
.flowerLst {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
}
.flowerLst__item {
  margin-bottom: 10px;
  flex-basis: 19.6%;
}
.flowerLst__item a {
  color: #000;
  text-decoration: none;
}
.flowerLst__item__pic {
  text-align: center;
  padding: 5px 0;
  box-sizing: border-box;
}
.flowerLst__item__tit {
  font-size: 15px;
  text-align: center;
}

/*===============
 * flowerDetail
=================*/
.flowerDetail {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
}
.flowerDetail__pic {
  flex-basis: 20%;
  text-align: center;
}
.flowerDetail__pic img {
  width: 100%;
  height: auto;
}
.flowerDetail__cnt {
  flex-basis: 75%;
}
.flowerDetail__cnt__tit {
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 30px;
}

/*===============
 *  courseLst
=================*/
ul.courseLst,
ol.courseLst {
  margin-left: 20px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  box-sizing: border-box;
}
ul.courseLst li,
ol.courseLst li {
  flex-basis: 50%;
  box-sizing: border-box;
  margin-left: 0;
}
ol.courseLst > li {
	list-style:none;
}
/*--------------------------
施設のご案内
---------------------------- */
.facilitiesTit {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: flex-start;
  padding: 12px 10px 14px 10px;
  margin-bottom: 50px;
  background: #eae8d2;
}
.facilitiesTit__main h1 {
  font-size: 27px;
  border-left: solid 4px #546715;
  padding: 7px 0 0px 10px;
  color: #546715;
}
.facilitiesTit__main span {
  font-size: 14px;
}
.facilitiesTit__label {
  padding: 2px 15px;
  font-size: 14px;
  display: inline-block;
  border-radius: 4px;
  font-size: 12px;
  background: #fff;
}

.facilitiesRental {
  font-size: 18px;
  margin-bottom: 40px;
  text-align: center;
}
.facilitiesRental p {
  background: #f1f1f1;
  padding: 10px;
}
.facilitiesRental p a {
  text-decoration: none;
}

.facilitiesImgs {
  width: 90%;
  margin: 0 auto 50px;
}
.facilitiesImgs__lst__item {
  text-align: center;
}
.facilitiesImgs__lst__item img {
  width: 100%;
  height: auto;
}

.facilitiesOtherLst {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.facilitiesOtherLst__item {
  flex-basis: 49%;
  margin-bottom: 5px;
}
.facilitiesOtherLst__item:before {
  content: "・";
  font-weight: bold;
}
.facilitiesOtherLst__item a {
  color: #00f;
  text-decoration: none;
  box-sizing: border-box;
  border-radius: 3px;
  font-size: 17px;
  letter-spacing: -1px;
  font-weight: bold;
}
.facilitiesOtherLst__item a:hover {
  color: #f00;
}
.facilitiesOtherLst__item span {
  font-weight: normal;
  padding-left: 5px;
  font-size: 12px;
  color: #333;
}

.facilitiesOtherLst02 {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.facilitiesOtherLst02__item {
  flex-basis: 32.66%;
  margin-bottom: 15px;
}
.facilitiesOtherLst02__item a {
  border: solid 1px #ccc;
  padding: 4px;
  box-sizing: border-box;
  border-radius: 4px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
  /* 子要素をflexboxにより中央に配置する */
  text-decoration: none;
  font-weight: bold;
}
.facilitiesOtherLst02__item a span {
  font-size: 13px;
  color: #333 !important;
}
.facilitiesOtherLst02__item__pic {
  flex-basis: 20%;
  box-sizinig: border-box;
}
.facilitiesOtherLst02__item__pic img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
.facilitiesOtherLst02__item__cnt {
  flex-basis: 75%;
  box-sizinig: border-box;
}

.sp-thumbnails .slick-slide {
  width: 150px !important;
}

.facilities-slick {
  width: 90%;
  margin: 0 auto 50px;
}
.facilities-slick .slider-for01 {
  margin-bottom: 10px;
}
.facilities-slick .slider-nav01 img {
  width: 150px;
  height: auto;
}

.rentalLst01 {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.rentalLst01__item {
  flex-basis: 32.66%;
  margin-bottom: 15px;
}
.rentalLst01__item a {
  border: solid 1px #ccc;
  padding: 4px;
  box-sizing: border-box;
  border-radius: 4px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
  /* 子要素をflexboxにより中央に配置する */
  text-decoration: none;
  font-weight: bold;
}
.rentalLst01__item a span {
  font-size: 13px;
  color: #333 !important;
}
.rentalLst01__item__pic {
  flex-basis: 20%;
  box-sizinig: border-box;
}
.rentalLst01__item__pic img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
.rentalLst01__item__cnt {
  flex-basis: 75%;
  box-sizinig: border-box;
}

/*--------------------------
kakushoukaku
---------------------------- */
.lst01.kakushoukaku li {
  margin-bottom: 15px;
}
.lst01.kakushoukaku .kakushoukaku__tit {
  font-weight: bold;
  font-size: 18px;
  border-bottom: solid 1px #ccc;
  overflow: hidden;
  padding-bottom: 6px;
  margin-bottom: 6px;
}
.lst01.kakushoukaku .kakushoukaku__tit a {
  display: inline-block;
  text-decoration: none;
  font-weight: normal;
  background: #000;
  color: #fff;
  font-size: 12px;
  padding: 0px 10px;
  float: right;
}

/*--------------------------
menuLst
---------------------------- */
.menuLst {
  margin-bottom: 20px;
}
.menuLst dt {
  font-weight: bold;
  margin-bottom: 5px;
}
.menuLst dd {
  margin-bottom: 10px;
  margin-left: 1em;
}

/*--------------------------
shopContact
---------------------------- */
.shopContact {
  background: #cfe3fe;
  padding: 15px;
  font-size: 18px;
}
.shopContact__main {
  font-weight: bold;
}

/*--------------------------
催し物のご案内
---------------------------- */
/* entertainmentPickup */
.entertainmentPickup {
  border: solid 3px #ccc;
  padding: 15px 15px 60px;
  margin-bottom: 40px;
  background: url(../img/bk03.jpg);
}
.entertainmentPickup__tit {
  background: #eae8d2;
  padding: 15px;
  text-align: center;
  font-size: 20px;
  margin-bottom: 25px;
}
.entertainmentPickup .entertainmentPickup__detailTit {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
  border-bottom: solid 1px #ccc;
  padding-bottom: 20px;
}
.entertainmentPickup .layout01__pic img {
  display: inline;
}
.entertainmentPickup .entertainmentDetail__date {
  background: none;
  padding: 0;
}
.entertainmentPickup .entertainmentPickup__btn a {
  width: 100%;
  display: inline-block;
  text-decoration: none;
  color: #000;
  background: #f9f1f0;
  text-align: center;
  border: solid 1px #ccc;
  padding: 10px 10px;
  border-radius: 4px;
  box-sizing: border-box;
}
.entertainmentPickup .entertainmentPickup__btn a:hover {
  background: #AF1915;
  color: #fff;
}

/* entertainmentMenu */
.entertainmentMenu {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.entertainmentMenu li {
  flex-basis: 16.33%;
  margin-bottom: 5px;
}
.entertainmentMenu li a {
  width: 100%;
  display: inline-block;
  text-decoration: none;
  background: #f9f1f0;
  color: #000;
  border: solid 1px #ccc;
  padding: 4px 10px;
  border-radius: 4px;
  box-sizing: border-box;
}
.entertainmentMenu li a:hover {
  background: #AF1915;
  color: #fff;
}

/* entertainmentLst */
.entertainmentLst {
  margin-bottom: 20px;
}
.entertainmentLst__inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  box-sizing: border-box;
}
.entertainmentLst__tit {
  flex-basis: 10%;
  box-sizing: border-box;
}
.entertainmentLst__cnt {
  flex-basis: 90%;
  box-sizing: border-box;
  padding: 25px 20px;
  background: #f5f5f5;
}
.entertainmentLst__cnt__inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 10px;
  border-bottom: dashed 1px #ccc;
  padding-bottom: 10px;
}
.entertainmentLst__cnt__inner:last-child {
  margin-bottom: 0px;
  border-bottom: none;
  padding-bottom: 0px;
}
.entertainmentLst__cnt__pic {
  flex-basis: 20%;
}
.entertainmentLst__cnt__pic img {
  vertical-align: bottom;
  width: 100%;
  height: auto;
}
.entertainmentLst__cnt__info {
  flex-basis: 78%;
}
.entertainmentLst__cnt__info__tit {
  font-weight: bold;
  margin-bottom: 15px;
  font-size: 18px;
  letter-spacing: 2px;
}
.entertainmentLst__cnt__info__date {
  margin-bottom: 20px;
}
.entertainmentLst__cnt__info__btn a {
  display: block;
  padding: 5px;
  background: #fff;
  text-align: center;
  border: solid 1px #ccc;
  text-decoration: none;
  background: #f9f1f0;
  border-radius: 3px;
  color: #000;
}
.entertainmentLst__cnt__info__btn a:hover {
  background: #AF1915;
  color: #fff;
}

.entertainmentLst__tit {
  background: #eee;
  padding: 10px;
  color: #fff;
  font-style: italic;
  font-size: 25px;
}

.entertainmentLst__tit.january {
  background: #c4665e;
}

.entertainmentLst__tit.february {
  background: #6d6e67;
}

.entertainmentLst__tit.march {
  background: #e4bb9a;
}

.entertainmentLst__tit.april {
  background: #c1ae72;
}

.entertainmentLst__tit.may {
  background: #b2ac8b;
}

.entertainmentLst__tit.june {
  background: #b8a898;
}

.entertainmentLst__tit.july {
  background: #a1a493;
}

.entertainmentLst__tit.august {
  background: #d0a560;
}

.entertainmentLst__tit.september {
  background: #c5a692;
}

.entertainmentLst__tit.october {
  background: #d29872;
}

.entertainmentLst__tit.november {
  background: #a56f4d;
}

.entertainmentLst__tit.december {
  background: #656d4c;
}

/* .entertainmentLst.simple */
.entertainmentLst.simple {
  margin-bottom: 4px;
}
.entertainmentLst.simple .entertainmentLst__tit {
  flex-basis: 10%;
}
.entertainmentLst.simple .entertainmentLst__cnt {
  padding: 10px;
  flex-basis: 90%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.entertainmentLst.simple .entertainmentLst__cnt .entertainmentLst__cnt__inner {
  flex-basis: 48%;
  border-bottom: none;
  padding-bottom: 0px;
  margin-bottom: 10px;
}
.entertainmentLst.simple .entertainmentLst__cnt .entertainmentLst__cnt__pic {
  flex-basis: 15%;
}
.entertainmentLst.simple .entertainmentLst__cnt .entertainmentLst__cnt__info {
  flex-basis: 83%;
}
.entertainmentLst.simple .entertainmentLst__cnt .entertainmentLst__cnt__info .entertainmentLst__cnt__info__tit {
  font-size: 14px;
  margin-bottom: 10px;
}
.entertainmentLst.simple .entertainmentLst__cnt .entertainmentLst__cnt__info .entertainmentLst__cnt__info__btn a {
  display: inline;
  padding: 0px;
  background: none;
  text-align: left;
  border: none;
  border-radius: 0px;
  color: #00f;
}
.entertainmentLst.simple .entertainmentLst__cnt .entertainmentLst__cnt__info .entertainmentLst__cnt__info__btn a:hover {
  color: #f00;
}

/* entertainmentDetail */
.entertainmentDetail__date {
  background: #f5f5f5;
  padding: 15px;
  font-size: 90%;
}

/* flowers_and_eventsBox */
.flowers_and_eventsBox__tit {
  font-size: 20px;
  margin-bottom: 25px;
  font-weight: bold;
  text-align: center;
  background: #f5f5f5;
  padding: 10px;
}
.flowers_and_eventsBox__pic img {
  width: 100%;
  height: auto;
}
