@charset "UTF-8";
/* CSS Document */
.pc{
    display: block;
}

/* .top-area */
.top-area{
    display: flex;
    max-width: 1200px;
    margin: 245px auto 265px;
    align-items: center;
    padding: 0 18px;
}

.top-title img{
    width: 95%;
}

.top-lead{
    line-height: 2.2;
    font-weight: bold;
    width: 48%;
    margin-left: 2%;
}
.top-lead p{
    margin-bottom: 20px;
}

/* works-sec pc */
.work-sec{
    margin-bottom: 128px;
}
.sec-ttl{
    display: flex;
    align-items: center;
    margin-bottom: 72px;
}
.sec-ttl .eng{
    position: relative;
    display: block;
    font-family: 'Source Serif Pro', serif;
    font-size: 7.2rem;
    font-weight: 400;
    padding-left: 20px;
}
.sec-ttl .jpn{
    display: block;
    font-size: 2.0rem; 
    font-weight: 500;
    margin-left: 30px;
}
.eng::before{
    content: "";
    position: absolute;
    left: 0;
    top:50%;
    transform: translateY(-50%);
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #F58A00;
}
.works-list{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .work-sec ul li{
    width: 47%;
    margin-bottom: 64px;
  }
  .works-list-detail{
      display: block;
      font-size: 1.2rem;
      color: #F58A00;
      margin: 24px 0 8px;
  }
  .works-ttl{
    font-size: 2.0rem;
    line-height: 1.8;
    font-weight: bold;
  }
  .works-ttl a{
      color: #333;
  }

.list-pic img {
	display: block;
	transition: 0.5s;
}
/* hover action*/
@media(min-width:1200px){
.list-pic img:hover {
    transform: scale(0.98, 0.98);
    }
}/* hover action*/


/* blog_sec */
.blog-sec{
    margin-bottom: 128px;
}
.blog-sec{
    background-color: #fff;
    padding: 88px 0;
}
.blog-list{
    margin: 64px 0;
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
}
.blog-list li{
    width: 32%;
}
.blog-list-pic img{
    display: block;
	transition: 0.5s;
}

.blog-category{
    font-size: 1.2rem;
    color: #F58A00;
    margin: 24px 0 8px;
}

.blog-ttl{
    font-size: 2.0rem;
    line-height: 1.8;
    font-weight: bold;
    margin-bottom: 4px;
}
.blog-ttl a{
    color: #333;
}
.blog-time{
    font-size: 1.2rem;
    color: #737373;
}

/* hover action*/
@media(min-width:1200px){
.blog-list-pic img:hover {
    transform: scale(0.98, 0.98);
}
}/* hover action*/

  /* contact_sec */
.contact-sec{
    margin-bottom: 128px;
}
.contact-sec h2{
    font-family: 'Source Serif Pro', serif;
    font-size: 7.2rem;
    font-weight: 400;
    text-align: center;
    margin-bottom: 40px;
}
.contact-sec p{
    text-align: center;
    line-height: 2.0;
    margin-bottom: 40px;
}
.contact-btn a{
    border-radius: 100px;
    color: #fff;
    background-color: #F58A00;
    display: block;
    width: 100%;
    max-width: 500px;
    padding: 24px 8px;
    margin: 0 auto;
    text-align: center;
    transition: 0.3s;
}
/* .contact-btn a::after{
    content: "";
    position: absolute;
    display: block;
    top: 43%;
    right: 10%;
    width: 12px;
    height: 12px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    transform: rotate(45deg);
} */

@media(max-width:768px){
.pc{
    display: none;
}
.key-visial{
    height: 400px;
}
.works-ttl{
    line-height: 2.0;
}
.about_sec_area{
    flex-direction: column;
    margin: 0 auto;
    text-align: center;
}
.about_sec_pic{
    width: 60%;
    margin: 0 auto;
}
.about_sec_lead{
    width: 100%;
}
.about_text{
    text-align: left;
}
.list-pic{
    margin-bottom: 0;
    height: auto;
}
}
@media(max-width:599px){
.site-title{
    display: none;
    margin-right: 0;
}
.site-title-sp{
    display: block;
    width: 70%;
    margin-right: auto;
    padding: 20px 0 20px
}
.top-area{
    flex-direction: column;
    margin: 100px auto 72px;
}
.top-title img{
    width: 100%;
}
.top-title{
margin-bottom: 48px;
}
.top-lead{
    width: 100%;
    font-size: 1.4rem;
}
.key-visial{
    height: auto;
    width: 100%;
}
.work-sec{
    margin-bottom: 72px;
}
.sec-ttl{
    flex-direction: column;
    text-align: center;
    margin-bottom: 40px;
}
.sec-ttl .eng{
font-size: 4.8rem;
}
.sec-ttl .jpn{
    font-size: 1.4rem;
    margin-left: 5px;
    margin-top: 24px;
}
.works-list{
    flex-direction: column;
    flex-wrap: nowrap;
}
.work-sec ul li{
    width: 100%;
    margin-bottom: 40px;
}
.works_list-detail{
    font-size: 1.0rem;
    margin: 10px 0 5px;
}
.works-ttl{
    font-size: 1.6rem;
    line-height: 1.6;
}
.blog-sec{
    margin-bottom: 72px;
    padding:64px 0 ;
}
.blog-list{
    display: block;
    margin: 0;
}
.blog-list li{
    width: 100%;
    margin-bottom: 40px;
}
.blog-ttl{
    font-size: 1.6rem;
    line-height: 1.6;
}

.contact-sec{
    margin-bottom: 72px;
}
.contact-sec h2{
    font-size: 4.8rem;
    margin-bottom: 40px;
}
.contact-sec p{
    font-size: 1.4rem;
    line-height: 2.2;
}
.contact-btn a{
    width: 100%;
    font-size: 1.2rem;
    padding: 20px 8px;
    max-width: 340px;
}
}