@charset "UTF-8";

/* contents
   ========================================================= */
.contents{
	padding-bottom: 80px;
	border-bottom: 20px solid #00b4b4;
}
@media screen and (max-width: 768px) {
.contents{
	padding-bottom: 40px;
	border-bottom: 10px solid #00b4b4;
}
}

.contents h5.line{
	font-family: "gotham", 'Roboto', "Helvetica Neue", "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
	font-size: min(2.4rem, 24px);
	color:#00b4b4;
	/*letter-spacing:.08em;*/
	text-align:center;
	padding-bottom: 18px;
	margin-bottom: 20px;
	position:relative;
}
@media screen and (max-width:768px){
.contents h5.line{
	font-size: 1.6rem;
}
}

.contents h5.line:after{
	content:"";
	position:absolute;
	left:0;
	bottom:0;
	width:100%;
	height:1px;
	background:#00b4b4;
}

.contents h5 span{
	font-size: min(1.4rem, 14px);
	display: block;
	color:#000000;
	letter-spacing: 0;
}

/* IntroWrap
   ========================================================= */
.IntroWrap {
	margin-bottom: 80px;
}
@media screen and (max-width:768px){
.IntroWrap {
	margin-bottom: 40px;
}
}

.IntroWrap h3.ttl{
	margin-bottom: 60px;
}
@media screen and (max-width:768px){
.IntroWrap h3.ttl{
	margin-bottom: 40px;
}
}

/* Design-Wrap
   ========================================================= */
.Design-Wrap {
	margin-bottom: 80px;
}
@media screen and (max-width:768px){
.Design-Wrap {
	margin-bottom: 40px;
}
}

.design-obi {
	position: relative;
}
.design-img {
	max-width: 1000px;
	margin: -200px auto 40px;
	position: relative;
}
@media screen and (max-width:768px){
.design-img {
	margin: -80px auto 0px;
}
}

.Design-Wrap h6{
	text-align: center;
	font-size: min(2.4rem, 24px);
	letter-spacing: -0.02em;
	line-height: 1.4;
	margin-bottom: 20px;
	min-height: 80px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
        align-items: center;
}
@media screen and (max-width:768px){
.Design-Wrap h6{
	font-size: 1.6rem;
	min-height: 60px;
}
}

.Design-Wrap p.lead{
	text-align: left;
	font-size: min(1.4rem, 14px);
	letter-spacing: -0.05em;
	line-height: 1.9;
	margin-bottom: 20px;
}
@media screen and (max-width:768px){
.Design-Wrap p.lead{
	text-align: justify;
	font-size: 1.2rem;
}
}
/*
.btm-img{
	margin-top: auto;
}

.btm-img img{
	width:100%;
	display:block;
}
*/

@media screen and (max-width: 768px) {
.col2-wrap .item{
	width: 100%;
		margin-bottom: 0px;
}
.col2-wrap .item:last-child{
	margin-bottom: 0px;
}
}

/* LANDSCAPE DESIGN */

.prof-wrap{
	/*max-width: 1000px;
	margin: 60px auto 0;*/
	padding: 48px;
	border: 1px solid #00b4b4;
	display: grid;
	/*grid-template-columns: 42% 52%;
	column-gap: 6%;*/
	align-items: center;
}
@media screen and (max-width:768px){
.prof-wrap{
	padding: 20px;
	margin:20px auto 0;
	grid-template-columns: 100%;
}
.prof-wrap .item:first-child{
	margin-bottom: 0px;
}
}

.prof-wrap .btm{
	display: grid;
	grid-template-columns: 52% 42%;
	column-gap: 6%;
	align-items: flex-end;/*align-items: baseline;*/
	margin-top: auto;
}

.prof-wrap .name{
	font-size: min(1.4rem, 14px);
	line-height: 1.4;
}
@media screen and (max-width:768px){
.prof-wrap .name{
	font-size: 1.2rem;
	letter-spacing: 0;
}
}

.prof-wrap .name span{
	display: block;
	font-size: min(2.6rem, 26px);
	font-weight: 500;
	letter-spacing: .05em;
}
@media screen and (max-width:768px){
.prof-wrap .name span{
	display: block;
	font-size: 1.6rem;
}
}

.prof-wrap p.lead{
	text-align: justify;
	font-size: min(1.4rem, 14px);
	line-height: 2.0;
}

.LocationWrap.acc .txt-box{
	padding-left: 430px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
@media screen and (max-width: 768px) {
.LocationWrap .txt-box{
	display: block;
	max-width: 90%;
	padding: 60px 0 20px;
	margin: 0 auto;
}
.LocationWrap.acc .txt-box{
	padding: 80px 0 0;
}
}

.LocationWrap h6{
	text-align: left;
	font-size: min(2.4rem, 24px);
	line-height: 1.6;
	letter-spacing: -0.00em;
	margin-bottom: 30px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
@media screen and (max-width: 768px) {
.LocationWrap h6{
	font-size: 1.6rem;
	margin-bottom: 20px;
}
}

.LocationWrap p.lead{
	text-align: left;
	font-size: min(1.8rem, 18px);
	line-height: 1.6;
	letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
.LocationWrap p.lead{
	font-size: 1.4rem;
	/*margin-right: 140px;*/
	margin-right: 0px;
}
}

/* access */
.LocationWrap.acc p.lead{
	/*margin-left: 390px;*/
	float: none;
}
@media screen and (max-width: 768px) {
.LocationWrap.acc p.lead{
	float: none;
	margin-right: 0;
	/*margin-left: 140px;*/
	margin-left: 0px;
}
}













