@charset "UTF-8";
/* CSS Document */
* {
	margin: 0;
	padding: 0;
}
body {
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
	line-height: 1.6;
	text-align: left;
	font-size: 16px;
}
.mincho {
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", serif;
}
.pc { display: block !important; }
.sp { display: none !important; }
section.TopMain {
width: 100%;
z-index: 1;
padding-top: 0;
}
ul,ol,li{
	padding: 0;
	margin: 0;
	list-style-type: none;
}
img {
	max-width: 100%;
}
a {
	text-decoration: none;
}
header {}
header .HeaderArea {
	width: 1080px;
	margin-left: auto;
	margin-right: auto;
}
header .HeaderArea .logo {
	width: 400px;
	margin-top: 40px;
}
.TopMain .caption {
	width: 1080px;
	margin-left: auto;
	margin-right: auto;
	text-align: right;
}
.TopMain .caption img {
	width: 180px;
	float: right;
	margin-top: -150px;
}
section .Title {
	font-size: 40px;
	line-height: 1.2;
	margin-bottom: 30px;
}
section.Black {
	width: 880px;
	margin-left: auto;
	margin-right: auto;
	background-color: rgba(0,0,0,0.80);
	border-radius: 15px;
	margin-bottom: 40px;
	padding: 40px;
	color: #FFFFFF;
}
.TextArea {
	margin-top: 20px;
}
.TextArea.lesson {
	font-size: 24px;
}
.TextArea.lesson .Title {
	font-weight: bold;
	font-size: 50px;
}
.TextArea.lesson ul {
	font-size: 40px;
	padding-left: 60px;
}
.TextArea.lesson li {
	list-style-type: disc;
	position: relative;
}
.TextArea.lesson li::before{
  content: "";
  position: absolute;
  border-top: 3px double red;
  width: 40%;
  top: 50%;
}
.TextArea.lesson li:last-child:before{
  content: none;
}
.TextArea.lesson li .rem {display: inline-block;font-weight: 700;position: relative;padding-left: 2em;color: #FF0000;}
.TextArea.lesson li .rem:before {content: '';position: absolute;  width: 40px;height: 8px;border-bottom: 5px solid #000;border-right: 5px solid #000;transform: skew(45deg);left: 10px;top:50%;}
.TextArea.lesson li span {
	font-size: 50%;
}
.TextArea.lesson.tebura span {
	padding-top: 120px;
	display: block;
}
.LessonReserve a {
	color: #FFFFFF;
	font-weight: bold;
	text-align: center;
	padding-top: 15px;
	padding-bottom: 15px;
	background-color: rgba(81,12,118,0.90);
	display: block;
	font-size: large;
	border-radius: 5px;
}
.LessonReserve + .LessonReserve a {margin-top:20px; }
.LessonTerms a {
	color: #FFFFFF;
	font-weight: bold;
	text-align: center;
	padding-top: 15px;
	padding-bottom: 15px;
	background-color: rgba(74,51,183,0.90);
	display: block;
	font-size: large;
	border-radius: 5px;
	margin-top: 20px;
}

.LessonReserveBox {
	/* [disabled]top: 0pt; */
}
section.Black.First {
	margin-top: -80px;
	padding-top: 100px;
}
section.Yellow {
	width: 880px;
	margin-left: auto;
	margin-right: auto;
	background-color: rgba(255,221,0,0.60);
	border-radius: 15px;
	margin-bottom: 40px;
	padding: 40px;
	color: #000000;
}
section.White {
	width: 880px;
	margin-left: auto;
	margin-right: auto;
	background-color: rgba(255,255,255,0.80);
	border-radius: 15px;
	margin-bottom: 40px;
	padding: 40px;
	color: #604C3F;
}
section.NoColor {
	width: 700px;
	margin-left: auto;
	margin-right: auto;
	border-radius: 15px;
	margin-bottom: 40px;
	padding-right: 40px;
	padding-left: 40px;
}
section.PhotoBlock {
width: 960px;
margin-left: auto;
margin-right: auto;
margin-bottom: 40px;
}
section.PhotoBlock ul {
display: flex;
justify-content: center;
}
section.PhotoBlock ul li {
width: 30%;
height: auto;
margin-left: 1%;
margin-right: 1%;
}
img.trackman {
	width: 250px;
	float: left;
	margin-right: 60px;
}
img.smartphone {
	width: 400px;
	float: left;
	margin-right: 60px;
}
img.lesson {
	width: 600px;
	float: left;
	margin-right: 30px;
}
.ProfileBox {
	display: block;
	margin-bottom: 40px;
}
.ProfileBox:last-child {
	margin-bottom: 0px;
}
.Photo {
	float: left;
	width: 300px;
	border-radius: 10px;
}
.Photo img {
	border-radius: 10px;
}
.ProfileArea {
	float: right;
	width: 540px;
	margin-top: 60px;
}
.ProfileArea .Name {
	font-size: 30px;
}
.ProfileArea .Name span {
	font-size: 20px;
	margin-right: 30px;
}
.ProfileArea .Profile {
	font-weight: bold;
	margin-left: 20px;
	margin-bottom: 30px;
}
.ProfileArea img {
	width: 50px;
	margin-top: 20px;
}
/* MAP*/
.MapArea {
	width: 300px;
	float: left;
}
.gmap {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}
.gmap iframe,
.gmap object,
.gmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
/* PageTop */
.pagetop {
	display: none;
	position: fixed;
	bottom: 80px;
	right: 15px;
	z-index: 2200;
}
.pagetop a {
	display: block;
	background-color: rgba(81,12,118,0.90);
	text-align: center;
	color: #ffffff;
	font-weight: bold;
	font-size: 12px;
	text-decoration: none;
	width: 80px;
	height: 80px;
	-moz-border-radius: 40px;
	-webkit-border-radius: 40px;
	border-radius: 40px;    /* 横幅&高さの1/2 */
	position: relative;
	vertical-align: middle;
}
.pagetop a span{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
}
.LessonReserveBox a {
	background-color: rgba(81,12,118,0.90);
	text-align: center;
	color: #ffffff;
	font-weight: bold;
	font-size: medium;
	text-decoration: none;
	width: auto;
	position: fixed;
	vertical-align: middle;
	border-radius: 10px 0px 0px 10px;
	padding-top: 10px;
	padding-bottom: 10px;
	height: auto;
	padding-right: 20px;
	padding-left: 20px;
	display: inline-block;
	right: 0px;
	top: 60px;
}
.LessonReserveBoxB a {
	background-color: rgba(81,12,118,0.90);
	text-align: center;
	color: #ffffff;
	font-weight: bold;
	font-size: medium;
	text-decoration: none;
	width: auto;
	position: fixed;
	vertical-align: middle;
	border-radius: 0px 0px 0px 10px;
	padding-top: 10px;
	padding-bottom: 10px;
	height: auto;
	padding-right: 20px;
	padding-left: 20px;
	display: inline-block;
	right: 0px;
	top: 0px;
}
.LessonTermsBox a {
	background-color: rgba(74,51,183,0.90);
	text-align: center;
	color: #ffffff;
	font-weight: bold;
	font-size: medium;
	text-decoration: none;
	width: auto;
	position: fixed;
	vertical-align: middle;
	border-radius: 10px 0px 0px 10px;
	padding-top: 10px;
	padding-bottom: 10px;
	height: auto;
	padding-right: 20px;
	padding-left: 20px;
	display: inline-block;
	right: 0px;
	top: 120px;
}
footer {
	background-color: #FFDD00;
	padding-bottom: 30px;
}
.FooterArea {
	width: 1080px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 40px;
}
.FooterArea .logo {
	width: 200px;
	float: left;
	margin-top: 20px;
}
.FooterArea .Address {
	float: left;
	width: 500px;
	margin-left: 40px;
	margin-right: 40px;
}
.FooterArea .Address .Tel {
	font-size: 24px;
	font-weight: bold;
}
.FooterArea .Address .Tel .tit {display: block;}
.FooterArea .Address .Tel img {
	width: 24px;
	margin-right: 10px;
}
.FooterArea .Address .Tel span {
	font-size: 70%;
	font-weight: normal;
}
.FooterArea .Copyright {
	font-size: 80%;
	float: left;
	margin-top: -30px;
}
/* HOVER*/
@media screen and (min-width:769px){
a:hover img {
	opacity: 0.8;
	filter: alpha(opacity=60);
	-ms-filter: "alpha( opacity=60 )";
}
a:hover {}
.pagetop a:hover {
	display: block;
	background-color: rgba(81,12,118,0.60);
	text-align: center;
	color: #fff;
	font-size: 12px;
	text-decoration: none;
}
.LessonReserveBoxB a:hover,
.LessonReserveBox a:hover{
	background-color: rgba(81,12,118,0.60);
}
.LessonReserve a:hover {
	background-color: rgba(81,12,118,0.80);
}
.LessonTermsBox a:hover{
	background-color: rgba(74,51,183,0.60);
}
.LessonTerms a:hover{
	background-color: rgba(74,51,183,0.80);
}
}
@media screen and (max-width:768px){
.pc { display: none !important; }
.sp { display: block !important; }
body {
	width: 100%;
	max-width: 100vw;
	min-width: 100%;
	font-size: medium;
}
header .HeaderArea {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}
header .HeaderArea .logo {
	width: 70%;
	margin-top: 115px;
	margin-left: auto;
	margin-right: auto;
}
.TopMain .caption {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}
.TopMain .caption img {
	width: 30%;
	float: none;
	margin-top: 0px;
	margin-left: 35%;
	margin-right: 35%;
}
section .Title {
	font-size: large;
	line-height: 1.2;
	margin-bottom: 15px;
}
section.Black {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 40px;
	padding: 5%;
}
.TextArea {
	margin-top: 20px;
}
.TextArea.lesson {
	font-size: large;
}
.TextArea.lesson .Title {
	font-weight: bold;
	font-size: x-large;
}
.TextArea.lesson ul {
	font-size: large;
	padding-left: 40px;
}
.TextArea.lesson li {
	list-style-type: disc;
	line-height: 1.2;
	padding-top: 5px;
	padding-bottom: 5px;
	font-size: 3.6vw;
}
	.TextArea.lesson li .rem {display: inline-block;font-size: 3.0vw;font-weight: 700;position: relative;padding-left: 2em;color: #FF0000;}
.TextArea.lesson li .rem:before {content: '';position: absolute;  width: 1em;height: 4px;border-bottom: 2px solid #000;border-right: 2px solid #000;transform: skew(45deg);left: 0px;top:30%;}
.TextArea.lesson.tebura span {
	padding-top: 10px;
	display: block;
	font-size: large;
}
section.Black.First {
	padding-top: 5%;
	margin-top: 0px;
}
section.Yellow {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 40px;
	padding: 5%;
}
section.White {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 40px;
	padding: 5%;
}
section.NoColor {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 40px;
	padding-top: 0%;
	padding-right: 5%;
	padding-left: 5%;
	padding-bottom: 0%;
}
section.PhotoBlock {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}
img.trackman {
	width: 80%;
	float: none;
	margin-right: 10%;
	margin-left: 10%;
}
img.smartphone {
	width: 80%;
	float: none;
	margin-right: 10%;
	margin-left: 10%;
}
img.lesson {
	width: 100%;
	float: none;
	margin-right: 0px;
	margin-left: 0px;
}
.LessonReserveBox a {
	left: 0px;
	width: 40%;
	padding-left: 5%;
	padding-right: 5%;
	border-radius: 0px;
	height: 25px;
	top: 0px;
}
.LessonTermsBox a {
	right: 0px;
	top: 0px;
	width: 40%;
	padding-left: 5%;
	padding-right: 5%;
	border-radius: 0px;
	height: 25px;
}
.LessonReserveBoxB a  {
	left: 0px;
	top: 45px;
	width: 90%;
	padding-left: 5%;
	padding-right: 5%;
	border-radius: 0px;
	position: fixed;
	text-align: center;
	background-color: rgba(255,237,0,0.90);
	color: #000000;
	font-weight: bold;
	font-size: medium;
	text-decoration: none;
	vertical-align: middle;
	padding-top: 10px;
	padding-bottom: 10px;
	height: 25px;
}
.Photo {
	float: none;
	width: 80%;
	margin-right: 10%;
	margin-left: 10%;
}
.ProfileArea {
	float: none;
	width: 100%;
	margin-top: 15px;
}
.ProfileArea .Name {
	font-size: 30px;
}
.ProfileArea .Name span {
	font-size: 70%;
	display: block;
}
.ProfileArea .Profile {
	font-weight: bold;
	margin-left: 20px;
	margin-bottom: 30px;
}
.ProfileArea img {
	width: 50px;
	margin-top: 20px;
}
/* MAP*/
.MapArea {
	width: 100%;
	float: none;
	margin-top: 15px;
}
footer {
	background-color: #FFDD00;
	padding-bottom: 30px;
}
.FooterArea {
	width: 90%;
	margin-left: 5%;
	margin-right: 5%;
	padding-top: 40px;
}
.FooterArea .logo {
	width: 70%;
	float: none;
	margin-top: 20px;
	margin-left: auto;
	margin-right: auto;
}
.FooterArea .Address {
	width: 100%;
	float: none;
	margin-left: 0px;
	margin-right: 0px;
}
.FooterArea .Address .Tel {
	font-size: x-large;
	font-weight: bold;
	text-align: center;
	margin-bottom: 15px;
}
.FooterArea .Address .Tel img {
	width: 24px;
	margin-right: 10px;
}
.FooterArea .Address .Tel span {
	font-size: 70%;
	font-weight: normal;
	display: block;
}
.FooterArea .Copyright {
	width: 100%;
	float: none;
	font-size: 80%;
	margin-top: 20px;
	text-align: center;
}
}
/* AFTER */
section:after{
  display: block;
  content: "";
  clear: both;
}
.TextArea.lesson:after{
  display: block;
  content: "";
  clear: both;
}
.ProfileBox:after{
  display: block;
  content: "";
  clear: both;
}
.FooterArea:after{
  display: block;
  content: "";
  clear: both;
}
