/*====================================== 
indexPage
=======================================*/ 

/* Main image▼▼
------------------------------------------------------------ */
#mainImageWrap {
	margin-top: 0px;
}
#mainImageWrap .full div {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: left;
		position: relative;
		width: 100%;
		min-height: 100vh;
}
#mainImageWrap .full div.img01 {
	background-image: url(../../img/mainimg01.jpg?250530);
}

#mainImageWrap .full .slick-dots {
  bottom: 2%;
  z-index: +1;
}
.indexPage #mainImageWrap .full a {
	display: block;
	width:100%;
	height:100%;
}



.indexPage #mainImageWrap h2 {
	position: absolute;
	z-index:1;
	top:35%;
	left:5%;
	animation-name:fadeLeftAnime;
	animation-delay: 1.0s;
	animation-duration:0.7s;
	animation-fill-mode:forwards;
    opacity: 0;
}
.indexPage #mainImageWrap h2 img {
		width:90%;
		height:auto;
}



@media screen and (max-width: 767px){
	#mainImageWrap {
		margin-top: 60px;
	}
	.indexPage #mainImageWrap h2 {
		font-size:3.0rem;
		letter-spacing:1.0px;
		line-height: 1.2em;
		top:240px;
	}
	#mainImageWrap .full div {
		background-repeat: no-repeat;
		background-size: 100%;
		min-height: 600px;
	}
	.indexPage #mainImageWrap h2 img {
		width:95%;
		height:auto;
	}
	#mainImageWrap .full div.img01 {
	background-image: url(../../img/mainimg-sp.jpg?250530);
	}
}

@media screen and (max-width: 600px){
	.indexPage #mainImageWrap h2 {
		top:250px;
	}
	#mainImageWrap .full div {
		min-height: 500px;
	}
}

@media screen and (max-width: 480px){
	.indexPage #mainImageWrap h2 {
		top:180px;
	}
	#mainImageWrap .full div {
		background-size: 105%;
		min-height: 400px;
	}
}

@keyframes fadeLeftAnime{
  from {
    opacity: 0;
	transform: translateX(-100px);
  }
  to {
    opacity: 1;
	transform: translateX(0);
  }
}
@keyframes fadeRightAnime{
  from {
    opacity: 0;
	transform: translateX(100px);
  }
  to {
    opacity: 1;
	transform: translateX(0);
  }
}
@keyframes fadeDownAnime{
  from {
    opacity: 0;
	transform: translateY(-10px);
  }
  to {
    opacity: 1;
	transform: translateY(0);
  }
}


/*スクロールダウン全体の場所*/
.scrolldown{
    /*描画位置※位置は適宜調整してください*/
	position:absolute;
	bottom:1%;
	right:3%;
    /*矢印の動き1秒かけて永遠にループ*/
	animation: arrowmove 1.5s ease-in-out infinite;
}
@media screen and (max-width: 767px){
	.scrolldown{
	right:6%;
	}
}
/*下からの距離が変化して全体が下→上→下に動く*/
@keyframes arrowmove{
      0%{bottom:1%;}
      50%{bottom:3%;}
     100%{bottom:1%;}
 }
/*Scrollテキストの描写*/
.scrolldown span{
    /*描画位置*/
	position: absolute;
	left:-20px;
	bottom:10px;
    /*テキストの形状*/
	color: #eee;
	font-size: 0.7rem;
	letter-spacing: 0.05em;
	/*縦書き設定*/
	-ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
}
/* 矢印の描写 */
.scrolldown:before {
    content: "";
    /*描画位置*/
    position: absolute;
    bottom: 0;
    right: -6px;
    /*矢印の形状*/
    width: 1px;
    height: 20px;
    background: #eee;
    transform: skewX(-31deg);
}
.scrolldown:after{
	content:"";
    /*描画位置*/
	position: absolute;
	bottom:0;
	right:0;
    /*矢印の形状*/
	width:1px;
	height: 50px;
	background:#eee;
}


/* onigourmetWrap-ibagourmetWrap▼▼
------------------------------------------------------------ */
.onigourmetWrap{
	margin: 0 auto;
	padding: 30px 0;
	overflow: hidden;
}
.onigourmetWrap {
	background:#fff661;
}
.full-screen li {
	position: relative;
	display:block;
	font-size:2.4rem;
	line-height: 1.8em;
	font-weight:500;
}
.full-screen div {
	overflow:hidden;
	border-radius: 5px;
	display:block;
	text-align:center;
	margin: 2px 5px;
}
.full-screen img{
	width: 100%;
	height:auto;
}

@media screen and (min-width: 671px){
	.full-screen a img{
		-moz-transition:-moz-all 0.3s ease-in-out;
		-o-transition:-o-all 03s ease-in-out;
		-webkit-transition:-webkit-all 0.3s ease-in-out;
		transition:all 0.25s ease-in-out;
	}
	.full-screen a:hover img{
		-moz-transform:scale(1.03, 1.03);
		-ms-transform:scale(1.03, 1.03);
		-webkit-transform:scale(1.03, 1.03);
		transform:scale(1.03, 1.03);
	}
	
	.full-screen span{
		position: relative;
		display: inline-block;
		text-decoration: none;
	}
.full-screen span::after {
		position: absolute;
		bottom: -4px;
		left: 0;
		content: '';
		width: 100%;
		height: 1px;
		background: #00920a;
		transform: scale(0, 1);
		transform-origin: right top;
		transition: transform .3s;
	}
.full-screen a:hover span::after {
		transform-origin: left top;
		transform: scale(1.03, 1.03);
	}
}



/* Toppage News ▼▼
------------------------------------------------------------ */
.indexPage .newsWrap{
	background:#FCE94D;
}
.indexPage .newsWrapBox{
	padding: 60px 5% 80px 5%;
	max-width:1400px;
	margin:auto;
}
.indexPage .newsWrap .h2_title{
	width:20%;
	float:left;
	text-align:left;
	margin-top:20px;
}
.indexPage .newsWrap .h2_title h2{
	font-size:3.5rem;
	line-height: 2.6rem;
	letter-spacing:2.0px;
	font-weight:900;
	border-bottom:none;
}
.indexPage .newsWrap .h2_title h2 span{
	font-size:1.4rem;
	font-weight:300;
}

.indexPage .newsWrap .floatR{
	width:80%;
}
.indexPage .newsWrap li{
	border-bottom:1px dotted #595959;
	font-size:1.6rem;
	line-height: 1.8em;
	letter-spacing: 0.05em;
}
.indexPage .newsWrap li a{
	font-size:1.6rem;
	line-height: 1.8em;
	letter-spacing: 0.05em;
}
.indexPage .newsWrap li span{
	float:left;
	width:17%;
	padding:2% 0;
	font-size:1.6rem;
	line-height: 1.8em;
	letter-spacing: 0.05em;
	word-break:break-all;
}
.indexPage .newsWrap li p{
	float:left;
	width:83%;
	padding:2% 0;
}

.indexPage .newsWrap .floatR .button{
	float:right;
	margin-top: 20px;
}

@media screen and (max-width: 1100px){
	.indexPage .newsWrap li span{
		width:20%;
	}
	.indexPage .newsWrap li p{
		width:80%;
	}
}

@media screen and (max-width: 900px){
	.indexPage .newsWrap .h2_title,
	.indexPage .newsWrap .floatR{
		width:100%;
		float:none;
		margin-bottom:0px;
	}
	.indexPage .newsWrap li span{
		display:inline-block;
		vertical-align:middle;
		*vertical-align:auto;
		*zoom:1;
		*display:inline;
		float:none;
		width:auto;
		padding:4.0625% 0 0 0;
	}
	.indexPage .newsWrap li p{
		clear:both;
		float:none;
		width:auto;
		margin:0 auto;
		padding:1% 0 4% 0;
	}
}

/* indexBanner▼▼
------------------------------------------------------------ */

.cautionTxt {
	font-size:3.0rem;
	line-height: 4.6rem;
	letter-spacing:1.0px;
	font-weight:500;
	border-bottom:none;
}

.indexBanner{
	padding: 60px 5%;
	max-width:1400px;
	margin:0 auto;
}
.indexBanner ul{
	width:100%;
	padding:0;
	margin:0;
	list-style:none;
}

.indexBanner li h3{
	padding:0;
}
.indexBanner li.noR{
	margin-right:0;
}
.indexBanner li img {
	width: 100%;
	height:auto;
}

@media screen and (min-width: 768px){
	.indexBanner li{
		width:32%;
		float:left;
		margin:0 2% 0 0;
		padding:0;
	}
}
@media screen and (max-width: 767px){
	.cautionTxt {
		font-size:2.0rem;
		line-height: 2.6rem;
	}
	.indexBanner li{
		padding:0 0 5% 0;
	}
}

/* indexPage01Wrap▼▼
------------------------------------------------------------ */
.indexPage01Wrap ul{
	width:100%;
	display:-webkit-flex;
	display:flex;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
}
.indexPage01Wrap li{
	position: relative;
	width:33.33%;
	background:#21823a;
}
.indexPage01Wrap li .indexPage04NakaWrap{
	width:100%;
	position: absolute;
    top: 0;
    left: 0;
    color:white;
    top: 53%; /* 追記 */
    left: 50%; /* 追記 */
    -ms-transform: translate(-50%, -50%); /* 追記 */
    -webkit-transform: translate(-50%, -50%); /* 追記 */
    transform: translate(-50%, -50%); /* 追記 */
}
.indexPage01Wrap li .indexPage04NakaWrap h2{
	font-size:3.5rem;
	line-height: 1.0em;
	letter-spacing:	1.0px;
	font-weight:500;
	text-shadow: 0px 1px 10px #000;
	padding:0 5%;
	margin-bottom:20px;
}
.indexPage01Wrap li .indexPage04NakaWrap p{
	font-size:1.6rem;
	letter-spacing:2.0px;
	text-shadow: 0px 1px 10px #000;
	padding:0 5%;
	margin-bottom:50px;
}
.indexPage01Wrap li a{
	display:block;
	width:100%;
	height:0;
	padding-bottom:90%;
	overflow:hidden;
	font-weight:500;
}
.indexPage01Wrap li a img{
	width:100%;
	height:auto;
}

.indexPage01Wrap li a .button{
   	border: none;
}

@media screen and (max-width: 900px){
	.indexPage01Wrap ul{
		display:block;
		-webkit-flex-wrap:nowrap;
		flex-wrap:nowrap;
		padding:0;
	}
	.indexPage01Wrap li{
		width:100%;
	}
	.indexPage01Wrap li:nth-child(2){
		margin-left:0;
	}
	.indexPage01Wrap li a{
		padding-bottom:60%;
	}
	.indexPage01Wrap li a img{
		opacity:0.75;
	}
	.indexPage01Wrap li .indexPage04NakaWrap h2{
	font-size:3.5rem;
	line-height: 1.0em;
	letter-spacing:	1.0px;
	font-weight:500;
	text-shadow: 0px 1px 10px #000;
	padding:0 5%;
	margin-bottom:20px;
}
.indexPage01Wrap li .indexPage04NakaWrap p{
	font-size:1.6rem;
	letter-spacing:2.0px;
	text-shadow: 0px 1px 10px #000;
	padding:0 5%;
	margin-bottom:30px;
}
	.indexPage01Wrap li a .button{
		width:50%;
		margin-left:5%;
	}
}
@media screen and (min-width: 900px){
	.indexPage01Wrap li a img{
		opacity:1.0;
		-moz-transition:-moz-all 0.3s ease-in-out;
		-o-transition:-o-all 03s ease-in-out;
		-webkit-transition:-webkit-all 0.3s ease-in-out;
		transition:all 0.3s ease-in-out;
	}
	.indexPage01Wrap li a:hover img{
		opacity:0.75;
		-moz-transform:scale(1.1, 1.1);
		-ms-transform:scale(1.1, 1.1);
		-webkit-transform:scale(1.1, 1.1);
		transform:scale(1.1, 1.1);
	}
	.indexPage01Wrap li:hover .button::after{
		animation: arrowbefore 1s infinite;
	}
	
	.indexPage01Wrap li a:hover .buttontop:before{
	 height: 100%;
 	 background-color: #21823a;
	}
	.indexPage01Wrap li a:hover .button span{
		color:#fff;
	}
}





/* News ▼▼
------------------------------------------------------------ */
.news .newsWrapBox{
	padding: 60px 5% 80px 5%;
	max-width:1400px;
	margin:auto;
}
.news .newsWrap li{
	border-bottom:1px dotted #595959;
	font-size:1.6rem;
	line-height: 1.4em;
	letter-spacing: 0.05em;
}
.news .newsWrap li a{
	font-size:1.6rem;
	line-height: 1.4em;
	letter-spacing: 0.05em;
}
.news .newsWrap li span{
	float:left;
	width:150px;
	padding:2% 0;
	font-size:1.6rem;
	line-height: 1.8em;
	letter-spacing: 0.05em;
	word-break:break-all;
}
.news .newsWrap li p{
	padding:2% 0 ;
}

.news .newsWrap .floatR .button{
	float:right;
	margin-top: 20px;
}



@media screen and (max-width: 850px){
	.news .newsWrap .h2_title,
	.news .newsWrap .floatR{
		width:100%;
		float:none;
		margin-bottom:0px;
	}
	.news .newsWrap li span{
		display:inline-block;
		vertical-align:middle;
		*vertical-align:auto;
		*zoom:1;
		*display:inline;
		float:none;
		width:auto;
		padding:4.0625% 0 0 0;
	}
	.news .newsWrap li p{
		clear:both;
		float:none;
		width:auto;
		margin:0 auto;
		padding:1% 0 4% 0;
	}
}




/* evevtBox▼▼
------------------------------------------------------------ */
.accmenu ul {
	list-style: none;
	padding:0;
	margin:0 auto;
}
.accmenu dt{
	padding:10px 15px 13px 15px;
	background:#F61700;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	-o-border-radius:5px;
	-ms-border-radius:5px;
	margin-bottom:10px;
}
.accmenu dt h4{
	font-size:2.4rem;
	line-height: 1.2em;
	letter-spacing:0.5px;
	color:#FFF;
	font-weight: 900;
}
.h4_title h3 {
	font-size:2.6rem;
	line-height: 1.4em;
	letter-spacing:1.0px;
	font-weight:500;
	font-weight: 900;
}
.h4_title h4 {
	font-size:2.2rem;
	line-height: 1.4em;
	letter-spacing:1.0px;
	font-weight: 900;
	padding-bottom:5px;
}
.accmenu dd{
	padding:0;
	margin:0 0 80px 0;
}


.evevtBox .floatR ul,
.scheduleBox .floatR ul{
	padding:0;
	margin:0;
	list-style:none;
}
.evevtBox .floatR ul li,
.scheduleBox .floatR ul li{
	background:url(../img/arrow.png) no-repeat 0px 11px;
	font-size:2.4rem;
	line-height: 1.0em;
	letter-spacing:0px;
	padding:0 0 10px 20px;
	margin:0 0 5px 0px;
	border-bottom:2px dotted #fecb2e;
}

.scheduleBox .floatR ul li ul li{
	padding:0px;
	margin:0px;
	background:none;
	border-bottom:none;
}



.eventEnd{
	font-size:2.4rem;
	line-height: 2.0em;
	font-weight:900;
	color:#E60013;
	text-align:center;
}

@media screen and (min-width: 1201px){
	.evevtBox .floatL,
	.scheduleBox .floatL{
		width:70%;
	}
	.evevtBox .floatR,
	.scheduleBox .floatR{
		width:25%;
	}
}
@media screen and (max-width: 1200px){
	.evevtBox .floatL,
	.scheduleBox .floatL{
		width:69%;
	}
	.evevtBox .floatR,
	.scheduleBox .floatR{
		width:26%;
	}
}
@media screen and (max-width: 767px){
	.evevtBox .floatL,
	.scheduleBox .floatL{
		width:100%;
	}
	.accmenu dt h4,
	.h4_title h3,
	.h4_title h4{
		font-size:1.8rem;
		padding-right: 25px;
		display:block;
		background: url(../img/icon_uparrow.png) no-repeat scroll right center transparent;
	}
	.accmenu dd{
		display:none;
		padding:0;
		margin:0 0 50px 0;
	}
}



/*　会場内案内図
-----------------------------------------------------*/
.mapBox h3{
	font-size:2.4rem;
	line-height: 1.2em;
	letter-spacing:0.5px;
	color:#FFF;
	font-weight: 900;
	padding:10px 15px 13px 15px;
	background:#F61700;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	-o-border-radius:5px;
	-ms-border-radius:5px;
	margin-bottom:10px;
}


.mapLinkBox {
	width:100%;
	padding:2% 3.5%;
	background:#fef55e;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	-o-border-radius:5px;
	-ms-border-radius:5px;
	margin-top:10px;
}
.mapLinkBox ul{
	padding:10px 0 0 0;
	margin:0;
	list-style:none;
}
.mapLinkBox li{
	background:url(../img/arrow.png) no-repeat 0px 11px;
	font-size:2.6rem;
	line-height: 1.0em;
	letter-spacing:0px;
	padding:0 0 10px 20px;
	margin:0 0 5px 0px;
	border-bottom:2px dotted #fecb2e;
}




/* society▼▼
------------------------------------------------------------ */
.listWrap{
	display: flex;
	flex-wrap: wrap;
	flex-direction: wrap;
	justify-content: space-between;
}
.itemWrap{
	border:1px solid #bbb;
	flex-basis: 48%;
	margin-bottom:4%;
}
.itemWrap .floatL{
	width:30%;
	overflow:hidden;
}
.itemWrap .floatR{
	width:65%;
}
.itemWrap img{
	max-width:100%;
}
.itemWrap a{
	color:#000;
	display:block;
	padding:5%;
}
.itemWrap h3{
	font-size: 2.5rem;
	line-height: 1.3em;
	border :none;
	padding:0;
	margin:0 0 5px 0;
}
.itemWrap .floatR h3::before {
	position: static;
	top: 0;
	display: inline;
	width:auto;
	height:auto;
	border-radius: none;
	background:none;
	margin:0;
	padding:0;
}
.itemWrap p{
	font-size: 1.6rem;
	line-height: 1.4em;
	margin-bottom:20px;
}

.itemWrap .button{
    padding: 5px 10px 7px 10px;
	width: 200px;
	float:right;
}
.itemWrap .button span{
	font-size:1.4rem;
	line-height: 1.6em;
}

@media screen and (max-width: 767px){
	.listWrap{
		display: block;
		flex-direction: column;
	}
	.itemWrap{
		flex-basis: 100%;
	}
}

@media screen and (min-width: 768px){
	
	.itemWrap:hover{
		border:1px solid #E3E9DF;
		background-color: #E3E9DF;
		-webkit-transition: .3s ease;
		transition: .3s ease;
	}
	
	.itemWrap a:hover .buttontop:before{
	 height: 100%;
 	 background-color: #21823a;
	}
	.itemWrap a:hover .button span{
		color:#fff;
	}
}

.authorize .button{
	width: 450px;
}
@media screen and (max-width: 767px){
	.authorize .button{
		width: 100%;
	}
}


/*schedule▼▼
------------------------------------------------------------ */
.schedule .event_table img {
	width:200px;
	float:right;
}

@media screen and (max-width: 767px){
	.schedule .event_table img {
		float:none;
		margin-bottom:1px;
		width:100%;
	}
}




/*support▼▼
------------------------------------------------------------ */
.support_ul{
	width: 100%;
	border-top:1px solid #000;
	margin:0 0 10px 0;
	padding:0;
	
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
.support_ul li{
	border-bottom:1px solid #000;
	border-collapse:collapse;
	padding:10px;
	list-style:none;
	font-size:1.6rem;
	line-height: 1.8em;
	
	-webkit-flex-grow: 1;
    flex-grow: 1;
    width: 50%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

@media screen and (max-width: 767px){
	.support_ul li{
		width:100%;
	}
}

/*greeting▼▼
------------------------------------------------------------ */
.greeting .Page01Wrap img{
		width:260px;
		height:auto;
}
@media screen and (max-width: 767px){
	.greeting .Page01Wrap img{
		max-width:100%;
		width:40%;
	}
}

/*activity▼▼
------------------------------------------------------------ */
.activity .Page01Wrap{
	padding: 80px 5% 20px 5%;
}
.activity .Page02Wrap{
	background-color: #f1f4ef;
}
.activity .Page02Wrap .floatL_pc{
	width:68%;
}
.activity .Page02Wrap .floatR_pc{
	width:30%;
}
.activity .PageBox .floatR{
	width:220px;
	margin-left:20px;
}
.forum .Page02Wrap .floatR_pc{
	width:320px;
	margin-left:20px;
}
.activity .Page02Wrap ul,
.activity .Page01Wrap .PageBox ul{
	list-style-type: disc;
	margin-left:2rem;
	margin-bottom:2rem;
}
.activity .Page02Wrap li,
.activity .Page02Wrap li a,
.activity .Page01Wrap .PageBox li{
	font-size:1.6rem;
	line-height: 1.9em;
	letter-spacing:0.5px;
}
.activity .Page02Wrap li{
}
.activity .Page01Wrap .Page01WrapBox{
	background-color: #f1f4ef;
	padding: 20px;
}

@media print, screen and (min-width : 768px ) {
	.organ .button,
	.forum .button{
		width: 320px;
	}
	.organ .PageBox .button{
		width: 260px;
	}
}
@media screen and (max-width:767px) {
	.activity .Page02Wrap .floatL_pc{
		width:100%;
	}
	.activity .Page02Wrap .floatR_pc{
		width:100%;
		margin-bottom:20px;
	}
	.activity .PageBox .floatR{
		width:35%;
		margin-bottom:20px;
	}
	.forum .Page02Wrap .floatR_pc{
		width:100%;
		margin-bottom:20px;
		margin-left:0px;
	}
}