@charset "UTF-8";

/*========================== 基本設定 ============================*/
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@100;300;400;500;700;800;900&display=swap');

html,body {
width:100%;
margin:0;
padding:0;
}

body {
	font-family:  'M PLUS Rounded 1c', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', 'HiraKakuPro-W3', 'ＭＳ Ｐゴシック', 'MS PGothic',sans-serif;
	color: #333333;	
	margin: 0px; 
	padding: 0px; 
	text-align: left;
	font-size: 16px;/**/
	line-height: 1.8;/**/
}

a:link { color: #00af99; }
a:visited { color: #00af99; }
a:hover { color: #00af99; }
a:active { color: #00af99; }

.pc {display: none !important;}
.sp {display: block !important;}
.w100 {width: 100%;}
.w50 {width: 50%;}
.bdr { border:1px solid #000; }
.resp_img {width: 100%!important; height:auto!important;}

.m60 {margin:30px 0;}/**/

/*
* clearfix
*/
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	font-size: 1px;
	line-height: 0;
}
.clearfix { display: inline-block; }
.clearfix { display: block; }
/*
* onmouse
*/
a.onmouse:hover img{
	opacity:0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
#page-top {
	position: fixed;
	opacity: 0;
	z-index:900;
	cursor: pointer;
	right: 0px;
	bottom: 50px;
	height: 35px;
	text-decoration: none;
	font-weight: bold;
	font-size: 1em;
	line-height: 1.5rem;
	color: #fff;
	padding: 10px 10px 0 20px;
	display: block;
	background-color:#00af99;
	border-radius: 20px 0px 0px 20px ;
}

#page-top::before {
    content: "";
    display: block;
    position: absolute;
    top: -1px;
    left: 0px;
    width: 15px;

}

#page-top.fade-in {
	color: #fff;
	font-size: auto;
	opacity: 1.0;
	transition: opacity 1s;
}

a.txt-link {
	width: 80%;
	display:inline-block;
	margin: 0 auto;
	padding: 15px 0;
	text-decoration: none;
	font-size: 1.2em;
	letter-spacing: -0.05em;
}
a.txt-link::before {
	content: ">";
	margin-right:10px;
}

p.toplink {
	text-align:center;
	margin:1em auto;
}

.pagenation {
	text-align:center;
	margin:1em 0;
}

/*========================== 共通layout styles ============================*/

	.wrap {
	text-align: left;
	width:100%;
	min-width:100%;/**/
	margin: 0;
	padding:0;
	box-sizing: border-box;
	}

	.container {
	text-align: left;
	max-width:100%;/**/
	width:100%;
	margin: 0!important;
	padding:0 0.5em!important;/**/
	box-sizing: border-box;
	}

	main {
	background: none;/*url(images/main-bg.png) repeat-y*/
	background-size: auto 2600px;
	background-position: left top;/**/
	text-align: center;
	margin-bottom: 40px;/**/
	width:100%;
	min-width:100%;/**/
	}

	.flexbox {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding:0;
	margin-left: auto;
	}

/* バナー */

	ul.bnr-list{
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding:0;
	margin-left: auto;
	margin-top:0px;/**/
	}
	ul.bnr-list li{
	width:48%;/**/
	margin-bottom:20px;
	}

	ul.bnr-list li img{
	width:100%;/**/
	}

	ul.bnr-list::after {
    content: "";
    display: block;
    width: 32%;
    height: 0;
	}


/*--header--*/

header {
	width:100%;
	min-width:100%;/**/
}

/*header button.gnv{
display: none!important;
}*/


header .flexbox{
flex-wrap: nowrap; 
}

header h1{
margin:10px 0;
width:48%;/**/
}

header h1 img{
width:100%;/**/
height:auto;/**/
}

header h1 span{
display:block;
margin-bottom:5px;
font-size:0.75em;/**/
font-weight:700;
}

header .header-r{
margin:10px 0;
width:52%;/**/
}

header .header-r div.up{
text-align:right;
font-size:0.9em;
display:none;/**/
}

header .header-r div.under{
display:flex;
justify-content: flex-end;
}

header .header-r div.under .tel{
position: relative;
font-size:1.3em;/**/
font-weight:bold;
line-height: 1.9;
color:#00af99;
padding-left:25px;/**/
margin-right:0;/**/
top:30px;/**/
}

header .header-r div.under .tel::before {
content: url(images/icon-tel.png);
transform: scale(0.6);/**/
position: absolute;
top: -4px;/**/
left: 0;
}

header .header-r div.under .searchbox{/**/
display:flex;
box-sizing: border-box;
margin-top:20px;/**/
display:none;/**/
}

/*SPメニュー用*/

header #overlay {/**/
	overflow: scroll;
}

header .gnv-area a.home {/**/
display:block;
font-size:1.3em;
text-align:center;
text-decoration:none;
padding:10px 0 10px 0!important;
margin-top:50px;
border-top:1px solid #eee;
border-bottom:1px solid #eee;
}

header .gnv-area .sp-nv span {/**/
position: relative;
padding-left:28px;
margin-left:0;/**/
display:block;/**/
border-top:1px solid #eee;/**/
}

header .gnv-area .sp-nv span a{/**/
color:#966f32;
text-decoration:none;
padding:20px 0 20px 25px;/**/
display:block;

}

header .gnv-area .sp-nv span.faq::before{/**/
content: url(images/header-faq.png);
position: absolute;
top: 20px;/**/
left: 20px;/**/
margin-top: 0;/**/
}

header .gnv-area .sp-nv span.access::before{/**/
content: url(images/header-access.png);
position: absolute;
top: 20px;/**/
left: 20px;/**/
margin-top: 0;/**/
}

header .gnv-area .sp-nv .searchbox{/**/
display:flex;
justify-content: center;/**/
box-sizing: border-box;
margin-top:0;/**/
padding-top:20px;
border-top:1px solid #eee;/**/
}
header .gnv-area .sp-nv .searchbox input[type="text"]{/**/
background: #fff;
border: 1px solid #eee;
font-size:1em;
height: 40px;
width:330px;
padding:0 0.5em;
margin:0;
}
header .gnv-area .sp-nv .searchbox input[type="text"]:focus {/**/
outline: 0;
background: #fff;
}
header .gnv-area .sp-nv .searchbox button[type="submit"]{/**/
cursor: pointer;
border: none;
background: #966f32;
color: #fff;
outline: 0;
width: 40px;
height: 40px;
margin:0;
}

header section.gnv-area{
border-top:1px solid #966f32;
}

header section.gnv-area ul{
display:flex;
justify-content: space-between;/**/
margin-top:10px;
padding:0 ;/**/
box-sizing: border-box;
flex-wrap: wrap;/**/
width:100%;/**/
}

header section.gnv-area ul li {
position: relative;
width: 30%!important;/**/
top: 0;
left:0;
padding:30px 0 30px 70px;/**/
}

header section.gnv-area ul li::before {
transform: scale(0.6);
position: absolute;
top: 15px;/**/
left: 0;/**/
margin:0;/**/
padding:0;/**/
}
 
header section.gnv-area ul li.gnv-about::before {
content: url(images/icon_about.png);
}
header section.gnv-area ul li.gnv-consult::before {
content: url(images/icon_consult.png);
top: 0px;
}
header section.gnv-area ul li.gnv-seminer::before {
content: url(images/icon_seminer.png);
}
header section.gnv-area ul li.gnv-facility::before {
content: url(images/icon_facility.png);
top: 15px;
}
header section.gnv-area ul li.gnv-report::before {
content: url(images/icon_report.png);
left: 8px;
}
header section.gnv-area ul li.gnv-info::before {
content: url(images/icon_info.png);
left: 8px;
}

header section.gnv-area ul li a{
display:block;
height: 100%;
width: 100%;
color:#333;
text-decoration:none;
height:40px;/**/
}


/*--footer--*/


footer{
background-color: #a08f92;
font-size: 0.9em;
}

footer div.container{
display:flex;
justify-content: space-between;
color:#fff;
padding:40px 0.5em!important;
flex-direction: column;/**/
}

footer div.container div.address{/**/
padding-bottom:40px;
border-bottom:1px solid #fff;
}

footer div.container div.address h2{
font-size:2.4em;
font-weight:normal;
}

footer div.container div.address h2 span{
display:block;
font-size:0.4em;
line-height:1.0em;
font-weight:normal;
}

footer div.container div.address p span{
display:table-cell;
}

footer div.container div.address p span:first-child{
width:80px;
}

footer div.container div.contact {
padding-top:40px;/**/
text-align:center;
}

footer div.container div.contact h2{
position:relative;
font-size:1.5em;
font-weight:normal;
}

footer div.container div.contact h2::after{
content:"";
display:block;
width:150px;
height:2px;
background-color:#fff;
position:absolute;
bottom:0;
left:50%;
	transform: translate(-50%, 0);/**/
	-webkit-transform: translate(-50%, 0);/**/
	-ms-transform: translate(-50%, 0);/**/
}

footer div.container div.contact a{
display:block;
width:300px;
color:#a08f92;
text-decoration:none;
background-color:#fff;
border-radius:10px;
padding:5px 0;
margin:30px auto 0 auto;/**/
}

footer div.container div.contact div.f-tel{
margin-top:30px;
}

footer div.container div.contact div.f-tel p {
font-size:1.2em;
font-weight:normal;
line-height:1.0em;
}

footer div.container div.contact div.f-tel span{
font-size:2.5em;/**/
font-weight:normal;
}

footer div.copyright{
background-color: #645054;
text-align:center;
font-size: 0.8em;
color:#fff;
padding:0.5em 0;
}

/*====================================================== 
トップページ用
====================================================== */

/* トップメインイメージ */

	section div.fv-bg {
	position: relative;
	z-index: 1;
	background: url(images/main-bg.png) repeat-y;
	background-size: auto auto;
	background-position: left 100px;/**/
	text-align: center;
	width:100%;
	min-width:100%;/**/
	top:100px;/**/
	margin-bottom:280px;/*height:260px+bottom:80px;*/
	}

	section div.fv-bg div.container{
	position: relative;
	z-index: 2;
	margin-top:20px;
	}

	section div.main-title {
	position:absolute;
	z-index: 3;/**/
	background: url(images/fv-title.png) no-repeat center top;
	background-size: cover ;
	text-align:left;
	width:80%;/**/
	height:380px;/**/
	left: 50%;/**/
	top: -100px;/**/
	margin: auto;
	transform: translate(-50%, 0);/**/
	-webkit-transform: translate(-50%, 0);/**/
	-ms-transform: translate(-50%, 0);/**/
	}

	section div.main-title h2{
	position:absolute;
	top:45%;/**/
	left: 50%;/**/
	font-size:2.0em;/**/
	color:#966f32;
	transform: translate(-50%, -55%);/**/
	-webkit-transform: translate(-50%, -55%);/**/
	-ms-transform: translate(-50%, -55%);/**/
	width:90%;/**/
	text-align:center;/**/
	}
	section div.main-title h2 span{
	display:block;
	font-size:0.5em;
	font-weight:bold;
	line-height:0.5;
	color:#333;
	}

	section ul.main-menu {
	display:flex;
	justify-content: space-between;
	padding-top:30px;
	padding-left:0;/**/
	flex-wrap: wrap;/**/
	position: relative;/**/
	z-index: 4;/**/
	top:160px;
	height:100%;/**/
	}

	section ul.main-menu li{
	width:100%;/**/
	margin-bottom:30px;
	}

	section ul.main-menu li dl{
	}

	section ul.main-menu li dl dt{
	background: url(images/menu-bg.png) no-repeat top center;
	background-size: auto 100% ;
	height:60px;/**/
	text-align:center;
	margin:0;
	padding-top:20px;/**/
	}

	section ul.main-menu li dl dt img{
	width:15%;/**/
	}

	section ul.main-menu li dl dt img.small{
	width:10%;/**/
	}

	section ul.main-menu li dl dd{
	height:auto;/**/
	text-align:center;
	background: rgba(255, 255, 255, 0.9);/**/
	border-top:2px solid #b49b64;/**/
	border-left:2px solid #b49b64;
	border-right:2px solid #b49b64;
	border-bottom:2px solid #b49b64;
	border-radius: 15px;/**/
	margin:0;
	padding-top:15px;
	}

	section ul.main-menu li dl dd h2{
	font-size:1.7em;
	font-feature-settings: "palt" 1;
	color:#966f32;
	}

	section ul.main-menu li dl dd span{
	display:block;
	padding:0 10px 5px 10px;/**/
	}


	section ul.main-menu li dl dd div{
	padding:5px 0 15px 0;/**/
	display:flex;/**/
	justify-content: center;
	flex-wrap: wrap;/**/
	}

	section ul.main-menu li dl dd div p.btn{
	text-align:center;
	background-color:#966f32;
	border-radius: 5px;/**/
	margin:15px 0;
	width:46%;/**/
	margin:5px 5px;
	}

	section ul.main-menu li dl dd div p.btn a{
	display:block;
	padding:5px 0;
	width:100%;
	color:#fff;
	text-decoration:none;
	}

/* スライド箇所リバース */

div.row-rv{
display:flex;
flex-direction: column-reverse;
}

/* スライド写真 */

	section div.slide{
	position:relactive;
	z-index:1;
	width:100%;
	left:0;/**/
	height:310px;
	padding-right:3px;/**/
	margin-bottom:40px;/**/
	}

	div.slide div {
	position:relative;
	z-index:1;
	}

	div.slide div p{
	height:260px;
	overflow:hidden;
	box-shadow: 3px 3px 3px rgba(0, 0, 0, .2);
	width:100%;/**/
	}

	div.slide div span {
	position:absolute;
	z-index:2;
	background: url(images/slide-flag.png) no-repeat center right;
	top:20px;
	color:#fff;
	padding: 0 30px 0 10px; 
	}

	div.slide div img{
	max-width:100%;
	height:auto;
	}

/* スライド全体の余白 */
.swiper {
  margin-top: 0; /* スライダー上の余白 */
  padding-left: 0; /* スライダー左の余白 */
  padding-right: 0; /* スライダー右の余白 */
}
/* スライド画像のサイズ */
.swiper-slide img {
  height: auto;
  width: 100%;
}

.swiper-button-prev {
    left:auto;
    right:40px;
    top:auto;
    bottom: 0;
}

.swiper-button-next {
    left:auto;
    right:0;
    top: auto;
    bottom: 0;
}
      
      
/* 前へ次への矢印カスタマイズ */
.swiper-button-prev,
.swiper-button-next {
  height: 30px;
  width: 30px;
}
/* 前へ次への矢印カスタマイズ */
.swiper-button-prev::after,
.swiper-button-next::after {
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 30px;
  margin: auto;
  width: 30px;
}
/* 前への矢印カスタマイズ */
.swiper-button-prev::after {
    background-image: url(images/slide-arrow.png);
}
/* 次への矢印カスタマイズ */
.swiper-button-next::after {
	transform: scale(-1, 1);
	background-image: url(images/slide-arrow.png);
	}
/* 画像サイズ調整 */
	.swiper-slide img {
	height: auto;
	width: 100%;
	}

/* お知らせ */

	div.news{
	position:static;
	width:100%;/**/
	padding:0;
	margin:0;
	margin-left:0;/**/
	margin-top:0;/**/
	margin-bottom:40px;
	}

	div.news h2{
	display:block;
	font-size:2.0em;
	line-height:1.2;
	color:#966f32;
	width:50%;/**/
	}

	div.news p.all-btn{
	display:block;
	width:50%;/**/
	text-align:right;
	padding-top:5px;
	}

	div.news p.all-btn a{
	border:1px solid #966f32;
	border-radius: 15px;
	color:#966f32;
	text-decoration:none;
	padding:0 20px;
	}

	div.news ul li{
	margin-bottom:15px;
	border-bottom:1px solid #666;
}

	div.news ul li p{
	padding:15px 0 5px 0;
	text-decoration:none;
}

	div.news ul li p span.category{
	display:inline-block;
	background-color:#966f32;
	border-radius: 5px;
	padding:0!important;
	font-size:0.8em;
}
	div.news ul li p span.category a{
	color:#fff;
	text-decoration:none;
	padding:0 1em;
}

	div.news ul li p span.date{
	font-size:0.8em;
}

	div.news ul li div{
	position: relative;
	display: inline-block;
	width:100%;
}
	div.news ul li div::after{
	content: '';
	width: 20px;
	height: 20px;
	border: 0;
	border-top: solid 2px #333;
	border-right: solid 2px #333;
	position: absolute;
	top: 50%;
	right:5px;
	margin-top: -10px;
	transform: rotate(45deg);
}

	div.news ul li div a{
	display: block;
	color: #333;
	text-decoration: none;
	padding:10px 0 20px 0;
	width:90%;
}

/* カレンダー */

	div.calendar-area{
	margin-bottom:30px!important;
}

	.lower div.calendar-area{
	margin:0 0 30px 0;
}

	div.calendar-area div h2{
	position: relative;
	font-size:2.0em;/**/
	line-height:1.2;
	color:#966f32;
	padding-left:70px;
	margin-bottom:20px;/**/
	width:100%;/**/
}
	div.calendar-area div h2::before {
	position: absolute;
	content: url(images/top-calendar.png);
	transform: scale(0.8);/**/
	top: -10px;/**/
	left: 0;
}

	div.calendar-area p.all-btn{
	display:block;
	width:100%;/**/
	text-align:right;
	padding-top:0px;/**/
	padding-bottom:10px;/**/
	}

	div.calendar-area p.all-btn a{
	border:1px solid #966f32;
	border-radius: 15px;
	color:#966f32;
	text-decoration:none;
	padding:0 20px;
	}

	div.calendar-area ul{
	display:flex;
	justify-content: space-between;
	flex-grow: 0;
}

	div.calendar-area ul li{
	width:100%;
	margin:0;
	text-align:center;
}

	div.calendar-area ul li a{
	display:block;
	font-size:1.2em;/**/
	color:#fff;
	text-decoration:none;
	padding:10px 0;
}

	div.calendar-area ul li.calendar-03 a{
	background-color:#867683;
	border-top:1px solid #745f70;
	border-left:1px solid #745f70;
}
	div.calendar-area ul li.calendar-01 a{
	background-color:#c1bd62;
	border-top:1px solid #afab4d;
	border-left:1px solid #afab4d;
}
	div.calendar-area ul li.calendar-02 a{
	background-color:#87caac;
	border-top:1px solid #6cb795;
	border-left:1px solid #6cb795;
}

	div.calendar iframe{
	width:100%;
	height:500px;/**/
	box-sizing: border-box;
	border:1px solid #fff;
}

/* fullCalendar用 */

	div.calendar-area .fc{
	background-color:#fff!important;
	margin-bottom:50px;
	}
	
	.lower div.calendar-area .fc{
	border-radius:10px 0 0 10px;
	}

	.fc h2{
	font-size:1.3em!important;
	padding:10px 0 0 0!important;
	margin:0!important;
	background-color:transparent!important;
	border:none!important;
	}

	.fc h2::before {
	position: static;
	content: url()!important;
	transform: none;
	top: 0;
	left: 0;
	}

	:root {
	/* 枠線の色を指定 */
	--fc-border-color: #999;

	/* 空白セルの色を指定 */
	--fc-neutral-bg-color: transparent;
	
	/* ナビボタンの色を指定 */
	--fc-button-bg-color: transparent;
	--fc-button-border-color: transparent;
	--fc-button-text-color: #666;
	--fc-button-hover-bg-color: transparent;
	--fc-button-hover-border-color: transparent;
	
	/* 予定のフォントサイズを指定 */
	--fc-small-font-size: 14px;
	}

/* フォントを指定 */
.tippy-content {
	font-size: 16px;
}
.fc th {
	font-weight: normal;
}

/* ツールチップ */
.tippy-content {
	width: max-content;
	max-width: 300px;
}

.-content a {
	color: white;
}
.tippy-content .description {
	margin-top: .5em;
	display: block;
	font-size: 10px;
}

/* 見出しの文字サイズを指定 */
.fc .fc-toolbar-title {
	font-size: 16px;
}

/* タイトル下の余白を指定 */
.fc .fc-toolbar.fc-header-toolbar {
	margin-bottom: 1em;
}

/* 時間指定イベントの文字色を指定 */
.fc-daygrid-dot-event{
	color: #000;
}
.fc-daygrid-dot-event .fc-event-title {
	font-weight: normal;
}


/* アクセス */

	div.access{
	margin-bottom:30px!important;
}

	div.access div.flexbox{
	flex-direction: column;
}

	div.access div h2{
	position: relative;
	font-size:2.0em;/**/
	line-height:1.2;
	color:#966f32;
	padding-left:70px;
	margin-bottom:40px;
}
	div.access div h2::before {
	position: absolute;
	content: url(images/top-access.png);
	transform: scale(0.7);
	top: -8px;
	left: 0;
}

	div.access div iframe{
	width:100%;/**/
	height:400px;/**/
	box-sizing: border-box;
	margin-bottom:30px!important;
}

	div.access div p.xarea {
	position: relative;
	border:2px solid #ccc;
	border-radius:15px;
	background-color:#fff;
	font-size:0.9em;
	text-align:left;
	margin:0 0 30px 0;/**/
	width:100%;
}

	div.access div p.xarea::before {
	position: absolute;
	content: url(images/x_logo-black.png);
	transform: scale(0.8);
	top: 3px;
	left: 5px;
}

	div.access div p.xarea a{
	display:block;
	font-size:1.3em;
	color:#333;
	text-decoration:none;
	width:100%;
	padding:10px 0 10px 60px;
	box-sizing: border-box;
}


/*====================================================== 
下層コンテンツエリア用
====================================================== */

.lower section{
	margin:0 0 0 0;/**/
	background: url(images/main-bg.png) repeat-y;
	background-size: auto auto;
	padding-bottom:40px;/**/
	margin-bottom: -40px;/**/
}

.lower .flexbox {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding:0;
	margin-left: auto;
	flex-direction: column;/**/
	}

/*パンクズ*/
.lower div.pankuzu{
	display:flex;
	padding:10px 0;
}

.lower div.pankuzu span{
	margin-right:10px;
	font-size:0.8em;
}

.lower div.pankuzu span a{
	position: relative;
	display: inline-block;
	margin-right:20px;
	color:#333;
}
.lower div.pankuzu span a::after{
	content: '';
	width: 8px;
	height: 8px;
	margin-top: -5px;
	border-top: solid 1px #555;   /* 好みで色を変えてください */  
	border-right: solid 1px #555;   /* 好みで色を変えてください */  
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: -15px;
}

.lower div.pankuzu span:last-child a::after{
	display:none;
}


.lower h2{
	position: relative;
	background-color:#f3f3e4;
	border-right:4px solid #966f32;
	border-radius:50px 0 0 50px;
	font-size:2.0em;/**/
	color:#966f32;
	padding-left:80px;
}

.lower h2.about::before{
	position: absolute;
	content: '';
	display: block;
	width: 50px;/**/
	height: auto;
	background: url(images/icon_about.png) no-repeat left 10px;/**/
	background-size:80% auto;/**/
	top: 0;
	bottom:0;
	left: 20px;/**/
	border-right:1px solid #d0cbad;
}

.lower h2.facility::before{
	position: absolute;
	content: '';
	display: block;
	width: 50px;/**/
	height: auto;
	background: url(images/icon_facility.png) no-repeat left 15px;/**/
	background-size:80% auto;/**/
	top: 0;
	bottom:0;
	left: 20px;/**/
	border-right:1px solid #d0cbad;
}

.lower h2.consult::before{
	position: absolute;
	content: '';
	display: block;
	width: 50px;/**/
	height: auto;
	background: url(images/icon_consult.png) no-repeat left 10px;/**/
	background-size:80% auto;/**/
	top: 0;
	bottom:0;
	left: 20px;/**/
	border-right:1px solid #d0cbad;
}

.lower h2.seminer::before{
	position: absolute;
	content: '';
	display: block;
	width: 50px;/**/
	height: auto;
	background: url(images/icon_seminer.png) no-repeat left 10px;/**/
	background-size:80% auto;/**/
	top: 0;
	bottom:0;
	left: 25px;
	border-right:1px solid #d0cbad;
}

.lower h2.information::before{
	position: absolute;
	content: '';
	display: block;
	width: 50px;/**/
	height: auto;
	background: url(images/icon_info.png) no-repeat left 10px;/**/
	background-size:80% auto;/**/
	top: 0;
	bottom:0;
	left: 23px;
	border-right:1px solid #d0cbad;
}

.lower h2.report::before{
	position: absolute;
	content: '';
	display: block;
	width: 50px;/**/
	height: auto;
	background: url(images/icon_report.png) no-repeat left 12px;/**/
	background-size:80% auto;/**/
	top: 0;
	bottom:0;
	left: 23px;
	border-right:1px solid #d0cbad;
}

.lower h2.faq::before{
	position: absolute;
	content: '';
	display: block;
	width: 40px;/**/
	height: auto;
	background: url(images/icon_faq.png) no-repeat left 12px;/**/
	background-size:80% auto;/**/
	top: 0;
	bottom:0;
	left: 20px;/**/
	border-right:1px solid #d0cbad;
}

.lower h2.contact::before{
	position: absolute;
	content: '';
	display: block;
	width: 45px;/**/
	height: auto;
	background: url(images/icon_contact.png) no-repeat left 12px;/**/
	background-size:80% auto;/**/
	top: 0;
	bottom:0;
	left: 20px;
	border-right:1px solid #d0cbad;
}

.lower h2.search::before{
	position: absolute;
	content: '';
	display: block;
	width: 50px;/**/
	height: auto;
	background: url(images/icon-search.png) no-repeat left 10px;/**/
	background-size:80% auto;/**/
	top: 0;
	bottom:0;
	left: 20px;/**/
	border-right:1px solid #d0cbad;
}


.lower div.contentsarea{
	background-color:rgba(255, 255, 255, .8);
	border-radius:25px;/*50*/
	margin:1em 0;/**/
	padding:1em;/**/
}

.lower div.contentsarea h3,
.lower div.container h3{
	display:block;
	width:100%;
	background-color:#d0cbac;
	border-radius:20px 50px 50px 20px;
	margin-bottom:20px;/**/
}

.lower div.contentsarea h3 span,
.lower div.container h3 span{
	display:block;
	font-size:1.5em;/**/
	line-height:1.7;
	color:#fff;
	background-color:#966f32;
	border-radius:20px 50px 50px 20px;
	padding-left:20px;
	margin-right:5px;
}

.lower div.contentsarea h4{
	display:block;
	border-left:3px solid #966f32;
	font-size:1.3em;/**/
	line-height:1.8;
	color:#966f32;
	padding-left:10px;
	margin-bottom:20px;
}


.lower div.contentsarea .midashi {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size:1.3em;/**/
	line-height:1.8;
	color:#966f32;
}

.lower div.contentsarea .midashi::before,
.lower div.contentsarea .midashi::after {
	content: '';
	flex-grow: 0.2;
	height: 3px;
	background: #966f32;
}

.lower div.contentsarea .midashi::before {
	margin-right: 20px;
}

.lower div.contentsarea .midashi::after {
	margin-left: 20px;
}

.lower div.contentsarea h5{
	display:block;
	border-bottom:1px solid #966f32;
	font-size:1.3em;/**/
	line-height:1.7;
	font-weight:normal;
	color:#966f32;
	padding-bottom:10px;
	margin-bottom:20px;
}

.lower div.contentsarea div.btn {
	position: relative;
	background-image: linear-gradient(180deg, rgba(0, 175, 153, 1) 49%, rgba(0, 166, 145, 1) 51%);
	border:1px solid #d0cbac;
	border-radius:20px;
	text-align:center;
	margin:20px auto;
}

.lower div.contentsarea div.btn a{
	display:block;
	height:80px;
	font-size:1.5em;
	line-height:1.7;
	font-weight:normal;
	color:#f3f3e4;
	text-decoration:none;
	display: flex;
	justify-content: center; /*左右中央揃え*/
	align-items: center;     /*上下中央揃え*/
}


.lower div.contentsarea div.reserve::before{
	position: absolute;
	content: '';
	display: block;
	width: 50px;
	background: url(images/btn-system.png) no-repeat left 10px;/**/
	background-size: 90% auto;/**/
	top: 0;
	bottom:0;
	left: 10px;/**/
}

.lower div.contentsarea div.dl::before{
	position: absolute;
	content: '';
	display: block;
	width: 40px;
	background: url(images/btn-dl.png) no-repeat left 5px;/**/
	background-size: 90% auto;/**/
	top: 0;
	bottom:0;
	left: 10px;/**/
}

.lower div.contentsarea div.btn a{
	display:block;
	height:60px;
	font-size:1.0em;/**/
	line-height:1.7;
	font-weight:normal;
	color:#f3f3e4;
	text-decoration:none;
	display: flex;
	justify-content: center; /*左右中央揃え*/
	align-items: center;     /*上下中央揃え*/
	padding-left:20px;
}

.lower div.conts-box{
	border:1px solid #966f32;
	border-radius:20px;
	padding:30px;
	}

.lower a.pdf{
	position: relative;
	display: inline-block;
	padding-left:25px;
	margin:0 0;
	}

.lower .facility a.pdf{
	margin:10px 0;
	}

.lower a.pdf::before{
	position: absolute;
	content: '';
	display: block;
	width: 20px;
	background: url(images/pdf-icon.png) no-repeat left 6px;
	top: 0;
	bottom:0;
	left: 0;
	}


.lower .rows-02,.rows-03{
	margin:15px 0;/**/
}


.lower ul.rows-02 li,
.lower div.rows-02 div{
	width:100%;/**/
	margin-bottom:20px;/**/
	}
.lower ul.rows-02 li p{
	position: relative;
	height:200px;/*画像サイズ4:3*/
	overflow:hidden;
	box-shadow: 3px 3px 3px rgba(0, 0, 0, .2);
	margin-top:0px;/**/
	}


.lower div.rows-02 div p{
	/*position: relative;
	height:520px;
	overflow:hidden;
	background-color:#333;
	box-shadow: 3px 3px 3px rgba(0, 0, 0, .2);*/
	}

.lower ul.rows-02 li p img,
.lower div.rows-02 div p img{
	height:auto!important;
	width:100%!important;
	}

.lower ul.rows-03 li{
	width:100%;/**/
	margin-bottom:20px;/**/
	}

.lower ul.rows-03 li p{
	position: relative;
	height:240px;/*画像サイズ4:3*/
	overflow:hidden;
	background-color:#eee;
	box-shadow: 3px 3px 3px rgba(0, 0, 0, .2);
	}

.lower ul.rows-02 li p img,
.lower ul.rows-03 li p img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width:100%;
	height:auto;
	}

.lower div.rows-02 div p img{
	/*position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: auto;
	height:550px;
	object-fit: cover;*/
	width:100%;
	box-shadow: 3px 3px 3px rgba(0, 0, 0, .2);
	}

.lower div.rows-02 div p iframe{
	/*position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);*/
	width:100%;
	height:250px;
	box-shadow: 3px 3px 3px rgba(0, 0, 0, .2);
	}

.lower ul.rows-02 li span,
.lower ul.rows-03 li span{
	display:block;
	text-align:center;
	}

.lower dl.single{
	display:flex;
	flex-wrap: wrap;
	}
.lower dl.single dt{
	width:20%;
	}
.lower dl.single dd{
	width:80%;
	}

.lower dl.single-report{
	display:flex;
	flex-wrap: wrap;
	margin:30px auto;
	}
.lower dl.single-report dt{
	width:30%;/**/
	}
.lower dl.single-report dd{
	width:70%;
	}


/*施設利用*/

.lower .facility ul.rows-02 li span,
.lower .facility ul.rows-03 li span{
	display:block;
	text-align:left;
	}

.lower .facility h4{/**/
	margin-top:30px;
	}

.lower .facility span{/**/
	margin-bottom:10px;
	}

.lower .facility .conts-box{/**/
	padding:0.5em;
}

/*各種相談*/

.lower .consult ul.rows-02 li,
.lower .consult div.box{
	box-shadow: 3px 5px 10px rgba(0, 0, 0, .2);
	box-sizing: border-box;
	background-color:#fff;
	padding:20px;
	margin-bottom:30px;
	}

.lower .consult ul.rows-02 li div.f-indent{
	text-indent: -4em;
	padding-left: 4em;
	margin-bottom:20px;
	}

.lower .consult ul.rows-02 li div strong,
.lower .consult div.box div strong{
	font-size:1.2em;
	color:#966f32;
	}


.lower .consult div.box {
	margin:20px 0 60px 0;
	}

.lower .consult div.box dl{
	display:flex;
	flex-wrap: wrap;
	}
.lower .consult div.box dl dt{
	width:40%;
	}
.lower .consult div.box dl dd{
	width:60%;
	}


/*アクセス・お問い合わせ*/

.lower .contact iframe{
	height:300px;/**/
	box-sizing: border-box;
}

.lower .contact div.conts-box{
	width:100%;
	box-sizing: border-box;
}


.lower .contact div.conts-box .tel{
position: relative;
width:auto;
display:inline-block;
font-size:1.8em;
font-weight:bold;
line-height: 1.5;
color:#00af99;
padding-left:25px;
left:50%;
transform: translateX(-50%);
}

.lower .contact div.conts-box .tel::before {
position: absolute;
content: url(images/icon-tel.png);
transform: scale(1.0);
top: 5px;
left: 0;
}

.lower .contact p.adress{
font-size:1.2em;	
}

.lower .contact div.form dl{
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding:0;
	margin-left: auto;
}

.lower .contact div.form dl dt{
	width:100%;/**/
	padding:1em 0;
	font-size:1.2em;
	color:#966f32;
}
.lower .contact div.form dl dt span{
	color:#ff0000;
}
.lower .contact div.form dl dd{
	width:100%;/**/
	padding:1em 0;
}
.lower .contact div.form dl dd input,
.lower .contact div.form dl dd textarea{
	width:100%;
	padding:0.5em;
	box-sizing: border-box;/**/
}

.lower .contact div.form .wpcf7-radio{/*0216*/
display:flex;	
flex-direction: column;	
}	
.lower .contact div.form .wpcf7-list-item {/*0216*/	
margin:0 20px 0 0;	
}	
.lower .contact div.form .wpcf7-radio input{/*0216*/	
width:auto;	
vertical-align:0em;	
}

.lower .contact div.form input.wpcf7-submit{
	display:block;
	width:100%!important;
	text-align:center;
	background-image: linear-gradient(180deg, rgba(0, 175, 153, 1) 49%, rgba(0, 166, 145, 1) 51%);
	border:1px solid #d0cbac;
	border-radius:20px;
	text-align:center;
	height:80px;
	font-size:1.5em;
	line-height:1.7;
	font-weight:normal;
	color:#f3f3e4;
	text-decoration:none;
	margin:20px 0;
	cursor:pointer
}


/*講座・講演会用リスト*/

.lower ul.seminer-menu li{
	width:100%;/**/
	text-align:center;
	border-left:none;/**/
	border-top:1px solid #dedcba;/**/
	}

.lower ul.seminer-menu li:last-child{
	border-right:none;/**/
	border-bottom:1px solid #dedcba;/**/
	}

.lower ul.seminer-menu li a{
	display:block;
	padding:10px 0;
	}

.lower ul.seminer-conts{
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding:0;
	margin-left: auto;
	}

.lower ul.seminer-conts::after{
	content:"";
	display: block;
	width:100%;/**/
	}

.lower ul.seminer-conts li{
	position: relative;
	top:0;
	width:100%;/**/
	margin-top:30px;
	background-color:#fff;
	box-shadow: 3px 3px 3px rgba(0, 0, 0, .2);
	}

.lower ul.seminer-conts li p.eye-catch{
	position: absolute;
	z-index:10;
	top:210px;
	left:20px;
	width: 80px;
	height: 80px;
	border-radius: 50%;
	text-align:center;
	font-size:1.3em;
}
.lower ul.seminer-conts li p.eye-catch a{
	color:#fff;
}
.lower ul.seminer-conts li p.eye-catch strong{
	position: absolute;
	width: 80px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	line-height:1.0;
}
.lower ul.seminer-conts li p.eye-catch span{
	display:block;
	font-size:0.8em;
	line-height:1.0;
	color:#fff;
}

.lower ul.seminer-conts li p.eye-catch01{
	background-color:#be76af;
}
.lower ul.seminer-conts li p.eye-catch02{
	background-color:#966f32;
}
.lower ul.seminer-conts li p.eye-catch03{
background-color:#aa9f5e;
}
.lower ul.seminer-conts li a{
	text-decoration:none;
	color:#333;
}

.lower ul.seminer-conts li div.fig{
	position: relative;
	height:250px;/**/
	overflow:hidden;
	background-color:#eee;
	}

.lower ul.seminer-conts li div.fig img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width:100%;
	height:auto;
	}

.lower ul.seminer-conts li div.fig iframe{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display:block;
	width:100%;/*リスト　youtubeサイズ調整*//*0205追記*/
	height:200px;/*リスト　youtubeサイズ削除*//*0205追記*/
	}

.lower ul.seminer-conts li div.text{
	padding:10px 20px 20px 20px;
	}

.lower ul.seminer-conts li div.text p.date{
	display:block;
	text-align:right;
	font-size:0.9em;
	margin-bottom:15px;
	}

.lower ul.seminer-conts li div.text p.title{
	display:block;
	font-size:1.3em;
	line-height:1.5em;
	font-weight:bold;
	color:#966f32;
	}

.lower div.category-accept{
	background-color:#be76af;
	border-radius: 5px;
	display:inline;
	padding:2px 10px;
}
.lower div.category-live{
	background-color:#966f32;
	border-radius: 5px;
	display:inline;
	padding:2px 10px;
}
.lower div.category-end{
	background-color:#aa9f5e;
	border-radius: 5px;
	display:inline;
	padding:2px 10px;
}
.lower div.category-accept a,
.lower div.category-live a,
.lower div.category-end a{
	text-decoration:none;
	color:#fff;
}



/*活動報告・情報コーナーリスト*/

.lower .report h3,
.lower .info h3{/**/
	margin:0 0 30px 0!important/**/;
	}
	
	.lower div.info-top div{
	margin:0 0 40px 0;
	padding:0 0 20px 0;
	border-bottom:1px dotted #aa9f5e;
	}

.lower div.info-top p.mb30{
	margin:0 0 30px 0;
	}

.lower div.info-top div a{
	position: relative;
	display: block;
	text-align:left;
	text-decoration:none;
	padding:20px 0 20px 20px;
	}

.lower div.info-top div a::before {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 8px;
	border-color: transparent transparent transparent #00af99;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -6px;
}


.lower div.list-area {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding:0;
	margin:0 auto 40px auto;/**/
	flex-direction: column;/**/
	}

.lower div.list-area div.list-conts{
	width:100%;/**/
	margin-top:10px;
	}

.lower div.list-area div.list-conts p img{
	width:100%;
	}

.lower div.list-area div.list-conts ul li{
	position: relative;
	width:100%;
	text-align:left;
	padding-bottom:30px;
	margin-bottom:40px;
	border-bottom:1px solid #dedcba;
	}

.lower div.list-area div.list-conts ul li span.eye-catch{
	position: absolute;
	z-index:10;
	top:-10px;
	font-size:0.9em;
	line-height:1.2em;
	color:#fff;
	font-weight:bold;
	padding:0 15px 0 5px;
	background: url(images/slide-flag.png) no-repeat top right;
	background-size: cover ;
	}

.lower div.list-area div.list-conts ul li a{
	color:#333;
	text-decoration:none;
	cursor:pointer;
	}


.lower div.list-area div.list-conts ul li div.conts-area{
	display: flex;
	flex-wrap: wrap;/**/
	flex-direction: column;/**/
	}

.lower div.list-area div.list-conts ul li div.conts-area div.fig{
	position: relative;
	min-width:100%;/**/
	height:250px;/**/
	overflow:hidden;
	background-color:#eee;
	}

.lower div.list-area div.list-conts ul li div.conts-area div.fig img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width:auto;
	height:100%;
	}

.lower div.list-area div.list-conts ul li div.conts-area div.text{
	width:auto;
	margin-left:0;/**/
	}

.lower div.list-area div.list-conts ul li div.conts-area div.text p.title{
	font-size:1.3em;
	color:#966f32;
	font-weight:bold;
	}

.lower div.list-area div.list-conts ul li div.conts-area div.text p.title a{
	color:#966f32;
	cursor:pointer;
	}

.lower div.list-area div.list-mn{
	width:100%;/**/
	}

.lower div.list-area div.list-mn p{
	color:#966f32;
	}

.lower div.list-area div.list-mn ul{
	margin-bottom:20px;
	}

.lower div.list-area div.list-mn ul li{
	text-align:left;
	padding-bottom:0px;
	margin-bottom:0px;
	border:none;
	border-bottom:1px solid #ccc;/**/
	}

.lower div.list-area div.list-mn ul li a{
	position: relative;
	display: block;
	text-align:left;
	color:#333;
	text-decoration:none;
	padding-left: 12px;
	padding-top:10px;/**/
	padding-bottom:10px;/**/
	}

.lower div.list-area div.list-mn ul li a::before {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 8px;
	border-color: transparent transparent transparent #966f32;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -6px;
}
.lower div.list-area div.list-mn p {
	margin:20px 0;
}

.lower div.list-area div.list-mn p a {
	display:block;
	color:#333;
	text-decoration:none;
}

/*活動報告・情報コーナー詳細*/

.lower div.seminer-detail{
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
	flex-direction: column;
}

.lower div.seminer-detail p,
.lower div.seminer-detail div{
	width:100%;
}

.lower div.reoprt-detail {
	width:100%;
}

.lower div.seminer-detail div.eye-catch{
	display:block;
	border-radius: 30px;
	padding:0.5em 0;
	color:#fff;
	text-align:center;
	box-sizing: border-box;
	margin-top:20px;
}
.lower div.seminer-detail div.eye-catch01{
	background-color:#be76af;
}
.lower div.seminer-detail div.eye-catch02{
	background-color:#966f32;
}
.lower div.seminer-detail div.eye-catch03{
	background-color:#aa9f5e;
}

.lower div.seminer-detail p img,
.lower div.reoprt-detail p img{
	width:100%;
	max-width:100%;
}

.lower div.detail dl,
.lower div.detail02 dl{
	display:flex;
	flex-wrap: wrap;
	margin:20px 0;
	}
.lower div.detail dl dt{
	width:20%;
	}
.lower div.detail dl dd{
	width:80%;
	}

.lower div.detail02 dl dt{
	width:20%;
	}
.lower div.detail02 dl dd{
	width:80%;
	}

/*FAQコーナー*/

.lower div.faq-area ul li {
	padding:30px 0;
	border-bottom:1px solid #ccc;
}

.lower div.faq-area ul li p.question {
	position:relative;
	display:block;
	font-size:1.3em;
	line-height:1.7em;
	color:#966f32;
	text-decoration:none;
	padding:0 0 20px 20px;
}

.lower div.faq-area ul li p.question::before{
	position: absolute;
	content: "";
	top: 12px;
	left: 0;
	border: 8px solid transparent;
	border-top: 14px solid #966f32;
}


/*======================================================
404 styles
========================================================*/

.error {
	text-align: center;
	margin: 60px 1em;
}

.error img {
	width: 40%;
}


.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}