@charset "UTF-8";
/* CSS Document */
#container{
	padding-bottom: 30px;
}
/*=============================
  main
=============================*/
#main{
	margin-bottom: 15px;
}
#main #carousel_dummy{}
#main #sel01{
	background: url(../images/top/mainImg01.png) no-repeat #00469b right 10px bottom 10px/60% auto;
	width: 100%;
	height: calc(100vw * 350/640);
	position: relative;
}
#main #sel01 #catch{
	text-align: center;
	font-weight: bold;
	line-height: 1.5;
	width: 100%;
	color:#FFF;
	position: absolute;
	top: 35%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
#main #sel01 #catch > *{
	display: inline-block;
}
#main #sel01 #catch #mainC{
	font-size: 6.25vw;
	margin-bottom: 5px;
}
#main #sel01 #catch #subC{
	font-size: 3.75vw;
}

/*mainLink
=============================*/
#main #mainLink{
	width: 100%;
	-webkit-box-shadow: 0px 0px 3px rgba(0,0,0,0.2);
	-moz-box-shadow: 0px 0px 3px rgba(0,0,0,0.2);
	box-shadow: 0px 0px 3px rgba(0,0,0,0.2);
}
#main #mainLink ul.tableList{
}
#main #mainLink ul.tableList > li{
}
#main #mainLink > ul{
}
#main #mainLink > ul > li{
	text-align: center;
	position: relative;
}
#main #mainLink > ul > li .inner{
	position: relative;
	padding: 15px 0px;
}
#main #mainLink > ul > li .inner:after{
	content: '';
	display: block;
	width: 90%;
	height: 1px;
	background: #e8e8e8;
	position: absolute;
	left:50%;
	bottom:0;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}
#main #mainLink > ul > li:last-child .inner:after{
	background: none;
}

#main #mainLink li p.mainTxt{
	font-size: 5.63vw;
	font-weight: bold;
	color: #004697;
	text-align: center;
	line-height: 1.0;
	margin-bottom: 3px;
}
#main #mainLink li p.subTxt{
	font-size: 3.4375vw;
	font-weight: bold;
	color: #666;
	text-align: center;
	margin-bottom: 5px;
}
#main li.linkBlue p.mainTxt,
#main li.linkBlue p.subTxt{
	letter-spacing: 1px;
}
#main li.linkBlue a{
	display: inline-block;
	-webkit-border-radius: calc((4.0625vw + 20px) / 2 );
	-moz-border-radius: calc((4.0625vw + 20px) / 2 );
	border-radius: calc((4.0625vw + 20px) / 2 );
	color: #FFF;
	font-size: 4.0625vw;
	font-weight: bold;
	padding: 10px 30px;
	text-shadow: 0px 2px 0px rgba(0,0,0, 0.3);
	line-height: 1.0;
}

/*

#main li#mainLink01 p.mainTxt,
#main li#mainLink01 p.subTxt{
	letter-spacing: 1px;
}
#main li#mainLink01 a{
	display: inline-block;
	-webkit-border-radius: 18px;
	-moz-border-radius: 18px;
	border-radius: 18px;
	height: 36px;
	width: 340px;
	color: #FFF;
	font-size: 18px;
	font-weight: bold;
	padding-top: 5px;
	text-shadow: 0px 2px 0px rgba(0,0,0, 0.3);
}

#main li#mainLink02 a{
	display: inline-block;
	height: 36px;
	width: 360px;
	line-height: 22px;
}
#main li#mainLink02 a span#bgR{
	vertical-align: top;
	display: inline-block;
	height: 36px;
	width: 150px;
	font-weight: bold;
	color:#FFF;
	font-size: 22px;
	padding-top: 5px;
	text-shadow: 0px 2px 0px rgba(0,0,0, 0.3);
	background: #cf211b;
	border:2px solid #cf211b;
	-webkit-border-radius: 18px 0px 0px 18px / 18px 0px 0px 18px;
	-moz-border-radius: 18px 0px 0px 18px / 18px 0px 0px 18px;
	border-radius: 18px 0px 0px 18px / 18px 0px 0px 18px;
}
#main li#mainLink02 a span#bgW{
	vertical-align: top;
	display: inline-block;
	height: 36px;
	width: 210px;
	font-weight: bold;
	color:#cf211b;
	font-size: 18px;
	padding-top: 5px;
	border:2px solid #cf211b;
	-webkit-border-radius: 0px 18px 18px 0px / 0px 18px 18px 0px;
	-moz-border-radius: 0px 18px 18px 0px / 0px 18px 18px 0px;
	border-radius: 0px 18px 18px 0px / 0px 18px 18px 0px;
}*/

/*=============================
  bloc共通
=============================*/
section.bloc {
	padding: 30px 10px;
}
section.bgW{
	background:#FFF;
}
section.bgB{
	background:#ebf7fd;
}
/*カリキュラム
=============================*/
#bloc01 {

}
#bloc01 .inner{

}
#bloc01 hgroup{
	text-align: center;
}
#bloc01 hgroup .hinner{
	display: inline-block;
	background: url(../images/top/top_cur_icon.png) no-repeat top left/auto 100%;
	line-height: 1.0;
	padding: 0px 9vw;
	margin-bottom: 15px;
}
#bloc01 hgroup h1{
	text-align: center;
	font-size: 4.0625vw;
	letter-spacing: 1px;
	margin-bottom: 5px;
}
#bloc01 hgroup h2{
	text-align: center;
	font-size: 3.125vw;
	color: #878787;
	font-family: Arial;
}
#bloc01 h3.mainTxt{
	position: relative;
	text-align: center;
	padding-top: 10px;
	padding-bottom: 10px;
	margin-bottom: 30px;
}
#bloc01 h3.mainTxt span{
	font-weight: normal;
	font-size: 3.75vw;
	line-height: 1.75;
}
#bloc01 h3.mainTxt span:before,
#bloc01 h3.mainTxt span:after{
	content: '';
	position: absolute;
	left:50%;
	margin-left: -50px;
	width: 100px;
	height: 1px;
	border-top: 2px dotted #CCC;
}
#bloc01 h3.mainTxt span:after{
	bottom:1px;
}
#bloc01 h3.mainTxt span:before{
	top:1px;
}


#bloc01 ul.culList{
	background: #f2f2f2;
	padding: 5px;
}
#bloc01 ul.culList li{
	background: #FFF;
	padding-bottom: 10px;
}
#bloc01 ul.culList li:not(:last-child){
	margin-bottom: 10px;
}
#bloc01 ul.culList li .culPh{
	width: 100%;
	padding-top: 25%;
	overflow: hidden;
	position: relative;
}
#bloc01 ul.culList li .culPh img{
	position: absolute;
	top:50%;
	left:50%;
	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	width: 100%;
	height: auto;
}
#bloc01 ul.culList li .culInner{
	padding: 10px 10px 0px 10px;
}
#bloc01 ul.culList li h4{
	background: url(../images/bt_arrow_blue.png) no-repeat top left/auto 4.0625vw;
	padding-left: 5vw;
	margin-bottom: 5px;
	line-height: 1.0;
}
#bloc01 ul.culList li h4 span{
	display: inline-block;
	font-weight: bold;
}
#bloc01 ul.culList li h4 span.ja {
	font-size: 4.0625vw;
	color: #000;
}
#bloc01 ul.culList li h4 span.en {
	font-size: 3.125vw;
	color: #878787;
	font-family: Arial;
}
#bloc01 ul.culList li .culTxt{
	font-size: 3.125vw;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	margin-bottom: 10px;
}
#bloc01 ul.culList li hr{
	display: none;
}
#bloc01 ul.culList li .info{
	margin: 10px 10px 0px 10px;
	padding: 10px;
	position: relative;
	display: table;
}
#bloc01 ul.culList li .info > *{
	display: table-cell;
	vertical-align: top;
}
#bloc01 ul.culList li .infoPh{
	width: 30%;
}
/*infoに枠線書くと中身が空の際に線だけ残る*/
#bloc01 ul.culList li .infoPh::after{
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top:0;
	left:0;
	border: 1px solid #C8C8C8;
}
#bloc01 ul.culList li .infoPh::before{
	content: '';
	position: absolute;
	bottom:0;
	right: 0;
	width: 0;
	height: 0;
	border: 8px solid transparent;
	border-bottom: 8px solid #00469b;
	border-right: 8px solid #00469b;
}
#bloc01 ul.culList li .infoPh img{
	width: 100%;
	height: auto;
}
#bloc01 ul.culList li .txtArea{
	padding-left: 10px;
}
#bloc01 ul.culList li .txtArea time{
	font-size: 3.125vw;
	display: inline-block;
	background: #6690C1;
	padding: 4px 5px 2px 5px;
	margin-bottom: 5px;
	color: #FFF;
	line-height: 1.2;
	/*word-break: break-all;*/
}

#bloc01 ul.culList li .txtArea .infoTit{
	font-size: 3.4375vw;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	margin-bottom: 3px;
}
#bloc01 ul.culList li .txtArea .infoTxt{
	font-size: 3.125vw;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}
/*
#bloc01 ul.list2 li{
	cursor: pointer;
}
#bloc01 ul.list2 li:hover{
	opacity: 0.5;
}
#bloc01 ul.list2 p.culPh{
	float: left;
	width: 210px;
	height: 130px;
	overflow: hidden;
}
#bloc01 ul.list2 li .culInner{
	float: right;
	width: 286px;
	padding: 10px 15px 0px 15px;
}*/

/*３つのポイント
=============================*/
#bloc02{
	-webkit-box-shadow: 0px 0px 3px rgba(0,0,0,0.2) inset;
	-moz-box-shadow: 0px 0px 3px rgba(0,0,0,0.2) inset;
	box-shadow: 0px 0px 3px rgba(0,0,0,0.2) inset;
	padding: 15px 0px;
}
#bloc02 .inner{
	padding: 0px 10px;
}
#bloc02 hgroup{
	margin-bottom: 30px;
	text-align: center;
}
#bloc02 hgroup h1{
	line-height: 1.25;
	font-size: 4.375vw;
	color:#004697;
}
#bloc02 hgroup h1 strong{
	font-size: 7.19vw;
	background: url(../images/top/top_point_txtBg.gif) repeat-x left bottom;
}
#bloc02 hgroup h2{
	line-height: 1.5;
	font-size: 3.4375vw;
	color: #666;
	margin-bottom:5px;
}

#bloc02 ul#pointList{
	padding-left: 10px;
}
#bloc02 ul#pointList li:not(:last-child){
	margin-bottom: 30px;
}


#bloc02 ul#pointList li .pointInner{
	background: #FFF;
	-webkit-box-shadow: 3px 3px 0px rgba(0,0,0,0.15);
	-moz-box-shadow: 3px 3px 0px rgba(0,0,0,0.15);
	box-shadow: 3px 3px 0px rgba(0,0,0,0.15);
	position: relative;
	padding: 20px 15px 15px 15px;
}
#bloc02 ul#pointList li .num{
	position: absolute;
	top:0px;
	left:-10px;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
#bloc02 ul#pointList li .num img{
	width: 37px;
	height: auto;
}
#bloc02 ul#pointList li .img{
	position: absolute;
}
#bloc02 ul#pointList li .linkBt{
	margin-top: 10px;
	text-align: center;
}


#bloc02 ul#pointList li .txt{
	width: 50%;
	font-size: 3.4375vw;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}

#bloc02 ul#pointList li a.btArrowM{
	display: inline-block;
	text-align: center;
	color: #FFF;
	font-size: 4.0625vw;
	font-weight: bold;
	text-shadow: 0px 2px 0px rgba(0,0,0, 0.3);
	-webkit-border-radius: calc((4.0625vw + 20px) / 2 );
	-moz-border-radius: calc((4.0625vw + 20px) / 2 );
	border-radius: calc((4.0625vw + 20px) / 2 );
	padding: 10px 22.5px 10px 22.5px;
	line-height: 1.0;
}
#bloc02 ul#pointList li a:hover{
	/*opacity: 0.5;*/
}
#bloc02 ul#pointList li .catchArea{
	font-weight: bold;
	line-height: 1.0;
	margin-bottom: 10px;
}
#bloc02 ul#pointList li .txtCB{
	color:#004697;
}
#bloc02 ul#pointList li#point01 .catch01{
	font-size: 3.125vw;
	color: #666;
	margin-bottom: 5px;
}
#bloc02 ul#pointList li#point01 .catch02{
	font-size: 7.81vw;
	color:#004697;
}
#bloc02 ul#pointList li#point01 .img{
	top:25px;
	right:10px;
}
#bloc02 ul#pointList li#point01 .img img{
	width: 36vw;
	height: auto;
}


#bloc02 ul#pointList li#point02 .catch01,
#bloc02 ul#pointList li#point02 .catch02{
	font-size: 3.75vw;
	color: #666;
}
#bloc02 ul#pointList li#point02 .catch01 strong,
#bloc02 ul#pointList li#point02 .catch02 strong{
	font-size: 5.94vw;
	line-height: 1.0;
}
#bloc02 ul#pointList li#point02 .img{
	top:10px;
	right:5px;
}
#bloc02 ul#pointList li#point02 .img img{
	width: 42vw;
	height: auto;
}


#bloc02 ul#pointList li#point03 .catch01{
	font-size: 3.125vw;
	color: #666;
	margin-bottom: 5px;
}
#bloc02 ul#pointList li#point03 .catch02{
	font-size: 7.81vw;
	color:#004697;
}
#bloc02 ul#pointList li#point03 .img{
	top:25px;
	right:15px;
}
#bloc02 ul#pointList li#point03 .img img{
	width: 31.5vw;
	height: auto;
}

#bloc02 ul#pointList li#point03 a{
	font-size: 3.75vw;
	width: 100%;
	-webkit-border-radius: calc((3.75vw + 30px) / 2 );
	-moz-border-radius: calc((3.75vw + 30px) / 2 );
	border-radius: calc((3.75vw + 30px) / 2 );
	padding: 15px 0px 15px 0px;
}

/*入会について
=============================*/
#bloc03 .inner{
}
#bloc03 #memberArea{
	border: 10px solid #e8e8e8;
	padding: 20px 13px;
	margin-bottom: 30px;
}
#bloc03 #fbArea{
	margin: 0 15px;
}
#bloc03 #fbArea *{
	height: 75vh !important;
}
#bloc03 #memberArea hgroup{
	text-align: center;
}
#bloc03 #memberArea hgroup .hinner{
	display: inline-block;
	background: url(../images/top/top_mem_icon.png) no-repeat top left/auto 100%;
	line-height: 1.0;
	padding: 0px 10vw;
	margin-bottom: 15px;
}
#bloc03 #memberArea hgroup h1{
	text-align: center;
	font-size: 4.0625vw;
	letter-spacing: 1px;
	margin-bottom: 5px;
}
#bloc03 #memberArea hgroup h2{
	text-align: center;
	font-size: 3.125vw;
	color: #878787;
	font-family: Arial;
}




#bloc03 #memberArea h3{
	display: inline-block;
	font-size: 3.125vw;
	background: #7FA2CB;
	padding: 3px 5px 3px 5px;
	color: #FFF;
}
#bloc03 #memberArea h3.tit01{
	margin-bottom: 10px;
}
#bloc03 #memberArea #jyouken{
	font-size: 4.375vw;
	font-weight: bold;
	color:#666;
	margin-bottom: 15px;
}
#bloc03 #memberArea ul#memberPrice li{
	display: inline-block;
	vertical-align: bottom;
	font-size: 3.4375vw;
	font-weight: bold;
	color: #666;
	line-height: 1.0;
	margin-bottom: 10px;
}

#bloc03 #memberArea ul#memberPrice li .txtCB{
	color: #004697;
}
#bloc03 #memberArea ul#memberPrice li .fsL{
	font-size: 5.31vw;
}
#bloc03 #memberArea ul#memberPrice li .fx{
	text-decoration: line-through;
}
#bloc03 #memberArea ul#memberPrice li#price01,
#bloc03 #memberArea ul#memberPrice li#price02{margin-right: 5px;}
#bloc03 #memberArea ul#memberPrice li#price02 img{height: 5vw; width: auto;}
#bloc03 #memberArea ul#memberPrice li#price01 span{margin: 0px 5px;}
#bloc03 #memberArea ul#memberPrice li#price03 span{margin-right: 5px;}
#bloc03 #memberArea ul#memberPrice li#price04 span{margin: 0px 5px;}
#bloc03 #memberArea ul#memberPrice li#price05{
	background: url(../images/top/top_mem_img02.gif) no-repeat left center/auto 100%;
	padding-left: 15vw;
}
#bloc03 #memberArea ul#memberPrice li#price05{margin-bottom: 15px;}
#bloc03 #memberArea ul#memberPrice li#price05 p.mb5{margin-bottom: 5px;}
#bloc03 #memberArea ul#memberPrice li#price05 span:not(.fss){margin: 0px 5px 0 0;}
#bloc03 #memberArea a.btArrowM{
	display: block;
	font-size: 3.75vw;
	text-align: center;
	color: #FFF;
	font-weight: bold;
	text-shadow: 0px 2px 0px rgba(0,0,0, 0.3);
	-webkit-border-radius: calc((3.75vw + 20px) / 2 );
	-moz-border-radius: calc((3.75vw + 20px) / 2 );
	border-radius: calc((3.75vw + 20px) / 2 );
	padding: 10px 0px 10px 0px;
	line-height: 1.0;
}


#bloc03 #memberArea a:hover{
	/*opacity: 0.5;*/
}