* {
font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
}

.visible { display: block; }
.invisible { display: none; }
.tab-button {
	display:flex;
	justify-content:space-between;
}
.tab-radio { display: none; }
.tab-label {
	display: inline-block;
	font-size: medium;
	font-weight: bold;
	text-align: center;
	background-color: #F0F0F0;
	cursor: pointer;
	padding: 5px 10px;
	margin: 2px;
	width: 100%;
}
.tab-radio:checked + .tab-label {
	color: white;
	background-color: darkslateblue;
}



.tier th:nth-child(1) {
	width: 60px;
	background: #F0F0F0;
}
.ranking th { background: #F0F0F0; }
.ranking th:nth-child(1) { width: 50px; }

.pokepoke-deck {
	border-radius: 5px;
	border: 2px solid #A0A0A0;
	background: #F0F0F0;
}
.pokepoke-energy {
	display: block;
	margin: 2px;
	padding: 3px 10px;
	border-radius: 3px;
	font-size: small;
	font-weight: bold;
	background: #D0D0D0;
}
.pokepoke-energy img {
	vertical-align: middle;
}
.pokepoke-card {
	display: inline-block;
	margin: 0.5px;
	font-size: x-small;
	text-align: center;
	vertical-align: top;
	width: 70px;
}



.popup input {
    display: none;
}
.popup-button {
	position: relative;
    cursor: pointer;
}
.popup input:not(:checked) ~ .popup-background {
	display: none;
}
.popup input:not(:checked) ~ .popup-window {
	display: none;
}
.popup-background{
	z-index: 998;
	position: fixed;
	top : 0;
	left : 0;
	height : 100vh;
	width : 100vw;
	background-color: black;
	opacity : 0.5
}
.popup-window {
	--height : 400px;
    --width : 400px;
	z-index: 999;
	position: fixed;

	top: calc(50vh - calc(var(--height) / 2));
	left: calc(50vw - calc(var(--width) / 2));
	height: var(--height);
	width: var(--width);

	background-color: white;
	border-radius: 10px;
	box-shadow: 0px 0px 3px 1px gray;
}
.popup-window > .popup-close-button{
	--size : 30px;
	position: absolute;
	top : calc(var(--size)/4);
	left : calc(var(--width) - var(--size) * 5/4 - 10px);
	height : var(--size);
	width : var(--size);
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: var(--size);
	border-radius: calc(var(--size)/5);
	color : gray;
}
.popup-window > .popup-close-button:hover{
	background-color: red;
	color : white;
}
.popup-contents {
	padding: 10px 5px 5px 5px;
	height: 360px;
	overflow: scroll;
}

.accident-rate{
	font-size: large;
	font-weight: bold;
	color: darkslateblue;
}


.filter-item {
	display: inline-block;
	font-size: x-small;
	text-align: center;
	vertical-align: top;
	width: 100px;
}
.filter-item img {
	display: block;
	text-align: center;
}



/* Common */
html {
	scroll-behavior: smooth;
}
.container-fluid {
	width: calc(100% - 22px);
	padding-right: 15px;
	padding-left: 15px;
	margin-right: auto;
	margin-left: auto;
	max-width: 1132px;
}
description {
	color: #808080;
	font-size: small;
}
.sub-info {
	color: #808080;
	font-size: small;
}
h1 {
    position: relative;
    border-radius: 10px;
    margin-bottom: 10px;
    color: #404040;
    font-weight: bold;
    font-size: x-large;
}
h2 {
    position: relative;
    padding: 1rem;
    border-radius: 10px;
    margin-bottom: 10px;
	font-size: 18px;
    font-weight: bold;
    color: white;
    background-color: darkslateblue;
}
h3 {
    position: relative;
    padding: 3px 5px;
    margin-bottom: 10px;
    font-size: 16px;
    font-weight: bold;
	color: darkslateblue;
	border-bottom: 3px solid darkslateblue;
}
h4 {
	padding: 3px 18px;
    color: darkslateblue;
    font-size: 14px;
    position: relative;
}
h4:before {
    position: absolute;
	content:"▶";
	left: 0;
    top: 2px;
    font-size: 16px;
    font-weight: bold;
    color: darkslateblue;
}

.point {
	position: relative;
	line-height: 1.4;
	padding: 0.25em 0.5em;
	margin: 2em 0 0.5em;
	font-size: 14px;
	font-weight: bold;
	color: black;
	background: lemonchiffon;
}
.point:after {
	position: absolute;
	font-weight: 900;
	content: 'Point';
	left: 0px;
	bottom: 100%;
	padding: 5px 10px 3px;
	font-size: 14px;
	font-weight: bold;
	color: white;
	background: goldenrod;
	line-height: 1;
}

p {
	font-size: 14px;
}

table {
	width: 100%;
	border-collapse: collapse;
} 
table th, table td {
	padding: 5px;
	border: 1px solid #A0A0A0;
	font-size: small;
}
table th {
	font-weight: bold;
	background-color: #E0E0E0;
}

.row {
	display: flex;
	flex-wrap: wrap;
	margin-right: -15px;
	margin-left: -15px;
}
.justify-content-center {
	justify-content: center !important;
}

ul[class], ol[class] {
	list-style: none;
	padding-left: 0;
}

a {
	text-decoration: none;
	color: royalblue;
}
a img {
	border: 2px solid transparent;
	vertical-align: middle;
	padding-bottom: 1px;
}
a:hover, a:focus {
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted;
}
a img:hover, a img:focus {
	border: 2px solid royalblue;
}
hr {
    border: 0;
    border-bottom: 1px dashed white;
    background: #808080;
}
summary {
	margin: 3px;
	color: darkslateblue;
	font-size: small;
	font-weight: bold;
	vertical-align: middle;
}
summary:hover {
	cursor: pointer;
}
button {
	border: 2px solid darkslateblue;
	border-radius: 10px;
	margin: 3px;
	padding: 5px 10px;
	font-size: small;
	color: darkslateblue;
	background-color: white;
	vertical-align: middle;
	width: 100%;
}
button:hover {
	background-color: rgb(211, 208, 230);
	cursor: pointer;
}
button:active {
	background-color: rgb(200, 200, 255);
	cursor: pointer;
}
.checkbutton { 
	display: none;
}
.checkbutton-label {
	border: 2px solid darkslateblue;
	border-radius: 10px;
	display: inline-block;
	margin: 3px;
	padding: 5px 10px;
	font-size: small;
	color: darkslateblue;
	vertical-align: middle;
}
.checkbutton-label img {
	vertical-align: middle;
}
.checkbutton-label:hover {
	background-color: rgb(211, 208, 230);
	cursor: pointer;
}
.checkbutton:checked + .checkbutton-label {
	color: white;
	background-color: darkslateblue;
}
.radiobutton { 
	display: none;
}
.radiobutton-label {
	border: 2px solid #404040;
	border-radius: 10px;
	display: inline-block;
	margin: 3px;
	padding: 5px 10px;
	font-size: small;
	color: #404040;
	vertical-align: middle;
	text-align: center;
	width: 100%;
}
.radiobutton-label img {
	vertical-align: middle;
}
.radiobutton-label:hover {
	background-color: #D0D0D0;
	cursor: pointer;
}
.radiobutton:checked + .radiobutton-label {
	color: white;
	background-color: #404040;
}
.filter-input th:nth-child(1) {
	width: 120px;
}
.filter-input input[type="search"] {
	width: 100%;
	padding: 5px;
}
.button-link {
	text-decoration: none;
	border-radius: 100px;
	opacity: 1;
	font-family: "Noto Sans JP", sans-serif;
	margin: 10px;
	padding: 15px;
	display: inline-block;
	background-color: #FFFFFF;
	color: darkslateblue;
	border: 2px solid darkslateblue;
	width: 100%;
	max-width: 300px;
	text-align: center;
	font-size: large;
}
.button-link:hover, .button-link:focus {
	text-decoration: none;
	background-color: darkslateblue;
	color: #FFFFFF;
}

.search-form {
	top: 15px;
	right: 15px;
	padding: 0;
	width: 260px;
	margin-left: auto;
}
.content .search-form {
	margin: 0 auto 0 0;
}
.search-field {
	padding: 3px;
	min-width: 12em;
	vertical-align: middle;
}
.search-submit {
	width: 50px;
	vertical-align: middle;
}

/* Home */
.home-title {
	text-align: center;
	margin-bottom: 45px;
	color: #404040;
	font-size: x-large;
	background-color: transparent;
}
.gametitle-col {
	margin: 15px;
	text-align: center;
	font-size: small;
}
.gametitle-col img {
	display: block;
}
.article-item {
	border-bottom: 1px dotted #D5D1CA;
	margin-right: auto;
}
.article-item:first-of-type {
	border-top: 1px dotted #D5D1CA;
}
.article-itemlink {
	display: flex;
	text-decoration: none;
	color: #404040;
	padding-top: 15px;
	padding-bottom: 15px;
}
.article-itemimg {
	width: 160px;
}
.article-itembody {
	flex: 1;
	font-size: small;
}
.article-itemtitle {
	margin: 0;
	color: darkslateblue;
	font-size: medium;
}
.article-itemmeta {
	color: #767268;
}
.article-itemmeta li {
	display: inline-block;
}
.article-itemcategory:after {
	display: inline-block;
	width: 1px;
	height: 1em;
	margin-right: .3em;
	margin-left: .5em;
	content: "";
	transform: skew(-10deg) translateY(0.1em);
	background-color: #767268;
}



/* Header */
.header {
	padding-top: 15px;
	padding-bottom: 15px;
	padding-right: 30px;
	border-bottom: 2px solid #404040;
	background-color: white;
}
.header-contents{
	display: flex;
	justify-content: space-between;
	width: 100%;
	padding-right: 15px;
	padding-left: 15px;
	margin-right: auto;
	margin-left: auto;
	max-width: 1132px;
}
.header-SiteName {
	margin-left: 10px;
	margin-bottom: 10px;
}
.header-SiteName_Link {
	display: block;
	width: 150px;
	text-decoration: none;
	color: #404040;
}
.header-Tagline {
	font-weight: normal;
	display: block;
	text-transform: uppercase;
	color: #767268;
	font-size: small;
}
.header-Nav {
	position: fixed;
	z-index: 10;
	top: 0;
	right: 0;
	width: 260px;
	height: 100%;
	margin-right: -260px;
	transition: margin-right .2s ease-in-out;
	background-color: #F7F6F5;
}
body.is-DrawerActive .header-Nav {
	margin-right: 0;
}
.header-Nav_Items {
	overflow-y: auto;
}
.header-NavToggle {
	position: absolute;
	top: 15px;
	right: 100%;
	width: 40px;
	height: 40px;
	padding: 0 5px;
	cursor: pointer;
	transition: all .2s ease-in-out;
	border: none;
	background-color: transparent;
}
.header-NavToggle_Bar {
	display: block;
	width: 100%;
	height: 2px;
	content: "";
	transition: all .2s ease-in-out;
	background-color: #404040;
}
.header-NavToggle_Bar::before, .header-NavToggle_Bar::after {
	display: block;
	width: 100%;
	height: 2px;
	content: "";
	transition: all .2s ease-in-out;
	background-color: #404040;
}
.header-NavToggle_Bar:before {
	transform: translateY(-9px);
}
.header-NavToggle_Bar:after {
	transform: translateY(7px);
}
.header-NavToggle[aria-expanded="true"] .header-NavToggle_Bar {
	background-color: transparent !important;
}
.header-NavToggle[aria-expanded="true"] .header-NavToggle_Bar:before {
	transform: translateY(0) rotate(45deg);
	background-color: #404040;
}
.header-NavToggle[aria-expanded="true"] .header-NavToggle_Bar:after {
	transform: translateY(-2px) rotate(-45deg);
	background-color: #404040;
}
.header-Nav li {
	position: relative;
	border-bottom: none;
}
.header-Nav a {
	position: relative;
	display: block;
	padding: 0.7em 15px;
	text-decoration: none;
	color: royalblue;
	overflow-wrap: break-word;
}
.header-Nav a:after {
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	width: 0;
	height: 2px;
	content: "";
	transition: all .2s ease-in-out;
	background-color: darkslateblue;
	color: white;
}
.header-Nav a:hover, .header-Nav a:focus {
	outline: none;
}
.header-Nav a:hover:after, .header-Nav a:focus:after {
	width: 100%;
}
.header-Nav .search-form {
	padding-top: 15px;
	padding-left: 15px;
	padding-right: 15px;
}
.header-Nav .search-field {
	max-width: 10em;
}
.search-submit {
	min-height: 1.5em;
	padding: .2em .7em;
	color: white;
	border: 1px solid darkslateblue;
	border-radius: 0.2em;
	background-color: darkslateblue;
}
.breadCrumb {
	padding-top: 15px;
	padding-bottom: 15px;
	padding-right: 15px;
	margin-top: 5px;
	color: #404040;
	border: 1px solid #404040;
	border-top: 4px solid #404040;
	font-size: 14px;
}
.breadCrumb a {
	text-decoration: none;
	color: royalblue;
}
.breadCrumb a:hover,
.breadCrumb a:focus {
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted;
}
.breadCrumb-Nav {
	width: 100%;
	padding-left: 15px;
	margin-right: auto;
	margin-left: auto;
	max-width: 1132px;
}
.pagination {
	text-align: center;
	margin-top: 45px;
	margin-bottom: 45px;
}
.pagination .nav-links {
	font-family: "Noto Sans JP", sans-serif, sans-serif;
}
.pagination .page-numbers {
	display: inline-block;
	padding: .5em 1em;
	text-decoration: none;
	color: #404040;
	border: 2px solid #edeceb;
	border-radius: 0.2em;
	background-color: #F7F6F5;
	font-size: 0.875rem;
}
.pagination .page-numbers:hover {
	border-color: darkslateblue;
}
.pagination .page-numbers.current {
	color: #FFFFFF;
	border-color: darkslateblue;
	background-color: darkslateblue;
}
.pagination .page-numbers.dots {
	padding: 0 .5em;
	border: none;
	background-color: transparent;
}



/* Content */
.content-EyeCatch {
	margin-bottom: 30px;
}
.content-EyeCatch img {
	padding: 5px;
	width: 100%;
	height: 100%;
}
.content-col {
	flex: 0 0 100%;
	max-width: 100%;	
}
.content-col .main {
	margin-left: 20px;
	margin-right: 40px;
}
.content-Meta {
	color: #767268;
	font-size: 0.875rem;
}
.content-Meta a {
	text-decoration: none;
	color: royalblue;
	display: inline-block;
	margin-top: 15px;
}
.content-Meta a:hover {
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted;
}
.content-Meta .content-Meta_Date:before {
	content: "/";
}
.content-Nav {
	color: #808080;
	border-top: 1px dotted #D5D1CA;
	margin-top: 30px;
	margin-bottom: 30px;
	padding-top: 30px;
}
.content-Nav a {
	text-decoration: none;
	color: #808080;
}
.content-Nav a:hover,
.content-Nav a:focus {
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted;
}
.content-Nav_Prev,
.content-Nav_Next {
	margin-bottom: 15px;
}
.content-Nav_Next {
	text-align: right;
}




/* Sidebar */
.sidebar-col {
	flex: 0 0 100%;
	max-width: 100%;
}

/* Footer */
.footer {
	margin-top: 10px;
	padding-right: 22px;
	border-top: 2px solid #404040;
	background-color: white;
}
.footer-Widgets {
	padding-top: 30px;
}
.footer-col {
	flex: 0 0 100%;
	max-width: 100%;
}

/* Widget */
.widget_block {
	
	margin-right: 40px;
}
.widget_block h1,
.widget_block h2,
.widget_block h3,
.widget_block h4,
.widget_block h5,
.widget_block h6 {
	margin-bottom: 10px;
	padding-top: 10px;
	font-size: large;
}
.widget_block p {
	margin-left: 10px;
}
.widget_block a {
	margin-left: 10px;
	text-decoration: none;
	color: royalblue;
}
.widget_block a:hover, .widget_block a:focus {
	text-decoration: underline;
	-webkit-text-decoration-style: solid;
	text-decoration-style: solid;
}
.wp-block-latest-posts.wp-block-latest-posts__list:not(.is-grid) li {
	padding: .5em 0;
}
.wp-block-latest-posts.wp-block-latest-posts__list:not(.is-grid) li:not(:last-child) {
	border-bottom: 1px solid #D5D1CA;
}
.wp-block-categories-list.wp-block-categories:not(.is-grid) li {
	padding: .5em 0;
}
.wp-block-categories-list.wp-block-categories:not(.is-grid) li:not(:last-child) {
	border-bottom: 1px solid #D5D1CA;
}
.wp-block-archives-list.wp-block-archives:not(.is-grid) li {
	padding: .5em 0;
}
.wp-block-archives-list.wp-block-archives:not(.is-grid) li:not(:last-child) {
	border-bottom: 1px solid #D5D1CA;
}
.wp-block-search .wp-block-search__input {
	min-height: 1.5em;
	padding: .2em;
	border: 1px solid #767268;
	border-radius: 0.2em;
	flex-grow: 1;
	min-width: 3em;
}
.wp-block-search .wp-block-search__button {
	background-color: darkslateblue;
	color: #FFFFFF;
	border: none;
	border-radius: 0.2em;
	fill: #FFFFFF;
	padding: .375em .625em;
	margin-left: .625em;
}
.wp-block-search .wp-block-search__inside-wrapper {
	display: flex;
	flex: auto;
	flex-wrap: nowrap;
	width: 300px;
}
.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper {
	border-color: darkslateblue;
	border-radius: 1em;
}
.footer-Copyright {
	text-align: center;
	padding-top: 15px;
	padding-bottom: 30px;
	color: white;
	background-color: #404040;
}

@media screen and (min-width: 1133px) {

	/* Header */
	.header {
		display: flex;
		padding-top: 15px;
		padding-bottom: 15px;
		padding-right: 15px;
		align-items: flex-end;
		background-color: white;
	}
	.header-SiteName {
		display: inline-block;
		margin-bottom: 0;
	}
	
	.header-SiteName_Link {
		width: 300px;
	}
	
	.header-Tagline {
		font-size: small;
	}
	.header-right {
		display: inline-block;
		text-align: justify;
	}
	.header-Nav {
		position: inherit;
		width: auto;
		margin-right: auto;
		background-color: transparent;
		flex: 1;
		text-align: right;
	}
	.header-Nav_Items {
		display: flex;
		flex-direction: row;
		height: auto;
		margin-bottom: 0;
		flex: 1;
		justify-content: flex-end;
	}
	.header-NavToggle {
		display: none;
	}
	body:after {
		content: none;
	}
	.header-Nav li {
		position: relative;
		border-bottom: none;
		display: inline-block;
	}
	.header-Nav a {
		padding: 10px 10;
		text-align: center;
	}
	.header-Nav a:hover, .header-Nav a:focus {
		outline: none;
	}
	.header-Nav a:hover:after, .header-Nav a:focus:after {
		width: 100%;
	}

	/* Content */
	.content-col {
		flex: 0 0 810px;
		max-width: 810px;
	}
	.content-Nav {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
	}
	.content-Nav_Prev,
	.content-Nav_Next {
		width: 50%;
	}

	/* Sidebar */
	.sidebar-col {
		flex: 0 0 300px;
		max-width: 300px;
	}

	/* Footer */
	.footer-col {
		flex: 0 0 33.333%;
		max-width: 33.333%;
	}
	.footer-Widgets {
		padding-top: 30px;
		padding-bottom: 30px;
	}
}