@charset "utf-8";
/* @import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap'); */

/* --------------------------------------------------
  COMMON STYLES
  -------------------------------------------------- */
/* ===== RESET ===== */
* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

*:before,
*:after {
	box-sizing: border-box;
}

li {
	list-style: none;
}

p {
	margin: 0;
}

/* CSS Document */
html {
	font-size: 62.5%;
}
body {
	line-height: 1.7;
	font-family: 'Noto Sans JP', "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic" , 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', Meiryo, メイリオ, arial, helvetica, sans-serif;
	font-weight: 500;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-size: 15px;
	/*font-size: 1.5rem;*/
	font-weight: 500;
	color: #000;
	background: #fff;
	-webkit-text-size-adjust: 100%;
}

body:before {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99;
	display: block;
	visibility: hidden;
	width: 100%;
	height: 100vh;
	background-color: #000;
	content: "";
	opacity: 0;
	-webkit-transition: all 0.4s ease-out;
	transition: all 0.4s ease-out;
}

.tab, .sp {
	display: none;
}

.sp, .sp2 {
	display: none !important;
}

.pc, .pc.tab {
	display: block;
}

.em {
	color: #ee0000;
}

.noteText {
	font-size: .9em;
	color: #566577;
}

.marker {
	display: inline;
	padding: 0 .5em;
	background: linear-gradient(transparent 0%, #ffcccc 0%);
}

.f_bold {
	font-weight: bold;
}

.f_normal {
	font-weight: normal;
}

.f_josefin {
	font-family: 'Josefin Sans', sans-serif;
	font-weight: 400;
}

.font_s {
	font-size: 12px;
	/*font-size: 1.2rem;*/
}

.font_s2 {
	font-size: 14px;
}

.font_m {
	font-size: 15px;
}

.font_l {
	font-size: 16px;
	/*font-size: 1.6rem;*/
}

.font_xl {
	font-size: 18px;
	/*font-size: 1.8rem;*/
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}

.img-responsive {
	display: block;
	max-width: 100%;
	height: auto;
}

.img-full {
	display: block;
	width: 100%;
	height: auto;
	position: relative;
	overflow: hidden;
}

a, .hover {
	opacity: 1;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	color: #000;
	text-decoration: none;
	cursor: pointer;
}
a:hover, .hover:hover {
	opacity: .7;
	color: #000;
	text-decoration: underline;
}

.link, .link:hover {
	color: #2196f3 !important;
}

.link.lined:link, .link.lined:visited {
	text-decoration: underline;
}

.link.lined:hover {
	text-decoration: none;
}

a.mail,
a.pdf,
a.word,
a.excel {
	position: relative;
	padding-left: 25px;
}

a.mail:before,
a.pdf:before,
a.word:before,
a.excel:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 0px;
	width: 21px;
	height: 21px;
	transform: translateY(-50%);
	vertical-align: middle;
}

a.mail.alignTop:before,
a.pdf.alignTop:before,
a.word.alignTop:before,
a.excel.alignTop:before {
	top: 1px;
	transform: translateY(0);
}

a.mail:before {
	content: "\f0e0";
	display: block;
	position: absolute;
	line-height: 21px;
	font-size: 14px;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	color: #ff1313;
	text-align:center;
}

a.pdf:before {
	left: 2px;
	width: 16px;
	background: url(../images/common/ico_pdf_color.png) no-repeat 0 0;
}

a.word:before {
	background: url(../images/common/ico_word.png) no-repeat 0 0;
}

a.excel:before {
	background: url(../images/common/ico_excel.png) no-repeat 0 0;
}

.openwin:after {
	content: "";
	display: inline-block;
	box-sizing: border-box;
	position: relative;
	top: -2px;
	margin: 0 0 0 10px;
	width: 10px;
	height: 10px;
	border: 1px solid #0055a2;
	box-shadow: -1px 1px 0 #fff, -2px 2px 0 #0055a2;
	opacity: .65;
}

.openwin.fill:after {
	border: 1px solid #fff;
	box-shadow: -1px 1px 0 #0055a2, -2px 2px 0 #fff;
}

.arrw01 {
	position: relative;
}

.arrw01:before {
	content: "";
	display: inline-block;
	position: relative;
	top: -2px;
	margin: 0 5px 0 0;
	border: 4px solid transparent;
	border-left: 5px solid #1479c3;
}

.arrw01_after {
	position: relative;
	padding-right: 1.15em;
}

.arrw01_after:before {
	content: "";
	display: block;
	position: absolute;
	right: 0;
	top: 50%;
	border: 4px solid transparent;
	border-left: 5px solid #1479c3;
	transform: translateY(-50%);
}

.mt0 {
	margin-top: 0 !important;
}

.mb0 {
	margin-bottom: 0 !important;
}

.mt5 {
	margin-top: 5px !important;
}

.mt10 {
	margin-top: 10px !important;
}

.mt15 {
	margin-top: 15px !important;
}

.mt20 {
	margin-top: 20px !important;
}

.mt25 {
	margin-top: 25px !important;
}

.mt30 {
	margin-top: 30px !important;
}

.mt35 {
	margin-top: 35px !important;
}

.mb5 {
	margin-bottom: 5px !important;
}

.mb10 {
	margin-bottom: 10px !important;
}

.mb15 {
	margin-bottom: 15px !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.mb25 {
	margin-bottom: 25px !important;
}

.mb30 {
	margin-bottom: 30px !important;
}

.mb35 {
	margin-bottom: 35px !important;
}

.ml10 {
	margin-left: 10px !important;
}

.ml1em {
	margin-left: 1em !important;
}

.pt0 {
	padding-top: 0 !important;
}

.pt10 {
	padding-top: 10px !important;
}

.pt15 {
	padding-top: 15px !important;
}

.pt20 {
	padding-top: 20px !important;
}

.pt25 {
	padding-top: 25px !important;
}

.pt30 {
	padding-top: 30px !important;
}

.pb0 {
	padding-bottom: 0 !important;
}

.pb10 {
	padding-bottom: 10px !important;
}

.pb15 {
	padding-bottom: 15px !important;
}

.pb20 {
	padding-bottom: 20px !important;
}

.pb25 {
	padding-bottom: 25px !important;
}

.pb30 {
	padding-bottom: 30px !important;
}

.text-center {
	text-align: center;
}

.text-left {
	text-align: left;
}

.text-right {
	text-align: right;
}

.clearfix {
	overflow: hidden;
}

.block {
	display: block;
}

.in-block {
	display: inline-block;
}

.inline {
	display: inline;
}

.block-center {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.clr:after {
	content: "";
	display: block;
	clear: both;
}

.ico {
	position: relative;
	top: -2px;
	vertical-align: middle;
}

.nowrap {
	white-space: nowrap;
}

.hide {
	display: none;
}

.indent {
	text-indent: -1em;
	padding-left: 1em;
}

.indnt-05 {
	text-indent: -.5em;
}

.indnt-1 {
	text-indent: -1em;
}


@media print, screen and (min-width: 768px) {
	.colWrap {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	.colWrap.wrap {
		flex-wrap: wrap;
	}

	.colWrap.boxAlign-left {
		justify-content: flex-start;
	}

	.colWrap.boxAlign-right {
		justify-content: flex-end;
	}

	.colWrap.boxAlign-center {
		justify-content: center;
	}

	.colWrap.mdl > *,
	.colWrap > .mdl:not(.colWrap) {
		display: flex;
		/* flex-wrap: wrap; */
		align-items: center;
		align-content: center;
		justify-content: flex-start;
	}

	.colWrap.mdl > * > *,
	.colWrap > .mdl:not(.colWrap) > * {
		width: 100%;
	}

	.colWrap.mdl.ct > *,
	.colWrap > .mdl.ct:not(.colWrap) {
		justify-content: center;
	}

	.colWrap.col4 {
		margin-left: -10px;
		margin-right: -10px;
	}

	.colWrap.col4 > * {
		margin: 0 10px 20px;
		width: calc(25% - 20px);
	}

	.colWrap.col2 > * {
		width: 50%;
	}
}

.commonTbl {
	width: 100%;
	border-collapse: collapse;
}

.commonTbl th,
.commonTbl td {
	padding: 10px;
	border: 1px solid #ccc;
	line-height: 1.4;
}

.commonTbl th {
	font-weight: normal;
	text-align: left;
}

.commonTbl .txt_center th {
	text-align: center;
}

.commonTbl.type1 thead,
.commonTbl.type2 thead {
	background: #d2e6e6;
}

.commonTbl thead.f_bold th {
	font-weight: bold;
}

.commonTbl.type2 {
	border-top: 1px solid #ccc;
}

.commonTbl.type2 tr {
	border-bottom: 1px solid #ccc;
}

.commonTbl.type2 th,
.commonTbl.type2 td {
	border: 0;
}

.tblWrap {
	position: relative;
	overflow-x: auto;
}

.tblGuideTxt {
	display: none;
	margin: 0 0 10px;
	padding: 8px 15px;
	line-height: 1;
	font-size: .9em;
	border-radius: 12px;
	background: #e0eaef;
}

.commonList {
	border-top: 1px solid #ddd;
}

/*.commonList .tr:not(:last-child) { */
.commonList .tr {
	border-bottom: 1px solid #ddd;
}

.commonList .tr.block {
	display: block;
}

.commonList .th,
.commonList .td {
	padding: 5px 5px;
}

.commonList .th {
	padding-bottom: 0;
	width: auto;
	font-weight: bold;
}

.commonList .td {
}

.commonList .tHead {
/*	border-top: 1px solid #ddd; */
	border-bottom: 1px solid #ddd;
	background: #f3f3f3;
	font-weight: bold;
}

.commonList.type1 .tHead {
	background: #d2e6e6;
}

.commonList .tHead .th {
	padding-bottom: 10px;
}

.commonList .lined {
	border-bottom: 1px solid #ddd;
}

.commonList.noLine,
.commonList.noLine .tr {
	border: 0;
}

@media print, screen and (min-width: 768px) {
	.commonList .tr {
		display: flex;
		justify-content: flex-start;
	}

	.commonList .th,
	.commonList .td {
		padding: 10px 20px;
	}

	.commonList .high .th,
	.commonList .high .td {
		padding: 20px;
	}

	.commonList .mdl .th,
	.commonList .mdl .td,
	.commonList .mdl.th,
	.commonList .mdl.td {
		display: flex;
		align-items: center;
		align-content: center;
	}

	.commonList .mdl .th > *,
	.commonList .mdl .td > *,
	.commonList .mdl.th > *,
	.commonList .mdl.td > * {
		width: 100%;
	}

	.commonList .tr.block .th {
		padding-bottom: 0;
	}

	.commonList .tr.block .td {
		padding-top: 0;
		padding-left: 25px;
	}

	.commonList .th {
		flex: 1 1 auto;
		max-width: 7em;
		/* width: auto; */
		font-weight: bold;
	}

	.commonList .td {
		flex: 0 1 calc(100% - 7em);
		padding-left: 20px;
	}
}

@media print, screen and (max-width: 767px) {
	.commonList .tr.sp-flex {
		display: flex;
	}

	.commonList .tr.sp-flex .th,
	.commonList .tr.sp-flex .td {
		padding: 10px;
	}

	.sp-commonList .tr {
		display: flex;
	}

	.sp-commonList .th,
	.sp-commonList .td {
		padding: 10px 5px;
	}

	.sp-commonList .sp-mdl .th,
	.sp-commonList .sp-mdl .td,
	.sp-commonList .sp-mdl.th,
	.sp-commonList .sp-mdl.td {
		display: flex;
		align-items: center;
		align-content: center;
	}

	.sp-commonList .tr.block .th {
		padding-bottom: 0;
	}

	.sp-commonList .tr.block .td {
		padding-top: 0;
		padding-left: 25px;
	}

	.sp-commonList .th {
		width: auto;
		font-weight: bold;
	}

	.sp-commonList .td {
		flex: 1 1 auto;
		padding-left: 10px;
	}

	.commonList:not(.sp-commonList) .tHead {
	/*	display: flex;
		justify-content: flex-start; */
		display: block;
		overflow: hidden;
		line-height: 1;
	}

	.commonList:not(.sp-commonList) .tHead .th {
		float: left;
	}

	.commonList:not(.sp-commonList) .tHead .th:after {
		content: "/";
		display: inline-block;
		margin: 0 0 0 10px;
	}

	.commonList:not(.sp-commonList) .tHead .th:last-child:after {
		display: none;
	}

	.commonList:not(.sp-commonList) .tr:not(:last-child) {
		margin-bottom: 10px;
	}

	.commonList:not(.sp-commonList) .th,
	.commonList:not(.sp-commonList) .td {
		display: block;
	}
}

.list_arrow li {
	position: relative;
	padding-left: 1.25em;
}

.list_arrow li:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0.6em;
	width: 0.4em;
	height: 0.4em;
	border-top: 2px solid #0055a2;
	border-right: 2px solid #0055a2;
	transform: rotate(45deg);
}


.list_dot li {
	position: relative;
	padding-left: 1.25em;
}

.list_dot li:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: .6em;
	width: .45em;
	height: .45em;
	border-radius: 50%;
	background: #4b83a7;
	opacity: .5;
}

.commonList.list_dot li:before {
	top: calc(.6em + 10px);
	left: 20px;
}


.list.spc > li + li {
	margin-top: .7em;
}

.list > li {
	text-indent: -1em;
	padding-left: 1em;
}

.list.indent2 > li {
	text-indent: -2em;
	padding-left: 2em;
}

.list_disc li {
	margin-left: 1.5em;
	list-style-type: disc;
}

.bg {
	background: #f1f1f1;
}

.box01 {
	background: #f5f5f5;
	padding: 1.65em;
	margin: 30px 0;
}

.box01 .head {
	margin: 0 0 .5em;
	line-height: 1.3;
	font-size: 1.1em;
	font-weight: bold;
}

/* animation */
.fadeIn,
.fadeIn_in-row .animItem {
  position: relative;
  opacity: 0;
  -webkit-transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1);
  -moz-transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1);
  -o-transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1);
  transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1);
  /* easeOutQuint */
  -webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  -moz-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  -o-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  /* easeOutQuint */
}

.fadeInUp {
  position: relative;
  opacity: 0;
  -webkit-transform: translate(0, 10px);
  -moz-transform: translate(0, 10px);
  -o-transform: translate(0, 10px);
  transform: translate(0, 10px);
  -webkit-transition: all 1400ms cubic-bezier(0.23, 1, 0.32, 1);
  -moz-transition: all 1400ms cubic-bezier(0.23, 1, 0.32, 1);
  -o-transition: all 1400ms cubic-bezier(0.23, 1, 0.32, 1);
  transition: all 1400ms cubic-bezier(0.23, 1, 0.32, 1);
  /* easeOutQuint */
  -webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  -moz-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  -o-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  /* easeOutQuint */
}

.fadeinup {
  position: relative;
  opacity: 0;
  -webkit-transform: translate(0, 30px);
  -moz-transform: translate(0, 30px);
  -o-transform: translate(0, 30px);
  transform: translate(0, 30px);
  -webkit-transition: all 1400ms cubic-bezier(0.23, 1, 0.32, 1);
  -moz-transition: all 1400ms cubic-bezier(0.23, 1, 0.32, 1);
  -o-transition: all 1400ms cubic-bezier(0.23, 1, 0.32, 1);
  transition: all 1400ms cubic-bezier(0.23, 1, 0.32, 1);
  /* easeOutQuint */
  -webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  -moz-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  -o-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  /* easeOutQuint */
}


.fadeIn.active,
.fadein.active,
.fadeIn_in-row .animItem.active,
.fadeInUp.active,
.fadeinup.active {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
}

/* zoom */
.fadeInZoom {
	opacity: 0;
	-webkit-transform: scale(.9) translateY(50px);
	-moz-transform: scale(.9) translateY(50px);
	-o-transform: scale(.9) translateY(50px);
	transform: scale(.9) translateY(50px);
	transition: transform .85s cubic-bezier(0.215, 0.61, 0.355, 1);;
}

.fadeInZoom.active {
	opacity: 1;
	-webkit-transform: scale(1) translateY(0);
	-moz-transform: scale(1) translateY(0);
	-o-transform: scale(1) translateY(0);
	transform: scale(1) translateY(0);
}

.slideIn {
	opacity: 0;
	transition: transform .55s cubic-bezier(0.215, 0.61, 0.355, 1),
		    opacity .35s ease .25s;
	transform: translateX(-99.99%);
}

.slideIn.active {
	opacity: 1;
	transform: translateX(0);
}

/* ttl animation */
@-webkit-keyframes ttl_block {

}
/*
@keyframes ttl_block {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-20px) rotate(45deg);
		transform: translateY(-20px) rotate(45deg);
	}

	40% {
		opacity: 1;
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}

	60% {
		opacity: 1;
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}

	100% {
		opacity: 0;
		-webkit-transform: translateY(20px) rotate(-45deg);
		transform: translateY(20px) rotate(-45deg);
	}
}
*/

@keyframes ttl_block {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-25px) rotate(-20deg) scale(.75);
		transform: translateY(-25px) rotate(-20deg) scale(.75);
	}

	30% {
		opacity: 1;
		transform: translateY(-25px) rotate(-15deg) scale(1);
	}

	75% {
		opacity: 1;
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0) scale(1);
	}

	88% {
		opacity: 1;
		-webkit-transform: translateY(-6px) rotate(-5deg);
		transform: translateY(-6px) rotate(-5deg);
	}

	94% {
		opacity: 1;
		-webkit-transform: translateY(-3px) rotate(0);
		transform: translateY(-3px) rotate(0);
	}


	100% {
		opacity: 1;
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
}

/* ===== FORM ===== */
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="password"],
input[type="button"],
input[type="submit"],
textarea {
	/* reset */
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border: none;
	border-radius: 0;
	font: inherit;
	font-weight: normal;
	outline: none;
	/* end - reset */
}

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="password"],
textarea {
	padding: 4px;
	border: 1px solid #b5b5b5;
	font-size: 100%;
}

select {
	background: transparent;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none;
	padding: 4px;
	border: 1px solid #b5b5b5;
	font-size: 100%;
}

input[type="text"]::-webkit-input-placeholder,
input[type="tel"]::-webkit-input-placeholder,
input[type="email"]::-webkit-input-placeholder,
input[type="password"]::-webkit-input-placeholder,
select::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
	color: #aaa;
}

input[type="text"]:-ms-input-placeholder,
input[type="tel"]:-ms-input-placeholder,
input[type="email"]:-ms-input-placeholder,
input[type="password"]::-ms-input-placeholder,
select:-ms-input-placeholder,
textarea:-ms-input-placeholder {
	color: #aaa;
}

input[type="text"]::-moz-placeholder,
input[type="tel"]::-moz-placeholder,
input[type="email"]::-moz-placeholder,
input[type="password"]::-moz-input-placeholder,
select::-moz-placeholder,
textarea::-moz-placeholder {
	color: #aaa;
}

input[type="checkbox"],
input[type="radio"] {
	margin-right: 4px;
}

textarea {
	resize: vertical;
}

select::-ms-expand {
	display: none;
}
/* ===== end - FORM ===== */


/* header */
header {
	position: relative;
	height: 186px;
	background: #0055a2;
	color: #fff;
	text-align: center;
	z-index: 100;
}

header > .container {
	position: relative;
}

header.fixed {
	position: fixed;
	width: 100%;
	left: 0;
	top: 0;
}

header .logo {
	display: inline-flex;
	align-items: center;
	align-content: center;
	height: 120px;
	margin: 0 auto;
}

header .logo a {
	display: block;
	/* font-size: 23px; */
	font-size: 18px;
	letter-spacing: 1px;
	line-height: 1.3;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
}

header .logo a img {
	margin: 0 auto;
}


header .btn_logout {
	display: flex;
	align-items: center;
	align-content: center;
	justify-content: center;
	position: absolute;
	right: 0;
	top: 0;
	padding: 0;
	border: 0;
	width: 186px;
	height: 100%;
	background: #3286b2;
	font-size: 17px;
/*	font-weight: 700;
	font-family: "Roboto"; */
	font-weight: bold;
	letter-spacing: 1px;
	line-height: 1.3;
	color: #fff;
	text-decoration: none;
}

header .btn_logout:before {
	content: "";
	display: inline-block;
	margin: 0 10px 0 0;
	width: 16px;
	height: 21px;
	background: url(../images/common/ico_logout.png) no-repeat 0 0;
	background-size: contain;
}

.gnav {
	background: #fff;
}

.gnav .menu {
	margin: 0 auto;
	/* padding: 23px 0; */
	height: 66px;
	max-width: 1122px;
	border-bottom: 1px solid #dfdfdf;
}

.gnav .menu > li {
	display: flex;
	align-items: center;
	align-content: center;
	justify-content: center;
	flex-grow: 1;
	width: 25%;
	position: relative;
	border-right: 1px solid #dfdfdf;
}

.gnav .menu > li:last-child {
	border-right: 0;
}

.gnav .menu > li > a {
	display: block;
/*	padding: 1.7em 0 .2em; */
	padding: 0;
	width: 100%;
	font-size: 17px; 
/*	font-size: 1.258vw;*/
	letter-spacing: 1px;
	color: #000;
	font-weight: 500;
	text-align: center;
}

.gnav .menu > li > a:before {
	content: "";
	position: absolute;
	left: 15%;
	right: 15%;
	bottom: 0;
	height: 4px;
	background: #0055a2;
	transform: scale(0, 1);
	transition: transform .2s ease-out;
}

.gnav .menu > li > a:hover {
	opacity: 1;
	text-decoration: none;
	color: #000;
}

.gnav .menu > li.current > a:before,
.gnav .menu > li > a:hover:before {
	transform: scale(1,1);
}

/* menuBtn */
.menuBtn,
.gnav .closeBtn {
	position: fixed;
	top: 0;
	right: 54px;
	width: 50px;
	height: 50px;
	background: rgba(0, 85, 162, .4);
	border-radius: 4px;
	text-align: center;
	cursor: pointer;
	pointer-events: all;
/*	z-index: 200; */
	z-index: 40;
}

.menuBtn div,
.gnav .closeBtn div {
	position: relative;
	/* margin: 7px auto; */
	margin: 0 auto;
	width: 30px;
	height: 20px;
	top: 0;
	-webkit-transition: all 0.75s ease-out;
	transition: all 0.75s ease-out;
}
.menuBtn div:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	margin-top: -1px;
	margin-left: -15px;
	width: 30px;
	height: 2px;
	border-radius: 1px;
	background: #fff;
	opacity: 1;
	-webkit-transition: 0.35s ease-in-out;
	-webkit-transition: 0.35s ease-in-out;
	transition: 0.35s ease-in-out;
}
.menuBtn span,
.gnav .closeBtn span {
	display: block;
	margin: 0 auto;
	width: 30px;
	height: 20px;
	color: #fff;
	font-size: 1.1rem;
	font-family: Helvetica, Arial, sans-serif;
	letter-spacing: 0.5px;
	line-height: 76px;
	overflow: hidden;
}
.menuBtn span:before,
.gnav .closeBtn span:before {
	content: '';
	position: absolute;
	left: 50%;
	display: block;
	margin-left: -15px;
	width: 30px;
	height: 2px;
	border-radius: 1px;
	background: #fff;
	-webkit-transform-origin: center center;
	transform-origin: center center;
	top: 0;
	transition: transform 0.3s ease-out;
}
.menuBtn span:after,
.gnav .closeBtn span:after {
	content: '';
	position: absolute;
	left: 50%;
	display: block;
	margin-left: -15px;
	width: 30px;
	height: 2px;
	border-radius: 1px;
	background: #fff;
	-webkit-transform-origin: center center;
	transform-origin: center center;
	bottom: 0;
	transition: transform 0.3s ease-out;
}


.gnav .closeBtn {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 200;
	background: none;
}

.gnav .closeBtn span:before,
.gnav .closeBtn span:after {
	background: #fff;
}

.gnav .closeBtn span:before {
		top: 50%;
		-webkit-transform: translateY(-2px) rotate(45deg);
		transform: translateY(-2px) rotate(45deg);
}

.gnav .closeBtn span:after {
		top: 50%;
		-webkit-transform: translateY(-2px) rotate(-45deg);
		transform: translateY(-2px) rotate(-45deg);
}

/* pageTop */
.pageTop {
	position: fixed;
	right: 30px;
	bottom: 30px;
	z-index: 99;
	width: 50px;
}

.pageTop a {
	position: relative;
	display: block;
	overflow: hidden;
	margin: -25px auto 0;
	padding: 48px 0 0;
	width: 50px;
	height: 0;
	outline: none;
	background: rgba(0,85,162,.45);
	border-radius: 50%;
	text-align: center;
	text-decoration: none;
}

.pageTop a:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -4px 0 0 -7px;
	width: 12px;
	height: 12px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(-45deg);
}

/* footer */
footer {
	background: #0055a2;
	color: #fff;
	text-align: center;
}

footer a, footer a:hover {
	color: #fff;
	text-decoration: none;
}

footer .fnav {
	padding: 30px 0;
}

footer .fnav li {
	padding: 0 1.5em;
	font^size: 17px;
	font-weight: 500;
}

footer .copyright {
	padding: 20px 10px;
	font-size: 11px;
	font-weight: normal;
	font-family: "Lato";
	font-weight: 400;
	color: #fefefe;
	border-top: 1px solid #1d70bb;
	text-align: center;
}

.wrapper {
	position: relative;
	word-break: break-all;
}

.content {
	margin-top: 186px;
/*	padding-bottom: 100px; */
}

.section {
	overflow: hidden;
	padding: 100px 0;
}

.section.visible {
	overflow: visible;
}

.section .article + .article {
	margin-top: 65px;
}

.container {
	margin-left: auto;
	margin-right: auto;
	padding-left: 65px;
	padding-right: 65px;
/*	max-width: 1430px;
	max-width: 1206px; */
	max-width: 1082px;
}

.container.full {
	max-width: 100%;
	max-width: initial;
}

.container.noPadding {
	padding-left: 0;
	padding-right: 0;
}

.container.visible {
	overflow: visible;
}
@media print, screen and (max-width: 1320px) {
	.container {
		padding-left: 40px;
		padding-right: 40px;
	}
}

.pgTitle {
	overflow: hidden;
	text-align: center;
	padding: 4em 0;
	color: #0055a2;
/*	margin-bottom: 3.5em;
	padding: 3em 0; */
}

.pgTitle .ttl_ja {
	display: block;
	line-height: 1.2;
	font-size: .9em;
	transition: opacity .4s ease .85s, transform .4s ease .85s;
	opacity: 0;
	transform: translateY(15px);
}

.pgTitle.active .ttl_ja {
	opacity: 1;
	transform: translateY(0);
}

.pgTitle h1 {
	display: inline-flex;
	align-items: center;
	align-content: center;
	justify-content: center;
	margin: 15px auto 0;
	position: relative;
	line-height: 1.3;
	font-size: 2.4em;
	font-weight: 500;
	letter-spacing: .05em;
	/* font-family: 'Noto Sans JP', sans-serif; */
	opacity: 0;
	transition: all .45s ease-out .65s;
	transform: translate(-.25em, 0);
	text-align: center;
}

.pgTitle.active h1 {
	opacity: 1;
	transform: translate(0, 0);
}

.pgTitle + .section {
	padding-top: 0;
}

.ttl_block {
	margin: 15px auto 0;
	display: flex;
	justify-content: center;
	height: 15px;
}

.ttl_block span {
	display: block;
	width: 15px;
	height: 15px;
	background: #AEB5BF;
	opacity: 0;
	transform: translateY(-10px) rotate(-5deg);
}

.ttl_block span:nth-child(2) {
	background: #0D396B;
}

.ttl_block span:nth-child(3) {
	background: #000000;
}

.pgTitle.active .ttl_block span {
	-webkit-animation: ttl_block .85s cubic-bezier(0.64, 0, 0.78, 0) forwards;
	animation: ttl_block .85s forwards  cubic-bezier(0.64, 0, 0.78, 0);
	-webkit-animation: ttl_block .85s forwards  cubic-bezier(0.64, 0, 0.78, 0);
	animation: ttl_block .85s forwards  cubic-bezier(0.64, 0, 0.78, 0);
}

.pgTitle.active .ttl_block span:nth-child(2) {
	-webkit-animation: ttl_block .85s forwards  cubic-bezier(0.64, 0, 0.78, 0) .1s;
	animation: ttl_block .85s forwards  cubic-bezier(0.64, 0, 0.78, 0) .1s;
	-webkit-animation: ttl_block .85s forwards  cubic-bezier(0.64, 0, 0.78, 0) .1s;
	animation: ttl_block .85s forwards  cubic-bezier(0.64, 0, 0.78, 0) .1s;
}

.pgTitle.active .ttl_block span:nth-child(3) {
	-webkit-animation: ttl_block .85s forwards  cubic-bezier(0.64, 0, 0.78, 0) .2s;
	animation: ttl_block .85s forwards  cubic-bezier(0.64, 0, 0.78, 0) .2s;
	-webkit-animation: ttl_block .85s forwards  cubic-bezier(0.64, 0, 0.78, 0) .2s;
	animation: ttl_block .85s forwards  cubic-bezier(0.64, 0, 0.78, 0) .2s;
}


/*
.pgTitle h1 > span {
	display: block;
	opacity: 0;
	transform: translateY(.5em);
	transition: all .3s ease .45s;
}


.pgTitle h1:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height:1px;
	background: #000000;
	transform: scale(0);
	transition: transform .4s ease;
}

.pgTitle.active h1 > span {
	opacity: 1;
	transform: translateY(0);
}

.pgTitle.active h1:before {
	transform: scale(1);
}
*/

.pgTitle2 {
	padding: 100px 0 0;
	text-align: left;
}

.pgTitle2 h1 {
	margin: 0 0 30px;
	font-size: 4.5em;
	letter-spacing: 2px;
	font-weight: 500;
	color: #0055a2;
	line-height: 1;
}

.ttl {
	position: relative;
	margin: .9em 0 1.35em;
	padding: 0 0 .35em;
	font-size: 1.8em;
	letter-spacing: 0.002em;;
	line-height: 1.3;
	color: #0055a2;
	font-weight: normal;
	border-bottom: 1px solid #0055a2;
}

.ttl .sub {
	font-size: .65em;
}

.ttl2 {
	position: relative;
	margin: .9em 0 1.35em;
	padding: 0 0 .35em;
	font-size: 1.8em;
	letter-spacing: 0.002em;;
	line-height: 1.3;
	color: #0055a2;
	font-weight: normal;
	text-align: center;
}

span.sub_top {
	display: block;
	margin-bottom: .5em;
	font-size: .65em;
}

.section .ttl:first-child {
	margin-top: 0;
}


.ttl:before {
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 6.2em;
	height: 1px;
	background-color: #1654A5;
	content: "";
}

.ttl_m {
	position: relative;
	/* font-size: 20px; */
	font-size: 1.35em;
	margin: 0 0 1.5em;
	padding-left: 20px;
	line-height: 1.3;
	font-weight: normal;
}

.ttl_m:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 5px;
	background: #0D396B;
}

.ttl_s {
	position: relative;
	font-size: 24px;
	margin: 0.84em 0;
	padding: 0 0 .25em;
/*	font-weight: bold; */
	font-weight: normal;
	color: #000;
	border-bottom: 2px solid #bbb;
}

.ttl_s:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 3.5em;
	height: 2px;
	background: #0055a2;
}

.btn {
	display: block;
	position: relative;
	margin-left: auto;
	margin-right: auto;
	padding: 17px 15px;
	width: 100%;
	max-width: 326px;
	line-height: 1.3;
	/* font-size: 20px; */
	font-size: 1.25em;
	font-weight: bold;
	/* letter-spacing: 2px; */
	background-color: #ffffff;
	border: 1px solid #0055a2;
	color: #0055a2;
	text-decoration: none;
	text-align: center;
	transition: all .3s ease-out;
}

.btn:link,
.btn:hover,
.btn:active,
.btn:visited {
	color: #0055a2;
	text-decoration: none;
}

.btn.en {
	font-weight: 700;
	font-family: "Roboto";
}

.btn:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: -2.3em;
	box-sizing: border-box;
	width: 3.8em;
	height: 1px;
	background: #0055a2;
	transform: translateY(-50%);
	transition: all.1s ease-out;
}

.btn.arrw:before {
	display: none;
}

.btn.arrw:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 15px;
	box-sizing: border-box;
	width: 8px;
	height: 8px;
	border-top: 1px solid #0055a2;
	border-right: 1px solid #0055a2;
	transform: translateY(-50%) rotate(45deg);
	transition: all.1s ease-out;
}

.btn.left {
	margin-left: 0;
	margin-right: 0;
}

.btn.right {
	float: right;
	margin-left: 0;
	margin-right: 0;
	width: 100%;
}

.btn.text-left {
	text-align: left;
}

.btn.no-arrw:before {
	display: none;
}

.btn:hover {
	opacity: 1;
}

.btn:hover:before {
	margin-right: -4px;
}


.btn.arrw:hover {
	color: #fff;
	background: #0055a2;
}

.btn.arrw:hover:after {
	border-color: #fff;
	margin-right: -2px;
}

.btn:not(a) {
	padding: 0;
}


.btn:not(a):hover {
	opacity: 1;
}

.btn > input {
	display: block;
	position: relative;
	margin-left: auto;
	margin-right: auto;
	padding: 17px 15px;
	width: 100%;
	max-width: 326px;
	line-height: 1.3;
	font-size: 1.25em;
	font-weight: bold;
	border: 0;
	color: #0055a2;
	text-decoration: none;
	text-align: center;
	cursor: pointer;
	transition: all .3s ease-out;
}

.btn.fill {
	color: #fff;
	background: #0055a2;
}

.btn.fill > input {
	color: #fff;
}

.btn.fill:hover {
	background: #fff;
	color: #0055a2;
}

.btn.fill:hover > input {
	color: #0055a2;;
}

.btnFrame.fadeInZoom {
	opacity: 0;
	transform: scale(0.9) translateY(50px);
	transition: all 0.85s; cubic-bezier(0.215, 0.61, 0.355, 1);
}

.btnFrame.fadeInZoom.active {
	opacity: 1;
	transform: scale(1) translateY(0);
}

.btn.in-block {
	display: inline-block;
	padding: 18px 28px;
	width: auto;
	max-width: initial;
}

.btn_pdf {
	padding-right: 40px;
}

.btn_pdf:before {
	content: "";
	display: block;
	position: absolute;
	right: 25px;
	top: 50%;
	width: 16px;
	height: 20px;
	background: url(../images/common/ico_pdf.png) no-repeat 0 0;
	background-size: contain;
	border: 0;
	transform: translateY(-50%);
}

.btn_pdf.in-block {
	padding-right: 58px;
}

/* --------------------------------------------------
  INDEX STYLES
  -------------------------------------------------- */
.pg_top .content {
	padding-bottom: 0;
}

.pg_top .ttl_top {
	margin: 0;
	/* font-size: 5em; */
	font-size: 4.5em;
	letter-spacing: 2px;
	font-weight: 500;
	color: #0055a2;
	line-height: 1;
}

@media print, screen and (max-width: 1320px) {
	.pg_top .ttl_top {
		margin: 0 0 30px;
	}
}

.pg_top .ttl_top_m {
	margin: 0 auto 1.35em;
	line-height: 1.3;
	/* font-size: 1.625em; */
	font-size: 1.8em;
	font-weight: bold;
	color: #0055a2;
	text-align: center;
}

/* topicsSection */
.pg_top .topicsSection .box {
	display: block;
	padding: 20px;
	border: 1px solid #ddd;
	text-decoration: none;
	transition: all .3s ease-out;
}

.pg_top .topicsSection .box:hover {
	border-color: transparent;
	box-shadow: 0 0 9px rgba(0,0,0,0.15);
}

.pg_top .topicsSection .box .boxHeader {
	/* display: flex;
	justify-content: space-between; */
	overflow: hidden;
	margin: 0 0 7px;
	padding-top: 2px;
	line-height: 1.3;
}

.pg_top .topicsSection .box .boxHeader .date {
	display: block;
	position: relative;
	float: left;
	margin: 0 0 .5em;
	padding: 0 0 3px;
	color: #0055a2;
	font-weight: bold;
	min-width: 6em;
}

.pg_top .topicsSection .box .boxHeader .date:before,
.pg_top .topicsSection .box .boxHeader .date:after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #0055a2;
	transform-origin: right 0;
	transition: transform .35s ease-out;
}

.pg_top .topicsSection .box .boxHeader .date:after {
	transform: scaleX(0);
	transform-origin: 0 0;
	transition-delay: .35s;
}

.pg_top .topicsSection .box:hover .boxHeader .date:before {
	transform: scaleX(0);
}

.pg_top .topicsSection .box:hover .boxHeader .date:after {
	transform: scale(1);
}

.pg_top .topicsSection .box .boxHeader .cat {
	display: inline-block;
	float: right;
	position: relative;
	top: -2px;
	margin-left: 1em;
	padding: .3em 0;
/*	min-width: 120px;
	min-width: 8.571em; */
	min-width: 7.8em;
	height: 100%;
	line-height: 1.3;
	color: #fff;
	background: #0055a2;
	border: 1px solid #0055a2;
	border-radius: 9999px;
/*	font-size: .875em;*/
	font-size: .75em;
	font-weight: bold;
	font-family: "Yu Gothic";
	text-align: center;
	transition: background .35s ease-out;
}

.pg_top .topicsSection .box:hover .boxHeader .cat {
	color: #0055a2;
	background: #fff;
}

.pg_top .topicsSection .box .txt {
	line-height: 1.6;
	font-weight: 500;
	font-family: "Yu Gothic";
}

.pg_top .topicsSection .btn_more {
	margin: 6.15% auto 0;
}

@media print, screen and (min-width: 768px) {
	.pg_top .topicsSection .box {
		width: calc(25% - 15px);
		min-height: 200px;
		margin: 0 0 20px;
	}
}

@media print, screen and (min-width: 768px)  and (max-width: 900px) {
	.pg_top .topicsSection .box {
		padding: 20px 15px;
	}
	.pg_top .topicsSection .box {
		width: calc(25% - 10px);
	}
}

/* SCHEDULE SECTION */
.pg_top .scheduleSection {
/*	padding-top: 210px; */
	padding-top: 14.7%;
	position: relative;
	background: #ebf2f7;
}

.pg_top .scheduleSection:before {
	content: "";
	display: block;
	position: absolute;
	border: 25vw solid transparent;
	border-left: 100vw solid #fff;
	top: 0;
	left: 0;
	transform: translate(0, -50%);
	z-index: 1;
}


@media print, screen and (min-width: 1431px) {
	.pg_top .scheduleSection {
		padding-top: 210px;
	}

	.pg_top .scheduleSection:before {
		border: 420px solid transparent;
		border-left: 100vw solid #fff;
	}
}

.pg_top .scheduleSection .container {
	position: relative;
	z-index: 2;
}

.pg_top .scheduleSection a {
	color: #000;
	text-decoration: none;
}

.pg_top .scheduleSection ul {
	background: #fff;
}

.pg_top .scheduleSection li {
	padding: 1.7em 2em;
	font-size: 1.125em;
	border-bottom: 1px solid #ebf2f7;
}

.pg_top .scheduleSection li .txt {
	display: block;
	font-weight: normal;
}

.pg_top .scheduleSection li .date {
	display: block;
	margin: 2px 10px 5px 0;
	line-height: 1.3;
	color: #444;
	float: left;
	width: 175px;
	border-right: 1px #ccc solid;
}

.pg_top .scheduleSection li .date .cat {
	display: inline-block;
	position: relative;
	top: -2px;
	margin-left: 1.5em;
	padding: .27em 0 .356em;
/*	min-width: 138px; */
	min-width: 8.625em;
	line-height: 1.3;
	color: #fff;
	background: #0f81d1;
	font-size: .888em;
	text-align: center;
}

.pg_top .contactSection .btn_register {
	display: block;
	padding: 2.5em 2em;
	font-size: 1.125em;
	background-color: #f9f9f9;
	border: 2px solid #0055a2;
	color: #000;
	text-align: center;
	text-decoration: none;
}

.pg_top .contactSection .btn_register .em {
	display: block;
	position: relative;
	margin: 0 0 15px;
	line-height: 1.3;
	font-size: 1.6667em;
	letter-spacing: 2px;
	line-height: 35px;
	color: #0055a2;
	font-weight: bold;
}

.pg_top .contactSection .btn_register .em:before {
	content: "";
	display: inline-block;
	position: relative;
	top: 2px;
	margin: 0 .75em 0 0;
	width: 37px;
	height: 26px;
	background: url(../images/common/ico_mail.png) no-repeat 0 0;
	background-size: contain;
	transform-origin: 0 bottom;
	transition: transform .25s ease-out;
}

.pg_top .contactSection .btn_register:hover {
	opacity: 1;
}

.pg_top .contactSection .btn_register:hover .em:before {
	transform: rotate(-15deg);
}

.pg_top .contactSection .btn_cancel {
	display: block;
	position: relative;
	margin: 4.615%  auto 0;
	padding: .5em;
	max-width: 234px;
	color: #5d5d5d;
	font-weight: bold;
	background: #ebebeb;
	border-radius: 9999px;
	text-align: center;
	text-decoration: none;
}

.pg_top .contactSection .btn_cancel:before {
	content: "\f054";
	display: block;
	position: absolute;
	right: 10px;
	top: 50%;
	width: 17px;
	height: 17px;
	line-height: 17px;
	font-size: 10px;
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	color: #fff;
	border-radius: 50%;
	background-color: #0055a2;
	text-align: center;
	transform: translateY(-50%);
}


/* side fixed box */
.sideContactBox {
	position: fixed;
/*	top: 50vh; */
	bottom: 30px;
	right: 0;
	z-index: 30;
/*	transform: translateY(-50%); */
}

.sideContactBox .btn_register {
	display: block;
	position: relative;
	/* padding: 15px 50px 15px 25px; */
	/* padding: 0.75em 2.5em .75em 1.25em; */
	padding: 1.15em 2.5em 1.15em 1.25em;
	border: 0;
	/* width: 390px;
	width: 19.5em; */
	height: auto;
	background: #ff9600;
	/* font-size: 20px; */
	font-size: 17px;
	line-height: 32px;
	color: #ffffff;
	font-weight: bold;
}

.sideContactBox .btn_register .sub {
	display: block;
/* 	font-size: 15px; */
	font-size: .75em;
}

.sideContactBox .btn_register:before {
	content: "\f054";
	display: block;
	position: absolute;
	right: 15px;
	top: 50%;
/*	width: 22px;
	height: 22px;
	line-height: 22px; */
	font-size: 12px;
	right: 15px;
	width: 18px;
	height: 18px;
	line-height: 18px;
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	color: #ff9600;
	border-radius: 50%;
	background-color: #fff;
	text-align: center;
	transform: translateY(-50%);
}



/* --------------------------------------------------
  LOGIN PAGE STYLES
  -------------------------------------------------- */
.pg_login {
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	height: 100%;
	background: #0d396b;
}

.pg_login .content {
	width: 100%;
	margin: 0;
	padding: 0;
}

.pg_login .loginSection .container {
	background: #fff;
	padding: 30px;
	max-width: 600px;
}

.pg_login .loginHeader .logo {
	margin: 0;
	padding: 0;
}

.pg_login .loginHeader .logo span {
	display: block;
	margin: 4px 0 0;
	font-size: 13px;
	font-weight: bold;
	color: #0055a2;
}

.pg_login .loginBody {
	text-align: center;
}

.pg_login .loginBody .txt {
	margin: 20px auto;
	font-weight: 400;
	letter-spacing: .1em;
}

.pg_login .loginBody .ttl {
	margin: 20px 0;
	font-size: 20px;
	text-align: left;
	color: #0055a2;
	border: 0;
}

.pg_login .loginBody .ttl:before {
	display: none;
}

.pg_login .loginBox {
	margin: 0 auto;
	max-width: 360px;
}

.pg_login .loginBox .input {
	margin-left: 20px;
	margin-right: 20px;
	text-align: left;
	border-bottom: 1px solid #0055a2;
}

.pg_login .loginBox .input + .input {
	margin-top: 20px;
}

.pg_login .loginBox .input > input {
	padding: 5px;
	width: 100%;
	border: 0;
	font-size: 100%;
}

.pg_login .btn {
	margin: 30px auto;
	padding: 10px 10px 12px;
	line-height: 1.3;
	font-size: 14px;
	border-radius: 99999px;
}

.pg_login .btn:hover {
	background: #0055a2;
	color: #fff;
}

.pg_login .btn:before {
	display: none;
}

.pg_login .btn_login {
	max-width: 180px;
}

.pg_login .btn_first {
	margin: 40px auto 20px;
	max-width: 260px;
	background: #0055a2;
	color: #fff;
}

.pg_login .btn_first:hover {
	background: #fff;
	color: #0055a2;
}

/* --------------------------------------------------
  REGISTRATION PAGE STYLES
  -------------------------------------------------- */
.pg_registration header {
	height: 120px;
}

.pg_registration .content {
	margin-top: 120px;
}

.pg_registration .guideSection {
	padding: 60px 0 65px;
	background: #3286B2;
	color: #fff;
	transform-origin: 0 0;
	transform: scale(0, 1);
}

.pg_registration .guideSection.active {
	transition: transform 1s cubic-bezier(0.215, 0.61,  0.355, 1    );
	transform: scale(1, 1);
}

.pg_registration .guideSection .title {
	margin: 0 0 1.85em;
	font-size: 1.65em;
	font-weight: normal;
	text-align: center;
}

.pg_registration .guideSection .title.active {
	transition-delay: 1s;
}

.pg_registration .guideSection .guideBox.active {
	transition-delay: 1.6s;
}

.pg_registration .guideSection .box {
	counter-increment: idx;
	position: relative;
	font-weight: normal;
}

.pg_registration .guideSection .box:before {
	content: counter(idx);
	display: block;
	display: block;
	position: relative;
	margin: 0 auto 1em;
	width: 1.65em;
	height: 1.65em;
	line-height: 1.65em;
	font-size: 2em;
	font-family: 'Roboto', sans-serif;
	font-weight: 500;
	background: #fff;
	border-radius: 50%;
	color: #489ada;
	text-align: center;
}

.pg_registration .registrationSection {
	padding-top: 60px;
}

.pg_registration .registrationSection .hissu {
	display: inline-block;
	padding: 0 5px 1px;
	font-size: .85em;
	line-height: 1.3;
	background: #fff;
	color: #ee0000;
	border: 1px solid #ee0000;
	border-radius: 3px;
}

.pg_registration .registrationSection .txt {
	line-height: 1.95;
}

.pg_registration .registrationSection .txt .hissu {
	margin: 0 3px 0 0;
}

.pg_registration .registrationSection .formFrame {
	margin: 45px auto 0;
}

.pg_registration .registrationSection .formTbl {
	width: 100%;
	border-collapse: collapse;
}

.pg_registration .registrationSection .formTbl th,
.pg_registration .registrationSection .formTbl td {
	padding: 15px 0;
	border-bottom: 1px solid #ddd;
	font-weight: inherit;
	text-align: left;
}

.pg_registration .registrationSection .formTbl th .hissu {
	position: relative;
	top: 3px;
	float: right;
}

.pg_registration .registrationSection .formTbl td input {
	padding: 10px;
	width: 100%;
	max-width: 25em;
	border-radius: 4px;
	background: #f4f4f4;
	border: 0;
}

.pg_registration .registrationSection .btn_confirm {
	margin: 2.5em auto 0;
	border-radius: 9999px;
}

.pg_registration .registrationSection .btn_confirm > input {
	font-size: .9em;
	letter-spacing: .05em;
}

.pg_registration .registrationSection .attentionFrame {
	margin: 8% auto 0;
	border: 1px solid #dd0000;
}

.pg_registration .registrationSection .attentionFrame .head {
	padding: 7px;
	line-height: 1.3;
	font-size: 1.2em;
	background: #dd0000;
	color: #fff;
	text-align: center;
}

.pg_registration .registrationSection .attentionFrame .txt {
	padding: 30px 35px 35px;
	text-align: center;
}

.pg_registration .registrationSection .attentionFrame .agreement {
	display: inline-block;
	position: relative;
	margin: 20px auto 40px;
	padding: 0 0 0 1.9em;
	text-align: center;
}

@media print, screen and (max-width: 499px) {
	.pg_registration .registrationSection .attentionFrame .agreement {
		margin: 10px auto 20px;
		max-width: 18em;
		text-align: left;
		padding-left: 2.5em;
		line-height: 1.6;
	}
}

.pg_registration .registrationSection .attentionFrame .agreement input[type="checkbox"] {
	display: block;
	position: absolute;
	left: 0;
	top: 50%;
	margin: 0 7px 0 0;
	width: 1.3em;
	height: 1.3em;
	transform: translateY(-50%);
}

.pg_registration .registrationSection .attentionFrame .agreement label {
	font-size: 1.1em;
}

.pg_registration .registrationSection .attentionFrame li {
	font-size: .96em;
	text-align: left;
}

.pg_registration .registrationSection .attentionFrame li + li {
	margin-top: .5em;
}

@media print, screen and (min-width: 768px) {
	.pg_registration .guideSection .box {
		width: calc(33.33% - 15px);
		text-align: center;
	}

	.pg_registration .guideSection .box > span {
		display: inline-block;
		margin: 0 auto;
		max-width: 13em;
		padding: 0;
		text-align: left;
	}

	.pg_registration .registrationSection .formTbl th {
		width: 12em;
	}

	.pg_registration .registrationSection .formTbl td {
		padding-left: 30px;
		width: calc(100% - 12em);
	}
}

/* --------------------------------------------------
  LOWER PAGE STYLES
  -------------------------------------------------- */
.pg_lower .section {
	padding: 60px 0;
}

.pg_lower .section.borderTop {
	padding-top: 70px;
}

.pg_lower .section.borderTop > .container:first-child {
	padding-top: 60px;
	border-top: 1px solid #ddd;
}

.pg_lower .section.borderTop > .container .ttl:first-child,
.pg_lower .section.borderTop > .container .ttl2:first-child {
	margin-top: 0;
}

.pg_lower .pgTitle + section {
	padding-top: 0;
}

.pg_lower .pressDetail .ttl2 {
	font-size: 2em;
}

.pg_lower.pg_calendar section .container .ttl2 {
	font-size: 2em;
}

.directoryFrame li {
	display: inline;
	padding: 0 .5em 0 0;
	font-size: .85em;
	color: #777;
}

.directoryFrame li a {
	padding: 0 .5em 0 0;
}

.addressBox {
	margin-top: 15px;
	margin-left: -1.5em;
	margin-right: -1.5em;
}

.addressBox dl {
	display: flex;
	padding: 0 1.5em;
	margin-bottom: 15px;
}

.addressBox .in-flex {
	display: inline-flex;
}

.addressBox dt {
	flex: 0 0 auto;
}

.addressBox dd {
	flex: 1 1 auto;
}

.imgBox01 .img {
	margin: 0 0 20px;
}

.imgBox01 .img img {
	display: block;
	margin: 0 auto;
}

.imgBox01 .img {
	margin-top: 30px;
}


@media print, screen and (min-width: 768px) {
	.imgBox01 .img {
		margin: 0;
		width: 27%;
	}

	.imgBox01 .txt {
		flex: 1 1 auto;
		max-width: calc(73% - 30px);
	}

	.imgBox01.img_l .img {
		margin: 0;
		width: 40%;
	}

	.imgBox01.img_l .txt {
		flex: 1 1 auto;
		max-width: calc(60% - 30px);
	}
}

.contactSection .contactBox {
}

.contactSection .contactBox .img {
	margin: 0 0 20px;
	padding: 30px 0;
	display: flex;
	align-items: center;
	align-content: center;
	justify-content: center;
}

.contactSection .contactBox .img img {
	display: block;
	margin: 0 auto;
}

@media print, screen and (min-width: 768px) {
	.contactBox .img {
		margin: 0;
		padding: 0;
		width: 27%;
	}

	.contactBox .txt {
		flex: 1 1 auto;
		padding-left: 30px;
		width: 73%;
	}
}
/* ***** NEWS STYLES ***** */
.pg_lower .newsSection .newsFrame {
	overflow: auto;
/*	height: 356px; */
	height: 24em;
}

.pg_lower .newsSection .newsFrame li {
	/* margin: 0 0 1em; */
	padding: .65em 1.5em;
}

.pg_lower .newsSection .newsFrame li:nth-child(odd) {
	background: #edf5f7;
}

.pg_lower .newsSection .newsFrame .date {
	display: block;
	/* letter-spacing: 2px; */
	/* width: 17.5em; */
	width: 11em;
}

.pg_lower .newsSection .newsFrame .date .cat {
	display: inline-block;
	position: relative;
	top: -2px;
	margin-left: 1em;
	padding: .2em 0;
	/* width: 8.5em; */
	width: 120px;
	line-height: 1.3;
	color: #fff;
	font-size: .8em;
	text-align: center;
}

.pg_lower .newsSection .newsFrame .txt {
	flex-grow: 1;
	/* width: calc(100% - 17.5em); */
	width: calc(100% - 11em);
}


.pg_lower .newsSection .btnFrame {
	margin: 45px 0 0;
}

/* ---------------------------
  NEWS PAGE STYLES
  ----------------------------*/
.pg_news .newsSection .title {
	margin: 2em auto;
	font-size: 27px;
	font-weight: 500;
	text-align: center;
}

.pg_news .newsSection .inner {
	padding: 5.5% 5%;
	background: #fff;
	border: 1px solid #f6f6f6;
}

.pg_news .newsSection .newsFrame .date {
	width: 16em;
}

.pg_news .newsSection .newsFrame .txt {
	flex-grow: 1;
	width: calc(100% - 9em);
}

.pg_news .newsSection .pagingFrame {
	margin: 65px auto 15px;
}

.pg_news .newsSection .pagingFrame a {
	display: block;
	margin: 0 .65em;
	padding: 5px;
	min-width: 2em;
	line-height: 1.4;
	background: #f3f3f3;
	border: 1px solid #ddd;
	border-radius: 3px;
	text-decoration: none;
	text-align: center;
}

.pg_news .newsSection .pagingFrame a:hover,
.pg_news .newsSection .pagingFrame a.current {
	background: #648483;
	border-color: #648483;
	color: #fff;
	opacity: 1;
}


/* ---------------------------
  STATISTICS PAGE STYLES
  ----------------------------*/
.pg_statistics .searchFrame {
	margin: 5px auto 20px;
	text-align: center;
}

.pg_statistics .searchFrame .selectFrame {
	display: inline-flex;
	margin: 0 auto;
	text-align: left;
}

.pg_statistics .searchFrame .sel {
	margin-bottom: 10px;
	flex: 0 1 auto;
	width: auto;
}

.pg_statistics .searchFrame .sel + .sel {
	margin-left: 20px;
}

.pg_statistics .searchFrame .sel select {
	padding: 7px;
	padding-right: 28px;
}

.pg_statistics .searchFrame .btn {
	margin: 15px auto 0;
	padding:  10px;
	width: 100%;
	font-size: 15px;
	max-width: 200px;
	border-radius: 9999px;
}

.pg_statistics .searchFrame .btn:before {
	display: none;
}

@media print, screen and (min-width: 768px) {
	.pg_statistics .searchFrame {
		text-align: left;
	}

	.pg_statistics .searchFrame .selectFrame {
		display: flex;
		width: 100%;
	}

	.pg_statistics .searchFrame .sel,
	.pg_statistics .searchFrame .sel + .sel {
		margin: 0 25px 0 0;
		margin-right: 25px;
	}

	.pg_statistics .searchFrame .sel select {
		/* font-size: 1.2em;
		padding: 12px; */
	}

	.pg_statistics .searchFrame .btn {
		margin: 0;
		width: 160px
	}
}

@media print, screen and (min-width: 767px) and (max-width: 991px) {
	.pg_statistics .searchFrame .sel {
		margin-right: 20px;
	}

	.pg_statistics .searchFrame .sel select {
		font-size: 1em;
	}
}

@media print, screen and (max-width: 600px) {
	.pg_statistics .searchFrame .selectFrame {
		display: flex;
		margin: 0 auto;
		width: 100%;
		max-width: 300px;
	}

	.pg_statistics .searchFrame .sel:nth-of-type(1) {
		width: 100%;
	}

	.pg_statistics .searchFrame .sel:nth-of-type(2) {
		margin-left: 0;
	}
}

/* selectBox */

[include*="form-input-select()"] {
  display: block;
  padding: 0;
  position: relative;
  /* Set options to normal weight */
  /* Show only the native arrow */
  color: #005BA6;
  display: block;
  border-radius: 0;
  box-shadow: none;
  font-size: 16px;
  margin-top: 9px;
  margin-bottom: 15px;
  width: 100%;
}
[include*="form-input-select()"]::before, [include*="form-input-select()"]::after {
  content: "";
  display: block;
  position: absolute;
  pointer-events: none;
  z-index: 2;
}
[include*="form-input-select()"] select {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background: none;
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  border: 1px solid transparent;
  font-size: 16px;
  outline: none;
  /* Focus style */
}
[include*="form-input-select()"] select:focus {
/*  background-color: transparent;
  outline: none; */
}
[include*="form-input-select()"] option {
  font-weight: normal;
}
[include*="form-input-select()"] x:-o-prefocus, [include*="form-input-select()"]::after {
  display: none;
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  [include*="form-input-select()"] select::-ms-expand {
    display: none;
  }
  [include*="form-input-select()"] select:focus::-ms-value {
    background: transparent;
    color: #000;
  }
}
@-moz-document url-prefix() {
  [include*="form-input-select()"] {
    overflow: hidden;
  }
  [include*="form-input-select()"] select {
    width: 120%;
    width: calc(100% + 3em);
    /* Firefox focus has odd artifacts around the text, this kills that. See https://developer.mozilla.org/en-US/docs/Web/CSS/:-moz-focusring */
  }
  @supports (-moz-appearance: none) {
    [include*="form-input-select()"] select {
      width: 100%;
    }
  }
  [include*="form-input-select()"] select:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #000;
  }
}
@supports (-moz-appearance: none) {
  [include*="form-input-select()"] {
    width: 100%;
  }
}
[include*="form-input-select()"]::before, [include*="form-input-select()"]::after {
  content: "";
  display: block;
  position: absolute;
  pointer-events: none;
  border: 1px solid transparent;
  width: 0;
  height: 0;
  right: 12px;
}
[include*="form-input-select()"]::before {
  bottom: 55%;
  border-width: 0 6.5px 8px 6.5px;
/*  border-bottom-color: #D6D6D6; */
  border-bottom-color: #005BA6;
}
[include*="form-input-select()"]::after {
  border-width: 8px 6.5px 0 6.5px;
/*  border-top-color: #D6D6D6; */
  border-top-color: #005BA6;
  top: 55%;
}
@-moz-document url-prefix() {
  [include*="form-input-select()"] {
/*    border-right: 3px solid #E6E6E6; */
    border-right: 3px solid #005BA6;
  }
  [include*="form-input-select()"]:hover {
/*    border-right: 3px solid #005BA6; */
  }
}
[include*="form-input-select()"]:hover select {
/*  box-shadow: 0 2px 3px rgba(0, 91, 166, 0.1) inset;
  border-color: #005BA6;*/
}

[include*="form-input-select()"] select,
[include*="form-input-select()"]:hover select:focus {
  outline-color: transparent;
}
/*
[include*="form-input-select()"]:hover::before {
  border-bottom-color: #005BA6;
}
[include*="form-input-select()"]:hover::after {
  border-top-color: #005BA6;
}*/
[include*="form-input-select()"] select {
/*  border: 3px solid #E6E6E6; */
	border: 3px solid #005BA6;
  border-radius: 0;
  font-weight: 400;
/*  color: inherit; 
  color: #d6d6d6;*/
  color: #005BA6;
  outline: 3px solid #005BA6;
  outline-offset: -3px;
  box-shadow: 0 3px 4px rgba(0, 91, 166, 0.3) inset;
  padding: 11px 15px;
  line-height: normal;
  transition: border-color 0.2s ease, outline 0.2s ease;
}
[include*="form-input-select()"] select:focus {
/*  box-shadow: 0 3px 4px rgba(0, 91, 166, 0.3) inset;
  outline: 3px solid #005BA6;
  outline-offset: -3px;
  color: #005BA6; */
}
[include*="form-input-select()"] select[disabled], [include*="form-input-select()"] select:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

[include*="form-input-select()"] {
    display: block;
    padding: 0;
    position: relative;
    color: #005BA6;
    display: block;
    border-radius: 0;
    box-shadow: none;
    font-size: 16px;
    margin-top: 9px;
    margin-bottom: 15px;
    width: 100%;
}
/* end - selectBox */

.pg_statistics .listFrame {
	margin: 0 auto 30px;
}
.pg_statistics .listFrame .colWrap {
/*	margin: 35px auto; */
	margin: 15px auto 35px;
}

.pg_statistics .listFrame .box {
	display: flex;
	position: relative;
	margin: 0;
/*	padding: 10px 10px 30px; */
	padding: 10px;
	width: 50%;
	line-height: 1.5;
	font-size: 13px;
	border-bottom: 1px solid #ddd;
	border-right: 1px solid #ddd;
}

.pg_statistics .listFrame .box:nth-of-type(even) {
	border-right: 0;
}

.pg_statistics .listFrame .box:last-child {
	border-bottom: 0;
}

.pg_statistics .listFrame .box .txt > div {
	width: 100%;
}

@media print, screen and (min-width: 768px) {
	.pg_statistics .listFrame {
		margin-bottom: 0;
	}
	.pg_statistics .listFrame .colWrap {
/*		margin: 70px auto; */
		margin: 0 auto 50px;
	}

	.pg_statistics .listFrame .box {
		width: 25%;
	}

	.pg_statistics .listFrame .box:nth-of-type(even) {
		border-right: 1px solid #ddd;
	}

	.pg_statistics .listFrame .box:nth-of-type(4) {
		border-right: 0;
	}

	.pg_statistics .listFrame .box:nth-of-type(5),
	.pg_statistics .listFrame .box:nth-of-type(6),
	.pg_statistics .listFrame .box:nth-of-type(7) {
		border-bottom: 0;
	}
}

@media print, screen and (min-width: 768px) and (max-width: 991px) {
	.pg_statistics .listFrame .box {
		width: 33.33%;
		border-right: 1px solid #ddd !important;
		border-bottom: 1px solid #ddd !important;
	}

	.pg_statistics .listFrame .box:nth-of-type(3n) {
		width: 33.33%;
		border-right: 0 !important;
	}

	.pg_statistics .listFrame .box:last-child {
		border-bottom: 0 !important;
	}
}

.pg_statistics .listFrame .box .img {
	width: 50px;
}

.pg_statistics .listFrame .box .txt {
	display: flex;
	align-items: center;
	align-content: center;
	padding-left: 8px;
	width: calc(100% - 50px);
}

.pg_statistics .listFrame .box .btn {
	position: absolute;
	right: 10px;
	bottom: 10px;
	margin: 10px 0 0;
	padding: 3px;
	font-size: 11px;
	width: 68px;
	line-height: 1;
}

.pg_statistics .listFrame .box .btn:before {
	display: none;
}

.pg_statistics .listFrame .box .btn:hover {
	background: #0055a2;
	color: #fff;
}

@media print, screen and (max-width: 520px) {
	.pg_statistics .listFrame .colWrap {
		display: block;
	}

	.pg_statistics .listFrame .colWrap .box {
		padding: 10px 0;
		width: 100%;
		border-right: 0 !important;
	}

	.pg_statistics .listFrame .box:after {
		content: "";
		display: block;
		box-sizing: border-box;
		position: absolute;
		top: 50%;
		right: 10px;
		width: 8px;
		height: 8px;
		border-top: 2px solid #ddd;
		border-right: 2px solid #ddd;
		transform: translateY(-50%) rotate(45deg);
	}

	.pg_statistics .listFrame .box .btn {
		position: relative;
		bottom: auto;
		right: auto;
		float:right;
		margin: 5px 25px 0 0;
	}
}

.pg_statistics .listFrame .btnFrame .btn + .btn {
	margin: 15px auto 0;
}

@media print, screen and (min-width: 768px) {
	.pg_statistics .listFrame .btnFrame {
		margin: 40px auto;
	}

	.pg_statistics .listFrame .btnFrame .btn {
		font-size: 16px;
	/*	margin: 0; */
	}

	.pg_statistics .listFrame .btnFrame .btn + .btn {
		margin: 0;
		margin-left: 50px;
	}
}

.pg_statistics .performanceSection .stat__detail__electronic__top {
/*	display: inline-flex;
	align-items: center;
	align-content: center;
	justify-content: center; */
	display: block;
	margin: 15px auto 0;
	padding: 1.65em 0;
	/* padding: 4em 0; */
	width: 100%;
	position: relative;
	line-height: 1.3;
	font-size: 2.4em;
	font-weight: 500;
	font-family: inherit;
	text-align: center;
	color: #0055a2;
	letter-spacing: .05em;
	font-family: "Khand";
	/* opacity: 0; 
	transition: all .45s ease-out .65s;
	transform: translate(-.25em, 0);
	text-align: center;*/
}

/*
.pg_statistics .performanceSection .stat__detail__electronic__top.ative {
	opacity: 1;
	transform: translate(0, 0);
}*/

.pg_statistics .stat__detail__head {
	text-align: center;
}

.pg_statistics .stat__detail__top__box {
	background: #f5f5f5;
	padding: 1.65em;
	margin: 30px 0;
}

.pg_statistics .stat__detail__top__box a,
.pg_statistics .stat__detail__top__box a:hover {
	color: #2196f3 !important;
	text-decoration: underline;
}

.pg_statistics .stat__detail__top__box .stat__detail__top__box__title {
	margin: 0 0 .5em;
	line-height: 1.3;
	font-size: 1.1em;
	font-weight: bold;
	color: #ee0000;
}

.pg_statistics .stat__detail__electronic__produce {
	margin: 50px auto 0;
	padding: 3.5%;
	border: 5px solid #ebebeb;
	border-radius: 15px;
	text-align: center;
}

.pg_statistics .stat__detail__electronic__produce__title {
	position: relative;
	margin: 0 0 1.35em;
	padding: 0 0 .7em;
	font-size: 1.8em;
	letter-spacing: 0.002em;
	line-height: 1.3;
	color: #0055a2;
	font-weight: normal;
	border-bottom: 1px solid #0055a2;
	text-align: center;
}

.pg_statistics .stat__detail__electronic__produce ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	text-align: left;
}

.pg_statistics .stat__detail__electronic__produce li {
	position: relative;
	margin: 0 21px 20px;
	padding-left: 10px;
	width: calc(12.5% - 42px);
	min-width: 4.2em;
	min-height: 2.2em;
	line-height: 1.5;
	white-space: nowrap;
}

.pg_statistics .stat__detail__electronic__produce li:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 4px;
	width: 4px;
	height: 1em;
	background: #0055a2;
}

.pg_statistics .stat__detail__electronic__produce li a {
	display: block;
	color: #000;
	text-decoration: none;
}

.pg_statistics .stat__detail__electronic__produce li span {
	display: block;
	text-indent: -0.5em;
	font-size: .65em;
}

.pg_statistics .performanceSection .searchFrame {
	margin: 50px auto 0;
	max-width: 80%;
}

.pg_statistics .oldDataFrame {
	margin: 35px auto 10px;
}

.pg_statistics .oldDataFrame .btn {
	max-width: 100%;
	max-width: initial;
	border-radius: 4px;
	color: #2fa0cc;
	border-color: #2fa0cc;
}

.pg_statistics .oldDataFrame .btn:after {
	border-color: #2fa0cc;
	box-shadow: -1px 1px 0 #fff, -2px 2px 0 #2fa0cc;
}

.pg_statistics .oldDataFrame .btn:hover {
	color: #fff;
	background: #2fa0cc;
}

.pg_statistics .oldDataFrame .btn:hover:after {
	border-color: #fff;
	box-shadow: -1px 1px 0 #2fa0cc, -2px 2px 0 #fff;
}

@media print, screen and (min-width: 768px) {
	.pg_statistics .oldDataFrame {
		margin: 50px auto 30px;
	}

	.pg_statistics .oldDataFrame .btn {
		padding: 22px 10px;
		font-size: 17px;
		max-width: 80%;
	}
}

@media print, screen and (max-width: 767px) {
	.pg_statistics .stat__detail__electronic__produce {
		margin: 30px auto 0;
		padding: 20px;
	}

	.pg_statistics .stat__detail__electronic__produce li {
		margin: 0 5px 10px;
		width: calc(33.3% - 10px);
	}

	.pg_statistics .performanceSection .searchFrame {
		margin: 35px auto 0;
		max-width: 100%;
		max-width: initial;
	}
}

.pg_statistics.pg_statDetail .container {
	max-width: 1262px;
}

.pg_statistics.pg_statDetail .performanceSection .stat__detail__electronic__top + p {
	margin-bottom: 30px;
}

.pg_statistics.pg_statDetail .performanceSection .stat__detail__electronic__top + p > span[style],
.pg_statistics.pg_statDetail .performanceSection p > span[style="font-weight:bold;"],
.pg_statistics.pg_statDetail .performanceSection p > span[style="font-weight: bold;"],
.pg_statistics .performanceSection .idx {
	font-weight: bold;
	padding-right: .7em;
	color: #0055a2;
}

/*.pg_statistics .performanceSection .tblFrame {
	margin: 30px auto 20px;
} */

.pg_statistics.pg_statDetail .performanceSection .unit {
	font-size: .8em;
}

.pg_statistics .performanceSection .tblWrap {
	margin-bottom: 20px;
}

.pg_statistics .performanceSection .jisseki {
	margin: 5px auto 0;
	border-collapse: collapse;
	width: 100%;
	font-size: .9em;
	line-height: 1.3;
	border: 2px solid #888;
	min-width: 900px;
}

.pg_statistics .performanceSection .jisseki tr:first-child {
	background: #f6f6f6;
}

.pg_statistics .performanceSection .jisseki th,
.pg_statistics .performanceSection .jisseki td {
	border: 1px solid #888;
	padding: 7px 5px;
}

.pg_statistics .performanceSection .jisseki th {
	text-align: center;
}

.pg_statistics .performanceSection .jisseki th a {
	color: #2196f3 !important;
	text-decoration: underline;
}

.pg_statistics .performanceSection .jisseki .border {
	text-align: right;
}

.pg_statistics .performanceSection .jisseki .noBorder,
.pg_statistics .performanceSection .jisseki .borderTop,
.pg_statistics .performanceSection .jisseki .borderLeft {
	border: 0;
}

.pg_statistics .performanceSection .jisseki .borderTop {
	border-top: 1px solid #888;
}

.pg_statistics .performanceSection .jisseki .borderLeft {
	border-left: 1px solid #888;
}

.pg_statistics .performanceSection .note {
	font-size: .9em;
}

.pg_statistics.electronic .section.font_l {
	font-size: 1.6rem;
}

.pg_statistics.electronic .section b,
.pg_statistics.electronic .section strong {
	font-weight: bold ! important;
}

.pg_statistics.electronic .section table {
	width: 100%;
}
.pg_statistics.electronic .section td {
	/* padding: 2px; */
	padding: 5px 3px;
	vertical-align: top;
}

.pg_statistics.electronic .section .acro {
	color: #cc0000;
	font-weight: bold;
}

@media print, screen and (max-width: 1023px) {
	.pg_statistics.pg_statDetail .performanceSection .tblGuideTxt {
		display: block;
		margin-top: 10px;
	}

	.pg_statistics.electronic section table.jisseki {
		min-width: 960px;
	}
}

@media print, screen and (max-width: 767px) {
/*	.pg_statistics .performanceSection .tblFrame {
		margin: 15px auto 10px;
	}
*/
	.pg_statistics.pg_statDetail .performanceSection .stat__detail__electronic__top + p {
		margin-bottom: 15px;
	}

	.pg_statistics .performanceSection .tblWrap {
		margin-bottom: 10px;
	}
}

/* data page styles */
.pg_data .itemList {
	margin: 0 auto 30px;
	max-width: 768px;
}

.pg_data .itemList .box + .box {
	margin-top: 40px;
}

.pg_data .itemList .head {
	margin: 0 0 1.75em;
	padding: .4em;
	line-height: 1.3;
	background: #0055a2;
	color: #fff;
	font-size: 1.2em;
	font-weight: bold;
	text-align: center;
}

.pg_data .itemList li {
	position: relative;
	overflow: hidden;
	margin: 1em 0;
	padding: 0 0 0 12px;
	line-height: 1.3;
}

.pg_data .itemList li:before,
.pg_data .itemList li:after {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 50%;
	width: 9px;
	height: 9px;
	border-top: 1px solid #1479c3;
	border-right: 1px solid #1479c3;
	transform: translateY(-50%) rotate(45deg);
	z-index: 1;
}

.pg_data .itemList li:before {
	left: -15px;
}

.pg_data .itemList li:hover:before,
.pg_data .itemList li:hover:after {
	-webkit-animation: arrw .5s forwards;
	animation: arrw .5s forwards;
	-webkit-animation: arrw 0.5s forwards;
	animation: arrw .5s forwards;
}

.pg_data .itemList a {
	padding-left: 10px;
	background: #fff;
	position: relative;
	color: #1479c3;
	font-size: 1.1em;
	z-index: 2;
}

.pg_data .itemList li a:hover {
	opacity: 1;
	color: rgba(20, 121, 195, .7);
	text-decoration: none;
}

/*@-webkit-keyframes menu-bar01 { */
@keyframes arrw {
	0% {
/*		transform: translate(-100%, -50%) rotate(45deg); */
		transform: translate(0, -50%) rotate(45deg);
	}

	100% {
		transform: translate(15px, -50%) rotate(45deg);
	}
}
@media print, screen and (min-width: 768px) {
	.pg_data .itemList .box {
		width: calc(50% - 30px);
	}

	.pg_data .itemList .box + .box {
		margin-top: 0;
	}
}

/* ---------------------------
  CALENDAR PAGE STYLES
  ----------------------------*/
.pg_calendar .title_m {
	margin: 0 auto 1.35em;
	line-height: 1.3;
	/* font-size: 1.625em; */
	font-size: 1.8em;
	font-weight: bold;
	color: #0055a2;
	text-align: center;
}

.pg_calendar .listFrame a {
	color: #000;
	text-decoration: none;
}

.pg_calendar .listFrame li {
	padding: 1.7em 0;
	border-bottom: 1px solid #ebf2f7;
}

.pg_calendar .listFrame li .txt {
	display: block;
	font-weight: normal;
}

.pg_calendar .listFrame li .date {
	display: block;
	margin: 0 0 5px;
	line-height: 1.3;
	color: #444;
	font-weight: bold;
}

.pg_calendar .listFrame li .date .cat {
	display: inline-block;
	position: relative;
	top: -2px;
	margin-left: 1.5em;
	padding: .27em 0 .356em;
/*	min-width: 138px; */
	min-width: 8.625em;
	line-height: 1.3;
	color: #fff;
	background: #0f81d1;
	font-size: .888em;
	text-align: center;
}

.pg_calendar .section .searchFrame {
	margin: 0 0 20px;
}
.pg_calendar .section .searchFrame:after {
	content: "";
	display: block;
	clear: both;
	height: 0;
}

.pg_calendar .section .searchFrame .sel {
	float: right;
	position: relative;
/*	border: 3px solid #E6E6E6; */
	border: 3px solid #0055a2;
	border-radius: 0;
	font-weight: 400;
}

.pg_calendar .section .monthPicker {
	border: 0;
/*	padding: 7px;
	padding-left: 40px;
	font-size: 100%; */
	padding: 5px 7px 5px 40px;
	width: 9em;
	font-size: 1.08em;
	font-family: inherit;
	cursor: pointer;
	outline: none;
/*	color: #d6d6d6; */
	color: #0055a2;
}

.pg_calendar .section .searchFrame .sel:before {
	content: "\f073";
	display: block;
	position: absolute;
	left: 12px;
	top: 50%;
	width: 20px;
	height: 20px;
	line-height: 20px;
/*	color: #d6d6d6; */
	color: #0055a2;
	font-family: 'Font Awesome 5 Free';
	font-size: 20px;
	font-weight: bold;
	transform: translateY(-50%);
}

.pg_calendar .section .searchFrame .sel.active {
	border-color: #0055a2;
	box-shadow: 0 2px 3px rgb(0 91 166 / 10%) inset;
}

.pg_calendar .section .searchFrame .sel.active:before {
	color: #0055a2;;
}

.pg_calendar .section .searchFrame .sel.active #monthPicker {
	color: #0055a2;
}

.pg_calendar .section .SMPChangeYear .SMPYearWrap {
	text-align: center;
}

.pg_calendar .section .SMPChangeYear .SMPYearWrap .SMPYear {
	color: #0055a2;
	display: inline-block;
	margin: 0 auto;
}

.pg_calendar .section .searchFrame .SMPChangeYear .SMPLeft .arrow,
.pg_calendar .section .searchFrame .SMPChangeYear .SMPRight .arrow {
	border-color: #0055a2;
}
.pg_calendar .section .SMPButtons {
	display: none;
}

.pg_calendar .section .SMPChangeMonth > div {
	font-size: 1em;
	color: #0055a2;
}

.pg_calendar .section .SMPChangeMonth > div:hover {
	color: #0055a2;
	background: #ccf3fb;
}

.pg_calendar .section .SMPChangeMonth > div.active {
/*	background: #0055a2; */
	color: #0055a2;
	background: #ccf3fb;
	border-radius: 0;
}

@media print, screen and (max-width: 1200px) {
	.pg_calendar .section .SuperMonthPicker .SMPContainer {
	    right: -20px;
	}
}

@media print, screen and (max-width: 767px) {
	.pg_calendar .section .SuperMonthPicker .SMPContainer {
	    right: -15px;
	}
}

.pg_calendar .section .listFrame .date .cat {
	border-radius: 9999px;
	background: #0055a2;
}

.pg_calendar .section.pressDetail a {
	color: #0055a2;
}

/* calendar detail */
.pg_calendar .calendarSection {
	margin-top: -20px;
}

.pg_calendar .calendarSection .thead {
	position: relative;
	padding: 10px;
	background: #0055a2;
	color: #fff;
	text-align: center;
}

.pg_calendar .calendarSection .thead .navFrame a {
	display: flex;
	align-items: center;
	align-content: center;
	position: absolute;
	top: 0;
	width: 5em;
	height: 100%;
	color: #fff;
}

.pg_calendar .calendarSection .thead .navFrame a:before {
	content: "";
	display: block;
	position: absolute;
	background: rgba(255, 255, 255, .7);
	width: 9px;
	top: 10px;
	bottom: 10px;
	border-radius: 2px;
}

.pg_calendar .calendarSection .thead .navFrame a:after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	border: 4px solid transparent;
	transform: translateY(-50%);
}
.pg_calendar .calendarSection .thead .navFrame .nav_prev {
	left: 0;
	padding-left: 30px;
}

.pg_calendar .calendarSection .thead .navFrame .nav_prev:before {
	left: 10px;
}

.pg_calendar .calendarSection .thead .navFrame .nav_prev:after {
	left: 7px;
	border-right: 5px solid #0055a2;
}

.pg_calendar .calendarSection .thead .navFrame .nav_next {
	right: 0;
	justify-content: flex-end;
	padding-right: 30px;
}

.pg_calendar .calendarSection .thead .navFrame .nav_next:before {
	right: 10px;
}

.pg_calendar .calendarSection .thead .navFrame .nav_next:after {
	right: 7px;
	border-left: 5px solid #0055a2;
}

.pg_calendar .calendarSection .commonList {
	display: none;
	border: 1px solid #0055a2;
}

.pg_calendar .calendarSection .commonList.current {
	display: block;
}

.pg_calendar .calendarSection .commonList .tr {
	border-color: #0055a2;
}

.pg_calendar .calendarSection .commonList .tr:nth-of-type(even) {
	background: #f5f8fb;
}

.pg_calendar .calendarSection .commonList .tr:first-child {
	border-top: 0;
}

.pg_calendar .calendarSection .commonList .tr:last-child {
	border-bottom: 0;
}

.pg_calendar .calendarSection .commonList .th {
	display: flex;
	align-items: center;
	align-content: center;
	justify-content: flex-end;
	border-right: 1px solid #ccc;
	width: 5.5em;
	font-weight: 500;
}
.pg_calendar .calendarSection .commonList .sat .th {
	color: #006498;
}

.pg_calendar .calendarSection .commonList .sun .th {
	color: #ee0000;
}

.pg_calendar .calendarSection .commonList .td {
	width: calc(100% - 5.5em);
}

/* ---------------------------
  ITEM PAGE STYLES
  ----------------------------*/
.pg_item .itemSection .col + .col {
	margin-top: 50px;
}

.pg_item .itemSection .ttl {
	border-bottom: 0;
	text-align: center;
}

.pg_item .itemSection .ttl:before {
	display: none;
}

.pg_item .itemSection .box {
	overflow: hidden;
	margin: 0 0 4em;
}

.pg_item .itemSection .box .head {
	margin: 0 0 10px;
	line-height: 1.3;
	font-size: 1.2em;
	font-weight: normal;
}

.pg_item .itemSection .box .aside {
	line-height: 1.3;
/*	font-weight: normal;
	color: #999; */
}

.pg_item .itemSection .box .btn {
	margin: 15px 0 0;
	max-width: 100%;
}

.pg_item .itemSection .box .btn:before {
	margin: 15px 0 0;
	max-width: 100%;
}

.pg_item .itemSection .box .img {
	display: flex;
	align-items: center;
	align-content: center;
	min-height: 54px;
}

.pg_item .itemSection .box .img img {
	display: blok;
	margin: 0 auto;
}

@media print, screen and (min-width: 767px) {
	.pg_item .itemSection .col + .col {
		margin-top: 0;
	}

	.pg_item .itemSection .col {
		width: calc(50% - 30px);
	}

	.pg_item .itemSection .box .head {
		font-size: 1.3em;
	}
	.pg_item .itemSection .box .img img {
		margin: 0;
	}
}

/* ---------------------------
  NEWREG PAGE STYLES
  ----------------------------*/
.pg_newreg .newregSection .textFrame .list_num li {
	text-indent: -1.5em;
	padding-left: 1.5em;
}

.pg_newreg .newregSection .textFrame li + li {
	margin-top: .5em;
}

.pg_newreg .newregSection .btnFrame {
	margin: 2.5em auto;
}

.pg_newreg .newregSection .btn_agree > input {
	font-size: 16px;
}

/* --------------------------------------------------
  ********** LESS THAN 991px WIDTH **********
  -------------------------------------------------- */
@media print, screen and (max-width: 991px) {
	body {
		font-size: 14px;
	}

	.pc {
		display: none;
	}

	.tab, .tab.sp, .tab.sp2 {
		display: block !important;
	}

	/* header */
	header {
		height: 150px;
	}

	header .logo {
		height: 100px;
	}

	.gnav .menu {
		height: 50px;
	}

	.gnav .menu > li > a {
		font-size: 15px;
	}

	.content {
		margin-top: 150px;
	/*	padding-bottom: 80px; */
	}

	.section {
		padding: 65px 0;
	}

	.section .article + .article {
		margin-top: 45px;
	}

	.container {
		padding: 0 30px;
	}

	.btn.right {
		float: none;
		margin-left: auto;
		margin-right: auto;
	}


	/* --------------------------------------------------
	  INDEX STYLES
	  -------------------------------------------------- */
	.pg_top .ttl_top {
		font-size: 3.5em;
	}

	.pg_top .ttl_top_m {
		font-size: 1.65em;
	}

	.sideContactBox .btn_register {
		font-size: 16px;
	}

	/* --------------------------------------------------
	  REGISTRATION PAGE STYLES
	  -------------------------------------------------- */
	.pg_registration header {
		height: 100px;
	}

	.pg_registration .content {
		margin-top: 100px;
	}

	/* --------------------------------------------------
	  LOWER PAGE STYLES
	  -------------------------------------------------- */
	.pgTitle {
		padding: 3em 0;
	}

	.pgTitle h1 {
	/*	font-size: 28px; */
	}

	.ttl {
		font-size: 22px;
	}

	.ttl_s {
		font-size: 20px;
	}

	.pg_lower .content {
		font-size: 15px;
	}

	.pgTitle2 {
		padding: 65px 0 0;
	}

	.pgTitle2 h1 {
		font-size: 3.5em;
	}

	/* ---------------------------
	  STATISTICS PAGE STYLES
	  ----------------------------*/
	.pg_statistics .performanceSection .stat__detail__electronic__top {
		padding: 1.25em 0;
	}

	.pg_statistics .stat__detail__electronic__produce__title {
		font-size: 22px;
	}

	/* NEWS STYLES */
	.pg_lower .newsSection .newsFrame .date .cat {
		width: 100px;
	}

	/* ---------------------------
	  NEWS PAGE STYLES
	  ----------------------------*/
	.pg_news .newsSection {
		padding-bottom: 60px;
	}

	.pg_news .newsSection .title {
		font-size: 23px;
	}

	/* CALENDAR PAGE STYLES */
	.pg_calendar .title_m {
		font-size: 1.65em;
	}

}


@media print, screen and (min-width: 768px) and (max-width: 900px) {
	.pg_top .topicsSection .colWrap {
		flex-wrap: wrap;
	}

	.pg_top .topicsSection .box {
		margin: 0 0 20px;
		width: calc(50% - 10px);
	}
}


/* *************************************************************
   LESS THAN width 767px
**************************************************************** */
@media print, screen and (max-width: 767px) {
	body {
		font-size: 13px;
	}

	body.fixed {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
	}

	body.fixed:before {
		visibility: visible;
		opacity: 0.4;
	}

	img {
		max-width: 100%;
		height: auto;
	}

	.pc, .tab, .pc.tab, .pc.sp2, .tab.sp2, sp2 {
		display: none !important;
	}

	.sp {
		display: block !important;
	}

	.sp-mt0 {
		margin-top: 0 !important;
	}

	.sp-mb0 {
		margin-bottom: 0 !important;
	}

	.sp-ml0 {
		margin-left: 0 !important;
	}

	.sp-mr0 {
		margin-right: 0 !important;
	}


	.sp-pt0 {
		padding-top: 0 !important;
	}

	.sp-pb0 {
		padding-bottom: 0 !important;
	}

	.sp-pl0 {
		padding-left: 0 !important;
	}

	.sp-pr0 {
		padding-right: 0 !important;
	}

	/* ===== FLEX BOX ===== */
	.sp-colWrap {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
	}

	.sp-colWrap.sp-col {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}

	.sp-colWrap.sp-wrap {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}

	.sp-colWrap.sp-col-rev {
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: column-reverse;
		        flex-direction: column-reverse;
	}

	.sp-colWrap.sp-boxAlign-left {
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
	}

	.sp-colWrap.sp-boxAlign-right {
		-webkit-box-pack: end;
		    -ms-flex-pack: end;
		        justify-content: flex-end;
	}

	.sp-colWrap.sp-boxAlign-center {
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}

	.sp-colWrap.sp-mdl > *,
	.sp-colWrap > .sp-mdl:not(.sp-colWrap) {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-ms-flex-line-pack: center;
		    align-content: center;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
	}

	.sp-colWrap.sp-mdl.ct > *,
	.sp-colWrap.sp-mdl > .ct,
	.sp-colWrap > .sp-mdl.ct:not(.sp-colWrap) {
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}

	.sp-colWrap.sp-col2 > * {
		width: 50%;
	}

	.sp-colWrap.sp-col3 > * {
		width: 33.33%;
	}
	/* ===== end - FLEX BOX ===== */

	.wrapper:not(.tblfix) table:not(.sp-table) th,
	.wrapper:not(.tblfix) table:not(.sp-table) td,
	.wrapper:not(.tblfix) table.tab-table:not(.sp-table) th,
	.wrapper:not(.tblfix) table.tab-table:not(.sp-table) td {
		display: block;
		width: 100% !important;
		border-bottom: 0;
	}

	.wrapper:not(.tblfix) table:not(.sp-table) th {
		padding: 8px 8px 4px;
		font-weight: bold;
		border-bottom: 0;
	}

	.wrapper:not(.tblfix) table:not(.sp-table) td {
		padding: 15px 1em;
		border-top: 0;
	}

	table.sp-table th,
	table.sp-table td {
		padding: 8px;
		font-weight: normal;
	}

	.sp-text-center {
		text-align: center;
	}

	.sp-text-left {
		text-align: left;
	}

	.sp-text-right {
		text-align: right;
	}

	.sp-block {
		display: block;
	}

	.sp-in-block {
		display: inline-block;
	}

	.sp-inline {
		display: inline;
	}

	.commonTbl {
		border-bottom: 1px solid #ccc;
		font-size: .9em;
	}

	.commonList.list_dot li:before {
		top: calc(.6em + 5px);
		left: 5px;
	}

	input[type="text"].sp-max,
	input[type="tel"].sp-max,
	input[type="email"].sp-max,
	select.sp-max,
	textarea.sp-max {
		width: 100%;
	}

	header {
		position: fixed;
		left: 0;
		top: 0;
		width: 100%;
		padding: 0;
		height: 50px;
		border-bottom-width: 2px;
		/* z-index: 30; */
	}

	header .container > .colWrap {
		height: auto;
	}

	header .container {
		padding: 0 15px;
	}

	header .logo {
		height: 50px;
	}

	header .logo img {
		width: 78.5px;
		height: auto;
	}

	header .logo a {
	/*	font-size: 12px; */
		font-size: 11px;
		letter-spacing: .5px;
		line-height: 1;
	}

	header .btn_logout {
		display: block;
		padding: 10px 0 0;
		width: 54px;
		font-size: 10px;
		letter-spacing: -0.05em;
	}

	header .btn_logout:before {
		display: block;
		margin: 0 auto 2px;
	}

	.menuBtn.sp,
	.gnav .closeBtn.sp {
		display: flex !important;
		align-items: center;
		align-content: center;
	}

	.gnav {
		position: fixed;
		overflow: hidden;
		top: 0;
		left: 0;
		margin: 0;
		padding: 0;
		width: 100%;
		height: 100vh;
		max-height: 0;
		overflow-y: auto;
		background: rgba(0, 85, 163, 0.9);
		-webkit-overflow-scrolling: touch;
		-webkit-transition: max-height .3s ease-out;
		transition: max-height .3s ease-out;
		transform: none;
		z-index: 100;
	}

	.gnav nav {
		display: block;
		margin: 0;
		padding: 50px 15px 0;
		width: 100%;
		height: 100%;
		max-width: 100%;
		overflow-y: auto;
		background: none;
		border: 0;
	}

	.gnav .menu {
		position: relative;
		margin: 0 auto;
		padding: 0;
		max-width: initial;
		height: auto;
		border: 0;
	}

	.gnav .menu > li {
		display: block;
		position: relative;
		width: auto;
		border: 0;
	}

	.gnav .menu > li:before {
		display: none;
	}

	.gnav .menu > li > a {
		display: block;
		position: relative;
		padding: 15px 5px;
		font-size: 15px;
		line-height: 1.3;
		color: #fff;
		font-weight: 700;
		text-decoration: none;
		text-align: left;
		border-bottom: 1px solid rgba(255, 255, 255, .3);
	}

	.gnav .menu > li a:before {
		display: none;
	}

	.gnav .menu > li a:after {
		content: "";
		box-sizing: border-box;
		display: block;
		position: absolute;
		right: 5px;
		top: 50%;
		width: 6px;
		height: 6px;
		border-right: 2px solid #fff;
		border-top: 2px solid #fff;
		transform: translateY(-50%) rotate(45deg);
		opacity: .6;
	}

	.gnav .menu > li:first-child > a {
		border-top: 0;
	}
	.open {
		max-height: 100vh;
	}

	.pageTop {
		width: 40px;
		right: 15px;
		/* bottom: 30px; */
		transform: translateY(50%);
	}

	.pageTop a {
		width: 40px;
		padding: 38px 0 0;
	}

	/* footer */
	footer .fnav {
		padding: 30px 0;
	}

	footer .fnav li {
		padding: 0;
	}

	footer .fnav li + li {
		margin-top: .7em;
	}

	footer .copyright {
		padding: 15px 10px;
		line-height: 1.3;
	}

	.content {
		margin-top: 50px;
	/*	padding-bottom: 60px; */
	}

	.section {
		padding: 35px 0;
	}

	.section .article + .article {
		margin-top: 30px;
	}

	.container {
		padding: 0 25px;
	}

	.btn {
		padding: 16px 10px;
		font-size: 14px;
		letter-spacing: 0;
	}

	.btn.in-block {
		padding: 16px 15px;
	}

	.btn_pdf {
		padding-right: 35px;
	}

	.btn_pdf:before {
		right: 16px;
	}

	.btn_pdf.in-block {
		padding-right: 45px;
	}

	.btn.btn_white {
		padding: 20px;
		font-size: 13px;
		min-width: 270px;
	}

	.btn.btn_white .sp-block {
		margin-top: 7px;
		margin-bottom: -7px;
	}

	/* --------------------------------------------------
	  INDEX STYLES
	  -------------------------------------------------- */
	.pg_top .ttl_top {
		margin: 0 0 15px;
		font-size: 28px;
	}

	.pg_top .ttl_top_m {
		margin: 0 0 15px;
		font-size: 17px;
	}

	/* TOPICSSECTION */
	.pg_top .topicsSection {
		padding: 25px 0;
	}

	.pg_top .topicsSection .box + .box {
		margin-top: 20px;
	}

	.pg_top .topicsSection .btn_more {
		margin-top: 30px;
		max-width: 200px;
	}

	/* SCHEDULE SECTION */
	.pg_top .scheduleSection {
		padding: 40px 0 35px;
		position: relative;
	}

	.pg_top .scheduleSection li {
		padding: 20px;
		font-size: 1em;
	}

	.pg_top .scheduleSection li .date {
		overflow: hidden;
		margin-bottom: 5px;
		padding-top: 10px;
	}

	.pg_top .scheduleSection li .date .cat {
		display: block;
		position: relative;
		top: -10px;
		margin: 5px 0 0;
		float: right;
		min-width: 8em;
		max-width: 190px;
	}

	/* CONTACT SECTION */
	.pg_top .contactSection .btn_register {
		padding: 22px 10px;;
		font-size: 14px;
	}

	.pg_top .contactSection .btn_register .em {
		margin: 0 0 10px;
		line-height: 1.3;
		font-size: 16px;
		letter-spacing: .5px;
	}

	.pg_top .contactSection .btn_register .em:before {
		top: 0;
		margin-right: 7px;
		width: 18.5px;
		height: 13px;
	}

	.pg_top .contactSection .btn_cancel {
		margin-top: 30px;
		max-width: 200px;
	}

	/* SIDE FIXED BOX */
	.sideContactBox {
	/*	transform-origin: right bottom;
		transform: translateY(-50%) rotate(-90deg);
		margin-top: -100px;*/
		bottom: 20px;
	}

	.sideContactBox .btn_register {
	/*	padding: 5px 24px 7px 6px; */
		padding: 22px 24px 22px 6px;
	/*	font-size: 13px;
		width: 210px; */
		font-size: 12px;
		width: 200px;
		line-height: 1;
	}

	.sideContactBox .btn_register .sub {
		font-size: 11px;
		margin: 5px 0 0;
	}

	.sideContactBox .btn_register:before {
		width: 16px;
		height: 16px;
		line-height: 16px;
		font-size: 11px;
		right: 8px;
	}

	/* --------------------------------------------------
	  LOGIN PAGE STYLES
	  -------------------------------------------------- */
	.pg_login .loginSection {
		padding: 0;
	}

	.pg_login .loginSection .container {
		padding: 30px 20px;
	}

	.pg_login .loginHeader .logo img {
		width: 96px;
	}

	.pg_login .loginHeader .logo span {
		font-size: 10px;
	}

	.pg_login .loginBody .txt {
		letter-spacing: 0;
		font-size: .98em;
	}

	/* --------------------------------------------------
	  REGISTRATION PAGE STYLES
	  -------------------------------------------------- */
	.pg_registration header {
		height: 50px;
	}

	.pg_registration .content {
		margin-top: 50px;
	}

	.pg_registration .guideSection {
		padding: 35px 0 45px;
	}

	.pg_registration .guideSection .title {
		margin: 0 0 1.5em;
		font-size: 1.3em;
	}

	.pg_registration .guideSection .colWrap {
		margin: 0 auto;
		max-width: 380px;
	}

	.pg_registration .guideSection .box {
		display: flex;
		align-items: center;
		align-content: center;
		padding: 0 0 0 3em;
		min-height: 3em;
		font-size: .96em;
	}

	.pg_registration .guideSection .box + .box {
		margin-top: 1em;
	}

	.pg_registration .guideSection .box > span {
	}

	.pg_registration .guideSection .box:before {
		position: absolute;
		top: 50%;
		left: 0;
		margin: 0;
		/* font-size: 1.32em; */
		font-size: 18px;
		transform: translateY(-50%);
	}

	.pg_registration .registrationSection {
		padding: 40px 0;
	}

	.pg_registration .registrationSection .ttl {
		margin-bottom: 15px;
	}

	.pg_registration .registrationSection .formTbl th {
		padding: 15px 0 0;
		border-bottom: 0;
	}

	.pg_registration .registrationSection .formTbl td {
		padding-top: 10px;
	}

	.pg_registration .registrationSection .formTbl td input {
		padding: 8px;
		max-width: 100%;
		max-width: initial;
	}

	.pg_registration .registrationSection .btn_confirm > input {
		font-size: 16px;
	}

	.pg_registration .registrationSection .attentionFrame {
		margin: 40px auto 0;
	}

	.pg_registration .registrationSection .attentionFrame .txt {
		padding: 20px 15px 25px;
	}

	.pg_registration .registrationSection .attentionFrame .head {
		padding: 8px 5px 10px;
		font-size: 1.1em;
	}

	/* --------------------------------------------------
	  LOWER PAGE STYLES
	  -------------------------------------------------- */
	.pgTitle {
		padding: 20px 0;
	}

	.pgTitle .ttl_ja {
		font-size: 11px;
	}

	.pgTitle h1 {
	/*	margin: 1em 0;
		font-size: 22px; */
		margin: 10px 0 0;
		font-size: 22px;
	}

	.pgTitle2 {
		padding: 25px 0 0;
	}

	.pgTitle2 h1 {
		margin: 0 0 15px;
		font-size: 28px;
	}

	.ttl_block {
		margin: 10px auto 0;
		height: 12px;
	}

	.ttl_block span {
		width: 12px;
		height: 12px;
	}

	.ttl {
		margin: 0 0 25px;
		font-size: 18px;
	}

	.ttl_m {
		margin-bottom: 20px;
		padding-left: 15px;
		font-size: 17px;
	}

	.ttl.borderLeft:after,
	.ttl_m:before {
		width: 3px;
	}

	.ttl2 {
		font-size: 17px;
		margin-bottom: 1em;
	}

	.ttl_s {
		font-size: 16px;
	}

	.pg_lower .content {
		font-size: 14px;
	}

	.pg_lower .section {
		padding: 25px 0;
	}

	/* ---------------------------
	  STATISTICS PAGE STYLES
	  ----------------------------*/
	.pg_statistics .performanceSection .stat__detail__electronic__top {
		margin: 10px 0 0;
		padding: 20px 0;
		font-size: 22px;
	}

	.pg_statistics .stat__detail__electronic__produce__title {
		margin: 0 0 25px;
		font-size: 18px;
	}

	.pg_statistics .stat__detail__head {
		text-align: left;
	}

	.pg_statistics .tblWidth_spmax .tblGuideTxt {
		display: block;
	}

	/* ----- NEWS STYLES ----- */
	.pg_lower .newsSection .newsFrame li {
		padding: 1em;
	}

	.pg_lower .newsSection .newsFrame li .date {
		margin: 0 0 5px;
		font-weight: bold;
	}

	.pg_lower .newsSection .newsFrame li .txt {
		width: auto;
	}

	.pg_lower .newsSection .btnFrame {
		margin: 30px auto 0;
	}

	/* ---------------------------
	  NEWS PAGE STYLES
	  ----------------------------*/
	.pg_news .newsSection {
		padding-bottom: 40px;
	}

	.pg_news .newsSection .title {
		margin: 1.5em 0;
		font-size: 17px;
	}

	.pg_news .newsSection .inner {
		padding: 30px;
	}

	.pg_news .newsSection .pagingFrame {
		margin-top: 30px;
	}

	.pg_news .newsSection .pagingFrame a {
		font-size: .9em;
		line-height: 1.2;
	}


	/* ---------------------------
	  CALENDAR PAGE STYLES
	  ----------------------------*/
	.pg_calendar .title_m {
		margin: 0 0 15px;
		font-size: 17px;
	}

}

@media print, screen and (max-width: 499px) {
	.sp2, .pc.sp2, .tab.sp2, .sp.sp2 {
		display: block !important;
	}

	.colWrap.sp2-block,
	.tab-colWrap.sp2-block,
	.sp-colWrap.sp2-block {
		display: block;
	}

	.colWrap.sp2-block > *,
	.tab-colWrap.sp2-block > *,
	.sp-colWrap.sp2-block > * {
		width: 100%;
	}

	/* --------------------------------------------------
	  LOWER PAGE STYLES
	  -------------------------------------------------- */
	.addressBox dl,
	.addressBox .in-flex {
		display: block;
	}

	.addressBox dt {
		font-weight: bold;
	}

	.addressBox dd {
		padding-left: .5em;
	}
}


@media print, screen and (max-width: 374px) {
	.pg_top .scheduleSection li .date .cat {
		top: 0;
		margin: 5px 0;
		padding: 5px;
		line-height: 1;
	}

	.pg_calendar .listFrame li .date .cat {
		min-width: 6em;
		margin-left: .5em;
		font-size: 11px;
	}
}

@media print {
	header.fixed {
		position: absolute !important;
	}

	footer, .menuBtn, .gnav, .pageTop {
		display: none !important;
	}

	.fadeIn, .fadein,
	.fadeInUp, .fadeinup,
	.slideIn,
	.fadeInZoom {
		opacity: 1 !important;
		display: block;
		transition: none !important;
		transform: none !important;
	}

	.btn {
		display: none;
	}

	.addressBox .in-flex {
		display: inline-block;
	}

	.page1 {
		/*   zoom: 0.68; */
		/* zoom: .6; */
		zoom: .56;
		-webkit-print-color-adjust: exact;
	}
}


/* IE10以上 */
@media print and (-ms-high-contrast: none) {
        /* @pageの指定いらないかも */
    @page page1 {
        size: A4;
        margin: 12.7mm 9.7mm;
    }

    .page1 {
        zoom: 1.8;
        width: 1200px;
        transform: scale(0.5);
        transform-origin: 0 0;
	page: page1;
    }
}