@charset "UTF-8";
/*-----------------------------------

	headline

-----------------------------------*/
#headline h1::after {
	content: "Office";
}
/*-----------------------------------

	message_block

-----------------------------------*/
#message_block {
	padding-bottom: 100px;
}
#message_block .contents_inner {
	display: flex;
	justify-content: space-between;
}
#message_block .text_box {
	width: 65.6%;
}
#message_block .text_box h2 {
	font-size: 24px;
	font-weight: 700;
	position: relative;
	padding-top: 50px;
	margin-bottom: 70px;
}
#message_block .text_box h2::before {
	content: "Message";
	font-size: 80px;
	font-family: "Quicksand", sans-serif;
	color: rgba(64, 168, 165, 0.08);
	position: absolute;
	bottom: 0;
	left: 0;
}
#message_block .text_box .copy {
	font-size: 30px;
	font-weight: 700;
	margin-bottom: 60px;
}
#message_block .text_box .copy span {
	color: #40A8A5;
}
#message_block .text_box .copy span.b {
	font-size: 40px;
}
#message_block .text_box p {
	font-size: 16px;
	line-height: 2.19;
	font-weight: 600;
	margin-bottom: 2em;
}
#message_block .img_box {
	width: 23.4%;
	margin-right: 5%;
}
#message_block .img_box img {
	display: block;
	width: min(189px,100%);
	border-radius: 10px;
	filter: drop-shadow(90px 35px 0px #e4f0f0);
	margin-top: 30px;
	margin-bottom: 20px;
}
#message_block .img_box .details {
	font-weight: 700;
}
#message_block .img_box .details .title {
	display: block;
	font-size: 14px;
	color: #758E8D;
	margin-bottom: 6px;
	position: relative;
	z-index: 1;
}
#message_block .img_box .details .name {
	display: block;
	font-size: 20px;
	position: relative;
	z-index: 1;
}
#message_block .img_box .details .name::after {
	content: "Yuka Watanabe";
	font-size: 16px;
	font-family: "Quicksand", sans-serif;
	color: #ABCFCE;
	width: max-content;
	position: absolute;
	bottom: 5px;
	right: 0;
}
@media screen and (max-width: 1024px) {
	#message_block .text_box {
		width: 52%;
	}
	#message_block .text_box .copy {
		font-size: 27px;
	}
	#message_block .img_box {
		width: 30.4%;
	}
}
@media screen and (max-width: 840px) {
	#message_block .text_box h2 {
		font-size: 20px;
		padding-top: 40px;
		margin-bottom: 40px;
	}
	#message_block .text_box h2::before {
		font-size: 70px;
	}
	#message_block .text_box .copy {
		font-size: 21px;
		margin-bottom: 40px;
	}
	#message_block .text_box .copy span.b {
		font-size: 30px;
	}
	#message_block .img_box .details .name::after {
		font-size: 18px;
		bottom: -20px;
	}
}
@media screen and (max-width: 640px) {
	#message_block {
		padding-bottom: 70px;
	}
	#message_block .contents_inner {
		flex-wrap: wrap;
		gap: 30px;
	}
	#message_block .text_box {
		width: 100%;
	}
	#message_block .text_box p {
		font-size: 14px;
	}
	#message_block .img_box {
		width: 100%;
		margin-right: 0;
	}
	#message_block .img_box img {
		border-radius: 10px;
		margin-top: 0;
		margin-left: 5%;
		margin-bottom: 40px;
	}
	#message_block .img_box .details {
		margin-left: 5%;
	}
	#message_block .img_box .details .title {
		font-size: 16px;
		margin-bottom: 5px;
	}
	#message_block .img_box .details .name {
		font-size: 22px;
	}
	#message_block .img_box .details .name::after {
		bottom: 0px;
		right: auto;
		left: 120px;
	}
}
/*-----------------------------------

	overview_block

-----------------------------------*/
#overview_block h2 {
	font-size: 24px;
	font-weight: 700;
	position: relative;
	padding-top: 100px;
	margin-bottom: 70px;
}
#overview_block h2::before {
	content: "About";
	font-size: 129px;
	font-family: "Quicksand", sans-serif;
	color: rgba(64, 168, 165, 0.08);
	position: absolute;
	bottom: 0;
	left: 0;
	line-height: 1;
}
#overview_block .about_box {
	margin-bottom: 50px;
}
#overview_block .about_box .copy {
	font-size: 35px;
	font-weight: 700;
	margin-bottom: 30px;
}
#overview_block .about_box .copy span {
	color: #40A8A5;
}

#overview_block .about_box p {
	font-size: 16px;
	line-height: 2.19;
	font-weight: 600;
	margin-bottom: 2em;
}
#overview_block .about_box p:nth-child(4){
	margin-bottom: 0em;
}
#overview_block .overview_inner {
	background: #FFF;
	border-radius: 10px;
	padding: 70px 50px;
	display: flex;
	justify-content: space-between;
}
#overview_block .text_box {
	width: 48%;
	font-size: 16px;
	font-weight: 600;
}
#overview_block .text_box .overview_ttl {
	margin-bottom: 30px;
	font-size: 28px;
	position: relative;
	padding-left: 1em;
	font-weight: 700;
	    display: inline-block;
}
#overview_block .text_box .overview_ttl::before {
	content: "";
	position: absolute;
	width: 0.8em;
	height: 3px;
	background-color: #40A8A5;
	left: 0;
	top: 15px;
	border-radius: 10px;
	   display: inline-block;
}


#overview_block table {
	width: 100%;
	margin: 20px 0 40px;
}
#overview_block table tr > * {
	background: #F1F6F6;
	padding: 20px;
	text-align: left;
}
#overview_block table tr:nth-child(2n) > * {
	background: #FFF;
}
#overview_block table tr th {
	width: 110px;
	border-radius: 10px 0 0 10px;
	color: #40A8A5;
}
#overview_block table tr td {
	border-radius: 0 10px 10px 0;
}
#overview_block .map {
	max-width: 100%;
}
#overview_block .ggmap {
	width: 48%;
	position: relative;
	padding-bottom: 400px;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	border-radius: 10px;
}
#overview_block .ggmap iframe,
#overview_block .ggmap object,
#overview_block .ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
@media screen and (max-width: 840px) {
	#overview_block .overview_inner {
		padding: 40px;
		flex-wrap: wrap;
		gap: 50px;
	}
		#overview_block h2::before {
		font-size: 70px;
		bottom: 10px;
	}
	#overview_block .text_box {
		width: 100%;
	}
	#overview_block .ggmap {
		width: 100%;
	}
	#overview_block h2 {
		margin-bottom: 40px;
	}
		#overview_block .about_box .copy {
		font-size: 30px;
		margin-bottom: 20px;
	}
	#overview_block .about_box {
		width: 100%;
	}
}
@media screen and (max-width: 640px) {
	#overview_block h2 {
		font-size: 20px;
		padding-top: 30px;
		margin-bottom: 30px;
	}

	#overview_block .overview_inner {
		padding: 30px;
		gap: 30px;
	}
	#overview_block .text_box {
		font-size: 14px;
	}
	#overview_block table {
		margin: 10px 0 20px;
	}
	#overview_block table tr > * {
		padding: 15px;
	}
	#overview_block table tr th {
		width: 90px;
	}
	#overview_block .about_box p {
	font-size: 14px;
}
		#overview_block .about_box .copy {
		font-size: 24px;
	}
	#overview_block .text_box .overview_ttl {
		font-size: 24px;
	}
	#overview_block .text_box .overview_ttl::before {
	top: 12px;

}
}

@media screen and (max-width: 420px) {
	#overview_block .tiny {
		display: none;
	}
}
/*-----------------------------------

	Profile_block

-----------------------------------*/
#Profile_block {
	padding-bottom: 100px;
}
#Profile_block h2 {
	font-size: 24px;
	font-weight: 700;
	position: relative;
	padding-top: 100px;
	margin: 0 auto 70px;
}
#Profile_block h2::before {
	content: "Profile";
	font-size: 129px;
	font-family: "Quicksand", sans-serif;
	color: rgba(64, 168, 165, 0.08);
	position: absolute;
	bottom: 0;
	line-height: 1;
}

#Profile_block .Profile_bg {
						background-color: #e4f0f0;
			padding: 50px 50px;
			border-radius: 10px;
}
#Profile_block .text_box .copy {
	font-size: 35px;
	font-weight: 700;
	margin-bottom:5px;
}
#Profile_block .text_box .copy span {
	color: #40A8A5;
}
#Profile_block .text_box p {
	font-size: 16px;
	line-height: 2.19;
	font-weight: 600;
	margin-top: 5px;
}
#Profile_block .text_box p:nth-child(4){
	margin-bottom: 0em;
}
#Profile_block .text_box .job_text {
	font-size: 18px;
		margin-bottom: 30px;
		position: relative;
		padding-left: 1em;
}
#Profile_block .text_box .job_text::before {
	content: "";
	position: absolute;
	width: 0.8em;
	height: 3px;
	background-color: #40A8A5;
	left: 0;
	top: 10px;
	border-radius: 10px;
}
@media screen and (max-width: 1024px) {
	#Profile_block .text_box .copy {
		font-size: 27px;
	}
}

@media screen and (max-width: 840px) {
		#Profile_block h2 {
		font-size: 20px;
		padding-top: 40px;
		margin-bottom: 40px;
	}
	#Profile_block h2::before {
		font-size: 70px;
	}
	#Profile_block .text_box .copy {
		font-size: 30px;
		margin-bottom: 5px;
	}
	#Profile_block .text_box {
		width: 100%;
	}
	#Profile_block .Profile_bg {
	padding: 30px 30px;
}
}
@media screen and (max-width: 640px) {

	#Profile_block h2::before {
		font-size: 70px;
		bottom: 10px;
	}
		#Profile_block .text_box .copy {
		font-size: 24px;
	}
#Profile_block .text_box .job_text {
	font-size: 16px;
			margin-bottom: 20px;
}
	#Profile_block .text_box p {
	font-size: 14px;
}
#Profile_block {
	padding-bottom: 70px;
}
}