
body {
	background-color: #FFFFFF;
	text-align: center;
	margin: 0px;
	padding: 0px;
	font-size: 12px;
}
a {
	color:#000000;
}

br.clear {
	clear: both;
	height: 0px;
	padding: 0;
	margin: 0;
	line-height: 0%;
}

/* Chromeでも縮小した画像を鮮明に表示 */
img {
	-webkit-backface-visibility: hidden;
}

/* -------------------------------- layout --------------------------------- */

.side_menu {
	width: 100%;
	position: relative;
	z-index: 2;
}
#menu-content {
	width: 25%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 100%;
	background-color: #FFEFFF;
	transition: all 0.5s;
	font-size: 15px;
	padding: 36px 12px 36px 24px;
	text-align:left;
}
#menu-content a.form_btn {
	font-size: 14px;
	vertical-align: middle;
	text-decoration: none;
	margin: 0px;
	padding: 2px 18px;
	font-weight: bold;
	border: 2px solid #FF6699;
	background: #FFFFFF;
	color: #FF6699;
	border-radius: 7vh;
	transition: 0.5s;
}
#menu-content a.form_btn:hover {
	color: #fff;
	background: #FF6699;
}

#header {
	position: relative;
	z-index: 1;
	width: 100%;
	height: 0;
	padding-top: calc(125 / 900 * 100%);
	background: url(../images/header.jpg) center center / cover no-repeat;
	margin: 0px;
}
#header h1 {
	text-indent:-9999px;
}

#contents {
	position: relative;
	z-index: 1;
	margin: 0 auto;
	text-align: left;
	width: 90%;
	max-width: 960px;
}
#contents .form {
	float:right;
	margin: 18px 0px 0px;
	padding: 0px;
}
#contents .form_select {
	font-size: 14px;
	lign-height: 22px;
	padding: 4px 4px;
}
#contents a.form_btn {
	position:relative;
	top:-3px;
	font-size: 14px;
	vertical-align: middle;
	text-decoration: none;
	margin: 0px 0px 0px 12px;
	padding: 2px 18px;
	font-weight: bold;
	border: 2px solid #CC66CC;
	color: #CC66CC;
	border-radius: 7vh;
	transition: 0.5s;
}
#contents a.form_btn:hover {
	color: #fff;
	background: #CC66CC;
}
#contents div.login {
	float:right;
	margin: 18px 24px 0px 0px;
	padding: 0px;
}
#contents a.login {
	top:3px;
	border: 2px solid #FF6699;
	color: #FF6699;
}
#contents a.login:hover {
	background: #FF6699;
}
#contents a.top_0 {
	top:0px;
}
#contents .input_regist {
	font-size: 14px;
	lign-height: 22px;
	padding: 4px 4px;
}
#contents .contribution {
	font-size: 14px;
	padding: 5px;
}


#main {
	position: relative;
	z-index: 2;
	margin: 12px 0px 12px;
	padding: 0px;
}
#main .art_box {
	float:left;
	position:relative;/* it's needed for Safari */
	width: 300px;
	height: auto;
	margin: 10px 10px;
	padding: 0px;
	display:block;
}
#main .picture {
	float:left;
	width: 120px;
	margin-right: 10px;
	padding: 0px;
}
#main .art_text {
	float:left;
	width: 170px;
	margin: 0px;
	padding: 0px;
}
#main .title {
	font-size: 14px;
	font-weight: bold;
}
#main .gago {
	font-size: 14px;
	color: #9966CC;
}
#main .date {
	font-size: 11px;
}
#main .comment {
	font-size: 13px;
}
#main .tag {
	font-size: 11px;
	color: #cc99ff;
}
#main p {
	font-size: 14px;
}
#main .b {
	font-weight: bold;
}

/* ------------------------------ copy -------------------------------------- */
#copy {
	position: relative;
	z-index: 1;
	clear: both;
	text-align: center;
	width: 100%;
	margin: 10px 0px;
	padding: 10px 0px;
	font-size: 12px;
	line-height: 18px;
	color: #666666;
	border-top: solid 1px #DCDABB;
}

/* pagetop */
.pagetop{
	z-index: 1;
	display:none;
	position:fixed;
	bottom:40px;
	right:10px;
}
.pagetop a{
	display:block;
	width:46px;
	height:32px;	
	background-color:rgba(0,0,0,0.4);
	border:solid 1px #fff;
	border-radius:4px;
	-moz-border-radius:4px;
	-webkit-border-radius:4px;
	text-align:center;
	color:#fff;
	font-size:10px;
	text-decoration:none;
	line-height:32px;
}
.pagetop a:hover{
	display:block;
	width:46px;
	height:32px;	
	background-color:rgba(0,0,0,0.5);
	border:solid 1px #fff;
	border-radius:4px;
	-moz-border-radius:4px;
	-webkit-border-radius:4px;
	text-align:center;
	color:#fff;
	font-size:10px;
	text-decoration:none;
	line-height:32px;
}

/** PC *****************************************************************************/
@media screen and (min-width: 768px) {

	.pc-none {
		display: none !important;
	}
}

/** PC & tablet ********************************************************************/
@media screen and (min-width: 480px) {

}

/** tablet *************************************************************************/
@media screen and (max-width: 767px) {

	.sp-none {
		display: none !important;
	}

	#header {
		padding-top: calc(125 / 640 * 100%);
		background: url(../images/header_s.jpg) center center / cover no-repeat;
	}
	#menu-content a.form_btn {
		font-size: 16px;
		padding: 8px 18px;
	}
	#menu-content p.hallo {
		font-size: 24px;
	}
	#menu-content a.hallo {
		font-size: 18px;
	}
	#contents {
		width: 100%;
	}
	#contents .form {
		margin: 18px 20px 0px 0px;
	}
	#contents .form_select {
		font-size: 14px;
		lign-height: 34px;
		padding: 4px 8px;
	}
	#contents a.form_btn {
		font-size: 14px;
		padding: 4px 8px;
		margin-left: 0px;
	}
	#contents a.form_btn_16 {
		font-size: 16px;
		padding: 8px 18px;
	}
	#contents a.login {
		top:3px;
	}

	#contents .file {
		font-size: 14px;
	}
	#contents .contribution {
		width: calc(100% - 10px);
	}

	#contents .tag_list {
		margin: 10px 20px;
		font-size:14px;
	}

	#main {
		margin: 12px 0px 48px;
	}
	#main .padding_10 {
		padding: 0px 10px;
	}
	#main .art_box {
		float:none;
		width: calc( 100% - 40px );
		margin: 20px 20px;
	}
	#main .picture {
	}
	#main .art_text {
		width: calc( 100% - 130px );
	}
	#main .title {
		font-size: 18px;
	}
	#main .gago {
		font-size: 18px;
	}
	#main .date {
		font-size: 14px;
	}
	#main .comment {
		font-size: 14px;
	}
	#main .tag {
		z-index: 1;
		font-size: 12px;
	}
	#main br.clear {
		clear: both;
		height: 0px;
		padding: 0;
		margin: 0;
		line-height: 0%;
	}
	#main a {
		text-decoration:none;
	}
	#main a.tag {
		color: #cc99ff;
	}

	#copy {
		width: 100%;
		margin: 10px 0px;
	}
}

/** smartphone *********************************************************************/
@media screen and (max-width: 479px) {

	.pagetop{
		bottom:40px;
	}

}
