@charset "utf-8";

/**
 *
 *  ページ用CSS
 *　cdc
 * 
 */

/*--------------------------------------------------------------------------
   Overwright
---------------------------------------------------------------------------*/




/*--------------------------------------------------------------------------
   Content
---------------------------------------------------------------------------*/

/* page-nav-area
-----------------------------------------------------------------*/
.page-nav-area{
	padding: 90px 0 130px;
}
.page-nav{
	justify-content: space-between;
	max-width: 1070px;
  width: 100%;
	margin-inline: auto;
}
.page-nav li{
	max-width: 245px;
	width: calc((100% - 30px)/4);
}


/* sec
-----------------------------------------------------------------*/
.sec{
	padding: 160px 0;
}
.sec h2{
	margin-bottom: 60px;
}	
.sec .pic{
	max-width: 610px;
	width: 47%;
}
.sec .txt-area{
	width: 47%;
}
.sec .txt-area > h3{
	font-size:min(1.76vw,2.7rem);
}
.sec .txt-area > .txt{
	font-size:min(1.04vw,1.6rem);
	text-align: justify;
}
.sec .col-box{
	padding: 40px 6%;
	background: var(--beige);
	border-radius: 10px;
}


/* sec01 ---------------------------*/
.sec01{
	background: var(--beige);
}


/* sec02 ---------------------------*/
.sec02 .layout-box{
	flex-direction: row-reverse;
}
.sec02 h2{
	display: flex;
	justify-content: center;
	align-items: center;
}
.sec02 h2 small{
	font-size:min(2.28vw,3.5rem);
}
.sec02 h2 small.typewriter > span:nth-child(1){ transition-delay: 0.35s !important;}
.sec02 h2 small.typewriter > span:nth-child(2){ transition-delay: 0.4s !important;}
.sec02 h2 small.typewriter > span:nth-child(3){ transition-delay: 0.45s !important;}
.sec02 h2 small.typewriter > span:nth-child(4){ transition-delay: 0.5s !important;}
.sec02 h2 small.typewriter > span:nth-child(5){ transition-delay: 0.55s !important;}
.sec02 h2 small.typewriter > span:nth-child(6){ transition-delay: 0.6s !important;}
.sec02 h2 small.typewriter > span:nth-child(7){ transition-delay: 0.65s !important;}
.sec02 h2 small.typewriter > span:nth-child(8){ transition-delay: 0.7s !important;}
.sec02 .txt-area h3{
	margin: 70px 0 20px;
}
.sec02 .col-box{
	margin-top: 25px;
}
.sec02 .col-box h4{
	margin-bottom: 10px;
	color: var(--green);
	text-transform: uppercase;
	line-height: 1.5;
}



/* sec03 ---------------------------*/
.sec03{
	background: var(--beige);
}
.sec03 .lecture{
	margin: 25px 0 70px;
  padding: 30px 5% 35px;
  border-radius: 10px;
  background: var(--light);	
}
.sec03 .lecture h3{
  margin-bottom: 20px;
  padding: 5px;
  border-radius: 10px;
  background: var(--green);
  text-align: center;
  font-size:min(1.17vw,1.8rem); 	
}
.sec03 .lecture .dot-list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.sec03 .lecture .dot-list li{
	width: 49%;
  align-items: flex-start;
  font-size:min(0.91vw,1.4rem);
}
.sec03 .lecture .dot-list li:nth-child(n+2){
  margin-top: 5px;  
}
.sec03 .lecture .dot-list li::before{
  transform: translateY(5px) scale(.8);
  color: var(--green);
}
.sec03 .ico-pickup{
	width: fit-content;
	margin-bottom: 15px;
	padding: 8px 20px;
	border-radius: 100vmax;
	background: var(--green);
	line-height: 1; 
	font-size:min(1.17vw,1.8rem);
}
.sec03 h3{
	margin-bottom: 25px;
}


/* sec04 ---------------------------*/
.sec04 .layout-box{
	flex-direction: row-reverse;
}
.sec04 .txt-area h3{
	margin: 70px 0 20px;
}
.sec04 .col-box{
	margin-top: 25px;
}
.sec04 .col-box .ttl-dot{
	margin-bottom: 15px;
	font-size:min(1.5vw,2.3rem);
}
.sec04 .col-box .ttl-dot::before{
	line-height: 1.8vw;
	color: var(--green);
}
.sec04 .col-box ul{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.sec04 .col-box ul li{
	width: calc(50% - 3px);
  padding: 20px;
  border-radius: 10px;
  background: var(--light);
	text-align: center;
	line-height: 1;	
}
.sec04 .col-box ul li:nth-child(n+3){
	margin-top: 6px;
}
.sec04 .col-box ul .division{
	margin-bottom: 13px;
	font-size:min(0.91vw,1.4rem);
}
.sec04 .col-box ul .txt{
	margin-bottom: 10px;
	font-size:min(0.78vw,1.2rem);
}
.sec04 .col-box ul li:nth-child(4) .division{
	margin-bottom: 35px;
}
.sec04 .col-box ul .num{
	font-size:min(1.3vw,2rem);
}
.sec04 .col-box ul .num strong{
	font-weight: normal;
	font-size:min(3.26vw,5rem);
}
.sec04 .col-box ul li:nth-child(1) .division,
.sec04 .col-box ul li:nth-child(1) .num strong{
	color: var(--cat01);
}
.sec04 .col-box ul li:nth-child(2) .division,
.sec04 .col-box ul li:nth-child(2) .num strong{
	color: var(--cat02);
}
.sec04 .col-box ul li:nth-child(3) .division,
.sec04 .col-box ul li:nth-child(3) .num strong{
	color: var(--cat03);
}
.sec04 .col-box ul li:nth-child(4) .num strong{
	color: var(--green);
}


















/*--------------------------------------------------------------------------
   mobile
---------------------------------------------------------------------------*/
@media screen and (max-width: 768px) {

.page-ttl._type02 h1 .ja {
  line-height: 1.2;
}

/* page-nav-area
-----------------------------------------------------------------*/
  .page-nav-area{
    padding: 20px 0 80px;
  }
  .page-nav{
    flex-wrap: wrap;
  }
  .page-nav li{
    max-width: none;
    width: calc(50% - 10px);
  }
  .page-nav li:nth-child(n+3){
    margin-top: 20px; 
  }
	.page-nav li:nth-child(4) a span:nth-child(1){
		padding: .8em 0;
	}
	

/* sec
-----------------------------------------------------------------*/
	.sec{
		padding: 110px 0;
	}
	.sec h2{
		margin-bottom: 30px;
	}	
	.sec .layout-box{
		display: block;
	}
	.sec .pic{
		max-width: none;
		width: 100%;
		margin-top: 30px;
	}
	.sec .txt-area{
		width: 100%;
	}
	.sec .txt-area > h3{
		font-size: 2rem;
	}
	.sec .txt-area > .txt{
		font-size: 1.4rem;
	}
	.sec .col-box{
		padding: 30px 20px;
	}


/* sec02 ---------------------------*/
	.sec02 .layout-box{
		flex-direction: row-reverse;
	}
	.sec02 h2{
		display: block;
	}
	.sec02 h2 small{
		font-size: 2.4rem;
	}
	.sec02 h2 small.typewriter > span:nth-child(1){ transition-delay: 0.05s !important;}
	.sec02 h2 small.typewriter > span:nth-child(2){ transition-delay: 0.1s !important;}
	.sec02 h2 small.typewriter > span:nth-child(3){ transition-delay: 0.15s !important;}
	.sec02 h2 small.typewriter > span:nth-child(4){ transition-delay: 0.2s !important;}
	.sec02 h2 small.typewriter > span:nth-child(5){ transition-delay: 0.25s !important;}
	.sec02 h2 small.typewriter > span:nth-child(6){ transition-delay: 0.3s !important;}
	.sec02 h2 small.typewriter > span:nth-child(7){ transition-delay: 0.35s !important;}
	.sec02 h2 small.typewriter > span:nth-child(8){ transition-delay: 0.4s !important;}
	.sec02 .txt-area h3{
		margin: 50px 0 20px;
	}
	.sec02 .col-box h4{
		font-size: 1.4rem;
	}



/* sec03 ---------------------------*/
	.sec03 .lecture{
		margin: 20px 0 40px;
		padding: 30px 20px;
	}
	.sec03 .lecture h3{
		margin-bottom: 15px;
		padding: 10px 5px;
		font-size: 1.5rem; 	
	}
	.sec03 .lecture .dot-list{
		display: block;
	}
	.sec03 .lecture .dot-list li{
		align-items: center;
		width: 100%;
		font-size: 1.2rem;
	}
	.sec03 .lecture .dot-list li:nth-child(n+2){
		margin-top: 5px;  
	}
	.sec03 .lecture .dot-list li::before{
		transform: translateY(0) scale(.6);
	}
	.sec03 .ico-pickup{
		width: fit-content;
		margin-bottom: 15px;
		padding: 8px 20px;
		border-radius: 100vmax;
		background: var(--green);
		line-height: 1; 
		font-size: 1.6rem;
	}


/* sec04 ---------------------------*/
	.sec04 .txt-area h3{
		margin: 40px 0 20px;
	}
	.sec04 .col-box{
		margin-top: 40px;
	}
	.sec04 .col-box .ttl-dot{
		font-size: 1.8rem;
	}
	.sec04 .col-box .ttl-dot::before{
		margin-right: 8px;
		line-height: 2.5;
	}
	.sec04 .col-box ul{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.sec04 .col-box ul li{
		width: calc(50% - 2px);
		padding: 15px 5px;
	}
	.sec04 .col-box ul li:nth-child(n+3){
		margin-top: 4px;
	}
	.sec04 .col-box ul .division{
		margin-bottom: 10px;
		font-size: 1.1rem;
	}
	.sec04 .col-box ul .txt{
		margin-bottom: 8px;
		font-size: 1rem;
	}
	.sec04 .col-box ul li:nth-child(4) .division{
		margin-bottom: 28px;
	}
	.sec04 .col-box ul .num{
		font-size: 1.4rem;
	}
	.sec04 .col-box ul .num strong{
		font-size: 3.6rem;
	}

}