@charset "utf-8";
.main{
	position: relative;
  width: 100%;
  z-index: 2;
  overflow: hidden;
}
.main .kv_bg{
	position: relative;
}
/*.kv_bg img{
  width: 100%;
  height: 100%;
  max-width: initial;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition: 2s cubic-bezier(0.62, 0.02, 0.25, 1);
  transition: 2s cubic-bezier(0.62, 0.02, 0.25, 1);
}
.onLoad img{
  -webkit-transform: scale(1);
  transform: scale(1);
}*/
.main .kv_bg::before{
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	display: block;
	background-color: #f3f1f0;
	width: 100%;
	height: 100%;
	z-index: 2;
}
.main .kv_bg.onLoad::before{
  -webkit-transition: 1s cubic-bezier(0.62, 0.02, 0.25, 1);
  transition: 1s cubic-bezier(0.62, 0.02, 0.25, 1);
	width: 0;
}
.main .kv_bg .cap{
	position: absolute;
	bottom: 0;
	right: 0;
	margin: 5px;
	font-size: 12px;
	color: #fff;
}
.main h2 {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 214px;
  margin: auto;
	transform: translate(-50%,-50%);
  }
@media all and (max-width: 768px){
	.main .kv_bg .cap{
		font-size: 2.667vw;
	}
	.main h2 {
		width: 36.933%;
		}
}

.sec01{
	background: url("../img/common/bg01.jpg") center;
	padding: 90px 0;
  text-align:center;
  background-size:1400px;
  height:auto;
  background-repeat: repeat;
}
.sec01 .ttl{
	font-size:32px;
  line-height:1;
  color:#333;
  margin-bottom:40px;
  font-family: 'Shippori Mincho B1', serif;
}
.sec01 .txt{
	font-size:15px;
  line-height:1.8;
  color:#333;
  margin:-6px auto;
  font-family: 'Shippori Mincho B1', serif;
}
@media all and (max-width: 768px){
	.sec01{
		padding: 13.333% 0;
    background-size:auto;
	}
	.sec01 .ttl{
    font-size:5.867vw;
    line-height:1.444;
    margin:-0.533% auto 8%;
    letter-spacing: -0.12em;
  }
  .sec01 .txt{
    font-size:3.2vw;
    line-height:1.667;
    margin:-0.533% auto;
    letter-spacing: -0.04em;
  }
}

.sec02{
	padding: 90px 0;
  text-align:center;
  position:relative;
  overflow: hidden;
  background-color:#fff;
}
.sec02::before{
  content:'';
  display:block;
  position:absolute;
  top:0;
  left:0;
  background: url("../img/design/bg_d_concept_pc.jpg") no-repeat;
  background-size: 100%;
  width: 100%;
  height: 0;
  padding-bottom: 97.429%;
}
.sec02 .title{
	font-family: 'Cormorant Infant', serif;
	font-size:19px;
  line-height:1;
  color:#fff;
  letter-spacing: 0.1em;
	margin: 0 auto 40px;
}
.sec02 .ttl{
  font-family: 'Shippori Mincho B1', serif;
	font-size:28px;
  line-height:1;
  color:#fff;
	margin: 0 auto 40px;
  letter-spacing: -0.06em;
}
.sec02 .txt{
  font-family: 'Shippori Mincho B1', serif;
	font-size:15px;
  line-height:1.8;
  color:#fff;
	margin: -6px auto 82px;
  letter-spacing: -0.1  em;
}
.sec02 .img{
  display:block;
	max-width: 944px;
	margin: 0 auto 50px;
  position:relative;
}
.sec02 .img .cap{
  font-size:12px;
  position:absolute;
  bottom: 5px;
  right:0;
}

@media all and (max-width: 768px){
	.sec02{
		padding: 12% 0 6.667%;
	}
  .sec02::before{
    background: url("../img/design/bg_d_concept_sp.jpg") no-repeat;
    background-size: 100%;
    width: 100%;
    height: 0;
    padding-bottom: 171.2%;
  }
  .sec02 .title{
    font-size:3.2vw;
    margin: 0 auto 5.333%;
  }
  .sec02 .ttl{
    font-size:4.267vw;
    margin: 0 auto 5.333%;
  }
  .sec02 .txt{
    font-size:3.2vw;
    line-height:1.667;
    margin: -0.533% auto 6.667%;
    letter-spacing: -0.1em;
  }
	.sec02 .img{
    max-width: 100%;
    margin-bottom:43.333%;
  }
  .sec02 .img .cap{
    font-size:2.667vw;
    bottom: -4vw;
    right:0;
    margin:0.667% 1.333%;
  }
}

.sec03{
	padding: 90px 0;
  text-align:center;
  position:relative;
  overflow: hidden;
  background: rgb(20,35,51);
	background: -moz-linear-gradient(45deg,  rgb(20,35,51) 0%, rgb(20,35,51) 29%, rgb(62,92,123) 100%);
	background: -webkit-linear-gradient(45deg,  rgb(20,35,51) 0%,rgb(20,35,51) 29%,rgb(62,92,123) 100%);
	background: linear-gradient(45deg,  rgb(20,35,51) 0%,rgb(20,35,51) 29%,rgb(62,92,123) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#142333', endColorstr='#3e5c7b',GradientType=1 );
}
.sec03 .title{
	font-family: 'Cormorant Infant', serif;
	font-size:19px;
  line-height:1;
  color:#fff;
  letter-spacing: 0.1em;
	margin: 0 auto 35px;
}
.sec03 .ttl{
  font-family: 'Shippori Mincho B1', serif;
	font-size:28px;
  line-height:1.357;
  color:#fff;
	margin: -5px auto 30px;
  letter-spacing: -0.06em;
}
.sec03 .txt{
  font-family: 'Shippori Mincho B1', serif;
	font-size:15px;
  line-height:1.8;
  color:#fff;
	margin: -6px auto 95px;
  letter-spacing: -0.06em;
}
.sec03 .top_img{
  display:block;
	max-width: 100%;
	margin: 0 auto 25px;
  position:relative;
}
.sec03 .top_img .cap{
  font-size:12px;
  position:absolute;
  color:#fff;
  bottom: 8.214vw;
  right: 18.214vw;
}
.sec03 .imgWrap01{
  width:1100px;
  margin:0 auto 90px;
  display:flex;
  justify-content: space-between;
}
.sec03 .imgWrap01 .inner_box{
  width:330px;
}
.sec03 .imgWrap01 .img{
  margin-bottom:16px;
}
.sec03 .imgWrap01 .img + .txt{
  margin-bottom:0;
}
.sec03 .txt.under_txt{
  margin-bottom:35px;
}
.sec03 .img_box{
  width:680px;
  margin:0 auto;
  display:flex;
  justify-content: space-between;
  align-items: flex-start;
}
.sec03 .img_box .img{
  width:330px;
}
.sec03 .img_box .img .cap{
  font-size:12px;
  line-height:1;
  display:block;
  color:#fff;
  margin-top:5px;
  letter-spacing: -0.1em;
  white-space: nowrap;
  text-align: right;
}
.sec03 .img_box + .cap{
  font-size:12px;
  line-height:1;
  display:block;
  color:#fff;
  margin-top:35px;
  letter-spacing: -0.1em;
  text-align: center;
}

@media all and (max-width: 768px){
  .sec03{
    padding: 12% 0 17.333%;
  }
  .sec03 .title{
    font-size:3.2vw;
    margin: 0 auto 5.333%;
  }
  .sec03 .ttl{
    font-size:4.267vw;
    line-height:1.5;
    margin: -0.533% auto 5.333%;
  }
  .sec03 .txt{
    font-size:3.2vw;
    line-height:1.667;
    margin: -0.533% auto 10.933%;
    letter-spacing: -0.1em;
  }
  .sec03 .top_img{
    max-width: 100%;
    margin: 0 auto 3.333%;
    position:relative;
  }
  .sec03 .top_img .cap{
    font-size:2.667vw;
    bottom: 7.333%;
    right: 1.333%;
  }
  .sec03 .imgWrap01{
    width:100%;
    margin:0 auto 16%;
    display:block;
  }
  .sec03 .imgWrap01 .inner_box{
    width:66.667%;
    margin:0 auto 7.333%;
  }
  .sec03 .imgWrap01 .inner_box:last-child{
    margin-bottom:0;
  }
  .sec03 .imgWrap01 .img{
    margin-bottom:5%;
  }
  .sec03 .ttl.under_ttl{
    line-height:1.5;
    margin: -0.533% auto 6.4%;
  }
  .sec03 .txt.under_txt{
    margin-bottom:7.467%;
  }
  .sec03 .img_box{
    width:81.333%;
  }
  .sec03 .img_box .img{
    width:49.18%;
  }
  .sec03 .img_box .img .cap{
    font-size:2.667vw;
    margin-top:1.667%;
  }
  .sec03 .img_box + .cap{
    font-size:2.667vw;
    margin-top:4.667%;
  }

}


.sec04{
  text-align:center;
}
.sec04 .bg_img{
  position:relative;
  display:block;
}
.sec04 .bg_img .cap{
  position:absolute;
  bottom:0;
  right:0;
  margin:5px;
  color:#000;
  font-size:12px;
}
.sec04 .approachWrap{
  padding:90px 0 110px;
}
.sec04 .title{
	font-family: 'Cormorant Infant', serif;
	font-size:19px;
  line-height:1;
  color:#465563;
  letter-spacing: 0.1em;
	margin: 0 auto 40px;
}
.sec04 .ttl{
  font-family: 'Shippori Mincho B1', serif;
	font-size:28px;
  line-height:1;
  color:#333;
	margin: 0 auto 40px;
  letter-spacing: -0.06em;
}
.sec04 .txt{
  font-family: 'Shippori Mincho B1', serif;
	font-size:15px;
  line-height:1.8;
  color:#333;
	/*margin: -6px auto 50px;*/
  margin: -6px auto;
  letter-spacing: -0.06em;
}
.sec04 .greenWrap{
  padding:33px 0 100px;
  background: url("../img/common/bg01.jpg") center;
  background-size:1400px;
  height:auto;
  background-repeat: repeat;
}
.sec04 .greenWrap .topWrap{
  width:1100px;
  margin:0 auto 5px;
  display:flex;
  align-items: flex-start;
  justify-content: space-between;
}
.sec04 .greenWrap .topWrap .txtWrap{
  width:769px;
  text-align: left;
  margin-top:35px;
}
.sec04 .greenWrap .topWrap .txtWrap .title{
  margin-bottom:30px;
}
.sec04 .greenWrap .topWrap .txtWrap .ttl{
  margin-bottom:30px;
}
.sec04 .greenWrap .topWrap .txtWrap .txt{
  letter-spacing: -0.12em;
}
.sec04 .greenWrap .topWrap .fig_img{
  width:317px;
}
.sec04 .greenWrap .planWrap{
  width:1100px;
  margin:0 auto;
  display:flex;
  justify-content: space-between;
  align-items: flex-start;
}
.sec04 .greenWrap .planWrap .inner_box{
  width:356px;
  text-align:left;
}
.sec04 .greenWrap .planWrap .inner_box .ttl{
  font-size:24px;
  line-height:1;
  color:#6f6e48;
  border-bottom:1px solid #6f6e48;
  padding-bottom:8px;
  margin-bottom:20px;
}
.sec04 .greenWrap .planWrap .inner_box .imgWrap{
  display:flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.sec04 .greenWrap .planWrap .inner_box .imgWrap .plantbox{
  width:112px;
  margin-bottom:10px;
}
.sec04 .greenWrap .planWrap .inner_box .imgWrap .plantbox:nth-last-child(3),
.sec04 .greenWrap .planWrap .inner_box .imgWrap .plantbox:nth-last-child(2),
.sec04 .greenWrap .planWrap .inner_box .imgWrap .plantbox:last-child{
  margin-bottom:0;
}
.sec04 .greenWrap .planWrap .inner_box .imgWrap .name{
  font-size:12px;
  color:#333;
  margin-top:3px;
}
.sec04 .greenWrap .under_cap{
  width:1100px;
  margin:5px auto 0;
  font-size:12px;
  color:#333;
  text-align: left;
}

@media all and (max-width: 768px){
  .sec04 .bg_img .cap{
    font-size:2.667vw;
    margin:1.333%;
  }
  .sec04 .approachWrap{
    padding:12% 0;
  }
  .sec04 .title{
    font-size:3.2vw;
    margin: 0 auto 5.333%;
  }
  .sec04 .ttl{
    font-size:4.267vw;
    line-height:1.5;
    margin: -0.533% auto 6.667%;
  }
  .sec04 .txt{
    font-size:3.2vw;
    line-height:1.667;
    margin: -0.533% auto;
    letter-spacing: -0.1em;
  }
  .sec04 .greenWrap{
    padding:12% 0;
    background-size:auto;
  }
  .sec04 .greenWrap .topWrap{
    width:92%;
    margin:0 auto 7.333%;
    display:block;
  }
  .sec04 .greenWrap .topWrap .txtWrap{
    width:100%;
    margin-top:0;
    text-align: center;
  }
  .sec04 .greenWrap .topWrap .txtWrap .title{
    margin-bottom:5.072%;
  }
  .sec04 .greenWrap .topWrap .txtWrap .ttl{
    margin-bottom:5.072%;
  }
  .sec04 .greenWrap .topWrap .txtWrap .txt{
    letter-spacing: -0.08em;
    text-align: left;
    margin-bottom:8.696%;
  }
  .sec04 .greenWrap .topWrap .fig_img{
    width:81.159%;
    margin:0 auto;
  }
  .sec04 .greenWrap .planWrap{
    width:91.333%;
    display:block;
  }
  .sec04 .greenWrap .planWrap .inner_box{
    width:100%;
    margin-bottom:6.569%;
  }
  .sec04 .greenWrap .planWrap .inner_box:last-child{
    margin-bottom:0;
  }
  .sec04 .greenWrap .planWrap .inner_box .ttl{
    font-size:4.533vw;
    padding-bottom:1.168%;
    margin-bottom:2.92%;
  }
  .sec04 .greenWrap .planWrap .inner_box .imgWrap .plantbox{
    width:31.387%;
    margin-bottom:1.752%;
  }
  .sec04 .greenWrap .planWrap .inner_box .imgWrap .name{
    font-size:2.667vw;
    margin-top:1.46%;
  }
  .sec04 .greenWrap .under_cap{
    width:91.2%;
    margin:1.46% auto 0;
    font-size:2.667vw;
  }
}


.sec05{
  text-align:center;
  padding-bottom:130px;
}
.sec05 .bg_img{
  position:relative;
  display:block;
  margin-bottom:90px;
}
.sec05 .bg_img .cap{
  position:absolute;
  bottom:0;
  right:0;
  margin:5px;
  color:#fff;
  font-size:12px;
}
.sec05 .title{
	font-family: 'Cormorant Infant', serif;
	font-size:19px;
  line-height:1;
  color:#465563;
  letter-spacing: 0.1em;
	margin: 0 auto 40px;
}
.sec05 .ttl{
  font-family: 'Shippori Mincho B1', serif;
	font-size:28px;
  line-height:1;
  color:#333;
	margin: 0 auto 40px;
  letter-spacing: -0.06em;
}
.sec05 .txt{
  font-family: 'Shippori Mincho B1', serif;
	font-size:15px;
  line-height:1.8;
  color:#333;
	margin: -6px auto 50px;
  letter-spacing: -0.06em;
}
.sec05 .imgWrap{
  width:1100px;
  margin:0 auto;
  display:flex;
  justify-content: space-between;
}
.sec05 .imgWrap .imgbox{
  width:260px;
}
.sec05 .imgWrap .imgbox .txt{
  margin: 10px auto 0;
}

@media all and (max-width: 768px){
  .sec05{
    padding-bottom:12%;
  }
  .sec05 .bg_img{
    margin-bottom:12%;
  }
  .sec05 .bg_img .cap{
    font-size:2.667vw;
    margin:1.333%;
  }
  .sec05 .title{
    font-size:3.2vw;
    margin: 0 auto 5.333%;
  }
  .sec05 .ttl{
    font-size:4.267vw;
    line-height:1.5;
    margin: -0.533% auto 6.667%;
  }
  .sec05 .txt{
    font-size:3.2vw;
    line-height:1.667;
    margin: -0.533% auto 11.333%;
    letter-spacing: -0.1em;
  }
  .sec05 .imgWrap{
    width:100%;
    display:block;
  }
  .sec05 .imgWrap .imgbox{
    width:66.667%;
    margin:0 auto 7.733%;
  }
  .sec05 .imgWrap .imgbox:last-child{
    margin-bottom:0;
  }
  .sec05 .imgWrap .imgbox .txt{
    margin: 3.333% auto 0;
  }
}


.sec06{
  padding: 110px 0;
  background: url("../img/common/bg01.jpg") center;
  background-repeat: repeat;
  background-size: 1400px;
  height: auto;
}
.sec06 .corridorWrap{
  width:1100px;
  margin:0 auto;
  display:flex;
  justify-content: space-between;
  align-items: center;
}
.sec06 .corridorWrap .img{
  width:504px;
  position:relative;
}
.sec06 .corridorWrap .img .cap{
  position:absolute;
  bottom:0;
  right:0;
  margin:5px;
  font-size:12px;
  color:#fff;
}
.sec06 .corridorWrap .txtWrap{
  width:550px;
}
.sec06 .corridorWrap .txtWrap .title{
  font-family: 'Cormorant Infant', serif;
	font-size:19px;
  line-height:1;
  color:#465563;
  letter-spacing: 0.1em;
	margin: 0 auto 30px;
}
.sec06 .corridorWrap .txtWrap .ttl{
  font-size:28px;
  line-height:1;
  color:#333;
  margin-bottom:30px;
}
.sec06 .corridorWrap .txtWrap .txt{
  font-size:15px;
  line-height:1.8;
  color:#333;
  margin:-6px 0;
}

@media all and (max-width: 768px){
  .sec06{
    padding: 0;
    background-size:auto;
  }
  .sec06 .corridorWrap{
    width:100%;
    display:block;
  }
  .sec06 .corridorWrap .img{
    width:100%;
  }
  .sec06 .corridorWrap .img .cap{
    margin:0.667% 1.333%;
    font-size:2.667vw;
  }
  .sec06 .corridorWrap .txtWrap{
    width:100%;
    text-align: center;
    padding:12% 0 15.333%;
  }
  .sec06 .corridorWrap .txtWrap .title{
    font-size:3.2vw;
    margin: 0 auto 4%;
  }
  .sec06 .corridorWrap .txtWrap .ttl{
    font-size:4.267vw;
    line-height:1.5;
    margin-bottom:4.933%;
    letter-spacing: -0.1em;
  }
  .sec06 .corridorWrap .txtWrap .txt{
    font-size:3.2vw;
    line-height:1.667;
    margin:-0.533% 0;
    letter-spacing: -0.1em;
  } 
}



