 @charset "utf-8";
/* ==================================================
		
		ページ全般の共通CSS PC・SP

================================================== */

/* --------------------------------------------------
		html, body
-------------------------------------------------- */
html, body {
	height: 100%;
}
body {
	word-wrap: break-word;
	overflow-wrap: break-word;
}
/* --------------------------------------------------
		.main.subpage
-------------------------------------------------- */
.main.subpage {
	font-family: -apple-system, blinkMacSystemFont, 'Helvetica Neue', 'Segoe UI', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
}
/* --------------------------------------------------
		blue-btn, white-btn
-------------------------------------------------- */
.blue-btn, .white-btn {
	display: flex;
	justify-content: center;
}
.blue-btn a, .white-btn a {
	font-size: 15px;
	text-decoration: none;
	color: #ffffff;
	width: 230px;
	height: 48px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.long a {
	width: 321px;
}
.blue-btn a {
	background: url(/common/img/common-btn-blue01.png) no-repeat;
}
.white-btn a {
	background: url(/common/img/common-btn-white01.png) no-repeat;
}
.long a {
	background: url(/common/img/common-btn-blue02.png) no-repeat;
}
.blue-btn a span:after, .white-btn a span:after {
	content: "\f105";
	font-family: 'Font Awesome\ 5 Free';
	padding-left: 5px;
	font-weight: bold; /* 表示のために必須 */
}
/* セミナー&ニュース・ライブラリーの例外対応 */
.white-btn span {
	font-size: 15px;
	text-decoration: none;
	color: #ffffff;
	width: 230px;
	height: 48px;
	background: url(/common/img/common-btn-white01.png) no-repeat;
	display: flex;
	align-items: center;
	justify-content: center;
}
.white-btn span:after {
	content: "\f105";
	font-family: 'Font Awesome\ 5 Free';
	padding-left: 5px;
	font-weight: bold; /* 表示のために必須 */
}

/* ==================================================
		
		ページ全般の共通CSS PC

================================================== */

@media screen and (min-width:781px) {
/* --------------------------------------------------
		.sp SPの要素を非表示
-------------------------------------------------- */
.sp {
	display: none !important;
}
/* --------------------------------------------------
		.over 不透明度ロールオーバー
-------------------------------------------------- */
.over {
	transition: opacity 0.5s;
}
.over:hover {
	opacity: 0.6;
}
/* --------------------------------------------------
		電話番号のリンクを無効化
-------------------------------------------------- */
a[href^="tel:"] {
 pointer-events: none;
}
/* --------------------------------------------------
		header
-------------------------------------------------- */
header {
	width: 100%;
	min-width: 1086px;
	height: 116px;
	background: #ffffff;
	position: fixed;
	z-index: 9999;
}
header .header-inner {
	display: flex;
	justify-content: center;
}
header .header-box {
	width: 1086px;
	padding-top: 20px;
}
header .header-wrapper {
	width: 882px;
	display: flex;
	justify-content: space-between;
}
header .header-wrapper .header-wrapper-txt01 {
	font-size: 10px;
	color: #000000;
}
header .header-wrapper .english {
	font-size: 12px;
	text-align: right;
}
header .header-wrapper .english a:link, header .header-wrapper .english a {
	padding-left: 12px;
}
header .header-wrapper .english a:link, header .header-wrapper .english a:visited {
	text-decoration: none;
	color: #555555;
}
header .header-wrapper .english a:hover {
	text-decoration: underline;
	color: #555555;
}
header .header-wrapper .english span:before {
	font-family: 'Font Awesome\ 5 Free';
	font-size: 12px;
	padding-left: 5px;
	content: "\f0c5";
}
/* --------------------------------------------------
		.header-nav-pc
-------------------------------------------------- */
header .header-nav-pc {
	width: 908px;
	margin-top: 27px;
	display: flex;
	justify-content: space-between;
}
header .header-nav-pc h1 a {
	display: inline-block;
}
header .header-nav-pc h1 a object {
	pointer-events: none;
}
header .header-nav-pc nav ul {
	width: 733px;
	display: flex;
}
header .header-nav-pc nav ul li {
	font-size: 14px;
	text-align: center;
	line-height: 1;
}
header .header-nav-pc nav ul li a {
	text-decoration: none;
	color: #4d4c4c;
	height: 52px;
	background: url(/common/img/header-bg-line01.png) no-repeat left top 3px;
	display: block;
}
header .header-nav-pc nav ul li a:visited, header .header-nav-pc nav ul li a:hover {
	text-decoration: none;
	color: #4d4c4c;
}
header .header-nav-pc nav ul .about a {
	width: 147px;
	background: none;
}
header .header-nav-pc nav ul .cslt a {
	width: 105px;
}
header .header-nav-pc nav ul .ourpeople a {
	width: 175px;
}
header .header-nav-pc nav ul .seminar-news a {
	width: 172px;
}
header .header-nav-pc nav ul .pub a {
	width: 134px;
}
header .header-nav-pc nav ul li span {
	font-size: 9px;
	color: #007db7;
	margin-top: 6px;
	display: block;
}
/* --------------------------------------------------
		.comname
-------------------------------------------------- */
header .comname {
	font-size: 10px;
	color: #056a9c;
	font-weight: bold;
	position: absolute;
	top: 26px;
	right: 180px;
}
header .comname a:link, 
header .comname a:visited {
 text-decoration: none;
	color: #056a9c;
}
/* --------------------------------------------------
		.header-btn
-------------------------------------------------- */
header .header-btn {
	position: absolute;
	top: 0;
	right: 0;
}
header .header-btn p a {
	font-size: 14px;
	text-decoration: none;
	color: #ffffff;
	width: 134px;
	height: 58px;
	padding-left: 20px;
	display: flex;
	align-items: center;
}
header .header-btn .contact a {
	background: #057db7;
}
header .header-btn .recruit a {
	background: #fd8d07;
}
header .header-btn .contact a span:before {
	font-family: 'Font Awesome\ 5 Free';
	padding-right: 5px;
	content: "\f0e0";
}
header .header-btn .recruit a span:before {
	content: "\f500";
	font-family: 'Font Awesome\ 5 Free';
	font-weight: bold; /* 表示のために必須 */
	padding-right: 5px;
}
/* --------------------------------------------------
		.header-nav-over
-------------------------------------------------- */
header .header-nav-pc-over {
	width: 100%;
	height: 342px;
	background: rgba(5, 106, 156, 0.8);
	position: absolute;
	top: 116px;
	display: none;
	justify-content: center;
}
header .header-nav-pc-over .header-nav-pc-over-inner {
	display: flex;
	align-items: flex-start;
	width: 1086px;
	margin-top: 31px;
}
header .header-nav-pc-over .header-nav-pc-over-inner p {
	font-size: 16px;
	color: #ffffff;
	width: 199px;
	text-align: center;
	margin-top: 30px;
	padding-right: 30px;
	box-sizing: border-box;
}
header .header-nav-pc-over .header-nav-pc-over-inner p a:link, header .header-nav-pc-over .header-nav-pc-over-inner p a:visited  {
	text-decoration: underline;
	color: #ffffff;
}
header .header-nav-pc-over .header-nav-pc-over-inner p a:hover  {
	text-decoration: none;
	color: #ffffff;
}
header .header-nav-pc-over .header-nav-pc-over-inner p span {
	font-size: 10px;
	text-align: center;
	margin-top: 4px;
	display: block;
}
header .header-nav-pc-over .header-nav-pc-over-box {
	display: flex;
	position: relative;
 margin-top: 32px;
}
header .header-nav-pc-over .header-nav-pc-over-box ul {
	color: #ffffff;
	margin-left: 27px;
}
header .header-nav-pc-over .header-nav-pc-over-box ul:first-of-type {
 color: #ffffff;
 margin-left: 0;
}
header .header-nav-pc-over .header-nav-pc-over-box ul li {
	font-size: 12px;
	margin-top: 12px;
}
header .header-nav-pc-over .header-nav-pc-over-box ul li:first-child {
	margin-top: 0;
}
header .header-nav-pc-over .header-nav-pc-over-box ul li a:link, header .header-nav-pc-over .header-nav-pc-over-box ul li a:visited {
	text-decoration: underline;
	color: #ffffff;
}
header .header-nav-pc-over .header-nav-pc-over-box ul li a:hover {
	text-decoration: none;
	color: #ffffff;
}
header .header-nav-pc-over .header-nav-pc-over-box > p {
 font-size: 12px;
 width: 100%;
 text-align: left;
 margin-top: 0;
 padding-right: 0;
 position: absolute;
}
header .header-nav-pc-over .header-nav-pc-over-box .coname01 {
 width: 600px;
}
header .header-nav-pc-over .header-nav-pc-over-box .coname02 {
 top: 40px;
 width: 600px;
}
header .header-nav-pc-over .header-nav-pc-over-box ul .cospace01 {
 margin-bottom: -5px;
}
header .header-nav-pc-over .header-nav-pc-over-box ul .cospace02 {
 margin-top: 25px;
 width: 100%;
}
header .header-nav-pc-over .header-nav-pc-over-box .slist {
 margin-top: 15px;
}
header .header-nav-pc-over .header-nav-pc-over-box .slist li {
 text-indent: -12px;
 margin: 6px 0 0 12px;
}
 
/* --------------------------------------------------
		.about
-------------------------------------------------- */
header .about.header-nav-pc-over .about-nav .about-nav-inner {
 margin-top: 12px;
}
header .about.header-nav-pc-over .about-nav .about-nav-inner:first-of-type {
 margin-top: 0;
}
header .about.header-nav-pc-over .about-nav .about-nav-inner .header-nav-pc-over-box ul li {
 margin-top: 12px;
}
header .about.header-nav-pc-over .about-nav .about-nav-inner .header-nav-pc-over-box ul li:first-of-type {
 margin-top: 0;
}

/* --------------------------------------------------
		スクロール後のヘッダー
-------------------------------------------------- */
header.fixed {
	height: 86px;
}
header.fixed .header-wrapper {
	display: none;
}
header.fixed .header-nav-pc {
	margin-top: 9px;
}
header.fixed .header-nav-pc nav ul li a {
	height: 57px;
}
header.fixed .header-btn p a {
	height: 43px;
}
header.fixed .header-nav-pc-over {
	top: 86px;
}
/* --------------------------------------------------
		.content
-------------------------------------------------- */
.content {
 padding-bottom: 120px;
}
/* --------------------------------------------------
		.vi 下層ページ
-------------------------------------------------- */
.vi.subpage {
	min-width: 1086px;
}
.vi.subpage .vi-inner {
	border-top: 116px solid transparent;
	position: relative;
	box-sizing: border-box;
}
.vi.subpage .vi-box {
	height: 180px; /* vi-innerの高さを確保 */
}
.vi.subpage .vi-wrapper {
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
}
.vi.subpage .vi-wrapper h2 {
	text-align: center;
}
.vi.subpage .vi-wrapper h2 span:first-child {
	font-size: 35px;
	font-weight: 300;
	color: #ffffff;
	border-bottom: 1px solid #ffffff;
	text-shadow: 0 0 10px #063256;
 padding-bottom: 4px;
}
.vi.subpage .vi-wrapper h2 span:last-child {
	font-size: 13px;
	color: #ffffff;
	margin-top: 4px;
	display: block;
	text-shadow: 0 0 8px #063256;
}
/* --------------------------------------------------
		.topicpath
-------------------------------------------------- */
.topicpath {
	font-family: -apple-system, blinkMacSystemFont, 'Helvetica Neue', 'Segoe UI', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	min-width: 1086px;
	padding: 16px 0;
	background: #f9f9f9;
	display: flex;
	justify-content: center;
}
.topicpath .topicpath-inner {
	width: 1086px;
}
.topicpath .topicpath-inner ul {
	display: flex;
}
.topicpath .topicpath-inner ul li {
	font-size: 12px;
	color: #333333;
}
.topicpath .topicpath-inner ul li span {
	padding: 0 10px;
}
.topicpath .topicpath-inner ul li a:link, .topicpath .topicpath-inner ul li a:visited {
	text-decoration: none;
	color: #333333;
}
.topicpath .topicpath-inner ul li a:hover {
	text-decoration: underline;
}
/* --------------------------------------------------
		.main
-------------------------------------------------- */
.main {
	min-width: 1086px;
}
/* --------------------------------------------------
		.pagetop
-------------------------------------------------- */
.pagetop {
	position: relative;
	z-index: 1;
	display: none;
}
.pagetop.sticky {
	bottom: -52px;
}
.pagetop .pagetop-inner a:link, .pagetop .pagetop-inner a:visited, .pagetop .pagetop-inner a:hover {
	text-decoration: none;
	color: #ffffff;
}
.pagetop .pagetop-inner a span {
	font-size: 20px;
	font-weight: bold;
	text-decoration: none;
	color: #ffffff;
	width: 44px;
	height: 44px;
	background: url(/common/img/pagetop-bg01.png) no-repeat;
	display: flex;
	align-items: center;
	justify-content: center;
}
/* --------------------------------------------------
		footer
-------------------------------------------------- */
footer {
	min-width: 1086px;
	padding: 36px 0 58px;
	background: #057db7;
	display:flex;
	justify-content: center;
}
footer .footer-inner {
	width: 1086px;
}
footer .footer-box {
	min-height: 33px;
	display: flex;
	align-items: center;
}
footer .footer-box p a {
	display: inline-block;
}
footer .footer-box p a object {
	pointer-events: none;
}
footer .footer-box .footer-box-txt01 {
	font-size: 11px;
	color: #ffffff;
 width: calc(1086px - 107px);
 margin-left: 20px;
}
/* --------------------------------------------------
		.footer-url-list
-------------------------------------------------- */
footer .footer-url-list {
	background: url(/common/img/footer-bg-line01.png) repeat-y;
	margin-top: 40px;
	display: flex;
}
footer .footer-url-list ul {
	margin: 0 5px 0 12px;
}
footer .footer-url-list .about {
	width: 112px;
	margin-left: 0;
}
footer .footer-url-list .cslt {
	width: 202px;
}
footer .footer-url-list .cslt li {
 text-indent: -11px;
 margin: 8px 8px 0 11px;
}
footer .footer-url-list .cslt li::before {
 content: "・";
}
footer .footer-url-list .cslt .tit {
 margin-left: 11px;
}
footer .footer-url-list .cslt .nomark {
 padding-bottom: 5px;
}
footer .footer-url-list .cslt .tit::before, 
footer .footer-url-list .cslt .nomark::before {
 content: "";
}
footer .footer-url-list .ourpeople {
	width: 151px;
}
footer .footer-url-list .ourpeople .namept {
 padding-top: 20px;
}
footer .footer-url-list .seminar-news {
	width: 181px;
}
footer .footer-url-list .pub {
	width: 100px;
}
footer .footer-url-list .recruit {
	width: 130px;
}
footer .footer-url-list .other {
	width: 114px;
	margin-right: 0;
}
footer .footer-url-list ul li {
	font-size: 11px;
	margin-top: 8px;
	color : #fff;
}
footer .footer-url-list ul li:first-child {
	font-size: 14px;
	margin: 0 0 12px 0;
}
footer .footer-url-list .contact li:first-child {
	font-size: 11px;
	margin: 0;
}
footer .footer-url-list ul li a:link, footer .footer-url-list ul li a:visited {
	text-decoration: none;
	color: #ffffff;
}
footer .footer-url-list ul li a:hover {
	text-decoration: underline;
	color: #ffffff;
}
/* --------------------------------------------------
		.copyright
-------------------------------------------------- */
footer .copyright {
	font-size: 11px;
	text-align: center;
	color: #ffffff;
	margin-top: 38px;
}
/* --------------------------------------------------
		a
-------------------------------------------------- */
a.scroll_point {
 margin-top: -86px;
 padding-top: 86px;
 display: block;
} 

}

/* ==================================================
		
		ページ全般の共通CSS SP

================================================== */

@media screen and (max-width:780px) {
/* --------------------------------------------------
		.pc PCの要素を非表示
-------------------------------------------------- */
.pc {
	display: none !important;
}
/* --------------------------------------------------
		文字サイズの制御
-------------------------------------------------- */
body {
	-webkit-text-size-adjust: 100%;
}
/* --------------------------------------------------
		img
-------------------------------------------------- */
img {
	max-width: 100%;
	height: auto;
}
/* --------------------------------------------------
		header
-------------------------------------------------- */
header {
	width: 100%;
	height: 50px;
	background: #ffffff;
	position: fixed;
	z-index: 9999;
}
/* --------------------------------------------------
		.comname
-------------------------------------------------- */
header .comname {
	font-size: 10px;
	color: #056a9c;
	font-weight: bold;
	position: absolute;
	top: 18px;
	left: 118px;
}
header .comname a:link, 
header .comname a:visited {
 text-decoration: none;
	color: #056a9c;
}
/* --------------------------------------------------
		.header-nav-sp
-------------------------------------------------- */
header .header-nav-sp .header-nav-sp-inner {
	display: flex;
	justify-content: space-between;
}
header .header-nav-sp .header-nav-sp-inner h1 {
	padding: 12px 0 0 12px;
}
header .header-nav-sp .header-nav-sp-inner h1 a {
	display: inline-block;
}
header .header-nav-sp .header-nav-sp-inner h1 a object {
	pointer-events: none;
}
header .header-nav-sp .header-nav-sp-inner p {
	cursor: pointer;
}
header .header-nav-sp .header-nav-sp-inner p {
	width: 50px;
	height: 50px;
	background: url(/common/img/header-btn-menu01.svg) no-repeat left top;
	background: url(/common/img/header-btn-menu01.png) no-repeat left top;
}
header .header-nav-sp .header-nav-sp-inner .active {
	background-position: left -50px;
}
header .header-nav-sp .menu-content {
	height: 100vh;
	padding: 0 12px;
	background: rgba(5, 106, 156, 0.8);
	overflow: auto;
	display: none;
	-webkit-overflow-scrolling: touch;
}
/* --------------------------------------------------
		.home
-------------------------------------------------- */
header .header-nav-sp .menu-content .home a {
	font-size: 12px;
	text-align: center;
	text-decoration: none;
	color: #ffffff;
	padding: 16px;
	display: block;
}
header .header-nav-sp .menu-content .home a:visited, header .header-nav-sp .menu-content .home a:hover {
	text-decoration: none;
	color: #ffffff;
}
/* --------------------------------------------------
		nav
-------------------------------------------------- */
header .header-nav-sp .menu-content nav dl dt {
	font-size: 12px;
	text-align: center;
	color: #ffffff;
	padding: 16px;
	border-top: 1px solid #ffffff;
	position: relative;
}
header .header-nav-sp .menu-content nav dl dt a:link,
header .header-nav-sp .menu-content nav dl dt a:visited {
	color: #ffffff;
	text-decoration:none;
}
header .header-nav-sp .menu-content nav dl dt a:hover {
	color: #ffffff;
	text-decoration:none;
}
header .header-nav-sp .menu-content nav dl dt span{
	cursor: pointer;
}
header .header-nav-sp .menu-content nav dl dt span:before {
	content: "\f067";
	font-family: 'Font Awesome\ 5 Free';
	position:absolute;
	right: 20px;
	font-weight:bold; /* 表示のために必須 */
}
header .header-nav-sp .menu-content nav dl .open:before {
	content: '\f068';
}
header .header-nav-sp .menu-content nav dl dd {
	padding: 16px 10px;
	border-top: 1px solid #ffffff;
	display: none;
}
header .header-nav-sp .menu-content nav dl dd div {
	display: flex;
}
header .header-nav-sp .menu-content nav dl dd div ul {
	width: 100%;
	display: table;
}
header .header-nav-sp .menu-content nav dl dd div ul > li {
	width: 50%;
	float: left;
	display: table-cell;
}
 header .header-nav-sp .menu-content nav dl dd div ul > li:nth-child(2n+1) {
 clear: both;
}
 header .header-nav-sp .menu-content nav dl dd div ul > li:nth-child(odd) {
 padding: 0 1% 0 10px;
 padding-right: 1%;
 box-sizing: border-box;
 color : #fff;
 text-indent: -12px;
}
 header .header-nav-sp .menu-content nav dl dd div ul > li:nth-child(even) {
 box-sizing: border-box;
 text-indent: -12px;
 padding-left: 15px;
 color: #ffffff;
}
header .header-nav-sp .menu-content nav dl dd div ul li {
	font-size: 12px;
	margin-top: 5px;
}
header .header-nav-sp .menu-content nav dl dd div ul li:first-child, header .header-nav-sp .menu-content nav dl dd div ul li:nth-child(2) {
 margin-top: 0;
}
header .header-nav-sp .menu-content nav dl dd div ul li a:link, 
header .header-nav-sp .menu-content nav dl dd div ul li a:visited,
header .header-nav-sp .menu-content nav dl dd div ul li a:hover,
header .header-nav-sp .menu-content nav dl dd > p a:link, 
header .header-nav-sp .menu-content nav dl dd > p a:visited,
header .header-nav-sp .menu-content nav dl dd > p a:hover {
	text-decoration: none;
	color: #ffffff;
}
header .header-nav-sp .menu-content nav dl dd > p {
 display: block;
} 
header .header-nav-sp .menu-content nav dl dd .coname01 {
 padding-bottom: 7px;
}
header .header-nav-sp .menu-content nav dl dd .coname02 {
 padding: 12px 0 7px;
} 
header .header-nav-sp .menu-content nav dl dd .coname03 {
 padding: 5px 0 0 10px !important;
 margin-bottom: -5px;
 width: 100%;
} 
 
/* --------------------------------------------------
		.header-btn
-------------------------------------------------- */
header .header-nav-sp .menu-content .header-btn {
	padding-top: 16px;
	border-top: 1px solid #ffffff;
	display: flex;
}
header .header-nav-sp .menu-content .header-btn p {
	width: 50%;
	border: 1px solid #ffffff;
	box-sizing: border-box;
}
header .header-nav-sp .menu-content .header-btn p:first-child {
	border-right: none;
}
header .header-nav-sp .menu-content .header-btn p a {
	font-size: 12px;
	text-align: center;
	text-decoration: none;
	color: #ffffff;
	padding: 10px 0;
	display: block;
}
header .header-nav-sp .menu-content .header-btn p a:visited, header .header-nav-sp .menu-content .header-btn p a:hover {
	text-decoration: none;
	color: #ffffff;
}
header .header-nav-sp .menu-content .header-btn .contact a span:before {
	font-family: 'Font Awesome\ 5 Free';
	padding-right: 5px;
	content: "\f0e0";
}
header .header-nav-sp .menu-content .header-btn .recruit a span:before {
	content: "\f500";
	font-family: 'Font Awesome\ 5 Free';
	padding-right: 5px;
	font-weight: bold; /* 表示のために必須 */
}
/* --------------------------------------------------
		.close
-------------------------------------------------- */
header .header-nav-sp .menu-content .close {
	text-align: center;
	padding-bottom: 200px;
	margin-top: 30px;
}
header .header-nav-sp .menu-content p {
	font-size: 12px;
	color: #ffffff;
	display: inline;
	cursor: pointer;
}
header .header-nav-sp .menu-content .close p span:before {
	content: "\f00d";
	font-family: 'Font Awesome\ 5 Free';
	padding-right: 5px;
	font-size: 12px;
	font-weight: bold; /* 表示のために必須 */
}
/* --------------------------------------------------
		.content
-------------------------------------------------- */
.content {
 padding-bottom: 60px;
}
/* --------------------------------------------------
		.vi 下層ページ
-------------------------------------------------- */
.vi.subpage .vi-inner {
	border-top: 50px solid transparent;
	position: relative;
	box-sizing: border-box;
}
.vi.subpage .vi-inner:before {
	padding-top: 23%;
	display: block;
	content: "";
}
.vi.subpage .vi-box {
	width: 100%;
	position: absolute;
	top: 0;
}
.vi.subpage .vi-wrapper {
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
}
.vi.subpage .vi-wrapper h2 {
	text-align: center;
}
.vi.subpage .vi-wrapper h2 span:first-child {
	font-size: 20px;
	font-weight: 300;
	color: #ffffff;
	padding-bottom: 4px;
	border-bottom: 1px solid #ffffff;
	text-shadow: 0 0 10px #063256;
}
.vi.subpage .vi-wrapper h2 span:last-child {
	font-size: 12px;
	color: #ffffff;
	margin-top: 4px;
	display: block;
	text-shadow: 0 0 8px #063256;
}
/* --------------------------------------------------
		.topicpath
-------------------------------------------------- */
.topicpath {
	font-family: -apple-system, blinkMacSystemFont, 'Helvetica Neue', 'Segoe UI', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	padding: 12px;
	background: #f9f9f9;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}
.topicpath .topicpath-inner ul {
	display: flex;
}
.topicpath .topicpath-inner ul li {
	font-size: 12px;
	white-space: nowrap;
	color: #333333;
}
.topicpath .topicpath-inner ul li span {
	padding: 0 10px;
}
.topicpath .topicpath-inner ul li a:link, .topicpath .topicpath-inner ul li a:visited {
	text-decoration: none;
	color: #333333;
}
.topicpath .topicpath-inner ul li a:hover {
	text-decoration: underline;
}
/* --------------------------------------------------
		.pagetop
-------------------------------------------------- */
.pagetop {
	position: relative;
	z-index: 1;
	display: none;
}
.pagetop.sticky {
	bottom: -47px;
}
.pagetop .pagetop-inner a:link, .pagetop .pagetop-inner a:visited, .pagetop .pagetop-inner a:hover {
	text-decoration: none;
	color: #ffffff;
}
.pagetop .pagetop-inner a span {
	font-size: 15px;
	font-weight:bold;/* 表示のために必須 */
	color:#ffffff;
	width: 34px;
	height: 34px;
	background: url(/common/img/pagetop-bg01.png) no-repeat;
	background-size: 34px;
	display :flex;
	justify-content: center;
	align-items: center;
	text-decoration:none;
}
/* --------------------------------------------------
		footer
-------------------------------------------------- */
footer {
	padding: 20px 0 30px;
	background: #057db7;
}
/* --------------------------------------------------
		.copyright
-------------------------------------------------- */
footer .copyright {
	font-size: 11px;
	text-align: center;
	color: #ffffff;
}
/* --------------------------------------------------
		a
-------------------------------------------------- */
a.scroll_point {
 display: block;
 margin-top: -50px;
 padding-top: 50px;
} 
}
