@charset "utf-8";

/**
 *
 *  ページ用CSS
 *　point
 * 
 */

/*--------------------------------------------------------------------------
   Overwright
---------------------------------------------------------------------------*/
.cont-nav{
  padding-bottom: 150px;  
}


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

/* intro
-----------------------------------------------------------------*/
.intro{
	padding: 180px 0 120px;
}
.intro .txt-lead{
	text-align: center;
	line-height: 2;
}


/* point-works
-----------------------------------------------------------------*/
.point-works{
	padding: 140px 0;
	background: var(--bgblue);
}
.point-works .txt-area{
	width: 49%;	
}
.point-works .txt-area h2{
	margin-bottom: 50px;
	font-size: 3.6rem;
	line-height: 1.6;
	letter-spacing: .1em;
}
.point-works .txt-area .btn-txt{
	margin-top: 70px;
}
.point-works .txt-area .btn-txt a{
	justify-content: flex-start;
}
.point-works .pic-area{
	max-width: 615px;
	width: 49%;
}
.point-works .pic-area p{
	position: relative;
	width: fit-content;	
}
.point-works .pic-area .pic{
	z-index: 5;
	max-width: 457px;
	width: 75%;
	margin-left: auto;
}
.point-works .pic-area .pic-sub{
	max-width: 316px;
	width: 52%;
	margin-top: -50px;	
}
.point-works .pic-area p .caption{
	display: block;
	margin-top: 10px;
	font-size: 1.4rem;
	line-height:1.2;
	letter-spacing: .1em;
	text-align: right;	
}


/* point-service
-----------------------------------------------------------------*/
.point-service{
	padding: 120px 0;
}
.point-service h2{
	margin-bottom: 50px;
	text-align: center;
}
.point-service h2 + .txt{
	margin-bottom: 80px;
	text-align: center;
}

/* qualification */
.point-service .qualification{
	margin-bottom: 120px;
}
.point-service h3{
	margin-bottom: 20px;
	font-size: 2.2rem;
	color: var(--bluebrand);
	letter-spacing: .1em;
}
.point-service h3 + .txt{
	margin-bottom: 40px;
}
.qualification-list{
	display: flex;
	justify-content: space-between;
}
.qualification-list > li{
	max-width: 400px;
	width: calc((100% - 20px)/3);
}
.qualification-list .thumb{
	margin-bottom: 20px;
}
.qualification-list h4{
	font-size: 2.2rem;
	letter-spacing: .1em;
}
.qualification-list > li > ul{
	margin-top: 15px;
}
.qualification-list > li:nth-child(3) .dot-list li > span{
	display: flex;
}
.qualification-list > li:nth-child(3) .dot-list li .ttl{
	flex-shrink: 0;
}
.point-service .training .layout-box{
	overflow: hidden;
	align-items: center;
}
.point-service .training .layout-box .pic{
	max-width: 600px;
	width: 46.875%;
}
.point-service .training .layout-box .txt-area{
	 width: 53.125%;
	 padding: 20px 4%;
	 text-align: justify;
}

.training-content{
	margin-top: 80px;
}
.training-content h4{
	margin-bottom: 20px;
	font-size: 2.2rem;
	line-height: 1.5;
	letter-spacing: .1em;
}
.training-content h4 + .txt{
	margin-bottom: 25px;
}
.training-content .pic-list{
	display: flex;
	justify-content: space-between;
	margin-bottom: 40px;
}
.training-content .pic-list li{
	max-width: 620px;
	width: calc(50% - 5px);
}
.training-content .pic-list .caption{
	display: block;
	margin-top: 5px;
	text-align: right;
	font-size: 1.4rem;
}
.training-content .other-training{
	padding: 40px 3.125%;
}
.training-content .other-training h5{
	margin-bottom: 10px;
	line-height: 1.5;
	letter-spacing: .1em;
}
.training-content .other-training .dot-list{
	display: flex;
	flex-wrap: wrap;
}
.training-content .other-training .dot-list li{
	margin-right: 40px;	
}
.training-content .training-summary-list{
	padding: 50px 4%;
}
.training-content .training-summary-list > div{
	display: flex;
	overflow: hidden;
	border-radius: 10px;
	background: var(--light);
}
.training-content .training-summary-list > div:nth-child(n+2){
	margin-top: 20px;
}
.training-content .training-summary-list dt{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 30%;
	padding: 15px;
	background: var(--bluebrand);
	color: var(--light);
  font-weight: 500;
}
.training-content .training-summary-list dd{
	width: 70%;
	padding: 35px 40px;
}
.training-content .figure{
	text-align: center;
}






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

  .cont-nav{
    padding-bottom: 60px;  
  }

/* intro
-----------------------------------------------------------------*/
	.intro{
		padding: 60px 0;
	}


/* point-works
-----------------------------------------------------------------*/
	.point-works{
		padding: 60px 0;
	}
	.point-works .layout-box{
		display: block;
	}
	.point-works .txt-area{
		width: 100%;
		margin-bottom: 30px;
	}
	.point-works .txt-area h2{
		margin-bottom: 20px;
		font-size: 2.2rem;
	}
	.point-works .txt-area .btn-txt{
		margin-top: 30px;
	}
	.point-works .pic-area{
		width: 100%;
		margin-inline: auto;
	}
	.point-works .pic-area .pic-sub{
		margin-top: -50px;	
	}
	.point-works .pic-area p .caption{
		margin-top: 5px;
		font-size: 1.1rem;
	}


/* point-service
-----------------------------------------------------------------*/
  .point-service{
    padding: 60px 0;
  }
  .point-service h2{
    margin-bottom: 25px;
  }
  .point-service h2 + .txt{
    margin-bottom: 40px;
  }

/* qualification */
  .point-service .qualification{
    margin-bottom: 60px;
  }
  .point-service h3{
    margin-bottom: 10px;
    font-size: 1.8rem;
  }
  .point-service h3 + .txt{
    margin-bottom: 20px;
  }
  .qualification-list{
    display: block;
    justify-content: space-between;
  }
  .qualification-list > li{
    width: auto;
    margin-inline: auto;
  }
  .qualification-list > li:nth-child(n+2){
    margin-top: 30px;  
  }
  .qualification-list .thumb{
    margin-bottom: 10px;
  }
  .qualification-list h4{
    font-size: 2rem;
  }
  .qualification-list h4 small{
    font-size: 1.6rem;  
  }
  .qualification-list > li > ul{
    margin-top: 10px;
  }
  .point-service .training .layout-box{
    display: block;
    max-width: 600px;
    margin-inline: auto;
  }
  .point-service .training .layout-box .pic{
    max-width: none;
    width: 100%;
  }
  .point-service .training .layout-box .txt-area{
     width: 100%;
     padding: 20px;
  }
  
  .training-content{
    margin-top: 40px;
  }
  .training-content h4{
    margin-bottom: 15px;
    font-size: 1.8rem;
  }
  .training-content h4 + .txt{
    margin-bottom: 25px;
  }
  .training-content .pic-list{
    display: block;
    margin-bottom: 40px;
  }
  .training-content .pic-list li{
    max-width: 600px;
    width: auto;
    margin-inline: auto;
  }
  .training-content .pic-list li:nth-child(n+2){
    margin-top: 20px; 
  }
  .training-content .pic-list .caption{
    font-size: 1.2rem;
  }
  .training-content .other-training{
    padding: 20px;
  }
  .training-content .other-training .dot-list{
    font-size: 1.2rem;
  }
  .training-content .other-training .dot-list li{
    margin-right: 20px;	
  }
  .training-content .training-summary-list{
    padding: 25px 15px;
  }
  .training-content .training-summary-list > div{
    display: block;
  }
  .training-content .training-summary-list > div:nth-child(n+2){
    margin-top: 15px;
  }
  .training-content .training-summary-list dt{
    display: block;
    width: auto;
    padding: 15px;
    text-align: center;
  }
  .training-content .training-summary-list dd{
    width: auto;
    padding: 20px;
  }


}