@charset "UTF-8";

.sec_mv_lower {
	background-color: #F8F6F4;
	padding-top: 13.9rem;
	position: relative;
	margin-bottom: 24.8rem;
	padding-bottom: 2.4rem;
}

.sec_mv_lower > .in {
	max-width: 135.8rem;
	margin:  0 auto;
}

.sec_mv_lower img {
	vertical-align: bottom;
	width: 100%;
	height: auto;
}

.sec_mv_lower .mv_chach {
	margin-top: 4rem;
}

.sec_mv_lower .mv_chach .tit {
	font-size: 3.8rem;
	line-height: 1.7;
	letter-spacing: 0.12em;
}
.sec_mv_lower .mv_chach .txt {
	font-size: 1.8rem;
	line-height: 2.2;
	letter-spacing: 0.2em;
	margin-top: 3.2rem;
}


.sec_mv_lower .mv_chach .tit_en {
	font-family: "Bellefair", serif;
	font-size: 1.8rem;
	position: relative;
	letter-spacing: 0.1em;
	color: #D26365;
	position: relative;
	padding-left: 2.1rem;
}

.sec_mv_lower .mv_chach .tit_en::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	background-image: url(../img/index/leaf_icon.svg);
	width: 1.5rem;
	height: 1.4rem;
	background-size: cover;
}

.sec_mv_lower .mv_chach .tit {
	font-size: 3.6rem;
	color: #009E96;
	line-height: 1.4;
	letter-spacing: 0.1em;
	font-weight: 400;
	margin-top: 1.2rem;
}

.sec_mv_lower .mv .ph {
	width: 75rem;
	height: 50rem;
	position: absolute;
	right: calc((100vw - 140rem) / 2);
	bottom: -24.8rem;
}

.sec_mv_lower .mv_cach {

}

.sec_mv_lower .mv_cach .txt {
	font-size: 2.2rem;
	line-height: 2;
	letter-spacing: 0.15em;
	color: #5B5B5B;
	position: absolute;
	left: calc((100vw - 140rem) / 2);
	bottom: -17.6rem;
	max-width: 50rem;
}

.mv_entry_btn {
	position: absolute;
	right: calc((100vw - 160rem) / 2);
	bottom: -45.7rem;
	z-index: 30;
}

.mv_entry_btn .mv_entry_btn_box {
	max-width: 15.6rem;
}

.mv_entry_btn img {
	width: 100%;
	height: auto;
}

@media screen and (min-width: 641px) and (max-width: 1000px) {
	.sec_mv_lower .mv .ph {
		right: 0;
	}

	.sec_mv_lower .mv_cach .txt {
		left: 0;
	}
}

@media screen and (max-width:640px) {
	.sec_mv_lower {
		padding-top: calc(66 * 100vw / 375);
		margin-bottom: 0;
		background-color: transparent;
		padding-bottom: 0;
	}
	.sec_mv_lower::before {
		content: "";
		width: 100%;
		height: calc(323 * 100vw / 375);
		position: absolute;
		left: 0;
		top: 0;
		background-color: #F8F6F4;
	}

	.sec_mv_lower > .in {
		max-width: none;
		display: flex;
		flex-wrap: wrap;
		position: relative;
		z-index: 10;
	}

	.sec_mv_lower .content_top {
		order: 2;
	}

	.sec_mv_lower .content_bottom {
		order: 1;
	}

	.sec_mv_lower .mv_chach {
		margin-top: calc(40 * 100vw / 375);
		padding-left: calc(20 * 100vw / 375);
		padding-right: calc(20 * 100vw / 375);
	}

	.sec_mv_lower .mv_chach .tit_en {
		font-size: calc(16 * 100vw / 375);
		padding-left: calc(18 * 100vw / 375);
	}

	.sec_mv_lower .mv_chach .tit_en::before {
		width: calc(14 * 100vw / 375);
		height:calc(13 * 100vw / 375);
	}

	.sec_mv_lower .mv_chach .tit {
		font-size: calc(28 * 100vw / 375);
		margin-top: calc(16 * 100vw / 375);
	}

	.sec_mv_lower .mv_chach .txt {
		font-size: calc(13 * 100vw / 375);
		margin-top: calc(24 * 100vw / 375);
	}

	.sec_mv_lower .mv {
		padding: 0 calc(20 * 100vw / 375);
		margin-top: calc(16 * 100vw / 375);
		box-sizing: border-box;
	}

	.sec_mv_lower .mv .ph {
		width: 100%;
		height: auto;
		position: relative;
		right: 0;
		bottom: 0;
	}

	.sec_mv_lower .mv_cach {
		margin-top: calc(32 * 100vw / 375);
	}

	.sec_mv_lower .mv_cach .txt {
		font-size: calc(15 * 100vw / 375);
		line-height: 2.2;
		letter-spacing: 0.2em;
		position: relative;
		left: auto;
		bottom: auto;
		padding-left: calc(20 * 100vw / 375);
		box-sizing: border-box;
	}

	.mv_entry_btn {
		right: 0;
		bottom: calc(-287 * 100vw / 375);
	}

	.mv_entry_btn .mv_entry_btn_box {
		max-width: calc(116 * 100vw / 375);
	}

}








.sec_about_lower {
	padding-bottom: 20rem;
}

.sec_about_lower > .in {
	max-width: 144rem;
	max-width: 128rem;
	margin: 0 auto;
}

.sec_about_lower .content_box .ph_img {

}

.sec_about_lower .content_box .ph_img img {
	width: 100%;
	height: auto;
}

.sec_about_lower .content_box .txt {
	font-size: 1.6rem;
	line-height: 2.8;
	letter-spacing: 0.12em;
}

.sec_about_lower .content_box:nth-child(1) {
	position: relative;
	padding-top: 25.5rem;
	width: 100%;
	display: flex;
	justify-content: right;
}

.sec_about_lower .content_box:nth-child(1) .content {
	width: 100%;
	max-width: 47rem;
	padding-right: 12rem;
}

.sec_about_lower .content_box:nth-child(1) .ph_img {
	position: absolute;
	left: 0;
	top: 12rem;
	max-width: 60.8rem;
	width: 100%;
}

.sec_about_lower .content_box:nth-child(1) .txt {
}

.sec_about_lower .content_box:nth-child(2) {
	position: relative;
	padding-top: 34.8rem;
	width: 100%;
	display: flex;
}

.sec_about_lower .content_box:nth-child(2) .content {
}

.sec_about_lower .content_box:nth-child(2) .ph_img {
	position: absolute;
	right: 0;
	top: 13.3rem;
	max-width: 56.4rem;
	width: 100%;
}

.sec_about_lower .content_box:nth-child(2) .txt {
	max-width: 47rem;
}

.sec_about_lower .content_box:nth-child(3) {
	position: relative;
	padding-top: 44.2rem;
	width: 100%;
	display: flex;
	justify-content: center;
}

.sec_about_lower .content_box:nth-child(3) .content {
}

.sec_about_lower .content_box:nth-child(3) .ph_img {
	position: absolute;
	left: 0;
	top: 11rem;
	max-width: 31rem;
	width: 100%;
}

.sec_about_lower .content_box:nth-child(3) .txt {
	width: 100%;
	text-align: center;
	font-size: 1.6rem;
	position: relative;
}

.sec_about_lower .content_box:nth-child(3) .txt::before {
	content: "";
	width: 1px;
	height: 6.4rem;
	background-color: #E5E5E5;
	position: absolute;
	left: 0;
	right: 0;
	top: -8.8rem;
	margin: auto;
}


@media screen and (max-width:640px) {
	.sec_about_lower {
		padding-bottom: calc(80 * 100vw / 375);
	}

	.sec_about_lower > .in {
		max-width: none;
	}

	.sec_about_lower .content_box .txt {
		font-size: calc(13 * 100vw / 375);
	}

	.sec_about_lower .content_box:nth-child(1) {
		position: relative;
		padding-top: calc(80 * 100vw / 375);
		width: 100%;
		display: flex;
		justify-content: right;
	}

	.sec_about_lower .content_box:nth-child(1) .content {
		width: 100%;
		max-width: none;
		padding-right: 0;
	}

	.sec_about_lower .content_box:nth-child(1) .ph_img {
		position: relative;
		left: 0;
		top: 0;
		max-width: none;
		width: 100%;
		padding-left: calc(20 * 100vw / 375);
		padding-right: calc(40 * 100vw / 375);
		box-sizing: border-box;
	}

	.sec_about_lower .content_box:nth-child(1) .txt {
		margin-top: calc(32 * 100vw / 375);
		padding-left: calc(40 * 100vw / 375);
		padding-right: calc(40 * 100vw / 375);
	}

	.sec_about_lower .content_box:nth-child(2) {
		position: relative;
		padding-top: calc(48 * 100vw / 375);
		width: 100%;
		display: flex;
	}

	.sec_about_lower .content_box:nth-child(2) .content {
	}

	.sec_about_lower .content_box:nth-child(2) .ph_img {
		position: relative;
		right: 0;
		top: 0;
		max-width: none;
		width: 100%;
		padding-left: calc(40 * 100vw / 375);
		padding-right: calc(20 * 100vw / 375);
		box-sizing: border-box;
	}

	.sec_about_lower .content_box:nth-child(2) .txt {
		max-width: none;
		padding-left: calc(40 * 100vw / 375);
		padding-right: calc(40 * 100vw / 375);
		margin-top: calc(32 * 100vw / 375);
	}

	.sec_about_lower .content_box:nth-child(3) {
		position: relative;
		padding-top: 0;
		width: 100%;
		display: flex;
		justify-content: center;
	}

	.sec_about_lower .content_box:nth-child(3) .content {
	}

	.sec_about_lower .content_box:nth-child(3) .ph_img {
		position: relative;
		left: 0;
		top: 0;
		max-width: none;
		width: 100%;
		padding-left: calc(213 * 100vw / 375);
		padding-right: calc(11 * 100vw / 375);
		box-sizing: border-box;
	}

	.sec_about_lower .content_box:nth-child(3) .txt {
		font-size: calc(13 * 100vw / 375);
		padding-left: calc(20 * 100vw / 375);
		padding-right: calc(20 * 100vw / 375);
		padding-top: calc(96 * 100vw / 375);
		box-sizing: border-box;
	}

	.sec_about_lower .content_box:nth-child(3) .txt::before {
		width: 1px;
		height: calc(40 * 100vw / 375);
		top: calc(32 * 100vw / 375);
	}

}







.sec_about_work {
	background-color: #F8F6F4;
	padding: 12rem 0;
}


.sec_about_work .txt_box {
	max-width: 136rem;
	margin: 0 auto;
}

.sec_about_work .txt_box .tit_en {
	font-family: "Bellefair", serif;
	font-size: 1.6rem;
	position: relative;
	letter-spacing: 0.1em;
	color: #009E96;
	position: relative;
}

.sec_about_work .txt_box .tit {
	font-size: 3.2rem;
	color: #009E96;
	line-height: 1.4;
	letter-spacing: 0.1em;
	font-weight: 500;
	margin-top: 1.6rem;
}

.sec_about_work .details_box {
	display: flex;
	justify-content: space-between;
	max-width: 136rem;
	margin: 0 auto;
	margin-top: 5.6rem;
}

.sec_about_work .details_box .details {
	max-width: 32.2rem;
	width: 100%;
}

.sec_about_work .details_box .details .ph {
	max-width: 32.2rem;
	width: 100%;
}

.sec_about_work .details_box .details .ph img {
	width: 100%;
	height: auto;
}

.sec_about_work .details_box .details .title {
	font-size: 1.6rem;
	letter-spacing: 0.12em;
	display: flex;
	align-items: center;
	color: #009E96;
	margin-top: 2.4rem;
}

.sec_about_work .details_box .details .title img {
	max-width: 4.5rem;
	width: 100%;
	height: auto;
	margin-right: 2.4rem;
}

.sec_about_work .details_box .details .text {
	font-size: 1.6rem;
	letter-spacing: 0.1em;
	line-height: 2.1;
	margin-top: 1.6rem;
}

.sec_about_work .details_box .details .text .point {
	color: #009E96;
	text-decoration: underline;
}



@media screen and (max-width:640px) {
	.sec_about_work {
		padding: calc(64 * 100vw / 375) 0;
	}

	.sec_about_work .txt_box .tit_en {
		font-size: calc(14 * 100vw / 375);
		text-align: center;
	}

	.sec_about_work .txt_box .tit {
		font-size: calc(24 * 100vw / 375);
		margin-top: calc(16 * 100vw / 375);
		text-align: center;
	}

	.sec_about_work .details_box {
		max-width: none;
		margin-top: calc(32 * 100vw / 375);
		flex-wrap: wrap;
		padding-left: calc(40 * 100vw / 375);
		padding-right: calc(40 * 100vw / 375);
	}

	.sec_about_work .details_box .details {
		max-width: none;
		width: 100%;
	}

	.sec_about_work .details_box .details + .details {
		margin-top: calc(40 * 100vw / 375);
	}

	.sec_about_work .details_box .details .ph {
		max-width: none;
		width: 100%;
	}

	.sec_about_work .details_box .details .ph img {
		width: 100%;
		height: auto;
	}

	.sec_about_work .details_box .details .title {
		font-size: calc(15 * 100vw / 375);
		margin-top: calc(16 * 100vw / 375);
	}

	.sec_about_work .details_box .details .title img {
		max-width: calc(40 * 100vw / 375);
		margin-right: calc(16 * 100vw / 375);
	}

	.sec_about_work .details_box .details .text {
		font-size: calc(12 * 100vw / 375);
		margin-top: calc(8 * 100vw / 375);
	}

}










.sec_about_message {
	margin-top: 20rem;
}

.sec_about_message .wrap {
	position: relative;
	max-width: 102.8rem;
	width: 100%;
	height: 70.9rem;
	display: flex;
	background-image: url(../img/about/sec_about_message_bg.png);
	padding-top: 9.6rem;
	padding-left: 30.4rem;
	box-sizing: border-box;
	margin: 0 auto;
}

.sec_about_message .message_area {
	max-width: 60.4rem;
	width: 100%;
}

.sec_about_message .ph_box .ph {
	position: absolute;
	left: -22.8rem;
	top: -4rem;
}

.sec_about_message .ph_box .ph img {
	vertical-align: bottom;
	width: 100%;
	height: auto;
}

.sec_about_message .txt_box .tit_en {
	font-family: "Bellefair", serif;
	font-size: 1.6rem;
	position: relative;
	letter-spacing: 0.1em;
	color: #009E96;
	position: relative;
}

.sec_about_message .txt_box .tit {
	font-size: 3.2rem;
	color: #009E96;
	line-height: 1.4;
	letter-spacing: 0.1em;
	font-weight: 500;
	margin-top: 1.6rem;
}

.sec_about_message .content_box .sub_tit {
	font-size: 2.2rem;
	line-height: 2.2;
	letter-spacing: 0.12em;
	margin-top: 5.6rem;
}

.sec_about_message .content_box .text {
	font-size: 1.4em;
	line-height: 2.8;
	letter-spacing: 0.12em;
	margin-top: 2.4rem;
}

@media screen and (max-width:640px) {
	.sec_about_message {
		margin-top: calc(80 * 100vw / 375);
	}

	.sec_about_message .wrap {
		max-width: none;
		width: auto;
		height: auto;
		background-image: none;
		padding-top: 0;
		padding-left: 0;
		flex-wrap: wrap;
		position: relative;
		padding-left: calc(30 * 100vw / 375);
		padding-right: calc(30 * 100vw / 375);
		margin-top: calc(40 * 100vw / 375);
	}


	.sec_about_message .wrap::before {
		content: "";
		width: calc(356 * 100vw / 375);
		height: calc(623 * 100vw / 375);
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		margin: auto;
		background-image: url(../img/about/sec_about_message_bg_sp.png);
		background-size: cover;
	}



	.sec_about_message .message_area {
		width: 100%;
		padding-bottom: calc(63 * 100vw / 375);
		padding-bottom: calc(20 * 100vw / 375);
	}

	.sec_about_message .ph_box {
		position: relative;
		left: 0;
		top: 0;
		box-sizing: border-box;
		z-index: 10;
	}

	.sec_about_message .ph_box .ph {
		position: relative;
		left: 0;
		top: 0;
	}

	.sec_about_message .ph_box .ph img {
		vertical-align: bottom;
		width: 100%;
		height: auto;
	}

	.sec_about_message .message_area {
		position: relative;
		z-index: 10;
	}

	.sec_about_message .txt_box .tit_en {
		font-size: calc(14 * 100vw / 375);
		text-align: center;
	}

	.sec_about_message .txt_box .tit {
		font-size: calc(24 * 100vw / 375);
		margin-top: calc(16 * 100vw / 375);
		text-align: center;
	}


	.sec_about_message .content_box .sub_tit {
		font-size: calc(15 * 100vw / 375);
		margin-top: calc(40 * 100vw / 375);
		margin-top: calc(10 * 100vw / 375);
	}

	.sec_about_message .content_box .text {
		font-size: calc(12 * 100vw / 375);
		margin-top: calc(16 * 100vw / 375);
	}

}
