@charset "UTF-8";
/*===============================================
●mian.css 画面の横幅が770px以上
===============================================*/
@media screen and (min-width: 770px){
.list_bg {
    background-image: url(../img/list/bg_01.jpg);
    background-size: cover;
}
#top_conts {
    margin-top: 42px;
    margin-bottom: 54px;}
#top_conts .auto {
    position: relative;
}
#top_conts .l_box {
    width: 582px;
}
#top_conts .l_box .lead {
    width: 524px;
    margin-bottom: 18px;
}
#top_conts .l_box .box {
    height: 238px;
    background-image: url(../img/designteam/bg_01.png);
    background-size: 582px;
    position: relative;
    z-index: 999;
}
#top_conts .l_box .box .img {
    width: 308px;
    position: absolute;
    top: -18px;
    left: 18px;
}
#top_conts .l_box .box .text {
    position: absolute;
    top: 38px;
    right: 19px;
    font-size: 15px;
    line-height: 25px;
    letter-spacing: -.03em;
}
#top_conts .r_img {
    width: 654px;
    height: 653px;
    position: absolute;
    z-index: 99;
    top: -135px;
    right: 0px;
}
#top_conts .r_img::before {
    content: "";
	display: block;
	width: 301px;
    height: 106px;
	background-image: url("../img/designteam/illust_04.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
    position: absolute;
    left: 166px;
    top: 28px;
}
#top_conts .r_img::after {
    content: "";
	display: block;
	width: 142px;
    height: 141px;
	background-image: url("../img/designteam/illust_03.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
    position: absolute;
    right: 61px;
    top: 4px;
	-webkit-animation: ShakeA 1s ease-in-out infinite alternate;
}
#flow_conts {
    margin-bottom: 50px;
}
#flow_conts h2 {
    margin-bottom: 64px;
}
#flow_conts ul {
}
#flow_conts ul li {
    width: 334px;
    float: left;
    position: relative;
    margin-right: 22px;
}
#flow_conts ul li .img {
    margin-bottom: 13px;
}
#flow_conts ul li .text {
    font-size: 15px;
    line-height: 23px;
}
#flow_conts ul li:nth-child(2) {
    width: 487px;
}
#flow_conts ul li:nth-child(2) .text {
    width: 190px;
    position: absolute;
    top: 268px;
}
#flow_conts ul li:nth-child(2) .illust {
    width: 125px;
    position: absolute;
    top: 35px;
    right: 0px;
}
#flow_conts ul li:nth-child(2) .illust2 {
    width: 206px;
    position: absolute;
    top: -45px;
    right: 18px;
}
#flow_conts ul li:last-of-type {
    margin-right: 0px;
}
#construction_conts {
    height: 912px;
    margin-bottom: 44px;
}
#construction_conts .auto {
    position: relative;
}
#construction_conts h3 {
    margin-bottom: 20px;
}
#construction_conts .img {
    position: absolute;
}
#construction_conts .img_01 {
    width: 487px;
    top: 125px;
    left: 40px;
}
#construction_conts .img_02 {
    width: 544px;
    top: 121px;
    right: 60px;
}
#construction_conts .img_03 {
    width: 345px;
    top: 497px;
    left: 249px;
}
#construction_conts .img_04 {
    width: 455px;
    top: 552px;
    right: 109px;
}
#about_conts {
    position: relative;
    z-index: 999;
}
#about_conts .box {
    background-image: url(../img/designteam/bg_02.png);
    background-size: 765px;
    width: 765px;
    height: 533px;
    margin: 0 auto;
    position: relative;
}
#about_conts .box::before {
    content: "";
    display: block;
    background-image: url(../img/designteam/illust_05.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    width: 140px;
    height: 177px;
    position: absolute;
    top: 273px;
    right: 120px;
	animation: SwayA 1.6s ease-in-out infinite;
    transform-origin: right bottom;
    animation-delay: -.4s;
}
#about_conts dl {
    width: 555px;
    margin: 0 auto;
    color: #221815;
    padding-top: 71px;
}
#about_conts dl dt {
    font-size: 32px;
    font-weight: bold;
    margin-bottom: 11px;
}
#about_conts dl dd {
    font-size: 20px;
    line-height: 31px;
    margin-bottom: 34px;
}
footer {
    margin-top: -421px;
    position: relative;
    z-index: 99;
}
}
/*===============================================
●sp.css  画面の横幅が769pxまで（iPhone6 横向きまで）
===============================================*/
@media screen and (max-width:769px){
.list_bg {
    background-image: url(../img/list/bg_01.jpg);
    background-size: cover;
}
#top_conts {
    margin-bottom: 54px;
}
#top_conts .auto {
    position: relative;
}
#top_conts .l_box {
    width: 100%;
    clear: both;
    margin-bottom: 18px;
}
#top_conts .l_box .lead {
    margin-bottom: 20px;
}
#top_conts .l_box .box {
    width: 100%;
    background-image: url(../img/designteam/bg_01_sp.jpg);
    position: relative;
    z-index: 999;
    background-size: 30px;
    border-radius: 20px;
    padding-bottom: 20px;
}
#top_conts .l_box .box .img {
    width: 76%;
    margin: 0 auto 15px;
}
#top_conts .l_box .box .text {
    font-size: 1.4rem;
    line-height: 1.5;
    margin: 0 20px;
}
#top_conts .r_img {
    margin-top: -10px;
    position: relative;
}
#top_conts .r_img::before {
    content: "";
	display: block;
	width: 46%;
    height: 15vw;
	background-image: url("../img/designteam/illust_04.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100%;
    position: absolute;
    left: 20%;
    top: 4vw;
}
#top_conts .r_img::after {
    content: "";
	display: block;
	width: 22%;
    height: 20vw;
	background-image: url("../img/designteam/illust_03.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
    position: absolute;
    right: 14%;
    top: 0;
	-webkit-animation: ShakeA 1s ease-in-out infinite alternate;
}
#flow_conts {
    margin-bottom: 6px;
}
#flow_conts h2 {
    margin-bottom: 22px;
    line-height: 1.4;
}
#flow_conts ul {
}
#flow_conts ul li {
    position: relative;
    margin-bottom: 30px;
}
#flow_conts ul li .img {
    margin-bottom: 11px;
}
#flow_conts ul li .text {
}
#flow_conts ul li:nth-child(2) .illust2 {
    width: 254px;
    padding-right: 50px;
    margin: 10px auto 0;
}
#flow_conts ul li:nth-child(2) .illust {
    width: 156px;
    padding-left: 50px;
    margin: -24px auto 0;
}
#flow_conts ul li:last-of-type {
    margin-right: 0px;
}
#construction_conts {
    margin-bottom: 32px;
}
#construction_conts .auto {
    position: relative;
}
#construction_conts h3 {
    margin-bottom: 7px;
}
#construction_conts .img {
}
#construction_conts .img_01 {
    width: 77%;
    margin-bottom: 10px;
}
#construction_conts .img_02 {
    width: 81%;
    margin-left: 19%;
    margin-bottom: 20px;
}
#construction_conts .img_03 {
    width: 52%;
    margin-bottom: 10px;
}
#construction_conts .img_04 {
    width: 66%;
    margin-left: 26%;
}
#about_conts {
    position: relative;
    z-index: 999;
}
#about_conts .box {
    background-image: url(../img/designteam/bg_02.png);
    background-size: 100%;
    background-repeat: no-repeat;
    margin: 0 auto;
    height: 66vw;
    position: relative;
}
#about_conts .box::before {
    content: "";
    display: block;
    background-image: url(../img/designteam/illust_05.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    width: 18%;
    height: 19vw;
    position: absolute;
    top: 36vw;
    right: 16%;
	animation: SwayA 1.6s ease-in-out infinite;
    transform-origin: right bottom;
    animation-delay: -.4s;
}
#about_conts dl {
    width: 80%;
    margin: 0 auto;
    color: #221815;
    padding-top: 6vw;
}
#about_conts dl dt {
    font-size: 4vw;
    font-weight: bold;
    margin-bottom: 2px;
}
#about_conts dl dd {
    font-size: 2.8vw;
    line-height: 1.4;
    margin-bottom: 2vw;
}
}