@charset "UTF-8";

body{overflow-x: hidden;}

.btn_pdf{
/*
	display: none;
*/
}

/* ############################### ttlWrap */

main .ttlWrap{
	text-align: center;
}

main .ttl_main{
	display: inline-block;
	text-align: center;
}

main .ttl_main .logo{
	display: block;
	font-size: 65px;
	color: #7fae12;
	font-weight: bold;
}

main .ttl_main .cap{
	display: block;
	font-size: 25px;
	color: #7fae12;
	font-weight: bold;
	margin-top: 5px;
}

	@media screen and (max-width:768px){

	main .ttl_main .logo{
		font-size: 10vw;
	}

	main .ttl_main .cap{
		display: block;
		font-size: 3.7vw;
		margin-top: 5px;
	}

	}/* --- max-width:768px */

/* ############################### accWrap */

.accWrap .accCont{
	display: none;
}

.accWrap .bttn{
	text-align: right;
}

.accWrap .btn_acc{
	display: inline-block;
	color: #5ea0ef;
}

.accWrap .btn_acc span{
	text-decoration: underline;
}
.accWrap .btn_acc:hover span{text-decoration: none;}

.accWrap .btn_acc .open{display: inline-block;}
.accWrap .btn_acc .close{display: none;}
.accWrap.is_opened .btn_acc .open{display: none;}
.accWrap.is_opened .btn_acc .close{display: inline-block;}

	@media screen and (max-width:768px){

	.accWrap .btn_acc span{
		font-size: 4vw;
	}

	}/* --- max-width:768px */

/* ############################### youtubeWrap */

.youtubeWrap{
	width: 100%;
	padding-bottom: 56.25%;
	height: 0;
	position: relative;
}

.youtubeWrap iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.youtubeWrap .btn_youtube{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: contain !important;
	display: flex;
	align-items: center;
	justify-content: center;
}
.youtubeWrap .btn_youtube:hover{filter:brightness(1.2);}
.youtubeWrap .btn_youtube.elm1{background: url(../img/btn_youtube1.png) no-repeat center #fff;}
.youtubeWrap .btn_youtube.elm2{background: url(../img/btn_youtube2.png) no-repeat center #fff;}
.youtubeWrap .btn_youtube.elm3{background: url(../img/btn_youtube3.png) no-repeat center #fff;}

.youtubeWrap .btn_youtube .txt{
	color: #fff;
	font-size: 16px;
	display: block;
	margin-top: 15px;
}

.youtubeWrap .btn_youtube .arw{
	display: block;
	text-align: center;
}

.youtubeWrap .btn_youtube .arw em{
	display: inline-block;
	padding: 25px;
	border-radius: 40px;
	font-size: 30px;
	color: #fff;
	transform: rotate(90deg);
	background: rgba(197,215,0,0.8);
}

	@media screen and (max-width:768px){

	.youtubeWrap .btn_youtube .txt{
		font-size: 3.4vw;
		margin-top: 10px;
	}

	.youtubeWrap .btn_youtube .arw em{
		display: inline-block;
		padding: 20px;
		border-radius: 40px;
		font-size: 20px;
	}

	}/* --- max-width:768px */

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ header */

header{
	background: #c5d700;
}

header > .inner{
	box-shadow: rgba(126,159,13,0.7) 0 5px 3px 1px;
	display: flex;
	align-items: center;
	height: 120px;
	position: relative;
}

header > .inner:after{
	content: '';
	position: absolute;
	display: block;
	background: linear-gradient(to top,rgba(126,159,13,1) 0%,rgba(126,159,13,0) 100%);
	bottom: 0;
	left: 0;
	width: 100%;
	height: 10px;
	background-size: contain;
}

header > .inner .wrap{
	width: 1000px;
	padding: 0 20px;
	margin: auto;
}

	@media screen and (max-width:768px){

	header > .inner{
		height: auto;
		padding: 15px 0;
	}

	header > .inner:after{
		height: 5px;
	}

	header > .inner .wrap{
		width: 100%;
		padding: 0 5vw;
	}

	}/* --- max-width:768px */

/* ############################### iconBlock */

header > .inner .iconBlock .iconBox{
	display: table;
}

header > .inner .iconBlock .iconBox > li{
	display: table-cell;
	vertical-align: middle;
	padding-left: 5px;
}

header > .inner .iconBlock .iconBox .icon1{
	font-size: 20px;
	padding: 5px 5px 3px;
	background: #000;
	color: #fff;
}

header > .inner .iconBlock .iconBox .icon2{
	font-size: 15px;
	padding: 3px 8px;
	background: #fff;
	border: 1px solid #000;
}

	@media screen and (max-width:768px){

	header > .inner .iconBlock .iconBox .icon1{
		font-size: 3.7vw;
	}

	header > .inner .iconBlock .iconBox .icon2{
		font-size: 2.9vw;
	}

	}/* --- max-width:768px */

/* ############################### logoBlock */

header > .inner .logoBlock{
	margin-top: 5px;
}

header > .inner .logoBlock .logoBox{
	display: table;
}

header > .inner .logoBlock .logoBox > li{
	display: table-cell;
	vertical-align: middle;
}

header > .inner .logoBlock .logoBox .main{
	width: 590px;
	margin-right: 10px;
}

header > .inner .logoBlock .logoBox .official{
	width: 200px;
}

	@media screen and (max-width:768px){

	header > .inner .logoBlock .logoBox .main{
		width: 60vw;
		margin-right: 10px;
	}

	header > .inner .logoBlock .logoBox .official{
		width: 22vw;
	}

	}/* --- max-width:768px */

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ mvBlock */

main .mvBlock{
	position: relative;
}

main .mvBlock:before{
	content: '';
	position: absolute;
	display: block;
	background: #ffffcc;
	top: 0;
	left: 0;
	width: 100%;
	height: 620px;
	background-size: contain;
}

main .mvBlock .inner{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	flex: auto;
	width: 1100px;
	margin: auto;
	z-index: 2;
}

	@media screen and (max-width:768px){

	main .mvBlock:before{
		display: none;
	}

	main .mvBlock .inner{
		width: 100%;
	}

	}/* --- max-width:768px */

/* ############################### mvArea */

main .mvBlock .mvArea{
	width: 580px;
	height: 620px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: url(../img/mvBlock_bg.png) no-repeat center;
	background-size: contain;
}

main .mvBlock .mvArea .infoBox{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 320px;
	height: 200px;
	text-align: center;
	background: rgba(255,255,255,0.7);
}

main .mvBlock .mvArea .infoBox .txt{
	font-size: 24px;
	line-height: 1.3;
	font-weight: bold;
}

main .mvBlock .mvArea .infoBox .bttn{
	margin-top: 20px;
}

main .mvBlock .mvArea .infoBox .bttn a{
	display: inline-block;
	font-size: 20px;
	padding: 10px 30px;
	border-radius: 30px;
	background: #a50035;
	color: #fff;
}

	@media screen and (max-width:768px){

	main .mvBlock .mvArea{
		width: 100vw;
		height: 97vw;
		background-size: cover;
	}

	main .mvBlock .mvArea .infoBox{
		width: 56vw;
		height: 33vw;
	}

	main .mvBlock .mvArea .infoBox .txt{
		font-size: 4.5vw;
	}

	main .mvBlock .mvArea .infoBox .bttn{
		margin-top: 10px;
	}

	main .mvBlock .mvArea .infoBox .bttn a{
		font-size: 2.9vw;
		padding: 10px 20px 8px;
		border-radius: 30px;
	}

	}/* --- max-width:768px */

/* ############################### infoArea */

main .mvBlock .infoArea{
	width: 520px;
	display: flex;
	align-items: center;
	justify-content: center;
}

main .mvBlock .infoArea .wrap{
	width: 100%;
	padding: 0 20px;
	text-align: center;
}

main .mvBlock .infoArea .ttl_sub{
	background: #c5d700;
	padding: 8px;
	font-size: 20px;
	text-align: center;
	font-weight: bold;
	margin-top: 25px;
}
main .mvBlock .infoArea .ttl_sub:first-child{margin-top: 0;}

main .mvBlock .infoArea .date{
	margin-top: 15px;
}

main .mvBlock .infoArea .date .num{font-size: 45px;font-weight: bold;}
main .mvBlock .infoArea .date .ym{font-size: 18px;font-weight: bold;}
main .mvBlock .infoArea .date .time{font-size: 25px;font-weight: bold;}

main .mvBlock .infoArea .caution{
	color: #ff0000;
	margin-top: 10px;
}

main .mvBlock .infoArea .txt{
	margin-top: 15px;
	font-size: 20px;
	line-height: 1.5;
	font-weight: bold;
}

main .mvBlock .infoArea .picBox{
	display: table;
	margin-top: 10px;
}

main .mvBlock .infoArea .picBox > li{
	display: table-cell;
	text-align: center;
	vertical-align: top;
	width: 20%;
}

main .mvBlock .infoArea .picBox .name{
	margin-top: 5px;
	font-weight: bold;
}

	@media screen and (max-width:768px){

	main .mvBlock .infoArea{
		width: 100%;
		background: #fffcd5;
		padding: 50px 0;
		order: 3;
	}

	main .mvBlock .infoArea .wrap{
		padding: 0 0;
	}

	main .mvBlock .infoArea .ttl_sub{
		padding: 8px;
		font-size: 3.4vw;
		margin-top: 20px;
	}
	main .mvBlock .infoArea .ttl_sub:first-child{margin-top: 0;}

	main .mvBlock .infoArea .date{
		margin-top: 10px;
	}

	main .mvBlock .infoArea .date .num{font-size: 9vw;}
	main .mvBlock .infoArea .date .ym{font-size: 3vw;}
	main .mvBlock .infoArea .date .time{font-size: 4vw;}

	main .mvBlock .infoArea .caution{
		font-size: 2.9vw;
	}

	main .mvBlock .infoArea .txt{
		margin-top: 10px;
		font-size: 4vw;
	}

	main .mvBlock .infoArea .picBox .name{
		font-size: 2.6vw;
	}

	}/* --- max-width:768px */

/* ############################### etcArea */

main .mvBlock .etcArea{
	width: 100%;
	padding: 40px 0;
}

main .mvBlock .etcArea .wrap{
	width: 1000px;
	padding: 0 20px;
	margin: auto;
	text-align: center;
}

main .mvBlock .etcArea .imgBox{
	display: table;
	width: 100%;
}

main .mvBlock .etcArea .imgBox > li{
	display: table-cell;
	vertical-align: middle;
}

main .mvBlock .etcArea .imgBox .txt{
	font-size: 22px;
	font-weight: bold;
	line-height: 1.5;
}

main .mvBlock .etcArea .imgBox .caution{
	color: #ff0000;
	margin-top: 20px;
	font-size: 16px;
}

main .mvBlock .etcArea .imgBox .img{
	width: 370px;
}

	@media screen and (max-width:768px){

	main .mvBlock .etcArea{
		padding: 25px 0 0;
	}

	main .mvBlock .etcArea .wrap{
		width: 100%;
/*		padding: 0 5.3vw;*/
		padding: 0 20px;
	}

	main .mvBlock .etcArea .imgBox{
		display: block;
	}

	main .mvBlock .etcArea .imgBox > li{
		display: block;
	}

	main .mvBlock .etcArea .imgBox .txt{
		font-size: 4vw;
	}

	main .mvBlock .etcArea .imgBox .caution{
		color: #ff0000;
		margin-top: 20px;
		font-size: 2.9vw;
	}

	main .mvBlock .etcArea .imgBox .img{
		display: inline-block;
		width: 74vw;
		margin-top: 25px;
	}

	}/* --- max-width:768px */

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ aboutBlock */

main .aboutBlock{
	background: url(../img/aboutBlock_bg.png) no-repeat center top;
	background-size: cover;
	padding: 100px 0;
}

main .aboutBlock .inner{
	width: 1000px;
	padding: 0 20px;
	margin: auto;
}

main .aboutBlock .txt{
	margin-top: 25px;
	font-size: 20px;
	line-height: 1.7;
}

	@media screen and (max-width:768px){

	main .aboutBlock{
		padding: 150px 0 50px;
		background-size: 100% auto;
	}

	main .aboutBlock .inner{
		width: 100%;
/*		padding: 0 5.3vw;*/
		padding: 0 20px;
		margin: auto;
	}

	main .aboutBlock .txt{
		margin-top: 25px;
		font-size: 4vw;
	}

	}/* --- max-width:768px */

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ greetBlock */

main .greetBlock{
	background:  url(../img/greetBlock_bg.png) no-repeat center top #fffcd5;
	background-size: 100% auto;
	padding: 100px 0;
	position: relative;
	z-index: 0;
}

main .greetBlock:before{
	content: '';
	position: absolute;
	display: block;
	background: linear-gradient(to top,rgba(255,252,213,1) 0%,rgba(255,252,213,0.9) 70%,rgba(255,252,213,0) 100%);
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: contain;
	z-index: 1;
}

main .greetBlock .inner{
	width: 1000px;
	padding: 0 20px;
	margin: auto;
	position: relative;
	z-index: 2;
}

main .greetBlock .ttl_main{
	padding: 0 20px 20px;
	border-bottom: 2px solid #7fae12;
}

main .greetBlock .kaichoBox{
	display: table;
	margin-top: 30px;
}

main .greetBlock .kaichoBox .picSide{
	display: table-cell;
	vertical-align: top;
	text-align: center;
	padding-right: 20px;
}

main .greetBlock .kaichoBox .picSide .img{
	width: 230px;
}

main .greetBlock .kaichoBox .picSide .txt .katagaki{
	color: #7fae12;
	font-size: 14px;
	display: block;
	line-height: 1.5;
	margin-top: 5px;
}

main .greetBlock .kaichoBox .picSide .txt .name{
	color: #7fae12;
	font-size: 20px;
	font-weight: bold;
	display: block;
	line-height: 1.5;
}

main .greetBlock .kaichoBox .txtSide{
	display: table-cell;
	vertical-align: top;
}

main .greetBlock .kaichoBox .txtSide .txt{
	font-size: 20px;
	line-height: 1.8;
}

main .greetBlock .kaichoBox .accCont{
	padding-top: 20px;
}

	@media screen and (max-width:768px){

	main .greetBlock{
		padding: 115px 0 50px;
	}

	main .greetBlock:before{
		background: linear-gradient(to top,rgba(255,252,213,1) 0%,rgba(255,252,213,0.9) 90%,rgba(255,252,213,0) 100%);
	}

	main .greetBlock .inner{
		width: 100%;
/*		padding: 0 5.3vw;*/
		padding: 0 20px;
	}

	main .greetBlock .ttl_main{
		padding: 0 10px 15px;
	}

	main .greetBlock .kaichoBox{
		display: block;
	}

	main .greetBlock .kaichoBox .picSide{
		display: block;
		padding-right: 0;
		text-align: center;
	}

	main .greetBlock .kaichoBox .picSide .img{
		width: 32vw;
		display: inline-block;
	}

	main .greetBlock .kaichoBox .picSide .txt .katagaki{
		font-size: 2.9vw;
		margin-top: 10px;
	}

	main .greetBlock .kaichoBox .picSide .txt .name{
		font-size: 5vw;
	}

	main .greetBlock .kaichoBox .txtSide{
		display: block;
		margin-top: 15px;
	}

	main .greetBlock .kaichoBox .txtSide .txt{
		font-size: 4vw;
	}

	main .greetBlock .kaichoBox .accCont{
		padding-top: 20px;
	}

	}/* --- max-width:768px */

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ programBlock */

main .programBlock{

}

main .programBlock .ttlWrap{
	padding: 45px 0;
}

main .programBlock .ttlArea{
	background: #c5d700;
	padding: 20px 15px 15px;
	text-align: center;
	font-size: 24px;
	color: #fff;
	position: relative;
}

main .programBlock .ttlArea .ttl_sub{
	font-weight: bold;
}

main .programBlock .ttlArea:after{
	content: '';
	position: absolute;
	display: block;
	background: linear-gradient(to bottom,rgba(126,159,13,1) 0%,rgba(126,159,13,0) 100%);
	top: 0;
	left: 0;
	width: 100%;
	height: 10px;
	background-size: contain;
}

main .programBlock .inner{
	width: 1000px;
	margin: auto;
	padding: 20px 20px 50px;
}

main .programBlock .movBox{
	display: table;
	width: 100%;
}

	@media screen and (max-width:768px){

	main .programBlock .ttlWrap{
		padding: 30px 0 20px;
	}

	main .programBlock .ttlArea{
		padding: 17px 0 12px;
		font-size: 4vw;
	}

	main .programBlock .ttlArea:after{
		height: 5px;
	}

	main .programBlock .inner{
		width: 100%;
		padding: 20px 0 25px;
	}

	main .programBlock .movBox{
		display: block;
	}

	}/* --- max-width:768px */

/* ############################### movSide */

main .programBlock .movBox .movSide{
	display: table-cell;
	vertical-align: top;
	width: 540px;
}

main .programBlock .movBox .movSide .youtubeWrap{
	width: 500px;
}

	@media screen and (max-width:768px){

	main .programBlock .movBox .movSide{
		display: block;
		width: 100%;
		padding: 0 20px;
	}

	main .programBlock .movBox .movSide .youtubeWrap{
		width: 100%;
	}

	}/* --- max-width:768px */

/* ############################### infoSide */

main .programBlock .movBox .infoSide{
	display: table-cell;
	vertical-align: top;
}

main .programBlock .movBox .infoSide .ttl{
	color: #7fae12;
	font-weight: bold;
	padding: 10px;
	border-top: 2px solid #7fae12;
	border-bottom: 2px solid #7fae12;
	text-align: center;
	font-size: 20px;
}

main .programBlock .movBox .infoSide .ntable{
	width: 100%;
	font-size: 17px;
}

main .programBlock .movBox .infoSide .ntable tr{
	background: #ffffeb;
}
main .programBlock .movBox .infoSide .ntable tr:nth-child(even){background: #e5e4d2;}

main .programBlock .movBox .infoSide .ntable .num{
	color: #7fae12;
	text-align: center;
	width: 40px;
}

main .programBlock .movBox .infoSide .ntable .title{
	padding: 10px 10px 10px 0;
}

main .programBlock .movBox .infoSide .link{
	text-align: center;
	margin-top: 30px;
}

main .programBlock .movBox .infoSide .link .btn_pdf{
	position: relative;
}

main .programBlock .movBox .infoSide .link .btn_pdf:after{
	content: '';
	position: absolute;
	display: block;
	background: url(../img/icon_pdf.png) no-repeat center;
	top: 50%;
	margin-top: -17px;
	right: -40px;
	width: 32px;
	height: 32px;
	background-size: contain;
}

main .programBlock .movBox .infoSide .link .btn_pdf span{
	position: relative;
	color: #5ea0ef;
	font-size: 18px;
	text-decoration: underline;
	padding-left: 25px;
}
main .programBlock .movBox .infoSide .link .btn_pdf:hover span{text-decoration: none;}

main .programBlock .movBox .infoSide .link .btn_pdf span:before{
	content: '';
	position: absolute;
	display: block;
	top: 50%;
	margin-top: -5px;
	left: 0;
	width: 8px;
	height: 8px;
	border-right: 1px solid #5ea0ef;
	border-bottom: 1px solid #5ea0ef;
	transform: rotate(-45deg);
}

main .programBlock .movBox .infoSide .link .btn_pdf span:after{
	content: '';
	position: absolute;
	display: block;
	top: 50%;
	margin-top: -5px;
	left: 10px;
	width: 8px;
	height: 8px;
	border-right: 1px solid #5ea0ef;
	border-bottom: 1px solid #5ea0ef;
	transform: rotate(-45deg);
}

	@media screen and (max-width:768px){

	main .programBlock .movBox .infoSide{
		display: block;
		margin-top: 20px;
	}

	main .programBlock .movBox .infoSide .ttl{
		font-size: 4vw;
	}

	main .programBlock .movBox .infoSide .ntable{
		font-size: 4vw;
	}

	main .programBlock .movBox .infoSide .ntable .num{
		width: 40px;
	}

	main .programBlock .movBox .infoSide .ntable .title{
		padding: 10px 10px 10px 0;
	}

	main .programBlock .movBox .infoSide .link{
		margin-top: 20px;
	}

	main .programBlock .movBox .infoSide .link .btn_pdf:after{
		top: 50%;
		margin-top: -12px;
		right: -30px;
		width: 24px;
		height: 24px;
		background-size: contain;
	}

	main .programBlock .movBox .infoSide .link .btn_pdf span{
		font-size: 3vw;
		text-decoration: underline;
		padding-left: 20px;
	}

	main .programBlock .movBox .infoSide .link .btn_pdf span:before{
		margin-top: -0.7vw;
		width: 1.4vw;
		height: 1.4vw;
	}

	main .programBlock .movBox .infoSide .link .btn_pdf span:after{
		margin-top: -0.7vw;
		left: 1vw;
		width: 1.4vw;
		height: 1.4vw;
	}

	}/* --- max-width:768px */

/* ############################### elm3 */

main .programBlock .inner.elm3 .movBox .infoSide .wrap{
	padding: 20px 0 30px;
	text-align: center;
	font-size: 17px;
	line-height: 1.9;
	font-weight: bold;
}

main .programBlock .inner.elm3 .movBox .infoSide .wrap .txt span,
main .programBlock .inner.elm3 .movBox .infoSide .wrap .txt{
	font-weight: bold;
}

main .programBlock .inner.elm3 .movBox .infoSide .wrap .name{
	display: block;
}

main .programBlock .inner.elm3 .movBox .infoSide .wrap .name.op3{
	font-size: 15px;
}

	@media screen and (max-width:768px){

	main .programBlock .inner.elm3 .movBox .infoSide .wrap{
		padding: 10px 0 25px;
		font-size: 4vw;
	}

	main .programBlock .inner.elm3 .movBox .infoSide .wrap .name.op3{
		font-size: 3.5vw;
	}

	}/* --- max-width:768px */

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ shusaiBlock */

main .shusaiBlock{
	background: #f2f2f2;
	text-align: center;
	padding: 20px 0;
}

main .shusaiBlock .inner{
	width: 1000px;
	padding: 0 20px;
	margin: auto;
}

main .shusaiBlock .inner .wrap{
	display: inline-block;
}

main .shusaiBlock .listBox{
	display: table;
	font-size: 16px;
	margin-top: 10px;
}

main .shusaiBlock .listBox > *{
	display: table-cell;
}

main .shusaiBlock .listBox > dt{
	font-weight: bold;
}

	@media screen and (max-width:768px){

	main .shusaiBlock{
		padding: 25px 0;
	}

	main .shusaiBlock .inner{
		width: 100%;
/*		padding: 0 5.3vw;*/
		padding: 0 20px;
	}

	main .shusaiBlock .listBox{
		font-size: 2.9vw;
		margin-top: 5px;
	}

	main .shusaiBlock .listBox > *{
		text-align: left;
		line-height: 1.5;
	}

	main .shusaiBlock .listBox > dt{
		white-space: nowrap;
	}

	}/* --- max-width:768px */

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ kyosanBlock */

main .kyosanBlock{
	padding: 20px 0 30px;
}

main .kyosanBlock .inner{
	width: 1000px;
	padding: 0 20px;
	margin: auto;
	text-align: center;
}

main .kyosanBlock .imgBox{
	display: table;
	margin: auto;
}

main .kyosanBlock .imgBox > li{
	display: table-cell;
	vertical-align: middle;
}

main .kyosanBlock .imgBox > li .charity{
	display: inline-block;
	width: 330px;
	margin-right: 20px;
}

main .kyosanBlock .imgBox > li .rojin{
	display: inline-block;
	width: 330px;
	margin-left: 20px;
}

main .kyosanBlock .img{
	display: inline-block;
	width: 280px;
	margin-top: 40px;
}

main .kyosanBlock .kyosai{
	display: block;
	font-size: 16px;
	padding: 10px 0 8px;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
	margin-bottom: 15px;
}

	@media screen and (max-width:768px){

	main .kyosanBlock{
		padding: 10px 0 30px;
	}

	main .kyosanBlock .inner{
		width: 100%;
/*		padding: 0 5.3vw;*/
		padding: 0 20px;
	}

	main .kyosanBlock .imgBox{
		display: block;
	}

	main .kyosanBlock .imgBox > li{
		display: block;
		text-align: center;
	}

	main .kyosanBlock .imgBox > li .charity{
		width: 66vw;
		margin-right: 0;
	}

	main .kyosanBlock .imgBox > li .rojin{
		display: inline-block;
		width: 64vw;
		margin-left: 0;
		margin-top: 20px;
	}

	main .kyosanBlock .img{
		display: inline-block;
		width: 53vw;
		margin-top: 30px;
	}

	main .kyosanBlock .kyosai{
		font-size: 2.9vw;
		padding: 8px 0 5px;
		margin-bottom: 10px;
	}

	}/* --- max-width:768px */

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ footer */

footer .contactBlock{
	background: #c5d700;
	padding: 40px 0;
	position: relative;
}

footer .contactBlock:after{
	content: '';
	position: absolute;
	display: block;
	background: linear-gradient(to bottom,rgba(126,159,13,1) 0%,rgba(126,159,13,0) 100%);
	top: 0;
	left: 0;
	width: 100%;
	height: 10px;
	background-size: contain;
}

footer .contactBlock .inner{
	width: 1000px;
	padding: 0 20px;
	margin: auto;
	text-align: center;
}

footer .contactBlock .ttl_sub{
	width: 480px;
	display: inline-block;
}

footer .contactBlock .contactBox p{
	font-size: 20px;
	margin-top: 10px;
}

footer .contactBlock .contactBox p.name{
	margin-top: 20px;
	font-weight: bold;
}

footer .contactBlock .contactBox p.name2{
	font-size: 24px;
	font-weight: bold;
}

footer .contactBlock .contactBox p.link{
	margin-top: 30px;
}

footer .contactBlock .contactBox p.link a{
	color: #fff;
	text-decoration: underline;
}
footer .contactBlock .contactBox p.link a:hover{text-decoration: none;}

footer .contactBlock .contactBox p.link a .arw{
	display: inline-block;
	transform: rotate(90deg);
}

footer .copyBlock{
	background: #000;
	color: #fff;
	text-align: center;
	font-size: 20px;
	padding: 20px;
}

footer .copyBlock p{
	width: 1000px;
	margin: auto;
}

	@media screen and (max-width:768px){

	footer .contactBlock{
		padding: 30px 0;
	}

	footer .contactBlock:after{
		height: 5px;
	}

	footer .contactBlock .inner{
		width: 100%;
		padding: 0 10px;
	}

	footer .contactBlock .ttl_sub{
		width: 88vw;
		display: inline-block;
	}

	footer .contactBlock .contactBox p{
		font-size: 3.4vw;
		margin-top: 10px;
	}

	footer .contactBlock .contactBox p.name{
		margin-top: 20px;
		font-size: 3.4vw;
	}

	footer .contactBlock .contactBox p.name2{
		font-size: 4vw;
	}

	footer .contactBlock .contactBox p.link{
		margin-top: 25px;
		font-size: 3.4vw;
	}

	footer .contactBlock .contactBox p.link a .arw{
		display: inline-block;
	}

	footer .copyBlock{
		font-size: 2.7vw;
		padding: 15px;
	}

	footer .copyBlock p{
		width: 100%;
	}

	}/* --- max-width:768px */

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ kyosanBlock */

.ketsujo{
	display: inline-block;
	color: #888;
	padding: 2px 10px;
	background: #fff;
	border: 1px solid #555;
	border-radius: 10px;
	margin-left: 5px;
	font-size: 0.9em;
}
