@charset "UTF-8";


/*========================================

  single

========================================*/
main h1 {
	display:none;
}

main #inmessage .flex_1000 {
	margin-top:50px;
	justify-content:space-between;
}
main #inmessage .flex_1000 .imgbox {
	width:30%;
}
main #inmessage .flex_1000 .imgbox img {
	width:100%;
	height:auto;
}
main #inmessage .flex_1000 .txtbox {
	width:65%;
	text-align:left;
	display:flex;
	align-items:center;
}
main #inmessage .flex_1000 dl dt {
	font-weight:bold;
	font-size:20px;
}
main #inmessage .flex_1000 dl dd {
	line-height:1.8em;
	margin-top:.8em;
}

@media screen and (max-width: 767px) {
	main #readcopy {
		text-align:center;
	}
	main #inmessage .flex_1000 {
		display:block;
		margin:0 auto;
		margin-top:8vw;
		width:90%;
	}
	main #inmessage .flex_1000 .imgbox {
		margin:0 auto;
		width:60%;
	}

	main #inmessage .flex_1000 .txtbox {
		width:100%;
		display:block;
	}
	main #inmessage .flex_1000 dl dt {
		font-size:5vw;
		text-align:center;
	}
	main #inmessage .flex_1000 dl dd {
		font-size:3.8vw;
	}
}




main .boderbtm {
	border-bottom:1px solid #ddd;
}
main #headline {
	background-image:url(/img/bg_ttl_g.jpg);
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
}
main #headline .innr {
	display:flex;
	justify-content:space-between;
	width:1200px;
	margin:0 auto;
	min-height:400px;
}
main #headline .imgbox {
	width:50%;
	height:410px;
	overflow:hidden;
}
main #headline .imgbox img {
	width:100%;
	height:auto;
	vertical-align:bottom;
}
main #headline .txtbox {
	display:flex;
	align-items:center;
	width:45%;
	text-align:left;
	box-sizing:border-box;
}


main #headline .txtbox strong {
	display:block;
	font-size:30px;
	line-height:1em;
	padding-left:4px;
}
main #headline .txtbox strong::after {
	content:"";
	display:block;
	width:100%;
	height:5px;
	background:url(/img/line_ttl.svg) no-repeat center center;
	margin-top:15px;
}
main #headline .txtbox small {
	display:block;
	font-weight:bold;
	font-size:16px;
	letter-spacing:1px;
	margin-top:.5em;
	padding-left:8px;
}

main #headline .txtbox p {
	margin-top:1em;
	line-height:1.7em;
}
main #headline .txtbox dl {
	font-weight:bold;
	margin-top:30px;
}
main #headline .txtbox dl dt {
	display:inline-block;
	border-radius:20px;
	border:2px solid #f80;
	color:#f80;
	background-color:#fff;
	padding:.5em 1em;
	font-size:18px;
	line-height:1em;
}
main #headline .txtbox dl dd {
	font-size:17px;
	margin-top:.8em;
}
main #headline .txtbox dl dd ul {
	list-style:none;
}
main #headline .txtbox dl dd ul li {
	margin-bottom:.3em;
	padding-left:1.5em;
	text-indent:-1.5em;
}
main #headline .txtbox dl dd ul li::before {
	content:"\f00c";
	font-family:FontAwesome;
	margin-right:.5em;
	color:#f80;
}


@media screen and (max-width: 767px) {
	main #headline {
	}
	main #headline .innr {
		display:block;
		width:100%;
		margin:0 auto;
		min-height:auto;
	}
	main #headline .imgbox {
		height:auto;
		width:100%;
		display:flex;
		align-items:flex-end;
	}


	main #headline .txtbox {
		display:block;
		margin:0 auto;
		width:85%;
		padding:5vw 0;
		text-align:center;
	}

	main #headline .txtbox strong {
		font-size:5.2vw;
	}
	main #headline .txtbox strong::after {
		margin-top:2vw;
	}
	main #headline .txtbox small {
		font-size:4vw;
		display:none;
	}
	main #headline .txtbox dl {
		margin:0 auto;
		margin-top:5vw;
		width:100%;
		text-align:left;
	}
	main #headline .txtbox dl dt {
		border-radius:20px;
		padding:.5em 1em;
		font-size:3.6vw;
	}
	main #headline .txtbox dl dd {
		font-size:3.4vw;
	}
	main #headline .txtbox dl dd ul {
		display:inline-block;
		margin:0 auto;
	}
	main #headline .txtbox dl dd ul li {
		margin-bottom:.3em;
		font-size:3.4vw;
	}
}




main .bg_a {
	background-image:url(/img/bg_a03.png);
	background-repeat:no-repeat;
	background-position-x:right;
	background-position-y:top;
	padding-bottom:50px;
}
@media screen and (max-width: 767px) {
	main .bg_a {
		padding-bottom:5vw;
		background-size:80vw auto;
		background-position:right -5vw top;
		/*background-position-x:40vw;*/
	}
}




main .supportcourse {
	margin-top:40px;
	background:url(../img/bar_img.jpg) no-repeat center center;
	background-size:cover;
	padding:30px 20px;
	border-radius:7px;
	color:#fff;
}
main .supportcourse h3 {
	color:#fe0;
	color:#fff;
	font-size:26px;
}
main .supportcourse p {
	margin-top:1em;
}
main .supportcourse p a {
	color:#fff;
	text-decoration:underline;
}
main .supportcourse p a:hover {
	opacity:.7;
}



#courseList {
	border-bottom:1px solid #ddd;
}


main .aboutdtm {
	margin-top:50px;
}
main .aboutdtm dl {
	margin-top:40px;
	border:1px solid #009e40;
	padding:2em;
	border-radius:10px;
	background:url(/assets/img/bg_stripe3.png);
}
main .aboutdtm dl dt {
	font-weight:bold;
	color:#009e40;
	font-size:22px;
	border-bottom:1px solid #aaa;
	padding-bottom:.5em;
}
main .aboutdtm dl dd {
	margin-top:1em;
	font-size:16px;
	line-height:1.8em;
}

main .aboutdtm dl dd.flexbox {
	display:flex;
	justify-content:space-between;
}
main .aboutdtm dl dd.flexbox span {
	display:block;
	width:400px;
}
main .aboutdtm dl dd.flexbox span img {
	width:100%;
}
main .aboutdtm dl dd.flexbox p {
	width:500px;
	text-align:left;
}
main .aboutdtm dl dd a {
	color:#0061b2;
}


@media screen and (max-width: 767px) {
	main .aboutdtm {
		width:90%;
		margin:0 auto;
		margin-top:10vw;
	}
	main .aboutdtm dl {
		margin-top:5vw;
	}
	main .aboutdtm dl dt {
		font-size:5vw;
		margin-top:0;
	}
	main .aboutdtm dl dd {
		font-size:4vw;
	}

	main .aboutdtm dd {
		text-align:left;
	}
	main .aboutdtm dl dd.flexbox {
		display:block;
	}
	main .aboutdtm dl dd.flexbox span {
		width:100%;
	}
	main .aboutdtm dl dd.flexbox p {
		width:100%;
		line-height:1.8em;
		margin-top:.8em;
	}
}


main #prepara {
}
main #prepara ul {
	list-style:none;
	display:flex;
	justify-content:space-between;
	margin-top:50px;
}
main #prepara ul li {
	width:31%;
	background:url(/assets/img/bg_stripe3.png);
	border-radius:10px;
	font-weight:bold;
	box-sizing:border-box;
	padding:40px 10px;
}
main #prepara ul li img {
	display:block;
	margin:0 auto;
	width:60%;
	margin-bottom:10px;
}
main #prepara .cam {
	margin-top:70px;
}


@media screen and (max-width: 767px) {
	main #prepara ul {
		display:block;
		margin-top:10vw;
	}
	main #prepara ul li {
		display:block;
		width:80%;
		margin:0 auto;
		margin-top:5vw;
		padding:10vw 3vw;
		font-size:4vw;
	}
	main #prepara ul li img {
		margin-bottom:10px;
	}
	main #prepara .cam {
		margin-top:10vw;
		margin-right:5vw;
		margin-left:5vw;
	}
}



#courseList p.all {
	font-weight:bold;
	margin-top:1.5em;
	font-size:22px;
	color:#d60;
	display:flex;
	justify-content:center;
	line-height:1em;
}
#courseList p.all::before,
#courseList p.all::after {
	content:"";
	display:block;
	background-color:#d60;
	height:30px;
	width:4px;
	border-radius:2px;
}
#courseList p.all::before {
	margin-right:.8em;
	transform:rotate(-15deg);
}
#courseList p.all::after {
	margin-left:.8em;
	transform:rotate(15deg);
}
@media screen and (max-width: 767px) {
	#courseList {
	}
	.course #courseList {
		padding-bottom:5vw;
	}
	#courseList p.all {
		font-size:5vw;
	}
	#courseList p.all::before,
	#courseList p.all::after {
		height:7vw;
	}
}
