@charset "utf-8";
html {
	font-size: 10px;
}
body {
	background: var(--white);
	color: var(--p);
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	line-height: 1.7;
	overflow-x: hidden;
	width: 100%
}

@media (max-width:576px) {
html {
	font-size: 8px;
}
}
/*------------------------------------------------------------------
*
* reset
*
-------------------------------------------------------------------*/
nav ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
a, a:hover {
	text-decoration: none !important;
}
/*------------------------------------------------------------------
*
* header
*
-------------------------------------------------------------------*/

#header {
	border-bottom: #ddd 1px solid;
	padding-top: 10px;
	padding-bottom: 10px;
}
#header .logout a {
	font-size: 1.4rem;
	text-align: right;
}
/*------------------------------------------------------------------
*
* nav
*
-------------------------------------------------------------------*/
#nav {
	padding-top: 15px;
	padding-bottom: 15px;
}
#nav ul li a {
	border-radius: 4px;
	display: block;
	border: #ddd 1px solid;
	color: #111;
	padding: 5px;
	min-width: 50px;
	text-align: center;
	transition: .3s;
	font-size: 1.4rem
}
#nav ul li a:hover {
	color: #0275d8;
}
#nav ul li a.active {
	color: #0275d8;
}
#nav ul li a.active:hover {
	color: rgba(2,117,216,.50);
}
#nav .card {
	border: none;
}
#nav button {
	font-size: 1.4rem
}

@media (max-width:576px) {
#nav button {
	width: 100%;
}
}
/*------------------------------------------------------------------
*
* nav
*
-------------------------------------------------------------------*/
main {
	margin-bottom: 15px;
	display: block;
}
main h2 {
	background: #f1f1f1;
	font-size: 1.6rem;
	display: block;
	padding: 15px;
	margin-bottom: 2.6rem;
	transition: .3s
}

@media (max-width:768px) {
main h2 {
	padding: 10px 15px;
}
}
/*------------------------------------------------------------------
*
* search_list
*
-------------------------------------------------------------------*/
.category_list .card {
	padding: 10px;
}
.category_list .card figure {
	margin: 0;
	padding: 0;
	width: 100%;
	height: 230px;
	overflow: hidden;
	position: relative;
	margin-bottom: 5px;
}
.category_list .card figure img {
	width: 100%;
	height: auto;
	object-fit: cover;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.category_list .card .card-body {
	background: #f1f1f1;
	display: block;
	text-align: center;
	padding-top: 5px;
	padding-bottom: 5px;
}

@media (max-width:1200px) {
.category_list .card figure {
	height: 186px;
}
}

@media (max-width:998px) {
.category_list .card figure {
	height: 126px;
}
}

@media (max-width:576px) {
.category_list .card figure {
	width: 100%;
	height: auto;
}
.category_list .card figure:before {
	content: '';
	display: block;
	width: 100%;
	height: 0;
	padding-bottom: 79%;
}
}
/*------------------------------------------------------------------
*
* search_list
*
-------------------------------------------------------------------*/
#search_list {
	padding-top: 30px;
}
#search_list a {
	color: #111;
	display: block;
	text-align: center;
	padding: 10px;
	position: relative;
	transition: .3s;
	font-size: 1.4rem
}
#search_list a:hover {
	color: #0275d8;
}
#search_list a:after {
	font-family: FontAwesome;
	content: "\f105";
	position: absolute;
	right: 10px;
	top: 50%;
	line-height: 0;
	transition: .3s
}
#search_list a:hover:after {
	right: 20px;
}
/*------------------------------------------------------------------
*
* pager
*
-------------------------------------------------------------------*/
.pager {
	width: 100%;
	margin: 0;
	padding: 0;
	font-size: 0;
	list-style: none;
	text-align: center;
}
.pager li {
	display: inline-block;
	font-size: 1.4rem;
	margin: 0 1rem;
}
.pager li a {
	border-radius: 4px;
	border: #ddd 1px solid;
	display: block;
	padding: 8px 15px;
	text-align: center;
}
.pager li a.current {
	background: #0275d8;
	color: #fff;
}
