@charset "utf-8";

/*********************
* ジュニアカートスクール
*********************/

/* PC */
@media print,screen and (min-width: 1001px) {
#jks .page_header {
	background-image: url(../images/junior_kart_school/main.jpg);
}

#jks .s1 {
  margin-bottom: 170px;
  padding-top: 130px;
}

#jks .s1 h2 {
  font-size: 3.857em;
  font-weight: 900;
}

#jks .s1 .text {
  width: 50%;
}

#jks .s1 .text p {
  font-size: 1.143em;
}

#jks .s1 .text p + p {
  margin-top: 2em;
}

#jks .s1 .text p .alert {
  font-size: 1.125em;
}

#jks .s2 {
  /*margin-bottom: 120px;*/
  padding: 100px 0 140px;
  position: relative;
  z-index: 1;
}

#jks .s2::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
	width: 96.25vw;
	height: 100%;
	background-color: #76dcad;
	border-radius: 20px;
}

#jks .s2 .caption {
  margin-bottom: 80px;
}

#jks .s2_box .item {
  width: 50%;
  padding-right: 3.34%;
}

#jks .s2_box .item:nth-child(even) {
  margin-top: 100px;
  padding: 0 0 0 3.34%;
}

#jks .s2_box .item:last-child {
  margin-top: -100px;
}

#jks .s2_box .item .img {
  position: relative;
}

#jks .s2_box .item .img .f_en {
  position: absolute;
  top: -35px;
  left: 20px;
  font-size: 5.143em;
  color: #425744;
  line-height: 1;
  letter-spacing: 0;
}

#jks .s2_box .item .text {
  width: 80.36%;
  background-color: #fff;
  border-radius: 20px;
  margin: -60px 0 0 auto;
  padding: 6.67%;
  position: relative;
}

#jks .s2_box .item .text h3 {
  font-size: 1.857em;
  line-height: 1.3;
  margin-bottom: 20px;
}

#jks .s2_box .item .text h3 span {
  display: block;
  font-size: .769em;
  margin-top: 5px;
}

#jks .s2_box .item .text p {
  font-size: 1.143em;
}

#jks .s3 {
  min-height: 1157px;
  background: url(../images/junior_kart_school/bg.jpg) no-repeat center;
  background-size: cover;
  border-radius: 80px;
  margin-top: -200px;
  padding-top: 300px;
  position: relative;
}

#jks .s3 * {
  font-weight: 700;
  color: #fff;
}

#jks .s3_box {
  width: 46.67%;
}

#jks .s3_box > div + div {
  margin-top: 60px;
}

#jks .s3_box h2 {
  font-size: 3.143em;
  letter-spacing: .1em;
  margin-bottom: 20px;
}

#jks .s3_box ul li {
  display: flex;
  align-items: flex-start;
  font-size: 1.571em;
  margin-bottom: 10px;
}

#jks .s3_box ul li .f_en {
  flex-shrink: 0;
  width: 35px;
  height: 35px;
  font-size: 1.364em;
  font-weight: 500;
  color: #425744;
  text-align: center;
  line-height: 35px;
  letter-spacing: 0;
  background-color: #fff;
  border-radius: 50%;
  margin-right: 10px;
}

#jks .s3_box dl {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  margin-bottom: 10px;
}
#jks .s3_box p + dl {
  margin-top: 30px;
}

#jks .s3_box dl dt {
  flex-shrink: 0;
  width: 5em;
  font-size: 1.286em;
  text-align: center;
  border: 1px solid #fff;
  background-color: rgba(0, 0, 0, .3);
}

#jks .s3_box dl dd {
  font-size: 1.571em;
  line-height: 1.3;
  margin-left: 10px;
}

#jks .s3_box p {
  font-size: 1.143em;
  line-height: 1.5;
}

#jks .s4 {
  margin-top: 130px;
  padding-bottom: 200px;
  position: relative;
}

#jks .s4::before {
  content: "";
  position: absolute;
  top: 370px;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-color: #f8f8f8;
  border-radius: 80px 80px 0 0;
}

#jks .s4 .caption {
  margin-bottom: 100px;
}

#jks .s4_box .item {
  width: 46.67%;
  background-color: #fff;
  border: 3px solid #e7e7e7;
  border-radius: 80px;
  padding: 4.17%;
  position: relative;
}

#jks .s4_box .item h3 {
  position: absolute;
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
  min-height: 42px;
  font-size: 2em;
  line-height: 1;
  white-space: nowrap;
  background: #fff no-repeat 5px center;
  background-size: 39px auto;
  padding: 0 10px 0 50px;
}
#jks .s4_box .item.item1 h3 {
  color: #f48400;
  background-image: url(../images/junior_kart_school/img04.png);
}
#jks .s4_box .item.item2 h3 {
  color: #49c2d0;
  background-image: url(../images/junior_kart_school/img06.png);
}

#jks .s4_box .item > img {
  display: block;
  margin: 0 auto 20px;
}

#jks .s4_box ul li {
  display: flex;
  align-items: flex-start;
  margin-bottom: 15px;
}

#jks .s4_box ul li .f_en {
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  font-size: 1.714em;
  /*font-weight: 500;*/
  color: #fff;
  text-align: center;
  line-height: 30px;
  letter-spacing: 0;
  border-radius: 50%;
  margin-right: 10px;
}
#jks .s4_box .item.item1 ul li .f_en {
  background-color: #e69c29;
}
#jks .s4_box .item.item2 ul li .f_en {
  background-color: #59bec9;
}

#jks .s4_box ul li p {
  line-height: 1.3;
}

#jks .s4_box ul li p strong {
  display: block;
  font-size: 1.286em;
  letter-spacing: .1em;
}

#jks .s5 {
  padding-bottom: 210px;
  position: relative;
}

#jks .s5::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-color: #f8f8f8;
}

#jks .s5 .caption {
  margin-bottom: 60px;
}

#jks .s5_box .item {
  display: flex;
  flex-wrap: wrap;
  align-content: space-between;
  width: calc(100% / 3 - 10px);
  min-height: 680px;
  background: no-repeat center;
  background-size: cover;
  border-radius: 20px;
  padding: 3.34%;
  position: relative;
}
#jks .s5_box .item.item1 {
  background-image: url(../images/junior_kart_school/img08.jpg);
  top: 60px;
}
#jks .s5_box .item.item2 {
  background-image: url(../images/junior_kart_school/img09.jpg);
}
#jks .s5_box .item.item3 {
  align-content: flex-start;
  background-image: url(../images/junior_kart_school/img10.jpg);
  top: 30px;
}

#jks .s5_box .item * {
  color: #fff;
}

#jks .s5_box .item h3 {
  font-size: 2.143em;
  line-height: 1.3;
  margin-bottom: 60px;
}

#jks .s5_box .item h3 > span {
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  white-space: nowrap;
}

#jks .s5_box .item h3 > span .f_en {
  display: block;
  font-size: .6em;
}

#jks .s5_box .item .text {
  width: 100%;
}

#jks .s5_box .item .text p {
  font-size: 1.429em;
}

#jks .s5_box .item .text dl {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  width: 100%;
  border-top: 1px solid rgba(255, 255, 255, .26);
  margin-top: 10px;
  padding-top: 10px;
}

#jks .s5_box .item .text dl dt {
  flex-shrink: 0;
  width: 80px;
  font-size: 1.429em;
  font-weight: 700;
  border-bottom: 1px solid rgba(255, 255, 255, .26);
  padding-bottom: 10px;
}

#jks .s5_box .item .text dl dd {
  width: calc(100% - 80px);
  font-size: 1.286em;
  border-bottom: 1px solid rgba(255, 255, 255, .26);
  padding-bottom: 10px;
}
#jks .s5_box .item.item3 .text dl dd {
  width: 100%;
}

#jks .s6 {
  margin-bottom: 130px;
  padding-bottom: 90px;
  position: relative;
}

#jks .s6::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-color: #f8f8f8;
  border-radius: 0 0 80px 80px;
}

#jks .s6 .caption {
  width: calc(100% - 71.67%);
}

#jks .s6_box {
  width: 71.67%;
}

#jks .s6_box dl {
  min-height: 225px;
  background: no-repeat 60px top;
  padding-left: 330px;
}
#jks .s6_box dl.item1 {
  background-image: url(../images/junior_kart_school/img11.jpg);
  border-bottom: 1px solid #ddd;
  margin-bottom: 60px;
  padding-bottom: 60px;
}
#jks .s6_box dl.item2 {
  background-image: url(../images/junior_kart_school/img12.jpg);
  border-bottom: 1px solid #ddd;
  margin-bottom: 60px;
  padding-bottom: 60px;
}
#jks .s6_box dl.item3 {
  background-image: url(../images/junior_kart_school/img13.jpg);
}

#jks .s6_box dl dt {
  margin-bottom: 20px;
}

#jks .s6_box dl dt div span:first-of-type {
  font-size: 2.143em;
  font-weight: 700;
  letter-spacing: .1em;
}

#jks .s6_box dl dt span:last-of-type {
  display: inline-block;
  color: #dc000c;
  background-color: #fff;
  border-radius: 20px;
  margin-left: 20px;
  padding: 3px 15px;
}

#jks .s6_box dl dt img {
  display: none;
}

#jks .s7 {
  margin-bottom: 180px;
}

#jks .s7 .caption {
  margin-bottom: 60px;
}

#jks .s7_box .item {
  width: 18%;
}
#jks .s7_box .item.item1 {
  margin-top: 110px;
}
#jks .s7_box .item.item3 {
  margin-top: 65px;
}
#jks .s7_box .item.item4 {
  margin-top: 140px;
}

#jks .s7_box .item h3 {
  font-size: 1.571em;
  line-height: 1.3;
  margin: 10px 0;
}
#jks .s7_box .item.item1 h3 {
  color: #f48400;
}
#jks .s7_box .item.item2 h3 {
  color: #49c2d0;
}
#jks .s7_box .item.item3 h3 {
  color: #8577d2;
}
#jks .s7_box .item.item4 h3 {
  color: #f84848;
}
#jks .s7_box .item.item5 h3 {
  color: #ec66a5;
}

#jks .s7_box .item ul {
  margin-top: 10px;
}

#jks .s7_box .item ul li {
  display: inline-block;
  text-align: center;
  color: #425744;
  border: 1px solid #425744;
  border-radius: 20px;
  padding: 0 1em;
}

#jks .s7_box .item ul li + li {
  margin-top: 5px;
}

} /* @media print,screen and (min-width: 1001px) */



/* SP */
@media screen and (max-width: 1000px) {
#jks .page_header {
	background-image: url(../images/junior_kart_school/main_sp.jpg);
}

#jks .s1 {
  margin-bottom: 15vw;
  padding-top: 13vw;
}

#jks .s1 h2 {
  font-size: 2em;
  font-weight: 900;
  line-height: 1.5;
  margin-bottom: 7vw;
}

#jks .s1 .text {
  width: 100%;
}

#jks .s1 .text p + p {
  margin-top: 1.5em;
}

#jks .s2 {
  margin-bottom: 3vw;
  padding: 10vw 0;
  position: relative;
}

#jks .s2::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
	width: 96.25vw;
	height: 100%;
	background-color: #76dcad;
	border-radius: 20px;
}

#jks .s2 .contents_inner {
  padding-left: 7vw;
  padding-right: 7vw;
}

#jks .s2 .caption {
  margin-bottom: 10vw;
}

#jks .s2_box .item {
  width: 100%;
}

#jks .s2_box .item + .item {
  margin-top: 7vw;
}

#jks .s2_box .item .img {
  width: 78.125vw;
  position: relative;
}

#jks .s2_box .item .img .f_en {
  position: absolute;
  top: -5vw;
  left: 3vw;
  font-size: 2.77em;
  color: #425744;
  line-height: 1;
  letter-spacing: 0;
}

#jks .s2_box .item .text {
  width: 80.625vw;
  background-color: #fff;
  border-radius: 20px;
  margin: -5vw 0 0 auto;
  padding: 3.5vw;
  position: relative;
}

#jks .s2_box .item .text h3 {
  font-size: 1.231em;
  line-height: 1.3;
  margin-bottom: 3vw;
}

#jks .s2_box .item .text h3 span {
  display: block;
  font-size: .875em;
  margin-top: 5px;
}

#jks .s3 {
  background: url(../images/junior_kart_school/bg_sp.jpg) no-repeat center top;
  background-size: contain;
  padding-top: calc(56.25vw + 7vw);
  position: relative;
}

#jks .s3_box {
  width: 100%;
}

#jks .s3_box > div + div {
  margin-top: 7vw;
}

#jks .s3_box h2 {
  font-size: 1.385em;
  letter-spacing: .1em;
  margin-bottom: 3vw;
}

#jks .s3_box ul li {
  display: flex;
  align-items: flex-start;
  font-size: 1.077em;
  font-weight: 700;
  margin-bottom: 1.5vw;
}

#jks .s3_box ul li .f_en {
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  font-size: 1.286em;
  font-weight: 500;
  color: #fff;
  text-align: center;
  line-height: 30px;
  letter-spacing: 0;
  background-color: #425744;
  border-radius: 50%;
  margin-right: 10px;
}

#jks .s3_box dl {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  margin-bottom: 10px;
}
#jks .s3_box p + dl {
  margin-top: 5vw;
}

#jks .s3_box dl dt {
  flex-shrink: 0;
  width: 5em;
  font-size: 1.077em;
  font-weight: 700;
  color: #425744;
  text-align: center;
  border: 1px solid #425744;
}

#jks .s3_box dl dd {
  font-size: 1.154em;
  font-weight: 700;
  line-height: 1.3;
  margin-left: 10px;
}

#jks .s3_box p {
  font-size: .923em;
}

#jks .s4 {
  margin-top: 15vw;
  padding-bottom: 15vw;
  position: relative;
}

#jks .s4::before {
  content: "";
  position: absolute;
  top: 50vw;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-color: #f8f8f8;
  border-radius: 20px 20px 0 0;
}

#jks .s4 .caption {
  margin-bottom: 7vw;
}

#jks .s4_box .item {
  width: 100%;
  background-color: #fff;
  border: 2px solid #e7e7e7;
  border-radius: 20px;
  padding: 3vw 5vw 5vw;
}

#jks .s4_box .item + .item {
  margin-top: 5vw;
}

#jks .s4_box .item h3 {
  font-size: 1.231em;
  text-align: center;
  line-height: 8.75vw;
  white-space: nowrap;
  background: #fff no-repeat 5px center;
  background-size: 8.125vw auto;
  margin-bottom: 3vw;
}
#jks .s4_box .item.item1 h3 {
  color: #f48400;
}
#jks .s4_box .item.item2 h3 {
  color: #49c2d0;
}

#jks .s4_box .item h3::before {
  content: "";
  display: inline-block;
  width: 8.125vw;
  height: 8.75vw;
  background: no-repeat center;
  background-size: contain;
  margin-right: 2vw;
  vertical-align: middle;
}
#jks .s4_box .item.item1 h3::before {
  background-image: url(../images/junior_kart_school/img04.png);
}
#jks .s4_box .item.item2 h3 {
  background-image: url(../images/junior_kart_school/img06.png);
}

#jks .s4_box .item > img {
  display: block;
  margin: 0 auto 3vw;
}

#jks .s4_box ul li {
  display: flex;
  align-items: baseline;
  margin-bottom: 1.5vw;
}

#jks .s4_box ul li .f_en {
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  font-size: 1.231em;
  color: #fff;
  text-align: center;
  line-height: 30px;
  letter-spacing: 0;
  border-radius: 50%;
  margin-right: 10px;
}
#jks .s4_box .item.item1 ul li .f_en {
  background-color: #e69c29;
}
#jks .s4_box .item.item2 ul li .f_en {
  background-color: #59bec9;
}

#jks .s4_box ul li p {
  font-size: .923em;
  line-height: 1.3;
}

#jks .s4_box ul li p strong {
  display: block;
  font-size: 1.167em;
  letter-spacing: .1em;
}

#jks .s5 {
  padding-bottom: 15vw;
  position: relative;
}

#jks .s5::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-color: #f8f8f8;
}

#jks .s5 .caption {
  margin-bottom: 7vw;
}

#jks .s5_box .item {
  display: flex;
  align-items: flex-end;
  width: 100%;
  height: 78.125vw;
  background: no-repeat center;
  background-size: contain;
  border-radius: 20px;
  padding: 5vw;
}
#jks .s5_box .item.item1 {
  background-image: url(../images/junior_kart_school/img08_sp.jpg);
}
#jks .s5_box .item.item2 {
  background-image: url(../images/junior_kart_school/img09_sp.jpg);
  margin-top: 1.5vw;
}
#jks .s5_box .item.item3 {
  align-content: flex-start;
  background-image: url(../images/junior_kart_school/img10_sp.jpg);
  margin-top: 1.5vw;
}

#jks .s5_box .item * {
  color: #fff;
}

#jks .s5_box .item h3 {
  align-self: flex-start;
  width: 20%;
  font-size: 1.538em;
  line-height: 1.3;
}

#jks .s5_box .item h3 > span {
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  white-space: nowrap;
}

#jks .s5_box .item h3 > span .f_en {
  display: block;
  font-size: .65em;
}

#jks .s5_box .item .text {
  width: 80%;
}

#jks .s5_box .item .text p {
  font-size: 1.154em;
}

#jks .s5_box .item .text dl {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  width: 100%;
  border-top: 1px solid rgba(255, 255, 255, .26);
  margin-top: 1.5vw;
  padding-top: 1.5vw;
}

#jks .s5_box .item .text dl dt {
  flex-shrink: 0;
  width: 70px;
  font-size: 1.077em;
  font-weight: 700;
  border-bottom: 1px solid rgba(255, 255, 255, .26);
  padding-bottom: 1.5vw;
}

#jks .s5_box .item .text dl dd {
  width: calc(100% - 70px);
  font-size: 1.077em;
  border-bottom: 1px solid rgba(255, 255, 255, .26);
  padding-bottom: 1.5vw;
}
#jks .s5_box .item.item3 .text dl dd {
  width: 100%;
}

#jks .s6 {
  margin-bottom: 13vw;
  padding-bottom: 10vw;
  position: relative;
}

#jks .s6::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-color: #f8f8f8;
  border-radius: 0 0 20px 20px;
}

#jks .s6 .caption {
  width: 100%;
  margin-bottom: 7vw;
}

#jks .s6_box {
  width: 100%;
}

#jks .s6_box dl.item1 {
  border-bottom: 1px solid #ddd;
  margin-bottom: 5vw;
  padding-bottom: 5vw;
}
#jks .s6_box dl.item2 {
  border-bottom: 1px solid #ddd;
  margin-bottom: 5vw;
  padding-bottom: 5vw;
}

#jks .s6_box dl dt {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 3vw;
}

#jks .s6_box dl dt div {
  width: calc(100% - 34.375vw - 5vw);
}

#jks .s6_box dl dt div span:first-of-type {
  display: block;
  font-size: 1.385em;
  font-weight: 700;
  letter-spacing: .1em;
  margin-bottom: 1vw;
}

#jks .s6_box dl dt span:last-of-type {
  display: inline-block;
  color: #dc000c;
  background-color: #fff;
  border-radius: 20px;
  padding: 3px 15px;
}

#jks .s6_box dl dt img {
  width: 34.375vw;
  margin-right: 5vw;
}

#jks .s7 {
  margin-bottom: 5vw;
}

#jks .s7 .caption {
  margin-bottom: 7vw;
}

#jks .s7_box .item {
  width: 47%;
  margin-bottom: 10vw;
}
#jks .s7_box .item:nth-of-type(even) {
  margin-top: 20vw;
}
#jks .s7_box .item.item5 {
  margin-top: -20vw;
}

#jks .s7_box .item h3 {
  font-size: 1.154em;
  line-height: 1.3;
  margin: 1.5vw 0;
}
#jks .s7_box .item.item1 h3 {
  color: #f48400;
}
#jks .s7_box .item.item2 h3 {
  color: #49c2d0;
}
#jks .s7_box .item.item3 h3 {
  color: #8577d2;
}
#jks .s7_box .item.item4 h3 {
  color: #f84848;
}
#jks .s7_box .item.item5 h3 {
  color: #ec66a5;
}

#jks .s7_box .item p {
  font-size: .923em;
}

#jks .s7_box .item ul {
  margin-top: 1vw;
}

#jks .s7_box .item ul li {
  font-size: .923em;
  text-align: center;
  color: #425744;
  border: 1px solid #425744;
  border-radius: 30px;
  padding: 3px 0;
}

#jks .s7_box .item ul li + li {
  margin-top: .75vw;
}

} /* @media screen and (max-width: 1000px) */