@charset "utf-8";

/*-----------------------------------
リセット
-----------------------------------*/
*{ margin: 0;padding: 0;}
a { text-decoration : none;}
ul, ol { list-style : none;}
img { vertical-align : middle;}

/*-----------------------------------
基本設定
-----------------------------------*/

* { margin: 0; padding: 0; }
html {
	height: 100%;
}
body {
	color: #000;
	font-family: "Noto Serif JP", serif;
  	font-optical-sizing: auto;
  	font-weight: 500;
 	font-style: normal;
}
a:hover img{ 
	opacity	: 0.7;
	transition:0.4s;
}

a {
	color:#000;
}

a:hover {
	text-decoration:underline;
    opacity: 0.7;
	transition:0.4s;
}

/*-----------------------------------
トップイメージ
-----------------------------------*/
#mainimg {
	position: absolute;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	background-image: url(../images/back.jpg);
	background-size: cover;
	background-position: center;
}

.toplogo {
	opacity: 0;
	animation: fadeTxt 3s ease 1s 1 normal;
    -webkit-animation: fadeTxt 3s ease 1s 1 normal;
	animation-fill-mode: forwards;
}
@keyframes fadeTxt {
    0% {opacity: 0}
    100% {opacity: 1}
}


.headlogo {
	position: absolute;
	top:30px;
	left:40px;
}
.toplogo {
	position: absolute;
	top: -30px;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 50px;
	height: 298px;
}


@media screen and (max-width: 640px) {
.headlogo {
	position: absolute;
	top:10px;
	left:10px;
}
.toplogo {
	position: absolute;
	top: -60px;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 50px;
	height: 298px;
}
}

.headlogo img {
	width: 40px;
	height: auto;
}
.toplogo img {
	width: 50px;
	height: auto;
}
.scroll_arr{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 5px;
	margin: 0 auto;
	width: 70px;
	height: 67px;
}

/*-----------------------------------
コンテンツ
-----------------------------------*/

#conts {
	position: absolute;
	width: 100%;
	top: 100%;
	text-align: center;
}
#about {
	font-size: 16px;
	line-height: 42px;
	letter-spacing: 0.1em;
	width: 100%;
	white-space:nowrap;
}
#about .title {
	font-size: 24px;
}
#about p {
	margin-bottom: 35px;
}



/*幅641px以上の場合*/
@media screen and (min-width: 641px) {
#conts {
	padding: 100px 0 30px;
	-moz-box-sizing: border-box;
    box-sizing: border-box;
}
#about {
	margin-bottom: 100px;
}
}

/*幅640px以下の場合*/
@media screen and (max-width: 640px) {
#conts {
	padding: 50px 0 30px;
	-moz-box-sizing: border-box;
    box-sizing: border-box;
}
#about {
	margin-bottom: 50px;
}
}




/*-----------------------------------
サムネイル
-----------------------------------*/



#sams {
    display:flex;
    flex-wrap:wrap;
	max-width:1060px;
	margin:0 auto;
}
.sam {
	width: 30%;
	text-align: left;
	margin: 0 10px 40px;
}

/*幅640px以下の場合*/
@media screen and (max-width: 640px) {
	#sams {
	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;
	width:100%;
	margin:0 auto;
}
.sam {
	width: 100%;
	text-align: left;
	margin: 10px;
}
}

.sam img {
	width: 100%;
}
.sam_title {
	margin-top: 7px;
	font-size: 18px;
	letter-spacing: 0.08em;
}
.sam_add {
	font-size: 14px;
	letter-spacing: 0.08em;
}
/*-----------------------------------
Youtubeチャンネル
-----------------------------------*/
#toyoutube {
	width: 100%;
	margin: 100px 0 30px;
	background-color: #eee;
	padding: 50px 0;
}
#toyoutube p {
	font-size: 16px;
	line-height: 38px;
	letter-spacing: 0.11em;
	margin-top: 10px;
}
#toyoutube img {
	width: 70px;
	height: auto;
}

/*-----------------------------------
copyright
-----------------------------------*/
.copyright {
	font-size: 12px;
	letter-spacing: 0.1em;
}
