/*-------------------------------------------------
  General definition
-------------------------------------------------*/
* {
	font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック", "MS P Gothic","Osaka", Verdana, Arial, Helvetica, sans-serif;
	margin: 0;
	padding: 0;
}
html {
	font-size: 62.5%;
	line-height: 1.5;
	background-attachment: fixed;
	background-color: #ffffff;
	background-image: url('/skins/2025/images/bg.svg');
	background-position: 40% 30%;
	background-repeat: no-repeat;
	background-size: 200%;
}
body {
	color: #000000;
	font-size: 1.8rem;
	width: 100%;
}
address {
	text-align: left;
	font-style: normal;
}
b {
	font-weight: 600;
}
blockquote {
	line-height: 1.5;
	margin: 0.5rem 0;
	padding: 0.5rem;
	border: 0.1rem solid #999999;
	background-color: #ffffff;
}
blockquote.ui-state-highlight {
	color: #6e6e6e;
}
blockquote.ui-state-highlight:before {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;
	content: '\f10d';	/* quote left */
	margin-right: 0.6rem;
}
blockquote.ui-state-highlight:after {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;
	content: '\f10e';	/* quote right */
	margin-left: 0.6rem;
}
caption {
	text-align: left;
	color: #333333;
	font-size: small;
	font-weight: 900;
}
img {
	border: 0;
	vertical-align: bottom;
}
hr {
	visibility: hidden;
	margin: 4rem 0;
	width: 100%;
	clear: both;
}
strong {
	letter-spacing : 0.1rem;
}
sub {
	color: #ff0000;
	height: 0;
	line-height: 1;
	vertical-align: baseline;
	_vertival-align: bottom;
	position: relative;
	top: 0.15ex;
}
/* Form Factor */
button {
	margin-bottom: 3rem;
	padding: 0.7rem 2rem 0.5rem 2rem;
	border: 0.1rem solid #999999;
	font-size: 1.5rem;
}
button:focus,
button:hover {
	color: #ffffff;
	background-color: #ff0000 !important;
	outline: none;
}
button::-moz-focus-inner {
	border-width: 0;
}
button.inquirybutton {
	margin-top: 5rem;
}
p.qcont {
	counter-increment: number;
	text-align: left;
	line-height: 2;
	margin: 5rem 5rem 1rem 5rem;
}
p.qcont:before {
	content: "Q" counter(number) ". ";
	font-weight: 600;
}
label {
	font-weight: 600;
	margin-right: 0.3rem;
}
input[type=radio] + label,
input[type=checkbox] + label {
	font-weight: normal;
}
input[type=text],
button {
	vertical-align: middle;
}
input[type=text],
textarea {
	font-size: 1.6rem;
}
input[type=text],
textarea {
	padding: 0.6rem;
	width: 99%;
	border: 0.1rem solid #999999;
}
input[type=checkbox],
input[type=radio] {
	margin-right: 1rem;
}
select:focus {
	border: 0.1rem solid #999999;
	background-color: #bbffff !important;
	outline: none;
}
select:focus {
	color: #000000;
	border: 0.1rem solid #999999;
	background-color: #8EE5EE;
	outline: none;
}
select:-moz-focusring { 
	color: transparent; 
	text-shadow: 0 0 0 #000000;
}
select::-moz-focus-inner {
	border-width: 0;
}
option:disabled {
	font-size: 2rem;
	color: #d6d6d6;
}
/* Links */
a:link {
	color: #0000ff;
	text-decoration: none;
	outline: none;
}
a:visited {
	color: #9900cc;
}
a:focus,
a:hover,
a:active {
	color: #ff0000;
	outline: none;
}

/* Headings */
h3,
h4,
h5,
h6 {
	font-weight: normal;
}
h1 {
	font-size: 3.6rem;
	font-weight: 900;
	letter-spacing: 0.1rem;
	line-height: 1.3;
	margin: 0;
	padding: 0;
}
h1 a span {
	font-size: 1.6rem;
}
h1 a span:after {
	content: "\A";
	white-space: pre;
}
#catch {
	width: 100% !important;
}
h2 {
	color: #ffffff;
	border-top: 0.1rem solid #ffffff;
	clear: both;
	font-size: 3rem;
	font-weight: 900;
	letter-spacing: 0.3rem;
	margin-bottom: 6rem;
	padding: 1.5rem 0;
	text-align: center;
	text-shadow:
		0.1rem 0.1rem 0.6rem #666666,
		-0.1rem 0.1rem 0.6rem #666666,
		0.1rem -0.1rem 0.6rem #666666,
		-0.1rem -0.1rem 0.6rem #666666;
	background-color: rgba(255, 255, 255, 0.2);
}
h2#bullhorn:before,
#cat_1 h2:before {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;
	content: '\f0a1';	/* bullhorn */
	margin-right: 0.6rem;
}
h2#tasks:before,
#cat_2 h2:before {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;
	content: '\f0ae';	/* tasks */
	margin-right: 0.6rem;
}
#cat_3 h2:before {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;
	content: '\f059';	/* question-circle */
	margin-right: 0.6rem;
}
#cat_4 h2:before {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;
	content: '\f06a';	/* exclamation-circle */
	margin-right: 0.6rem;
}
#cat_5 h2:before {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;
	content: '\f46d';	/* clipboard-list */
	margin-right: 0.6rem;
}
h2#envelope:before,
#cat_6 h2:before {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;
	content: '\f0e0';	/* envelope */
	margin-right: 0.6rem;
}
#cat_7 h2:before {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;
	content: '\f086';	/* comments */
	margin-right: 0.6rem;
}
#cat_8 h2:before {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;
	content: '\f019';	/* download */
	margin-right: 0.6rem;
}
#privacypolicy h2:before {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;
	content: "\f505";	/* user-shield */
	margin-right: 0.6rem;
}
#prohibition h2:before {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;
	content: "\f05e";	/* user-shield */
	margin-right: 0.6rem;
}
h2#trophy:before {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;
	content: '\f091';	/* trophy */
	margin-right: 0.6rem;
}

h3 {
	color: #ffffff;
	border: 0.1rem solid transparent;
	border-radius: 3rem;
	background-color: #005bab;
	font-size: 2.4rem;
	font-weight: 600;
	letter-spacing: 0.5rem;
	margin: 4rem 0 2rem 0;
	padding: 0.5rem 0;
	text-align: center;
}
h4 {
	font-size: 2rem;
	border-bottom: 0.1rem solid #000000;
}
h5 {
	font-size: 1.6rem;
	counter-increment: number;
}
h5:before {
 content: counter(number, decimal-leading-zero)'. ';
}
h6 {
	color: #ffffff;
	letter-spacing: 0.1rem;
	text-align: center;
	padding-top: 25rem;
}
h6 a:link,
h6 a:visited {
	color: #ffffff;
}
/* Lists */
ul {
	list-style: none;
	float: none;
}
ol {
	margin-left: 2rem;
	float: none;
/*	list-style-type: decimal-leading-zero;*/
}
dt {
	font-weight: 600;
}

/* Table Factor */
table {
	width: 100%;
	margin: 0.3rem 0 2.4rem 0;
	border-collapse: separate;
	border-top: 0.1rem solid #999999;
	border-left: 0.1rem solid #999999;
	border-spacing: 0;
}
th, td {
	padding: 0.6rem;
	border-right: 0.1rem solid #999999;
	border-bottom: 0.1rem solid #999999;
}
thead th {
	color: #2e83ff;
	text-align: center;
	vertical-align: middle;
	background-color: #B0E2FF;
}
tbody th {
	color: #191970;
	text-align: left;
	vertical-align: top;
	background-color: #F0F8FF;
}
td {
	vertical-align: top;
}
td th,
td td {
	font-size: 100%;
}
caption {
	font-size: 0.85rem;	/* ex. tablet, mobile */
	caption-side: top;
	text-align: left;
}
/*-------------------------------------------------
  Header
-------------------------------------------------*/
header {
	overflow: hidden;
}
.page header {
	background-color: rgba(0,0,0, 0.3);
}
header img {
	float: left;
	margin: 1rem 2rem 0 2rem;
}
h1 a:link,
h1 a:visited {
	color: #ffffff !important;
	text-shadow:
		0.1rem 0.1rem 0.6rem #666666,
		-0.1rem 0.1rem 0.6rem #666666,
		0.1rem -0.1rem 0.6rem #666666,
		-0.1rem -0.1rem 0.6rem #666666;
}
nav {
	margin: 0 auto;
	text-align: center;
}
nav ul {
	margin: 2.5rem auto 0 auto;	/* ex. mobile */
}
nav li {
	display: inline;
	margin: 0.5rem 0.3rem;	/* ex. tablet */
	text-align: left;	/* ex. mobile */
	vertical-align: top;
}
nav li a {
	font-weight: 600;
	display: inline-block;
	padding: 0;
	width: 14rem;
	text-shadow:
		0.1rem 0.1rem 0.1rem #999999,
		-0.1rem 0.1rem 0.1rem #999999,
		0.1rem -0.1rem 0.1rem #999999,
		-0.1rem -0.1rem 0.1rem #999999;
}
nav li a:link {
	border-left: 0.5rem solid #ffffff;
	color: #ffffff;
	margin: 0.6rem 0 1.5rem 0;
	padding: 0 1rem;
}
nav li a:visited {
	color: #ffffff;
}
nav li a:hover {
	border-left: 0.5rem solid #ff0000;
	color: #ff0000;
	text-shadow:
		0.1rem 0.1rem 0.1rem #ffffff,
		-0.1rem 0.1rem 0.1rem #ffffff,
		0.1rem -0.1rem 0.1rem #ffffff,
		-0.1rem -0.1rem 0.1rem #ffffff;
}
nav li i {
	margin-right: 0.3rem;
}
#period span {
	font-size: 3rem;
	text-shadow:
		0.1rem 0.1rem 0.6rem #666666,
		-0.1rem 0.1rem 0.6rem #666666,
		0.1rem -0.1rem 0.6rem #666666,
		-0.1rem -0.1rem 0.6rem #666666;
}
/*-------------------------------------------------
  Content wrappers
-------------------------------------------------*/
#mainwrapper {
	font-size: 120%;	/* ex. pcwide, tablet, mobile */
	margin: 0 auto;
	border: 0.1rem solid transparent;
}
#wrapper {
	margin: 0 10rem;	/* ex. tablet, mobile */
}
/*-------------------------------------------------
  Item styles
-------------------------------------------------*/
.content {
	margin: 0 15rem 9rem 15rem;
	border: 0.1rem solid transparent;
	background-color: #ffffff;
	border-radius: 2rem;
	padding: 2rem 0;
}
.contentheader {
	margin: 2rem 15rem 1rem 15rem;
}
.contentbody {
	font-size: 100%;
	line-height: 2;
	margin: 0 10rem 0.5rem 10rem;
	word-break: normal;
}
.contentbody h4 {
	font-weight: 900;
	margin-top: 2rem;
}
.contentbody h4:before {
	font-family: 'Font Awesome 7 Free';
	content: '\f192';
	margin-right: 0.3rem;
}
.contentbody h4:first-child {
	margin-top: 0;
}
.contentbody ul li,
.contentbody ol li {
	margin-left: 2rem;	/* ex. tablet, mobile */
	margin-bottom: 1rem;	/* ex. tablet, mobile */
}
.contentbody hr {
	visibility: hidden;
	margin: 0;
	width: 100%;
	clear: both;
}
.contentfooter {
	border-top: 0.1rem dashed #000000;
	margin: 5rem 10rem;
	padding: 0.5rem 0;
}
.contentfooter p {
	font-size: 1.4rem;
	margin-top: 0.25rem;
}
.contentfooter p a {
	letter-spacing: 0.1rem;
}
.contentfooter i {
	margin-right: 0.3rem;
}
/*-------------------------------------------------
  Footer
-------------------------------------------------*/
footer {
	text-align: center;
	background-color: transparent;
	background-image: url('/skins/2025/images/footer.svg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: left top;
	height: 30rem;
	width: 100%;
}
footer ul {
	border-top: 0.1rem solid #ffffff;
	border-bottom: 0.1rem solid #ffffff;
	margin: 2rem auto 4rem auto;
}
footer li {
	text-align: center;
	vertical-align: top;
	display: inline;
	margin: 0 0.5rem;
}
footer li a {
	display: inline-block;
	padding: 0.6rem 0;
}
footer li a:link,
footer li a:visited {
	color: #ffffff;
}
footer li a:hover {
	color: #ff0000;
}
footer i {
	margin-right: 0.3rem;
}
#copyright {
	margin: 0.6rem 0;
}
#copyright h6 a {
	color: #2e83ff;
	font-weight: normal;
	letter-spacing: 0.1rem;
}
#copyright h6 a:hover,
#copyright h6 a:active {
	color: #ff0000;
}
/*-------------------------------------------------
  Miscelaneous
-------------------------------------------------*/
.clearfix:after {
	color: transparent;
	content: "";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
* html .clearfix {
	height: 1%;
}
.tile {
	margin: 0 0.6rem 0.6rem 0.6rem;
	width: 22%;	/* ex. tablet, mobile */
	border: 0.1rem solid #999999;
	position: relative;
	display: inline-block;
}
/*
.tile h3 {
	font-size: 0.85rem;
	font-weight: 600;
}
.tile a h3 {
	color: #ffffff;
	padding-top: 0.3rem;
	padding-bottom: 0.3rem;
	width: 100%;
	display: inline-block;
}
.tile a:hover h3,
.tile a:active h3 {
	color: #ff0000;
}
.tile a:hover h3 {
	transition: 1.0s;
}
.tile:before {
	display: block;
	content: "";
	padding-top: 100%;
}
.tilebody {
	width: 100%;
	height: 100%;
	background-color: #ffffff;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
}
.tilebody img {
	max-width: 145% !important;
	width: 145% !important;
	height: 100% !important;
	position: absolute;
	left: -20%
}
.tilebody img:hover {
	opacity: 0.5;
}
.tile:last-child .tilebody:before {
	font-size: 5rem;
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;
	content: '\f02d';
	white-space: pre;
}
.tilefooter {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	background-color: rgba(0,0,0,0.6);
	overflow: hidden;
	z-index: 200;
	border: none;
}
*/
.tilehalf {
	width: 50% !important;
	padding: 0 0.6rem;
	box-sizing: border-box;
	display: inline-block;
	vertical-align: top;
}
.tilehalf > div {
	margin: 1rem;
	height: 36rem;
	border: 1px solid #999999;
}

.tileonethird {
	border: 0.1rem solid #ffffff;
	box-sizing: border-box;
	display: inline-block;
	margin: 0 0.5rem 0.5rem 0.5rem;
	max-width: 31%;
	position: relative;
	width: 31% !important;
}
.tileonethird:before {
	display: block;
	content: "";
	padding-top: 75%;
}
#Home .tileonethird:before {
	padding-top: 69%;
}
#prohibition .tileonethird:before {
	padding-top: 66%;
}
#prohibition .tilebody {
	background-color: #ffffff;
}
.tilebody {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
}
.tilebody img {
	max-width: 100% !important;
	width: 100% !important;
	height: auto;
}
a:hover .tilebody img {
	opacity: 0.5;
}
.tilefooter {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	background-color: rgba(0,0,0,0.6);
	overflow: hidden;
	z-index: 200;
	border: none;
}
.tilefooter h3 {
	background-color: transparent;
	border: none;
	color: #ffffff;
	font-size: 2rem;
	letter-spacing: 0.1rem;
	padding: 0.5rem;
	text-align: center;
}
a .tilefooter h3 {
	color: #ffffff;
	display: block;
	width: 100%;
}
a:hover .tilefooter h3,
a:active .tilefooter h3 {
	color: #ff0000;
}
.sitenavi {
	margin-right: 1rem;
}
.sitenavi i {
	margin-right: 0.3rem;
}
#canvas {
	border: 0.1rem solid #999999;
	width: 100%;
	height: 50rem;
}
p.pnavi {
	font-size: 0.9rem;
	text-align: center;
	margin-bottom: 1rem;
}
.hidden {
	display: none;
}
.clearing {
	font-size: 0.1rem;
	clear: both;
	height: 0;
}
.migi {
	text-align: right;
}
.hidari {
	text-align: left !important;
}
.chuo {
	text-align: center;
}
.leftbox, .middlebox, .rightbox {
	margin-top: 0.3rem;
	margin-bottom: 0.3rem;
}
.leftbox {
	float: left;
	margin-right: 1.2rem;
	max-width: 35%;	/* ex. mobile */
}
.middlebox {
	float: left;
	margin-right: 0.2rem;
	margin-left: 0.2rem;
}
.rightbox {
	float: right;
	margin-left: 1.2rem;	/* ex. mobile */
	max-width: 35%;	/* ex. mobile */
}
.leftbox img,
.rightbox img {
	margin-bottom: 0.2rem;
	padding: 0;
	width: 100%;
	height: auto;
}
.pagecatch {
	border: 1px solid #999999;
	margin-bottom: 1rem;
}
.pagecatch img {
	width: 100%;
	height: auto;
}
.outsetphoto {
	max-width: 84%;
	float: left;
}
.outsetphoto img {
	margin-bottom: 0.2rem;
	padding: 0;
	border: 0.1rem solid #999999;
	width: 100%;
}
.additionalphoto {
	text-align: center;
	width: 14%;
	height: 100%;
	float: right;
	margin: 0;
}
.additionalphoto img {
	margin-bottom: 0.6rem;
	width: 100%;
	border: 0.1rem solid #999999;
}
.notice {
	margin: 0.5rem 0;
	padding: 0.5rem;
	border: 0.1rem solid #999999;
	background-color: #fffaf0;
}
.notice > div {
	text-align: left;
	margin: 0 auto;
	display: table;
}
.underline {
	text-decoration: underline;
}
.big {
	font-size: 2.4rem !important;
	font-weight: 600;
}
.small {
	font-size: small !important;
}
.red {
	color: #ff0000;
}
.hashtag a:before {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;
	content: '\f292';	/* hashtag */
	margin-right: 0.2rem;
}
dl.pseudotable {
	line-height: 150%;
	margin-top: 2rem;
	margin-right: 0;
	margin-left: 6rem;	/* ex. tablet, mobile */
}
.pseudotable dt {
	margin-left: 0;
	padding-bottom: 0.5rem;	/* ex. mobile */
	width: 9rem;
}
.pseudotable dt a {
	background: white;
}
dl.pseudotable dl.pseudotable dt {
	font-weight: normal;
}
.pseudotable dd {
	margin: -3.7rem 0 0 0;	/* ex. mobile */
	padding-top: 0.4rem;	/* ex. mobile */
	padding-bottom: 2rem;
	padding-left: 10.5rem;	/* ex. mobile */
	word-break: normal;
}
dl.pseudotable dl.pseudotable {
	font-size: 100%;
	margin-top: 0;
	margin-bottom: 0;
	margin-left: 0;
}
.pseudotable ul li,
.pseudotable ol li {
	margin-left: 0 !important;
	line-height: 1.8;
}
dl.pseudotablewide {
	line-height: 150%;
	margin-top: 2rem;
	margin-right: 0;
	margin-left: 6rem;	/* ex. tablet, mobile */
}
.pseudotablewide dt {
	margin-left: 0;
	padding-bottom: 0.5rem;	/* ex. mobile */
	width: 24rem;
}
.pseudotablewide dt a {
	background: white;
}
dl.pseudotablewide dl.pseudotable dt {
	font-weight: normal;
}
.pseudotablewide dd {
	margin: -3.7rem 0 0 0;	/* ex. mobile */
	padding-top: 0.7rem;	/* ex. mobile */
	padding-bottom: 2rem;
	padding-left: 26rem;	/* ex. mobile */
	word-break: normal;
}
dl.pseudotablewide dl.pseudotable {
	font-size: 100%;
	margin-top: 0;
	margin-bottom: 0;
	margin-left: 0;
}
.pseudotablewide ul li,
.pseudotablewide ol li {
	margin-left: 0 !important;
	line-height: 1.8;
}
dl.pseudotablenarrow {
	line-height: 150%;
	margin-top: 2rem;
	margin-right: 0;
	margin-left: 6rem;	/* ex. tablet, mobile */
}
.pseudotablenarrow dt {
	margin-left: 0;
	padding-bottom: 0.5rem;
	width: 5rem;
}
.pseudotablenarrow dt a {
	background: white;
}
dl.pseudotablenarrow dl.pseudotable dt,
dl.pseudotable dl.pseudotablenarrow dt {
	font-weight: normal;
}
.pseudotablenarrow dd {
	margin: -3.7rem 0 0 0;	/* ex. mobile */
	padding-top: 0.7rem;	/* ex. mobile */
	padding-bottom: 2rem;
	padding-left: 7rem;	/* ex. mobile */
	word-break: normal;
}
dl.pseudotable dl.pseudotablenarrow,
dl.pseudotablenarrow dl.pseudotable {
	font-size: 100%;
	margin-top: 0;
	margin-bottom: 0;
	margin-left: 0;
}
.pseudotablenarrow ul li,
.pseudotablenarrow ol li {
	margin-left: 0 !important;
	line-height: 1.8;
}
.notice dl.pseudotable,
.notice dl.pseudotablenarrow {
	margin-left: 0;
}
dl.faq {
	margin: 0;
/*	counter-reset: question;*/
}
.faq dt {
	color: #F26524;
	font-size: 2rem;
	font-weight: 600;
	margin: 0;
	padding-left: 4.3rem;
	text-indent: -2.5rem;
}
.faq dd dt {
	color: #000000;
	font-size: 100%;
	font-weight: 600;
	margin: 0 0 0 1rem;
}
.faq dd dt:before {
	content: '';
}
.faq dd {
	font-size: 100%;
	margin-left: 9px;
	margin-bottom: 2.5em;
	padding-left: 2.5rem;
	text-indent: -2.3rem;
}

.faq dd dd {
	text-indent: 0;
}
.faq dd:before {
	content: 'A. ';
	font-weight: 600;
}
.faq dd dd:before {
	content: '';
}
.faq ul {
	text-indent: 0;
	margin-left: 0.5em;
	margin-bottom: 3px;
	padding-left: 0;
}
.faq ol {
	text-indent: 0;
	margin-top: 3px;
	margin-bottom: 3px;
	margin-left: 3em;
	padding-left: 0;
}
ul.disc {
	list-style: disc;
	margin-left: 1.6rem;
	float: none;
}
ul.square {
	list-style: square;
	margin-bottom: 1rem;
	margin-left: 1.6rem;
	float: none;
}
ul.notes li:before {
	content: '※';
	margin-right: 0.3rem;
}
ul.notes li {
	padding-left: 2rem;
	text-indent: -1.3em;
}
.bottommarginless {
	margin-bottom: 0;
	padding-bottom: 0;
}
.codebox {
	line-height: 0.75;
	background-color: black;
	margin: 0 0 0.5rem 0;
	padding: 0.75rem 0.5rem;
}
pre {
	overflow: visible;
	white-space: pre-wrap;
	word-wrap: break-word;
}
code {
	color: #99FF00;
	font-size: 0.85rem;
	font-family: courier, monospace;
}
.touhaba {
	font-family: monospace;
}
.lead {
	font-weight: 600;
	text-align: center;	/* ex. mobile */
	margin-bottom: 1rem;
	padding: 0.5rem;
}
#Home .lead {
	margin-top: 1rem;
}
.nospam {
	color: transparent;
	font-size: 0.1rem;
}
.highlight {
	font-weight: 600;
	background: #ffff00;
}
.current {
	color: #ff0000;
}
input[type=text],
textarea.current {
	color: #000000;
}
.pageswitch {
	text-align: center;
	font-size: 2rem;
	margin: 1rem auto 2rem auto;
	line-height: 2.5;
}
.pageswitch strong {
	color: #ffffff;
	border: 0.1rem solid #bfbfbf;
	margin: 0;
	padding: 0.3rem 0.9rem;
	background-color: #bfbfbf;
}
.pageswitch a {
	border: 0.1rem solid;
	padding: 0.3rem 0.9rem;
}
.pageswitch a:hover,
.pageswitch a:active {
	color: #ff0000;
	border: 0.1rem solid #ff0000;
}
.npsb_prevnolink,
.npsb_nextnolink {
	color: #bfbfbf;
	border: 0.1rem solid #bfbfbf;
	padding: 0.3rem 0.9rem;
}
.fa-hand-point-right {
	margin-right: 0.9rem;
}
.fa-external-link-alt {
	margin-right: 0.3rem;
}
.function-button {
	margin: 0;
	padding: 0;
	z-index:1000;
}
.function-button ul {
	margin: 0 0 8.5rem 0;
	padding: 0;
	position: fixed;
	right: 0;	/* ex. mobile */
	bottom: 0;
	border: none;
}
.function-button li {
	font-size: 2.4rem;
	float: none;
	margin: 0;
}
.function-button li:hover {
	border-color: #ff0000;
}
.function-button a {
	padding: 0.5rem 1rem;
	display: block;
	width: 100%;
}
#topics {
	text-align: left;
}
#topics li {
	font-weight: normal;
	line-height: 1.3;
	margin: 0 0.5rem 2.5rem 0;
	width: 100%;
	height: 4.5rem;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
#topics li:last-child {
	margin-bottom: 0;
}
#topics .newsdesc {
	margin: 0.2rem 0 0.5rem 1.1rem;
	width: 97%;	/* ex. mobile */
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	display: inline-block;
}
#instagallery li {
	height: auto;
}
li.catid_1:before {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;	/* for solid icon */
	content: '\f0c8';	/* square */
	margin-right: 0.3rem;
}
li.catid_2:before {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;	/* for solid icon */
	content: '\f05a';	/* info-circle */
	margin-right: 0.3rem;
}
li.catid_3:before {
	font-family: 'Font Awesome 7 Free';
	font-weight: normal;	/* for solid icon */
	content: '\f1cd';	/* life-ring */
	margin-right: 0.3rem;
}
li.catid_4:before {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;	/* for solid icon */
	content: '\f019';	/* download */
	margin-right: 0.3rem;
}
li.catid_5:before {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;	/* for solid icon */
	content: '\f0ae';	/* task */
	margin-right: 0.3rem;
}
li.catid_6:before,
li.catid_7:before,
li.catid_8:before {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;	/* for solid icon */
	content: '\f044';	/* edit */
	margin-right: 0.3rem;
}
/* Colorbox */
#cboxTitle,
#cboxCurrent {
	color: #000000;
	font-size: 0.9rem;
	font-weight: normal;
}
#cboxPrevious,
#cboxNext,
#cboxClose {
	bottom: -2.6rem;
}
/* Blog a tag */
#blog .contentbody a[href]:after {
	font-family: 'Font Awesome 7 Free';
	font-weight: 900;
	content: '\f35d';	/* external-link-alt */
	margin-right: 0.3rem;
	margin-left: 0.3rem;
}
#blog .contentbody a[href][title]:after {
	font-family: 'Font Awesome 7 Free';
	font-weight: normal;
	content: '\f0a4';	/* hand-point-right */
	margin-left: 0.3rem;
}
#blog .contentbody a.cbg[href][title]:after {
	content: '';	/* none */
	margin-left: 0;
}
/* Official SNS */
#official_sns h3 {
	border: none;
}
#official_sns .tileonethird::before {
	padding-top: 146%;
}
#official_sns .tileonethird {
	border: none;
}
#official_sns .tileonethird .tilebody {
	border-top: 2px solid #333333;
	border-right: 2px solid #999999;
	border-bottom: 2px solid #999999;
	border-left: 2px solid #333333;
}