@charset "utf-8";

/* hypertext
-------------------- */
a {
  color: #333;
  text-decoration: none;
}
a:hover {
  color: #888;
  text-decoration: underline;
}


/* MainImage
-------------------- */
#PCMainImage {
    width: 100%;
    height: 400px;
    margin-top: 140px;
}
#MainImage {
    height: 400px;
    opacity: 0;
    transition: opacity .25s ease;
}
#MainImage.slick-initialized {
    opacity: 1;
}
#MainImage img {
    width: 100%;
    height: 400px;
    object-fit: cover;
}
#MainImage li.slick-slide {
    opacity: 0.7;
}
#MainImage li.slick-center {
    position: relative;
    opacity: 1;
}
#MainImage li.slick-slide p {
    display: none;
}
#MainImage li.slick-center p {
    display: block;
    position: absolute;
    /* background:rgba(0,0,0,0.3); */
    padding: 20px;
    font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
    color: #FFFFFF;
    text-shadow:  2px  2px 5px #333 ,
                 -2px  2px 5px #333 ,
                  2px -2px 5px #333 ,
                 -2px -2px 5px #333;
    font-size: 22px;
    line-height: 1.5;
    pointer-events: none;
}
#MainImage li.slick-center p big {
    display: block;
    font-size: 44px;
    margin-bottom: 20px;
}
#MainImage li.slick-center p.UpLeft {
    top: 40px;
    left: 40px;
}
#MainImage li.slick-center p.UpRight {
    top: 40px;
    right: 40px;
}
#MainImage li.slick-center p.LowLeft {
    bottom: 40px;
    left: 40px;
}
#MainImage li.slick-center p.LowRight {
    bottom: 40px;
    right: 40px;
}


/* Main
-------------------- */
#Description {
    margin-bottom: 50px;
}
.contents h2 {
    margin-bottom: 30px;
    line-height: 1;
}
.contents h2 span.main-title1 {
    display: inline-block;
    font-size: 32px;
    font-family: 'Oswald', sans-serif;
    letter-spacing: 2px;
}
.contents h2 span.main-title1:before {
    display: block;
    width: 100px;
    content: '';
    margin: 0 auto;
    padding-top: 30px;
    border-top: 1px solid #999999;
}
.contents h2 span.main-title2 {
    font-size: 32px;
    font-family: 'Oswald', sans-serif;
    letter-spacing: 2px;
}
.contents h2 span.sub-title {
    font-size: 14px;
    color: #999999;
}

.slick-prev:before,
.slick-next:before {
   color: black;
 }


/* feed News
-------------------- */
#Feed {
    padding: 70px 0;
}
#Feed > div {
    display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display: flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    justify-content: space-between;
}


#About {
	width: 45%;
}
#About h2 {
    margin-bottom: 70px;
    text-align: center;
}
#About .company {
    height: 200px;
    margin-bottom: 40px;
    background-image: url(../img/about-company.jpg), linear-gradient(120deg, #A28F23 50%, transparent 0%);
    background-size: cover;
    background-position:center;
    background-repeat: no-repeat;
    background-blend-mode: screen;
    box-shadow: 20px 20px 0 #F4C51A;
}
#About .company p {
    height: 200px;
    line-height: 200px;
    padding: 0 10px;
    font-family:serif;
    font-weight: bold;
    font-size: 30px;
    color: #FFF;
	text-shadow: 0 0 0.2em rgba(0,0,0,1);
}

#About .products {
    height: 200px;
    background-image:url(../img/about-products.png), linear-gradient(120deg, transparent 50%, #08107B 0%);
    background-size: cover;
    background-position:center;
    background-repeat: no-repeat;
    background-blend-mode: screen;
    box-shadow: 20px 20px 0 #A0A0B5;
}
#About .products p {
    height: 200px;
    line-height: 200px;
    text-align: right;
    padding: 0 10px;
    font-family:serif;
    font-weight: bold;
    font-size: 30px;
    color: #FFF;
	text-shadow: 0 0 0.2em rgba(0,0,0,1);
}



#News {
	width: 45%;
}
#News h2 {
    margin-bottom: 70px;
    text-align: center;
}
#News ul {
    margin-bottom: 20px;
}
#News li {
    margin-bottom: 12px;
}
#News li:after {
    clear: both;
    content: '';
    display: block;
    height: 0;
}
#News li span.date {
    float: left;
    display: block;
    width: 60px;
    padding: 10px 15px 10px 0;
    color: #666666;
    font-size: 12px;
}
#News li span.title {
    display: block;
    margin-left: 80px;
    margin-bottom: 10px;
    padding: 9px 0;
    padding-left: 25px;
    border-left: 1px solid #CCCCCC;
    font-size: 15px;
}
#News .btn-more {
    text-align: right;
}

/* About
-------------------- */
#Works {
    margin-bottom: 50px;
    padding: 70px 0;
}
#Works h2 {
    margin-bottom: 70px;
    text-align: center;
}
#Works ul {
    opacity: 0;
    transition: opacity .25s ease;
}

#Works ul.slick-initialized {
    opacity: 1;
    display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display: flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    justify-content: center;
}
#Works li {
    display:inline-block;
    width: 33%;
    list-style: none;
}
#Works li:last-child {
    margin-right: 0;
}
#Works li:after {
    clear: both;
    content: '';
    display: block;
    height: 0;
}
#Works li .thumbnail {
    position: relative;
    overflow: hidden;
}
#Works li .thumbnail img {
    margin: 0 auto;
    height: 350px;
    object-fit: cover;
}
#Works li h3 {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    color: #FFFFFF;
    text-align: center;
    font-size: 30px;
    font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
    font-weight: 700;
    line-height: 1.5;
    /*-webkit-font-smoothing: antialiased;*/
    text-shadow:  2px  2px 5px #333 ,
                 -2px  2px 5px #333 ,
                  2px -2px 5px #333 ,
                 -2px -2px 5px #333;
    pointer-events: none;
    transition: all 0.3s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
#Works li p.content {
    display: block;
    position: absolute;
    width: 80%;
    top: 200%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    font-size: 18px;
    font-weight: bold;
    color: #111111;
    text-shadow:  2px  2px 5px #FFF ,
                 -2px  2px 5px #FFF ,
                  2px -2px 5px #FFF ,
                 -2px -2px 5px #FFF;
    transition: all 0.3s cubic-bezier(0.455, 0.03, 0.515, 0.955);
    word-break: break-all;
    pointer-events: none;
}

#Works li:hover img {
    opacity: 0.5;
    transition: opacity .2s ease;
}
#Works li:hover h3 {
    top: -50%;
}
#Works li:hover p.content  {
    top: 50%;
}
#Works .slick-prev, .slick-next {
	width: 40px;
	height: 40px;
}
#Works .slick-prev {
	left: -50px;
}
#Works .slick-next {
	right: -50px;
}
#Works .slick-prev:before, .slick-next:before {
	font-size: 40px;
	color: #333333;
	opacity: 0.5;
}

