@charset "utf-8";
/* ----------------------------------------
 main
------------------------------------------- */
#mv{
height: 100vh;
}
#mv h2{
color: #fff;
font-size: 7rem;
text-align: left;
text-shadow: 0 0 10px #000;
position: absolute;
top:33%;
left: 10%;
z-index: 100;
}

#slider li{
width: 100%;
height: 100vh;
}
.toplogo{
vertical-align: top;
width: 100%;
}
/* ----------------------------------------
 works
------------------------------------------- */
#works{
background-color: #213166;
padding-top: 100px;
}
#works .category-list{
text-align: center;
margin-bottom: 20px;
}
#works .category-list li{
display: inline-block;
font-size: 1.2rem;
text-align: center;
margin: 0 2px 10px 2px;
}
#works .category-list li a{
display: block;
color: #fff;
background-color: #7583b1;
border-radius: 5px;
padding: 1px 10px;
}

#works .works-list{
overflow: hidden;
}
#works .works-list li{
float: left;
width: 50%;
position: relative;
}
#works .works-list li .imgs {
  position: relative;
  overflow: hidden;
  padding-top: 60%;
  z-index: 10;
}
#works .works-list li a .imgs img {
  position: absolute;
  width: 101%;
  height: 101%;
  object-fit: cover;
  left: 50%;
  top: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
  -webkit-transition: 1s ease-in-out;
  -moz-transition: 1s ease-in-out;
  -o-transition: 1s ease-in-out;
  transition: 1s ease-in-out;
}
#works .works-list li a:hover .imgs img {
  position: absolute;
  width: 110%;
  height: 110%;
}
#works .works-list li a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
}
#works .works-list li a .bg {
  position: absolute;
  display: table;
  opacity: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  padding: 10px;
  top: 0;
  z-index: 10;
    -webkit-transition: 0.4s ease-in-out;
    -moz-transition: 0.4s ease-in-out;
    -o-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
}
#works .works-list li a:hover .bg {
  opacity: 1;
}
#works .works-list li a .name {
  display: table-cell;
  width: 100%;
  height: 100%;
  background-color: rgba(255,255,255,0.80);
  vertical-align: middle;
  text-align: center;
}
#works .box {
  background-color: #edeae6;
  padding: 80px 0
}

/* ----------------------------------------
 news
------------------------------------------- */
#news ul{
width: 100%;
max-width: 800px;
line-height: 1.5;
margin: 0 auto 40px auto;
}
#news ul li{
margin-bottom: 10px;
}
#news dl{
overflow: hidden;
}
#news dl dt{
float: left;
width: 120px;
}
#news dl dd{
margin-left: 120px;
}

/* =======================
  PC
======================== */
@media screen and (min-width: 1200px) {
}
/* =======================
  TABLET
======================== */
@media screen and (max-width:1199px) {
#mv h2{
font-size: 5vw;
}

}
/* =======================
  SP
======================== */
@media screen and (max-width: 799px) {
/* ----------------------------------------
 main
------------------------------------------- */
#mv{
height: 60vh;
}
#mv h2{
font-size: 3rem;
top:30%;
left: 5%;
}
#slider li{
width: 100%;
height: 60vh;
}
.toplogo{
vertical-align: top;
width: 80%;
}
/* ----------------------------------------
 works
------------------------------------------- */
#works{
padding-top: 50px;
}
#works .category-list li{
font-size: 1.0rem;
}
#works .category-list li a{
padding: 1px 6px;
}

#works .works-list{
overflow: hidden;
}
#works .works-list li{
float: none;
width: 100%;
}
#works .works-list li .imgs {
padding-top: 60%;
}
#works .box {
  background-color: #edeae6;
  padding: 40px 0
}


}