@charset "UTF-8";

/* base styles */
html{
	font-size:62.5%;/* 10px */
}
body {
	background:transparent;
	min-width:1100px;	/* 横スクロールバーの発生する幅を指定 */
	padding:0;
	margin:0;
	color:#333333;
	font-family: 'Noto Sans JP', 'メイリオ', Meiryo, Verdana,  "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
	font-size:15px;
	font-size:1.5rem;/* 13px */
	text-align:left;
	line-height:2;
	letter-spacing:0;
	word-wrap:break-word;
	-webkit-text-size-adjust:100%;
}
.sp{
	display:none;
}
.display_i-b{
	display: inline-block;
}
.bs_b-box *,
.bs_b-box ::before,
.bs_b-box ::after{
	box-sizing: border-box;
}

/* Chromeのremバグ対策 */
body > header,
body > footer,
body > section,
body > article,
body > div{
	font-size:1.5rem;/* 13px */
}

/* a */
a:link {
	color:#4d1606;
	-webkit-tap-highlight-color:rgba(255,255,255,0.3);	/* スマートフォンサイトでタップした際の色の指定 */
	text-decoration:underline;
}
a:visited {
	color:#4d1606;
	text-decoration:underline;
}
a:hover {
	color:#4d1606;
	text-decoration:none;
}
a img,
input[type="image"],
input[type="submit"],
input[type="button"]{
	-moz-transition:opacity 0.2s linear 0s;
	-webkit-transition:opacity 0.2s linear 0s;
	-ms-transition:opacity 0.2s linear 0s;
	-o-transition:opacity 0.2s linear 0s;
	transition:opacity 0.2s linear 0s;
	cursor:pointer;
}
a img{
	background:rgba(255,255,255,0.01);
}
a:hover img,
input[type="image"]:hover,
input[type="submit"]:hover,
input[type="button"]:hover{
	background-color:transparent;
	opacity:0.7;
	filter:alpha(opacity=70);
}
@media screen and (min-width:769px){
	a.tel-link,
	a[href^="tel:"]{
		color: inherit;
		font: inherit;
		text-decoration: none;
		pointer-events: none;
	}
}

.link_file{
	background:url(../img/icon_file.svg) no-repeat center left;
	background-size:19px 21px;
	padding-left:28px;
	margin-top:20px;
}

/* margin paddingのクラス（任意で追加・削除） */
.pT30 {
	padding-top:30px!important;
}
.mT10 {
	margin-top:10px!important;
}
.mR0 {
	margin-right:0px!important;
}
.mR5 {
	margin-right:5px!important;
}
.mR10{
	margin-right:10px!important;
}
.mR20 {
	margin-right:20px!important;
}
.mR65 {
	margin-right:65px!important;
}
.mR1em {
	margin-right:1em!important;
}
.mR2em {
	margin-right:2em!important;
}
.mB0{
	margin-bottom:0px!important;
}
.mB5 {
	margin-bottom:5px!important;
}
.mB10 {
	margin-bottom:10px!important;
}
.mB15 {
	margin-bottom:15px!important;
}
.mB20 {
	margin-bottom:20px!important;
}
.mB25 {
	margin-bottom:25px!important;
}
.mB30 {
	margin-bottom:30px!important;
}
.mB35 {
	margin-bottom:35px!important;
}
.mB40{
	margin-bottom:40px!important;
}
.mB45 {
	margin-bottom:45px!important;
}
.mB50 {
	margin-bottom:50px!important;
}
.mB55 {
	margin-bottom:55px!important;
}
.mB70 {
	margin-bottom:70px!important;
}
.mL10{
	margin-left:10px!important;
}
.mL25{
	margin-left:25px!important;
}

/* テキスト色（任意で追加・削除） */
.txtRed {
	color:#F40000!important;
}

/* テキスト書式（任意で追加・削除） */
.txt_c{
	text-align:center;
}
.txt_r{
	text-align:right;
}
.txt_l{
	text-align:left!important;
}
.txt_ind{
	text-indent:-1em;
	padding-left:1em;
}
.txt_b{
	font-weight:bold;
}
.font17{
	font-size:17px;
}

/* float */
.c_b{
	clear:both;
}
.r{
	float:right;
}
.l{
	float:left;
}

/* form（任意で編集） */
input[type="text"],
input[type="number"],
input[type="email"],
input[type="tel"],
input[type="password"]{
	width:100%;
	height:45px;
	line-height:20px;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	border: solid 1px #9fa0a0;
	background-color:#fff;
}
input[type="number"]{
	text-align:right;
}
select{
	height:20px;
	line-height:20px;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}
textarea{
	height:200px;
	width:100%;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	border: solid 1px #9fa0a0;
	background-color:#fff;
	ime-mode:active;
}
.ime_a{
	ime-mode:active;
}
.ime_i{
	ime-mode:inactive;
}
.ime_d{
	ime-mode:disabled;
}
/* clearfix */
.cf:after ,
.clearfix:after {
	content:".";
	display:block;
	height:0;
	clear:both;
	font-size:0.1px;
	line-height:0;
	overflow:hidden;
	visibility:hidden;
}
.cf ,
.clearfix {
	display:inline-block;
}
/* Hides from IE-mac \*/
* html .cf ,
* html .clearfix {
	height:1%;
	overflow:visible;
}
.cf ,
.clearfix {
	display:block;
}
.cf:after,
header:after,
footer:after,
section:after,
article:after,
div:after,
ul:after,ol:after{
	content:"";
	display:block;
	clear:both;
}

/* プルダウンメニュー（必要の応じて追記） */
.pulldown{
	position:relative;
}
.pulldown ul{
	display:none;
	position:absolute;
	top:100%;
	left:0;
}
/* アコーディオンメニュー（必要の応じて追記） */
.accordion_close,.accordion_open{
	cursor:pointer;
	-webkit-tap-highlight-color:rgba(255,255,255,0.3);	/* スマートフォンサイトでタップした際の色の指定 */
}
.accordion_close{

}
.accordion_open{

}
img.horizontally_long{
	width: 100%!important;
  height: auto!important;
}
img.vertically_long{
	width: auto!important;
	height: 100%!important;
}
img.square{
	width: auto!important;
	height: 100%!important;
}
/***------------
header
------------***/
#headar{
	width:100%;
	margin:0 auto;
}
#headIn{
	width:1090px;
	margin:0 auto;
	padding:30px 0 60px;
	position: relative;
}
#headIn .logo{
	width:280px;
	float:left;
	padding: 5px 0;
	position: absolute;
}
/*#headIn .logo img{
	width:240px;
	padding-top: 20px;
	margin-left:15px;
}*/
#headIn .logo .menulogo a{
	font-family: 'Yu Mincho Regular','YuMincho','Yu Mincho','游明朝体','ＭＳ 明朝', 'MS Mincho',sans-serif;
	font-size: 3.0rem;
  font-weight: bold;
	text-decoration: none;
	line-height: 1;
}
/*nav*/
#nav{
	float:right;
	width:100%;
	text-align:right;
}
#nav #subNav{
	margin-bottom: 40px;
	margin-top: 10px;
}
#nav #subNav li{
	font-size:13px;
	font-size:1.3rem;
	display:inline-block;
	padding:0 15px;
	border-right:solid 1px #231815;
}
#nav #subNav li:first-child{
	border-left:solid 1px #231815;
}
#nav #mainNav li{
	font-size:17px;
	font-size:1.7rem;
	display:inline-block;
	margin-left:20px;
	position: relative;
}
#nav #mainNav li.sp{
	display: none;
}
#nav #mainNav li:first-child{
	margin-left:0;
}
#nav #mainNav li a{
	text-decoration:none;
}
#nav #mainNav li.current a{
	text-decoration:none;
	color:#9fa0a0;
}
#nav #mainNav li ul{
	width: 170px;
	padding: 5px 10px;
	box-sizing: border-box;
  position: absolute;
  top: 100%;
	left: 50%;
	background: #333;
	z-index: 100;
	transition: all ease .3s;
	visibility: hidden;
	opacity: 0;
  transform: translateX(-50%);
}
#nav #mainNav li ul li{
	width: 100%;
	display: block;
	transition: all ease .3s;
}
#nav #mainNav li ul li:not(:last-of-type){
	border-bottom: solid 1px #595757;
}
#nav #mainNav li ul li.sp,
#nav #mainNav li span.sp{
	display: none;
}
#nav #mainNav li:hover ul{
	width: 170px;
	transition: all ease .3s;
	opacity: 1;
	visibility: visible;
}
#nav #mainNav li:hover ul li{
	transition: all ease .3s;
	margin-left: 0;
	text-align: center;
}
#nav #mainNav li ul li a{
	color: #fff;
	padding: 5px 0;
	box-sizing: border-box;
	text-align: center;
	display: block;
}
/***------------
footer
------------***/
#footer{
	width:100%;
	margin:0 auto;
}
#footerIn1{
	background-color:#efefef;
	padding:50px 0;
	border-top:solid 3px #6e0f0b;
}
#footerIn1 > div.cf,
#footerIn2 > div.cf{
	width:1000px;
	margin:0 auto;
}
#footerIn1 > div.cf > div.info{
	float:left;
	position: relative;
}
#footerIn1 > div.cf > div.info p.logo{
	font-size:20px;
	font-size:2.0rem;
	font-weight:bold;
	margin-bottom:20px;
	line-height: 1.5;
}
#footerIn1 > div.cf > div.info ul{
	margin-bottom:20px;
	/* text-indent: -38px; */
	/* padding-left: 38px; */
}
.footer__fb-link{
	position: absolute;
	top: 0;
	right: 0;
	border-radius: 50%;
	overflow: hidden;
}
.footer__fb-link a{
	text-decoration: none;
}
#footerIn1 > div.cf > div.f_contact{
	float:right;
}
#footerIn1 > div.cf > div.f_contact p.tit{
	font-size:20px;
	font-size:2.0rem;
	margin-bottom:20px;
}
#footerIn1 > div.cf > div.f_contact p.btn {
	font-size:18px;
	font-size:1.8rem;
	width: 250px;
	height: 60px;
	background-color: #6e0f0b;
	display: table;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}
#footerIn1 > div.cf > div.f_contact p.btn a {
	width: 100%;
	height: 100%;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	font-weight: bold;
	text-decoration: none;
	color: #fff;
}
#footerIn2{
	padding:20px;
	background-color:#6e0f0b;
	font-size:13px;
	font-size:1.3rem;
}
#footerIn2 > div.cf .f_subNav{
	width:300px;
	float:left;
}
#footerIn2 > div.cf .f_subNav li{
	display:inline-block;
	margin-left:20px;
}
#footerIn2 > div.cf .f_subNav li a{
	color:#fff;
}
#footerIn2 > div.cf .f_subNav li:first-child{
	margin-left:0;
}
#footerIn2 > div.cf .copy{
	float:right;
	text-align:right;
	color:#fff;
	font-size: 1.1rem;
}
/***------------
topimg
------------***/
#topimg{
	width:100%;
	min-width: 1000px;
	margin:0 auto;
}
#topimg > div.topimgin{
	width: 100%;
	margin: 0 auto;
}
#topimg > div.topimgin > div{
	width:100%;
	margin:0 auto;
	text-align:center;
	vertical-align:middle;
}
#topimg > div.topimgin > div.bx-wrapper{
	border: none;
}
#topimg > div.topimgin > div h2{
	text-align: left;
	font-size:50px;
	font-size: 5.0rem;
	font-weight: bold;
	font-family: 'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','ＭＳ 明朝', 'MS Mincho',sans-serif;
	color: #ffffff;
	opacity: 0.9;
	text-shadow: 0px 0px 20px #000;
	letter-spacing: .04em;
	line-height: 1.5;
}
#topimg > div.topimgin > div p{
	font-size:16px;
	font-size:1.6rem;
	line-height:2;
}
/***------------
top-bnrlist
------------***/
#top-bnrlist{
	width: 100%;
	padding: 30px 0;
	box-sizing: border-box;
	background-color: #efefef;
}
#top-bnrlist ul{
	display: flex;
	flex-flow: row wrap;
	align-items: flex-end;
	justify-content: center;
  width: 557px;
	margin: 0 auto;
}
#top-bnrlist ul li{
	flex: 0 1 169px;
	margin-bottom: 20px;
}
#top-bnrlist ul li:not(:nth-of-type(3n)){
	margin-right: 0;
	/* margin-right: 25px; */
}

/***------------
mainimg
------------***/
#mainimg{
	width:100%;
	min-width: 1000px;
	margin:0 auto 110px;
}
#mainimg.facilityimg{
	background: url(../facility/img/mainimg_facility.jpg) no-repeat center top;
	background-position: center center;
	background-size: cover;
}
#mainimg.aboutimg{
	background: url(../about/img/mainimg_about.jpg) no-repeat center top;
	background-position: center center;
	background-size: cover;
}
#mainimg.guideimg{
	background: url(../guide/img/mainimg_guide.jpg) no-repeat center top;
	background-position: center center;
	background-size: cover;
}
#mainimg.productsimg{
	background: url(../events/img/mainimg_products.jpg) no-repeat center top;
	background-position: center center;
	background-size: cover;
}
#mainimg.contactimg{
	background: url(../contact/img/mainimg_contact.jpg) no-repeat center top;
	background-position: center center;
	background-size: cover;
}
#mainimg.newsimg{
	background: url(../news/img/mainimg_news.jpg) no-repeat center top;
	background-position: center center;
	background-size: cover;
}
#mainimg.privacyimg{
	background: url(../privacy/img/mainimg_privacy.jpg) no-repeat center top;
	background-position: center center;
	background-size: cover;
}
#mainimg.dokurakuginimg{
	background: url(../dokurakugin/img/mainimg_dokurakugin.jpg) no-repeat center top;
	background-position: center center;
	background-size: cover;
}
#mainimg.pamphletimg{
	background: url(../pamphlet/img/mainimg_pamphlet.jpg) no-repeat center top;
	background-position: center center;
	background-size: cover;
}
#mainimg.associationimg{
	background: url(../association/img/mainimg_association.jpg) no-repeat center top;
	background-position: center center;
	background-size: cover;
}
#mainimg.volunteerimg{
	background: url(../volunteer/img/mainimg_volunteer.jpg) no-repeat center top;
	background-position: center center;
	background-size: cover;
}
#mainimg.grantimg{
	background: url(../grant/img/mainimg_grant.jpg) no-repeat center top;
	background-position: center center;
	background-size: cover;
}
#mainimg.kaihoimg{
	background: url(../kaiho/img/mainimg_kaiho.jpg) no-repeat center top;
	background-position: center center;
	background-size: cover;
}
#mainimg > div.mainimgin{
		width: 1000px;
		height: 300px;
		margin: 0 auto;
		display:table;
}
#mainimg > div.mainimgin > div{
	width:1000px;
	margin:0 auto;
	text-align:center;
	display:table-cell;
	vertical-align:middle;
}
#mainimg > div.mainimgin > div h1,
#mainimg > div.mainimgin > div .mainimg-title{
	font-size:40px;
	font-size:4.0rem;
	font-weight:normal;
	text-shadow: -2px 0px 5px rgba(0,0,0,0.3);
  color: #fff;
}
/***------------
contents
------------***/
#contents{
	width:100%;
	margin:0 auto;
}
#contents .title1{
	text-align:center;
	padding-bottom:30px;
	position:relative;
	margin-bottom:50px;
}
#contents .title1:before{
  content:"";
  position: absolute;
  left: 50%;
  bottom: 0;
  display: inline-block;
  width: 80px;
  height: 3px;
  -moz-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color:#6e0f0b;
}
#contents .title1 h1,
#contents .title1 h2{
	font-size:35px;
	font-size:3.5rem;
	font-weight:normal;
	line-height: 1;
	margin-bottom:20px;
}
#contents .title1 h1 span,
#contents .title1 h2 span{
	font-size:15px;
	font-size:1.5rem;
	color:#7A7A7A;
	letter-spacing:0.2rem;
}
#contents .title2{
	color: #6e0f0b;
	font-size:40px;
	font-size:4.0rem;
	font-weight:normal;
	text-align:center;
	margin-bottom:40px;
	line-height: 1;
	position:relative;
	padding-bottom:40px;
}
#contents .title2:before{
  content:"";
  position: absolute;
  left: 50%;
  bottom: 0;
  display: inline-block;
  width: 80px;
  height: 3px;
  -moz-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color:#6e0f0b;
}
#contents .title2 span{
	font-size:15px;
	font-size:1.5rem;
	color:#ab7340;
	letter-spacing:0.2rem;
}
#contents .title3{
	font-size:40px;
	font-size:4.0rem;
	font-weight:normal;
	text-align:center;
	margin-bottom:40px;
	line-height: 1;
	position:relative;
}
#contents .title3 span{
	font-size:15px;
	font-size:1.5rem;
	color:#7A7A7A;
	letter-spacing:0.2rem;
}
#contents .wid,
#contents .wid2{
	width:1000px;
	margin:0 auto;
}
#contents .linkbtn1{
	font-size:18px;
	font-size:1.8rem;
	width: 250px;
	height: 60px;
	background-color: #6e0f0b;
	display: table;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}
#contents .linkbtn1.current{
	background-color: #666;
}
#contents .linkbtn1 a {
	width: 100%;
	height: 100%;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	font-weight: bold;
	text-decoration: none;
	color: #fff;
}
/***------------
list
------------***/
#list ul{
	margin-bottom:50px;
}
#list ul li{
	width:300px;
	float:left;
	/* box-shadow */
	-moz-box-shadow:2px 3px 5px 4px rgb(90%,90%,90%);
	-webkit-box-shadow:2px 3px 5px 4px rgb(90%,90%,90%);
	box-shadow:2px 3px 5px 4px rgb(90%,90%,90%);
	/* border-radius */
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	border-radius:10px;
	margin-left:50px;
}
#list ul li a{
	text-decoration:none;
}
#list ul :nth-child(3n+1) li{
	margin-left:0;
}
#list ul li a > div,
#list ul li > div{
	width:300px;
	height:200px;
}
#list ul li a > div img,
#list ul li > div img{
	-webkit-border-radius: 10px 10px 0 0 / 10px 10px 0 0;
	-moz-border-radius: 10px 10px 0 0 / 10px 10px 0 0;
	border-radius: 10px 10px 0 0 / 10px 10px 0 0;
	width:100%;
	height:100%;
}
#list ul li dl{
	padding:25px 19px;
	text-align:center;
}
#list ul li dl dt{
	font-size:18px;
	font-size:1.8rem;
	font-weight:bold;
	margin-bottom:10px;
}
/***------------
top
------------***/
#contents.top .section1{
	background-color:#efefef;
	padding:90px 0;
}
#contents.top .section1 .toplist1 > div{
	width:300px;
	margin-left:50px;
	float:left;
	text-align:center;
}
#contents.top .section1 .toplist1 > div > div.icon img{
	width:100%;
	opacity: 1!important;
}
#contents.top .section1 .toplist1 > div:first-child{
	margin-left:0;
}
#contents.top .section1 .toplist1 > div dl dt{
	font-size:18px;
	font-size:1.8rem;
	font-weight:bold;
	margin-bottom:25px;
}
#contents.top .section1 .toplist1 .icon{
	position: relative;
}
#contents.top .section1 .toplist1 .icon span{
	background: rgba(0,0,0,0.5);
	width: 95%;
	height: 95%;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	color: #fff;
	font-size: 20px;
	font-size: 2.0rem;
}
#contents.top .section1 .toplist1 .icon span:after{
	content: none;
}
#contents.top .section2{
	padding:90px 0;
  background-color: #efefef;
}
#contents.top .section2 .toplist1{
	margin-bottom: 40px;
}
#contents.top .section2 .toplist1 > div{
	width:300px;
	margin-left:50px;
	float:left;
	text-align:center;
}
#contents.top .section2 .toplist1 a{
	text-decoration: none;
}
#contents.top .section2 .toplist1 .icon img{
	width:100%;
	margin-bottom:30px;
}
#contents.top .section2 .toplist1 > div:first-child{
	margin-left:0;
}
#contents.top .section2 .toplist1 > div dl dt{
	font-size:18px;
	font-size:1.8rem;
	font-weight:bold;
	margin-bottom:25px;
}
#contents.top .section3{
	padding:60px 0;
}
#contents.top .section3 .business{
	width:1000px;
	height:450px;
	margin:0 auto;
	position:relative;
}
#contents.top .section3 .business .busititle{
	font-size:40px;
	font-size:4.0rem;
	font-weight:normal;
	margin-bottom:40px;
	line-height: 1;
}
#contents.top .section3 .business .busititle span{
	font-size:15px;
	font-size:1.5rem;
	color:#7A7A7A;
	letter-spacing:0.2rem;
}
#contents.top .section3 .business p{
	margin-bottom:60px;
}
#contents.top .section3 .business .busiin:nth-child(2n-1){
	width:450px;
	position:absolute;
	top: 50px;
	right: 0px;
}
#contents.top .section3 .business .busipho:nth-child(2n-1){
	width:600px;
	height:450px;
	position:absolute;
	right:0;
	top:50px;
}
#contents.top .section3 .business .busipho img{
	width:100%;
	padding-top: 48px;
}
#contents.top .section4{
	padding:90px 0;
}
/*----topnews----*/
#contents.top #topnews li{
	width:450px;
	padding-bottom:35px;
	margin-bottom:35px;
	border-bottom:solid 1px #dcdddd;
	float:left;
}
#contents.top #topnews li:nth-child(2n+1){
	clear:both;
}
#contents.top #topnews li:nth-child(2n){
	float:right;
}
#contents.top #topnews li > div{
	float:left;
	width:180px;
	height:135px;
	margin-right:30px;
}
#contents.top #topnews li > div img{
	width:100%;
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	border-radius:10px;
}
#contents.top #topnews li > div+dl{
	padding-left: 210px;
}
#contents.top #topnews li > dl dt{
	margin-bottom:20px;
}
#contents.top #topnews li > dl dt time{
	display: block;
}
#contents.top #topnews li > dl dt a{
	font-size:18px;
	font-size:1.8rem;
	font-weight:bold;
	color:#333333;
}
#contents.top #topnews li > dl dt span{
	font-size:13px;
	font-size:1.3rem;
	color:#9fa0a0;
}
/***------------
events
------------***/
#contents.events .section1{
	margin-bottom:100px;
}
#contents.events .section1 .prolist li{
	width:300px;
	height:290px;
	float:left;
	overflow:hidden;
	position:relative;	/* 相対位置指定 */
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	border-radius:10px;
	margin:50px 50px 0 0;
}
#contents.events .section1 .prolist li:nth-of-type(-n+3) {
	margin-top: 0;
}
#contents.events .section1 .prolist li:nth-of-type(3n) {
	margin-right: 0;
}
#contents.events .section1 .prolist li img{
	width:100%;
}
#contents.events .section1 .prolist li.bgnon{
	background-color:#333333;
}
#contents.events .section1 .prolist li .mask{
	width:100%;
	height:100%;
	/*position:absolute;	/* 絶対位置指定 */
	/*top:0;
	left:0;
	opacity:0;	/* マスクを表示しない */
	/*background-color:rgba(0,0,0,0.4);	/* マスクは半透明 */
	/*-webkit-transition:	all 0.2s ease;
	transition:all 0.2s ease;*/
	display:table;
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	border-radius:10px;
}
#contents.events .section1 .prolist li:hover .mask {
	opacity:1;	/* マスクを表示する */
}
#contents.events .section1 .prolist li dl.caption{
	text-align:center;
	color:#fff;
	display:table-cell;
	vertical-align:middle;
	padding:0 20px;
}
#contents.events .section1 .prolist li dl.caption dt,
#contents.events .section1 .prolist li dl.caption_bgnon dt{
	font-size:18px;
	font-size:1.8rem;
	font-weight:bold;
	margin-bottom:20px;
}
#contents.events .section1 .prolist li dl.caption dd,
#contents.events .section1 .prolist li dl.caption_bgnon dd{
	font-size:13px;
	font-size:1.3rem;
}
#contents.events .section1 .prolist li .bg_nonin{
	width:100%;
	height:100%;
	display:table;
}
#contents.events .section1 .prolist li:hover .bg_nonin{
	display:none;
}
#contents.events .section1 .prolist li dl.caption_bgnon{
	text-align:center;
	color:#fff;
	display:table-cell;
	vertical-align:middle;
	padding:0 20px;
}
/***------------
contact
------------***/
#contents.contact .section1{
	margin-bottom:100px;
}
#contents.contact .section1 .contactform div.l{
	width:415px;
	padding-top:20px;
}
#contents.contact .section1 .contactform div.l p{
	margin-bottom:30px;
}
#contents.contact .section1 .contactform div.l ul{
	border-top:solid 1px #dcdddd;
	border-bottom:solid 1px #dcdddd;
	padding:30px 0;
}
#contents.contact .section1 .contactform div.l ul li{
	font-size:24px;
	font-size:2.4rem;
	padding-left:50px;
}
#contents.contact .section1 .contactform div.l ul li.tel{
	background:url(../img/icon_tel.svg) no-repeat center left;
	background-size:40px;
	margin-bottom:30px;
}
#contents.contact .section1 .contactform div.l ul li.fax{
	background:url(../img/icon_fax.svg) no-repeat center left;
	background-size:40px;
}
#contents.contact .section1 .contactform div.r{
	width:540px;
	padding:30px;
	box-sizing:border-box;
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	border-radius:10px;
	background-color:#efefef;
}
#contents.contact .section1 .contactform div.r dl dt{
	font-size:18px;
	font-size:1.8rem;
	margin-bottom:10px;
}
#contents.contact .section1 .contactform div.r dl.kakunin dt{
	font-weight:bold;
}
#contents.contact .section1 .contactform div.r dl dd{
	margin-bottom:15px;
}
#contents.contact .section1 .contactform div.r p.contact_btn,
#contents.contact .section1 .contactform div.r div.fmbtn2 p{
	font-size:18px;
	font-size:1.8rem;
	width: 210px;
	height: 50px;
	background-color: #333333;
	display: table;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}
#contents.contact .section1 .contactform div.r p.contact_btn a,
#contents.contact .section1 .contactform div.r div.fmbtn2 p a{
	width: 100%;
	height: 100%;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	font-weight: bold;
	text-decoration: none;
	color: #fff;
}
#contents.contact .section1 .contactform div.r div.fmbtn2 p.fmbtn_b{
	width: 230px;
	float:left;
}
#contents.contact .section1 .contactform div.r div.fmbtn2 p.fmbtn_n{
	width: 230px;
	float:right;
}
/***------------
news
------------***/
#contents.news .section1{
	margin-bottom:100px;
}
#contents.news #newsinfo li{
	padding:60px;
	box-sizing:border-box;
	border-bottom:solid 1px #dcdddd;
}
#contents.news #newsinfo li:first-child{
	padding-top:0;
}
#contents.news #newsinfo li > div{
	float:left;
	width:300px;
	height:225px;
	margin-right:30px;
}
#contents.news #newsinfo li > div img{
	width:100%;
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	border-radius:10px;
}
#contents.news #newsinfo li > div+dl{
	padding-left: 330px;
}
#contents.news #newsinfo li > dl dt{
	margin-bottom:20px;
	font-size:24px;
	font-size:2.4rem;
	font-weight:bold;
	color:#6e0f0b;
}
#contents.news #newsinfo li > dl dt time{
	display: block;
	font-size: 1.8rem;
}
#contents.news #newsinfo li > dl dd p{
	margin-bottom:30px;
}
#contents.news #newsinfo li > dl dt span{
	font-size:13px;
	font-size:1.3rem;
	color:#9fa0a0;
	font-weight:normal;
}
#contents.news #newsinfo li > dl dd.image{
	margin-bottom:20px;
}
#contents.news #newsinfo li > dl dd.image img{
	width: auto;
	max-width: 600px;
}
#contents.news #newsinfo li > dl dd.image p{
	margin: 5px 0 0;
}
#contents.news #newsinfo li > dl dd.link{
	background:url(../img/icon_link.svg) no-repeat center left;
	background-size:19px;
	padding-left:28px;
	margin-top:20px;
}
#contents.news #newsinfo li > dl dd.file{
	background:url(../img/icon_file.svg) no-repeat center left;
	background-size:19px 21px;
	padding-left:28px;
	margin-top:20px;
}
#contents.news #newsinfo li > dl dd.link a,
#contents.news #newsinfo li > dl dd.file a{
	font-weight:bold;
	color:#6e0f0b;
}
#paging{
	padding:0 100px;
	margin-top:50px;
	letter-spacing:-1em;
	word-spacing:-1em;
	text-align:center;
	position:relative;
}
:root #paging{
	font-size:0px;
	letter-spacing:-1px;
	word-spacing:-1px;
}
#paging li{
	width:30px;
	height:30px;
	margin:0 15px;
	font-size:14px;
	font-size:1.4rem;
	letter-spacing:0;
	word-spacing:normal;
	display:inline-block;
	*display:inline;
	*zoom:1;
}
#paging li a{
	background:#FFFFFF;
	width:26px;
	height:26px;
	border:solid 2px #6e0f0b;
	color:#6e0f0b;
	text-align:center;
	text-decoration:none;
	line-height:26px;
	display:block;
}
#paging li.prev,
#paging li.next{
	width:100px;
	margin:0;
	position:absolute;
	top:0;
}
#paging li.prev{
	left:0;
}
#paging li.next{
	right:0;
}
#paging li.prev a,
#paging li.next a{
	width:96px;
}
#paging li.current a,
#paging li a:hover{
	background:#6e0f0b;
	color:#FFFFFF;
	font-weight:bold;
}

/*20180509追記*/
h1{
	font-size: 13px;
	font-weight: normal;
	display: inline;
}
#topimg .topimgin{
	position:relative;
}
#topimg .topimgin ul.slider1 li{
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	width:100%;
	height:600px;
}
#topimg .topimgin ul.slider1 li.slide01{
	background:url(../img/top_img1.jpg) no-repeat center center;
	background-size:cover;
}
#topimg .topimgin ul.slider1 li.slide02{
	background:url(../img/top_img2.jpg) no-repeat center center;
	background-size:cover;
}
#topimg .topimgin ul.slider1 li.slide03{
	background:url(../img/top_img3.jpg) no-repeat center center;
	background-size:cover;
}

#topimg .topimgin .catch{
	position:absolute;
	bottom: 50px;
	right: 50px;
	z-index:1000;
	width: auto;
}
#topimg .topimgin .catch h2 .pc-line{
	display: block;
}
@media screen and (min-width:769px){
	#topimg .topimgin .catch h2 .pc-line:first-child{
		text-indent: -2.08em;
	}
	#topimg .topimgin .catch h2 .pc-line:nth-child(2){
		text-indent: -1.04em;
	}
}
#contents.top h2 a{
	color:#333333;
	text-decoration: none;
	-webkit-transition: 0.8s;
	-moz-transition: 0.8s;
	-o-transition: 0.8s;
	-ms-transition: 0.8s;
	transition: 0.8s;
}
#contents.top h2 a:link{
	text-decoration: none;
	color:#333333;
}
#contents.top h2 a:visited{
	text-decoration: none;
	color:#333333;
}
#contents.top h2 a:hover{
	color:#cccccc;
}
#contents.top .subtit{
	font-size:17px;
	text-align:center;
}
#contents.top .top-btnlist{
	margin-bottom:0px;
	padding-bottom:0px;
	display:flex;
	justify-content:center;
	text-align: center;
}
#contents.top .top-btnlist p.linkbtn1:last-child{
	margin-left:30px;
}
/*
#contents.top .section2 .title1 p.linkbtn1{
	margin: 60px auto 0;
}
*/
#contents.top .section3 .business .busiin:nth-child(2n){
	width:450px;
	position:absolute;
	right:0;
	top: 100px;
	left: -100px;
}
#contents.top .section3 .business .busipho:nth-child(2n){
	width:600px;
	height:450px;
	position:absolute;
	left:-100px;
	top:0;
}
#contents.events .section1,
#contents.events .section2{
	margin-bottom:150px;
}
#contents.events .title1 h2{
	color: #6e0f0b;
	font-size: 3.4rem;
	line-height: 1.5;
	margin-bottom: -20px;
}
#contents.events .facility-list{
	margin:0 auto 50px;
	display: flex;
	justify-content: center;
	flex-flow: row wrap;
}
#contents.events .facility-list li{
	width:300px;
	/* box-shadow */
	-moz-box-shadow:2px 3px 5px 4px rgb(90%,90%,90%);
	-webkit-box-shadow:2px 3px 5px 4px rgb(90%,90%,90%);
	box-shadow:2px 3px 5px 4px rgb(90%,90%,90%);
	/* border-radius */
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	border-radius:10px;
	margin-top:50px;
	margin-left:50px;
	overflow: hidden;
}
#contents.events .facility-list li.facility-link{
	box-shadow: none;
	display: flex;
  justify-content: flex-start;
  flex-flow: row wrap;
  align-items: center;
	min-height: 416px;
}
#contents.events .facility-list li.facility-link .linkbtn1{
	width: 100%;
}
#contents.events .facility-list li:nth-child(-n+3){
	margin-top:0;
}
#contents.events .facility-list li:nth-child(3n-2){
	margin-left:0;
}
#contents.events .facility-list li a{
	text-decoration:none;
}
#contents.events .facility-list li a > div{
	width:300px;
	height:200px;
	position: relative;
	background: #f2f2f2;
}
#contents.events .facility-list li a > div img{
	/* -webkit-border-radius: 10px 10px 0 0 / 10px 10px 0 0;
	-moz-border-radius: 10px 10px 0 0 / 10px 10px 0 0;
	border-radius: 10px 10px 0 0 / 10px 10px 0 0; */
	width:100%;
	height:100%;
	position: absolute;
	top: 0;
	right:0;
	left: 0;
	bottom: 0;
	margin: auto;
}
#contents.events .facility-list li dl{
	padding:25px 19px;
	text-align:center;
}
#contents.events .facility-list li dl dt{
	font-size:18px;
	font-size:1.8rem;
	font-weight:bold;
	margin-bottom:10px;
}
#contents.events .facility-list li dl dd{
	text-align:center;
}
#contents.events .facility-link{
	display: flex;
	margin: 0 auto 50px;
}
#contents.events .facility-link li{
	flex: 0 0 244px;
	font-size: 1.6rem;
}
#contents.events .facility-link li:not(:last-child){
	margin-right: 8px;
}
#contents.facility .section0{
	margin-bottom: 100px;
}
#contents.privacy .section1{
	margin-bottom: 100px;
}
#contents.privacy div.paragraph{
	margin-bottom:50px;
}
#contents.privacy h2{
	margin:50px 0 10px;
}
#contents.privacy p{
	margin-bottom:10px;
}
h1{
	line-height:38px;
}
#mainimg .mainimgin .category{
	font-size:20px;
}
#contents.events_page .section{
	display: table;
	margin: 0 auto 150px;
}
#contents.events_page .topimg{
	width:900px;
	margin: 0 auto;
	text-align: center;
	margin-bottom: 30px;
}
#contents.events_page .topimg img{
		max-width:600px;
}
#contents.events_page .topimg .slick-slide img{
	margin:0 auto;
	max-width:600px;
}
#contents.events_page h2.title2{
	font-size: 2.5rem;
	line-height: 35px;
}
#contents.events_page .section table{
	width:900px;
	margin: 0 auto;
}
#contents.events_page .section tr{
	font-size:16px;
	font-size:1.6rem;
	border-top:solid 1px #dcdddd;
}
#contents.events_page .section tr:last-child{
	border-bottom:solid 1px #dcdddd;
}
#contents.events_page .section tr th{
	float:left;
	width:280px;
	padding:20px 20px 20px 80px;
	box-sizing:border-box;
	font-weight:bold;
}
#contents.events_page .section tr td{
	padding:20px 60px 20px 20px;
	width:540px;
	float:right;
}
#contents.events_page .section .img-list{
	display: flex;
	justify-content: center;
	flex-flow: row wrap;
	margin-top: 20px;
}
#contents.events_page .section .img-list:after{
	content: none;
}
#contents.events_page .section .img-list > div{
	flex: 0 1 490px;
	max-width: 490px;
	margin-bottom: 20px;
}
#contents.events_page .section .img-list > div:not(:nth-of-type(2n)){
	margin-right: 20px;
}
#contents.events_page .section .img-list > div img{
	max-width: 490px;
}
#contents.events_page .section .link-list{
	margin-bottom: 30px;
}
#contents.events_page .section .link-list .link{
	background:url(../img/icon_link.svg) no-repeat center left;
	background-size:19px;
	padding-left:28px;
	margin-top:15px;
}
#contents.events_page .section .link-list .file{
	background:url(../img/icon_file.svg) no-repeat center left;
	background-size:19px 21px;
	padding-left:28px;
	margin-top:15px;
}
#contents.events_page .section .link-list .link a,
#contents.events_page .section .link-list .file a{
	font-weight:bold;
	color:#6e0f0b;
}
#contents.events_page ul.pglink{
	width:900px;
	margin: -30px auto 80px;
}
#contents.events_page ul.pglink li{
	width: 172px;
	float: left;
	margin-right: 17px;
	padding: 6px 20px;
	line-height: 23px;
	font-size:16px;
}
#contents.events_page ul.pglink li:last-child{
	margin-right:0px;
}
#contents.events_page .mapbtn{
	width: 40px;
	text-align: center;
	background-color: #333333;
	color: #ffffff;
	border-radius: 4px;
	padding: 2px 17px;
	font-size: 13px;
	font-weight: bold;
	margin-left:15px;
}
#contents.events_page .mapbtn a:link{
	color: #ffffff;
	text-decoration: none;
}
#contents.events_page .mapbtn a:visited{
	color: #ffffff;
	text-decoration: none;
}
#contents.events_page .mapbtn:hover,
#contents.events_page ul li.linkbtn1:hover{
	color: #ffffff;
	text-decoration: none;
	background-color: #63a111;
}
/***------------
category
------------***/
#contents.category {
	padding-bottom: 80px;
}
#contents.category .catch{
	width: 1000px;
	margin: 0 auto 50px;
}
#contents.category .section{
	margin-bottom: 70px;
}
#contents.category .sub-text{
	text-align: center;
	margin-bottom: 20px;
}
#contents.category .section .category-list{
	display: flex;
	flex-flow: row wrap;
}
#contents.category .section .category-list li{
	flex: 0 1 324px;
	margin-bottom: 15px;
}
/* #contents.category .section .category-list li span */
#contents.category .section .category-list li a{
	display: block;
	padding: 10px;
	border: solid 1px #ccc;
	box-sizing: border-box;
  background: #f7f7f7;
}
#contents.category .section .category-list li:not(:nth-of-type(3n)){
	margin-right: 14px;
}
/*category_page*/
#contents.category_page{
	padding-bottom: 80px;
}
#contents.category_page .topimg{
	margin-bottom: 40px;
	text-align: center;
}
#contents.category_page .text-main{
	margin-bottom: 40px;
}
#contents.category_page .section:not(:last-of-type){
	margin-bottom: 60px;
	border-bottom: solid 1px #dcdddd;
}
#contents.category_page .section .img-list{
	display: flex;
	justify-content: center;
	flex-flow: row wrap;
	margin-top: 20px;
}
#contents.category_page .section .img-list:after{
	content: none;
}
#contents.category_page .section .img-list > div{
	flex: 0 1 490px;
	max-width: 490px;
	margin-bottom: 20px;
	text-align: center;
}
#contents.category_page .section .img-list > div:not(:nth-of-type(2n)){
	margin-right: 20px;
}
#contents.category_page .section .img-list > div img{
	max-width: 490px;
}
#contents.category_page .section .location{
	margin-bottom: 10px;
}
#contents.category_page .section .section-text{
	margin-bottom: 30px;
}
#contents.category_page .section .link-list{
	margin-bottom: 30px;
}
#contents.category_page .section .link-list .link{
	background:url(../img/icon_link.svg) no-repeat center left;
	background-size:19px;
	padding-left:28px;
	margin-top:15px;
}
#contents.category_page .section .link-list .file{
	background:url(../img/icon_file.svg) no-repeat center left;
	background-size:19px 21px;
	padding-left:28px;
	margin-top:15px;
}
#contents.category_page .section .link-list .link a,
#contents.category_page .section .link-list .file a{
	font-weight:bold;
	color:#6e0f0b;
}
#contents.category_page .text-main figure.image{
	text-align: center;
}
/***------------
facility
------------***/
#contents.facility .section1{
	margin-bottom:60px;
}
#contents.facility .section1 div.pho_l,
#contents.facility .section2 div.pho_l{
	text-align:center;
	margin-bottom:50px;
}
#contents.facility .section1 div.pho_l img,
#contents.facility .section2 div.pho_l img{
	width: 600px;
	margin: 0 auto;
}
#contents.facility .section1 dl.tb,
#contents.facility .section2 dl.tb{
	font-size:16px;
	font-size:1.6rem;
	border-top:solid 1px #dcdddd;
}
#contents.facility .section1 dl.tb dt,
#contents.facility .section2 dl.tb dt{
	float:left;
	width:400px;
	padding:20px 20px 20px 150px;
	box-sizing:border-box;
	font-weight:bold;
}
#contents.facility .section1 dl.tb dd,
#contents.facility .section2 dl.tb dd{
	padding:20px 20px 20px 400px;
	border-bottom:solid 1px #dcdddd;
}
#contents.facility .section1 div.wid{
	margin-bottom:80px;
}
#contents.facility{
	margin-bottom: 90px;
}
#contents.facility .section1 .wid .text{
	margin-bottom: 15px;
}
#contents.facility .section1 .wid .pho_m{
	text-align: center;
	margin: 0 auto 30px;
}
#contents.facility .section1 .wid ul{
	display: flex;
	justify-content: center;
}
#contents.facility .section1 .wid ul li{
	flex: 0 1 320px;
}
#contents.facility .section1 .wid ul li:not(:nth-of-type(3n)){
	margin-right: 20px;
}
#contents.facility .section1 .wid ul li img{
	width: 100%;
}
#contents.facility .section1 .wid ul li p{
	text-align: center;
}
#contents.facility .section2 .wid .text{
	margin-bottom: 15px;
}
#contents.facility .section2 .wid .pho_m{
	text-align: center;
	margin: 0 auto 30px;
}
#contents.facility .section2 .wid ul{
	display: flex;
	justify-content: center;
	flex-flow: row wrap;
}
#contents.facility .section2 .wid ul li{
	flex: 0 1 320px;
}
#contents.facility .section2 .wid ul li:not(:nth-of-type(3n)){
	margin-right: 20px;
}
#contents.facility .section2 .wid ul li img{
	width: 100%;
}
#contents.facility .section2 .wid ul li p{
	text-align: center;
}
#contents.facility .section2 .wid ul li{
	margin-bottom: 15px;
}
/***------------
guide
------------***/
#contents.guide{
	margin-bottom: 120px;
}
#contents.guide .section1{
	margin-bottom:60px;
}
#contents.guide .section0 dl.tb,
#contents.guide .section2 dl.tb{
	font-size:16px;
	font-size:1.6rem;
	border-top:solid 1px #dcdddd;
}
#contents.guide .section0 dl.tb dt,
#contents.guide .section2 dl.tb dt{
	float:left;
	width:400px;
	padding:20px 20px 20px 150px;
	box-sizing:border-box;
	font-weight:bold;
}
#contents.guide .section0 dl.tb dd,
#contents.guide .section2 dl.tb dd{
	padding:20px 20px 20px 400px;
	border-bottom:solid 1px #dcdddd;
}
#contents.guide .section1 div.wid{
	margin-bottom:80px;
}
#contents.guide .title_sub{
	font-size: 24px;
	font-size: 2.4rem;
	text-align: center;
	margin: 0 auto 15px;
}
#contents.guide .title_sub small{
	font-size: 14px;
	font-size: 1.4rem;
	display: block;
	margin: 0 auto;
	font-weight: normal;
}
#contents.guide .section0{
	margin-bottom: 50px;
}

#contents.guide .section1 iframe{
	width: 100%;
	height: 400px;
}
#contents.guide .section2 dl.tb dd table{
	width: 100%;
}
#contents.guide .section2 dl.tb dd table tr{
	border-bottom: solid 1px #dcdddd;
	padding: 15px 0;
  box-sizing: border-box;
  display: flex;
	justify-content: space-between;
}
#contents.guide .section2 dl.tb dd table tr:after{
	content: none;
}
#contents.guide .section2 dl.tb dd table tr:first-child{
	padding-top: 0;
}
#contents.guide .section2 dl.tb dd table tr:last-of-type{
	border-bottom: none;
	padding-bottom: 0;
}
#contents.guide .section2 dl.tb dd table tr th{
	flex: 0 1 150px;
	margin-right: 30px;
}
#contents.guide .section2 dl.tb dd table tr th span{
	width: 60px;
  display: inline-block;
}
#contents.guide .section2 dl.tb dd table tr td{
	margin-right: 20px;
}
#contents.guide .section1 .map-info{
	width: 1000px;
	margin: 0 auto;
}
#contents.events .method .atesaki{
	margin-top: 15px;
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
}
/***------------
about
------------***/
#contents.about .section1,
#contents.about .section2{
	margin-bottom:60px;
}
#contents.about .section1 .pho{
	width: 600px;
	margin: 0 auto 15px;
}
#contents.about .section1 .pho img{
	width: 100%;
}
#contents.about .section1 .text{
	width: 600px;
	margin: 0 auto;
}
#contents.about .section2 .wid .text{
	margin-bottom: 15px;
}
#contents.about .section2 .wid .pho_m{
	text-align: center;
	margin: 0 auto 30px;
}
#contents.about .section2 .wid ul{
	display: flex;
	justify-content: center;
	flex-flow: row wrap;
}
#contents.about .section2 .wid ul li{
	flex: 0 1 320px;
}
#contents.about .section2 .wid ul li:not(:nth-of-type(3n)){
	margin-right: 20px;
}
#contents.about .section2 .wid ul li img{
	width: 100%;
}
#contents.about .section2 .wid ul li p{
	text-align: center;
}
#contents.about .section2 .wid ul li{
	margin-bottom: 15px;
}

#contents.about .section2 .wid .text{
	margin-bottom: 15px;
}
#contents.about .section2 .wid .pho_m{
	text-align: center;
	margin: 0 auto 30px;
}
#contents.about .section2 .wid ul{
	display: flex;
	justify-content: center;
	flex-flow: row wrap;
}
#contents.about .section2 .wid ul li{
	flex: 0 1 320px;
}
#contents.about .section2 .wid ul li:not(:nth-of-type(3n)){
	margin-right: 20px;
}
#contents.about .section2 .wid ul li img{
	width: 100%;
}
#contents.about .section2 .wid ul li p{
	text-align: center;
}
#contents.about .section2 .wid ul li{
	margin-bottom: 15px;
}
#contents .about-linklist{
	display:flex;
	justify-content:center;
	margin: 60px auto;
}
#contents .about-linklist p.linkbtn1:not(:last-of-type) {
    margin-right: 30px;
}

/*-------------
about-chrono
-------------*/
.about-chrono-main{
	width: 810px;
	margin: 0 auto 100px;
}
.about-chrono-table{
	width: 100%;
	border-top: solid 2px #333;
	font-size: 1.5rem;
	line-height: calc(1em + 7px);
}
.about-chrono-table tr{
	border-bottom: solid 1px #7a7a7a;
}
.about-chrono-table th{
	padding: 14px 40px 16px 20px;
	width: 180px;
	font-weight: normal;
}
.about-chrono-table td{
	padding: 14px 0 16px;
	vertical-align: middle;
}
.about-chrono-table__head{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.about-chrono-table__head .year{
	color: #888;
	font-family: 'Zen Antique Soft', serif;
	font-size: 1.8rem;
}
.about-chrono-table__head .old{
	text-align: right;
}
.about-chrono-text_note{
	margin-top: 20px;
	padding-left: 1em;
	text-indent: -1em;
}

/*-------------
about-gin
-------------*/
.about-gin-main{
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 1000px;
	margin: 0 auto;
	padding: 40px 40px 60px;
	border: solid 1px #ccc;
}
.about-gin-lead-title{
	margin-bottom: 18px;
	font-size: 1.8rem;
	font-weight: normal;
}
.about-gin-lead-title .name{
	margin-right: 18px;
	font-family: 'Zen Antique Soft', serif;
	font-size: 2rem;
}
.about-gin-lead-title .from{
	display: inline-block;
	text-indent: -.5em;
}
.about-gin-lead-text{
	margin-bottom: 8px;
}
.about-gin-list{
	margin-top: 40px;
	padding-top: 40px;
	border-top: solid 1px #ccc;
	counter-reset: list-number;
}
.about-gin-list-item{
	position: relative;
	margin-right: -1em;
	padding-left: 2.5em;
	font-family: 'Zen Antique Soft', serif;
	font-size: 1.8rem;
}
.about-gin-list-item:not(:last-child){
	margin-bottom: 15px;
}
.about-gin-list-item:before{
	position: absolute;
	top: 0;
	left: 0;
	color: #999;
	counter-increment: list-number 1;
    content: counter(list-number, decimal-leading-zero) ".";
}
.about-gin-list-item > span:not([class]){
	display: inline-block;
	margin-right: 1em;
}

/*-------------
shop
-------------*/
.shop{
	padding-bottom: 60px;
}
.shop-list_book{
	display: flex;
	flex-wrap: wrap;
	width: 1000px;
	margin: 0 auto 40px;
	padding-top: 40px;
	border-top: solid 1px #ccc;
}
.shop-list_book:after{
	content: none;
}
.shop-list_book__title{
	flex: 0 0 100%;
	margin: -5px auto 20px;
	padding: 0 0 2px 12px;
	border-left: solid 10px #ccc;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: calc(1em + 9px);
}
.shop-list_book-item{
	flex: 0 0 232px;
	position: relative;
	padding-bottom: calc(2em + 20px);
}
@media screen and (min-width:769px){
	.shop-list_book-item:not(:nth-of-type(4n)){
		margin-right: 24px;
	}
	.shop-list_book-item:not(:nth-of-type(-n+4)){
		margin-top: 40px;
	}
}
@media print{
	.shop-list_book-item:not(:nth-of-type(4n)){
		margin-right: 24px;
	}
	.shop-list_book-item:not(:nth-of-type(-n+4)){
		margin-top: 40px;
	}
}
.shop-list_book-item__pic{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 232px;
	height: 232px;
	margin-bottom: 15px;
	padding: 14px;
	border: solid 1px #ccc;
}
.shop-list_book-item__pic img{
	width: auto;
	max-width: 100%;
	height: auto;
	max-height: 100%;
}
.shop-list_book-item__info{
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.shop-list_book-item__title{
	line-height: calc(1em + 7px);
	text-indent: -.5em;
}
.shop-list_book-item__title .name{
	font-size: 1.7rem;
	font-weight: bold;
}
.shop-list_book-item__title .imprint{
	display: inline-block;
	margin-right: -.5em;
	color: #666;
}
.shop-list_book-item__text{
	margin-top: 8px;
	line-height: calc(1em + 7px);
}
.shop-list_book-item__price{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 0 .75em;
	background: #f7f7f7;
	font-size: calc(1em + 2px);
	line-height: 2em;
}
.shop-list_book-item__price .yen{
	margin-left: .2em;
	font-size: calc(1em - 2px);
}
.shop-pamph{
	width: 1000px;
	margin: 0 auto 110px;
	padding: 25px 50px 30px;
	border: solid 1px #ccc;
}
.shop-pamph-title{
	margin-bottom: 18px;
	padding-bottom: 14px;
	border-bottom: dashed 1px #ccc;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: calc(1em + 11px);
}
.shop-pamph-list{
	margin: 15px 0 20px;
}
.shop-pamph-list-item{
	position: relative;
	padding-left: 16px;
	line-height: calc(1em + 11px);
}
.shop-pamph-list-item:not(:last-child){
	margin-bottom: 5px;
}
.shop-pamph-list-item:before{
	position: absolute;
	top: calc(.5em + 2px);
	left: 0;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #ddd;
	content: "";
}
.shop-goods-list{
	width: 1000px;
	margin: 0 auto 20px;
	border-top: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
}
.shop-goods-list-item{
	display: flex;
	padding: 25px 0;
}
.shop-goods-list-item:not(:last-child){
	border-bottom: solid 1px #ccc;
}
.shop-goods-list-item__pic{
	flex: 0 0 120px;
	margin-right: 30px;
}
.shop-goods-list-item__name{
	margin-bottom: 20px;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: calc(1em + 11px);
}
.shop-goods-list-item__price{
	margin-top: 15px;
	font-size: 1.6rem;
}
.shop-goods-message{
	width: 1000px;
	margin: 40px auto;
	text-align: center;
}
.shop-goods-flow{
	width: 1000px;
	margin: 0 auto 40px;
	padding: 40px 50px 55px;
	border: solid 1px #ccc;
}
.shop-goods-flow-title{
	margin-bottom: 20px;
	font-size: 2.4rem;
	font-weight: bold;
}
.shop-goods-flow-list{
	padding-left: 25px;
	line-height: calc(1em + 11px);
	counter-reset: flow-number;
}
.shop-goods-flow-list-item:not(:last-child){
	margin-bottom: 20px;
}
.shop-goods-flow-list-item-head{
	margin-bottom: 10px;
	position: relative;
	font-size: 1.6rem;
	font-weight: bold;
}
.shop-goods-flow-list-item-head::before{
	position: absolute;
	top: 0;
	left: -20px;
	color: #888;
	font-size: 16px;
	counter-increment: flow-number 1;
	content: counter(flow-number) ".";
}
.shop-goods-flow-list-item__list{
	margin: 10px 0;
}
.shop-goods-flow-list-item__list-item{
	position: relative;
	padding-left: 16px;
	line-height: calc(1em + 11px);
}
.shop-goods-flow-list-item__list-item:not(:last-child){
	margin-bottom: 5px;
}
.shop-goods-flow-list-item__list-item:before{
	position: absolute;
	top: calc(.5em + 2px);
	left: 0;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #ddd;
	content: "";
}
.shop-goods-tokusyo{
	width: 1000px;
	margin: 0 auto 40px;
}
.shop-goods-tokusyo-title{
	margin-bottom: 20px;
	padding: 0 0 2px 12px;
	border-left: solid 10px #ab7340;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: calc(1em + 9px);
}
.shop-goods-tokusyo-title .small{
	font-size: 1.8rem;
	font-weight: normal;
}
.shop-goods-tokusyo-table{
	width: 100%;
}
.shop-goods-tokusyo-table th,
.shop-goods-tokusyo-table td{
	padding: 15px 20px;
	border: solid 1px #ccc;
}
.shop-goods-tokusyo-table th{
	width: 250px;
	background: #f7f7f7;
}
.shop-goods-contact{
	width: 500px;
	margin: 0 auto;
	padding: 20px 30px 25px;
	border: solid 1px #ccc;
	border-radius: 10px;
}
.shop-goods-contact__lead{
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: dotted 1px #ccc;
}
.shop-goods-contact-title{
	margin-bottom: 8px;
	font-size: 2rem;
	font-weight: bold;
}
.shop-goods-contact-tel a{
	display: inline-block;
	margin-left: .25em;
	color: inherit;
	font: inherit;
}
.shop-goods-contact-btn{
	width: 100%;
	margin-top: 15px;
}
.shop-goods-contact-btn a{
	display: flex;
	justify-content: center;
	align-items: center;
	height: 44px;
	padding-bottom: 4px;
	border-radius: 5px;
	background: #6e0f0b;
	color: #fff;
	font-size: 1.8rem;
	font-weight: bold;
	text-decoration: none;
}
.shop-goods-list-item__pho{
	width: 100%;
}
.shop-goods-list-item__pho img{
	width: 100%;
}
.shop_mB{
	margin-bottom: 110px;
}
/*-------------
dokurakugin
-------------*/
#contents.dokurakugin{
	padding-bottom: 80px;
}
#contents.dokurakugin .dokurakugin-pho{
	text-align: center;
	margin-bottom: 20px;
}
#contents.dokurakugin .dokurakugin-text{
	margin-bottom: 40px;
}
#contents.dokurakugin .dokurakugin-pamph{
	width: 1000px;
	margin: 0 auto 110px;
	padding: 25px 50px 30px;
	border: solid 1px #ccc;
}
#contents.dokurakugin .dokurakugin-pamph-title{
	margin-bottom: 18px;
	padding-bottom: 14px;
	border-bottom: dashed 1px #ccc;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: calc(1em + 11px);
}
#contents.dokurakugin .dokurakugin-pamph dl dt{
	font-weight: bold;
}
#contents.dokurakugin .dokurakugin-pamph dl dd:not(:last-of-type){
	margin-bottom: 15px;
}
#contents.dokurakugin .dokurakugin-pamph-list-item{
	position: relative;
	padding-left: 16px;
	line-height: calc(1em + 11px);
}
#contents.dokurakugin .dokurakugin-pamph-list-item:not(:last-child){
	margin-bottom: 5px;
}
#contents.dokurakugin .dokurakugin-pamph-list-item:before{
	position: absolute;
	top: calc(.5em + 2px);
	left: 0;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #ddd;
	content: "";
}
/*-------------
volunteer
-------------*/
#contents.volunteer{
	padding-bottom: 80px;
}
.volunteer-goods-list{
	width: 1000px;
	margin: 0 auto 40px;
	border-top: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
}
.volunteer-goods-list-item{
	display: flex;
	padding: 25px 0;
}
.volunteer-goods-list-item:not(:last-child){
	border-bottom: solid 1px #ccc;
}
.volunteer-goods-list-item__pic{
	flex: 0 0 300px;
	margin-right: 30px;
}
.volunteer-goods-list-item__pic img{
	width: 100%;
}
.volunteer-goods-list-item__name{
	margin-bottom: 20px;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: calc(1em + 11px);
}
.volunteer-goods-list-item__price{
	margin-top: 15px;
	font-size: 1.6rem;
}
.volunteer-pamph{
	width: 1000px;
	margin: 0 auto 30px;
	padding: 25px 50px 30px;
	border: solid 1px #ccc;
}
.volunteer-pamph-title{
	margin-bottom: 18px;
	padding-bottom: 14px;
	border-bottom: dashed 1px #ccc;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: calc(1em + 11px);
}
.volunteer-pamph-list{
	margin: 15px 0 20px;
}
.volunteer-pamph-list-item{
	position: relative;
	padding-left: 16px;
	line-height: calc(1em + 11px);
}
.volunteer-pamph-list-item:not(:last-child){
	margin-bottom: 5px;
}
.volunteer-pamph-list-item:before{
	position: absolute;
	top: calc(.5em + 2px);
	left: 0;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #ddd;
	content: "";
}
/*volunteer_page*/
#contents.volunteer_page{
	padding-bottom: 80px;
}
#contents.volunteer_page .text-main{
	margin-bottom: 40px;
}
#contents.volunteer_page .section:not(:last-of-type){
	margin-bottom: 60px;
	border-bottom: solid 1px #dcdddd;
}
#contents.volunteer_page .section .img-list{
	display: flex;
	justify-content: center;
	flex-flow: row wrap;
	margin-top: 20px;
}
#contents.volunteer_page .section .img-list:after{
	content: none;
}
#contents.volunteer_page .section .img-list > div{
	flex: 0 1 490px;
	max-width: 490px;
	margin-bottom: 20px;
}
#contents.volunteer_page .section .img-list > div:not(:nth-of-type(2n)){
	margin-right: 20px;
}
#contents.volunteer_page .section .img-list > div img{
	max-width: 490px;
}
#contents.volunteer_page .section .location{
	margin-bottom: 10px;
}
#contents.volunteer_page .section .section-text{
	margin-bottom: 30px;
}
#contents.volunteer_page .section .link-list{
	margin-bottom: 30px;
}
#contents.volunteer_page .section .link-list .link{
	background:url(../img/icon_link.svg) no-repeat center left;
	background-size:19px;
	padding-left:28px;
	margin-top:15px;
}
#contents.volunteer_page .section .link-list .file{
	background:url(../img/icon_file.svg) no-repeat center left;
	background-size:19px 21px;
	padding-left:28px;
	margin-top:15px;
}
#contents.volunteer_page .section .link-list .link a,
#contents.volunteer_page .section .link-list .file a{
	font-weight:bold;
	color:#6e0f0b;
}
#contents.volunteer_page dl.tb{
	font-size:16px;
	font-size:1.6rem;
	border-top:solid 1px #dcdddd;
	margin-bottom: 40px;
}
#contents.volunteer_page dl.tb dt{
	float:left;
	width:400px;
	padding:20px 20px 20px 150px;
	box-sizing:border-box;
	font-weight:bold;
}
#contents.volunteer_page dl.tb dd{
	padding:20px 20px 20px 400px;
	border-bottom:solid 1px #dcdddd;
}
/*-------------
grant
-------------*/
#contents.grant{
	padding-bottom: 80px;
}
.grant-goods-list{
	width: 1000px;
	margin: 0 auto 40px;
	border-top: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
}
.grant-goods-list-item{
	display: flex;
	padding: 25px 0;
}
.grant-goods-list-item:not(:last-child){
	border-bottom: solid 1px #ccc;
}
.grant-goods-list-item__pic{
	flex: 0 0 300px;
	margin-right: 30px;
}
.grant-goods-list-item__pic img{
	width: 100%;
}
.grant-goods-list-item__name{
	margin-bottom: 20px;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: calc(1em + 11px);
}
.grant-goods-list-item__price{
	margin-top: 15px;
	font-size: 1.6rem;
}
/*grant_page*/
#contents.grant_page{
	padding-bottom: 80px;
}
#contents.grant_page .text-main{
	margin-bottom: 40px;
}
#contents.grant_page .section:not(:last-of-type){
	margin-bottom: 60px;
	border-bottom: solid 1px #dcdddd;
}
#contents.grant_page .section .img-list{
	display: flex;
	justify-content: center;
	flex-flow: row wrap;
	margin-top: 20px;
}
#contents.grant_page .section .img-list:after{
	content: none;
}
#contents.grant_page .section .img-list > div{
	flex: 0 1 490px;
	max-width: 490px;
	margin-bottom: 20px;
}
#contents.grant_page .section .img-list > div:not(:nth-of-type(2n)){
	margin-right: 20px;
}
#contents.grant_page .section .img-list > div img{
	max-width: 490px;
}
#contents.grant_page .section .location{
	margin-bottom: 10px;
}
#contents.grant_page .section .section-text{
	margin-bottom: 30px;
}
#contents.grant_page .section .link-list{
	margin-bottom: 30px;
}
#contents.grant_page .section .link-list .link{
	background:url(../img/icon_link.svg) no-repeat center left;
	background-size:19px;
	padding-left:28px;
	margin-top:15px;
}
#contents.grant_page .section .link-list .file{
	background:url(../img/icon_file.svg) no-repeat center left;
	background-size:19px 21px;
	padding-left:28px;
	margin-top:15px;
}
#contents.grant_page .section .link-list .link a,
#contents.grant_page .section .link-list .file a{
	font-weight:bold;
	color:#6e0f0b;
}
#contents.grant_page dl.tb{
	font-size:16px;
	font-size:1.6rem;
	border-top:solid 1px #dcdddd;
	margin-bottom: 40px;
}
#contents.grant_page dl.tb dt{
	float:left;
	width:400px;
	padding:20px 20px 20px 150px;
	box-sizing:border-box;
	font-weight:bold;
}
#contents.grant_page dl.tb dd{
	padding:20px 20px 20px 400px;
	border-bottom:solid 1px #dcdddd;
}
/*-------------
kaiho
-------------*/
#contents.kaiho{
	padding-bottom: 80px;
}
.kaiho-goods-list{
	width: 1000px;
	margin: 0 auto 40px;
	border-top: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
}
.kaiho-goods-list-item{
	display: flex;
	padding: 25px 0;
}
.kaiho-goods-list-item:not(:last-child){
	border-bottom: solid 1px #ccc;
}
.kaiho-goods-list-item__pic{
	flex: 0 0 300px;
	margin-right: 30px;
}
.kaiho-goods-list-item__pic img{
	width: 100%;
}
.kaiho-goods-list-item__name{
	margin-bottom: 20px;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: calc(1em + 11px);
}
.kaiho-goods-list-item__price{
	margin-top: 15px;
	font-size: 1.6rem;
}

/*-------------
202604
-------------*/
#contents.top .section2 .toplist1 {display: flex;flex-wrap: wrap;gap: 20px;justify-content: center;}
#contents.top .section2 .toplist1 > div {width: 400px;text-align: center;}
#topimg .topimgin ul.slider1 li.slide04 {display: none !important;}
#topimg .topimgin ul.slider1 {background-color: #000;}
}
@media (max-width: 767px) {
  /* toppage section2 のリストを縦並びに */
  #contents.top .section2 .toplist1 {
    flex-direction: column; /* 縦並びに */
    align-items: center;    /* 中央寄せ */
  }

  /* 各カードの幅調整 */
  #contents.top .section2 .toplist1 > div {
    width: 100%;
    max-width: 400px;
    margin-bottom: 20px; /* 下の余白 */
  }
}
