@charset "UTF-8";
@import "style.css";

main {
    padding: 0 0 0rem;
}

section {
	padding: 5rem 0 0;
}

section.bg {
	margin-top: 5rem;
	padding: 5rem 0;
}

@media screen and (max-width: 764px) {
section {
	padding: 2rem 0 0;
}
section.bg {
	margin-top: 1rem;
	padding: 2rem 0 1rem;
}

}

.itemcenter {
   display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.itemcenter a {
	font-size: .85rem;
}

.itemcenter span {
    display: inline-block;
    margin-top: 2%;
    padding-left: 27px;
	position: relative;
}

.itemcenter span::after {
	display: inline-block;
    position: absolute;
	top: 0;
    bottom: 0;
    left: -3px;
    margin: auto 0;
    content: "";
    width: 17px;
    height: 7px;
    border-bottom: solid 1px #D95755;
    border-right: solid 1px #D95755;
    transform: skew(45deg);
-webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.itemcenter a:hover span::after {
    left: 5px;
}

.itemcenter a img {
	display: block;
	width: 100%;
-webkit-transition: 0.8s;
    -moz-transition: 0.8s;
    -o-transition: 0.8s;
    -ms-transition: 0.8s;
    transition: 0.8s;
}

.itemcenter a:hover img {
	opacity: .7;
}


@media screen and (max-width: 764px) {
.itemcenter a {
    margin-bottom: 5%;
}
.itemcenter span {
	font-size:.75rem;
}
}

#kv .kv_ttl {
	font-size: 5rem;
}
@media screen and (max-width: 1024px) {
    #kv .kv_ttl {
        font-size: 2.8rem;
    }
}
@media screen and (max-width: 764px) {
    #kv .kv_ttl {
        font-size: 1.6rem;
		line-height: 1.3;
    }
}
/* --------------------------------------------------
	 NEWS
-------------------------------------------------- */

#news {
	padding: 5em 0;
}

.newsinner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: space-between;
    -ms-flex-pack: space-between;
    justify-content: space-between;
}

.newsinner .ttl {
	width: 30%;
}

.newsinner .article {
	width: 70%;
}

.newsinner .article ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 2%;
}

.newsinner .article ul li {
    width: calc(94% / 4);
    padding: 0%;
    box-sizing: border-box;
	font-size: .75rem;
}

.newsinner .article ul li span {
	background:#F7F8F9;
	display: block;
	padding: 7% 7% 25% 7%;
	position: relative;
}

.newsinner .article ul li span::after {
	display: inline-block;
    position: absolute;
	bottom: 20px;
    right: 20px;
    content: "";
    width: 17px;
    height: 7px;
    border-bottom: solid 1px #D95755;
    border-right: solid 1px #D95755;
    transform: skew(45deg);
-webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.newsinner .article ul li a:hover span::after {
    right: 10px;
}

.newsinner .article ul li img {
	width: 100%;
    display: block;
}

.newsinner .article ul li strong {
	display: block;
	height: 100px;
}

@media screen and (max-width: 764px) {
#news {
	padding: 2em 0;
}
.newsinner {
	display: block;
}
.newsinner .ttl {
	width: 100%;
}
.newsinner .article {
	width: 100%;
}
.newsinner .article ul li {
	width: calc(97% / 2);
	margin-bottom: 2%;
}
.newsinner .article ul li span {
	font-size: .75rem;
	padding: 7% 7% 15% 7%;
}
}

/* --------------------------------------------------
	 works
-------------------------------------------------- */
#works {
	padding: 5em 0;
	background: transparent url(/img/index/bg.jpg) no-repeat center center;
    background-size: cover;
}

#works .itemcenter a {
	width: 33.333%;
    padding: 0 1%;
    box-sizing: border-box;
}
#works .itemcenter a span small {
	display: block;
    margin-top: 0px;
    margin-bottom: 0px;
    padding-left: 22px;
    font-size: 9px;
    letter-spacing: 0.15em;
    position: relative;
    color: #6C849D;
}
#works .itemcenter a span small::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    width: 17px;
    background: transparent url(/img/h3.png) no-repeat center center;
    background-size: contain;
}

#works .itemcenter span {
    margin-top: 5%;
    padding-left: 0px;
    font-size: 1rem;
	font-weight: 600;
}

@media screen and (max-width: 764px) {
    #works .itemcenter span {
        font-size: .75rem;
    }
}

#works .itemcenter span::after {
	display: none;
}
@media screen and (max-width: 764px) {
#works {
	margin-top: 0rem;
	padding: 2em 0;
}
#works .itemcenter a {
	width: 50%;
}
}

/* --------------------------------------------------
	 company
-------------------------------------------------- */

#company .itemcenter a {
	width: 40%;
    padding: 0 1%;
    box-sizing: border-box;
}

@media screen and (max-width: 764px) {
#company .itemcenter a {
	width: 50%;
}
}

/* --------------------------------------------------
	 other
-------------------------------------------------- */

#other .itemcenter a {
	width: 33.333%;
    padding: 0 1%;
    box-sizing: border-box;
}

@media screen and (max-width: 764px) {

#other .itemcenter a {
	width: 50%;
}
}

/* --------------------------------------------------
	 movie
-------------------------------------------------- */
#movie .movies {
	position: relative;
}

#movie .movies .bg {
	position: relative;
	z-index: 9;
}

#movie .movies .bg video {
	width: 100%;
	display: block;
}

#movie .movies .bg dl {
	position: absolute;
	top: 2%;
	right: 0px;
	z-index:10;
	font-size: 9px;
	color: #FFF;
	overflow: hidden;
	background:#000;
	padding: 5px 10px;
}

#movie .movies .bg dl dt,
#movie .movies .bg dl dd {
	float: left;
	display: inline-block;
}

#movie .movies .bg dl dd {
	cursor: pointer;
	margin-left: 5px;
}

#movie .movies .bg dl dd.on {
}

#movie .movies .bg dl dd.on::after {
    content: '/';
	display: inline-block;
	margin-left: 5px;
}

@media screen and (max-width: 1024px) {

}
@media screen and (max-width: 764px) {

}


.breadcrumbs {
	display: none;
}