@charset "UTF-8";
/* -------------------------------------------------- */
/* レスポンシブ */
/* -------------------------------------------------- */
@media screen and (max-width: 960px) {
	.sp {
		zoom: 150%;
	}
}
@media screen and (max-width: 800px) {
	.sp {
		zoom: 125%;
	}
}
@media screen and (max-width: 640px) {
	.sp {
		zoom: 100%;
	}
}
@media screen and (max-width: 480px) {
	.sp {
		zoom: 75%;
	}
}
@media screen and (max-width: 1024px) {
	.sp {
		padding-top: 120px;
		width: 100%;
		-webkit-font-smoothing: antialiased;
	}
	.sp .contents, .sp section, .sp nav {
		width: 100%;
	}
	.sp header {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 100;
		background-color: #ffffff;
	}
	.sp header section {
		border-bottom: 4px solid #452000;
	}
	.sp header section h1 {
		width: 50%;
		background-size: contain;
	}
	.sp header section p {
		display: none;
		position: absolute;
		top: 20px;
		width: 65px;
		height: 65px;
		background-color: #fc0;
	}
	.sp header section p#header-twitter {
		right: 100px;
	}
	.sp header section p#header-tumblr {
		right: 180px;
	}
	.sp header section p a {
		display: block;
		width: 100%;
		height: 100%;
	}
	.sp header #sp-button {
		position: absolute;
		top: 20px;
		right: 20px;
		display: block;
		width: 65px;
		height: 65px;
		background-image: url(../_img/header/sp-button.png);
	}
	.sp header nav {
		display: none;
		height: auto;
	}
	.sp header nav.active {
		display: block;
	}
	.sp header nav ul {
		width: 100%;
		height: auto;
		background: none;
	}
	.sp header nav ul li {
		float: none;
		display: block;
		width: 100%;
		height: 60px;
		border-bottom: 3px solid #452000;
		background-position: 8px 0;
		background-color: #ffffff;
	}
	.sp header nav ul li:nth-of-type(1) {
		background-image: url(../_img/header/sp-top.png);
	}
	.sp header nav ul li:nth-of-type(2) {
		background-image: url(../_img/header/sp-products.png);
	}
	.sp header nav ul li:nth-of-type(3) {
		background-image: url(../_img/header/sp-goods.png);
	}
	.sp header nav ul li:nth-of-type(4) {
		background-image: url(../_img/header/sp-event.png);
	}
	.sp header nav ul li:nth-of-type(5) {
		background-image: url(../_img/header/sp-blog.png);
	}
	.sp header nav ul li:nth-of-type(6) {
		background-image: url(../_img/header/sp-support.png);
	}
	.sp header nav ul li:nth-of-type(7) {
		background-image: url(../_img/header/sp-twitter.png);
	}
	.sp header nav ul li:nth-of-type(8) {
		background-color: #452000;
		background-image: url(../_img/header/sp-close_btn.png);
		background-position: right 8px center;
	}
	.sp header nav ul li:nth-of-type(8) p {
		height: 100%;
		background-image: url(../_img/header/sp-close_txt.png);
		background-position: 50% 50%;
	}
	.sp header nav ul li a {
		opacity: 1;
		background: none;
	}
	.sp header nav ul li a:hover {
		opacity: 1;
	}
	.sp #pagetop {
		display: none;
	}
	.sp footer {
		height: auto;
		width: 100%;
	}
	.sp footer nav {
		display: none;
	}
	.sp #top-mainvisual div {
		width: 100%;
	}
	.sp #top-mainvisual div img {
		width: 100%;
	}
	.sp article {
		margin-left: auto;
		margin-right: auto;
	}
	.sp #top-maincontents #rside {
		width: 100%;
		clear: both;
	}
	.sp #top-maincontents #rside .top-rside {
		clear: both;
	}
	.sp #top-maincontents #rside #top-topics p a {
		opacity: 1;
	}
	.sp #top-maincontents #rside #top-topics p a img {
		margin-bottom: 16px;
		width: 95%;
		transform: none;
	}
	.sp #top-maincontents #rside #top-news {
		padding-bottom: 20px;
		overflow-x: scroll;
		-webkit-overflow-scrolling: touch;
	}
	.sp #top-maincontents #rside #top-news > a {
		display: inline-block;
		float: none;
		clear: none;
		margin: 12px;
	}
	.sp #top-maincontents #rside #top-news-more {
		position: absolute;
		bottom: 0;
		right: 0;
	}
	.sp #top-maincontents aside {
		width: 100%;
		clear: both;
	}
	.sp #top-maincontents aside #top-twitter {
		width: 100%;
	}
	.sp #top-maincontents aside #top-twitter h2 {
		display: block;
		width: 99%;
		padding-right: 4px;
	}
	.sp #top-maincontents aside #top-twitter .main {
		display: inline-block;
		width: 99%;
		height: 300px;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}
	.sp #top-maincontents aside #top-twitter .main iframe {
		display: block !important;
		width: 100% !important;
		height: 100% !important;
	}
	.sp #top-maincontents aside #top-products h2 {
		width: 99%;
		padding-right: 4px;
	}
	.sp #top-maincontents aside #top-products .main {
		width: 99%;
		text-align: center;
	}
	.sp #top-maincontents aside #top-products .main p {
		/*float: left;
		width: 50%;*/
		display: inline-block;
		width: 80%;
	}
	.sp #top-maincontents aside #top-products .main p img {
		width: 95%;
	}
	.sp #top-maincontents aside #top-niconico .main {
		padding: 20px 0;
		text-align: center;
	}
	.sp #top-maincontents aside #top-niconico .main iframe {
		width: 95%;
	}
	.sp #products .product-data img {
		width: 100%;
	}
	.sp #products .product-data dl {
		width: 100%;
		padding-top: 20px;
	}
	.sp #products .product-data dt {
		width: auto;
		height: auto;
		padding: 8px;
		font-size: 16px;
		font-weight: bold;
	}
	.sp #products .product-data dd {
		clear: both;
		width: 100%;
		font-size: 18px;
	}
	.sp #products .product-data dd p {
		font-size: 18px;
	}
	.sp #products .product-data .product-anchor {
		position: relative;
		top: 0;
		left: 0;
		clear: both;
		float: right;
		font-size: 16px;
	}
	.sp .blog-contents h3 {
		height: auto;
		margin: 0;
	}
	.sp .blog-contents h3 span {
		display: block;
		height: auto;
	}
	.sp .blog-contents .blog-date {
		position: relative;
		top: 0;
		left: 0;
		font-size: 12px;
	}
	.sp .blog-contents img {
		width: 100%;
		height: auto;
	}
	.sp .blog-contents imghover {
		opacity: 1;
	}
	.sp .blog-contents img iframe {
		width: 100% !important;
	}

	/* - - - - - Event - - - - - */
	.sp .event_title {
		white-space: nowrap;
		letter-spacing: 0;
		font-size: 20px;
	}
	.sp #event h3 p.event-date {
		position: absolute;
		bottom: 0;
		right: 0;
		line-height: 20px;
		font-size: 12px;
		text-align: right;
		border: none;
	}
	.sp #event h3 p.event-title {
		width: 100%;
		text-align: center;
		padding: 0 0 20px 0;
	}
	.sp #event .event-goods {
		padding: 20px 0;
	}
	.sp #event .event-goods h4 {
		width: 100%;
		margin: 0 0 20px;
		background-image: none;
	}
	.sp #event .event-goods h4 span {
		font-size: 12px;
	}
	.sp #event .event-goods img {
		position: relative;
		left: 0;
		top: 0;
		width: 100%;
		margin: 0 0 20px;
	}
	.sp .eventblock img {
		width: 100%;
	}
	.sp #event .event-goods table {
		margin: 0 0 20px;
	}
	.sp #event .event-goods table th {
		white-space: nowrap;
	}
	.sp #event .event-goods p {
		margin: 0;
		width: 100%;
		color: #212121;
	}


	/* - - - - - Support - - - - - */
	.sp #support p {
		width: 100%;
	}
	.sp #support dl {
		margin-left: 0;
		width: 100%;
	}
	.sp #support dl dt {
		width: 100%;
	}
	.sp #support dl dt span {
		position: relative;
		top: 0;
		left: 0;
		margin-left: 20px;
	}
	.sp #support dl dd {
		width: 100%;
		border: none;
	}
	.sp #support dl dd input, .sp #support dl dd textarea, .sp #support dl dd select {
		width: 80%;
		margin: auto 20px;
	}
	.sp #support #check span {
		display: inline-block;
		width: auto;
		white-space: nowrap;
		padding: 0 20px;
	}
	.sp #verification dl {
		width: 80%;
		text-align: left;
		margin: auto;
	}
	.sp #verification dt {
		width: 100%;
		border-top: 2px solid #BDBDBD;
	}
	.sp #verification dd {
		width: 100%;
		padding: 0 0 20px;
	}
	.sp #verification span, .sp #verification pre {
		border: none;
	}
	.sp #verification #submitarea input, .sp #verification #submitarea span {
		width: 45%;
	}
}
