@charset "utf-8";

/* ****************************************************
Title: layout.css
***************************************************** */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Zen+Maru+Gothic:wght@400;500;700&display=swap');

.webFontZenMaruGothic {
	font-family: 'Zen Maru Gothic', sans-serif;
}

/* -------------------------------------------------------------------- 
 body
-------------------------------------------------------------------- */

body {
 color: #4d4d4d;

font-family: 'Noto Sans JP', sans-serif;

font-size: 13px;
 *font-size:small;
 *font:x-small;
 text-align: center!important;
	text-size-adjust: 100%;
	-moz-text-size-adjust: none;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	max-height: 999999px;
	/*min-width: 1000px;*/
	/*min-width: 1280px;*/
}

#top {
	/*overflow: hidden;*/
}

#wrap {
	overflow: hidden;
	/*width: 640px;*/
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	padding: 0px;
}


img {
	vertical-align: bottom;
	width: 100%;
	height: auto;
}

.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;
}
.ancIn {
	position: absolute;
	top: -100px;
}

#top {
	/*padding-top: 69px;*/
}

/*-----------------------*/

.pc {
	display: block !important;
}

.sp {
	display: none !important;
}

.pcBr {
	display: inline !important;
}

.spBr {
	display: none !important;
}

.pcTable {
	display: table !important;
}
.spTable {
	display: none !important;
}

.contIn1000 {
	width: 1000px;
	margin: 0px auto;
	position: relative;
}

.contIn1100 {
	width: 1100px;
	margin: 0px auto;
	position: relative;
}

.contIn1200 {
	width: 1200px;
	margin: 0px auto;
	position: relative;
}


.radius200 {
	-moz-border-radius: 200px;
	-webkit-border-radius: 200px;
	-o-border-radius: 200px;
	-ms-border-radius: 200px;
	border-radius: 200px;
}

/*@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;*/
		min-width: 750px;
	}

	#wrap {
		overflow: hidden;
		width: auto;
		margin-top: 0px;
		margin-right: auto;
		margin-bottom: 0px;
		margin-left: auto;
		padding: 0px;
	}

	/*-----------------------*/

	.anc {
		position: relative;
	}
	.ancIn {
		position: absolute;
		top: -110px;
	}

	#top {
		/*padding-top: 79px;*/
	}

	/*-----------------------*/

	.pc {
		display: none !important;
	}
	.sp {
		display: block !important;
	}
	.pcBr {
		display: none !important;
	}
	.spBr {
		display: inline !important;
	}

	.pcTable {
		display: none !important;
	}
	.spTable {
		display: table !important;
	}

	.contIn1000 {
		width: auto;
	}

	.contIn1100 {
		width: auto;
	}

	.contIn1200 {
		width: auto;
	}


}


/* -------------------------------------------------------------------- 
 header
-------------------------------------------------------------------- */

.headerWrap01Base {
	height: 100px;
}

.headerWrap01 {
	position: fixed;
	top: 0px;
	left: 0px;
	z-index: 300;
	background-color: #ffffff;
	width: 100%;
	height: 100px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.headerLogo01 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 30px;
	line-height: 1.4em;
	font-weight: 500;
	color: #6b9ed4;
	padding: 5px 5px 5px 100px;
}
.headerAncNavi01 {}
.headerAncNavi01 ul {
	display: flex;
}
.headerAncNavi01 ul li a {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	height: 50px;
	width: 200px;
	border-left: 1px solid #6b9ed4;
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 26px;
	line-height: 1.2em;
	font-weight: 500;
}
.headerAncNavi01 a:link {	color: #6b9ed4;	text-decoration: none;}
.headerAncNavi01 a:visited {	color: #6b9ed4;	text-decoration: none;}
.headerAncNavi01 a:hover {	color:#6b9ed4;	text-decoration: none;}
.headerAncNavi01 a:active {	color:#6b9ed4;	text-decoration: none;}

.headerAncNavi01 ul li a .s01::before {
	content: "";
	display: inline-block;
	background-image: url("../img/header_icon_access.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: auto 30px;
	width: 22px;
	height: 30px;
	vertical-align: middle;
	margin-right: 10px;
}
.headerAncNavi01 ul li a .s02::before {
	content: "";
	display: inline-block;
	background-image: url("../img/header_icon_tel.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: auto 24px;
	width: 24px;
	height: 24px;
	vertical-align: middle;
	margin-right: 10px;
}



/*@media screen and (max-width:768px) {*/
@media screen and (max-width:799px) {

	.headerWrap01Base {
		height: 110px;
	}

	.headerWrap01 {
		position: fixed;
		top: 0px;
		left: 0px;
		z-index: 300;
		background-color: #ffffff;
		width: 100%;
		height: 110px;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.headerLogo01 {
		font-family: 'Zen Maru Gothic', sans-serif;
		font-size: 30px;
		line-height: 1.4em;
		font-weight: 500;
		color: #6b9ed4;
		padding: 5px 5px 5px 30px;
	}
	.headerAncNavi01 {}
	.headerAncNavi01 ul {
		display: flex;
	}
	.headerAncNavi01 ul li a {
		display: flex;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		height: 50px;
		width: 108px;
		border-left: 1px solid #6b9ed4;
		font-family: 'Zen Maru Gothic', sans-serif;
		font-size: 20px;
		line-height: 1.2em;
		font-weight: 500;
	}
	.headerAncNavi01 a:link {	color: #6b9ed4;	text-decoration: none;}
	.headerAncNavi01 a:visited {	color: #6b9ed4;	text-decoration: none;}
	.headerAncNavi01 a:hover {	color:#6b9ed4;	text-decoration: none;}
	.headerAncNavi01 a:active {	color:#6b9ed4;	text-decoration: none;}

	.headerAncNavi01 ul li a .s01::before {
		content: "";
		display: block;
		background-image: url("../img/header_icon_access.png");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 42px auto;
		width: 42px;
		height: 56px;
		vertical-align: middle;
		margin: 0px auto 0px auto;
	}
	.headerAncNavi01 ul li a .s02::before {
		content: "";
		display: block;
		background-image: url("../img/header_icon_tel.png");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 42px auto;
		width: 42px;
		height: 42px;
		vertical-align: middle;
		margin: 0px auto 0px auto;
	}


}


/* -------------------------------------------------------------------- 
 main
-------------------------------------------------------------------- */

/*------モーダルウィンドウ用---------------------------------------*/

#modal-win {
	width: 100%;
	position: absolute;
}
#modal-win-inner {
	/*display: inline-block;*/
	/*box-shadow: 0 0 5px rgba(0, 0, 0, .25);*/
	width: 86%;
	margin: 0 auto;
	position: relative;
	z-index: 9991;
	height: auto !important;
}
#modal-bg {
	width: 100%;
	height: 100%;
	background-color: #000000;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9990;
	cursor: pointer;
}

.click {
	display: none;
}

.clickWrap {
}
.clickClose {
	position: absolute;
	top: -50px;
	right: 0px;
}
.clickClose img {
	width: 38px;
	height: auto;
}

.movieYoutubu {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
}

.movieYoutubu iframe {
	position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;}


/*------モーダルウィンドウ用　ここまで---------------------------------------*/

.mainvisualWrap01 {
}
.contBlock01 {
	box-sizing: border-box;
	padding: 50px 0px 0px 0px;
	background-image: url("../img/cont_img_bg01.png");
	background-repeat: no-repeat;
	background-position: center top 180px;
	background-size: 1180px auto;
	height: 1600px;
}
.contH301 {
	font-family: 'Zen Maru Gothic', sans-serif;
	color: #6b9ed4;
	font-size: 37px;
	line-height: 1.4em;
	font-weight: 500;
	margin-bottom: 15px;
}
.contText20_20 {
	font-size: 20px;
	line-height: 2.0em;
}

/*----------------------*/

.cont01Block01 {
	padding: 50px 0px 0px 0px;
}
.contH302 {
	margin-bottom: 25px;
}
.contH302 img {
	width: 793px;
	height: auto;
}
.contRiyu01 {
	display: inline-block;
	text-align: left;
}
.contRiyu01 li {
	margin-bottom: 15px;
	font-size: 26px;
	line-height: 1.3em;
	display: flex;
}
.contRiyu01 li .s02 {
	display: inline-block;
	color: #6b9ed4;
	font-weight: 500;
	border-bottom: 2px solid #6b9ed4;
}
.contRiyu01 li .s01 {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	border-radius: 100px;
	background-color: #e9f0f9;
	font-size: 26px;
	margin-right: 14px;
}

.contBox01 {
	background-image: url("../img/cont_bg01.png");
	background-repeat: repeat;
	background-position: center top;
	background-size: 1374px auto;
	border-radius: 26px;
	padding: 50px 50px 45px 50px;
	margin-top: 50px;
}
.contH303 {
}
.contH303 img {
	width: auto;
	height: 37px;
}
.contBox01In01 {
	margin-top: 45px;
	margin-bottom: 0px;
}
.contH401 {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #6b9ed4;
	font-family: 'Zen Maru Gothic', sans-serif;
	color: #ffffff;
	font-size: 30px;
	line-height: 1.3em;
	font-weight: 500;
	box-sizing: border-box;
	height: 70px;
}
.contH401::before {
	content: "";
	background-repeat: no-repeat;
	background-position: center center;
	background-size: auto 100px;
	width: 50px;
	height: 100px;
	position: absolute;
	left: 40px;
	top: -30px;
}
.contH401.h401::before {
	background-image: url("../img/cont01_num01.png");
}
.contH401.h402::before {
	background-image: url("../img/cont01_num02.png");
}
.contH401.h403::before {
	background-image: url("../img/cont01_num03.png");
}

.contBoxInBox01 {
	padding: 25px 36px 25px 36px;
	text-align: left;
}
.contBox01Flex01 {
	display: flex;
	justify-content: space-between;
}
.contBox01Flex01 .box01 {
	text-align: left;
}
.contText18_175 {
	font-size: 18px;
	line-height: 1.75em;
	letter-spacing: -0.05em;
}

.contBox01Flex01 .box02 {
}
.contBox01Flex01 .box02 img {
	width: 288px;
	height: auto;
}
.contImg01 {
	text-align: center;
	margin-top: 15px;
}
.contImg01 img {
	width: 765px;
	height: auto;
}

.contFlex01 {
	display: flex;
	justify-content: space-between;
	margin-top: 22px;
}
.contFlex01 li {
	width: 46.4%;
}
.contFlex01 li dt {
	color: #6b9ed4;
	font-size: 26px;
	line-height: 1.6em;
	font-weight: 500;
	padding-bottom: 10px;
	border-bottom: 1px solid #6b9ed4;
	margin-bottom: 10px;
}
.contFlex01 li dt .s01 img {
	width: 40px;
	height: auto;
	margin-right: 18px;
	vertical-align: middle;
}
.contFlex01 li dd .img01 {
	margin-top: 20px;
}

.contBox02 {
	padding: 70px 0px 55px 0px;
}
.contFlex02 {
	display: flex;
	justify-content: space-between;
	margin-top: 35px;
}
.contFlex02 li {
	width: 330px;
	text-align: left;
	  text-align: justify;
  text-justify: inter-ideograph;
}
.contFlex02 li .p01 {
	text-align: center;
	margin-bottom: 10px;
}
.contFlex02 li .p01 img {
	width: auto;
	height: 60px;
}
.contFlex02 li .h401 {
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 60px;
	font-family: 'Zen Maru Gothic', sans-serif;
	color: #6b9ed4;
	font-size: 28px;
	line-height: 1.3em;
	font-weight: 500;
	background-image: url("../img/cont01_tokucyo_left.png"), url("../img/cont01_tokucyo_right.png");
	background-repeat: no-repeat, no-repeat;
	background-position: left center, right center;
	background-size: auto 58px, auto 58px;
	margin-bottom: 20px;
}

.contBtn01 {
	text-align: center;
	margin-top: 35px;
}
.contBtn01 a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	box-sizing: border-box;
	width: 500px;
	height: 84px;
	margin: auto;
	padding: 5px 10px 5px 10px;
	background-color: #52b99a;
	border-radius: 100px;
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 34px;
	line-height: 1.3em;
	font-weight: 500;
}
.contBtn01 a:link {	color: #ffffff;	text-decoration: none;}
.contBtn01 a:visited {	color: #ffffff;	text-decoration: none;}
.contBtn01 a:hover {	color:#ffffff;	text-decoration: none;}
.contBtn01 a:active {	color:#ffffff;	text-decoration: none;}

.contBtn01 a::after {
  content: '';
  width: 16px;
  height: 16px;
  border: 0px;
  border-top: solid 2px #ffffff;
  border-right: solid 2px #ffffff;
  -ms-transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  position: absolute;
  top: 50%;
  right: 36px;
  margin-top: -12px;
}

.contBlock02 {
	background: rgb(255,240,228);
	background: linear-gradient(0deg, rgba(255,240,228,1) 15%, rgba(255,255,255,1) 100%);
	padding: 60px 0px 60px 0px;
}

.contH304 {
	text-align: center;
	margin-bottom: 30px;
}
.contH304 img {
	width: 270px;
	height: auto;
}

.block02Box01 {
	text-align: left;
	width: 820px;
	margin: 0px auto 0px auto;
}
.contH402 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 25px;
	line-height: 1.4em;
	font-weight: 500;
	color: #6b9ed4;
	margin-bottom: 25px;
}
.contFlex03 {
	display: flex;
	justify-content: space-between;
}
.contFlex03 .box01 {
	width: calc( 100% - 294px - 18px );
	font-size: 16px;
	line-height: 1.75em;
}
.contFlex03 .box02 {
	width: 294px;
}
.boxMb20 {
	margin-bottom: 20px;
}
.boxInText01 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 25px;
	line-height: 1.3em;
	font-weight: 500;
}
.boxInText01 .s01 {
	font-size: 17px;
}
.boxInText02 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 16px;
	line-height: 1.38em;
	font-weight: 500;
}

.contBlock03 {
	padding: 60px 0px 90px 0px;
	background-image: url("../img/cont02_bg01.png");
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 1373px auto;
}

.contImg02 {
	text-align: center;
	padding: 40px 0px 0px 0px;
}
.contImg02 img {
	width: 1095px;
	height: auto;
}

.contBlock04 {
	position: relative;
	padding: 60px 0px 40px 0px;
}
.contBlock04::before {
	content: "";
	width: 100%;
	height: 595px;
	background: rgb(233,240,249);
	background: linear-gradient(0deg, rgba(233,240,249,1) 15%, rgba(255,255,255,1) 100%);
	position: absolute;
	top: 0px;
	left: 0px;
}
.contFlex04 {
	display: flex;
	justify-content: space-between;
}
.contFlex04 > li {
	width: 33%;
	position: relative;
}
.contFlex04 li .text01 {
	position: absolute;
	bottom: -10px;
	left: 50%;
	margin-left: -135px;
}
.contFlex04 li .text02 {
	position: absolute;
	bottom: -10px;
	left: 50%;
	margin-left: -145px;
}
.contFlex04 li .text03 {
	position: absolute;
	bottom: -10px;
	left: 50%;
	margin-left: -135px;
}

.flex0402 {
	text-align: right;
}
.flex04Box01 {
	display: inline-block;
	text-align: left;
	padding: 16px 0px 0px 0px;
}
.flex04Box01 .boxIn01 .s01 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 28px;
	line-height: 1.3em;
	font-weight: 500;
}
.flex04Box01 .boxIn01 .s02 {
	font-size: 14px;
	line-height: 1.3em;
	margin-left: 0.5em;
}
.flex04Box01 .boxIn02 {
	margin-top: 5px;
}
.flex04Box01 .boxIn02 li {
	color: #6b9ed4;
	font-size: 12px;
	line-height: 1.4em;
	text-indent: -1em;
	padding-left: 1em;
}

/*----------------*/

.contBlock05 {
	background-image: url("../img/cont03_bg01.png");
	background-repeat: repeat;
	background-position: center top;
	background-size: 1280px auto;
	padding: 40px 0px 70px 0px;
}
.contH305 {
	position: relative;
	text-align: center;
	margin-bottom: 20px;
}
.contH305 img {
	width: 417px;
	height: auto;
	position: relative;
}
.contH305::before {
	content: "";
	background-image: url("../img/cont_tit03_bg01.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 349px auto;
	width: 349px;
	height: 380px;
	position: absolute;
	top: 118px;
	left: 50%;
	margin-left: -166px;
}

.block05Box01 {
	position: relative;
}

.movieYoutube01 {
	text-align: center;
	margin: 30px;
}
.movieYoutube01 img {
	width: 451px;
	height: auto;
}

/*-----------------*/

.contBlock06 {
	background-image: url("../img/cont03_bg02.png");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: auto 100%;
	padding: 80px 0px 120px 0px;
}
.contFlex05 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.flex05Box01 {
	position: relative;
	background-color: #ffffff;
	text-align: left;
	box-sizing: border-box;
	width: 460px;
	padding: 35px 25px 35px 25px;
	margin-top: 65px;
}
.flex05Box01::before {
	content: "";
	background-image: url("../img/course_badge01.png");
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 76px auto;
	width: 76px;
	height: 77px;
	position: absolute;
	left: 0px;
	top: 0px;
}

.contH403 {
	display: flex;
	align-items: center;
	font-family: 'Zen Maru Gothic', sans-serif;
	text-align: left;
}
.contH403 .s01 {
	font-size: 70px;
	line-height: 1.2em;
	font-weight: 500;
	color: #52b99a;
	display: block;
	box-sizing: border-box;
	width: 85px;
	padding: 0px 0px 0px 20px;
}
.contH403 .s02 {
	font-size: 30px;
	line-height: 1.26em;
	font-weight: 500;
}
.flex05Text01 {
	margin: 25px auto 25px auto;
	font-size: 16px;
	line-height: 1.75em;
}
.flex05Img01 {
	margin-bottom: 25px;
}

.flex05Dl01 {
}
.flex05Dl01 dt {
	color: #52b99a;
	font-size: 18px;
	line-height: 1.4em;
	font-weight: bold;
	margin-bottom: 20px;
}
.flex05Dl01 dd li {
	position: relative;
	padding: 9px 0px 9px 40px;
	border-bottom: 1px dotted #808080;
	font-size: 18px;
	line-height: 1.12em;
}
.flex05Dl01 dd li::before {
	content: "";
	background-image: url("../img/cont03_icon_check.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 34px auto;
	width: 34px;
	height: 28px;
	position: absolute;
	left: 0px;
	top: 4px;
}
.flex05Text02 {
	text-align: right;
	font-size: 14px;
	line-height: 1.8em;
}

.flex05Box02 {
	display: flex;
	margin-top: 20px;
}
.flex05Box02.alB {
	align-items: flex-end;
	margin-top: 0px;
}

.flex05Box02 .box01 {
	box-sizing: content-box;
	width: 70px;
	padding: 5px 10px 9px 0px;
	flex-shrink: 0;
}
.flex05Box02 .box01 .p01 {
	background-color: #4d4d4d;
	color: #ffffff;
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 16px;
	line-height: 1.4em;
	font-weight: 500;
	text-align: center;
	padding: 0px 5px 0px 5px;
}
.flex05Box02 .box02 .p01 {
	font-weight: 500;
}
.flex05Box02 .box02 .p01 .s01 {
	font-family: 'Zen Maru Gothic', sans-serif;
	color: #52b99a;
	font-size: 52px;
	line-height: 1.2em;
}
.flex05Box02 .box02 .p01 .s02 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 25px;
	line-height: 1.2em;
	margin-right: 10px;
}

.flex05Yoyaku01 {
	padding-left: 80px;
	margin-top: 6px;
}
.flex05Yoyaku01 .p01 {
	border: 1px solid #ff0000;
	display: inline-block;
	padding: 0px 12px 2px 12px;
	color: #ff0000;
	font-size: 20px;
	line-height: 1.3em;
	font-weight: 500;
}

/*---------------*/

.cont06Wrap {
	padding: 80px 0px 65px 0px;
}
.contactTit01 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 28px;
	line-height: 1.3em;
	font-weight: 500;
	margin-bottom: 15px;
}
.contactTel01 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 60px;
	line-height: 1.0em;
	font-weight: 500;
	color: #6b9ed4;
}
.contactTel01 .s01 {
	font-size: 42px;
}

.contactTel01 a:link {	color: #6b9ed4;	text-decoration: none;}
.contactTel01 a:visited {	color: #6b9ed4;	text-decoration: none;}
.contactTel01 a:hover {	color:#6b9ed4;	text-decoration: underline;}
.contactTel01 a:active {	color:#6b9ed4;	text-decoration: none;}

.contactBox01 {
	margin-top: 70px;
}
.contH306 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 30px;
	line-height: 1.4em;
	font-weight: 500;
	margin-bottom: 13px;
}
.gcontactGoogleMap01 {
	margin-top: 20px;
}
.gcontactGoogleMap01 iframe {
	width: 100%;
	height: 480px;
}

.contactText01 {
	color: #e71f19;
	font-size: 16px;
	line-height: 1.6em;
	margin-top: 13px;
}

.contactHyou01 {
	margin-top: 8px;
}
.contactHyou01 img {
	width: 455px;
	height: auto;
}




/*@media screen and (max-width:768px) {*/
@media screen and (max-width:799px) {

	/*------モーダルウィンドウ用---------------------------------------*/

	#modal-win {
		width: 100%;
		position: absolute;
	}
	#modal-win-inner {
		display: block;
		width: 90%;
		/*box-shadow: 0 0 5px rgba(0, 0, 0, .25);*/
		margin: 0 auto;
		position: relative;
		z-index: 9991;
	}
	#modal-bg {
		width: 100%;
		height: 100%;
		background-color: #000000;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 9990;
		cursor: pointer;
	}

	.click {
		display: none;
	}

	.clickWrap {
	}
	.clickClose {
		position: absolute;
		top: -70px;
		right: 0px;
		width: 44px;
	}

/*------モーダルウィンドウ用　ここまで---------------------------------------*/

	.mainvisualWrap01 {
	}
	.contBlock01 {
		box-sizing: border-box;
		padding: 50px 0px 0px 0px;
		background-image: url("../img/cont_img_bg01_sp.png");
		background-repeat: no-repeat;
		background-position: center top 180px;
		background-size: 100% auto;
		height: 1570px;
	}
	.contH301 {
		font-family: 'Zen Maru Gothic', sans-serif;
		color: #6b9ed4;
		font-size: 37px;
		line-height: 1.4em;
		font-weight: 500;
		margin-bottom: 15px;
	}
	.contText20_20 {
		font-size: 24px;
		line-height: 2.0em;
	}

	/*----------------------*/

	.cont01Block01 {
		padding: 50px 30px 0px 30px;
	}
	.contH302 {
		margin-bottom: 25px;
	}
	.contH302 img {
		width: 100%;
		height: auto;
	}
	.contRiyu01 {
		display: block;
		text-align: left;
	}
	.contRiyu01 li {
		margin-bottom: 15px;
		font-size: 26px;
		line-height: 1.3em;
		align-items: center;
	}
	.contRiyu01 li .s02 {
		display: inline-block;
		color: #6b9ed4;
		font-weight: 500;
		border-bottom: 2px solid #6b9ed4;
		font-size: 34px;
	}
	.contRiyu01 li .s01 {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 70px;
		height: 70px;
		border-radius: 100px;
		background-color: #e9f0f9;
		font-size: 20px;
	}
	.contRiyu01 li .s01 .sLa01 {
		font-size: 35px;
	}
	
	.contBox01 {
		background-image: url("../img/cont_bg01.png");
		background-repeat: repeat;
		background-position: center top;
		background-size: auto 100%;
		border-radius: 26px;
		padding: 50px 50px 45px 50px;
		margin-top: 50px;
		box-sizing: border-box;
		width: 100vw;
		margin-left: -30px;
	}
	.contH303 {
	}
	.contH303 img {
		width: auto;
		height: 44px;
	}
	.contBox01In01 {
		margin-top: 25px;
		margin-bottom: 0px;
	}
	.contH401 {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		background-color: #6b9ed4;
		font-family: 'Zen Maru Gothic', sans-serif;
		color: #ffffff;
		font-size: 32px;
		line-height: 1.3em;
		font-weight: 500;
		box-sizing: border-box;
		height: 70px;
	}
	.contH401::before {
		content: "";
		background-repeat: no-repeat;
		background-position: center center;
		background-size: auto 100px;
		width: 50px;
		height: 100px;
		position: absolute;
		left: 40px;
		top: -30px;
	}
	.contH401.h401::before {
		background-image: url("../img/cont01_num01.png");
	}
	.contH401.h402::before {
		background-image: url("../img/cont01_num02.png");
	}
	.contH401.h403::before {
		background-image: url("../img/cont01_num03.png");
	}
	
	.box01Sp01 {
		font-size: 24px;
		line-height: 1.5em;
	}
	.box01SpImg01 {
		float: right;
	}
	.box01SpImg01 img {
		width: 328px;
		height: auto;
	}

	.contBoxInBox01 {
		padding: 25px 10px 25px 36px;
		text-align: left;
	}
	.contBox01Flex01 {
		display: flex;
		justify-content: space-between;
	}
	.contBox01Flex01 .box01 {
		text-align: left;
	}
	.contText18_175 {
		font-size: 24px;
		line-height: 1.75em;
		letter-spacing: -0.05em;
	}

	.contBox01Flex01 .box02 {
	}
	.contBox01Flex01 .box02 img {
		width: 288px;
		height: auto;
	}
	.contImg01 {
		text-align: center;
		margin-top: 15px;
	}
	.contImg01 img {
		width: 100%;
		height: auto;
	}

	.contFlex01 {
		display: block;
		margin-top: 0px;
	}
	.contFlex01 li {
		width: auto;
		margin-top: 30px;
		display: flex;
	}

	.contFlex01 li .img01 {
		width: 250px;
		flex-shrink: 0;
		margin-left: 25px;
	}
	
	.contFlex01 li dt {
		color: #6b9ed4;
		font-size: 29px;
		line-height: 1.6em;
		font-weight: 500;
		padding-bottom: 10px;
		border-bottom: 1px solid #6b9ed4;
		margin-bottom: 10px;
	}
	.contFlex01 li dt .s01 img {
		width: 40px;
		height: auto;
		margin-right: 18px;
		vertical-align: middle;
	}
	.contFlex01 li dd .img01 {
		margin-top: 20px;
	}

	.contBox02 {
		padding: 70px 20px 55px 20px;
	}
	
	.flex02LiFlex01 {
		display: flex;
		justify-content: center;
	}
	
	.contFlex02 {
		display: block;
		margin-top: 35px;
	}
	.contFlex02 li {
		width: auto;
		text-align: left;
			text-align: justify;
		margin-top: 30px;
	}
	.contFlex02 li .p01 {
		text-align: center;
		margin-bottom: 10px;
	}
	.contFlex02 li .p01 img {
		width: auto;
		height: 60px;
	}
	.contFlex02 li .h401 {
		text-align: center;
		display: flex;
		align-items: center;
		justify-content: center;
		height: 60px;
		width: 420px;
		font-family: 'Zen Maru Gothic', sans-serif;
		color: #6b9ed4;
		font-size: 34px;
		line-height: 1.3em;
		font-weight: 500;
		background-image: url("../img/cont01_tokucyo_left.png"), url("../img/cont01_tokucyo_right.png");
		background-repeat: no-repeat, no-repeat;
		background-position: left center, right center;
		background-size: auto 58px, auto 58px;
		margin-bottom: 20px;
	}

	.contBtn01 {
		text-align: center;
		margin-top: 35px;
	}
	.contBtn01 a {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		box-sizing: border-box;
		width: 100%;
		height: 100px;
		margin: auto;
		padding: 5px 10px 5px 10px;
		background-color: #52b99a;
		border-radius: 100px;
		font-family: 'Zen Maru Gothic', sans-serif;
		font-size: 34px;
		line-height: 1.3em;
		font-weight: 500;
	}
	.contBtn01 a:link {	color: #ffffff;	text-decoration: none;}
	.contBtn01 a:visited {	color: #ffffff;	text-decoration: none;}
	.contBtn01 a:hover {	color:#ffffff;	text-decoration: none;}
	.contBtn01 a:active {	color:#ffffff;	text-decoration: none;}

	.contBtn01 a::after {
		content: '';
		width: 16px;
		height: 16px;
		border: 0px;
		border-top: solid 2px #ffffff;
		border-right: solid 2px #ffffff;
		-ms-transform: rotate(135deg);
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
		position: absolute;
		top: 50%;
		right: 36px;
		margin-top: -12px;
	}

	.contBlock02 {
		background: rgb(255,240,228);
		background: linear-gradient(0deg, rgba(255,240,228,1) 15%, rgba(255,255,255,1) 100%);
		padding: 60px 50px 60px 50px;
	}

	.contH304 {
		text-align: center;
		margin-bottom: 30px;
	}
	.contH304 img {
		width: 360px;
		height: auto;
	}

	.block02Box01 {
		text-align: left;
		width: auto;
		margin: 0px auto 0px auto;
	}
	.contH402 {
		font-family: 'Zen Maru Gothic', sans-serif;
		font-size: 32px;
		line-height: 1.4em;
		font-weight: 500;
		color: #6b9ed4;
		margin-bottom: 25px;
	}
	.contFlex03 {
		display: inline;
		justify-content: space-between;
	}
	.contFlex03 .box01 {
		width: auto;
		font-size: 24px;
		line-height: 1.75em;
	}
	.contFlex03 .box02 {
		/*width: 290px;
		float: right;*/
	}
	
	.box02SpImg01 {
		width: 290px;
		float: right;
		margin: 0px 0px 15px 15px;
	}
	
	.boxMb20 {
		margin-bottom: 20px;
	}
	.boxInText01 {
		font-family: 'Zen Maru Gothic', sans-serif;
		font-size: 30px;
		line-height: 1.3em;
		font-weight: 500;
		margin-top: 5px;
	}
	.boxInText01 .s01 {
		font-size: 18px;
	}
	.boxInText02 {
		font-family: 'Zen Maru Gothic', sans-serif;
		font-size: 20px;
		line-height: 1.3em;
		font-weight: 500;
	}

	.contBlock03 {
		padding: 60px 30px 90px 30px;
		background-image: url("../img/cont02_bg01.png");
		background-repeat: no-repeat;
		background-position: center bottom;
		background-size: 1373px auto;
	}

	.contImg02 {
		text-align: center;
		padding: 40px 0px 0px 0px;
	}
	.contImg02 img {
		width: 100%;
		height: auto;
	}

	.contBlock04 {
		position: relative;
		padding: 60px 0px 40px 0px;
	}
	.contBlock04::before {
		display: none;
	}
	.contFlex04 {
		display: block;
	}
	.contFlex04 > li {
		width: auto;
		position: relative;
	}

	.flex04SpImg01 {
		text-align: center;
		background: rgb(233,240,249);
		background: linear-gradient(0deg, rgba(233,240,249,1) 15%, rgba(255,255,255,1) 100%);
	}
	.flex04SpImg01 img {
		width: 80%;
		height: auto;
	}
	
	.flex0402 {
		text-align: right;
	}
	.flex04Box01 {
		display: block;
		text-align: left;
		padding: 16px 30px 0px 50px;
	}
	.flex04Box01 .boxIn01 .s01 {
		font-family: 'Zen Maru Gothic', sans-serif;
		font-size: 28px;
		line-height: 1.3em;
		font-weight: 500;
	}
	.flex04Box01 .boxIn01 .s02 {
		font-size: 14px;
		line-height: 1.3em;
		margin-left: 0.5em;
	}
	.flex04Box01 .boxIn02 {
		margin-top: 5px;
	}
	.flex04Box01 .boxIn02 li {
		color: #6b9ed4;
		font-size: 22px;
		line-height: 1.4em;
		text-indent: -1em;
		padding-left: 1em;
	}

	/*----------------*/

	.contBlock05 {
		background-image: url("../img/cont03_bg01.png");
		background-repeat: repeat;
		background-position: center top;
		background-size: 1280px auto;
		padding: 40px 50px 50px 50px;
		text-align: left;
	}
	.contH305 {
		position: relative;
		text-align: center;
		margin-bottom: 20px;
	}
	.contH305 img {
		width: 450px;
		height: auto;
		position: relative;
	}
	.contH305::before {
		content: "";
		background-image: url("../img/cont_tit03_bg01.png");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 349px auto;
		width: 349px;
		height: 380px;
		position: absolute;
		top: 118px;
		left: 50%;
		margin-left: -166px;
	}

	.block05Box01 {
		position: relative;
	}

	.movieYoutube01 {
		text-align: center;
		margin: 30px;
	}
	.movieYoutube01 img {
		width: 450px;
		height: auto;
	}

	/*-----------------*/

	.contBlock06 {
		background-image: url("../img/cont03_bg02.png");
		background-repeat: no-repeat;
		background-position: center top;
		background-size: auto 100%;
		padding: 50px 50px 60px 50px;
	}
	.contFlex05 {
		display: block;
	}
	.flex05Box01 {
		position: relative;
		background-color: #ffffff;
		text-align: left;
		box-sizing: border-box;
		width: auto;
		padding: 35px 25px 35px 25px;
		margin-top: 55px;
	}
	.flex05Box01::before {
		content: "";
		background-image: url("../img/course_badge01.png");
		background-repeat: no-repeat;
		background-position: left top;
		background-size: 110px auto;
		width: 110px;
		height: 110px;
		position: absolute;
		left: 0px;
		top: 0px;
	}

	.contH403 {
		display: flex;
		align-items: center;
		font-family: 'Zen Maru Gothic', sans-serif;
		text-align: left;
	}
	.contH403 .s01 {
		font-size: 100px;
		line-height: 1.2em;
		font-weight: 500;
		color: #52b99a;
		display: block;
		box-sizing: border-box;
		width: 110px;
		padding: 0px 0px 0px 30px;
	}
	.contH403 .s02 {
		font-size: 38px;
		line-height: 1.26em;
		font-weight: 500;
	}
	.flex05Text01 {
		margin: 25px auto 25px auto;
		font-size: 24px;
		line-height: 1.75em;
	}
	.flex05Img01 {
		margin-bottom: 25px;
	}

	.flex05Dl01 {
	}
	.flex05Dl01 dt {
		color: #52b99a;
		font-size: 26px;
		line-height: 1.4em;
		font-weight: bold;
		margin-bottom: 20px;
	}
	.flex05Dl01 dd li {
		position: relative;
		padding: 12px 0px 12px 60px;
		border-bottom: 1px dotted #808080;
		font-size: 26px;
		line-height: 1.12em;
	}
	.flex05Dl01 dd li::before {
		content: "";
		background-image: url("../img/cont03_icon_check.png");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 50px auto;
		width: 50px;
		height: 45px;
		position: absolute;
		left: 0px;
		top: 4px;
	}
	.flex05Text02 {
		text-align: right;
		font-size: 20px;
		line-height: 1.8em;
	}

	.flex05Box02 {
		display: flex;
		margin-top: 20px;
	}
	.flex05Box02.alB {
		align-items: flex-end;
		margin-top: 0px;
	}

	.flex05Box02 .box01 {
		box-sizing: content-box;
		width: 100px;
		padding: 5px 10px 9px 0px;
		flex-shrink: 0;
	}
	.flex05Box02 .box01 .p01 {
		background-color: #4d4d4d;
		color: #ffffff;
		font-family: 'Zen Maru Gothic', sans-serif;
		font-size: 24px;
		line-height: 1.4em;
		font-weight: 500;
		text-align: center;
		padding: 0px 5px 0px 5px;
	}
	.flex05Box02 .box02 .p01 {
		font-weight: 500;
	}
	.flex05Box02 .box02 .p01 .s01 {
		font-family: 'Zen Maru Gothic', sans-serif;
		color: #52b99a;
		font-size: 76px;
		line-height: 1.2em;
	}
	.flex05Box02 .box02 .p01 .s02 {
		font-family: 'Zen Maru Gothic', sans-serif;
		font-size: 36px;
		line-height: 1.2em;
		margin-right: 10px;
	}

	.flex05Yoyaku01 {
		padding-left: 80px;
		margin-top: 6px;
	}
	.flex05Yoyaku01 .p01 {
		border: 1px solid #ff0000;
		display: inline-block;
		padding: 0px 12px 2px 12px;
		color: #ff0000;
		font-size: 20px;
		line-height: 1.3em;
		font-weight: 500;
	}

	/*---------------*/

	.cont06Wrap {
		padding: 80px 0px 65px 0px;
	}
	.contactTit01 {
		font-family: 'Zen Maru Gothic', sans-serif;
		font-size: 30px;
		line-height: 1.3em;
		font-weight: 500;
		margin-bottom: 15px;
	}
	.contactTel01 {
		font-family: 'Zen Maru Gothic', sans-serif;
		font-size: 70px;
		line-height: 1.0em;
		font-weight: 500;
		color: #6b9ed4;
	}
	.contactTel01 .s01 {
		font-size: 49px;
	}

	.contactTel01 a:link {	color: #6b9ed4;	text-decoration: none;}
	.contactTel01 a:visited {	color: #6b9ed4;	text-decoration: none;}
	.contactTel01 a:hover {	color:#6b9ed4;	text-decoration: underline;}
	.contactTel01 a:active {	color:#6b9ed4;	text-decoration: none;}

	.contactBox01 {
		margin-top: 70px;
	}
	.contH306 {
		font-size: 30px;
		line-height: 1.4em;
		font-weight: 500;
		margin-bottom: 13px;
	}
	.gcontactGoogleMap01 {
		margin-top: 20px;
	}
	.gcontactGoogleMap01 iframe {
		width: 100%;
		height: 480px;
	}

	.contactText01 {
		color: #e71f19;
		font-size: 22px;
		line-height: 1.6em;
		margin-top: 13px;
	}

	.contactHyou01 {
		margin-top: 8px;
	}
	.contactHyou01 img {
		width: 650px;
		height: auto;
	}




}



/* -------------------------------------------------------------------- 
 footer
-------------------------------------------------------------------- */

.footer_bottom {
	background-color: #6b9ed4;
}
.footerCopyWrap {
	display: table;
	width: 100%;
}
.footerCopy {
	display: table-cell;
	height: 80px;
	text-align: center;
	vertical-align: middle;
	color: #ffffff;
	font-size: 14px;
	line-height: 1.0em;
}

/*-------------------------*/

.floatBtnWrap {
	position: fixed;
	right: 30px;
	bottom: 86px;
	z-index: 100;
}
.floatBtnWrap img {
	width: 344px;
	height: auto;
}



/*@media screen and (max-width:768px) {*/
@media screen and (max-width:799px) {

	.footer_bottom {
	}
	.footerCopyWrap {
		display: table;
		width: 100%;
	}
	.footerCopy {
		display: table-cell;
		height: 80px;
		text-align: center;
		vertical-align: middle;
		color: #ffffff;
		font-size: 16px;
		line-height: 1.0em;
	}

	/*-------------------------*/

	.floatBtnWrap {
		position: fixed;
		right: 10px;
		bottom: auto;
		top: 128px;
		z-index: 100;
	}
	.floatBtnWrap img {
		width: 310px;
		height: auto;
	}



}





/*-----*/
