@charset "utf-8";



.kv-detail__heading {
	font-size: 4.8rem;
}
.main {
	background-color: #fcfbf9;
}
@media screen and (max-width: 768px){
	.kv-detail__heading {
		font-size: 2.8rem;
	}
}




/*  l-intro
--------------------------------------------------*/
.l-intro {
	padding-block: 10.5rem 10.0rem;
}
.intro-heading {
	font-size: 2.8rem;
	line-height: 1.6;
	letter-spacing: .1em;
	color: #4b3d1b;
	text-align: center;
	margin-bottom: 2.0rem;
}
.intro-desc {
	font-size: 1.8rem;
	line-height: 2.5;
	letter-spacing: .1em;
	color: #4b3d1b;
	text-align: center;
}
@media screen and (max-width: 768px){
	.l-intro {
		padding-block: 5.0rem 5.0rem;
	}
	.intro-heading {
		font-size: 2.0rem;
  	margin-bottom: 1.5rem;
	}
	.intro-desc {
		font-size: 1.4rem;
	}
}




/*  sec
--------------------------------------------------*/
.sec {
	position: relative;
	padding-bottom: 12.0rem;
}
.sec-head__heading {
	width: 100%;
	margin-bottom: 4.0rem;
	padding-block: 1.1rem;
	padding-inline: 2.0rem 1.0rem;
	gap: 1.0rem 2.0rem;
}
.sec-head__heading__ttl {
	font-size: 2.4rem;
	line-height: 1.75;
	letter-spacing: .1em;
	font-weight: 500;
	color: var(--white);
	translate: 0 -.05em;
}
.sec-head__heading__desc {
	width: fit-content;
	font-size: 1.8rem;
	line-height: 1.42857143;
	letter-spacing: .05em;
	padding: .7rem 2.0rem .7rem;
	background-color: var(--white);
}
.sec-head__photo {
	width: calc(560 / 1200 * 100%);
}
.sec-head__detail {
	width: calc(580 / 1200 * 100%);
}
.sec-head__detail__desc {
	position: relative;
	width: 100%;
	margin-top: -.5em;
}
.sec-head__detail__desc__txt {
	font-size: 1.6rem;
	line-height: 2;
	letter-spacing: .05em;
	text-align: justify;
}
.sec-head__detail__desc__txt + .sec-head__detail__desc__txt {
	margin-top: 3.2rem;
}
.sec-head__detail__photo {
	width: 100%;
	margin-top: 5.3rem;
}
.sec-head__detail__photo__item {
	width: calc(280 / 580 * 100%);
}
.sec-head__detail__photo__item .f-caption.ob {
	color: #4b3d1b;
	line-height: 1.36363636;
}
@media screen and (max-width: 768px){
	.sec {
		padding-bottom: 5.0rem;
	}
	.sec-head__heading {
		margin-bottom: 2.0rem;
		padding-block: 0.8rem 1.1rem;
		padding-inline: 1.0rem;
		gap: .5rem 0;
		text-align: center;
	}
	.sec-head__heading__ttl {
		width: 100%;
		font-size: 1.6rem;
		translate: 0 0;
	}
	.sec-head__heading__desc {
		width: 100%;
		font-size: 1.4rem;
		padding: .7rem 2.0rem .7rem;
	}
	.sec-head__photo {
		width: 100%;
	}
	.sec-head__detail {
		width: 100%;
	}
	.sec-head__detail__desc {
		margin-top: 3.0rem;
	}
	.sec-head__detail__desc__txt {
		font-size: 1.4rem;
	}
	.sec-head__detail__desc__txt + .sec-head__detail__desc__txt {
		margin-top: 2.5rem;
	}
	.sec-head__detail__photo {
		width: 100%;
		margin-top: 2.5rem;
	}
}




/*  l-education
--------------------------------------------------*/
.l-education .sec-head__heading {
	background-color: #d1c379;
}
.l-education .sec-head__heading__desc {
	color: #b29b20;
}




/*  l-school
--------------------------------------------------*/
.l-school .sec-head__heading {
	background-color: #e8a56d;
}
.l-school .sec-head__heading__desc {
	color: #d9690b;
}
.school-contents {
	margin-top: 8.0rem;
	padding-block: 5.5rem;
}
.school-contents__wrap {
	width: calc(1080 / 1200 * 100%);
	margin-inline: auto;
}
.school-contents__heading {
	font-size: 1.6rem;
	line-height: 1.71428571;
	letter-spacing: .05em;
	color: #6b6b6b;
	margin-bottom: 2.0rem;
}
.school-contents__heading span {
	display: block;
	font-size: 2.8rem;
	line-height: 1.77777778;
	letter-spacing: .05em;
	margin-top: .5rem;
}
.school-contents__box {
	width: 100%;
	grid-template-columns: calc(800 / 1080 * 100%) calc(240 / 1080 * 100%);
    grid-template-rows: auto;
    justify-content: space-between;
}
.school-contents__box__person {
	width: 100%;
	margin-bottom: 5.5rem;
	order: 1;
}
.school-contents__box__detail {
	width: 100%;
    grid-row: span 3;
    grid-column: 1;
	order: 0;
}
.school-contents__box__detail__item {
	width: 100%;
}
.school-contents__box__detail__item + .school-contents__box__detail__item {
	margin-top: 2.8rem;
}
.school-contents__box__detail__item__heading {
	font-size: 2.0rem;
	line-height: 1.75;
	letter-spacing: .05em;
	color: #6b6b6b;
	padding-bottom: 1.2rem;
    margin-bottom: 1.2rem;
	border-bottom: solid 1px #a59e8d;
}
.school-contents__box__detail__item__desc {
	font-size: 1.6rem;
	line-height: 2;
	letter-spacing: .05em;
	color: #6b6b6b;
	text-align: justify;
}
.school-contents__box__photo {
	width: 100%;
	order: 2;
}
.school-contents__box__photo__item + .school-contents__box__photo__item {
	margin-top: 4.0rem;
}
@media screen and (max-width: 768px){
	.school-contents {
		margin-top: 5.0rem;
		padding-block: 3.5rem 4.0rem;
	}
	.school-contents__wrap {
		width: calc(280 / 320 * 100%);
	}
	.school-contents__heading {
		font-size: 1.4rem;
		text-align: center;
	}
	.school-contents__heading span {
		font-size: 1.8rem;
    	margin-top: .7rem;
	}
	.school-contents__box {
		width: 100%;
		grid-template-columns: 100%;
	}
	.school-contents__box__person {
		margin-bottom: 2.5rem;
		order: 0;
	}
	.school-contents__box__detail {
	    grid-row: span 1;
	    margin-bottom: 2.5rem;
		order: 1;
	}
	.school-contents__box__detail__item + .school-contents__box__detail__item {
		margin-top: 2.3rem;
	}
	.school-contents__box__detail__item__heading {
		font-size: 1.6rem;
		padding-bottom: .9rem;
	    margin-bottom: .9rem;
	}
	.school-contents__box__detail__item__desc {
		font-size: 1.4rem;
	}
	.school-contents__box__photo__item + .school-contents__box__photo__item {
		margin-top: 1.0rem;
	}
}





/*  l-education
--------------------------------------------------*/
.l-exercise .sec-head__heading {
	background-color: #a0ca8d;
}
.l-exercise .sec-head__heading__desc {
	color: #61a641;
}




/*  l-life
--------------------------------------------------*/
.l-life .sec-head__heading {
	background-color: #7bb7ce;
}
.l-life .sec-head__heading__desc {
	color: #2388ad;
}
.life-contents {
	margin-top: 8.0rem;
	padding-block: 2.5rem 6.0rem;
}
.life-contents__wrap {
	width: calc(1080 / 1200 * 100%);
	margin-inline: auto;
	grid-template-columns: calc(570 / 1080 * 100%) calc(490 / 1080 * 100%);
    grid-template-rows: auto;
    justify-content: space-between;
}
.life-contents__heading {
	margin-bottom: 2.0rem;
	order: 1;
}
.life-contents__heading img {
	max-width: none;
	width: calc(520 / 490 * 100%);
}
.life-contents__photo {
	grid-row: span 3;
	order: 0;
}
.life-contents__photo .f-caption {
	margin-right: calc(20 / 570 * 100%);
}
.life-contents__detail {
	order: 2;
}
.life-contents__detail__heading {
	font-size: 2.4rem;
	line-height: 1.75;
	letter-spacing: .05em;
	color: #333333;
	margin-bottom: 1.5rem;
}
.life-contents__detail__heading span {
	position: relative;
}
.life-contents__detail__heading i {
	position: absolute;
	width: fit-content;
	inset: auto 0 0;
	margin-inline: auto;
	translate: 0 100%;
	font-size: calc(14 / 24 * 1.0em);
	line-height: 1;
	letter-spacing: .05em;
}
.life-contents__detail__heading small {
	font-size: calc(20 / 24 * 1.0em);
}
.life-contents__detail__desc {
	font-size: 1.6rem;
	line-height: 2;
	letter-spacing: .05em;
	color: #333333;
}
@media screen and (max-width: 768px){
	.life-contents {
		margin-top: 5.0rem;
		padding-block: 1.5rem 3.0rem;
	}
	.life-contents__wrap {
		width: calc(280 / 320 * 100%);
		grid-template-columns: 100%;
	}
	.life-contents__heading {
		margin-bottom: 0;
		order: 0;
	}
	.life-contents__heading img {
		width: calc(300 / 280 * 100%);
    	margin-left: calc(-10 / 280 * 100%);
	}
	.life-contents__photo {
		grid-row: span 1;
		margin-bottom: 1.5rem;
		order: 1;
	}.life-contents__photo img {
		max-width: none;
		width: calc(290 / 280 * 100%);
	}
	.life-contents__detail__heading {
		font-size: 1.4rem;
		line-height: 2;
		margin-bottom: 1.0rem;
	}
	.life-contents__detail__desc {
		font-size: 1.2rem;
	}
}



/*  l-education
--------------------------------------------------*/
.l-family .sec-head__heading {
	background-color: #d19cb1;
}
.l-family .sec-head__heading__desc {
	color: #b25a7d;
}