/*.pankuzu*/

.pankuzu{
	margin-left: 20px;
	margin-bottom: 20px;
}
.pankuzu ul{
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

.pankuzu ul .txt{
	font-size: 1.4rem;
}

.pankuzu ul a.txt{
	position: relative;
	margin-right: 5px;
	color: #496162;
}

.pankuzu ul a.txt:after{
	content: '>';
	margin-left: 5px;
}

.topbanner{
	margin-bottom: 35px;
}

/*header.tophead*/
header.tophead{
	position: inherit;
	top: auto;
	left: auto;
	margin-bottom: 50px;
}

header.tophead h2{
	font-size: 24px;
	margin-bottom: 17px;
}

header.tophead .detailsbox .mintxt{
	font-size: 14px;
	color: #999999;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin-bottom: 17px;
}
header.tophead .detailsbox .mintxt .item{
	margin-right: 20px;
}

header.tophead .detailsbox .price{
	display: flex;
	justify-content: flex-start;
	align-items:flex-end;
	margin-bottom: 20px;
}

header.tophead .detailsbox .price dl{
	display: table;
	table-layout: fixed;
	padding-right: 20px;
}

header.tophead .detailsbox .price dl dt,
header.tophead .detailsbox .price dl dd{
	display: table-cell;
	vertical-align: middle;
}

header.tophead .detailsbox .price dl dt{
	font-size: 16px;
	padding-right: 8px;
}

header.tophead .detailsbox .price dl dd{
	font-size: 30px;
	color: #13B5BB;
}
header.tophead .detailsbox .price .tax{
	padding-bottom: 5px;
}

header.tophead .detailsbox .selectbox{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin-bottom: 27px;
}
header.tophead .detailsbox .selectbox .title{
	width: 150px;


	background: #BDB37D;
	border-radius: 15px;
	color: white;
	text-align: center;
	padding:0 12px 2px;
	box-sizing: border-box;
	margin-right: 11px;
}
header.tophead .detailsbox .selectbox ul{
	display: flex;
	justify-content: flex-start;
}
header.tophead .detailsbox .selectbox ul li{
	font-size: 1.4rem;
}

header.tophead .detailsbox .selectbox ul li:not(:last-child){
	margin-right: 12px;
}

header.tophead .detailsbox .buttonbox{
	display: table;
	table-layout: fixed;
}

header.tophead .detailsbox .buttonbox .box,
header.tophead .detailsbox .buttonbox .btn{
	display: table-cell;
	vertical-align: middle;
}
header.tophead .detailsbox .buttonbox .box{
	padding-right: 20px;
}
header.tophead .detailsbox .buttonbox .btn .txt{
	border: none;
	width: 160px;
	height: 40px;
	background: #13B5BB;
	font-size: 2rem;
	color: white;
	border-radius: 20px;
	transition: .5s;
	border: 1px solid  #13B5BB;
}
header.tophead .detailsbox .buttonbox .btn .txt:hover{
	background: white;
	color:  #13B5BB;
}
.coursebox{
	margin-bottom: 50px;
}
.coursebox header{
	position: inherit;
	top: auto;
	left: auto;
	text-align: center;
	background: white;
	position: relative;
	margin-bottom: 20px;
}

.coursebox header:after{
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 100%;
	height: 1px;
	background: #5A7071;
}
.coursebox header h3{
	background: white;
	position: relative;
	z-index: 2;
	display: inline-block;
	padding: 0 20px;
	font-size: 2.5rem;
}

.coursebox .box{
	border: 1px solid #5A7071;
	border-radius: 20px;
	padding: 30px;
	box-sizing: border-box;
}
.coursebox .lead{
	font-size: 1.6rem;
	line-height: 1.8;
	color: #708384;
}
.coursebox .box:not(:last-of-type){
	margin-bottom: 30px;
}
.coursebox .box:last-of-type{
	border: 1px solid #CC9C53;
}
.coursebox .box:last-of-type .lead,
.coursebox .box:last-of-type h3{
	color: #CC9C53;
}

.coursebox .box:last-of-type header:after{
	background: #CC9C53;
}


.beforeafterbox{
	margin-bottom: 60px;
}

.beforeafterbox .inbox{
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	margin-bottom: 50px;
}


.beforeafterbox h3{
	border: 1px solid #13B5BB;
	color:#13B5BB;
	width: 304px;
	text-align: center;
	color: #13B5BB;
	border-radius: 15px;
	margin-bottom: 14px;
}
.beforeafterbox .box:first-of-type{
	margin-right: 30px;
}

.beforeafterbox .text{
	font-size: 1.4rem;
	color: #5A7071;
	line-height: 1.8;
}

.minbox:not(:last-of-type){
	margin-bottom: 70px;
}

.minbox h3{
	font-size: 2rem;
	position: relative;
		color: #13B5BB;
		padding-bottom: 18px;
		margin-bottom: 44px;
}

.minbox h3:after{
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 80px;
	height: 4px;
	background: #13B5BB;

}

.minbox .lead{
	font-size: 1.6rem;
	line-height: 1.8;
}

.minbox .lead:not(:last-of-type){
	margin-bottom: 50px;
}

.minbox .cap{
	margin-top: 23px;
}

.minbox:last-of-type{
	margin-bottom: 70px;
}

.detals-about{
	padding-top: 10px;
}

.detals-about .topbox h3{
	background: #98C1E6;
	text-align: center;
	color: white;
	height: 40px;
	border-radius: 20px;
	line-height: 40px;
	font-size: 2rem;
	margin-bottom: 50px;
}

.detals-about .itembox{
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	margin-bottom: 50px;
}

.detals-about .itembox dd{
	width: 410px;
	font-size: 1.6rem;
	line-height: 1.8;
}

.detals-about .itembox dd .item{
	color: #ED1C24;
}

.detals-about .topbox ul{
	text-align: center;
	margin-bottom: 30px;
}
.detals-about .topbox ul li{
	font-size: 1.6rem;
}
.detals-about .topbox ul li:not(:last-child){
	margin-bottom: 20px;
}
.detals-about .topbox ul li:last-child{
	color: #ED1C24;
}
.detals-about .topbox{
	border-bottom: 1px solid #98C1E6;
	padding-bottom: 50px;
	margin-bottom: 70px;
}

.detals-about .btn{
	width: 400px;
	margin: auto;
	background: #13B5BB;
	border: 1px solid #13B5BB;
	color: white;
	text-align: center;
	height: 40px;
	line-height: 36px;
	border-radius: 20px;
	display: block;
	transition: .5s;
}

.detals-about .btn:hover{
	background: white;
	color: #13B5BB;
}


/* ------------------------------------------
 SP
------------------------------------------ */
@media screen and (max-width: 750px) {
	.contents{
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}
	header.tophead .detailsbox .selectbox ul,
	header.tophead .detailsbox .selectbox,
	.detals-about .itembox,
	.beforeafterbox .inbox{
		display: block;
	}
	.detals-about .btn{
		width: auto;
	}
	.detals-about .topbox ul{
		text-align: left;
	}
	.beforeafterbox .box .cap img,
	.detals-about .itembox dt img{
		width: 100%;
	}
	.detals-about .itembox dd{
		width: auto;
	}

	.pankuzu{
		margin: 0 0 15px;
	}
	.topbanner{
		margin-bottom: 25px;
	}
	header.tophead h2{
		font-size: 2.4rem;
		line-height: 1.4;
	}
	header.tophead .detailsbox .mintxt{
		font-size: 1.4rem;
		margin-bottom: 15px;
	}
	header.tophead .detailsbox .price dl dt{
		vertical-align: bottom;
	}
	header.tophead .detailsbox .selectbox .title{
		width: 265px;
		margin: 0;
		padding: 5px 12px;

	}
	header.tophead .detailsbox .buttonbox .btn .txt{
		width: 228px;
	}
	header.tophead .detailsbox .selectbox ul{
		padding-top: 15px;
	}
	.coursebox .box{
		padding: 10px;
		border-radius: 6px;
	}
	.coursebox header{
		margin-bottom: 10px;
	}
	.coursebox header h3{
		font-size: 1.6rem;
		padding: 0;
	}
	.coursebox header:after{
		content: none;
	}
	.coursebox .box:not(:last-of-type){
		margin-bottom: 15px;
	}
	.beforeafterbox .box:first-of-type{
		margin-right: 0;
		margin-bottom: 30px;
	}
	.beforeafterbox h3{
		width: auto;
	}

	.minbox:not(:last-of-type){
		margin-bottom: 35px;
	}
	.minbox h3{
		margin-bottom: 20px;
	}

	.detals-about .topbox h3{
		height: auto;
		line-height: 1.4;
		margin-bottom: 25px;
		padding: 12px 0;
		border-radius: 35px;
	}


}
