@charset "utf-8";

/* ================================================================================
top
================================================================================= */
#main {
  margin-bottom:0;
}

/* ================================================================================
top common parts
================================================================================= */
.bt_more {
  margin-top:35px;
}
.bt_more a {
  display:inline-block;
  position:relative;
  padding:5px 25px 5px 20px;
  color:#fff;
  font-size:15px;
  background:#000;
  transition:all .3s;
}
.bt_more a:before {
  content:"";
  display:inline-block;
  width:0;
  height:0;
  margin-right:8px;
  border-style:solid;
  border-width:4.5px 0 4.5px 8px;
  border-color:transparent transparent transparent #fff;
}
.bt_more a:hover {
  opacity:.7;
}

/* SP調整----------------------------　*/
@media only screen and (max-width:768px) {
.bt_more {
  text-align:center;
  margin-top:20px;
}
}


/* ================================================================================
top_mv
================================================================================= */
#top_mv {
  position:relative;
  height:calc(100vh - 110px);
}
#top_mv:after {
  content:"";
  display:block;
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index:10;
  background:#fff;
}
#top_mv.mv_loading_end:after {
  opacity:1;
  animation:layer_size .7s both;
}
@keyframes layer_size {
  90% { height:100%; opacity:0; }
  100% { height:0; opacity:0; }
}
#top_mv .txt {
  position:absolute;
  top:42%;
  width:100%;
  text-align:center;
  color:#fff;
  z-index:3;
  opacity:0;
  transition:1s;
}
#top_mv .txt.active {
  top:40%;
  opacity:1;
}
#top_mv .txt .lead {
  width:976px;
  height:62px;
  margin:0 auto;
  background:url(../img/mv_txt_pc.png) no-repeat;
  background-size:976px 62px;
  text-indent:100%;
  white-space:nowrap;
  overflow:hidden;
}
#top_mv .md_nav_extension {
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  z-index:10;
}

/* SP調整----------------------------　*/
@media only screen and (max-width:768px) {
#top_mv {
  height:calc(100vh - 60px);
}
#top_mv .txt {
  -webkit-transform:translateY(-50%);
  transform:translateY(-50%);
}
#top_mv .txt .lead {
  width:167px;
  height:121px;
  background:url(../img/mv_txt_sp.png) no-repeat;
  background-size:167px 121px;
}
}
/* ================================================================================
mv_modal
================================================================================= */
.mv_modal {
  position:absolute;
  top:50px;
  left:0;
  right:0;
  width:640px;
  min-height:48px;
  margin:0 auto;
  padding:12px 20px;
  background:#f08300;
  border-radius:17px;
  z-index:10;
  font-size:16px;
  line-height:1.5;
  color:#fff;
  font-weight:bold;
  text-align:center;
}
.mv_modal a {
  display:inline-block;
  color:#fff;
}
.mv_modal a:hover {
  opacity:.5;
}
.mv_modal .bt_close {
  background-color:transparent;
  border:none;
  cursor:pointer;
  outline:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  position:absolute;
  top:-6px;
  left:-6px;
  width:26px;
  height:26px;
  border:2px solid #f08300;
  background:#fff;
  border-radius:50%;
  overflow:hidden;
  z-index:2;
}
.mv_modal .bt_close span {
  display:block;
  text-indent:100%;
  white-space:nowrap;
  overflow:hidden;
}
.mv_modal .bt_close span::before,
.mv_modal .bt_close span::after {
  content:"";
  display:block;
  position:absolute;
  top:0;
  left:0;
  right:0;
  bottom:0;
  margin:auto;
  width:10px;
  height:2px;
  background:#f0830f;
}
.mv_modal .bt_close span::before {
  -webkit-transform:rotate(-45deg);
  transform:rotate(-45deg);
}
.mv_modal .bt_close span::after {
  -webkit-transform:rotate(45deg);
  transform:rotate(45deg);
}
.mv_modal .bt_close:hover span::before,
.mv_modal .bt_close:hover span::after {
  opacity:.5;
}

/* PC整----------------------------　*/
@media only screen and (min-width:769px) {
.mv_modal .pc_space {
  display:inline-block;
  padding-left:1em;
}

/* animetion */
.mv_modal {
  visibility:hidden;
  opacity:0;
  top:70px;
  transition:all .8s;
}
.mv_modal.active {
  visibility:visible;
  opacity:1;
  top:50px;
}
}

/* SP調整----------------------------　*/
@media only screen and (max-width:768px) {
.mv_modal {
  top:30px;
  left:0;
  right:0;
  width:300px;
  min-height:40px;
  padding:12px 10px 12px 20px;
  border-radius:7px;
  font-size:12px;
  line-height:1.66;
  text-align:left;
}
.mv_modal .sp_br {
  display:block;
}

/* animetion */
.mv_modal {
  visibility:hidden;
  opacity:0;
  top:50px;
  transition:all .8s;
}
.mv_modal.active {
  visibility:visible;
  opacity:1;
  top:30px;
}
}

/* ================================================================================
slider_block
================================================================================= */
#slider_block {
  width:100%;
  height:100%;
  opacity:0;
}
.mv_loading_end #slider_block {
  opacity:1;
}
#slider_block .pic,
#slider_block .slick-list,
#slider_block .slick-track {
  width:100%;
  height:100%;
  background-size:cover;
  background-position:center center;
}

/* PC整----------------------------　*/
@media only screen and (min-width:769px) {
#slider_block #mv01 { background-image:url(../img/mv_pc_01.jpg); }
#slider_block #mv02 { background-image:url(../img/mv_pc_02.jpg); }
#slider_block #mv03 { background-image:url(../img/mv_pc_03.jpg); }
}

/* SP調整----------------------------　*/
@media only screen and (max-width:768px) {
#slider_block #mv01 { background-image:url(../img/mv_sp_01.jpg); }
#slider_block #mv02 { background-image:url(../img/mv_sp_02.jpg); }
#slider_block #mv03 { background-image:url(../img/mv_sp_03.jpg); }
}


/* ================================================================================
slider_bnr
================================================================================= */
#slider_bnr {
  padding:40px 0 56px;
  background:#edf2ed;
}
#slider_bnr > ul {
  width:988px;
  margin:0 auto;
}
#slider_bnr .slick-slide {
  padding:0 5px;
}
#slider_bnr .slick-slide a img {
  transition:all .3s;
}
#slider_bnr .slick-slide a:hover img {
  opacity:.7;
}

/* SP調整----------------------------　*/
@media only screen and (max-width:768px) {
#slider_bnr {
  padding:15px 30px 40px;
}
#slider_bnr > ul {
  width:100%;
  margin:0 auto;
}
}


/* ================================================================================
sec_lead
================================================================================= */
#sec_lead {
  display:-webkit-flex;
  display:flex;
  -webkit-justify-content:center;
  justify-content:center;
  padding:50px 0;
  font-size:18px;
  line-height:1.75;
  background:url(../../common/img/bg_check_pattern.jpg) center repeat;
  background-size:19px 19px;
}
#sec_lead .box {
  position:relative;
  width:590px;
  margin:10px 0 10px 20px;
}
#sec_lead .ttl {
  position:relative;
  margin-bottom:40px;
  font-size:31px;
  color:#629b62;
  font-weight:500;
  letter-spacing:.15em;
}
#sec_lead .ttl .quotation {
  color:#4f844f;
  font-size:46px;
  font-weight:700;
}
#sec_lead .ttl .line {
  display:inline-block;
  position:relative;
  z-index:2;
}
#sec_lead .ttl .line:before {
  content:"";
  display:block;
  position:absolute;
  z-index:-1;
  left:0;
  bottom:.1em;
  width:100%;
  height:18px;
  background:#ffe33f;
  -webkit-transform:skew(-20deg);
  -moz-transform:skew(-20deg);
  -o-transform:skew(-20deg);
  -ms-transform:skew(-20deg);
}
#sec_lead .txt_detail {
  margin:0 25px;
}
#sec_lead .bt_more {
  position:absolute;
  left:25px;
  bottom:0;
}
#sec_lead .bt_more a {
  background:#4f844f;
}
#sec_lead .photo {
 width:429px;
}

/* SP調整----------------------------　*/
@media only screen and (max-width:768px) {
#sec_lead {
  display:block;
  padding:40px 10px;
  font-size:14px;
  line-height:1.7;
  background-size:19px 19px;
}
#sec_lead .box {
  width:auto;
  margin:0;
  text-align:center;
}
#sec_lead .ttl {
  display:inline-block;
  margin:0 auto 30px;
  font-size:23px;
  line-height:1.1;
  letter-spacing:.1em;
  text-align:left;
}
#sec_lead .ttl .quotation {
  font-size:32px;
}
#sec_lead .ttl .line {
  margin-left:1em;
}
#sec_lead .ttl .line:before {
  height:9px;
  margin:0;
}
#sec_lead .txt_detail {
  margin:0;
  text-align:left;
}
#sec_lead .bt_more {
  position:static;
}
#sec_lead .bt_more a {
  background:#4f844f;
}
#sec_lead .photo {
  width:100%;
  max-width:426px;
  margin:30px auto 0;
}
}

/* ================================================================================
top_mv / mv_news
================================================================================= */
/* PC調整----------------------------　*/
@media only screen and (min-width:769px) {
  #top_mv .mv_news {
    position:absolute;
    left:0;
    right:0;
    bottom:130px;
    width:640px;
    padding-left:95px;
    height:50px;
    line-height:20px;
    margin:auto;
    background:#fff;
    font-size:12px;
    font-weight:500;
    z-index:10;
    overflow:hidden;
    border-radius:13px;
  }
  #top_mv .mv_news .mv_news_ttl {
    width:85px;
    height:50px;
    line-height:50px;
    background:#f08300;
    color:#fff;
    text-align:center;
    position: absolute;
    top: 0;
    left: 0;
  }
  #top_mv .mv_news .mv_news_list {
    position:relative;
  }
  #top_mv .mv_news .mv_news_list li {
    letter-spacing:normal;
  }
  #top_mv .mv_news .mv_news_list li a {
    display:block;
  }
  #top_mv .mv_news .mv_news_list li a:hover {
    opacity:.6;
  }
  #top_mv .mv_news .mv_news_list li a .txt_list {
    display:-webkit-flex;
    display:flex;
    align-items: center;
    height:50px;
    width:540px;
  }
  #top_mv .mv_news .mv_news_list li a time {
    display:inline-block;
    position:relative;
    padding-right:10px;
    margin-right:10px;
    line-height: 50px;
  }
  #top_mv .mv_news .mv_news_list li a time:after {
    content:"";
    display:block;
    position:absolute;
    top:7px;
    right:0;
    width:1px;
    height:36px;
    background:#000;
  }
  #top_mv .mv_news .mv_news_list li a .detail {
    width:450px;
    position: relative;
    text-align: justify;
    overflow:hidden;
    max-height: 40px;
  }
  #top_mv .mv_news .mv_news_list li a .detail:before {
    content: '…';
    position: absolute;
    right: 0;
    bottom: 0;
    background-color: #fff;
    width: 1em;
  }
  #top_mv .mv_news .mv_news_list li a .detail:after {
    content: '';
    position: absolute;
    right: 0;
    width: 1em;
    height: 20px;
    background-color: #fff;
  }
  }

  /* SP調整----------------------------　*/
  @media only screen and (max-width:768px) {
  #top_mv .mv_news {
    position:absolute;
    bottom:117px;
    left:0;
    right:0;
    width:292px;
    height: 78px;
    margin:auto;
    background:#fff;
    font-size:11px;
    font-weight:500;
    z-index:10;
    line-height:1.4;
    padding:20px 10px 12px;
  }

  #top_mv .mv_news .mv_news_ttl {
    position:absolute;
    top:-7px;
    left:-13px;
    width:67px;
    height:28px;
    margin-right:10px;
    padding-left:6px;
    background:url(../img/bg_mv_news_sp.png) no-repeat;
    background-size:contain;
    font-size:12px;
    color:#fff;
    z-index: 1;
  }
  #top_mv .mv_news .mv_news_list a,
  #top_mv .mv_news .mv_news_list time,
  #top_mv .mv_news .mv_news_list .detail {
    display:block;
  }
  #top_mv .mv_news .mv_news_list time {
    font-size:10px;
  }
  #top_mv .mv_news .mv_news_list li a .detail {
    width:272px;
    position: relative;
    text-align: justify;
    overflow:hidden;
    max-height: 2.8em;
  }
  #top_mv .mv_news .mv_news_list li a .detail:before {
    content: '…';
    position: absolute;
    right: 0;
    bottom: 0;
    background-color: #fff;
    width: 1em;
  }
  #top_mv .mv_news .mv_news_list li a .detail:after {
    content: '';
    position: absolute;
    right: 0;
    width: 1em;
    height: 1.4em;
    background-color: #fff;
  }
  }



/* ================================================================================
sec_greeting
================================================================================= */
.bg_color {
  background:#a9bebf;
  color:#fff;
  padding-bottom:90px;
}
#sec_greeting {
  display:-webkit-flex;
  display:flex;
  -webkit-flex-direction:row-reverse;
  flex-direction:row-reverse;
  -webkit-justify-content:center;
  justify-content:center;
  -webkit-align-items:center;
  align-items:center;
  padding:50px 0;
  font-size:18px;
  line-height:1.75;
}
#sec_greeting .box {
  width:560px;
  margin-left:65px;
}
#sec_greeting .ttl {
  margin-bottom:30px;
  font-size:24px;
  font-weight:500;
}
#sec_greeting .photo {
  max-width:376px;
}
#sec_greeting .bt_more a {
  background:#fff;
  color:#697777;
}
#sec_greeting .bt_more a:before {
  border-color:transparent transparent transparent #697777;
}

/* SP調整----------------------------　*/
@media only screen and (max-width:768px) {
.bg_color {
  padding-bottom:40px;
}
#sec_greeting {
  display:block;
  padding:40px 0;
  font-size:14px;
  line-height:1.7;
}
#sec_greeting .box {
  width:auto;
  margin-left:0;
  padding:0 10px;
}
#sec_greeting .ttl {
  margin-bottom:20px;
  font-size:23px;
  font-weight:500;
  line-height:1.4;
}
#sec_greeting .photo {
  margin-top:40px;
  max-width:initial;
}
}


/* ================================================================================
mega_links
================================================================================= */
.mega_links {
  display:-webkit-flex;
  display:flex;
  -webkit-flex-wrap:wrap;
  flex-wrap:wrap;
  -webkit-justify-content:space-between;
  justify-content:space-between;
  -webkit-align-items:center;
  align-items:center;
  max-width:1115px;
  margin:0 auto;
  font-size:18px;
}
.mega_links > li {
  width:49.4%;
  overflow:hidden;
}
.mega_links > li:nth-child(n+3) {
  margin-top:1.2%;
}
.mega_links a {
  display:block;
  position:relative;
  width:100%;
  padding-top:70%;
  color:#fff;
  transition:all .4s;
}
.mega_links a:after,
.mega_links a:before {
  content:"";
  display:block;
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background-size:cover;
  border:0 solid transparent;
  box-sizing:border-box;
  transition:all .4s;
}
.mega_links a:hover:after {
  border:14px solid #fff;
}
.mega_links dl {
  position:absolute;
  width:74%;
  top:50%;
  left:13%;
  -webkit-transform:translateY(-50%);
  transform:translateY(-50%);
}
.mega_links dt {
  margin-bottom:15px;
  text-align:center;
  font-size:33px;
  font-weight:700;
}
.mega_links dt:before {
  content:"";
  display:inline-block;
  position:relative;
  top:-1px;
  width:0;
  height:0;
  margin-right:15px;
  border-style:solid;
  border-width:9px 0 9px 16px;
  border-color:transparent transparent transparent #fff;
}
.mega_links dd {
  text-align:center;
}
.mega_links dd ul {
  display:inline-block;
  text-align:left;
  line-height:1.8;
}
.mega_links li:nth-child(1) a:before { background-image:url(../img/bnr_l_01.jpg); }
.mega_links li:nth-child(2) a:before { background-image:url(../img/bnr_l_02.jpg); }
.mega_links li:nth-child(3) a:before { background-image:url(../img/bnr_l_03.jpg); }
.mega_links li:nth-child(4) a:before { background-image:url(../img/bnr_l_04.jpg); }

.mega_links a:hover:before {
  -webkit-transform:scale(1.09);
  transform:scale(1.09);
}

/* SP調整----------------------------　*/
@media only screen and (max-width:768px) {
.mega_links {
  display:block;
  padding:0 .5%;
  font-size:12px;
}
.mega_links > li {
  width:100%;
}
.mega_links > li + li {
  margin-top:.5%;
}
.mega_links > li:nth-child(n+3) {
  margin-top:.5%;
}
.mega_links a {
  transition:all 0;
}
.mega_links a:after,
.mega_links a:before {
  content:"";
  display:block;
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  border:0 solid transparent;
  box-sizing:border-box;
  transition:all .4s;
}
.mega_links a:hover:after {
  border:none;
}
.mega_links dl {
  width:80%;
  left:10%;
}
.mega_links dt {
  margin-bottom:10px;
  font-size:21px;
}
.mega_links dt:before {
  margin-right:10px;
  border-width:6px 0 6px 12px;
}
.mega_links a:hover:before {
  -webkit-transform:scale(1);
  transform:scale(1);
}
}


/* ================================================================================
sec_notice
================================================================================= */
#sec_notice {
  padding:40px 0 110px;
  background:url(../img/bg_notice.jpg) center bottom;
  background-size:cover;
}
#sec_notice .inner {
  position:relative;
  max-width:980px;
  margin:0 auto;
}
#sec_notice .ttl {
  position:relative;
  margin-bottom:40px;
  padding:10px 0 2px 70px;
  font-size:24px;
  font-weight:700;
}
#sec_notice .ttl:before {
  content:"";
  display:block;
  position:absolute;
  top:0;
  left:0;
  width:50px;
  height:50px;
  background:url(../img/icon_notice.png) no-repeat;
}
#sec_notice .notice_list {
  max-width:920px;
  margin:0 auto;
  font-size:14px;
  font-weight:500;
}
#sec_notice .notice_list > li + li {
  border-top:1px dotted #aaa;
}
#sec_notice .notice_list a {
  display:inline-block;
  color:#000;
}
#sec_notice .notice_list a:hover {
  opacity:.7;
}
#sec_notice .notice_list div {
  display:-webkit-flex;
  display:flex;
  padding:20px 10px;
}
#sec_notice .notice_list time {
  width:90px;
  padding:2px 0;
}
#sec_notice .notice_list .tags {
  width:100px;
  font-size:13px;
  margin-right:15px;
}
#sec_notice .notice_list .tags li {
  padding:3px;
  background:#eacf60;
  color:#fff;
  text-align:center;
}
#sec_notice .notice_list .tags li + li {
  margin-top:3px;
}
#sec_notice .notice_list .txt {
  width:700px;
  padding:2px 0;
}
#sec_notice .bt_more {
  position:absolute;
  top:0;
  right:0;
  margin:15px 0 0 0;
}
#sec_notice .bt_more a {
  background:#4f844f;
}
/* ----- unicast追加 ---- */
#sec_notice .notice_list .tags li.cat_1 {  /* 賃貸 */
  background:#ea618e;
}
#sec_notice .notice_list .tags li.cat_2 {  /* 売買 */
  background:#25b7c0;
}
#sec_notice .notice_list .tags li.cat_3 {  /* お知らせ */
  background:#79c06e;
}
#sec_notice .notice_list .tags li.cat_4 {  /* サービス */
  background:#915da3;
}
#sec_notice .notice_list .tags li.cat_5 {  /* プレスリリース */
  background:#fcc800;
}
#sec_notice .notice_list .tags li.cat_6 {  /* お知らせ_メインビジュアル */
  background:#79c06e;
}
#sec_notice .notice_list .tags li.cat_7 {  /* 学生向け（茨大前支店） */
  background:#5eb8e5;
}
/* ----- unicast追加 ---- */

/* SP調整----------------------------　*/
@media only screen and (max-width:768px) {
#sec_notice {
  padding:30px 15px 45px;
  text-align:center;
}
#sec_notice .ttl {
  display:inline-block;
  margin:0 auto 10px;
  padding:10px 0 2px 65px;
  font-size:21px;
}
#sec_notice .ttl:before {
  width:45px;
  height:45px;
  background-size:contain;
}
#sec_notice .notice_list {
  font-size:12px;
  text-align:left;
}
#sec_notice .notice_list div {
  display:block;
  padding:10px 0;
}
#sec_notice .notice_list time {
  display:inline-block;
  width:auto;
  padding:0;
  margin-bottom:3px;
}
#sec_notice .notice_list .tags {
  width:auto;
  margin:0 0 3px 0;
  font-size:11px;
}
#sec_notice .notice_list .tags li {
  display:inline-block;
  padding:0 10px;
}
#sec_notice .notice_list .tags li + li {
  margin:0 0 0 3px;
}
#sec_notice .notice_list .txt {
  width:auto;
  padding:0;
}
#sec_notice .bt_more {
  position:static;
}
}


/* ================================================================================
sec_recruit
================================================================================= */
#sec_recruit {
  position:relative;
  height:510px;
  color:#fff;
}
#sec_recruit:before,
#sec_recruit:after {
  content:"";
  display:block;
  position:absolute;
  top:0;
  width:50%;
  height:510px;
}
#sec_recruit:before {
  left:0;
}
#sec_recruit:after {
  right:0;
}
#sec_recruit .inner {
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  z-index:2;
  text-align:center;
}
#sec_recruit .ttl {
  margin-bottom:20px;
  font-size:26px;
  line-height:1.4;
}
#sec_recruit .ttl .en {
  display:block;
  font-size:50px;
  font-family:dnp-shuei-gothic-kin-std, sans-serif;
  font-weight:800;
  letter-spacing:.3em;
}
#sec_recruit .txt_handwriting {
  text-align:center;
}
#sec_recruit .txt_handwriting img {
  max-width:458px;
}
#sec_recruit .bt_more a {
  background:#4f844f;
}

/* PC調整----------------------------　*/
@media only screen and (min-width:769px) {
#sec_recruit:before {
  background-image:url(../img/img_recruit_01_pc.png),url(../img/img_recruit_bg_01_pc.png);
  background-position:right 0;
  background-repeat:no-repeat,repeat-x;
}
#sec_recruit:after {
  background-color:#f00,transparent;
  background-image:url(../img/img_recruit_02_pc.png),url(../img/img_recruit_bg_02_pc.png);
  background-position:0 0;
  background-repeat:no-repeat,repeat-x;
}
}

/* SP調整----------------------------　*/
@media only screen and (max-width:768px) {
#sec_recruit {
  height:auto;
  padding-top:84.4%;
  background:#171e48;
}
#sec_recruit:before,
#sec_recruit:after {
  width:50%;
  height:auto;
  padding-top:84.4%;
  background-size:cover;
}
#sec_recruit:before {
  background-image:url(../img/img_recruit_01_sp.jpg);
  background-position:center center;
}
#sec_recruit:after {
  background-position:center center;
  background-image:url(../img/img_recruit_02_sp.jpg);
}
#sec_recruit .inner {
  position:static;
  padding:30px 15px 45px;
  transform:translate(0,0);
  text-align:center;
}
#sec_recruit .ttl {
  margin-bottom:20px;
  font-size:17px;
  line-height:1.4;
}
#sec_recruit .ttl .en {
  font-size:33px;
  letter-spacing:.3em;
}
#sec_recruit .txt_handwriting img {
  max-width:260px;
}
}
