@charset "utf-8";
/* CSS Document */
/*------------------
  Worksページ
-------------------*/

/*------------------
  タイトル
-------------------*/
#works .page_title .wrapper {
    max-width: 1080px;
    width: 100%;
    margin: 0 auto;
    position: relative;
    min-height: 220px;
}
#works .page_title .wrapper .under_wrap {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
}
#works .page_title .wrapper h1 {
    color: #fff;
}

/*------------------
  共通
-------------------*/
.main_contents .temp {
    background-color: #fff;
}
.main_contents .temp .wrapper {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    position: relative;
    padding: 80px 0;
}
.main_contents .planning_box .wrapper,
.main_contents .design_box .wrapper {
    background: linear-gradient(90deg, #fff 0%, #fff 10%, #f2f2f2 10%, #f2f2f2 100%);
}
.main_contents .photo_box .wrapper {
    background: linear-gradient(90deg, #f2f2f2 0%, #f2f2f2 90%, #fff 90%, #fff 100%);
}
.main_contents .temp .wrapper:after {
    content: "";
    background-color: #f2f2f2;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%;
}
.main_contents .planning_box .wrapper:after {
    left: 100%;
}
.main_contents .photo_box .wrapper:after {
    right: 100%;
}
.main_contents .design_box .wrapper:after {
    left: 100%;
}
.main_contents .temp ul {
    display: flex;
    justify-content: space-between;
    width: 100%;
    flex-wrap: wrap;
}
/* 最後のコンテンツを左寄せにする指定 */
.main_contents .temp ul:after {
    content: "";
    display: block;
    width: 32%;  /* .boxに指定したwidthと同じ幅を指定する */
    height: 0;
}   
.main_contents .temp ul li {
    max-width: 330px;
    width: 100%;
     background-color: #fff;
     text-align: left;
     box-shadow: 0px 3px #ccc;
     margin-bottom: 3rem;
}
.main_contents .temp ul li h3 {
    padding: 15px;
}
.main_contents .temp ul li img {
    width: 100%;
    height: auto;
}
.main_contents .temp ul li .txt {
    padding: 15px;
    font-size: 14px;
}
.main_contents .temp ul li .url {
    padding: 0px 15px 30px 15px;
}
.main_contents .temp ul li .url_title {
    padding: 5px;
    font-size: 12px;
    background-color: #f2f2f2;
    font-weight: bold;
}
.main_contents .temp ul li .url a {
    font-size: 12px;
    color: blue;
    word-break: break-all;
}
.main_contents .temp ul li .tag {
    padding: 0 15px;
    display: block;
}
.main_contents .temp ul li .tag li {
    display: inline-block;
    background-color: #eee;
    width: auto;
    font-size: 12px;
    margin-right: 10px;
    padding: 5px 6px;
    margin-bottom: 10px;
}








/*------------------
  スマホ対応
-------------------*/   
@media screen and (max-width:501px) {
#works .page_title .wrapper .under_wrap {
    box-sizing: border-box;
    padding-left: 10%;
}
#works .main_contents h2 {
    font-size: 240%;
}
#works .page_title .title_jp {
    font-size: 100%;
}
 #works .main_contents .title_jp {
    font-size: 110%;
    margin-top: 1rem;
    margin-bottom: 30px;
}
.main_contents .temp .wrapper {
    padding: 20px 0;
}
.main_contents .planning_box .wrapper, 
.main_contents .design_box .wrapper {
    background: linear-gradient(90deg, #fff 0%, #fff 15%, #f2f2f2 15%, #f2f2f2 100%);
}
.main_contents .photo_box .wrapper {
    background: linear-gradient(90deg, #f2f2f2 0%, #f2f2f2 85%, #fff 85%, #fff 100%);
}
.main_contents .temp ul {
    display: block;
}
.main_contents .temp ul li {
    max-width: 500px;
    margin-bottom: 2rem;
}
}










