/* ==========================================================================
	root
========================================================================== */
:root {
	--base-pc-width:1680;
	--base-sp-width:375;
	--vwPC: calc(100vw / 1680);
	--vwSP: calc(100vw / 375);
	--easeInQuad:cubic-bezier(.55, .085, .68, .53);
	--easeOutQuad:cubic-bezier(0.23, 1, 0.32, 1);
	--easeOutQuint:cubic-bezier(.25, .46, .45, .94);
	--easeOutSine:cubic-bezier(0.39, 0.575, 0.565, 1);
	--easeOutCubic:cubic-bezier(0.215, 0.61, 0.355, 1);
	--easeInOutQuad:cubic-bezier(0.45, 0, 0.55, 1);
	--easeInOutCubic:cubic-bezier(0.65, 0, 0.35, 1);
	--easePopUp:cubic-bezier(0.17, 0.88, 0.30, 1.28);
	--easeInCirc:cubic-bezier(0.55, 0, 1, 0.45);
	--theme-color:#004161;
	--theme-color02:rgba(0, 65, 97, 0.2);
	--base-text-color:#000;
	--base-bg-color:#EEE5DD;
	--base-bg-color02:#363636;
	--base-bg-color03:rgba(0, 65, 97, 0.15);
	--base-bg-color04:rgba(255, 255, 255, 0.15);
	--base-bg-color05:rgba(0, 0, 0, 0.1);
	--base-bg-color06:#363636;
	--base-bg-color07:rgba(255, 255, 255, 0.5);
	--base-bg-color08:rgba(0, 0, 0, 0.07);
	--base-bg-color09:rgba(255, 255, 255, 0.8);
	--base-bg-color10:rgba(255, 255, 255, 0.75);
	--base-bg-color-end:rgba(0, 65, 97, 0.15);
	--base-border-color:#000;
	--base-border-color02:rgba(0, 0, 0, 0.15);
	--base-border-color03:rgba(255, 255, 255, 0.3);
	--base-border-color04:rgba(255, 255, 255, 0.2);
	--base-border-color05:rgba(0, 0, 0, 0.3);
	--base-border-color06:rgba(0, 0, 0, 0.1);
	--base-border-color07:rgba(255, 255, 255, 0.25);
	--base-color-gray:#666666;
	--base-color-gray02:#E7E7E7;
	--base-color-gray03:#F1EFED;
	--base-color-black:#000;
	--base-color-black02:rgba(0, 0, 0, 0.1);
	--base-color-black03:rgba(0, 0, 0, 0.5);
	--base-color-black04:rgba(0, 0, 0, 0.05);
	--base-color-black05:rgba(0, 0, 0, 0.08);
	--base-color-black06:rgba(0, 0, 0, 0.07);
	--base-color-red:#E51D1D;
	--base-color-red02:#C34545;
	--hanten:scale(-1, -1);
	--hantenX:scale(-1, 1);
	--hantenY:scaleY(-1);
	--transition-scale:transform 0.8s var(--easeOutCubic);
}

@media screen and (min-width: 801px) {
	:root {
		--vwPC: calc(100vw / 1680);
		--fz11: max(1.1rem, 10px);
		--fz12: max(1.2rem, 11px);
		--fz13: max(1.3rem, 12px);
		--fz14: max(1.4rem, 12px);
		--fz15: max(1.5rem, 13px);
		--fz16: max(1.6rem, 14px);
		--fz17: max(1.7rem, 15px);
		--fz18: max(1.8rem, 16px);
		--fz19: max(1.9rem, 17px);
		--fz20: max(2.0rem, 18px);
		--fz21: max(2.1rem, 18px);
		--fz22: max(2.2rem, 18px);
		--fz23: max(2.3rem, 20px);
		--fz24: max(2.4rem, 20px);
		--fz25: max(2.5rem, 21px);
		--fz26: max(2.6rem, 22px);
		--fz27: max(2.7rem, 23px);
		--fz28: max(2.8rem, 24px);
		--fz30: max(3rem, 26px);
		--fz32: max(3.2rem, 28px);
		--fz34: max(3.4rem, 30px);
		--fz36: max(3.6rem, 32px);
		--fz40: max(4rem, 36px);
		--fz42: max(4rem, 38px);
		--fz44: max(4.4rem, 40px);
		--fz46: max(4.6rem, 42px);
		--fz48: max(4.8rem, 44px);
		--fz50: max(5rem, 48px);
		--fz52: max(5.2rem, 48px);
		--fz56: max(5.6rem, 52px);
		--fz64: max(6.4rem, 60px);
		--fz72: max(7.2rem, 68px);
		--fz96: max(9.6rem, 90px);
	}
}
@media screen and (max-width: 800px) {
	:root {
		--vwSP: calc(100vw / 375);
		--fz10: clamp(10px, calc(10 * var(--vwSP)), 12px);
		--fz11: clamp(11px, calc(11 * var(--vwSP)), 13px);
		--fz12: clamp(12px, calc(12 * var(--vwSP)), 14px);
		--fz13: clamp(13px, calc(13 * var(--vwSP)), 14px);
		--fz14: clamp(14px, calc(14 * var(--vwSP)), 16px);
		--fz15: clamp(15px, calc(15 * var(--vwSP)), 17px);
		--fz16: clamp(16px, calc(16 * var(--vwSP)), 18px);
		--fz17: clamp(17px, calc(17 * var(--vwSP)), 19px);
		--fz18: clamp(18px, calc(18 * var(--vwSP)), 20px);
		--fz19: clamp(19px, calc(19 * var(--vwSP)), 21px);
		--fz20: clamp(20px, calc(20 * var(--vwSP)), 22px);
		--fz21: clamp(21px, calc(21 * var(--vwSP)), 23px);
		--fz22: clamp(22px, calc(22 * var(--vwSP)), 24px);
		--fz24: clamp(24px, calc(24 * var(--vwSP)), 26px);
		--fz25: clamp(25px, calc(25 * var(--vwSP)), 27px);
		--fz26: clamp(26px, calc(26 * var(--vwSP)), 28px);
		--fz27: clamp(27px, calc(27 * var(--vwSP)), 29px);
		--fz28: clamp(28px, calc(28 * var(--vwSP)), 30px);
		--fz30: clamp(30px, calc(30 * var(--vwSP)), 32px);
		--fz32: clamp(32px, calc(23 * var(--vwSP)), 35px);
		--fz34: clamp(34px, calc(34 * var(--vwSP)), 37px);
		--fz35: clamp(35px, calc(25 * var(--vwSP)), 39px);
		--fz36: clamp(36px, calc(36 * var(--vwSP)), 40px);
		--fz38: clamp(38px, calc(38 * var(--vwSP)), 42px);
		--fz40: clamp(40px, calc(40 * var(--vwSP)), 44px);
		--fz44: clamp(44px, calc(44 * var(--vwSP)), 48px);
		--fz45: clamp(45px, calc(45 * var(--vwSP)), 49px);
		--fz48: clamp(48px, calc(48 * var(--vwSP)), 52px);
		--fz56: clamp(56px, calc(56 * var(--vwSP)), 60px);
		--fz64: clamp(64px, calc(64 * var(--vwSP)), 68px);
	}
}
/* ==========================================================================
	staff_list_area
========================================================================== */
.staff_list_area {
	position: relative;
	padding-top: 16rem;
}
.staff_list_area .n_txt {
	margin-bottom: 16rem;
	letter-spacing: 0;
}

.staff_list-link {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: (1fr)[4];
	grid-template-columns: repeat(4, 1fr);
	border-top: 1px solid var(--base-border-color02);
}
.staff_list-link li {
	border-right: 1px solid var(--base-border-color02);
	border-bottom: 1px solid var(--base-border-color02);
}
.staff_list-link li:nth-child(4n) {
	border-right: 1px solid rgba(255, 255, 255, 0);
}
.staff_list-link a {
	display: block;
	padding: 4rem 2rem;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
@media screen and (min-width: 801px) {
	.staff_list-link a:hover {
		background: var(--base-bg-color03);
	}
	.staff_list-link a:hover .img img {
		-webkit-transform: scale(1.05);
		        transform: scale(1.05);
	}
}
.staff_list-link .ja_txt {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	margin-bottom: 3.2rem;
}
.staff_list-link .ja_txt .name {
	font-size: var(--fz20);
	line-height: 2;
}
.staff_list-link .ja_txt .position {
	font-size: var(--fz12);
	line-height: 1.4166666667;
	text-align: right;
}
.staff_list-link .img {
	position: relative;
	width: clamp(150px, 61%, 500px);
	aspect-ratio: 240/320;
	margin: 0 auto 4rem;
	overflow: hidden;
}
.staff_list-link .img img {
	-webkit-transition: -webkit-transform 0.8s var(--easeOutCubic);
	transition: -webkit-transform 0.8s var(--easeOutCubic);
	transition: transform 0.8s var(--easeOutCubic);
	transition: transform 0.8s var(--easeOutCubic), -webkit-transform 0.8s var(--easeOutCubic);
}
.staff_list-link .en {
	font-size: var(--fz12);
}

@media screen and (max-width: 950px) {
	.staff_list-link {
		-ms-grid-columns: (1fr)[3];
		grid-template-columns: repeat(3, 1fr);
	}
	.staff_list-link li:nth-child(4n) {
		border-right: 1px solid var(--base-border-color02);
	}
	.staff_list-link li:nth-child(3n) {
		border-right: 1px solid rgba(255, 255, 255, 0);
	}
}
@media screen and (max-width: 800px) {
	.staff_list_area {
		padding-top: clamp(48px, 21.3333333333vw, 102.4px);
	}
	.staff_list_area .n_txt {
		text-align: left;
		font-size: var(--fz16);
		margin-bottom: clamp(48px, 21.3333333333vw, 102.4px);
	}
	.staff_list-link {
		display: -ms-grid;
		display: grid;
		-ms-grid-columns: (1fr)[2];
		grid-template-columns: repeat(2, 1fr);
	}
	.staff_list-link li {
		border-right: 1px solid rgba(255, 255, 255, 0);
		border-bottom: 1px solid var(--base-border-color02);
	}
	.staff_list-link li:nth-child(4n) {
		border-right: none;
	}
	.staff_list-link li:nth-child(odd) {
		border-right: 1px solid var(--base-border-color02);
	}
	.staff_list-link a {
		padding: 2.2rem 1rem;
	}
	.staff_list-link .ja_txt {
		margin-bottom: 2rem;
		display: block;
	}
	.staff_list-link .ja_txt .name {
		font-size: var(--fz14);
		line-height: 1.4285714286;
	}
	.staff_list-link .ja_txt .position {
		font-size: var(--fz10);
		line-height: 1.4;
		text-align: left;
		margin-top: 0.5rem;
	}
	.staff_list-link .img {
		width: clamp(120px, 81%, 500px);
		margin: 0 auto 2rem;
	}
	.staff_list-link .en {
		font-size: var(--fz11);
	}
}
/* ==========================================================================
	works_list-top
========================================================================== */
.works_list-top {
	margin-top: 8rem;
}

/* ==========================================================================
	staff-detail
========================================================================== */
.staff-detail {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	margin-top: 16rem;
}
.staff-detail .staff_img {
	position: relative;
	width: 28.8580246914%;
	aspect-ratio: 374/498;
}
.staff-detail .text_area {
	width: 59.4135802469%;
}
.staff-detail .text_area .position {
	font-size: var(--fz15);
	line-height: 1.4666666667;
	letter-spacing: 0;
	margin-bottom: 1.5rem;
}
.staff-detail .text_area .name {
	font-size: var(--fz32);
	line-height: 1.25;
	letter-spacing: 0;
	margin-bottom: 1rem;
}
.staff-detail .text_area .en-name {
	display: block;
	font-size: var(--fz12);
	line-height: 1.4166666667;
	letter-spacing: 0.04em;
	margin-bottom: 6rem;
}
.staff-detail .text_area h3 {
	font-size: var(--fz24);
	line-height: 1.4583333333;
	font-weight: 600;
	margin-bottom: 2rem;
}
.staff-detail .text_area .n_txt {
	margin-bottom: 6rem;
}
.staff-detail .text_area .info_area {
	padding: 2rem 3rem;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	border-top: 1px solid var(--base-border-color02);
	border-bottom: 1px solid var(--base-border-color02);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.staff-detail .text_area .info_area dt {
	width: 33.8028169014%;
	font-size: var(--fz14);
	line-height: 2.2857142857;
	letter-spacing: 0;
	font-weight: 500;
}
.staff-detail .text_area .info_area dd {
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	margin-left: 2rem;
	font-size: var(--fz16);
	line-height: 1.5;
	letter-spacing: 0;
}
.staff-detail .text_area .info_area + .info_area {
	border-top: none;
}
.staff-detail .staff-pager {
	position: relative;
	width: 100%;
	padding: 2rem 0;
	border-top: 1px solid var(--base-border-color02);
	border-bottom: 1px solid var(--base-border-color02);
	margin-top: 12rem;
}
.staff-detail .staff-pager .link {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.staff-detail .staff-pager .link .staff_img {
	position: relative;
	width: 80px;
	height: 80px;
	overflow: hidden;
}
.staff-detail .staff-pager .link .staff_img .fit_img {
	-o-object-position: top center;
	   object-position: top center;
	-webkit-transition: -webkit-transform 0.8s var(--easeOutCubic);
	transition: -webkit-transform 0.8s var(--easeOutCubic);
	transition: transform 0.8s var(--easeOutCubic);
	transition: transform 0.8s var(--easeOutCubic), -webkit-transform 0.8s var(--easeOutCubic);
}
.staff-detail .staff-pager .link .text {
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	margin-left: 2rem;
}
.staff-detail .staff-pager .link .en-mincho {
	position: relative;
	padding-left: 26px;
	font-size: var(--fz16);
	color: var(--base-color-black03);
	-webkit-transition: color 0.4s var(--easeOutCubic);
	transition: color 0.4s var(--easeOutCubic);
}
.staff-detail .staff-pager .link .icon {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	position: absolute;
	left: 0;
	top: 0;
	width: 16px;
	height: 16px;
	border: 1px solid var(--theme-color);
	border-radius: 50%;
	-webkit-transition: background 0.4s var(--easeOutCubic);
	transition: background 0.4s var(--easeOutCubic);
}
.staff-detail .staff-pager .link .name {
	font-size: var(--fz16);
	line-height: 1.25;
	font-weight: 500;
	margin-top: 10px;
	-webkit-transition: color 0.4s var(--easeOutCubic);
	transition: color 0.4s var(--easeOutCubic);
}
.staff-detail .staff-pager .link.-next {
	left: auto;
	right: 0;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	    -ms-flex-direction: row-reverse;
	        flex-direction: row-reverse;
}
.staff-detail .staff-pager .link.-next .icon svg {
	-webkit-transform: var(--hanten);
	        transform: var(--hanten);
}
.staff-detail .staff-pager .link.-next .text {
	margin-left: 0;
	margin-right: 2rem;
}
.staff-detail .staff-pager .link.-next .en-mincho {
	padding-right: 25px;
}
.staff-detail .staff-pager .link.-next .icon {
	left: auto;
	right: 0;
}
.staff-detail .staff-pager .link.-next .name {
	text-align: right;
}
@media screen and (min-width: 801px) {
	.staff-detail .staff-pager .link:hover .en-mincho, .staff-detail .staff-pager .link:hover .name {
		color: var(--theme-color);
	}
	.staff-detail .staff-pager .link:hover .staff_img .fit_img {
		-webkit-transform: scale(1.05);
		        transform: scale(1.05);
	}
	.staff-detail .staff-pager .link:hover .icon {
		background: var(--theme-color);
	}
	.staff-detail .staff-pager .link:hover .icon svg path {
		fill: #fff;
	}
}
.staff-detail .staff-pager .link-ichiran {
	display: block;
	margin: 0 auto;
	border-left: 1px solid var(--base-border-color02);
	border-right: 1px solid var(--base-border-color02);
	width: 120px;
	height: 100px;
	padding-top: 27px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	text-align: center;
}
.staff-detail .staff-pager .link-ichiran .icon {
	display: block;
	margin: 0 auto 10px;
	width: 20px;
	height: 20px;
}
.staff-detail .staff-pager .link-ichiran .icon svg path {
	-webkit-transition: stroke 0.4s var(--easeOutCubic);
	transition: stroke 0.4s var(--easeOutCubic);
}
.staff-detail .staff-pager .link-ichiran p {
	font-size: var(--fz13);
	line-height: 1.2307692308;
	font-weight: 500;
	letter-spacing: -0.06em;
	-webkit-transition: color 0.4s var(--easeOutCubic);
	transition: color 0.4s var(--easeOutCubic);
}
@media screen and (min-width: 801px) {
	.staff-detail .staff-pager .link-ichiran:hover {
		background: var(--base-text-color);
	}
	.staff-detail .staff-pager .link-ichiran:hover .icon svg path {
		stroke: #fff;
	}
	.staff-detail .staff-pager .link-ichiran:hover p {
		color: #fff;
	}
}

@media screen and (max-width: 800px) {
	.staff-detail {
		display: block;
		margin-top: 8rem;
	}
	.staff-detail .staff_img {
		width: 100%;
		max-width: 374px;
		margin: 0 auto 4rem;
	}
	.staff-detail .text_area {
		width: 100%;
	}
	.staff-detail .text_area .position {
		margin-bottom: 1rem;
	}
	.staff-detail .text_area .name {
		margin-bottom: 0.8rem;
	}
	.staff-detail .text_area .en-name {
		font-size: var(--fz12);
		margin-bottom: 6rem;
	}
	.staff-detail .text_area h3 {
		font-size: var(--fz20);
		line-height: 1.45;
		margin-bottom: 2.6rem;
	}
	.staff-detail .text_area .n_txt {
		margin-bottom: 6rem;
	}
	.staff-detail .text_area .info_area {
		padding: 2rem 1rem;
		display: block;
	}
	.staff-detail .text_area .info_area dt {
		width: 100%;
		font-size: var(--fz13);
		line-height: 1.4615384615;
		margin-bottom: 1rem;
	}
	.staff-detail .text_area .info_area dd {
		width: 100%;
		margin-left: 0;
		font-size: var(--fz14);
		line-height: 1.7142857143;
	}
	.staff-detail .staff-pager {
		padding: 1rem 0;
		border-top: 1px solid var(--base-border-color02);
		border-bottom: 1px solid var(--base-border-color02);
		margin-top: 12rem;
	}
	.staff-detail .staff-pager .link .staff_img {
		display: none;
	}
	.staff-detail .staff-pager .link .text {
		margin-left: 0;
	}
	.staff-detail .staff-pager .link .text .name {
		display: none;
	}
	.staff-detail .staff-pager .link-ichiran {
		height: 60px;
		padding-top: 10px;
	}
	.staff-detail .staff-pager .link-ichiran .icon {
		margin: 0 auto 5px;
	}
	.staff-detail .staff-pager .link-ichiran p {
		font-size: var(--fz13);
		line-height: 1.2307692308;
	}
}
/*# sourceMappingURL=staff.css.map */