@charset "utf-8";

html {
	scroll-behavior: smooth;
	font-size: 62.5%;
}
* {
	margin: 0;
	padding: 0;
}
body {
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "MS Pゴシック", "MS PGothic", sans-serif;
	font-size: 1.4em;
	line-height: 1.5;
	background-color: #f9f9f9;
	color: #333;
}
img {
	border: 0;
	vertical-align: bottom;
}
a {
	color: #4a5a95;
	border: 0;
}


/* テンプレートレイアウト ここから */
/* ヘッダー */
header {
	font-size: 0.9em;
	line-height: 1.2em;
	padding: 10px 10px 5px;
	box-sizing: border-box;
}
header h1 {
	float: left;
	width:50%;
}
header address {
	float: left;
	width: 25%;
	padding-top: 5px;
	font-style: normal;
}
header address a {
	text-decoration: none;
}
header address span {
	font-size: 0.9em;
}
header #rbox {
	float: left;
	width: 25%;
	text-align: center;
}

header #rbox p:not(:first-child) {
	float: right;
	width: 50%;
}
header #rbox p a {
	display:block;
	text-decoration: none;
	padding: 4px 0;
}
header #rbox p:nth-child(2) a {
	background-color: #e7e3e5;
}
header #rbox p:last-child a {
	background-color: #c9e4e4;
}
header img {
	max-width: 90%;
}
header #menuList {
	display: none;
	float: right;
	width: 50%;
}


/* ナビ */
nav {
	background-color: #e7e3e5;
	padding: 6px 10px;
	box-sizing: border-box;
}
body > nav > ul {
	padding: 0;
	list-style-type: none;
	width: 70%;
	margin: 0 0 0 auto;
}
body > nav > ul > li {
	float: left;
	width: 20%;
}
body > nav > ul > li > a {
	display: block;
	background-color: #fff;
	text-align: center;
	text-decoration: none;
	padding: 4px 0;
	border-top: 1px solid #4a5a95;
	border-left: 1px solid #4a5a95;
	border-bottom: 1px solid #4a5a95;
}
body > nav > ul > li:last-child a {
	border-right: 1px solid #4a5a95;
}
#top nav ul li#nav_top > a,
#product nav ul li#nav_product > a,
#sample nav ul li#nav_sample > a,
#contact nav ul li#nav_contact > a,
#about nav ul li#nav_about > a,
body > nav ul li a:hover {
	background-color: #4a5a95;
	color: #fff;
	font-weight: bold;
}
/* 製品と購入サブナビ */
nav li#nav_product {
	position: relative;
}
nav li#nav_product ul.subnav {
	/* display: none; */
	position: absolute;
	top: 31px;
	left: 0;
	list-style: none;
	/* height: 0;
	opacity: 0;
	transition: all 500ms ease 200ms; */
}


nav li#nav_product ul.subnav li {
	/* display: none; */
	width: 100%;
	height: 0;
	opacity: 0;
	transition: all 500ms ease 100ms;
}
nav li#nav_product ul.subnav.open li {
	/* display: block; */
	width: 300px;
	height: 41px;
	opacity: 0.9;

}
nav li#nav_product ul li a {
	display: block;
	text-decoration: none;
	color: #4a5a95;
	background-color: #efefef;
	border: 1px solid #4a5a95;
	padding: 10px;
}
nav li#nav_product ul li a:hover {
	background-color: #4a5a95;
	color: #fff;
}


/* パンクズリスト */
#breadcrumb ul {
	list-style-type: none;
	padding: 10px 30px 5px;
}
#breadcrumb ul li {
	display: inline;
	margin-right: 5px;
}
#breadcrumb ul li:not(:last-child)::after {
	content:" > ";
}

/* メイン */
main {
	padding-top: 5px;
	font-size: 1.6rem;
}

/* フッター */

footer {
	background-color: #e7e3e5;
}
footer nav {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin: 0 auto;
}

footer nav ul {
	width: 18%;
	list-style-type: none;
	box-sizing: border-box;
}
footer nav ul li {
	font-size: 0.9em;
}
footer nav ul li:not(.ttl)::before {
	content: "";
	display: inline-block;
	width: 0.8em;
	height: 0.8em;
	background-color: #333;
	border-radius: 50%;
	margin-right: 2px;
}
footer nav ul li.ttl {
	font-size: 1em;
	font-weight: bold;
	margin-left: 0;
	padding-top: 10px;
}
footer nav ul li a {
	color: #333;
	text-decoration: none;
}
footer nav ul li a:hover {
	color: #4a5a95;
}
footer #subnav p {
	text-align: center;
	padding-top: 30px;
}
footer #subnav p a {
	display: inline-block;
	padding: 1px 5px;
	font-size: 0.7em;
	text-decoration: none;
	border-right: 1px solid #333;
}
footer #subnav p a:last-child {
	border-right: 0;
}

footer #copyright {
	padding: 5px 0;
	margin-top: 10px;
	text-align: center;
	color: #4a5a95;
}

/* 共通クラス */
.red {
	color:#f00;
	font-size: 0.4em;
	vertical-align: super;
}
.mgt20 {
	margin-top: 20px;
}
.mgt30 {
	margin-top: 30px;
}
.pdb50 {
	padding-bottom: 50px;
}
.clearfix::after {
	content: "";
	display: block;
	clear: both;
}

@media screen and (min-width: 1000px)  {
	header, nav, #keyvisual, #breadcrumb, main, footer {
		margin: 0 auto 0 auto;
		width: 1000px;
	}
}

@media screen and (max-width: 768px)  {
	main div section#recommend,
	main div section#information {
		width: 100%;
	}
	main div section#information ul li {
		padding-left: 10em;
		text-indent: -10em;
	}
	main div section#information ul li time {
		display: inline-block;
		width: 10em;
		text-indent: 0;
	}
	footer nav {
		-webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
	}
	footer nav ul {
		width: 30%;
	}
	footer nav ul:not(:nth-child(3n)){
		margin-right: 5%;
	}
}
@media screen and (max-width: 480px)  {
	header address,
	header > rbox,
	body > nav {
		display: none;
	}
	main > section h2 {
		width: 100%;
	}
	footer nav ul {
		width: 45%;
	}
	footer nav ul:not(:nth-child(3n)){
		margin-right: 0;
	}
	footer nav ul:not(:nth-child(2n)){
		margin-right: 10%;
	}

}
