@charset "utf-8";

/* ****************************************************
Title: layout.css
***************************************************** */

@import url('https://fonts.googleapis.com/css2?family=Lateef&display=swap');

/* -------------------------------------------------------------------- 
 body
-------------------------------------------------------------------- */

body {
 color: #000000;

	/*font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";*/
/* font-family:	"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "HiraginoKaku-W3-90msp-RKSJ-H", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","メイリオ" , "Meiryo" , "ＭＳ Ｐゴシック",  Verdana, Osaka, "MS PGothic", Sans-Serif;*/
 font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "HiraginoKaku-W3-90msp-RKSJ-H", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","メイリオ" , "Meiryo" , "ＭＳ Ｐゴシック", Verdana, Osaka, "MS PGothic", Sans-Serif;

font-size: 13px;
 *font-size:small;
 *font:x-small;
 text-align: center;
	text-size-adjust: 100%;
	-moz-text-size-adjust: none;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	max-height: 999999px;
}

.fontYuMin01 {
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}

.webFontLateef {
	font-family: 'Lateef', cursive;
}

#top {
	overflow: hidden;
	/*min-width: 1500px;*/
}

#wrap {
	/*overflow: hidden;*/
	/*width: 640px;*/
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	padding: 0px;
	/*min-width: 1000px;*/
}
#wrap.wrap02 {
	background-color: #ffffff;
}

img {
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
}

a {
	display: inline-block;
}
.relative-wrap {
	position: relative;
}

.contDispN {
	display: none;
}

p, span, dt, dd, th, td, li, h1, h2, h3, h4 {
	max-height: 999999px;
	background-image: url(../img/spacer.gif);
}


/*-----------------------*/

.anc {
	position: relative;
	font-size: 0px;
	line-height: 0px;
}
.ancIn {
	position: absolute;
	/*top: -66px;*/
}

#top {
	/*padding-top: 66px;*/
}

/*-----------------------*/

.pc {
	display: block;
}

.sp {
	display: none;
}

.pcBr {
	display: inline;
}

.spBr {
	display: none;
}

.pcTable {
	display: table !important;
}
.spTable {
	display: none !important;
}

.contIn960 {
	width: 960px;
	max-width: 100%;
	margin: 0px auto;
	position: relative;
}
.contBox770 {
	width: 770px;
	max-width: 100%;
	margin: auto;
	text-align: left;
}
.contBox960 {
	width: 960px;
	max-width: 100%;
	margin: auto;
	text-align: left;
}


.radius300 {
	-moz-border-radius: 300px;
	-webkit-border-radius: 300px;
	-o-border-radius: 300px;
	-ms-border-radius: 300px;
	border-radius: 300px;
}
.radius3 {
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-o-border-radius: 3px;
	-ms-border-radius: 3px;
	border-radius: 3px;
}
.radius2 {
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	-o-border-radius: 2px;
	-ms-border-radius: 2px;
	border-radius: 2px;
}




@media screen and (max-width:768px) {
/*@media screen and (max-width:799px) {*/

/*デバイスwidth、～799px用のスタイルを記入*/

	body {

	/* font-family:	"HiraginoKaku-W3-90msp-RKSJ-H", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","メイリオ" , "Meiryo" , "ＭＳ Ｐゴシック",  Verdana, Osaka, "MS PGothic", Sans-Serif;*/

	}

	#top {
		/*overflow: hidden;*/
		min-width: 375px;
	}

	#wrap {
		/*overflow: hidden;*/
		width: auto;
		margin-top: 0px;
		margin-right: auto;
		margin-bottom: 0px;
		margin-left: auto;
		padding: 0px;
		/*min-width: 375px;*/
	}

	img {
		/*max-width: 700px;*/
		width: 100%;
		height: auto;
	}

	/*-----------------------*/

	.anc {
		position: relative;
	}
	.ancIn {
		position: absolute;
		/*top: -66px;*/
	}

	#top {
		/*padding-top: 66px;*/
	/*position: relative;
	z-index: 1;
	min-width: 0px;*/
	}

	/*-----------------------*/

	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
	.pcBr {
		display: none;
	}
	.spBr {
		display: inline;
	}

	.pcTable {
		display: none !important;
	}
	.spTable {
		display: table !important;
	}



}


/* -------------------------------------------------------------------- 
 header
-------------------------------------------------------------------- */

.headerWrap01 {
	display: flex;
	justify-content: space-between;
	align-items: center;
	box-sizing: border-box;
	width: 100%;
	height: 85px;
	position: absolute;
	top: 0px;
	left: 0px;
	z-index: 9000;
}
.headerLogo01 {
	padding: 10px 30px 10px 30px;
}
.headerLogo01 img {
	width: 141px;
	height: auto;
}

.headerRight01 {
	display: flex;
	align-items: center;
}
.snsTit01 {
	color: #ABBAAB;
	font-size: 14px;
	line-height: 1.0em;
	font-weight: bold;
	margin-right: 24px;
}

.snsBtn {
	margin-right: 16px;
}
.snsBtn img {
	width: 30px;
	height: auto;
}

.headerMenu01Wrap {
	width: 90px;
}
.headerMenu01 {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #d1d9d1;
	width: 90px;
	height: 85px;
	position: fixed;
	top: 0px;
	right: 0px;
	z-index: 9999;
}
.headerMenu01 img {
	width: 31px;
	height: auto;
}

/*-------------------*/

.slideNaviWrap01 {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0px;
	right: 0px;
	z-index: 9999;
	visibility: hidden;
	opacity: 0;
	transition-duration: 0.2s;
}
.slideNaviWrap01.open {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0px;
	right: 0px;
	z-index: 9999;
  visibility: visible;
  opacity: 1;
  transition-duration: 0.2s;
}

.slideNaviWrap01In {
	background-color: #ABBAAB;
	box-sizing: border-box;
	text-align: left;
	padding: 30px 30px 30px 30px;
	width: 420px;
	height: 100%;
	position: absolute;
	top: 0px;
	right: -600px;
  transition-duration: 0.4s;
	overflow: auto;
}
.open .slideNaviWrap01In {
	right: 0px;
}

.slideNaviBg01 {
	background-color: #ffffff;
	opacity: 0.55;
	width: 120vw;
	height: 120vh;
	position: fixed;
	top: 0px;
	left: 0px;
}
.closeBtn01 {
	position: absolute;
	top: 21px;
	right: 21px;
}
.closeBtn01 img {
	width: 18px;
	height: auto;
}

.naviTit01 {
	margin-bottom: 18px;
}
.naviTit01 img {
	width: 139px;
	height: auto;
}

.naviContBox01 {
	display: flex;
	border-bottom: 1px solid #ffffff;
}
.naviContBox01.borderNon {
	border-bottom: none;
}

.naviFlexBox01 {
	padding: 12px 0px 4px 0px;
}
.naviFlexBox01 img {
	width: 55px;
	height: auto;
}

.naviFlexBox02 {
	padding: 24px 0px 4px 24px;
}
.naviFlexBox02 .link01 {
	font-size: 14px;
	line-height: 1.0em;
	font-weight: bold;
	margin-bottom: 12px;
}
.naviFlexBox02 .link02 li {
	font-size: 12px;
	line-height: 1.25em;
	font-weight: bold;
	position: relative;
	padding-left: 16px;
	margin-bottom: 8px;
}
.naviFlexBox02 .link02 li::before {
	content: "";
	width: 8px;
	height: 1px;
	background-color: #FFFFFF;
	position: absolute;
	left: 0px;
	top: 50%;
}

.slideNaviWrap01In a:link {	color: #ffffff;	text-decoration: none;}
.slideNaviWrap01In a:visited {	color: #ffffff;	text-decoration: none;}
.slideNaviWrap01In a:hover {	color:#ffffff;	text-decoration: underline;}
.slideNaviWrap01In a:active {	color:#ffffff;	text-decoration: none;}

.naviSnsWrap01 {
	display: flex;
	align-items: center;
	margin-top: 30px;
}
.naviSnsWrap01 .snsTit01 {
	color: #ffffff;
	font-size: 12px;
	line-height: 1.0em;
	font-weight: bold;
	margin-right: 22px;
}

.naviSnsWrap01 .snsBtn {
	margin-right: 12px;
}
.naviSnsWrap01 .snsBtn img {
	width: 25px;
	height: auto;
}



@media screen and (max-width:768px) {
/*@media screen and (max-width:799px) {*/

	.headerWrap01 {
		display: flex;
		justify-content: space-between;
		align-items: center;
		box-sizing: border-box;
		width: 100%;
		height: 60px;
	}
	.headerLogo01 {
		padding: 10px 24px 10px 16px;
	}
	.headerLogo01 img {
		width: 96px;
		height: auto;
	}

	.headerRight01 {
		display: flex;
		align-items: center;
	}
	.snsTit01 {
		color: #ABBAAB;
		font-size: 12px;
		line-height: 1.0em;
		font-weight: bold;
		margin-right: 18px;
	}

	.snsBtn {
		margin-right: 12px;
	}
	.snsBtn img {
		width: 24px;
		height: auto;
	}

	.headerMenu01Wrap {
		width: 60px;
	}
	.headerMenu01 {
		display: flex;
		justify-content: center;
		align-items: center;
		background-color: #d1d9d1;
		width: 60px;
		height: 60px;
	}
	.headerMenu01 img {
		width: 31px;
		height: auto;
	}

	/*-------------------*/

	.slideNaviWrap01 {
		width: 100%;
		height: 100%;
		position: fixed;
		top: 0px;
		right: 0px;
		z-index: 9999;
		visibility: hidden;
		opacity: 0;
		transition-duration: 0.2s;
	}
	.slideNaviWrap01.open {
		width: 100%;
		height: 100%;
		position: fixed;
		top: 0px;
		right: 0px;
		z-index: 9999;
		visibility: visible;
		opacity: 1;
		transition-duration: 0.2s;
	}

	.slideNaviWrap01In {
		background-color: #ABBAAB;
		box-sizing: border-box;
		text-align: left;
		padding: 30px 30px 30px 30px;
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0px;
		right: -600px;
		transition-duration: 0.4s;
		overflow: auto;
	}
	.open .slideNaviWrap01In {
		right: 0px;
	}

	.slideNaviBg01 {
		background-color: #ffffff;
		opacity: 0.55;
		width: 120vw;
		height: 120vh;
		position: fixed;
		top: 0px;
		left: 0px;
	}
	.closeBtn01 {
		position: absolute;
		top: 21px;
		right: 21px;
	}
	.closeBtn01 img {
		width: 18px;
		height: auto;
	}

	.naviTit01 {
		margin-bottom: 18px;
	}
	.naviTit01 img {
		width: 139px;
		height: auto;
	}

	.naviContBox01 {
		display: flex;
	}

	.naviFlexBox01 {
		padding: 12px 0px 4px 0px;
	}
	.naviFlexBox01 img {
		width: 55px;
		height: auto;
	}

	.naviFlexBox02 {
		padding: 24px 0px 4px 24px;
	}
	.naviFlexBox02 .link01 {
		font-size: 14px;
		line-height: 1.0em;
		font-weight: bold;
		margin-bottom: 12px;
	}
	.naviFlexBox02 .link02 li {
		font-size: 12px;
		line-height: 1.25em;
		font-weight: bold;
		position: relative;
		padding-left: 16px;
		margin-bottom: 8px;
	}
	.naviFlexBox02 .link02 li::before {
		content: "";
		width: 8px;
		height: 1px;
		background-color: #FFFFFF;
		position: absolute;
		left: 0px;
		top: 50%;
	}

	.slideNaviWrap01In a:link {	color: #ffffff;	text-decoration: none;}
	.slideNaviWrap01In a:visited {	color: #ffffff;	text-decoration: none;}
	.slideNaviWrap01In a:hover {	color:#ffffff;	text-decoration: underline;}
	.slideNaviWrap01In a:active {	color:#ffffff;	text-decoration: none;}

	.naviSnsWrap01 {
		display: flex;
		align-items: center;
		margin-top: 30px;
	}
	.naviSnsWrap01 .snsTit01 {
		color: #ffffff;
		font-size: 12px;
		line-height: 1.0em;
		font-weight: bold;
		margin-right: 22px;
	}

	.naviSnsWrap01 .snsBtn {
		margin-right: 12px;
	}
	.naviSnsWrap01 .snsBtn img {
		width: 25px;
		height: auto;
	}




}



/* -------------------------------------------------------------------- 
 main
-------------------------------------------------------------------- */

.mainvisualWrap01 {
	height: 90vh;
	position: relative;
}
.mainvisualbg01 {
	width: 100%;
	height: 100%;
	background-image: url("../img/mainvisual01.jpg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	position: absolute;
	top: 0px;
	left: 0px;
}
.mainvisualCont01 {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	width: 100%;
	height: 100%;
	position: relative;
	top: 0px;
	left: 0px;
}

.mainH201 span {
	display: block;
}
.mainH201 .s01 img {
	width: 333px;
	height: auto;
	margin-bottom: 15px;
}
.mainH201 .s02 img {
	width: 332px;
	height: auto;
}
.mainH201 .s03 img {
	width: 240px;
	height: auto;
}

.mainH201 .s01 {
		animation-delay: 1.2s;
		-webkit-animation-delay:1.2s;
}
.mainH201 .s02 {
		animation-delay: 2.2s;
		-webkit-animation-delay: 2.2s;
}
.mainH201 .s03 {
		animation-delay: 3.2s;
		-webkit-animation-delay: 3.2s;
}

.mainvisualTyusyaku01 {
	font-size: 14px;
	line-height: 2.0em;
	font-weight: 500;
	text-align: right;
	padding: 4px 14px 4px 14px;
}

/*---------------------*/

.contBlockRead01 {
	padding: 54px 50px 80px 50px;
	text-align: center;
}
.contText16_20 {
	font-size: 16px;
	line-height: 2.0em;
	font-weight: 500;
}

/*-------------------*/

.contBlockInfo01 {
	background-color: #F8FAF8;
	padding: 90px 40px 110px 40px;
}
.contH301 {
	margin-bottom: 50px;
	text-align: center;
}
.contH301 .s01 {
	display: block;
	font-size: 48px;
	line-height: 1.0em;
	margin-bottom: 0px;
}
.contH301 .s02 {
	display: block;
	font-size: 14px;
	line-height: 2.0em;
	font-weight: bold;
}

.contText16_16 {
	font-size: 16px;
	line-height: 1.6em;
	font-weight: 500;
	margin-bottom: 24px;
}
.contMb40 {
	margin-bottom: 40px;
}
.contTyusyaku01 {
	font-size: 14px;
	line-height: 1.6em;
	font-weight: 500;
}

/*--------------------*/

.contAccessFlex01 {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	margin-top: 60px;
}

.contAccessFlexBox01 {
	width: 350px;
}
.contAccessFlexBox02 {
	width: 561px;
}
.contH401 {
	font-size: 36px;
	line-height: 1.0em;
	margin-bottom: 25px;
}

.contAccessDl01 {
	margin-top: 28px;
}
.contAccessDl01 dt {
	font-size: 16px;
	line-height: 1.5em;
	font-weight: bold;
	padding-bottom: 6px;
	border-bottom: 1px solid #707070;
	margin-bottom: 8px;
}
.contAccessDl01 dd {
	font-size: 14px;
	line-height: 1.6em;
	font-weight: 500;
}

/*---------------------*/

.tab-group{
  display: inline-flex;
  /*justify-content: center;*/
}
.tab{
  flex-grow: 1;
	box-sizing: border-box;
	width: 124px;
  padding: 5px;
	margin-right: 8px;
  list-style: none;
  border: solid 1px #262626;
  text-align: center;
  cursor: pointer;
}
.panel-group{
}
.panel{
  display: none;
}
.tab.is-active{
  background: #262626;
  color: #FFF;
  transition: all 0.2s ease-out;
}
.panel.is-show{
  display: block;
}

/*---------------------*/

.ancBlockWrap01 {
	background-color: #D1DAD1;
	padding: 70px 40px 70px 40px;
}
.ancBlockFlex01 {
	display: inline-flex;
	margin: auto;
}

.ancBtnWrap01 {
	display: block;
	padding-bottom: 28px;
	position: relative;
	margin: 0px 37px 0px 37px;
    /*-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;*/
}
.ancBtnWrap01:link {	color: #262626;	text-decoration: none;}
.ancBtnWrap01:visited {	color: #262626;	text-decoration: none;}
.ancBtnWrap01:hover {
	color:#ffffff;
	text-decoration: none;
}
.ancBtnWrap01:active {	color:#262626;	text-decoration: none;}

.ancBtnWrap01::after {
  content: '';
  width: 16px;
  height: 16px;
  border: 0px;
  border-top: solid 1px #262626;
  border-right: solid 1px #262626;
  -ms-transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  position: absolute;
  bottom: 4px;
	left: 50%;
	margin-left: -8px;
}
.ancBtnWrap01:hover::after {
  border-top: solid 1px #ffffff;
  border-right: solid 1px #ffffff;
}

.ancBtnWrap01 .ancDay {
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 122px auto;
	width: 122px;
	height: 116px;
}
.ancBtnWrap01 .ancDay.day01 {
	background-image: url("../img/anc_day01.png");
}
.ancBtnWrap01 .ancDay.day02 {
	background-image: url("../img/anc_day02.png");
}
.ancBtnWrap01 .ancDay.day03 {
	background-image: url("../img/anc_day03.png");
}
.ancBtnWrap01 .ancDay.day04 {
	background-image: url("../img/anc_day04.png");
}
.ancBtnWrap01:hover .ancDay.day01 {
	background-image: url("../img/anc_day01_on.png");
}
.ancBtnWrap01:hover .ancDay.day02 {
	background-image: url("../img/anc_day02_on.png");
}
.ancBtnWrap01:hover .ancDay.day03 {
	background-image: url("../img/anc_day03_on.png");
}
.ancBtnWrap01:hover .ancDay.day04 {
	background-image: url("../img/anc_day04_on.png");
}

.ancBtnWrap01 .ancText01 {
	height: 48px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	font-size: 14px;
	line-height: 1.43em;
	font-weight: bold;
}

/*---------------------*/

.contDayBlock01 {
	padding: 160px 40px 0px 40px;
}
.contH302 {
	text-align: center;
	padding-bottom: 54px;
	position: relative;
	margin-bottom: 50px;
}
.contH302::after {
	content: "";
	width: 1px;
	height: 40px;
	background-color: #262626;
	position: absolute;
	bottom: 0px;
	left: 50%;
}

.contH302 .s01 {
	display: block;
}
.contH302 .s01 img {
	width: 190px;
	height: auto;
}
.contH302 .s02 {
	display: block;
	margin-top: 15px;
}
.contH302 .s02 span {
	display: inline-block;
	font-size: 25px;
	line-height: 1.4em;
	font-weight: bold;
	position: relative;
}
.contH302 .s02 span::before {
	content: "";
	width: 5px;
	height: 5px;
	background-color: #262626;
	position: absolute;
	left: -22px;
	top: 50%;
	margin-top: -2px;
}
.contH302 .s02 span::after {
	content: "";
	width: 5px;
	height: 5px;
	background-color: #262626;
	position: absolute;
	right: -22px;
	top: 50%;
	margin-top: -2px;
}

.contDayBox01 {
	padding-top: 40px;
	margin-bottom: 100px;
}
.contH402 {
	font-size: 28px;
	line-height: 1.43em;
	font-weight: 500;
	margin-bottom: 50px;
}

.contImgWrap {
	margin: 56px 0px 32px 0px;
}
.contImgWrap p {
	font-size: 14px;
	line-height: 1.6em;
	font-weight: 500;
}
.contImgInBox01 {
	position: relative;
	height: 640px;
}
.contImg01 {
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	width: calc(100vw - ((100vw - 770px) / 2 ));
	height: 100%;
	position: absolute;
	top: 0px;
}

.contImgWrapLeft01 .contImg01 {
	right: 0px;
}
.contImgWrapLeft01 {
	text-align: right;
}

.contImgWrapRight01 .contImg01 {
	left: 0px;
}
.contImgWrapRight01 {
	text-align: left;
}

/*----------------------*/

.contActivityBlock01 {
	background-color: #D1DAD1;
	box-sizing: border-box;
	padding: 30px 40px 90px 40px;
	position: relative;
	width: 100vw;
	margin-left: -40px;
}
.contActivityBlock01::before {
	content: "";
	width: 1px;
	height: 22px;
	background-color: #262626;
	position: absolute;
	top: -22px;
	left: 50%;
}
.contActivityBlock01::after {
	content: "";
	width: 1px;
	height: 22px;
	background-color: #ffffff;
	position: absolute;
	top: 0px;
	left: 50%;
}

.contH303 {
	text-align: center;
	margin-bottom: 38px;
}
.contH303 .s01 {
	display: block;
	font-size: 48px;
	line-height: 1.0em;
}
.contH303 .s02 {
	display: block;
	font-size: 14px;
	line-height: 1.6em;
	font-weight: bold;
}

.contActivityBox01:first-child {
	margin-top: 0px;
}
.contActivityBox01 {
	background-color: #ffffff;
	padding: 24px 24px 24px 24px;
	margin-top: 50px;
	display: flex;
	justify-content: space-between;
}
.contActivityFlexBox01 {
	width: 46%;
}
.contActivityFlexBox02 {
	width: 50%;
}
.contActivityFlexBox02 .h401 {
	font-size: 18px;
	line-height: 1.6em;
	font-weight: bold;
	padding-bottom: 4px;
	border-bottom: 1px solid #EDF0ED;
	margin-bottom: 8px;
}
.contActivityFlexBox02 .boxFlex01 {
	display: flex;
	border-bottom: 1px dashed #D1DAD1;
	font-size: 14px;
	line-height: 1.6em;
	font-weight: bold;
	padding: 5px 0px 5px 0px;
}
.contActivityFlexBox02 .boxFlex01:last-child {
	border-bottom: none;
}

.contActivityFlexBox02 .boxFlex01 .p01 {
	flex-shrink: 0;
	box-sizing: border-box;
	width: 6em;
}
.contActivityFlexBox02 .boxFlex01 .p02 span {
	font-weight: 500;
}

.contActivityBtnWrap01 {
	margin-top: 24px;
	text-align: right;
}
.contActivityBtn01 {
	display: flex;
	align-items: center;
	background-color: #262626;
	border: 1px solid #262626;
	text-align: left;
	font-size: 16px;
	line-height: 1.0em;
	font-weight: bold;
	box-sizing: border-box;
	width: 226px;
	height: 44px;
	margin: 0px 0px 0px auto;
	padding: 4px 40px 4px 18px;
	position: relative;
}
.contActivityBtn01:link {	color: #ffffff;	text-decoration: none;}
.contActivityBtn01:visited {	color: #ffffff;	text-decoration: none;}
.contActivityBtn01:hover {
	color:#262626;
	background-color: #ffffff;
	text-decoration: none;
}
.contActivityBtn01:active {	color:#ffffff;	text-decoration: none;}

.contActivityBtn01::after {
	content: "";
	background-image: url("../img/btn_ar01.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: auto 6px;
	height: 6px;
	width: 22px;
	position: absolute;
	right: 14px;
	top: 50%;
	margin-top: -3px;
}
.contActivityBtn01:hover::after {
	background-image: url("../img/btn_ar01_on.png");
}

/*----------------------*/

.informationBlock01 {
	padding: 160px 40px 160px 40px;
}
.informationBox01 {
	box-sizing: border-box;
	border: 1px solid #D1DAD1;
	padding: 40px 40px 40px 40px;
}
.informationBoxIn01 {
	margin-top: 70px;
}
.contH403 {
	font-size: 22px;
	line-height: 1.5em;
	font-weight: bold;
	margin-bottom: 22px;
}
.informationFlex01 {
	display: flex;
	justify-content: space-between;
}
.informationFlex01 .flexBox01 {
	width: 448px;
	margin-right: 20px;
}
.informationFlex01 .flexBox02 {
	width: 400px;
}
.informationFlex01 .flexBox02 .img01 {
	width: 242px;
}
.informationFlex01 .flexBox02 .ul01 {
	margin-top: 20px;
}
.informationFlex01 .flexBox02 .ul01 li {
	font-size: 14px;
	line-height: 1.3em;
	font-weight: 500;
	margin-bottom: 5px;
	text-indent: -1em;
	padding-left: 1em;
}
.infoLink01 {
	margin-top: 20px;
	text-align: right;
}
.infoLink01 a {
	display: inline-block;
	padding-right: 34px;
	background-image: url("../img/btn_ar01_on.png");
	background-repeat: no-repeat;
	background-position: right center;
	background-size: auto 6px;
	font-size: 14px;
	line-height: 1.6em;
}
.infoLink01 a:link {	color: #262626;	text-decoration: none;}
.infoLink01 a:visited {	color: #262626;	text-decoration: none;}
.infoLink01 a:hover {	color:#262626;	text-decoration: underline;}
.infoLink01 a:active {	color:#262626;	text-decoration: none;}

/*---------------------*/

.bannerBlock01 {
	padding: 25px 40px 25px 40px;
}
.bannerFlex01 {
	display: inline-flex;
	align-items: center;
	margin-bottom: 8px;
}
.bannerFlex01 li {
	padding: 0px 10px 0px 10px;
}
.bannerFlex01 li.bann01 {
	padding: 0px 25px 0px 10px;
}

.bannerFlex01 .bann01 img {
	width: 240px;
	height: auto;
}
.bannerFlex01 .bann02 img {
	width: 29px;
	height: auto;
}
.bannerFlex01 .bann03 img {
	width: 29px;
	height: auto;
}


@media screen and (max-width:768px) {
/*@media screen and (max-width:799px) {*/

	.mainvisualWrap01 {
		height: 90vh;
		position: relative;
	}
	.mainvisualbg01 {
		width: 100%;
		height: 100%;
		background-image: url("../img/mainvisual01_sp.jpg");
		background-repeat: no-repeat;
		background-position: right center;
		background-size: cover;
		position: absolute;
		top: 0px;
		left: 0px;
	}
	.mainvisualCont01 {
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
		width: 100%;
		height: 100%;
		position: relative;
		top: 0px;
		left: 0px;
	}

	.mainH201 span {
		display: block;
	}
	.mainH201 .s01 img {
		width: 270px;
		height: auto;
		margin-bottom: 15px;
	}
	.mainH201 .s02 img {
		width: 236px;
		height: auto;
	}
	.mainH201 .s03 img {
		width: 172px;
		height: auto;
	}

	.mainH201 .s01 {
			animation-delay: 1.2s;
			-webkit-animation-delay:1.2s;
	}
	.mainH201 .s02 {
			animation-delay: 1.8s;
			-webkit-animation-delay: 1.8s;
	}
	.mainH201 .s03 {
			animation-delay: 2.4s;
			-webkit-animation-delay: 2.4s;
	}

	.mainvisualTyusyaku01 {
		font-size: 14px;
		line-height: 2.0em;
		font-weight: 500;
		text-align: right;
		padding: 4px 14px 4px 14px;
	}

	/*---------------------*/

	.contBlockRead01 {
		padding: 30px 20px 50px 20px;
		text-align: left;
	}
	.contText16_20 {
		font-size: 16px;
		line-height: 1.6em;
		font-weight: 500;
	}

	/*-------------------*/

	.contBlockInfo01 {
		background-color: #F8FAF8;
		padding: 45px 20px 50px 20px;
	}
	.contH301 {
		margin-bottom: 50px;
		text-align: center;
	}
	.contH301 .s01 {
		display: block;
		font-size: 48px;
		line-height: 1.0em;
		margin-bottom: 0px;
	}
	.contH301 .s02 {
		display: block;
		font-size: 14px;
		line-height: 2.0em;
		font-weight: bold;
	}

	.contText16_16 {
		font-size: 16px;
		line-height: 1.6em;
		font-weight: 500;
		margin-bottom: 24px;
	}
	.contMb40 {
		margin-bottom: 40px;
	}
	.contTyusyaku01 {
		font-size: 14px;
		line-height: 1.6em;
		font-weight: 500;
	}

	/*--------------------*/

	.contAccessFlex01 {
		display: block;
		margin-top: 40px;
	}

	.contAccessFlexBox01 {
		width: auto;
	}
	.contAccessFlexBox02 {
		width: auto;
	}
	.contH401 {
		font-size: 36px;
		line-height: 1.0em;
		margin-bottom: 25px;
	}

	.contAccessDl01 {
		margin-top: 28px;
	}
	.contAccessDl01 dt {
		font-size: 16px;
		line-height: 1.5em;
		font-weight: bold;
		padding-bottom: 6px;
		border-bottom: 1px solid #707070;
		margin-bottom: 8px;
	}
	.contAccessDl01 dd {
		font-size: 14px;
		line-height: 1.6em;
		font-weight: 500;
	}

	/*---------------------*/

	.tab-group{
		display: inline-flex;
		/*justify-content: center;*/
	}
	.tab{
		flex-grow: 1;
		box-sizing: border-box;
		width: 124px;
		padding: 5px;
		margin-right: 8px;
		list-style: none;
		border: solid 1px #262626;
		text-align: center;
		cursor: pointer;
	}
	.panel-group{
	}
	.panel{
		display: none;
	}
	.tab.is-active{
		background: #262626;
		color: #FFF;
		transition: all 0.2s ease-out;
	}
	.panel.is-show{
		display: block;
	}

	/*---------------------*/

	.ancBlockWrap01 {
		background-color: #D1DAD1;
		padding: 16px 0px 16px 0px;
	}
	.ancBlockFlex01 {
		display: block;
		margin: auto;
	}

	.ancBtnWrap01 {
		display: flex;
		align-items: center;
		padding-bottom: 0px;
		position: relative;
		box-sizing: border-box;
		width: 100%;
		padding: 16px 30px 16px 20px;
		border-bottom: 1px solid #EDF0ED;
		margin: 0px auto 0px auto;
			/*-webkit-transition: all 0.3s ease;
			-moz-transition: all 0.3s ease;
			-o-transition: all 0.3s ease;
			transition: all  0.3s ease;*/
	}
	.ancBtnWrap01:last-child {
		border-bottom: none;
	}
	
	.ancBtnWrap01:link {	color: #262626;	text-decoration: none;}
	.ancBtnWrap01:visited {	color: #262626;	text-decoration: none;}
	.ancBtnWrap01:hover {
		color:#262626;
		text-decoration: none;
	}
	.ancBtnWrap01:active {	color:#262626;	text-decoration: none;}

	.ancBtnWrap01::after {
		content: '';
		width: 16px;
		height: 16px;
		border: 0px;
		border-top: solid 1px #262626;
		border-right: solid 1px #262626;
		-ms-transform: rotate(135deg);
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
		position: absolute;
		bottom: auto;
		left: auto;
		margin-left: 0px;
		right: 20px;
		top: 50%;
		margin-top: -15px;
	}
	.ancBtnWrap01:hover::after {
		border-top: solid 1px #262626;
		border-right: solid 1px #262626;
	}

	.ancBtnWrap01 .ancDay {
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 74px auto;
		width: 74px;
		height: 70px;
	}
	.ancBtnWrap01 .ancDay.day01 {
		background-image: url("../img/anc_day01.png");
	}
	.ancBtnWrap01 .ancDay.day02 {
		background-image: url("../img/anc_day02.png");
	}
	.ancBtnWrap01 .ancDay.day03 {
		background-image: url("../img/anc_day03.png");
	}
	.ancBtnWrap01 .ancDay.day04 {
		background-image: url("../img/anc_day04.png");
	}
	.ancBtnWrap01:hover .ancDay.day01 {
		background-image: url("../img/anc_day01.png");
	}
	.ancBtnWrap01:hover .ancDay.day02 {
		background-image: url("../img/anc_day02.png");
	}
	.ancBtnWrap01:hover .ancDay.day03 {
		background-image: url("../img/anc_day03.png");
	}
	.ancBtnWrap01:hover .ancDay.day04 {
		background-image: url("../img/anc_day04.png");
	}

	.ancBtnWrap01 .ancText01 {
		height: auto;
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
		font-size: 16px;
		line-height: 1.43em;
		font-weight: bold;
		margin-left: 8px;
	}

	/*---------------------*/

	.contDayBlock01 {
		padding: 80px 20px 0px 20px;
	}
	.contH302 {
		text-align: center;
		padding-bottom: 54px;
		position: relative;
		margin-bottom: 10px;
	}
	.contH302::after {
		content: "";
		width: 1px;
		height: 40px;
		background-color: #262626;
		position: absolute;
		bottom: 0px;
		left: 50%;
	}

	.contH302 .s01 {
		display: block;
	}
	.contH302 .s01 img {
		width: 120px;
		height: auto;
	}
	.contH302 .s02 {
		display: block;
		margin-top: 10px;
	}
	.contH302 .s02 span {
		display: inline-block;
		font-size: 21px;
		line-height: 1.4em;
		font-weight: bold;
		position: relative;
	}
	.contH302 .s02 span::before {
		content: "";
		width: 5px;
		height: 5px;
		background-color: #262626;
		position: absolute;
		left: -22px;
		top: 50%;
		margin-top: -2px;
	}
	.contH302 .s02 span::after {
		content: "";
		width: 5px;
		height: 5px;
		background-color: #262626;
		position: absolute;
		right: -22px;
		top: 50%;
		margin-top: -2px;
	}

	.contDayBox01 {
		padding-top: 60px;
		margin-bottom: 40px;
	}
	.contH402 {
		font-size: 22px;
		line-height: 1.43em;
		font-weight: 500;
		margin-bottom: 30px;
	}

	.contImgWrap {
		margin: 56px 0px 32px 0px;
	}
	.contImgWrap p {
		font-size: 14px;
		line-height: 1.6em;
		font-weight: 500;
	}
	.contImgInBox01 {
		position: relative;
		height: auto;
	}
	.contImg01 {
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
		width: 100vw;
		height: auto;
		position: relative;
		top: 0px;
		margin-left: -20px;
	}

	.contImgWrapLeft01 .contImg01 {
		right: 0px;
	}
	.contImgWrapLeft01 {
		text-align: right;
	}

	.contImgWrapRight01 .contImg01 {
		left: 0px;
	}
	.contImgWrapRight01 {
		text-align: right;
	}

	/*----------------------*/

	.contActivityBlock01 {
		background-color: #D1DAD1;
		box-sizing: border-box;
		padding: 30px 20px 45px 20px;
		position: relative;
		width: 100vw;
		margin-left: -20px;
	}
	.contActivityBlock01::before {
		content: "";
		width: 1px;
		height: 22px;
		background-color: #262626;
		position: absolute;
		top: -22px;
		left: 50%;
	}
	.contActivityBlock01::after {
		content: "";
		width: 1px;
		height: 22px;
		background-color: #ffffff;
		position: absolute;
		top: 0px;
		left: 50%;
	}

	.contH303 {
		text-align: center;
		margin-bottom: 34px;
	}
	.contH303 .s01 {
		display: block;
		font-size: 48px;
		line-height: 1.0em;
	}
	.contH303 .s02 {
		display: block;
		font-size: 14px;
		line-height: 1.6em;
		font-weight: bold;
	}

	.contActivityBox01:first-child {
		margin-top: 0px;
	}
	.contActivityBox01 {
		background-color: #ffffff;
		padding: 20px 18px 20px 18px;
		margin-top: 24px;
		display: block;
	}
	.contActivityFlexBox01 {
		width: auto;
		margin-bottom: 13px;
	}
	.contActivityFlexBox02 {
		width: auto;
	}
	.contActivityFlexBox02 .h401 {
		font-size: 17px;
		line-height: 1.6em;
		font-weight: bold;
		padding-bottom: 4px;
		border-bottom: 1px solid #EDF0ED;
		margin-bottom: 8px;
	}
	.contActivityFlexBox02 .boxFlex01 {
		display: flex;
		border-bottom: 1px dashed #D1DAD1;
		font-size: 14px;
		line-height: 1.6em;
		font-weight: bold;
		padding: 5px 0px 5px 0px;
	}
	.contActivityFlexBox02 .boxFlex01:last-child {
		border-bottom: none;
	}

	.contActivityFlexBox02 .boxFlex01 .p01 {
		flex-shrink: 0;
		box-sizing: border-box;
		width: 6em;
	}
	.contActivityFlexBox02 .boxFlex01 .p02 span {
		font-weight: 500;
	}

	.contActivityBtnWrap01 {
		margin-top: 24px;
		text-align: right;
	}
	.contActivityBtn01 {
		display: flex;
		align-items: center;
		background-color: #262626;
		border: 1px solid #262626;
		text-align: left;
		font-size: 16px;
		line-height: 1.0em;
		font-weight: bold;
		box-sizing: border-box;
		width: 100%;
		height: 44px;
		margin: 0px 0px 0px auto;
		padding: 4px 40px 4px 18px;
		position: relative;
	}
	.contActivityBtn01:link {	color: #ffffff;	text-decoration: none;}
	.contActivityBtn01:visited {	color: #ffffff;	text-decoration: none;}
	.contActivityBtn01:hover {
		color:#262626;
		background-color: #ffffff;
		text-decoration: none;
	}
	.contActivityBtn01:active {	color:#ffffff;	text-decoration: none;}

	.contActivityBtn01::after {
		content: "";
		background-image: url("../img/btn_ar01.png");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: auto 6px;
		height: 6px;
		width: 22px;
		position: absolute;
		right: 14px;
		top: 50%;
		margin-top: -3px;
	}
	.contActivityBtn01:hover::after {
		background-image: url("../img/btn_ar01_on.png");
	}

	/*----------------------*/

	.informationBlock01 {
		padding: 100px 20px 80px 20px;
	}
	.informationBox01 {
		box-sizing: border-box;
		border: 1px solid #D1DAD1;
		padding: 25px 16px 40px 16px;
	}
	.informationBoxIn01 {
		margin-top: 60px;
	}
	.contH403 {
		font-size: 18px;
		line-height: 1.5em;
		font-weight: bold;
		margin-bottom: 22px;
	}
	.informationFlex01 {
		display: block;
	}
	.informationFlex01 .flexBox01 {
		width: auto;
		margin-right: 0px;
		margin-bottom: 20px;
	}
	.informationFlex01 .flexBox02 {
		width: auto;
	}
	.informationFlex01 .flexBox02 .img01 {
		width: 100%;
	}
	.informationFlex01 .flexBox02 .ul01 {
		margin-top: 20px;
	}
	.informationFlex01 .flexBox02 .ul01 li {
		font-size: 14px;
		line-height: 1.3em;
		font-weight: 500;
		margin-bottom: 5px;
	}
	.infoLink01 {
		margin-top: 20px;
		text-align: right;
	}
	.infoLink01 a {
		display: inline-block;
		padding-right: 34px;
		background-image: url("../img/btn_ar01_on.png");
		background-repeat: no-repeat;
		background-position: right center;
		background-size: auto 6px;
		font-size: 14px;
		line-height: 1.6em;
	}
	.infoLink01 a:link {	color: #262626;	text-decoration: none;}
	.infoLink01 a:visited {	color: #262626;	text-decoration: none;}
	.infoLink01 a:hover {	color:#262626;	text-decoration: underline;}
	.infoLink01 a:active {	color:#262626;	text-decoration: none;}

	/*---------------------*/

	.bannerBlock01 {
		padding: 0px 20px 0px 20px;
	}
	.bannerFlex01 {
		display: inline-flex;
		align-items: center;
		margin-bottom: 8px;
	}
	.bannerFlex01 li {
		padding: 0px 10px 0px 10px;
	}
	.bannerFlex01 li.bann01 {
		padding: 0px 10px 0px 10px;
	}

	.bannerFlex01 .bann01 img {
		width: 240px;
		height: auto;
	}
	.bannerFlex01 .bann02 img {
		width: 29px;
		height: auto;
	}
	.bannerFlex01 .bann03 img {
		width: 29px;
		height: auto;
	}

	/*------------------------*/

	/* PAGER */
	.bx-wrapper .bx-pager {
		text-align: center;
		font-size: .85em;
		font-family: Arial;
		font-weight: bold;
		color: #666;
		padding-top: 0px;
		width: 100%;
		position: absolute;
		left: 0px;
		bottom: 10px;
	}
	.bx-wrapper .bx-pager.bx-default-pager a {
		/*background: #666;*/
		background-color: transparent;
		border: 1px solid #ffffff;
		text-indent: -9999px;
		display: block;
		box-sizing: border-box;
		width: 10px;
		height: 10px;
		margin: 0 5px;
		outline: 0;
		-moz-border-radius: 20px;
		-webkit-border-radius: 20px;
		border-radius: 20px;
	}
	.bx-wrapper .bx-pager.bx-default-pager a:hover,
	.bx-wrapper .bx-pager.bx-default-pager a.active,
	.bx-wrapper .bx-pager.bx-default-pager a:focus {
		background: #ffffff;
	}
	.bx-wrapper .bx-pager-item,
	.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
		display: inline-block;
		vertical-align: bottom;
		*zoom: 1;
		*display: inline;
	}
	.bx-wrapper .bx-pager-item {
		font-size: 0;
		line-height: 0;
	}

}



/* -------------------------------------------------------------------- 
 footer
-------------------------------------------------------------------- */

.footerBlock01 {
	width: 960px;
	max-width: 100%;
	margin: auto;
	border-top: 1px solid #DDDDDD;
	padding: 24px 40px 70px 40px;
}
.footerFlex01 {
	display: inline-flex;
	align-items: center;
}
.footerFlex01 li {
	padding: 0px 10px 0px 10px;
}
.footerFlex01 li.fFlexBox01 {
	padding: 0px 30px 0px 10px;
}

.fFlexBox01 img {
	width: 141px;
	height: auto;
}
.fFlexBox02 img {
	width: 29px;
	height: auto;
}

/*-----------------------*/

.pagetopButton {
	position: fixed;
	right: 70px;
	bottom: 60px;
	z-index: 9999;
}
.pagetopButton img {
	width: 60px;
	height: auto;
}

@media screen and (max-width:768px) {
/*@media screen and (max-width:799px) {*/

	.footerBlock01 {
		width: auto;
		max-width: 100%;
		border-top: 1px solid #DDDDDD;
		padding: 20px 0px 50px 0px;
		margin: auto 20px auto 20px;
	}
	.footerFlex01 {
		display: inline-flex;
		align-items: center;
	}
	.footerFlex01 li {
		padding: 0px 10px 0px 10px;
	}
	.footerFlex01 li.fFlexBox01 {
		padding: 0px 30px 0px 10px;
	}

	.fFlexBox01 img {
		width: 118px;
		height: auto;
	}
	.fFlexBox02 img {
		width: 25px;
		height: auto;
	}

	/*-----------------------*/

	.pagetopButton {
		position: fixed;
		right: 10px;
		bottom: 18px;
		z-index: 9999;
	}
	.pagetopButton img {
		width: 34px;
		height: auto;
	}


}





/*-----*/
