/*---------------------------------------------
  PROFILE/BIOGRAPHY
---------------------------------------------*/

#profile .main {
	max-width: 540px;
	width: 100%;
	margin: 0 auto;
}


/**** biography ****/

#profile .biography {
	transform: rotate(0.03deg);
}

#profile .biography dl {
	overflow:hidden;
	clear:both;
}



@media screen and (max-width: 767px) {
#profile .biography {
	margin-bottom:128px;
}

#profile .biography dt {
	margin-bottom:32px;
}

}

/**** profile ****/

#profile .profile li {
	margin-bottom:64px;
}

#profile .profile dl {
	overflow:hidden;
	clear:both;
}

@media screen and (max-width: 767px) {

#profile .profile dt {
	margin:0 auto 32px;
	max-width:450px;
}

#profile .profile dd .name {
	font-size:16px;
	margin-bottom:32px;
}

#profile .profile dd .name .font-accent {
	font-size:42px;
	display:block;
	line-height:1;
	margin-bottom:8px;
}

}


/*------------------
  TYPE-A
------------------*/

#profile.profile-a .main {
	margin-bottom:64px;
}

/**** biography ****/

#profile.profile-a .biography dl {
	position:relative;
}

@media screen and (min-width: 768px) {

#profile.profile-a .biography dt {
	position:absolute;
	top:50%;
	left:0;
	transform:translateY(-50%);
	width:48%;
}

#profile.profile-a .biography dd {
	width:48%;
	float:right;
}

}


/**** profile ****/

@media screen and (min-width: 768px) {
	
#profile.profile-a .profile dt {
	width:35%;
}

#profile.profile-a .profile dd {
	width:60%;
}

#profile.profile-a .profile li:nth-child(odd) dt, #profile.profile-a .profile li:nth-child(even) dd {
	float:left;
}

#profile.profile-a .profile li:nth-child(even) dt, #profile.profile-a .profile li:nth-child(odd) dd {
	float:right;
}

#profile.profile-a .profile dd .name {
	font-size:20px;
	margin-bottom:32px;
}

#profile.profile-a .profile dd .name .font-accent {
	font-size:56px;
	display:block;
	line-height:1;
	margin-bottom:16px;
}

#profile.profile-a .profile li:nth-child(odd) .name {
	text-align:right;
}

#profile.profile-a .profile li:nth-child(even) .name {
	text-align:left;
}

}


/*------------------
  TYPE-B
------------------*/

/**** biography ****/

#profile.profile-b .biography dt {
	width: 100%;
	margin: 32px 0 16px;
	font-size: 26px;
	border-bottom: 1px solid var(--default);
}


/**** profile ****/

@media screen and (min-width: 768px) {
	
#profile.profile-b .profile dt {
	width:35%;
	float: left;
}

#profile.profile-b .profile dd {
	width:60%;
	float: right;
}

#profile.profile-b .profile dd .name {
	font-size:20px;
	margin-bottom:32px;
}

#profile.profile-b .profile dd .name .font-accent {
	font-size:56px;
	display:block;
	line-height:1;
	margin-bottom:16px;
}

}


/*------------------
  TYPE-C
------------------*/

/**** biography ****/

#profile.profile-c .biography dt {
	width:50%;
	margin: 32px auto;
}


@media screen and (max-width: 767px) {

#profile.profile-c .biography dt {
	width:80%;
}

}

/**** profile ****/

@media screen and (min-width: 768px) {
	
#profile.profile-c .profile ul {
	overflow: hidden;
	clear: both;
}
	
#profile.profile-c .profile li {
	width: 47.5%;
	float: left;
}

#profile.profile-c .profile li:nth-child(2n+1) {
    margin-right: 5%;
}
	
#profile.profile-c .profile dt {
	width:45%;
	float: left;
}

#profile.profile-c .profile dd {
	width:50%;
	float: right;
}

#profile.profile-c .profile dd .name {
	font-size:20px;
	margin-bottom:16px;
}

#profile.profile-c .profile dd .name .font-accent {
	font-size:48px;
	display:block;
	line-height:1;
}

}

/**** biography link ****/

.biography-link {
	margin-top: 26px;
}

#profile .biography .biography-link dl {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

#profile .biography .biography-link dt {
	border-bottom: none;
	flex-basis: 45%;
	font-size: 14px;
	margin: 0;
}

#profile .biography .biography-link dd {
	flex-basis: 80%;
}

@media screen and (min-width: 768px) {

	#profile .biography .biography-link dl {
		flex-direction: row;
	}

	#profile .biography .biography-link dt {
		font-size: 16px;
	}
}

.container #agreement,
.container #payment div {
	transform: rotate(0.03deg);
}