@charset "utf-8";

/*
Theme Name: RetroBase
Version: 2020.1
*/
/*---------------------------------------------------------
reset
---------------------------------------------------------*/

html, body, main, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	font-family: 'Noto Sans JP', sans-serif;
	position:relative;
	box-sizing:border-box;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}

body {
	background:url("img/bg.png");
	line-height: 1.5;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}
img{
	width:100%;
	vertical-align:bottom;
}
a:hover img {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-moz-opacity: 0.8;
}

body {
	background-color: #fff;
	-webkit-text-size-adjust: none;
	font-size: 16px;
	color: #333;
	line-height: 1.5;
}

a {
	color: #791a0a;
	outline: none;
}
.sp {
	display: none;
}


/*---------------------------------------------------------
header
---------------------------------------------------------*/
header {
	position:fixed;
	top:0;
	border-right:1px solid #791a0a;
	width:200px;
	height:100vh;
	z-index:100;
}
header h1{
	margin:30px auto;
	max-width:140px;
}
header .menu{
	border:10px solid #791a0a;
	margin:0 10px;
}
header .menu li{
	border-bottom: 10px solid #791a0a;
}
header .menu li:last-child{
	border-bottom:0;
}
header .menu a{
	background: #f9f7f3;
	display:block;
	font-family: 'Racing Sans One', cursive;
	color:#791a0a;
	padding: 10px;
	text-decoration:none;
}
header .menu a:hover{
	background: #791a0a;
	color:#fff;
}
.ig{
	position:fixed;
	right:4%;
	top:0;
	width:36px;
	z-index:3;
}
/*---------------------------------------------------------
main
---------------------------------------------------------*/
main {
	display: block;
	width: 100%;
	padding-left: 200px;
}
/*---------------------------------------------------------
article
---------------------------------------------------------*/

.breadcrumbs{
	font-size:12px;
	padding:30px;
}
.content{
	display:block;
	background:#f9f7f3;
	margin:0 30px;
	padding:60px;
}
.content.home{
	display:flex;
	justify-content:space-between;
}
.content .product_img{
	width:40%;
	margin-right:5%;
}
.content .txt{
	width:55%;
}
.content.home{
	display:block;
	padding-top:30px;
}
.content.home h2{
	font-size:1.5em;
	font-weight:600;
}
.content.home ul{
	display:flex;
	flex-wrap:wrap;
	margin-top:30px;
}
.content.home ul li{
	width:24%;
	margin:0 1% 30px 0;
}
.content.home ul li:nth-child(4n){
	margin-right:0;
}
.content.home img{
	width:100%;
	height:auto;
}
.product_img .pager ul {
	display: flex;
	flex-wrap: nowrap;
}
.product_img .pager ul li {
	max-width: 80px;
	width: auto;
	margin: 0 5px 0 0;
}
.product_img .pager ul li:nth-child(4) {
	margin-right: 0;
}
.content h1{
	color:#000;
	font-size:3rem;
	font-weight:600;
	margin-bottom:.5em;
}

.content img{
	width:auto;
	max-width:100%;
}
.content h2{
	font-size:1.25em;
	font-weight:600;
	margin-bottom:1em;
}
.content strong{
	display:block;
	font-size:1.25em;
	font-weight:600;
	margin-bottom:.5em;
}
.content p{
	margin-bottom:2em;
}
.content.product{
	display:flex;
}
.ask {
	display: inline-block;
	padding: 16px 32px;
	background: #e41313;
	border-bottom: solid 4px #bd1111;
	border-radius: 8px;
	color: #ffffff;
	text-decoration: none;
	font-size: 18px;
	font-weight: bold;
	line-heigt: 1.2em;
	-webkit-transition: .100s;
	transition: .100s;
}
.ask:hover {
	border-bottom: none;
	-webkit-transform: translateY(4px);
	transform: translateY(4px);
}
/*---------------------------------------------------------
product
---------------------------------------------------------*/
#product{
	display:flex;
}
#product li{
	display:flex;
	align-items:center;
	width:calc( 100% / 3 );
	padding: 12% 0 6%;
}
#product li img{
	max-width:194px;
	margin:auto;
}
#product li:first-child{
	background:#b5b7b5;
}
#product li:nth-child(2){
	background:#979a9b;
}
#product li:last-child{
	background:#737477;
}
/*---------------------------------------------------------
about
---------------------------------------------------------*/
#about figure{
	width:100%;
	position:relative;
}
#about figcaption{
	display:block;
	position:absolute;
	top:5%;
	left:0;
	right:0;
	max-width:334px;
	width:100%;
	margin:auto;
}
#about figcaption p{
	font-size:14px;
	line-height:2;
	margin-top:2em;
}
.spc{
	margin-top:60px;
	font-size:12px;
	text-align:center;
}
/*---------------------------------------------------------
form
---------------------------------------------------------*/
form{
	background:#fff;
	border-radius:10px;
	max-width:800px;
	padding:40px;
}
form dl{
	display:flex;
	border-bottom:1px solid #ccc;
	padding:20px 0;
}
form dt{
	width:30%;
	white-space:nowrap;
	padding-top:10px;
}
form dd{
	width:70%;
}
form dt span{
	display:inline-block;
	background:#791a0a;
	border-radius:4px;
	color:#fff;
	font-size:12px;
	text-align:center;
	padding:2px 1em;
	margin-left:5px;
}
form input[type=text],
form input[type=email],
form textarea{
	background:#fafafa;
	border-radius:5px;
	border:1px solid #ccc;
	font-size:1.125em;
	padding:0.5em;
	width:100%;
	box-sizing:border-box;
	-webkit-appearance: none;
}
.note{
	font-size:.8em;
	max-width:800px;
	margin-top:30px;
}
input[type=submit] {
	display: table;
	padding: 16px 32px;
	background: #e41313;
	border:0;
	border-bottom: solid 4px #bd1111;
	border-radius: 8px;
	color: #ffffff;
	text-decoration: none;
	font-size: 18px;
	font-weight: bold;
	line-heigt: 1.2em;
	-webkit-transition: .100s;
	transition: .100s;
	-webkit-appearance: none;
	margin:2em auto;
}
input[type=submit]:hover {
	border-bottom: none;
	-webkit-transform: translateY(4px);
	transform: translateY(4px);
}
/*---------------------------------------------------------
footer
---------------------------------------------------------*/

footer {
	width: 100%;
	color: #000;
	margin: auto;
	font-size: 13px;
	font-weight: 300;
	text-align: center;
	padding:100px 0;
}

/*---------------------------------------------------------
Mobile
---------------------------------------------------------*/
@media screen and (max-width: 767px) {
	body, html {
		min-width: 100%;
	}
	body {
		font-size: 15px;
	}
	img {
		max-width: 100%;
	}
	img.sp {
		width: 100%;
	}
	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
	header {
		background:url("img/bg.png");
		position:fixed;
		width:100%;
		height:auto;
		border:0;
		box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3);
		z-index:1;
	}
	header h1{
		max-width:unset;
		text-align:center;
		margin:0;
	}
	header img {
		width: 80px;
	}
	header .menu {
		border: 0;
		margin: 0;
	}
	header ul.menu {
		display:flex;
		justify-content:space-between;
	}
	header .menu li {
		border: 5px solid #791a0a;
		width:calc( 100% / 3);
		text-align: center;
	}
	header .menu li:nth-child(2){
		border-right:0;
		border-left:0;
	}
	header .menu li:last-child{
		border: 5px solid #791a0a;
	}
	header .menu a{
		padding:5px;
	}
	main {
		margin-top:150px;
		padding-left:0;
	}
	.content.home{
		padding:15px;
		margin:0 10px;
	}
	.content{
		padding:20px;
		margin:0 15px;
	}
	.content.home ul{
		justify-content:space-between;
	}
	.content.home ul li {
		font-size: 12px;
		width: 48%;
		margin: 0 0.5% 20px;
	}
	.content.home ul li:nth-child(4n) {
		margin-right: 0.5%;
	}
	.content h1{
		font-size: 1.5rem;
		margin-bottom:1em;
	}
	.content.product{
		display:block;
	}
	.content .product_img{
		width:100%;
		margin:0 0 20px;
	}
	.content .txt{
		width:100%;
	}
	.ask{
		display:table;
		margin:auto;
	}
	.eb_cat{
		margin-top:1em;
		font-size:10px;
	}
	.spc{
		display:none;
	}
	footer {
		font-size: 10px;
		padding: 30px 0;
	}
}