@charset "UTF-8";

/* MainVisual
======================================================================*/

.MainVisual{
    padding: 160px 0;
    text-align: center;
}

.MainVisual h2{
   margin: 0;
}

@media screen and (max-width: 480px) {
.MainVisual{
    padding: 80px 0;
}
.MainVisual h2{
    margin: 0;
}
.MainVisual h2 img{ 
    max-width: 64px;
    height: auto;
}
}

/* design
======================================================================*/
.design{
    width: 100%;
    position: relative;
    /*margin-bottom: 80px*/
}

.design h3{
    font-size: 2.4rem;
    text-align: center;
    margin-bottom: 40px;
}

.design p.message{
    text-align: center;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    line-height: 3.0;
}

.design .phbox{
    width: 100%;
    position: relative;
    margin-top: 40px
}

.design .phbox img{
    width: 100%;
}

.design .phbox p.caption{
    position: absolute;
    font-size: 1.2rem;
    text-align: right;
    color: #ffffff;
    bottom: 5px;
    right: 8px;
    z-index: 3;
}

@media screen and (max-width: 768px){
.design{
    margin-bottom: 40px
}
.design h3{
    font-size: 1.8rem;
    text-align: center;
    margin-bottom: 30px;
}
.design p.message{
    text-align: justify;
    font-size: 1.4rem;
    letter-spacing: 0;
    line-height: 2.0;
}
.design .phbox{
    margin-top: 30px;
}
}



/* architect
======================================================================*/
.architect{
    width: 90%;
    max-width: 1000px;
    margin: 0 auto;
    position: relative;
    margin-bottom: 120px;
    z-index: 2;
    border-top: 1px solid #c8bb9b;
    border-bottom: 1px solid #c8bb9b;
    margin-top: -60px;
}

.architect .inner{
    padding: 0 90px 90px;
}

.architect h3{
    text-align: center;
    margin-bottom: 60px;
}
.architect h3 img{
    max-width: 100%;
    height: auto;
}

.architect h4{
    font-size: 2.8rem;
    text-align: center;
    margin-bottom: 60px;
}
@media screen and (max-width: 768px) {
.architect{
    margin-bottom: 60px;
}
.architect .inner{
    padding: 0 20px 30px;
}
.architect h3{
    margin-bottom: 30px;
}
.architect h4{
    font-size: 1.8rem;
    margin-bottom: 30px;
}
}

/*feat*/

.feat {
    width: 100%;
}

.feat h5{
    font-size: 2.2rem;
    line-height: 1.5;
    text-align: center;
    height: 100px;
    display: flex;
	flex-wrap: wrap;
	justify-content: center;
    align-items: center;
}
.feat p{
    font-size: 1.2rem;
    line-height: 2.0;
    text-align: justify;
}

.feat ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.feat li{
    width: 48%;
    margin-bottom: 80px;
}


@media screen and (max-width: 768px) {
.feat h5{
    font-size: 1.6rem;
}
.feat li{
    width: 100%;
    margin-bottom: 40px;
}
.feat li:last-child{
    margin-bottom: 0px;
}
}

/*prof_wrap*/

.prof_wrap{
    width: 100%;
    display: flex;
	flex-wrap: wrap;
	justify-content: space-between; 
    margin-bottom: 80px;
}
.prof_txt{
    width: calc(100% - 180px);
}
.prof_ph{
    width: 150px;
}
.prof_ttl{
	display: flex;
	flex-wrap: wrap;
    justify-content: space-between; 
    align-items: stretch;
    padding-bottom: 15px;
    margin-bottom: 15px;
    /*border-bottom: 1px solid #c8bb9b;*/
}
.prof_wrap h5{
    font-size: 2.0rem;
    text-align: left;
    line-height: 1.6;
}
.prof_wrap h5 span{
    font-size: 1.4rem;
    display: block;
}
.prof_wrap p.name{
    float: right;
    margin-top: auto;
    font-size: 2.2rem;
    line-height: 1.4;
    text-align: left;
}
.prof_wrap p.name span{
    font-size: 1.4rem;
    display: block;
}
.prof_wrap p.lead {
    font-size: 1.4rem;
    line-height: 1.6;
    text-align: justify;
}
.prof_wrap p.lead span{
    color: #c8bb9b;
}

@media screen and (max-width: 480px) {
.prof_txt{
    width: 100%;
    margin-bottom: 30px;
}
.prof_ph{
    width: 100%;
    max-width: 150px;
}
.prof_wrap h5{
    font-size: 1.6rem;
}
.prof_wrap h5 span{
    font-size: 1.2rem;
}
.prof_wrap p.name{
    font-size: 1.8rem;
}
.prof_wrap p.name span{
    font-size: 1.2rem;
}
.prof_wrap p.lead {
    font-size: 1.2rem;
}
}


/*lounge*/

.lounge{
    margin-bottom: 120px;
}

.lounge h3{
    font-size: 2.8rem;
    letter-spacing: 1px;
    margin-bottom: 40px;
    text-align: center;
}
.lounge p.lead{
    font-size: 1.6rem;
    line-height: 2.8;
    text-align: center;
}
.lounge .ttlbox{
    width: 100%;
    text-align: center;
    margin-bottom: 60px;
}
.lounge .phbox{
    width: 100%;
    margin: 60px auto;
    text-align: center;
    position: relative;
}
.lounge .phbox p{
    position: absolute;
    bottom: 5px;
    right: 8px;
    z-index: 3;
    color: #ffffff;
    font-size: 1.2rem;
}


@media screen and (max-width: 768px) {
.lounge{
    margin-bottom: 60px;
}
.lounge h3{
    font-size: 1.7rem;
    margin-bottom: 30px;
}
.lounge p.lead{
    font-size: 1.3rem;
    line-height: 2.0;
    text-align: justify;
}
.lounge .ttlbox{
    margin-bottom: 30px;
}
.lounge .phbox{
    margin: 30px auto;
}
}

/*lounge_box*/

.lounge_box{
    border: 1px solid #c8bb9b;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 30px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 30px;
}

.lounge_txt{
    width: 48%;
}

.lounge_ph{
    width: 48%;
    max-width: 480px;
}

.lounge_box p.tag{
    text-align: center;
    margin: 30px 0 50px;
}
.lounge_box h4{
    font-size: 2.0rem;
    text-align: center;
    margin-bottom: 20px;
}
.lounge_box p{
    text-align: justify;
    font-size: 1.2rem;
    line-height: 2.0;
}

@media screen and (max-width: 768px) {
    
.lounge_box h4{
    font-size: 1.6rem;
}

.lounge_box .lounge_txt{
    width: 100%;
    margin-bottom: 20px;
}
.lounge_box .lounge_ph{
    width: 100%;
}
}
