@charset "UTF-8";
* {
	margin:0;
	padding:0;
	border:none;
	outline:none;
}

body {
	margin: 0;
	padding: 0;
	color: #000;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
	font-size: 100%;
	line-height: 1.4;
	background-attachment:fixed;
    background-color:#CCC;
}


/*--------------------
	テキスト
--------------------*/


.title{
    font-size:140%;
}
.subtitle{
    font-size:120%;
}
.maintext{
    font-size:100%;
}
.subtext{
    font-size:90%;
}
.caption{
    font-size:75%;
}
.bold{
    font-weight:bold;
}
.normal{
    font-weight:normal;
}

.noto{
    font-family: 'Noto Sans JP', sans-serif !important;
}
.times{
	font-family:"Times New Roman", Times,'Noto Sans JP', sans-serif;
}
.gray{
    color:#666;
}


h1.type-a,
h2.type-a,
h3.type-a
{
	padding:0px;
	margin:10px;	
    border-bottom:1px dotted #AAA;
}

a.type-a
{
    display:inline-block;
	color:#2d67a1;
	text-decoration:underline;
}

a.type-a:hover{
	text-decoration:none;
  transition: all 0.2s ease-out;
}
div.type-a{
    padding:20px 20px 0 20px;
    
}
p.type-a{
    line-height:30px;
    
}
.abs-text{
    display: block;
    position:absolute;
    left:0;bottom:0;
    background:#292929;
    color:#FFF;
    padding:5px;
    font-family: 'Noto Sans JP', sans-serif !important;
    font-size: 50%;
    z-index: 5;
    opacity: 0.8;
    
}



/*--------------------
レイアウト
--------------------*/


.navbar-fixed-top {

}


.header {
    position: relative;
	width: 100%;;
	height:120px;
	background:url(../images/contents.png);
	border-top:1px solid #CCC;
    z-index:99;

}

.header .inner{
	width: 800px;
    margin:0 auto;
    text-align: center;
    margin-top:10px;

}


.header-change{
    opacity:1;
    border-top:1px solid #CCC;
    background: #fafafa;
    display: flex;
    justify-content: space-between;
    padding:0 0 10px 0;
    position: fixed;
    transition: .2s;
    width: 100%;
    z-index:20;
    top:0;
}

.header-change .inner{
    width:300px;
    margin:0 auto;
    
    
}

.header-change.show{
    opacity:0;
    top:-100px;
    z-index:20;
}





.mainmenu {
	width: 100%;;
	margin-right: auto;
	margin-left: auto;

}
.mainmenu ul{
	width: 300px;
    margin:0 auto;
    text-align: center;
    margin-top:10px;
}
.mainmenu ul li{
float:left;
    padding-left:20px;
    padding-right:20px;
    border-right: 1px solid #CCC;
}

.mainmenu ul li:last-child{
    border-right:none;

}
.mainmenu ul:after{
    content: ".";
    height: 0;
    clear: both;
    display: block;
    visibility: hidden;
}




.contents {
	width:1024px;
	min-width:1024px;
	margin-right: auto;
	margin-left: auto;
	background:url(../images/contents.png);
    margin-bottom:50px;
    padding-bottom:50px;
	}



.contents01-change{
    opacity:1;
    position: relative;
    transition: .5s;
    bottom:0px;
}
.contents01-change.show{
    opacity:0;
    bottom:10px;
}

.contents02-change{
    opacity:1;
    position: relative;
    transition: .5s;
    bottom:0px;
}
.contents02-change.show{
    opacity:0;
    bottom:10px;
}


.contents03-change{
    opacity:1;
    position: relative;
    transition: .5s;
    bottom:0px;
}
.contents03-change.show{
    opacity:0;
    bottom:10px;
}


.contents04-change{
    opacity:1;
    position: relative;
    transition: .5s;
    bottom:0px;
}
.contents04-change.show{
    opacity:0;
    bottom:10px;
}


.contents05-change{
    opacity:1;
    position: relative;
    transition: .5s;
    bottom:0px;
}
.contents05-change.show{
    opacity:0;
    bottom:10px;
}
.contents06-change{
    opacity:1;
    position: relative;
    transition: .5s;
    bottom:0px;
}
.contents06-change.show{
    opacity:0;
    bottom:10px;
}






.cptable {
    margin-left: 20px;
	}

.cptable td{
    padding-top:10px;
	}

.cptable td h2{
    margin-left:10px;
	}
.cptable td p{
    padding-top:10px;
    font-size:90%;
    line-height: 18px;
    margin-left:20px;
	}
.cptable .contact span{
    text-align: right;
    display: inline-block;
    width:60px;
    padding-right:5px;
	}





/*--------------------
サムネイルリスト
--------------------*/
#thumblist {
    width: 832px;
    margin: 0 auto;
}
 
#thumblist ul {
    margin: 0 auto;
    width: 832px;
    border:2px solid #FFF;
}
#thumblist ul li {
    display: inline-block;
    width: 100px;
    height:120px;
    float: left;
    overflow: hidden;
    border:2px solid #FFF;
}
#thumblist ul li:first-child {
    margin-left:104px;
    
}
#thumblist ul li img {
    padding:0 !important;
    margin: 0 !important;
}
 
#thumblist ul:after {
    content: ".";
    height: 0;
    clear: both;
    display: block;
    visibility: hidden;
}
#thumblist ul {
    display: inline-block;
    overflow: hidden;
}

/*--------------------
ワークスリスト
--------------------*/
.workslist {
    width: 832px;
    margin: 0 auto;
}
 
.workslist ul {
    margin: 0 auto;
    width: 832px;
    border:2px solid #FFF;
}
.workslist ul li {
    display: inline-block;
    position: relative;
    width: 134px;
    height:180px;
    float: left;
    overflow: hidden;
    border:2px solid #FFF;
}
.workslist ul li:first-child {
    margin-left:138px;
    
}
.workslist ul li img {
    width: 100%;
    height:180px;
}
 
.workslist ul:after {
    content: ".";
    height: 0;
    clear: both;
    display: block;
    visibility: hidden;
}
.workslist ul {
    display: inline-block;
    overflow: hidden;
}




/*--------------------
	背景設定
--------------------*/
.backimage {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background: #000000;
    z-index: -1;
}
.backimage li {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: none;
    opacity: 0;
    -webkit-animation: anime 30s linear 0s infinite ;
    animation: anime 30s linear 0s infinite ;
}
.backimage li:nth-child(1) { 
    background-image: url(../images/back01.jpg) ;
    
}
.backimage li:nth-child(2) {
      background-image: url(../images/back02.jpg) ;
    -webkit-animation-delay: 10s;
    animation-delay: 10s;
}
.backimage li:nth-child(3) {
       background-image: url(../images/back03.jpg) ;
    -webkit-animation-delay: 20s;
    animation-delay: 20s;
}
.backimage li:nth-child(4) {
        background-image: url(../images/back04.jpg) ;
    -webkit-animation-delay: 30s;
    animation-delay: 30s;
}
.backimage li:nth-child(5) {
       background-image: url(../images/back05.jpg) ;
    -webkit-animation-delay: 40s;
    animation-delay: 40s;
}
.backimage li:nth-child(6) {
      background-image: url(../images/back06.jpg) ;
    -webkit-animation-delay: 50s;
    animation-delay: 50s;
}
.backimage li:nth-child(7) {
       background-image: url(../images/back07.jpg) ;
    -webkit-animation-delay: 60s;
    animation-delay: 60s;
}
.backimage li:nth-child(8) {
       background-image: url(../images/back08.jpg) ;
    -webkit-animation-delay: 70s;
    animation-delay: 70s;
}

.backimage{
    transition: .5s;
  filter: blur(5px);

}

.backimage.show{
  filter:none;
}


@-webkit-keyframes anime { 
    0% {
        -webkit-animation-timing-function: ease-in;
        opacity: 0;
    }
    10% {
        -webkit-transform: translateY(0px);
        opacity: 1;
    }
    40% {
        -webkit-transform:translateY(0px);
            -webkit-animation-timing-function: ease-out;
        opacity: 1;
    }
    50% {
        -webkit-transform: translateY(0px);
        opacity: 0;
    }
    100% { opacity: 0 }
}
@keyframes anime { 
    0% {
        animation-timing-function: ease-in;
        opacity: 0;
    }
    10% {
        transform: translateY(0px);
        opacity: 1;
    }
    40% {
        transform:translateY(0px);
            animation-timing-function: ease-out;
        opacity: 1;
    }
    50% {
        transform: translateY(0px);
        opacity: 0;
    }
    100% { opacity: 0 }
}


/*--------------------
フッター
--------------------*/
.footer {
	width: 1024px;
	min-width: 1024px;
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
	padding-top: 80px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;	
	background:#FFF;
	background-repeat:repeat-x;

	text-align:center;
}


.footer-pagetop{
    display:inline-block;position:absolute;background:#292929;color:#FFF;bottom:50px;right:80px;text-align:center;padding:10px;opacity:0.8;
}
.bottom-space{
    height:210px;background:#fafafa;border-top:1px solid #CCC;
}


.footer-change{
    opacity:1;
    display: flex;
    justify-content: space-between;
    padding:0 0 10px 0;
    position: fixed;
    bottom:0px;
    transition: .2s;
    width: 100%;
    z-index:999;
}

.footer-change .inner{
    width:300px;
    margin:0 auto;
    
    
}

.footer-change.show{
    opacity:0;;
    z-index:99;
}


@media print{
    .header-change.show,
    .contents01-change.show,
    .contents02-change.show,
    .contents03-change.show,
    .contents04-change.show,
    .contents05-change.show,
    .contents06-change.show
    {
		display:block;
        opacity:1 ;
	}

}

