@charset "UTF-8";
/* CSS Document */

/* ************************************************************
block01
************************************************************ */

#block01{
	width: 100%;
	margin: 0 auto;
	padding: 7%  2%;
	font-weight: 700;
	letter-spacing: 0.2em;
}
#block01 .title{
	width: 100%;
	margin: 0 auto;
	padding: 10px 0;
	max-width: 330px;
	font-size: 34px;
	color: #FF6C00;
	border-left: solid #FF6C00 6px;
	border-right: solid #FF6C00 6px;
}
#block01 ul{
	width: 100%;
	margin: 0 auto;
	padding: 5% 0 0;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	max-width: 1100px;
}
#block01 ul li{
	width: 28%;
	padding-top: 3%;
}

#block01 ul li p:nth-child(1){
	width: 100%;
	margin: 0 auto;
}
#block01 ul li p:nth-child(2){
	width: 100%;
	margin: 0 auto;
	padding-top: 20px;
	font-size: 14px;
	line-height: 1.5;
}

#block01 .block01-2back{
	width: 100%;
	margin: 8% auto 0;
	position: relative;
	background-size: auto auto;
    background-color: rgba(255, 238, 222, 0.45);
    background-image: repeating-linear-gradient(90deg, transparent, transparent 6px, rgba(255, 238, 222, 1) 6px, rgba(255, 238, 222, 1) 12px );
    border-radius: 30px;
}
#block01 .block01-2back h3{
	position: absolute;
	top:-25px;
	right: 0; left: 0;
	max-width: 800px;
	margin: 0 auto;
	padding: 25px 10px;
	background-color: #ff4242;
	border-radius: 50px;
	color: #FFF;
	font-size: 28px;
	font-weight: 700;
}
#block01 .block01-2back h3 br{
	display: none;
}
#block01 .block01-2{
	width: 100%;
	margin: 0 auto;
	padding: 5%;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: flex-end;
	max-width: 1200px;
}
#block01 .block01-2 div{
	width: 30%;
}
#block01 .block01-2 div p:nth-child(2) {
    position: relative;
	padding-top: 20px;
}
#block01 .block01-2 div p:nth-child(2) a{
	width: 100%;
	padding: 10px ;
	font-size: 16px;
	display: inline-block;
	background-color: #FFF;
	color: #FF6C00;
	border:solid #FF6C00 3px;
	border-radius: 50px;
}
#block01 .block01-2 div:nth-child(2) p:nth-child(2) a{
	color: #f44d69;
	border:solid #f44d69 3px;
}
#block01 .block01-2 div:nth-child(3) p:nth-child(2) a{
	color: #01a3df;
	border:solid #01a3df 3px;
}
#block01 .block01-2 div p:nth-child(3) {
    position: relative;
	padding-top: 10px;
}
#block01 .block01-2 div p:nth-child(3) a{
	width: 100%;
	padding: 10px ;
	font-size: 16px;
	display: inline-block;
	background-color: #FFF;
	color: #FF6C00;
	border:solid #FF6C00 3px;
	border-radius: 50px;
}
#block01 .block01-2 div:nth-child(2) p:nth-child(3) a{
	color: #f44d69;
	border:solid #f44d69 3px;
}
#block01 .block01-2 div:nth-child(3) p:nth-child(3) a{
	color: #01a3df;
	border:solid #01a3df 3px;
}
/* ▼▼▼▼▼▼▼▼MaxWidth1200(pc)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 1200px) {
 /* ************** */
#block01 ul li{
	width: 31%;
	padding-top: 3%;
}
#block01 .block01-2{
	padding: 10% 5% 5%;
}
 /* *************** */
}
/* ▼▼▼▼▼▼▼▼MaxWidth1024(tablet)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 1024px) {
 /* ************** */

 /* *************** */
}
/* ▼▼▼▼▼▼▼▼MaxWidth900(tablet)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 900px) {
 /* ************** */
#block01 ul {
	max-width: 650px;
}
#block01 ul li{
	width: 45%;
}
	
#block01 .block01-2back{
	margin: 15% auto 0;
}
#block01 .block01-2back h3{
	top:-45px;
	max-width: 440px;
	padding: 20px 5px;
	font-size: 20px;
	line-height: 1.4;
}
#block01 .block01-2back h3 br{
	display: block;
}
#block01 .block01-2 div{
	width: 31%;
	letter-spacing: 0.1em;
}
 /* *************** */
}
/* ▼▼▼▼▼▼▼▼MaxWidth768(tablet)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 768px) {
 /* ************** */
#block01{
	padding: 10% 2%;
}
#block01 .block01-2back{
	margin: 80px auto 0;
}
#block01 .block01-2{
	padding: 70px 5% 5%;
}
#block01 .block01-2 div span{
	display: none;
}
#block01 .block01-2 div p:nth-child(2) a{
	padding: 8px ;
	font-size: 16px;
	border:solid #FF6C00 2px;
}
#block01 .block01-2 div:nth-child(2) p:nth-child(2) a{
	border:solid #f44d69 2px;
}
#block01 .block01-2 div:nth-child(3) p:nth-child(2) a{
	border:solid #01a3df 2px;
}	
#block01 .block01-2 div p:nth-child(3) a{
	padding: 8px ;
	font-size: 16px;
	border:solid #FF6C00 2px;
}
#block01 .block01-2 div:nth-child(2) p:nth-child(3) a{
	border:solid #f44d69 2px;
}
#block01 .block01-2 div:nth-child(3) p:nth-child(3) a{
	border:solid #01a3df 2px;
}
/* *************** */
}
/* ▼▼▼▼▼▼▼▼MaxWidth650(mobile)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 650px) {
 /* ************** */
#block01 ul li{
	padding-top: 5%;
	width: 48%;
}
#block01 ul li p:nth-child(2){
	padding-top: 10px;
	font-size: 12px;
}
	
#block01 .block01-2back h3{
	top:-30px;
	max-width: 360px;
	padding: 10px 5px;
	font-size: 18px;
}
 /* *************** */
}
/* ▼▼▼▼▼▼▼▼MaxWidth480(mobile)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 480px) {
 /* ************** */

#block01 .title{
	max-width: 250px;
	font-size: 28px;
}
#block01 ul li p:nth-child(2){
	letter-spacing: 0.1em;
}
#block01 .block01-2back{
    background-image: repeating-linear-gradient(90deg, transparent, transparent 4px, rgba(255, 238, 222, 1) 4px, rgba(255, 238, 222, 1) 8px );
}
#block01 .block01-2back h3{
	max-width: 320px;
	font-size: 16px;
}
#block01 .block01-2 div p:nth-child(2) {
	padding-top: 10px;
}
#block01 .block01-2 div p:nth-child(3) {
	padding-top: 5px;
}
#block01 .block01-2 div p:nth-child(2) a,
#block01 .block01-2 div p:nth-child(3) a{
	font-size: 14px;
	padding: 5px ;
}
 /* *************** */
}

/* ************************************************************
block02 初級クラス
************************************************************ */
#block02{
	width: 100%;
	margin: 0 auto;
	padding: 0 2%;
	font-weight: 600;
	letter-spacing: 0.1em;
}
#block02 .title{
	width: 100%;
	margin: 0 auto;
	padding: 20px;
	font-size: 34px;
	font-weight: 700;
	color: #FFFFFF;
	background-color: #FF6C00;
}
#block02 .block02-1 {
	width: 100%;
	margin: 0 auto;
	padding: 3% 0;
	max-width: 770px;
}
#block02 .block02-1  li{
	width: 100%;
	margin: 0 auto;
	text-align: left;
	padding: 5px 10px 8px 25px;
	font-size: 16px;
	background-image:url("img/kaede01.png") ;
	background-repeat: no-repeat;
	background-position: left 0 top 8px;
	background-size: 20px;
	line-height: 1.5;
}

#block02 .etc{
	width: 100%;
	margin: 3%  auto ;
	padding: 7% 5% 5%;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	text-align: left;
	font-size: 16px;
	line-height: 1.5;
	border: solid 3px #FF6C00;
	max-width: 1000px;
	border-radius: 30px;
	position: relative;
}
#block02 .etc p{
	width: 45%;
	padding-top:5px;
}
#block02 .etc p:nth-of-type(odd){
	padding-left: 20px;
	background-image: url("img/check.png");
	background-repeat: no-repeat;
	background-size: 15px;
	background-position: left 0 top 11px;
}
#block02 .etc p:nth-of-type(even){
	width: 53%;
	color: #eb9e5c;
}
#block02 .etc .etc-t{
	position: absolute;
	top:-30px;
	left: 0;
	right: 0;
	padding: 15px;
	font-size: 22px;
	text-align: center;
	margin: 0 auto;
	max-width: 600px;
	color: #FFF;
	background-color: #FF6C00;
	border-radius: 10px;
	font-weight: 700;
}
#block02 .title2{
	width: 100%;
	margin: 0 auto;
	padding-top: 50px;
	padding-bottom: 30px;
	display: flex;
	align-items: center;
	font-size: 30px;
	font-weight: 700;
	color: #FF6C00;
}
#block02 .title2:before,
#block02 .title2:after {
    content: "";
    height: 3px;
    flex-grow: 1;
    background-color: #FF6C00;
}
#block02 .title2:before {
    margin-right: 2rem;
}
#block02 .title2:after {
    margin-left: 2rem;
}
#block02 .time {
	width: 100%;
	margin: 0 auto;
	padding: 2% ;
}
#block02 .time span{
	width: 100%;
	margin: 0 auto;
	padding: 6px 20px;
	font-size: 16px;
	color: #FF6C00;
	max-width: 100px;
	border: 3px solid #FF6C00;
	border-radius: 50px;
}
#block02 .time span:nth-child(2){
	margin-left: 10px;
}
#block02 .block02-2{
	width: 100%;
	margin: 0 auto;
	padding: 5% 0 0;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	max-width: 1000px;
}
#block02 .block02-2 dt{
	width: 30%;
	padding-bottom: 50px;
  position: relative;
  display: inline-block;
}

#block02 .block02-2 dt::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -5px;
  width: 5px;
  height: 100%;
  margin: auto;
  background-color: #FF6C00;
  z-index: -1;
}
#block02 .block02-2 .last::after {
  height: 0;
}
#block02 .block02-2 dd{
	width: 65%;
	text-align: left;
}
#block02 .block02-2 dd p:nth-child(1){
	width: 100%;
	padding: 20px;
	font-size: 20px;
	line-height: 1.2;
	color: #FFF;
	background-color: #FF6C00;
	border-radius: 10px;
	position: relative;
}
#block02 .block02-2 dd p:nth-child(1):before {
  position: absolute;
  top: 7px;
  left: 7px;
  width: 100%;
  height: 100%;
  content: '';
  border: 3px solid #FF6C00;
  border-radius: 10px;
}
#block02 .block02-2 dd p:nth-child(2){
	padding: 15px 0 5% 10px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.6;
}
#block02 .block02-2 dd p:nth-child(2) span{
	font-size: 14px;
	letter-spacing: 0.1em;
	line-height: 1.4;
}
#block02 .chui{
	width: 100%;
	font-size: 12px;
	font-weight: 500;
}
.plice{
	width: 100%;
	margin: 0 auto;
	padding-top: 5%;
	max-width: 600px;
}
.plicetitle{
	width: 100%;
	margin: 0 auto;
	padding: 4% 0 6%;
	position: relative;
    max-width: 300px;
	color: #FF6C00;
	letter-spacing: 0.14em;
	font-weight: 600;
}
.plicetitle p:nth-child(1){
	width: 50px;
	padding-bottom: 20px;
	margin: 0 auto;
}
.plicetitle p:nth-child(2){
	width: 100%;
	margin: 0 auto;
	padding: 3% 0 ;
	font-size: 26px;
	max-width: 200px;
	border-left: solid 3px #FF6C00;
	border-right: solid 3px #FF6C00;
}
.plice table{
	width: 100%;
	margin: 0 auto;
	font-size: 22px;
	text-align: center;
	font-weight: 500;
	letter-spacing: 0.1em;
}

.plice table tr th{
	width: 30%;
    margin: 0 auto;
	text-align: center;
	padding: 15px 0 17px;
	font-weight: 500;
	color: #FFF;
	background-color: #FF6C00;
}
.plice table tr td{
	padding: 15px 0 17px;
	border-bottom: 2px solid #FF6C00;
}



/* ▼▼▼▼▼▼▼▼MaxWidth1024(tablet)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 1024px) {
 /* ************** */
#block02 .etc{
	margin: 5%  auto ;
}
 /* *************** */
}
/* ▼▼▼▼▼▼▼▼MaxWidth758(tablet)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 768px) {
 /* ************** */
#block02 .block02-1 {
	padding: 3% 1% 3% 3%;
}
#block02 .etc{
	margin: 5%  auto ;
}
#block02 .etc p,
#block02 .etc p:nth-of-type(even){
	width: 100%;
	margin:  0 auto;
	max-width: 400px;
}
#block02 .etc p:nth-of-type(even){
	padding-left: 20px;
}
#block02 .etc .etc-t{
	top:-30px;
	padding: 15px 5px;
	font-size: 18px;
	max-width: 410px;
	color: #FFF;
	border-radius: 10px;
}
	
#block02 .block02-2 dt::after {
  width: 3px;
}
#block02 .block02-2 dd p:nth-child(1){
	padding: 15px;
	font-size: 18px;
}
#block02 .block02-2 dd p:nth-child(2){
	font-size: 14px;
}
#block02 .block02-2 dd p:nth-child(2) span{
	font-size: 12px;
	letter-spacing: 0;
}
 /* *************** */
}
/* ▼▼▼▼▼▼▼▼MaxWidth550(mobile)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 550px) {
 /* ************** */
#block02 .block02-2 dd{
	width: 68%;
}
#block02 .block02-2 dd p:nth-child(2){
	padding: 15px 0 10% 10px;
	font-size: 13px;
	line-height: 1.4;
}
 /* *************** */
}
/* ▼▼▼▼▼▼▼▼MaxWidth480(mobile)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 480px) {
 /* ************** */
#block02 .title{
	padding: 15px;
	font-size: 26px;
}
#block02 .time {
	padding: 3% 2% 8%;
}
#block02 .time span{
	padding: 6px 20px;
	font-size: 14px;
	border: 2px solid #FF6C00;
}

#block02 .title2{
	font-size: 26px;
}
#block02 .title2:before,
#block02 .title2:after{
    margin-right: 1rem;
	margin-left: 1rem;
}

#block02 .etc p,
#block02 .etc p:nth-of-type(even){
	font-size: 12px;
	max-width: 310px;
}
#block02 .etc p:nth-of-type(even){
	padding-left: 15px;
}
#block02 .etc p:nth-of-type(odd){
	padding-left: 15px;
	background-size: 12px;
	background-position: left 0 top 8px;
}
#block02 .etc .etc-t{
	top:-20px;
	padding: 10px 5px;
	font-size: 14px;
	letter-spacing: 0.1em;
	max-width: 320px;
}

	
#block02 .block02-1 {
	padding: 5% 1% 8% 3%;
}
#block02 .block02-1  li{
	padding: 3px 10px 5px 25px;
	font-size: 14px;
	background-position: left 0 top 5px;
	background-size: 18px;
}

#block02 .block02-2 dd p:nth-child(2) span br{
	display: none;
}
#block02 .block02-2 dd p:nth-child(2) .sp{
	display: none;
}
.plice  .plicetitle p:nth-child(1){
	width: 40px;
	padding-bottom: 10px;
}
.plice  .plicetitle p:nth-child(2){
	font-size: 24px;
	padding: 3% 0 ;
	max-width: 180px;
}
.plice  table{
	font-size: 18px;
}
.plice  table tr th{
	padding: 15px 0 17px;
}
.plice  table tr td{
	padding: 15px 0 17px;
	border-bottom: 2px solid #FF6C00;
}
 /* *************** */
}
/* ************************************************************
block03 中級クラス
************************************************************ */
#block03{
	width: 100%;
	margin: 7% auto;
	padding-bottom: 7%;
	font-weight: 600;
	position: relative;
	z-index: -2;
	letter-spacing: 0.1em;
	background-size: auto auto;
    background-color: rgba(255, 255, 255, 1);
    background-image: repeating-linear-gradient(135deg, transparent, transparent 4px, rgba(255, 239, 242, 1) 4px, rgba(255, 239, 242, 1) 9px );
}
#block03 .title{
	width: 100%;
	margin: 0 auto;
	padding: 20px;
	font-size: 34px;
	font-weight: 700;
	color: #FFFFFF;
	background-color: #f44d69;
}
#block03 .block02-1 {
	width: 100%;
	margin: 0 auto;
	padding: 3% 2%;
	max-width: 770px;
}
#block03 .block02-1  li{
	width: 100%;
	margin: 0 auto;
	text-align: left;
	padding: 5px 10px 8px 25px;
	font-size: 16px;
	background-image:url("img/kaede01.png") ;
	background-repeat: no-repeat;
	background-position: left 0 top 8px;
	background-size: 20px;
	line-height: 1.5;
}

#block03 .etc{
	width: 98%;
	margin: 3%  auto ;
	padding: 7% 5% 5%;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	text-align: left;
	font-size: 16px;
	line-height: 1.5;
	border: solid 3px #f44d69;
	max-width: 1000px;
	border-radius: 30px;
	position: relative;
}
#block03 .etc p{
	width: 58%;
	padding-top:5px;
}
#block03 .etc p:nth-of-type(odd){
	padding-left: 20px;
	background-image: url("img/check.png");
	background-repeat: no-repeat;
	background-size: 15px;
	background-position: left 0 top 11px;
}
#block03 .etc p:nth-of-type(even){
	width: 40%;
	color: #f797a8;
}
#block03 .etc .etc-t{
	position: absolute;
	top:-30px;
	left: 0;
	right: 0;
	padding: 15px;
	font-size: 22px;
	text-align: center;
	margin: 0 auto;
	max-width: 600px;
	color: #FFF;
	background-color: #f44d69;
	border-radius: 10px;
	font-weight: 700;
}
#block03 .title2{
	width: 100%;
	margin: 0 auto;
	padding-top: 50px;
	padding-bottom: 30px;
	display: flex;
	align-items: center;
	font-size: 30px;
	font-weight: 700;
	color: #f44d69;
}
#block03 .title2:before,
#block03 .title2:after {
    content: "";
    height: 3px;
    flex-grow: 1;
    background-color: #f44d69;
}
#block03 .title2:before {
    margin-right: 2rem;
}
#block03 .title2:after {
    margin-left: 2rem;
}
#block03 .time {
	width: 100%;
	margin: 0 auto;
	padding: 2% ;
}
#block03 .time span{
	width: 100%;
	margin: 0 auto;
	padding: 6px 20px;
	font-size: 16px;
	color: #f44d69;
	max-width: 100px;
	border: 3px solid #f44d69;
	border-radius: 50px;
}
#block03 .time span:nth-child(2){
	margin-left: 10px;
}
#block03 .block02-2{
	width: 100%;
	margin: 0 auto;
	padding: 5% 2% 0;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	max-width: 1000px;
}
#block03 .block02-2 dt{
	width: 30%;
	padding-bottom: 50px;
  position: relative;
  display: inline-block;
}

#block03 .block02-2 dt::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -5px;
  width: 5px;
  height: 100%;
  margin: auto;
  background-color: #f44d69;
  z-index: -1;
}
#block03 .block02-2 .last::after {
  height: 0;
}
#block03 .block02-2 dd{
	width: 65%;
	text-align: left;
}
#block03 .block02-2 dd p:nth-child(1){
	width: 100%;
	padding: 20px;
	font-size: 20px;
	line-height: 1.2;
	color: #FFF;
	background-color: #f44d69;
	border-radius: 10px;
	position: relative;
}
#block03 .block02-2 dd p:nth-child(1):before {
  position: absolute;
  top: 7px;
  left: 7px;
  width: 100%;
  height: 100%;
  content: '';
  border: 3px solid #f44d69;
  border-radius: 10px;
}
#block03 .block02-2 dd p:nth-child(2){
	padding: 15px 0 5% 10px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.6;
}
#block03 .block02-2 dd p:nth-child(2) span{
	font-size: 14px;
	letter-spacing: 0.1em;
	line-height: 1.4;
}
#block03 .chui{
	width: 100%;
	font-size: 12px;
	font-weight: 500;
}
#block03 .plice{
	width: 100%;
	margin: 0 auto;
	padding: 5% 2% 0;
	max-width: 600px;
}
#block03 .plicetitle{
	width: 100%;
	margin: 0 auto;
	padding: 4% 0 6%;
	position: relative;
    max-width: 300px;
	color: #f44d69;
	letter-spacing: 0.14em;
	font-weight: 600;
}
#block03 .plicetitle p:nth-child(1){
	width: 50px;
	padding-bottom: 20px;
	margin: 0 auto;
}
#block03 .plicetitle p:nth-child(2){
	width: 100%;
	margin: 0 auto;
	padding: 3% 0 ;
	font-size: 26px;
	max-width: 200px;
	border-left: solid 3px #f44d69;
	border-right: solid 3px #f44d69;
}
#block03 .plice table{
	width: 100%;
	margin: 0 auto;
	font-size: 22px;
	text-align: center;
	font-weight: 500;
	letter-spacing: 0.1em;
}

#block03 .plice table tr th{
	width: 30%;
    margin: 0 auto;
	text-align: center;
	padding: 15px 0 17px;
	font-weight: 500;
	color: #FFF;
	background-color: #f44d69;
}
#block03 .plice table tr td{
	padding: 15px 0 17px;
	border-bottom: 2px solid #f44d69;
}



/* ▼▼▼▼▼▼▼▼MaxWidth1024(tablet)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 1024px) {
 /* ************** */
#block03 .etc{
	margin: 5%  auto ;
}
 /* *************** */
}
/* ▼▼▼▼▼▼▼▼MaxWidth758(tablet)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 768px) {
 /* ************** */
#block03{
	padding-bottom: 12%;
}
#block03 .block02-1 {
	padding: 3% 1% 3% 3%;
}
#block03 .etc{
	margin: 5%  auto ;
}
#block03 .etc p,
#block03 .etc p:nth-of-type(even){
	width: 100%;
	margin:  0 auto;
	max-width: 400px;
}
#block03 .etc p:nth-of-type(even){
	padding-left: 20px;
}
#block03 .etc .etc-t{
	top:-30px;
	padding: 15px 5px;
	font-size: 18px;
	max-width: 410px;
	color: #FFF;
	border-radius: 10px;
}
	
#block03 .block02-2 dt::after {
  width: 3px;
}
#block03 .block02-2 dd p:nth-child(1){
	padding: 15px;
	font-size: 18px;
}
#block03 .block02-2 dd p:nth-child(2){
	font-size: 14px;
}
#block03 .block02-2 dd p:nth-child(2) span{
	font-size: 12px;
	letter-spacing: 0;
}
 /* *************** */
}
/* ▼▼▼▼▼▼▼▼MaxWidth550(mobile)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 550px) {
 /* ************** */
#block03 .block02-2 dd{
	width: 68%;
}
#block03 .block02-2 dd p:nth-child(2){
	padding: 15px 0 10% 10px;
	font-size: 13px;
	line-height: 1.4;
}
 /* *************** */
}
/* ▼▼▼▼▼▼▼▼MaxWidth480(mobile)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 480px) {
 /* ************** */
#block03 .title{
	padding: 15px;
	font-size: 26px;
}
#block03 .time {
	padding: 3% 2% 8%;
}
#block03 .time span{
	padding: 6px 20px;
	font-size: 14px;
	border: 2px solid #f44d69;
}

#block03 .title2{
	font-size: 26px;
}
#block03 .title2:before,
#block03 .title2:after{
    margin-right: 1rem;
	margin-left: 1rem;
}

#block03 .etc p,
#block03 .etc p:nth-of-type(even){
	font-size: 12px;
	max-width: 310px;
}
#block03 .etc p:nth-of-type(even){
	padding-left: 15px;
}
#block03 .etc p:nth-of-type(odd){
	padding-left: 15px;
	background-size: 12px;
	background-position: left 0 top 8px;
}
#block03 .etc .etc-t{
	top:-20px;
	padding: 10px 5px;
	font-size: 14px;
	letter-spacing: 0.1em;
	max-width: 320px;
}

	
#block03 .block02-1 {
	padding: 5% 1% 8% 3%;
}
#block03 .block02-1  li{
	padding: 3px 10px 5px 25px;
	font-size: 14px;
	background-position: left 0 top 5px;
	background-size: 18px;
}

#block03 .block02-2 dd p:nth-child(2) span br{
	display: none;
}
#block03 .block02-2 dd p:nth-child(2) .sp{
	display: none;
}
#block03 .plice  .plicetitle p:nth-child(1){
	width: 40px;
	padding-bottom: 10px;
}
#block03 .plice  .plicetitle p:nth-child(2){
	font-size: 24px;
	padding: 3% 0 ;
	max-width: 180px;
}
#block03 .plice  table{
	font-size: 18px;
}
#block03 .plice  table tr th{
	padding: 15px 0 17px;
}
#block03 .plice  table tr td{
	padding: 15px 0 17px;
	border-bottom: 2px solid #f44d69;
}
 /* *************** */
}
/* ************************************************************
block04 上級クラス
************************************************************ */
#block04{
	width: 100%;
	margin: 0 auto;
	padding-bottom: 7%;
	font-weight: 600;
	position: relative;
	z-index: -2;
	letter-spacing: 0.1em;
}
#block04 .title{
	width: 100%;
	margin: 0 auto;
	padding: 20px;
	font-size: 34px;
	font-weight: 700;
	color: #FFFFFF;
	background-color: #01a3df;
}
#block04 .block02-1 {
	width: 100%;
	margin: 0 auto;
	padding: 3% 2%;
	max-width: 800px;
}
#block04 .block02-1  li{
	width: 100%;
	margin: 0 auto;
	text-align: left;
	padding: 5px 10px 8px 25px;
	font-size: 16px;
	background-image:url("img/kaede01.png") ;
	background-repeat: no-repeat;
	background-position: left 0 top 8px;
	background-size: 20px;
	line-height: 1.5;
}

#block04 .etc{
	width: 98%;
	margin: 3%  auto ;
	padding: 7% 5% 5%;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	text-align: left;
	font-size: 16px;
	line-height: 1.5;
	border: solid 3px #01a3df;
	max-width: 1000px;
	border-radius: 30px;
	position: relative;
}
#block04 .etc p{
	width: 58%;
	padding-top:5px;
}
#block04 .etc p:nth-of-type(odd){
	padding-left: 20px;
	background-image: url("img/check.png");
	background-repeat: no-repeat;
	background-size: 15px;
	background-position: left 0 top 11px;
}
#block04 .etc p:nth-of-type(even){
	width: 40%;
	color: #77c5e2;
}
#block04 .etc .etc-t{
	position: absolute;
	top:-30px;
	left: 0;
	right: 0;
	padding: 15px;
	font-size: 22px;
	text-align: center;
	margin: 0 auto;
	max-width: 600px;
	color: #FFF;
	background-color: #01a3df;
	border-radius: 10px;
	font-weight: 700;
}
#block04 .title2{
	width: 100%;
	margin: 0 auto;
	padding-top: 50px;
	padding-bottom: 30px;
	display: flex;
	align-items: center;
	font-size: 30px;
	font-weight: 700;
	color: #01a3df;
}
#block04 .title2:before,
#block04 .title2:after {
    content: "";
    height: 3px;
    flex-grow: 1;
    background-color: #01a3df;
}
#block04 .title2:before {
    margin-right: 2rem;
}
#block04 .title2:after {
    margin-left: 2rem;
}
#block04 .time {
	width: 100%;
	margin: 0 auto;
	padding: 2% ;
}
#block04 .time span{
	width: 100%;
	margin: 0 auto;
	padding: 6px 20px;
	font-size: 16px;
	color: #01a3df;
	max-width: 100px;
	border: 3px solid #01a3df;
	border-radius: 50px;
}
#block04 .time span:nth-child(2){
	margin-left: 10px;
}
#block04 .block02-2{
	width: 100%;
	margin: 0 auto;
	padding: 5% 2% 0;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	max-width: 1000px;
}
#block04 .block02-2 dt{
	width: 30%;
	padding-bottom: 50px;
  position: relative;
  display: inline-block;
}

#block04 .block02-2 dt::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -5px;
  width: 5px;
  height: 100%;
  margin: auto;
  background-color: #01a3df;
  z-index: -1;
}
#block04 .block02-2 .last::after {
  height: 0;
}
#block04 .block02-2 dd{
	width: 65%;
	text-align: left;
}
#block04 .block02-2 dd p:nth-child(1){
	width: 100%;
	padding: 20px;
	font-size: 20px;
	line-height: 1.2;
	color: #FFF;
	background-color: #01a3df;
	border-radius: 10px;
	position: relative;
}
#block04 .block02-2 dd p:nth-child(1):before {
  position: absolute;
  top: 7px;
  left: 7px;
  width: 100%;
  height: 100%;
  content: '';
  border: 3px solid #01a3df;
  border-radius: 10px;
}
#block04 .block02-2 dd p:nth-child(2){
	padding: 15px 0 5% 10px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.6;
}
#block04 .block02-2 dd p:nth-child(2) span{
	font-size: 14px;
	letter-spacing: 0.1em;
	line-height: 1.4;
}
#block04 .chui{
	width: 100%;
	font-size: 12px;
	font-weight: 500;
}
#block04 .plice{
	width: 100%;
	margin: 0 auto;
	padding: 5% 2% 0;
	max-width: 600px;
}
#block04 .plicetitle{
	width: 100%;
	margin: 0 auto;
	padding: 4% 0 6%;
	position: relative;
    max-width: 300px;
	color: #01a3df;
	letter-spacing: 0.14em;
	font-weight: 600;
}
#block04 .plicetitle p:nth-child(1){
	width: 50px;
	padding-bottom: 20px;
	margin: 0 auto;
}
#block04 .plicetitle p:nth-child(2){
	width: 100%;
	margin: 0 auto;
	padding: 3% 0 ;
	font-size: 26px;
	max-width: 200px;
	border-left: solid 3px #01a3df;
	border-right: solid 3px #01a3df;
}
#block04 .plice table{
	width: 100%;
	margin: 0 auto;
	font-size: 22px;
	text-align: center;
	font-weight: 500;
	letter-spacing: 0.1em;
}

#block04 .plice table tr th{
	width: 30%;
    margin: 0 auto;
	text-align: center;
	padding: 15px 0 17px;
	font-weight: 500;
	color: #FFF;
	background-color: #01a3df;
}
#block04 .plice table tr td{
	padding: 15px 0 17px;
	border-bottom: 2px solid #01a3df;
}



/* ▼▼▼▼▼▼▼▼MaxWidth1024(tablet)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 1024px) {
 /* ************** */
#block04 .etc{
	margin: 5%  auto ;
}
 /* *************** */
}
/* ▼▼▼▼▼▼▼▼MaxWidth758(tablet)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 768px) {
 /* ************** */
#block04{
	padding-bottom: 12%;
}
#block04 .block02-1 {
	padding: 3% 1% 3% 3%;
}
#block04 .etc{
	margin: 5%  auto ;
}
#block04 .etc p,
#block04 .etc p:nth-of-type(even){
	width: 100%;
	margin:  0 auto;
	max-width: 400px;
}
#block04 .etc p:nth-of-type(even){
	padding-left: 20px;
}
#block04 .etc .etc-t{
	top:-30px;
	padding: 15px 5px;
	font-size: 18px;
	max-width: 410px;
	color: #FFF;
	border-radius: 10px;
}
	
#block04 .block02-2 dt::after {
  width: 3px;
}
#block04 .block02-2 dd p:nth-child(1){
	padding: 15px;
	font-size: 18px;
}
#block04 .block02-2 dd p:nth-child(2){
	font-size: 14px;
}
#block04 .block02-2 dd p:nth-child(2) span{
	font-size: 12px;
	letter-spacing: 0;
}
 /* *************** */
}
/* ▼▼▼▼▼▼▼▼MaxWidth550(mobile)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 550px) {
 /* ************** */
#block04 .block02-2 dd{
	width: 68%;
}
#block04 .block02-2 dd p:nth-child(2){
	padding: 15px 0 10% 10px;
	font-size: 13px;
	line-height: 1.4;
}
 /* *************** */
}
/* ▼▼▼▼▼▼▼▼MaxWidth480(mobile)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 480px) {
 /* ************** */
#block04 .title{
	padding: 15px;
	font-size: 26px;
}
#block04 .time {
	padding: 3% 2% 8%;
}
#block04 .time span{
	padding: 6px 20px;
	font-size: 14px;
	border: 2px solid #01a3df;
}

#block04 .title2{
	font-size: 26px;
}
#block04 .title2:before,
#block04 .title2:after{
    margin-right: 1rem;
	margin-left: 1rem;
}

#block04 .etc p,
#block04 .etc p:nth-of-type(even){
	font-size: 12px;
	max-width: 310px;
}
#block04 .etc p:nth-of-type(even){
	padding-left: 15px;
}
#block04 .etc p:nth-of-type(odd){
	padding-left: 15px;
	background-size: 12px;
	background-position: left 0 top 8px;
}
#block04 .etc .etc-t{
	top:-20px;
	padding: 10px 5px;
	font-size: 14px;
	letter-spacing: 0.1em;
	max-width: 320px;
}

	
#block04 .block02-1 {
	padding: 5% 1% 8% 3%;
}
#block04 .block02-1  li{
	padding: 3px 10px 5px 25px;
	font-size: 14px;
	background-position: left 0 top 5px;
	background-size: 18px;
}

#block04 .block02-2 dd p:nth-child(2) span br{
	display: none;
}
#block04 .block02-2 dd p:nth-child(2) .sp{
	display: none;
}
#block04 .plice  .plicetitle p:nth-child(1){
	width: 40px;
	padding-bottom: 10px;
}
#block04 .plice  .plicetitle p:nth-child(2){
	font-size: 24px;
	padding: 3% 0 ;
	max-width: 180px;
}
#block04 .plice  table{
	font-size: 18px;
}
#block04 .plice  table tr th{
	padding: 15px 0 17px;
}
#block04 .plice  table tr td{
	padding: 15px 0 17px;
	border-bottom: 2px solid #01a3df;
}
 /* *************** */
}
/* ************************************************************
contactblock
************************************************************ */
#contactblock{
	width: 100%;
	margin: 0 auto;
	letter-spacing: 0.2em;
	font-weight: 600;
	position: relative;
	padding: 7% 2% 10px;
    overflow: hidden;
}
#contactblock .back{
	position: relative;
	padding-bottom: 4%;
    background-size: auto auto;
    background-color: rgba(255, 224, 197, 0.41);
    background-image: repeating-linear-gradient(135deg, transparent, transparent 5px, rgba(255, 224, 197, 1) 5px, rgba(255, 224, 197, 1) 10px );
    border-top-right-radius: 2000px 700px;
    border-top-left-radius:2000px 700px;
    margin-left: -200px;
    margin-right: -200px;
    padding-left: 200px;
    padding-right: 200px;
}
#contactblock .back .bob03{
	position: absolute;
	top: -100px;
	left: 0;
	right: 0 ;
	z-index: 0;
}
#contactblock .back .title{
    margin: 0 auto;
	width: 100%;
	padding-top: 100px;
	line-height: 0.8;
	font-size: 66px;
	font-weight: 900;
	letter-spacing: 0.1em;
	color: #FF6C00;
}
#contactblock .back .title span{
    margin: 0 auto ;
	width: 100%;
	font-size: 18px;
	letter-spacing: 0.2em;
	font-weight: 600;
	color: #383838;
}
#contactblock .back ul{
	width: 100%;
	margin: 0 auto;
	padding:3% 5%;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-around;
	max-width: 1400px;
}
#contactblock .back ul li{
	width: 40%;
}
#contactblock .back ul li p:nth-child(1) {
	padding: 14px 0;
	font-size: 24px;
	font-weight: 700;
	color: #FF6C00;
	background-color: #FFF;
	border: solid 3px #FF6C00;
}

#contactblock .back ul li:nth-child(1) p:nth-child(2){
	padding: 30px 0 20px;
	font-size: 36px;
	font-weight: 700;
	border-bottom: solid 2px #383838;
}
#contactblock .back ul li:nth-child(1) p:nth-child(3){
	padding-top: 10px;
	font-size: 18px;
	line-height: 1.4;
}
#contactblock .back ul li:nth-child(2) p:nth-child(2){
	padding-top: 20px;
}
#contactblock .back ul li:nth-child(2) p:nth-child(3){
	padding: 10px 0 7px;
}

 #contactblock .schoolmap{
	width: 100%;
	margin: 5% auto 0;
	padding:2% 2% 4%;
	position: relative;
	max-width: 1200px;
	background-color: #FFF;
	border-radius: 50px;
}
 #contactblock .schoolmap .map-title{
	position: absolute;
	top:-28px;
	right: 0;
	left: 0;
	margin: 0 auto;
	padding: 20px;
	font-size: 28px;
	color: #FF6C00;
	background-color: #FFF;
	border: solid #FF6C00 3px;
	border-radius: 50px;
	max-width: 300px;
}
#contactblock .schoolmap .map-flex{
	width: 100%;
	margin: 0 auto;
	padding: 3% 0;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-around;
}
#contactblock .schoolmap .map{
	width: 47%;
	max-width: 450px;
	padding: 0;
}
#contactblock .schoolmap .map li:nth-child(1){
	font-size: 26px;
	font-weight: 600;
	color: #FF6C00;
	padding: 5%;
}
#contactblock .schoolmap .map .map01{
	width: 100%;
	margin: 0 auto;
	padding: 5px 0 ;
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	background-color: #FF6C00;
}
#contactblock .schoolmap .map .map01 div{
	width: 18px;
}
#contactblock .schoolmap .map .map01 .map01-p{
	width: 300px;
	color: #FFF;
	letter-spacing: 0.1em;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.3;
	padding-top: 0;
}

#contactblock .schoolmap .map .map02{
	width: 100%;
	height: 270px;
}
/* ▼▼▼▼▼▼▼▼MaxWidth1400(pc)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 1400px) {
 /* ************** */
#contactblock .back .bob03{
	top: -70px;
}
#contactblock .back .bob03 img{
	width: 150px;
}
#contactblock .back ul li{
	width: 45%;
}
#contactblock .back ul li:nth-child(1) p:nth-child(3){
	font-size: 16px;
}
 /* *************** */
}
/* ▼▼▼▼▼▼▼▼MaxWidth1024(tablet)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 1024px) {
 /* ************** */
#contactblock .back{
    background-image: repeating-linear-gradient(135deg, transparent, transparent 3px, rgba(255, 224, 197, 1) 3px, rgba(255, 224, 197, 1) 6px );
    border-top-right-radius: 2000px 1000px;
    border-top-left-radius:2000px 1000px;
    margin-left: -200px;
    margin-right: -200px;
    padding-left: 200px;
    padding-right: 200px;
}
#contactblock .back .bob03{
	top: -40px;
}
#contactblock .back .bob03 img{
	width: 120px;
}
#contactblock .back ul li{
	width: 100%;
	max-width: 600px;
}
#contactblock .back ul li:nth-child(2){
	padding-top: 5%;
}
#contactblock .schoolmap .map .map01 div{
	width: 15px;
}
 /* *************** */
}
/* ▼▼▼▼▼▼▼▼MaxWidth758(tablet)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 768px) {
 /* ************** */
#contactblock .back .title{
	padding-top: 100px;
	font-size: 48px;
}
#contactblock .back .title span{
	font-size: 13px;
}
#contactblock .back ul{
	padding:5%;
}
#contactblock .back ul li{
	max-width: 500px;
}
#contactblock .back ul li p:nth-child(1){
	font-size: 20px;
}
 #contactblock .schoolmap{
	margin: 10% auto 0;
}
#contactblock .schoolmap .map{
	width: 93%;
	max-width: 700px;
}
#contactblock .schoolmap .map li:nth-child(1){
	font-size: 22px;
	padding: 20px 0 15px;
}
#contactblock .schoolmap .map .map01{
	padding: 5px 0 5px;
}

 /* *************** */
}
/* ▼▼▼▼▼▼▼▼MaxWidth550(mobile)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 550px) {
 /* ************** */
#contactblock{
	padding-top: 15%;
}
#contactblock .back{
    border-top-right-radius: 800px 800px;
    border-top-left-radius:800px 800px;
}
#contactblock .back .title span{
	letter-spacing: 0.1em;
}
#contactblock .back ul{
	padding:10% 5% 5%;
}
#contactblock .back ul li p:nth-child(1){
	padding: 10px 0;
	font-size: 18px;
	border: solid 2px #FF6C00;
}	
#contactblock .back ul li:nth-child(1) p:nth-child(2){
	padding: 20px 0 15px;
	font-size: 26px;
}
#contactblock .back ul li:nth-child(1) p:nth-child(3){
	font-size: 13px;
	letter-spacing: 0.1em;
}
#contactblock .back ul li:nth-child(2) p:nth-child(2),
#contactblock .back ul li:nth-child(2) p:nth-child(4){
	font-size: 14px;
}
 /* *************** */
}
/* ▼▼▼▼▼▼▼▼MaxWidth480(mobile)▼▼▼▼▼▼▼▼ */
@media screen and (max-width: 480px) {
 /* ************** */
 #contactblock .schoolmap .map-title{
	top:-28px;
	padding: 14px 0 15px;
	font-size: 22px;
	max-width: 250px;
}
 #contactblock .schoolmap{
	border-radius: 30px;
	 margin: 20% auto 0;
}
#contactblock .schoolmap .map li:nth-child(1){
	font-size: 20px;
	padding: 25px 0 15px;
}
#contactblock .schoolmap .map .map01 .map01-p{
	width: 250px;
	font-size: 13px;
}
#contactblock .schoolmap .map .map02{
	height: 220px;
}
 /* *************** */
}

