@charset "utf-8";


/* massage
----------------------------------------------- */

.massage {
}
.massage__outer {
	position: relative;
	z-index: 1;
}
.massage__inner {
	position: relative;
	padding: 136px 0 0;
	z-index: 2;
}
.massage__label {
	position: absolute;
	top: 136px;
	left: -140px;
	z-index: 1;
}

/* title */

.massage .title--h2 {
	margin: -12px 0 0;
}

/* textline */

.massage .textline {
	margin: -14px 0 0;
	padding: 36px 0 0;
}


/* profile
----------------------------------------------- */

.profile {
}
.profile__image {
	margin: 0;
	font-size: 0;
}
.profile__image img {
	width: 100%;
	height: auto;
}
.profile__post {
	margin: 20px 0 0;
	font-size: 15px;
}
.profile__name {
	margin: 13px 0 0;
	font-family: 'Noto Serif JP', serif;
	font-size: 30px;
	font-weight: 600;
}
.profile__kana {
	margin: 15px 0 0;
	font-family: 'Noto Serif JP', serif;
	font-size: 12px;
	font-weight: 600;
}


/* achievement
----------------------------------------------- */

.achievement {
	margin: -5px 0 0;
}
.achievement__outer {
	position: relative;
	z-index: 1;
}
.achievement__inner {
	position: relative;
	padding: 136px 0 0;
	z-index: 2;
}
.achievement__label {
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 1;
}
.achievement__columns {
	display: flex;
	justify-content: space-between;
}
.achievement__column:first-child {
	width: calc(100% - 314px);
}
.achievement__column:last-child {
	width: 250px;
}
.achievement__column > *:first-child {
	padding: 0 !important;
}
.achievement__list {
	margin: -17px 0 0;
	padding: 36px 0 0;
}
.achievement__list li {
	font-size: 15px;
	line-height: 35px;
}

/* title */

.achievement .title--h2 {
	margin: -12px 0 0;
}
.achievement .title--h4 {
	margin: -8px 0 0;
	padding: 56px 0 0;
}

/* chronology */

.achievement .chronology {
	margin: 19px 0 0;
}


/* chronology
----------------------------------------------- */

.chronology {
	display: flex;
	flex-wrap: wrap;
}
.chronology dt,
.chronology dd {
	font-size: 15px;
	line-height: 35px;
}
.chronology dt {
	width: 100px;
	font-weight: 700;
	/*text-align: justify;*/
}
.chronology dd {
	width: calc(100% - 100px);
}
.chronology ul {
}
.chronology li {
	padding: 0 0 0 15px;
	font-size: 15px;
	text-align: justify;
	text-indent: -15px;
	line-height: 35px;
}


/* papers
----------------------------------------------- */

.papers {
	margin: 58px 0 0 300px;
	border-top: 2px solid #d2c7be;
	border-bottom: 2px solid #d2c7be;
}
.papers__item {
	padding: 0 60px;
	background-color: #fffbf6;
}
.papers__list {
	counter-reset: number 0;
}
.papers__list li:before {
	display: inline-block;
	width: 36px;
	counter-increment: number;
	content: counter(number)".";
	flex-shrink: 0;
}
.papers__list li {
	margin: 5px 0 0;
	display: flex;
	align-items: baseline;
	font-size: 15px;
	line-height: 25px;
}
.papers__list--last {
	padding-bottom: 40px;
}

/* title */

.papers > .title--h4 {
	position: relative;
	display: flex;
	align-items: center;
	height: 134px;
	cursor: pointer;
}
.papers > .title--h4:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	margin: -15px 0 0;
	width: 30px;
	height: 30px;
	background-image: url(../img/common/anchor_plus.svg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 15px;
	background-color: #594d3b;
	z-index: 1;
}
.papers > .title--h4.js-accordion-open:after {
	background-image: url(../img/common/anchor_minus.svg);
}
.papers__item .title--h4 {
	padding: 50px 0 16px;
}


/* bannerarea
----------------------------------------------- */

.bannerarea {
	margin: 55px 0 0 300px;
}


/* pc
----------------------------------------------- */

@media print, screen and (min-width:1000px) {


	/* papers
	----------------------------------------------- */

	.papers > .title--h4 {
		transition-property: opacity;
		transition-duration: 0.25s;
	}

	/* hover */

	.papers > .title--h4:hover {
		opacity: 0.6;
	}


	/* bannerarea
	----------------------------------------------- */
	
	.bannerarea a {
		transition-property: opacity;
		transition-duration: 0.25s;
	}

	/* hover */

	.bannerarea a:hover {
		opacity: .6;
	}


	/* retina
	----------------------------------------------- */
	
	@media only screen and (-webkit-min-device-pixel-ratio: 2) { 
	}


}


/* mobile
----------------------------------------------- */

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


	/* massage
	----------------------------------------------- */
	
	.massage__inner {
		padding: 72px 0 0;
	}
	.massage__label {
		top: 69px;
		left: -57px;
	}
	.massage__label img {
		width: 43px;
		height: auto;
	}

	/* title */
	
	.massage .title--h2 {
		margin: -10px 0 0;
		padding: 48px 0 0;
	}
	
	/* textline */
	
	.massage .textline {
		margin: -16px 0 0;
		padding: 28px 0 0;
	}


	/* profile
	----------------------------------------------- */

	.profile {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin: 0 -20px 0 0;
		padding: 0;
	}
	.profile__image {
		width: 129px;
	}
	.profile__main {
		width: calc(100% - 157px);
	}
	.profile__post {
		margin: 0;
		font-size: 15px;
		line-height: 23px;
	}
	.profile__name {
		margin: 8px 0 0;
		font-size: 25px;
	}
	.profile__kana {
		margin: 14px 0 0;
		font-size: 12px;
	}


	/* achievement
	----------------------------------------------- */

	.achievement {
		margin: 0;
	}
	.achievement__inner {
		padding: 0;
	}
	.achievement__label {
		display: none;
	}
	.achievement__columns {
		display: block;
		margin: 41px 0 0;
		/*border-bottom: 1px solid #d2c7be;*/
	}
	.achievement__column:first-child,
	.achievement__column:last-child {
		width: auto;
	}
	.achievement__list {
		margin: 0;
		padding: 0;
	}
	.achievement__list li:last-child {
		padding: 0 0 20px;
	}

	/* title */

	.achievement .title--h2 {
		margin: 55px 0 0
	}
	.achievement .title--h4 {
		display: flex;
		align-items: center;
		position: relative;
		margin: 0;
		padding: 0;
		height: 78px;
		font-size: 24px;
		font-weight: 600;
		border-top: 1px solid #d2c7be;
		cursor: pointer;
	}
	.achievement .title--h4:after {
		display: block;
		content: "";
		position: absolute;
		top: 50%;
		right: 0;
		margin: -9px 0 0;
		width: 18px;
		height: 18px;
		background-image: url(../img/common/anchor_plus.svg);
		background-position: center center;
		background-repeat: no-repeat;
		background-size: 9px;
		background-color: #594d3b;
		z-index: 1;
	}
	.achievement .title--h4.js-accordion-open:after {
		background-image: url(../img/common/anchor_minus.svg);
	}

	/* chronology */

	.achievement .chronology {
		margin: 0;
	}
	.achievement .chronology dt:first-child {
		margin: -10px 0 0;
	}
	.achievement .chronology dd:nth-child(2) {
		margin: -10px 0 0;
	}
	.achievement .chronology dd:last-child {
		padding: 0 0 20px;
	}


	/* chronology
	----------------------------------------------- */

	.chronology dt {
		width: 100px;
	}
	.chronology dd {
		width: calc(100% - 100px);
	}


	/* papers
	----------------------------------------------- */
	
	.papers {
		margin: 0;
		border-top: none;
		border-bottom-width: 1px;
	}
	.papers__item {
		margin: 0 -45px;
		padding: 0 45px;
	}
	.papers__list li:before {
		width: 25px;
	}
	.papers__list li {
		line-height: 30px;
	}

	/* title */
	
	.papers > .title--h4 {
		height: 78px;
		font-size: 24px;
	}
	.papers > .title--h4:after {
		margin: -9px 0 0;
		width: 18px;
		height: 18px;
		background-size: 9px;
	}
	.papers__item .title--h4 {
		padding: 30px 0 13px;
		font-size: 18px;
		line-height: 29px;
	}


	/* bannerarea
	----------------------------------------------- */
	
	.bannerarea {
		margin: 38px 0 0;
	}
	.bannerarea img {
		width: 100%;
		height: auto;
	}


}

