@charset "utf-8";
/* CSS Document */

/* PC・SP共通 */
.pankuzu {
  display: none;
}
.contentsTitle {
  display: none;
}

/*　PC用　*/
@media screen and (min-width: 751px) {
  /*-------------------------
  .main
  -------------------------*/
  .main {
    width: 100%;
    min-width: 960px;
    height: 780px;
    background: #000;
  }

  /* メインスライド */
  #gn {
    width: 100%;
    height: 100%;
    max-width: 1920px;
    overflow: hidden;
    margin: 0 auto;
  }
  #gn ul {
    position: relative;
    width: 105%;
    height: 100%;
  }
  #gn ul li {
    position: relative;
    float: left;
    overflow: hidden;
    width: 25%;
    height: 100%;
    cursor: pointer;
  }
  #gn ul li:before {
    content: " ";
    border-left: 1px solid #fff;
    width: 1px;
    height: 100%;
    left: 0;
    right: 0;
    position: absolute;
    display: block;
    z-index: 2;
  }
  #gn ul li:first-child:before {
    display: none;
  }
  #gn ul li .visual {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    background-position: center center;
    /* background-size: 600px auto; */
    background-size: auto 135%;
    /* background-size: auto 100%; */
    /* 960 */
    background-repeat: no-repeat;
  }
  #gn #gn-company .visual {
    background-position: right center;
  }
  #gn h2 {
    position: absolute;
    top: 38px;
    left: 30px;
    display: block;
    width: 231px;
    height: 187px;
    z-index: 3;
    text-indent: -9999px;
    background-repeat: no-repeat;
    background-size: 60% auto;
  }
  #gn-about h2 {
    background-image: url(../img/h2_about2.png);
    width: 238px;
    height: 187px;
  }
  #gn-consulting h2 {
    background-image: url(../img/h2_consulting.png);
    width: 163px;
    height: 181px;
  }
  #gn-lp h2 {
    background-image: url(../img/h2_lp_01.png);
    width: 173px;
    height: 188px;
  }
  #gn-gallery h2 {
    background-image: url(../img/h2_gallery_01.png);
    width: 188px;
    height: 184px;
  }
  #gn-company h2 {
    background-image: url(../img/h2_company.png);
    width: 202px;
    height: 187px;
  }
  #gn .visual960 h2 {
    background-size: 100% auto;
  }
  #gn .visual800 h2 {
    background-size: 80% auto;
  }
  #gn .visual640 h2,
  #gn .visual683 h2 {
    background-size: 70% auto;
  }
  #gn ul li a {
    color: #fff;
    display: block;
    width: 100%;
    height: 100%;
  }
  #gn li a .gnContent {
    position: absolute;
    bottom: -500px;
    left: 0;
    right: 0;
    z-index: 2;
    opacity: 0;
  }
  #gn .gnContent div {
    position: absolute;
    bottom: 0;
    left: 0;
    line-height: 1.5;
    padding: 50px 30px 25px;
    /* visibility: hidden; */
    background: url("../img/bg_titleshadow01.png") repeat-x 0 bottom;
    background-size: 100% 130%;
  }
  #gn .gnContent p {
    display: block;
    width: 100%;
    font-size: 20px;
    font-weight: bold;
    margin-left: 50px;
    opacity: 0;
  }
  #gn .visual640 .gnContent p,
  #gn .visual683 .gnContent p {
    font-size: 24px;
  }
  #gn .visual800 .gnContent p {
    font-size: 28px;
  }
  #gn .visual960 .gnContent p {
    font-size: 32px;
  }
  #gn a:hover .gnContent div {
    display: block;
  }
  #gn .gnContent p span {
    color: #ffd900;
  }
  #gn ul li .lpLink,
  #gn ul li .galleryLink {
    width: 135px;
    height: 36px;
    box-sizing: border-box;
    margin: 10px 15px 0 0;
    padding: 0;
    line-height: 36px;
    display: inline-block;
    color: #211713;
    font-size: 12px;
    font-weight: normal;
    border: 1px solid #d6d6d6;
    background: #fff url(../img/bg_arrow01.png) right 20px center no-repeat;
    border-radius: 5px;
    text-align: center;
    outline: none;
    cursor: pointer;
    text-decoration: none;
  }
  #gn ul li .lpLink {
    width: 200px;
  }
  #gn ul li .lpLink:hover,
  #gn ul li .galleryLink:hover {
    color: #5eac3a;
  }
  #gnspSlide {
    display: none !important;
  }
  /* コンテンツ */
  .contentsWrap {
    display: flex;
    justify-content: space-between;
    width: 980px;
    margin: 30px auto;
  }

  /* コンテンツ左-メイン */
  .contentsInner {
    width: 660px;
  }
  .contentsInner h2,
  #download h2 {
    font-size: 20px;
    font-weight: bold;
    clear: both;
  }
  .contentsInner h2 span,
  .tabItem + span {
    width: 180px;
    height: 26px;
    line-height: 26px;
    float: right;
    display: block;
    font-size: 12px;
    font-weight: normal;
    border: 1px solid #d6d6d6;
    background: #fff url(../img/bg_arrow01.png) 160px center no-repeat;
    border-radius: 5px;
    text-align: center;
  }
  .contentsInner h2 span a,
  .tabItem + span a {
    display: block;
    text-decoration: none;
  }
  .contentsInner div {
    background: #f2f2f2;
    padding: 30px 30px 34px;
    margin-bottom: 45px;
    margin-top: 15px;
  }
  .contentsInner li {
    height: 40px;
    line-height: 40px;
    border-bottom: 1px solid #e8e8e8;
    font-size: 14px;
    background: url(../img/bg_arrow02.png) 595px center no-repeat;
  }
  .contentsInner li a {
    display: inline-block;
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-decoration: none;
    color: #333;
  }
  .contentsInner li a:hover {
    text-decoration: underline;
    color: #5eac39;
  }
  .contentsInner li img {
    display: none;
  }
  .contentsInner li.new img {
    display: inline;
    vertical-align: middle;
    margin-left: 5px;
  }
  .contentsInner li span {
    font-size: 13px;
    color: #878787;
    display: inline-block;
  }

  .contentsInner .consulting span {
    width: 90px;
    margin-right: 20px;
  }
  .contentsInner #blog li a {
    background: url(../img/bg_balloon.png) left center no-repeat;
    padding-left: 25px;
    color: #5eac39;
  }
  .contentsInner #blog li a:hover {
    text-decoration: underline;
  }

  /*----- news -----*/
  input[name="tabItem"] {
    display: none;
  }
  .tabItem {
    display: inline-block;
    width: 90px;
    height: 30px;
    line-height: 30px;
    margin: 10px 5px 0 0;
    text-align: center;
    background: #e4e4e4;
    position: relative;
    color: #111;
    font-size: 13px;
    cursor: pointer;
  }
  input:checked + .tabItem {
    background: #f2f2f2;
  }
  #consulting + .tabItem {
    width: 170px;
  }
  #property + .tabItem {
    margin-right: auto;
  }
  .tabItem:before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 0px 0 10px;
    border-color: #f7f7f7 transparent transparent transparent;
    position: absolute;
    top: 0;
    right: 0;
  }
  .news_list {
    display: none;
    margin: 0 0 45px;
    padding: 30px 30px 34px;
    background: #f2f2f2;
  }
  .contentsInner li .date {
    width: 88px;
  }
  .contentsInner li span.tag {
    width: 60px;
    height: 20px;
    margin: 0 15px;
    line-height: 20px;
    vertical-align: middle;
    text-align: center;
    color: #fff;
    font-size: 10px;
    font-weight: bold;
  }
  .contentsInner li span.newIcon {
    width: 40px;
    height: 20px;
    margin: 10px;
    line-height: 20px;
    text-align: center;
    background: #fdd900;
    color: #111;
    font-size: 12px;
    font-weight: bold;
  }
  .contentsInner li.notice span.tag {
    background: #5eac3a;
  }
  .contentsInner li.property span.tag {
    background: #f7b509;
  }
  .contentsInner li.newProperty span.tag {
    background: #ffda00;
    color: #222;
    font-size: 12px;
  }
  .contentsInner li.contract span.tag {
    background: #5eac3a;
    color: #222;
    font-size: 12px;
  }
  .contentsInner li.reform span.tag {
    background: #d6d0bc;
    color: #222;
  }
  .contentsInner li.consulting span.tag {
    display: none;
  }

  .blogLink {
    display: none;
  }
  /*選択されているタブのコンテンツのみを表示*/
  #all:checked ~ #all-list,
  #notice:checked ~ #notice-list,
  #property:checked ~ #property-list,
  #construction:checked ~ #construction-list,
  #consulting:checked ~ #consulting-list {
    display: block;
  }
  .contentsJws {
    text-align: center;
    font-size: 20px;
  }
  .contentsJws a {
    text-decoration: none;
    line-height: 1.5;
  }
  .contentsJws img {
    display: inline-block;
    margin-bottom: 20px;
  }

  /* コンテンツ右-バナー */
  .sideBnr {
    width: 290px;
  }
  .sideBnrList dt {
    display: none;
  }
  .sideBnrList dd {
    margin-bottom: 10px;
  }
  .sideBnrList dd img {
    width: 100%;
    height: auto;
  }
}

/*　SP用　*/
@media screen and (max-width: 750px) {
  /*-------------------------
  .main
  -------------------------*/
  .main {
    height: auto !important;
  }

  /* メインスライド */
  #gnSlide {
    display: none;
  }
  #gnspSlide {
    position: relative;
  }
  .slick-slide li {
    width: 100%;
    height: auto;
  }
  .slick-slide li img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
  }
  .slick-slide {
    display: block;
    width: 100%;
  }
  /* コンテンツ */
  .contentsWrap {
    margin: 40px 0 70px;
  }

  /* 左コンテンツ */
  .contentsInner {
    margin: 0 15px;
  }

  /* news */
  .contentsNews {
    position: relative;
    margin-bottom: 80px;
    padding-bottom: 70px;
  }
  .contentsNews h2 {
    font-size: 25px;
    font-weight: bold;
    clear: both;
  }
  .contentsNews h2 span {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
  }
  .contentsNews .tabItem + span {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
  }
  .contentsNews .tabItem + span a {
    position: relative;
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: 50px;
    padding: 14px 0;
    background: #fff;
    border: 1px solid #d6d6d6;
    border-radius: 3px;
    font-size: 15px;
    line-height: 20px;
    text-decoration: none;
    text-align: center;
  }
  .contentsNews .tabItem + span a:after {
    content: "";
    position: absolute;
    top: 20px;
    right: 20px;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 0 4px 5px;
    border-color: transparent transparent transparent #693;
  }
  .contentsNews li {
    margin-bottom: 10px;
    border-bottom: 1px solid #e8e8e8;
    font-size: 15px;
    background: url(../img/sp/bg_arrow02.png) no-repeat right center / 6px 11px;
  }
  .contentsNews li:last-child {
    border-bottom: none;
  }
  .contentsNews li a {
    display: inline-block;
    box-sizing: border-box;
    width: 100%;
    text-decoration: none;
    color: #333;
    padding: 0 15px 10px 0;
    line-height: 1.6;
  }
  .contentsNews li img {
    display: none;
  }
  .contentsNews li.new img {
    display: inline;
    vertical-align: middle;
    margin-left: 5px;
  }
  .contentsNews li span {
    font-size: 15px;
    color: #878787;
    display: block;
  }
  .contentsNews input[name="tabItem"] {
    display: none;
  }
  .contentsNews .tabItem {
    display: inline-block;
    width: calc(100% / 3 - 10px);
    height: 38px;
    line-height: 38px;
    margin: 10px 5px 0 0;
    text-align: center;
    background: #e4e4e4;
    position: relative;
    color: #111;
    font-size: 13px;
    cursor: pointer;
  }
  .contentsNews .tabItem:nth-last-of-type(1) {
    margin-right: 0;
  }
  .contentsNews input:checked + .tabItem {
    background: #f2f2f2;
  }
  .contentsNews .tabItem:before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 38px 0px 0 10px;
    border-color: #f7f7f7 transparent transparent transparent;
    position: absolute;
    top: 0;
    right: 0;
  }
  .contentsNews .news_list {
    display: none;
    padding: 20px 17.5px 5px;
    background: #f2f2f2;
  }
  .contentsNews li .date {
  }
  .contentsNews li span.tag {
    width: 80px;
    margin: 3px 0 5px;
    padding: 5px 0;
    line-height: 1;
    text-align: center;
    color: #fff;
    font-size: 15px;
  }
  .contentsNews li span.newIcon {
    display: inline-block;
    width: 45px;
    height: 20px;
    margin-left: 10px;
    line-height: 20px;
    text-align: center;
    background: #fdd900;
    color: #111;
    font-size: 13px;
    font-weight: bold;
  }
  .contentsNews li.notice span.tag {
    background: #5eac3a;
  }
  .contentsNews li.property span.tag {
    background: #f7b509;
  }
  .contentsNews li.newProperty span.tag {
    background: #ffda00;
    color: #222;
  }
  .contentsNews li.contract span.tag {
    background: #5eac3a;
    color: #222;
  }
  .contentsNews li.reform span.tag {
    background: #d6d0bc;
    color: #222;
  }
  .contentsNews li.consulting span.tag {
    display: none;
  }
  /* blog */
  .contentsBlog {
    margin-bottom: 80px;
  }
  .contentsBlog h2 {
    font-size: 25px;
    font-weight: bold;
    clear: both;
  }
  .contentsBlog h2 span {
    display: none;
  }
  .contentsBlog div {
    background: #f2f2f2;
    margin-bottom: 20px;
    margin-top: 15px;
    padding: 15px 17.5px 10px;
  }
  .contentsBlog li {
    margin-bottom: 10px;
    border-bottom: 1px solid #e8e8e8;
    font-size: 15px;
    background: url(../img/sp/bg_arrow02.png) no-repeat right center / 6px 11px;
  }
  .contentsBlog li:last-child {
    border-bottom: none;
  }
  .contentsBlog li a {
    display: inline-block;
    box-sizing: border-box;
    width: 100%;
    text-decoration: none;
    color: #333;
    background: url(../img/bg_balloon.png) 0 14px no-repeat;
    padding: 10px 20px 10px 25px;
    color: #5eac39;
    line-height: 1.6;
  }
  .contentsBlog li a:hover {
    text-decoration: underline;
    color: #5eac39;
  }
  .contentsBlog li img {
    display: none;
  }
  .contentsBlog li.new img {
    display: inline;
    vertical-align: middle;
    margin-left: 5px;
  }
  .contentsBlog li span {
    font-size: 15px;
    color: #878787;
    display: block;
  }
  .contentsBlog .blogLink a {
    position: relative;
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: 50px;
    padding: 14px 0;
    background: #fff;
    border: 1px solid #d6d6d6;
    border-radius: 3px;
    font-size: 15px;
    line-height: 20px;
    text-decoration: none;
    text-align: center;
  }
  .contentsBlog .blogLink a:after {
    content: "";
    position: absolute;
    top: 20px;
    right: 20px;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 0 4px 5px;
    border-color: transparent transparent transparent #693;
  }

  /*選択されているタブのコンテンツのみを表示*/
  #all:checked ~ #all-list,
  #notice:checked ~ #notice-list,
  #property:checked ~ #property-list,
  #construction:checked ~ #construction-list,
  #consulting:checked ~ #consulting-list {
    display: block;
  }

  /* バナー */
  .sideBnr {
    margin-bottom: 70px;
  }
  .sideBnrList dt {
    margin: 65px 15px 30px;
    text-align: center;
  }
  .sideBnrList dd {
    margin: 0 15px 15px;
  }
  .sideBnrList img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
  }

  /* ホワイト企業 */
  .contentsJws {
    text-align: center;
    font-size: 15px;
  }
  .contentsJws a {
    color: #5ea85f;
    text-decoration: none;
    line-height: 1.5;
  }
  .contentsJws img {
    display: inline-block;
    width: 120px;
    height: auto;
    margin-bottom: 15px;
  }
}
