@charset "UTF-8";

html {
	margin: 0;
	padding: 0;
	width: 100%;
}

body {
	margin: 0;
	padding: 0;
	font-size: 100%;
	line-height: 1;
	font-family: Arial, Helvetica, "sans-serif";
	width: 100%;
	min-width: 1200px;
	background: #FFF;
	color: #333;
}

img {
	border: none;
	vertical-align: middle;
	max-inline-size: 100%;
	block-size: auto;
}

header {
	display: block;
	width: 100%;
	min-width: 1200px;
	text-align: center;
	border-top: 2px solid #FF4000;
}

nav {
	display: flex;
	gap: 36px;
	/* justify-content: space-between; */
	width: 1160px;
	height: 120px;
	overflow: hidden;
	padding: 0 20px;
	margin: 0 auto;
}
.navmenuBox {
	display: flex;
	gap: 37px;
}
nav::before {
	width: 80px;
	content: "";
}

nav p {
	padding: 0;
	margin: 0;
}

.navlang {
	width: 80px;
	margin: 0 0 0 auto;
	text-align: right;
	font-size: 14px;
}

.navlang a {
	display: inline-block;
	padding: 10px 10px 0 10px;
	color: #000;
	border-left: 2px solid #999;
	text-decoration: none;
	transition: 0.3s;
}

.navlang a:hover {
	color: #FF4000;
	border-left: 2px solid #FF4000;
}

/* .navlogo {} */

.navlogo img {
	padding: 10px;
}

.navmenu {
	width: 160px;
	text-align: center;
	font-size: 15px;
	font-weight: bold;
	align-self: center;
}

.navmenu a {
	display: inline-block;
	padding: 10px 0;
	color: #000;
	text-decoration: none;
	border-bottom: 2px solid #FFF;
	transition: 0.3s;
}

.navmenu a:hover {
	color: #999;
	border-bottom: 2px solid #999;
}

main {
	display: block;
	width: 100%;
	min-width: 1200px;
	background: #FFF;
}

main h2,
main h3,
main h4,
main p,
main th,
main td,
main li {
	line-height: 1.6em;
}

.title {
	display: block;
	width: 100%;
	min-width: 1200px;
	padding: 12px 0;
	text-align: center;
	background: #DDD;
}

.title h2 {
	display: block;
	width: 1200px;
	margin: 0 auto;
	padding: 0;
	text-align: left;
	font-size: 24px;
}

footer {
	display: block;
	width: 100%;
	min-width: 1200px;
	padding: 40px 0;
	text-align: center;
	border-top: 2px solid #CCC;
}

footer p {
	display: block;
	width: 1000px;
	padding: 8px 100px;
	margin: 0 auto;
	font-size: 14px;
	line-height: 1.5em;
}

footer p .fg {
	font-size: 12px;
	color: #999;
}

.pagetop {
	display: none;
	position: fixed;
	bottom: 30px;
	right: 30px;
	width: 80px;
	height: 80px;
	border: 1px solid #FFF;
	background: #E5EDE0;
	color: #333;
	text-decoration: none;
	text-align: center;
	font-family: Arial, Helvetica, "sans-serif";
	border-radius: 0;
	transition: 0.3s;
}

.pagetop:before {
	content: "↑";
	display: block;
	padding: 16px 0 0 0;
	font-size: 14px;
}

.pagetop:after {
	content: "PAGE TOP";
	display: block;
	padding: 8px 0 0 0;
	font-size: 12px;
}

.pagetop:hover {
	color: #FFF;
	background: #41BB01;
}


/* 共通要素 */
.cb {
	height: 1px;
	display: block;
	clear: both;
	font-size: 1px;
	line-height: 1px;
	overflow: hidden;
}

.f10 {
	font-size: 10px;
}

.f12 {
	font-size: 12px;
}

.f14 {
	font-size: 14px;
}

.f16 {
	font-size: 16px;
}

.f18 {
	font-size: 18px;
}

.f20 {
	font-size: 20px;
}

.f22 {
	font-size: 22px;
}

.f24 {
	font-size: 24px;
}

.f28 {
	font-size: 28px;
}

.blue {
	color: #00C0FF;
}

.navy {
	color: #2E3192;
}

.red {
	color: #E12229;
}

.white {
	color: #FFF;
}

.orange {
	color: #F90;
}

.purple {
	color: #310080;
}

.green {
	color: #009245;
}

.tac {
	text-align: center;
}

.tar {
	text-align: right;
}

.tal {
	text-align: left;
}

.fb {
	font-weight: bold;
}

.fbn {
	font-weight: normal;
}

.fr {
	float: right;
}

.fl {
	float: left;
}

.fg {
	font-family: Arial, Helvetica, sans-serif;
}

/* .btn {} */