@charset "UTF-8";



/*  l-facade
--------------------------------------------------*/
.l-facade {
	position: relative;
}
.facade-head {
	padding-block: 19.0rem;
	background: #222020;
}
.facade-photo {

}
@media screen and (max-width: 768px){
	.facade-head {
		padding-block: 10.0rem 7.0rem;
	}
}





/*  sec
--------------------------------------------------*/
.sec {
	position: relative;
	width: 100%;
}
.sec .common-sec-head {
	background: #222020;
}
@media screen and (min-width: 769px){
	.sec .common-sec-head {
		width: calc(655 / 1920 * 100%);
		padding-bottom: 12.0rem;
		display: flex;
		align-items: flex-end;
		justify-content: flex-end;
	}
	.sec .common-sec-head__inner {
		width: calc(310 / 655 * 100%);
		margin-inline: auto;
	}
	.sec .common-sec-head__ttl {
		font-size: 2.5rem;
		margin-bottom: 10.0rem;
	}
	.sec .common-sec-head__detail {
		width: 100%;
	}
	.sec .common-sec-head__detail__heading {
		width: 100%;
		font-size: 2.6rem;
		letter-spacing: 0;
		margin-bottom: 4.0rem;
	}
	.sec .common-sec-head__detail__desc {
		width: 100%;
		font-size: 1.7rem;
		text-align: justify;
	}
	.sec .sec-photo {
		width: calc(1265 / 1920 * 100%);
	}
}
@media screen and (max-width: 768px){
	.sec .common-sec-head {
		padding-block: 10.0rem 7.0rem;
	}
}



/*  l-landplan
--------------------------------------------------*/
.l-landplan {
	position: relative;
	padding-block: 20.0rem 23.0rem;
}
.landplan-head {
	margin-bottom: 15.0rem;
}
.landplan-layout {
	margin-bottom: 17.0rem;
}
.landplan-layout__figure {
	width: calc(714 / 1560 * 100%);
}
.landplan-layout__list {
	width: calc(714 / 1560 * 100%);
	/*display: grid;
  	grid-template-columns: repeat(2, 1fr);*/
  	gap: 3.5rem 3.0rem;
}
.landplan-layout__list__item {
	position: relative;
	font-size: 2.0rem;
	line-height: 1.9;
	letter-spacing: 0;
	font-weight: 600;
	padding-left: 4.5rem;
}
.landplan-layout__list__item:nth-of-type(odd) {
	width: calc(60% - 1.5rem);
}
.landplan-layout__list__item:nth-of-type(even) {
	width: calc(40% - 1.5rem);
}
.landplan-layout__list__item i {
	position: absolute;
	left: 0;
	top: .1em;
	width: 3.5rem;
	height: 3.5rem;
	background: #B49B5E;
	font-size: 2.2rem;
	line-height: 1;
	text-align: center;
	letter-spacing: 0;
	color: var(--white);
	display: flex;
	align-items: center;
	justify-content: center;
	padding-bottom: .15em;
}
.landplan-architecture {
	position: relative;
	margin-bottom: 12.5rem;
}
.landplan-architecture__ttl {
	position: relative;
	font-size: 4.2rem;
	line-height: 1;
	letter-spacing: .05em;
	text-align: center;
	color: #B49B5E;
	margin-bottom: 6.0rem;
}
.landplan-architecture__subttl {
	position: relative;
	width: 100%;
	font-size: 2.5rem;
	line-height: 1;
	letter-spacing: .05em;
	color: #B49B5E;
	text-align: center;
	padding-bottom: 1.5rem;
	margin-bottom: 5.0rem;
}
.landplan-architecture__subttl::after {
	content: '';
	position: absolute;
	inset: auto 0 0 0;
	margin-inline: auto;
	width: 33.0rem;
	height: 1px;
	background: #B49B5E;
}
.landplan-architecture__inner {
	background: #222020;
	padding-bottom: 2.0rem;
	margin-bottom: 10.5rem;
}
.landplan-architecture__inner::after {
	content: '';
	position: absolute;
	inset: auto 0 -10.5rem 0;
	width: 100%;
	height: 10.5rem;
	margin-inline: auto;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	background: #222020;
	z-index: 1;
}
.landplan-architecture__skm {
	width: 100%;
	margin-bottom: 9.0rem;
}
.landplan-architecture__skm__logo {
	width: calc(550 / 1560 * 100%);
	background: #222020;
}
.landplan-architecture__skm__detail {
	width: calc(860 / 1560 * 100%);
    padding-left: calc(60 / 1560 * 100%);
}
.landplan-architecture__skm__heading {
	font-size: 3.3rem;
	line-height: 1.45;
	letter-spacing: .05em;
	color: var(--white);
	margin-bottom: 1.0rem;
}
.landplan-architecture__skm__desc {
	font-size: 1.6rem;
	line-height: 2.13;
	letter-spacing: .05em;
	color: var(--white);
}
.landplan-architecture__profile {
	width: min(90%,1280px);
	margin: 0 auto 8.0rem;
}
.landplan-architecture__profile__detail {
	width: 100%;
}
.landplan-architecture__profile__detail__photo {
	width: calc(470 / 1280 * 100%);
}
.landplan-architecture__profile__detail__box {
	width: calc(720 / 1280 * 100%);
}
.landplan-architecture__profile__detail__box__cnt1 {
	width: 100%;
	margin-bottom: 3.0rem;
}
.landplan-architecture__profile__detail__box__name {
	font-size: 3.0rem;
	line-height: 1;
	letter-spacing: .05em;
	color: var(--white);
	margin-bottom: 2.7rem;
}
.landplan-architecture__profile__detail__box__name span {
	font-size: 1.0rem;
}
.landplan-architecture__profile__detail__box__desc {
	font-size: 1.4rem;
	line-height: 1.87;
	letter-spacing: .05em;
	color: var(--white);
}
.landplan-architecture__profile__detail__box__cnt2 {
	width: 100%;
}
.landplan-architecture__profile__detail__box__explain {
	font-size: 1.4rem;
    line-height: 1.88;
    letter-spacing: .05em;
    color: var(--white);
    margin-bottom: 1.0rem;
}
.landplan-architecture__profile__detail__box__explain span {
	color: #efc55d;
}
.landplan-architecture__profile__detail__box__note {
	font-size: 1.4rem;
	line-height: 1.86;
	letter-spacing: 0;
	color: var(--white);
}
.landplan-architecture__work {
	width: min(90%,1280px);
	margin: 0 auto 10.0rem;
}
.landplan-architecture__work__list {
	position: relative;
}
.landplan-architecture__work__list__item {
	position: relative;
	width: calc(100% / 4);
}
.landplan-architecture__message {
	width: min(90%,1280px);
	margin: 0 auto;
}
.landplan-architecture__message__desc__txt {
	font-size: 1.6rem;
    line-height: 2.13;
    letter-spacing: .05em;
    color: var(--white);
    text-align: center;
}
.landplan-architecture__message__desc__txt + .landplan-architecture__message__desc__txt {
	margin-top: 1.0em;
}
.landplan-architecture__message__desc__txt span {
	color: #efc55d;
}

.landplan-person {
	position: relative;
	margin-top: -10.5rem;
	padding-block: 19.0rem 10.5rem;
	background: #F3F0F0;
}
.landplan-person__ttl {
	position: relative;
	width: 100%;
	font-size: 2.5rem;
	line-height: 1;
	letter-spacing: .05em;
	color: #B49B5E;
	text-align: center;
	padding-bottom: 1.5rem;
	margin-bottom: 10.0rem;
}
.landplan-person__ttl::after {
	content: '';
	position: absolute;
	inset: auto 0 0 0;
	margin-inline: auto;
	width: 33.0rem;
	height: 1px;
	background: #B49B5E;
}
.landplan-person-wrap {
	position: relative;
	/*width: min(90%,1280px);*/
	width: min(90%,1400px);
	margin-inline: auto;
	/*gap: 8.0rem;*/
	gap: 4.0rem;
}
.landplan-person__item {
	/*width: calc((100% - 8.0rem) / 2);*/
	width: calc((100% - 8.0rem) / 3);
}
.landplan-person__item__photo {
	width: 100%;
	margin-bottom: 3.0rem;
}
.landplan-person__item__profile {
	width: 100%;
	margin-bottom: 3.0rem;
}
.landplan-person__item__profile__image {
	/*width: calc(235 / 560 * 100%);*/
	width: calc(220 / 560 * 100%);
}
@media screen and (min-width: 769px){
	.landplan-person__item__profile__image {
		aspect-ratio: 220 / 250;
	}
	.landplan-person__item__profile__image img {
		object-fit: cover;
		object-position: center center;
		width: 100%;
		height: 100%;
	}
}
.landplan-person__item__profile__detail {
	/*width: calc(290 / 560 * 100%);*/
	width: calc(320 / 560 * 100%);
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-direction: column;
}
.landplan-person__item__profile__detail__heading {
	width: 100%;
	font-size: 2.8rem;
	font-size: clamp(18px, 1.458333333333333vw, 28px);
	line-height: 1;
	letter-spacing: .05em;
	color: #B49B5E;
}
.landplan-person__item__profile__detail__box {
	width: 100%;
}
.landplan-person__item__profile__detail__name {
	font-size: 2.5rem;
	font-size: clamp(16px, 1.302083333333333vw, 25px);
	line-height: 1;
	letter-spacing: 0;
	gap: .5rem 1.0rem;
}
.landplan-person__item__profile__detail__name span {
	font-size: 1.2rem;
	font-size: clamp(8px, 0.625vw, 12px);
	line-height: 1.17;
	letter-spacing: 0;
}
.landplan-person__item__profile__detail__desc {
	font-size: 1.4rem;
	font-size: clamp(10px, 0.729166666666667vw, 14px);
	line-height: 1.86;
	letter-spacing: 0;
}
.landplan-person__item__profile__detail__name + .landplan-person__item__profile__detail__desc {
	margin-top: 1.0rem;
}
.landplan-person__item__work {
	width: 100%;
	padding: 3.0rem;
	background: #222020;
	flex: 1 auto;
}
.landplan-person__item__work__heading {
	position: relative;
	font-size: 2.3rem;
	line-height: 1;
	letter-spacing: .05em;
	color: #B49B5E;
	overflow: hidden;
	margin-bottom: 2.8rem;
}
.landplan-person__item__work__heading::after {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	width: 100%;
	height: 1px;
	background: #B49B5E;
}
.landplan-person__item__work__heading span {
	position: relative;
	display: inline-block;
	padding-right: 1.0rem;
	background: #222020;
	z-index: 1;
}
.landplan-person__item__work__list {
	width: 100%;
}
.landplan-person__item__work__list__item {
	width: 100%;
}
.landplan-person__item__work__list__item + .landplan-person__item__work__list__item {
	margin-top: 1.5rem;
}
.landplan-person__item__work__list__item__ttl {
	width: 7.4rem;
	height: 2.4rem;
	font-size: 1.1rem;
	line-height: 1;
	letter-spacing: 0;
	color: var(--black);
	font-weight: 600;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-bottom: .1em;
	border-radius: .5rem;
	background: #B49B5E;
}
.landplan-person__item__work__list__item__desc {
	width: calc(100% - 9.2rem);
	font-size: 1.4rem;
	line-height: 1.86;
	font-weight: 400;
	color: var(--white);
}
@media screen and (max-width: 768px){
	.l-landplan {
		padding-block: 10.0rem;
	}
	.landplan-head {
		margin-bottom: 7.0rem;
	}
	.landplan-layout {
		margin-bottom: 7.0rem;
	}
	.landplan-layout__figure {
		width: 100%;
		margin-bottom: 2.0rem;
	}
	.landplan-layout__list {
		width: 100%;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	  	gap: 1.0rem 1.0rem;
	}
	.landplan-layout__list__item {
		font-size: 1.0rem;
		padding-left: 2.2rem;
	}
	.landplan-layout__list__item:nth-of-type(odd) {
		width: calc(60% - .5rem);
	}
	.landplan-layout__list__item:nth-of-type(even) {
		width: calc(40% - .5rem);
	}
	.landplan-layout__list__item + .landplan-layout__list__item {
		margin-top: 0;
	}
	.landplan-layout__list__item i {
		top: .1em;
		width: 1.5rem;
		height: 1.5rem;
		font-size: 1.0rem;
		padding-bottom: .1em;
	}
	.landplan-architecture {
		margin-bottom: 6.5rem;
	}
	.landplan-architecture__ttl {
		font-size: 2.8rem;
		margin-bottom: 3.0rem;
	}
	.landplan-architecture__subttl {
		font-size: 2.0rem;
		padding-bottom: .8rem;
		margin-bottom: 2.5rem;
	}
	.landplan-architecture__subttl::after {
		width: 20.0rem;
	}
	.landplan-architecture__inner {
		padding-bottom: 4.0rem;
		margin-bottom: 3.0rem;
	}
	.landplan-architecture__inner::after {
		inset: auto 0 -2.95rem 0;
		height: 3.0rem;
	}
	.landplan-architecture__skm {
		margin-bottom: 6.0rem;
	}
	.landplan-architecture__skm__logo {
		width: 100%;
		margin-bottom: 0;
	}
	.landplan-architecture__skm__detail {
		width: calc(280 / 320 * 100%);
	    padding-left: 0;
	    margin-inline: auto;
	}
	.landplan-architecture__skm__heading {
		font-size: 1.8rem;
        text-align: center;
		margin-bottom: 1.0rem;
	}
	.landplan-architecture__skm__desc {
		font-size: 1.4rem;
		line-height: 2;
		text-align: justify;
	}
	.landplan-architecture__profile {
		width: calc(280 / 320 * 100%);
		margin: 0 auto 5.0rem;
	}
	.landplan-architecture__profile__detail__photo {
		width: 80%;
        margin: 0 auto 3.0rem;
	}
	.landplan-architecture__profile__detail__box {
		width: 100%;
	}
	.landplan-architecture__profile__detail__box__cnt1 {
		margin-bottom: 2.0rem;
	}
	.landplan-architecture__profile__detail__box__name {
		font-size: 2.4rem;
		margin-bottom: 1.5rem;
	}
	.landplan-architecture__profile__detail__box__desc {
		font-size: 1.2rem;
		line-height: 1.83;
	}
	.landplan-architecture__profile__detail__box__explain {
		font-size: 1.4rem;
        text-align: justify;
	}
	.landplan-architecture__profile__detail__box__note {
		font-size: 1.2rem;
		line-height: 1.67;
	}
	.landplan-architecture__work {
		width: calc(280 / 320 * 100%);
		margin: 0 auto 5.0rem;
	}
	.landplan-architecture__work__list__item {
		width: calc(100% / 2);
	}
	.landplan-architecture__work__list__item .p-caption {
		font-size: 7px;
		letter-spacing: 0;
	}
	.landplan-architecture__message {
		width: min(90%,1280px);
		margin: 0 auto;
	}
	.landplan-architecture__message__desc__txt {
		font-size: 1.4rem;
    	line-height: 1.88;
	    text-align: justify;
	}
	.landplan-person {
		width: calc(320 / 380 * 100%);
		margin-inline: auto;
		margin-top: -3.0rem;
	    padding-block: 9.0rem 6.0rem;
	}
	.landplan-person__ttl {
		font-size: 2.0rem;
		padding-bottom: .8rem;
		margin-bottom: 2.5rem;
	}
	.landplan-person__ttl::after {
		width: 20.0rem;
	}
	.landplan-person-wrap {
		widows: 100%;
		gap: 0;
	}
	.landplan-person__item {
		width: 100%;
	}
	.landplan-person__item + .landplan-person__item {
		margin-top: 4.0rem;
	}
	.landplan-person__item__photo {
		margin-bottom: 3.0rem;
	}
	.landplan-person__item__profile {
		margin-bottom: 2.0rem;
	}
	.landplan-person__item__profile__image {
		width: calc(130 / 320 * 100%);
	}
	.landplan-person__item__profile__detail {
		width: calc(170 / 320 * 100%);
	}
	.landplan-person__item__profile__detail__heading {
		font-size: 2.2rem;
	}
	.landplan-person__item__profile__detail__name {
		font-size: 2.0rem;
		gap: 1.0rem 1.0rem;
	}
	.landplan-person__item__profile__detail__name span {
		display: block;
		width: 100%;
		font-size: 1.0rem;
	}
	.landplan-person__item__profile__detail__desc {
		font-size: 1.2rem;
		line-height: 1.67;
		margin-top: 1.5rem;
	}
	.landplan-person__item__work {
		padding: 2.5rem;
	}
	.landplan-person__item__work__heading {
		font-size: 1.8rem;
		margin-bottom: 2.2rem;
	}
	.landplan-person__item__work__heading span {
		padding-right: 1.0rem;
	}
	.landplan-person__item__work__list__item + .landplan-person__item__work__list__item {
		margin-top: 1.5rem;
	}
	.landplan-person__item__work__list__item__ttl {
		width: 6.8rem;
		height: 2.4rem;
		font-size: 1.1rem;
		padding-bottom: .1em;
		border-radius: .5rem;
	}
	.landplan-person__item__work__list__item__desc {
		width: calc(100% - 8.6rem);
		font-size: 1.2rem;
		margin-top: -.5em;
	}
}




/*  l-profile
--------------------------------------------------*/
/*.l-profile {
	position: relative;
	padding-bottom: 23.0rem;
}
.profile-architect {
	position: relative;
}
.profile-architect__left {
	position: relative;
	width: calc(1080 / 1560 * 100%);
	padding-block: 8.0rem 7.0rem;
	background: #222020;
}
.profile-architect__left__catch {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: calc(165 / 1080 * 100%);
}
.profile-architect__left__box {
	width: calc(780 / 1080 * 100%);
	padding-right: calc(120 / 1080 * 100%);
}
.profile-architect__left__box__item + .profile-architect__left__box__item {
	margin-top: 7.0rem;
}
.profile-architect__left__cnt1 {
	width: 100%;
	margin-bottom: 3.0rem;
}
.profile-architect__left__ttl {
	font-size: 2.5rem;
    line-height: 1;
    letter-spacing: .05em;
    color: #B49B5E;
    margin-bottom: 3.4rem;
    padding-bottom: 3.0rem;
    border-bottom: solid 1px;
}
.profile-architect__left__name {
	font-size: 3.0rem;
	line-height: 1;
	letter-spacing: .05em;
	color: var(--white);
	margin-bottom: 2.7rem;
}
.profile-architect__left__name span {
	font-size: 1.0rem;
}
.profile-architect__left__desc {
	font-size: 1.4rem;
	line-height: 1.87;
	letter-spacing: .05em;
	color: var(--white);
}
.profile-architect__left__cnt2 {
	width: 100%;
}
.profile-architect__left__explain {
	font-size: 1.4rem;
    line-height: 1.88;
    letter-spacing: .05em;
    color: var(--white);
    margin-bottom: 1.0rem;
}
.profile-architect__left__explain span {
	color: #efc55d;
}
.profile-architect__left__note {
	font-size: 1.4rem;
	line-height: 1.86;
	letter-spacing: 0;
	color: var(--white);
}
.profile-architect__right {
	width: calc(480 / 1560 * 100%);
}
.profile-architect__right__item {
	width: 100%;
}
.profile-architect__right__item:nth-of-type(2) {
	background: #F3F0F0;
	flex: 1 auto;
}
.profile-list {
	position: relative;
}
.profile-list__item {
	position: relative;
	width: calc(100% / 4);
}
@media screen and (max-width: 1070px){
	.profile-architect__left__cnt1,
	.profile-architect__left__cnt2 {
		width: 100%;
	}
}
@media screen and (max-width: 768px){
	.l-profile {
		padding-bottom: 10.0rem;
	}
	.profile-architect__left {
		width: 100%;
		padding-block: 8.0rem 7.0rem;
	}
	.profile-architect__left__catch {
		top: 0;
		transform: translateY(0);
		width: calc(75 / 320 * 100%);
	}
	.profile-architect__left__box {
		display: block;
		width: calc(260 / 320 * 100%);
		margin-inline: auto;
		padding-right: 0;
	}
	.profile-architect__left__cnt1 {
		width: 100%;
		margin-bottom: 2.0rem;
	}
	.profile-architect__left__ttl {
		font-size: 2.0rem;
        margin-bottom: 2.5rem;
        padding-bottom: 1.5rem;
	}
	.profile-architect__left__name {
		font-size: 2.4rem;
		margin-bottom: 1.5rem;
	}
	.profile-architect__left__desc {
		font-size: 12px;
		line-height: 1.83;
	}
	.profile-architect__left__cnt2 {
		width: 100%;
	}
	.profile-architect__left__explain {
		font-size: 1.4rem;
        text-align: justify;
	}
	.profile-architect__left__note {
		font-size: 1.2rem;
		line-height: 1.67;
	}
	.profile-architect__right {
		width: 100%;
	}
	.profile-list__item {
		width: calc(100% / 2);
	}
}*/




/*  l-landplan
--------------------------------------------------*/
.l-project {
	position: relative;
	padding-block: 6.0rem 13.0rem;
	background: url('../imgs/bg_project.jpg') no-repeat center center/cover;
}
.l-project::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background : linear-gradient(0deg, rgba(35, 24, 21, 0) 0%, rgba(0, 0, 0, 1) 60%, rgba(0, 0, 0, 1) 100%);
	z-index: 1;
}
.project-inner {
	position: relative;
	max-width: 1100px;
	width: calc(260 / 320 * 100%);
	margin-inline: auto;
	z-index: 2;
}
.project-logo {
	width: calc(476 / 1100 * 100%);
	margin: 0 auto 2.0rem;
}
.project-contents {
	width: 100%;
}
.project-heading {
	font-size: 2.5rem;
	line-height: 1.67;
	text-align: center;
	letter-spacing: .05em;
	color: var(--white);
	padding-bottom: 2.0rem;
	margin-bottom: 2.6rem;
	border-bottom: solid 1px var(--white);
}
.project-detail {
	width: 100%;
	margin-bottom: 4.0rem;
}
.project-detail__desc {
	position: relative;
	width: calc(890 / 1100 * 100%);
	font-size: 1.5rem;
	line-height: 2.13;
	letter-spacing: .05em;
	color: var(--white);
	margin-top: -.5em;
}
.project-detail__photo {
	width: calc(184 / 1100 * 100%);
}
.project-more {
	width: min(90%,245px);
	margin-left: auto;
}
.project-more a {
	position: relative;
	display: block;
	font-size: 2.0rem;
	line-height: 1;
	letter-spacing: .05em;
	color: #B49B5E;
	padding-block: .8rem;
	border-bottom: solid 1px #B49B5E;
	z-index: 1;
}
.project-more a::after {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 0;
	height: 100%;
	background: var(--white);
	opacity: .4;
	transition: width .5s,opacity .5s;
	z-index: -1;
}
.project-more span {
	position: relative;
	padding-left: 1.3rem;
}
.project-more span::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: .4rem;
	height: .4rem;
	background: #B49B5E;
	z-index: 1;
}

@media (any-hover: hover){
	.project-more a:hover::after {
		width: 100%;
		opacity: .2;
	}
}
@media screen and (max-width: 768px){
	.l-project {
		padding-block: 4.5rem 6.0rem;
	}
	.l-project::before {
		background : linear-gradient(0deg, rgba(35, 24, 21, 0) 0%, rgba(0, 0, 0, 1) 100%);
	}
	.project-logo {
		width: calc(200 / 260 * 100%);
		margin: 0 auto 1.7rem;
	}
	.project-heading {
		font-size: 1.8rem;
		padding-bottom: 1.9rem;
		margin-bottom: 2.0rem;
	}
	.project-detail {
		margin-bottom: 5.0rem;
	}
	.project-detail__desc {
		width: 100%;
		font-size: 1.4rem;
		line-height: 1.86;
		margin-top: 0;
		margin-bottom: 5.0rem;
	}
	.project-detail__photo {
		width: calc(160 / 260 * 100%);
		margin-inline: auto;
	}
	.project-more {
		width: calc(220 / 260 * 100%);
		margin-inline: auto;
	}
	.project-more a {
		font-size: 1.8rem;
	}
}


