<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";




/* CSS STYLE */

body {
	min-width: 320px;
	height: 100%;
	word-wrap: break-word;
	overflow-wrap : break-word;
}
body#outimg {
	padding-top: 74px;
}
body#onimg {}

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

.spnone {
	display: none;
}

.inner {
	padding-left: 20px;
	padding-right: 20px;
}

#modal-item {
	width: 96%;
	height: auto;
}

.alignleft,
.alignright {
	display: block;
	margin: 15px auto;;
}





/* header */

header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	min-height: 65px;
	height: auto;
	line-height: 1;
	color: #fff;
	z-index: 1000;
}

header .header-inner {
	position: relative;
}

header .logo {
	position: absolute;
	top: 12px;
	left: 20px;
	width: 110px;
	height: 37px;
	overflow: hidden;
	z-index: 2;
}
header .logo img {
	width: 110px;
	height: 37px;
}

#spmenu {
	display: block;
	position: absolute;
	top: 14px;
	right: 20px;
	width: 25px;
	height: 40px;
	padding: 32px 0 0 0;
	cursor: pointer;
	z-index: 2;
}
#spmenu span {
	position: absolute;
	top: 15px;
	left: 0;
	display: block;
	background: #fff;
	width: 25px;
	height: 2px;
	transition-duration: 0.2s ;
	-ms-transition-duration: 0.2s ;
	-webkit-transition-duration: 0.2s ;
	transition-timing-function: ease-out ;
	-ms-transition-timing-function: ease-out ;
	-webkit-transition-timing-function: ease-out ;
}
#spmenu p {
	position: relative;
	width: 25px;
	font-size: 8px;
	text-align: center;
	white-space: nowrap;
	color: #fff;
}
#spmenu:before {
	content:"";
	position: absolute;
	display: block;
	top: 5px;
	left: 0;
	background: #fff;
	width: 25px;
	height: 2px;
	transition-duration: 0.2s ;
	-ms-transition-duration: 0.2s ;
	-webkit-transition-duration: 0.2s ;
	transition-timing-function: ease-out ;
	-ms-transition-timing-function: ease-out ;
	-webkit-transition-timing-function: ease-out ;
}
#spmenu:after {
	content:"";
	position: absolute;
	display: block;
	bottom: 13px;
	left: 0;
	background: #fff;
	width: 25px;
	height: 2px;
	transition-duration: 0.2s ;
	-ms-transition-duration: 0.2s ;
	-webkit-transition-duration: 0.2s ;
	transition-timing-function: ease-out ;
	-ms-transition-timing-function: ease-out ;
	-webkit-transition-timing-function: ease-out ;
}
#spmenu.active span {
	display: none;
}
#spmenu.active p {
	color: #666;
}
#spmenu.active:before {
	top: 14px;
	left: -4px;
	background: #666 !important;
	width: 32px;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
}
#spmenu.active:after {
	top: 14px;
	left: -4px;
	background: #666 !important;
	width: 32px;
	transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}

#splang {
	display: block;
	position: absolute;
	top: 14px;
	right: 60px;
	width: 26px;
	height: 40px;
	z-index: 2;
}
#splang a {
	position: relative;
	display: block;
	background: url(../img/icon-lang2.svg) center 3px no-repeat;
	background-size: 26px;
	width: 30px;
	height: 40px;
	padding: 32px 0 0 0;
	font-size: 8px;
	line-height: 1;
	color: #fff;
	text-align: center;
}
#splang.active a {
	background: url(../img/icon-lang.svg) center 3px no-repeat;
	background-size: 26px;
	color: #666;
}
/*
#spmenu {
	display: block;
	position: absolute;
	top: 14px;
	right: 20px;
	width: 25px;
	height: 38px;
	padding: 14px 0 0 0;
	cursor: pointer;
	z-index: 2;
}
#spmenu span {
	display: block;
	background: #fff;
	width: 25px;
	height: 2px;
	transition-duration: 0.2s ;
	-ms-transition-duration: 0.2s ;
	-webkit-transition-duration: 0.2s ;
	transition-timing-function: ease-out ;
	-ms-transition-timing-function: ease-out ;
	-webkit-transition-timing-function: ease-out ;
}
#spmenu p {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 25px;
	font-size: 8px;
	text-align: center;
	white-space: nowrap;
	color: #fff;
}
#spmenu:before {
	content:"";
	position: absolute;
	display: block;
	top: 5px;
	left: 0;
	background: #fff;
	width: 25px;
	height: 2px;
	transition-duration: 0.2s ;
	-ms-transition-duration: 0.2s ;
	-webkit-transition-duration: 0.2s ;
	transition-timing-function: ease-out ;
	-ms-transition-timing-function: ease-out ;
	-webkit-transition-timing-function: ease-out ;
}
#spmenu:after {
	content:"";
	position: absolute;
	display: block;
	bottom: 13px;
	left: 0;
	background: #fff;
	width: 25px;
	height: 2px;
	transition-duration: 0.2s ;
	-ms-transition-duration: 0.2s ;
	-webkit-transition-duration: 0.2s ;
	transition-timing-function: ease-out ;
	-ms-transition-timing-function: ease-out ;
	-webkit-transition-timing-function: ease-out ;
}
#spmenu.active span {
	display: none;
}
#spmenu.active p {
	color: #666;
}
#spmenu.active:before {
	top: 14px;
	left: -4px;
	background: #666 !important;
	width: 32px;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
}
#spmenu.active:after {
	top: 14px;
	left: -4px;
	background: #666 !important;
	width: 32px;
	transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}

#splang {
	display: none;
	position: absolute;
	top: 15px;
	right: 60px;
	width: 30px;
	height: 30px;
	z-index: 2;
}
#splang.active {
	display: block;
}
#splang a {
	position: relative;
	display: block;
	border: 1px solid #ccc;
	width: 30px;
	height: 30px;
	text-align: center;
	color: #2e3b4e;
	font-size: 12px;
	line-height: 30px;
	border-radius: 15px;
	-moz-border-radius: 15px;
	-webkit-border-radius: 15px;
}
*/

header.spopen {
	background-color: transparent;
	height: 100% !important;
}
header.spopen .header-inner {
	background: #fff;
	height: 100% !important;
	overflow-x:hidden;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
}
header.spopen .logo {
	background: url(../img/logo.svg);
	background-size: 110px 37px;
	width: 110px;
	height: 37px;
}
header.spopen .logo img {
	visibility: hidden;
}
header nav {
	display: none;
	position: relative;
	width: 100%;
	padding: 86px 20px 20px 20px;
	line-height: 1.4;
	z-index: 1;
}
header nav .inner {
	padding: 0;
}
header nav img {
	display: none;
}
header nav #main-menu {
	border-top: 1px solid #ccc;
}
header nav #main-menu &gt; li {
	letter-spacing: 0.03em;
	border-bottom: 1px solid #ccc;
}
header nav #main-menu &gt; li &gt; a,
header nav #main-menu &gt; li &gt; span {
	display: block;
	position: relative;
	padding: 18px 0;
	font-size: 15px;
	color: #5f6a7d;
	text-decoration: none;
	cursor: pointer;
}
header nav #main-menu &gt; li &gt; span:before {
	content:"";
	position: absolute;
	top: 50%;
	right: 11px;
	height: 14px;
	border-left: 2px solid #3193cc;
	margin: -7px 0 0 0;
	z-index: 1;
}
header nav #main-menu &gt; li &gt; a:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 7px;
	height: 7px;
	border-top: 2px solid #3193cc;
	border-right: 2px solid #3193cc;
	margin: -5px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 1;
}
header nav #main-menu &gt; li.active &gt; span:before {
	display: none;
}
header nav #main-menu &gt; li &gt; span:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 5px;
	width: 14px;
	border-top: 2px solid #3193cc;
	margin: -1px 0 0 0;
	z-index: 1;
}
header nav #main-menu &gt; li &gt; span:before {
	content:"";
	position: absolute;
	top: 50%;
	right: 11px;
	height: 14px;
	border-left: 2px solid #3193cc;
	margin: -7px 0 0 0;
	z-index: 1;
}
header .menu-area {
	display: none;
}
header .menu-area a {
	display: block;
	color: #5f6a7d;
}
header .menu-area dl {
	margin: 0 0 20px 0;
	line-height: 1.2;
}
header .menu-area dt {
	margin: 0 0 15px 0;
}
header .menu-area dt a {
	display: block;
	background: #f5f5f5;
	padding: 12px;
	font-size: 14px;
	font-weight: bold;
	color: #2e3b4e;
}
header .menu-area dd {
	margin: 0 0 12px 0;
	padding: 0 0 0 12px;
	font-size: 13px;
}
header .menu-area ul {
	margin: 0 0 15px 0;
	padding: 0 0 0 10px;
}
header .menu-area li {
	margin: 0 0 10px 0;
	font-size: 14px;
}
header .menu-area .menu-left dl {
	margin: 0 0 15px 0;
}
header .menu-area .menu-left dt {
	display: none;
}
header .menu-area .menu-left dd {
	margin: 0;
	padding: 0;
	font-size: 14px;
	font-weight: bold;
}
header .menu-area .menu-left dd a {
	color: #2e3b4e;
}

header nav .sub-menu {
	position: relative;
	margin-top: 30px;
}
header nav .sub-menu .search {
	border: 1px solid #d5d5d5;
	width: 100%;
}
header nav .sub-menu .search input {
	display: inline-block;
	border: none;
	background: #fff;
}
header nav .sub-menu .search input[type="text"] {
	width: 85%;
	height: 50px;
	padding: 10px 0 10px 10px;
}
header nav .sub-menu .search input[type="submit"] {
	background: #fff url(../img/search-icon2.svg) center center no-repeat;
	background-size: 20px;
	width: 15%;
	height: 50px;
	padding: 50px 0 0 0;
	overflow: hidden;
}
header nav .sub-menu #search-icon {
	display: none;
}
header nav .sub-menu .lang {
	width: 100%;
	margin: 20px 0;
	text-align: center;
	line-height: 1;
}
header nav .sub-menu .lang li {
	display: inline-block;
	width: 50px;
	height: 50px;
	margin: 0 3px;
}
header nav .sub-menu .lang a {
	display: block;
	border: 1px solid #d5d5d5;
	width: 50px;
	height: 50px;
	font-size: 15px;
	line-height: 48px;
	text-decoration: none;
	text-align: center;
	color: #2e3b4e;
	border-radius: 25px;
	-moz-border-radius: 25px;
	-webkit-border-radius: 25px;
}
header nav .sub-menu .lang li.now a {
	text-decoration: underline;
}
header nav .sub-menu .contact {
	position: relative;
	background: #f5f5f5;
	width: 120%;
	margin: 0 -10%;
	padding: 15px 0;
	text-align: center;
}
header nav .sub-menu .contact a {
	position: relative;
	display: inline-block;
	background: #00af9d;
	width: 260px;
	height: 55px;
	padding: 0 10px 0 0;
	line-height: 55px;
	text-align: center;
	font-size: 15px;
	color: #fff;
	text-decoration: none;
}
header nav .sub-menu .contact a:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 15px;
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	margin: -5px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 1;
}

header.head-active {
	-webkit-animation: headanim 0.5s ease-out 1;
	-ms-animation: headanim 0.5s ease-out 1;
	animation: headanim 0.5s ease-out 1;
	background-color: #004e65;
}
@-webkit-keyframes headanim { 
	from { background-color: transparent; } 
	to { background-color: #004e65; }
}
@-ms-keyframes headanim { 
	from { background-color: transparent; } 
	to { background-color: #004e65; }
}
@keyframes headanim { 
	from { background-color: transparent; } 
	to { background-color: #004e65; }
}

#menu-background {
	display: none;
}




/* footer */

.gotop {
	width: 100%;
	height: 55px;
	border-top: 1px solid #f4f4f4;
}
.gotop a {
	position: relative;
	display: block;
	background: #fff;
	width: 100%;
	height: 55px;
	padding: 55px 0 0 0;
	overflow: hidden;
}
.gotop a:after {
	content:"";
	position: absolute;
	top: 24px;
	left: 50%;
	width: 12px;
	height: 12px;
	border-top: 2px solid #3193cc;
	border-right: 2px solid #3193cc;
	margin: 0 0 0 -8px;
	transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	z-index: 1;
}

footer {
	background: #f4f4f4;
	width: 100%;
	padding: 60px 0
}

footer .ft-menu {
	position: relative;
}
footer .ft-menu .logo {
	position: relative;
	float: left;
	width: 110px;
	height: 37px;
	margin: -3px 0 0 0;
	z-index: 2;
}
footer .ft-menu .logo img {
	width: 110px;
	height: 37px;
}
footer .ft-menu ul {
	float: right;
	width: 130px;
}
footer .ft-menu ul li {
	display: none;
}
footer .ft-menu ul li.contact {
	display: block;
	width: 130px;
	text-align: right;
}
footer .ft-menu ul li.contact a {
	position: relative;
	display: block;
	background: #00af9d;
	width: 130px;
	height: 37px;
	margin: 0;
	padding: 0 5px 0 0;
	font-size: 13px;
	line-height: 37px;
	text-align: center;
	color: #fff;
}
footer .ft-menu ul li.contact a:before {
	content:"";
	position: absolute;
	top: 50%;
	right: 12px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	margin: -3px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 1;
}

footer nav {
	display: none;
	position: relative;
	width: 100%;
	padding: 25px 0 0 0;
	line-height: 1.4;
	z-index: 1;
}
footer nav .inner {
	padding: 0;
}
footer nav img {
	display: none;
}
footer nav #footer-menu {
	border-top: 1px solid #ccc;
}
footer nav #footer-menu &gt; li {
	letter-spacing: 0.03em;
	border-bottom: 1px solid #ccc;
}
footer nav #footer-menu &gt; li &gt; a,
footer nav #footer-menu &gt; li &gt; span {
	display: block;
	position: relative;
	padding: 18px 0;
	font-size: 15px;
	color: #5f6a7d;
	text-decoration: none;
	cursor: pointer;
}
footer nav #footer-menu &gt; li &gt; span:before {
	content:"";
	position: absolute;
	top: 50%;
	right: 11px;
	height: 14px;
	border-left: 2px solid #3193cc;
	margin: -7px 0 0 0;
	z-index: 1;
}
footer nav #footer-menu &gt; li &gt; a:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 7px;
	height: 7px;
	border-top: 2px solid #3193cc;
	border-right: 2px solid #3193cc;
	margin: -5px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 1;
}
footer nav #footer-menu &gt; li.active &gt; span:before {
	display: none;
}
footer nav #footer-menu &gt; li &gt; span:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 5px;
	width: 14px;
	border-top: 2px solid #3193cc;
	margin: -1px 0 0 0;
	z-index: 1;
}
footer nav #footer-menu &gt; li &gt; span:before {
	content:"";
	position: absolute;
	top: 50%;
	right: 11px;
	height: 14px;
	border-left: 2px solid #3193cc;
	margin: -7px 0 0 0;
	z-index: 1;
}
footer .menu-area {
	display: none;
}
footer .menu-area a {
	display: block;
	color: #5f6a7d;
}
footer .menu-area p {
	margin: 0 0 15px 0;
	font-size: 14px;
	font-weight: bold;
}
footer .menu-area p a {
	color: #2e3b4e;
}
footer .menu-area dl {
	margin: 0 0 20px 0;
	line-height: 1.2;
}
footer .menu-area dt {
	margin: 0 0 15px 0;
}
footer .menu-area dt a {
	display: block;
	background: #fff;
	padding: 12px;
	font-size: 14px;
	font-weight: bold;
	color: #2e3b4e;
}
footer .menu-area dd {
	margin: 0 0 12px 0;
	padding: 0 0 0 12px;
	font-size: 13px;
}
footer .menu-area ul {
	margin: 0 0 15px 0;
	padding: 0 0 0 10px;
}
footer .menu-area li {
	margin: 0 0 10px 0;
	font-size: 14px;
}

footer .ft-btm {
	position: relative;
	width: 100%;
	margin: 35px 0 0 0;
	line-height: 1;
}
footer .ft-btm a {
	color: #5f6a7d;
}
footer .ft-btm ul {
	margin: 0 0 25px 0;
	font-size: 12px;
}
footer .ft-btm ul li {
	margin: 0 0 10px 0;
}
footer .ft-btm p {
	font-size: 11px;
	text-align: center;
	color: #808a99;
}
footer .ft-btm .blank a {
	position: relative;
	padding-right: 15px;
}
footer .ft-btm .blank a:after {
	position: absolute;
	top: 50%;
	right: 0;
	content: "";
	display: block;
	background: url(../img/icon-blank3.svg) center center no-repeat;
	background-size: 10px;
	width: 10px;
	height: 10px;
	margin: -5px 0 0 0;
	z-index: 1;
}




/* main */

article {
	position: relative;
	width: 100%;
	z-index: 1;
}
article.main {
	padding: 0 0 100px 0;
}

.bg1 {
	background: #fff;
	width: 100%;
	padding: 50px 0;
}
.bg2 {
	position: relative;
	background: #f5f5f5;
	width: 100%;
	padding: 50px 0;
}
.bg1:last-child,
.bg2:last-child {
	padding: 60px 0 100px 0;
}
.bg1.bt,
.bg2.bt {
	border-top: 1px solid #e4e4e4;
}
.bg1.bb,
.bg2.bb {
	border-bottom: 1px solid #e4e4e4;
}

.other {
	color: #0a88c5;
}

#page-title {
	position: relative;
	background: #203b51;
	background: -moz-linear-gradient(top, #203b51 0%, #54c4b7 100%);
	background: -webkit-linear-gradient(top, #203b51 0%,#54c4b7 100%);
	background: linear-gradient(to bottom, #203b51 0%,#54c4b7 100%);
	width: 100%;
	height: 260px;
	padding: 65px 0 0 0;
	color: #fff;
	overflow: hidden;
}
article.products section:nth-child(odd) {
    background-color: #ffffff;
}

article#page-title.products-title {
    padding: 0 !important;
}
.products-inner-menu {
  margin-top: 65px;
  position: absolute;
}
#page-title.products-title {
	height: 480px;
}
.slide-components {
  /* position: absolute; */
  margin-top: 200px;
}
li.slide-li {
  height: 480px !important;
}
#page-title .main-img,
.unslide-components .sp-img {
	position: absolute;
	top: 50%;
	left: 50%;
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	height: 100%;
	margin: auto;
	-webkit-transform: translate3d(-50%, -50%, 0);
	-ms-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
	z-index: 1;
}
.slide-components .sp-img {
  position: absolute;
  top: 0%;
  /* left: 50%; */
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100vw;
  height: 480px;
  margin: auto;
  /* -webkit-transform: translate3d(-50%, -50%, 0); */
  /* -ms-transform: translate3d(-50%, -50%, 0); */
  /* transform: translate3d(-41%, -50%, 0); */
  z-index: 1;
  /* transform: scale(1.5); */
}
#page-title .pc-img {
	display: none;
}
#page-title h1 {
	position: relative;
	margin: 50px 0 0 0;
	padding: 0 5%;
	font-size: 30px;
	font-weight: normal;
	line-height: 1.1;
	text-align: center;
	color: #fff;
	z-index: 2;
}
#page-title.sub-title h1 {
	margin: 30px 0 0 0;
}
#page-title.products-title h1 {
	margin: 40px 0 0 0;
	font-size: 16px;
	line-height: 1.4;
	color: #333;
	text-shadow: 0 0 30px rgba(255,255,255,0.8);
	text-align: center;
}
#page-title.products-title h1.wc {
	color: #fff;
	text-shadow: 0 0 30px rgba(0,0,0,0.5);
}
#page-title.products-title h1 img {
/* 	display: block; */
	max-width: 100%;
	margin: 10px 0;
	text-shadow: none;
}
#page-title.products-title h1 br {
	display: none;
}
.slide-components h1 {
  text-align: left !important;
}
.slide-components img {
  margin: 10px 0 !important;
}
.slick-dots{
  top: 450px;
}
.slick-dots li{
  background: white;
  border-radius: 20px;
  width: 14px !important;
  height: 14px !important;
  border: 1px solid white;
}
li.slick-active{
  background: #004e65;
}
/*#page-title.products-title h1 br {
	display: none;
}*/
.unslide-components {
  margin-top: 135px;
}
.bread {
	position: relative;
	width: 100%;
	font-size: 0;
	line-height:1.2;
	color:#5f6a7d;
	z-index: 2;
}
.bread a {
	color:#5f6a7d;
}
.bread li {
	position: relative;
	display: inline;
	margin: 0 20px 0 0;
	padding: 2px 0;
	font-size: 11px;
	vertical-align: middle;
}
.bread li:after {
	content:"";
	position: absolute;
	top: 50%;
	right: -12px;
	width: 4px;
	height: 4px;
	border-top: 1px solid #eee;
	border-right: 1px solid #eee;
	margin: -3px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 1;
}
.bread li:last-child {
	max-width: 20em;
	margin: 0;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	display:inline-block;
}
.bread li:last-child:after {
	display: none;
}
.bread.top,
.bread.top a {
	color:#fff;
}
.bread.btm {
	min-height: 60px;
	margin-top: -60px;
	padding-top: 14px;
	padding-bottom: 10px;
}
.bread.btm li:after {
	border-top: 1px solid #999;
	border-right: 1px solid #999;
}
.bread-btm {
	position: relative;
	display: table;
	margin-top: -100px;
	height: 100px;
}
.bread-btm .bread.btm {
	position: relative;
	display: table-cell;
	margin-top: 0;
	padding: 0 0 10px 0;
	height: 100px;
	vertical-align: bottom;
}

.sub-field {
	position: relative;
	background: #fff;
	margin: -100px 20px 0 20px;
	padding: 40px 12px;
}

.products-toptxt {
	font-size: 16px;
	text-align: left;
}
.products-toptxt br {
	display: none;
}





/* index */

#index-mainimg {
	background: #000 url(../img/top-img-sp.jpg) center center no-repeat;
	background-size: cover;
	width: 100%;
	height:100%;
	height: 100vh;
	padding: 0 0 0 0;
}

#index-mainimg .mainread {
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
	z-index: 3;
}
#index-mainimg .mainread p {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 2000px;
	margin: -17.25vw 0 0 -1000px;
	font-size: 8.8vw;
	font-weight: bold;
	line-height: 11.5vw;
	text-align: center;
	letter-spacing: 0.2em;
	color: #fff;
	white-space: nowrap;
	filter: alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	-webkit-filter: blur(20px);
	-ms-filter: blur(20px);
	filter: blur(20px);
	-webkit-animation: mainread 4s ease-out 2s 1 forwards;
	-ms-animation: mainread 4s ease-out 2s 1 forwards;
	animation: mainread 4s ease-out 2s 1 forwards;
}
@-webkit-keyframes mainread {
	0% {
	letter-spacing: 1.5em;
	filter: alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	-webkit-filter: blur(20px);
	-ms-filter: blur(20px);
	filter: blur(20px);
	}
	100% {
	filter: alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
	-webkit-filter: blur(0px);
	-ms-filter: blur(0px);
	filter: blur(0px);
	}
}
@-ms-keyframes mainread {
	0% {
	letter-spacing: 1.5em;
	filter: alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	-webkit-filter: blur(20px);
	-ms-filter: blur(20px);
	filter: blur(20px);
	}
	100% {
	filter: alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
	-webkit-filter: blur(0px);
	-ms-filter: blur(0px);
	filter: blur(0px);
	}
}
@keyframes mainread {
	0% {
	letter-spacing: 1.5em;
	filter: alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	-webkit-filter: blur(20px);
	-ms-filter: blur(20px);
	filter: blur(20px);
	}
	100% {
	filter: alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
	-webkit-filter: blur(0px);
	-ms-filter: blur(0px);
	filter: blur(0px);
	}
}

#index-mainimg .mainbg,
#index-mainimg .maincolor {
	display: none;
}

#index-mainimg .txtmove {
	position: absolute;
	bottom: 20px;
	width: 100%;
	height: 130px;
	overflow: hidden;
	filter: alpha(opacity=30);
	-moz-opacity: 0.3;
	opacity: 0.3;
	z-index: 1;
}
#index-mainimg .txtmove p {
	position:relative;
	width: 3800px;
	height: 130px;
	-webkit-animation: leftSlide 60s linear infinite;
}
@-webkit-keyframes leftSlide {
	0%    { margin-left: 100%; }
	100%  { margin-left: -3800px; }
}

.index-emergency {
	margin-top: 50px;
}
.index-emergency dl {
	width: 100%;
	border: 1px solid #d5d5d5;
	padding: 14px 16px;
	font-size: 16px;
	line-height: 1.4;
}
.index-emergency dt {
	display: inline;
	padding: 0 10px 0 0;
	white-space: nowrap;
}
.index-emergency dd {
	display: inline;
}

.index-menu h2 {
	float: left;
	margin: 0 50px 0 0;
	padding: 5px 0;
	font-size: 30px;
	font-weight: normal;
	line-height: 30px;
}
.index-menu h3 {
	clear: both;
	display: block;
	width: 100%;
	margin: 0;
	padding: 25px 0 0 0;
	font-size: 23px;
	font-weight: normal;
	line-height: 23px;
}
.index-menu ul {
	display: none;
}
.index-menu p {
	float: right;
	width: 90px;
}
.index-menu p a {
	position: relative;
	display: block;
	background: #fff;
	border: 1px solid #d5d5d5;
	width: 90px;
	height: 40px;
	padding: 0 5px 0 0;
	font-size: 14px;
	text-align: center;
	line-height: 38px;
	color: #2e3b4e;
}
.index-menu p a:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #3193cc;
	border-right: 1px solid #3193cc;
	margin: -4px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 1;
}
.index-tab &gt; div,
.index-tab &gt; div &gt; .index-product {
	display: none;
}
.index-tab &gt; div:first-child,
.index-tab &gt; div:first-child &gt; .index-product {
	display: block !important;
}

.index-product-top {
	margin-top: 50px;
}
.index-product-tab {
	margin-top: 12px;
	overflow: hidden;
}

.index-product .p-list {
	position: relative;
	display: block;
	width: 280px !important;
	padding: 0 2px 10px 2px;
	color: #2e3b4e;
}
.index-product .p-img {
	position: relative;
	width: 100%;
	padding: 58% 0 0 0;
	overflow: hidden;
}
.index-product .p-img img {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	width: 100%;
	height: auto;
	-webkit-transform: translate3d(0, -50%, 0);
	-ms-transform: translate3d(0, -50%, 0);
	transform: translate3d(0, -50%, 0);
}
.index-product dl {
	padding: 10px 40px 0 12px;
}
.index-product dl dt {
	margin: 0 0 6px 0;
	font-size: 13px;
	line-height: 1.3;
}
.index-product dl dd {
	font-size: 20px;
	line-height: 1.3;
}
.index-product .slick-prev,
.index-product .slick-next {
	display: none !important;
}

.index-spmenu {
	position: relative;
	width: 100%;
	margin-top: 20px;
}
.index-spmenu &gt; dl &gt; dt {
	position: relative;
	background: #a7a7a7;
	border-bottom: 1px solid #fff;
	padding: 13px 30px 13px 14px;
	font-size: 16px;
	line-height: 1;
	color: #fff;
}
.index-spmenu &gt; dl &gt; dt:before {
	content:"";
	position: absolute;
	top: 50%;
	right: 16px;
	height: 14px;
	border-left: 2px solid #fff;
	margin: -7px 0 0 0;
	z-index: 1;
}
.index-spmenu &gt; dl &gt; dt:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 14px;
	border-top: 2px solid #fff;
	margin: -1px 0 0 0;
	z-index: 1;
}
.index-spmenu &gt; dl &gt; dt span {
	display: inline-block;
	vertical-align: middle;
	border: 1px solid #fff;
	width: 32px;
	height: 32px;
	margin: 0 8px 0 0;
	border-radius: 16px;
	-moz-border-radius: 16px;
	-webkit-border-radius: 16px;
}
.index-spmenu &gt; dl &gt; dt:nth-of-type(1) span {
	background: url(../img/products-icon_01.svg) center top no-repeat;
	background-size: 30px 60px;
}
.index-spmenu &gt; dl &gt; dt:nth-of-type(2) span {
	background: url(../img/products-icon_02.svg) center top no-repeat;
	background-size: 30px 60px;
}
.index-spmenu &gt; dl &gt; dt:nth-of-type(3) span {
	background: url(../img/products-icon_03.svg) center top no-repeat;
	background-size: 30px 60px;
}
.index-spmenu &gt; dl &gt; dt:nth-of-type(4) span {
	background: url(../img/products-icon_04.svg) center top no-repeat;
	background-size: 30px 60px;
}
.index-spmenu &gt; dl &gt; dt:nth-of-type(5) span {
	background: url(../img/products-icon_05.svg) center top no-repeat;
	background-size: 30px 60px;
}
.index-spmenu &gt; dl &gt; dt.active:before {
	display: none;
}
.index-spmenu &gt; dl &gt; dd {
	display: none;
	padding: 10px 0 20px 0;
}
.index-spmenu dd p.listlink {
	clear: both;
	width: 100%;
	border: 1px solid #ccc;
	margin: 0;
	font-size: 15px;
}
.index-spmenu dd p.listlink a {
	position: relative;
	display: block;
	height: auto;
	padding: 20px 35px 20px 15px;
	line-height: 1;
	color: #5f6a7d;
	text-align: center;
}
.index-spmenu dd p.listlink a:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 15px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #3193cc;
	border-right: 2px solid #3193cc;
	margin: -5px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 1;
}
.index-spmenu .imgbox {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 50% 0 0 0;
	overflow: hidden;
}
.index-spmenu .imgbox:last-child {
	margin-bottom: 0px;
}
.index-spmenu .imgbox &gt; img {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	width: 100%;
	height: auto;
	-webkit-transform: translate3d(0, -50%, 0);
	-ms-transform: translate3d(0, -50%, 0);
	transform: translate3d(0, -50%, 0);
	-webkit-transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	transition: 0.2s linear;
}

.index-search {
	width: 100%;
	margin-top: 20px;
}
.index-search a {
	display: block;
	position: relative;
	background: #eee;
	width: 100%;
	margin: 0 0 1px 0;
	padding: 20px 0;
	font-size: 16px;
	line-height: 1;
	text-align: center;
	color: #5f6a7d;
	cursor: pointer;
}
.index-search a:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 14px;
	width: 7px;
	height: 7px;
	border-top: 2px solid #3193cc;
	border-right: 2px solid #3193cc;
	margin: -6px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 1;
}

.index-news-top {
	position: relative;
	margin-top: 50px;
}
.index-news-top h2 {
	margin: 0 120px 0 0;
}
.index-news-top p {
	position: absolute;
	top: 0;
	right: 20px;
}
.index-tab.news-tab dl {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid #ccc;
}

.index-leading-top {
	position: relative;
	margin-top: 55px;
}
.index-leading {
	position: relative;
	width: 100%;
	margin: 25px auto 0 auto;
}
.index-leading .l-list {
	position: relative;
	display: block;
	background: #fff;
	border: 1px solid #e4e4e4;
	width: 280px !important;
	margin: 0 5px 0 0;
	padding: 0;
	color: #5f6a7d;
}
.index-leading .l-img {
	position: relative;
	width: 100%;
	padding: 58% 0 0 0;
	overflow: hidden;
}
.index-leading .l-img img {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	width: 100%;
	height: auto;
	-webkit-transform: translate3d(0, -50%, 0);
	-ms-transform: translate3d(0, -50%, 0);
	transform: translate3d(0, -50%, 0);
}
.index-leading dl {
	position: relative;
	padding: 20px 0 70px 22px;
	color: #2e3b4e;
}
.index-leading dl dt {
	border-bottom: 1px solid #ccc;
	margin: 0 0 14px 0;
	padding: 0 22px 14px 0;
	font-size: 21px;
	line-height: 1.2;
}
.index-leading dl dd {
	padding: 0 22px 0 0;
	font-size: 14px;
	color: #5f6a7d;
}
.index-leading p.cat {
	position: absolute;
	left: 22px;
	bottom: 18px;
	border: 1px solid #3193cc;
	height: 36px;
	padding: 0 12px;
	font-size: 12px;
	line-height: 34px;
	color: #3193cc;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}

.index-topics {
	position: relative;
	background: #8fa5b9 url(../img/topics-bg.jpg) center center no-repeat;
	background-size: cover;
	width: 100%;
	margin: 50px 0 0 0;
	padding: 80px 0 75px 0;
}
.index-topics h2 {
	position: relative;
	height: 50px;
	margin: 0 0 44px 0;
	font-size: 40px;
	font-weight: normal;
	line-height: 40px;
	letter-spacing: 0.075em;
	text-align: center;
	color: #fff;
}
.index-topics h2:after {
	content:"";
	position: absolute;
	left: 50%;
	bottom: -14px;
	width: 50px;
	border-top: 1px solid #fff;
	margin: 0 0 0 -25px;
}
.index-topics ul {
	width: 100%;
}
.index-topics ul li {
	width: 100%;
	padding: 0 0 1px 0
}
.index-topics ul li a {
	position: relative;
	display: block;
	background: #999;
	width: 100%;
	padding: 100px 5px 40px 5px;
	line-height: 1;
	color: #fff;
	overflow: hidden;
}
.index-topics ul li a:before {
	content:"";
	position: absolute;
	top: 35px;
	left: 50%;
	border: 1px solid #fff;
	width: 52px;
	height: 52px;
	margin: 0 0 0 -26px;
	border-radius: 26px;
	-moz-border-radius: 26px;
	-webkit-border-radius: 26px;
	z-index: 3;
}
.index-topics ul li:nth-child(1) a:before {
	background: url(../img/t-icon_02.svg) center center no-repeat;
	background-size: cover;
}
.index-topics ul li:nth-child(2) a:before {
	background: url(../img/t-icon_03.svg) center center no-repeat;
	background-size: cover;
}
/*.index-topics ul li:nth-child(3) a:before {
	background: url(../img/t-icon_03.svg) center center no-repeat;
	background-size: cover;
}
.index-topics ul li:nth-child(4) a:before {
	background: url(../img/t-icon_04.svg) center center no-repeat;
	background-size: cover;
}*/
.index-topics ul li dl {
	position: relative;
	z-index: 2;
}
.index-topics ul li dt {
	margin: 0 0 10px 0;
	font-size: 18px;
	letter-spacing: 0.075em;
	text-align: center;
	white-space: nowrap;
	overflow: hidden;
}
.index-topics ul li dd {
	font-size: 10px;
	text-align: center;
	white-space: nowrap;
	overflow: hidden;
}
.index-topics ul li .t-img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.index-topics ul li .t-img img {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	width: 100%;
	height: auto;
	-webkit-transform: translate3d(0, -50%, 0);
	-ms-transform: translate3d(0, -50%, 0);
	transform: translate3d(0, -50%, 0);
}




/* module */

.module .module-name {
	margin: 30px 0 15px 0;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.2;
	color: #2e3b4e;
}
.module .module-txt {
	display: block;
	width: 90%;
	height: 10em;
	border: 1px solid #ccc;
	margin: 15px auto 30px auto;
	padding: 10px;
	font-size: 12px;
	color: #666;
}
.module .module-txt:last-child {
	margin: 15px auto 0 auto;
}

.module .head1 {
	margin: 40px 0 20px 0;
	font-size: 28px;
	font-weight: normal;
	line-height:1.4;
}
.module .head2 {
	position: relative;
	margin: 40px 0 50px 0;
	padding: 0;
	font-size: 24px;
	font-weight: normal;
	line-height:1.4;
}
.module .head2:after {
	content:"";
	position: absolute;
	bottom: -22px;
	left: 0;
	width: 50px;
	margin: 0;
	border-top: 1px solid #42bbac;
}
.module .head2 br {
	display: none;
}
.module .head2.tc {
	text-align: left !important;
}
/*
.module .head2.tc:after {
	left: 50%;
	margin: 0 0 0 -25px;
}
*/
.module .head2 span {
	font-size: 36px;
}
.module .head3 {
	position: relative;
	border-bottom: 1px solid #d1d1d1;
	margin: 40px 0 20px 0;
	padding: 0 0 15px 0;
	font-size: 20px;
	font-weight: normal;
	line-height:1.2;
}
.module .head3:after {
	content:"";
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 70px;
	margin: 0;
	border-top: 2px solid #3193cc;
}
.module .head2.tc {
	text-align: left !important;
}
.module .head2.tc.other {
	text-align: center !important;
}
.module .head2.tc.other:after {
	left: 50%;
	margin: 0 0 0 -25px;
}
.module .head3.library-head {
	margin: -40px 0 20px 0;
	padding: 80px 0 15px 0;
}
.module .head3.library-head:first-child {
	margin: -60px 0 20px 0 !important;
	padding: 80px 0 15px 0 !important;
}
.module .head4 {
	position: relative;
	border-bottom: 1px solid #e7e7e7;
	margin: 30px 0 15px 0;
	padding: 0 0 8px 0;
	font-size: 18px;
	font-weight: normal;
	line-height:1.2;
}
.module .head5 {
	position: relative;
	margin: 30px 0 10px 0;
	font-size: 20px;
	font-weight: normal;
	line-height:1.2;
}
.module .head5 span {
	padding-right: 10px;
	font-size: 24px;
	font-weight: normal;
	color: #0a88c5;
}
.module .head6 {
	position: relative;
	border-left: 3px solid #3197ca;
	margin: 25px 0 10px 0;
	padding: 2px 0 2px 12px;
	font-size: 16px;
	font-weight: bold;
	line-height:1.2;
}
.module .head7 {
	position: relative;
	margin: 25px 0 10px 0;
	font-size: 16px;
	font-weight: bold;
	line-height:1.2;
	color: #3197ca;
}
.module .head8 {
	position: relative;
	margin: 25px 0 10px 0;
	font-size: 16px;
	font-weight: bold;
	line-height:1.2;
}
.module h2:first-child,
.module h3:first-child,
.module h4:first-child,
.module h5:first-child,
.module h6:first-child,
.module h7:first-child,
.module h8:first-child {
	margin-top: 0;
}
.module h2.rss-on {
	padding-right: 35px;
}
.module h2 .rss {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
}
.module h2 .rss img {
	width: 30px;
	height: 30px;
}

.module p {
	margin: 10px 0;
}
.module p:first-child {
	margin-top: 0;
}
.module p:last-child {
	margin-bottom: 0;
}

.module .read {
	border: none;
	margin-bottom: 10px;
	padding: 0;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.4;
	color: #2e3b4e;
}
.module .read:after {
	display: none;
}
.module .read + p {
	margin-top: 0;
}

.module .read2 {
	border: none;
	margin-bottom: 10px;
	padding: 0;
	font-size: 20px;
	font-weight: normal;
	line-height: 1.4;
	color: #2e3b4e;
}
.module .read2:after {
	display: none;
}
.module .read2 + p {
	margin-top: 0;
}

.module .striking {
	margin-top: 20px;
	font-size: 18px;
	color: #2e3b4e;
	line-height: 1.4;
}
.module .big {
	font-size: 16px;
}
.module .normal {
	font-size: 14px;
}
.module .small {
	font-size: 12px;
}

.module ul {
	margin: 15px 0;
}
.module ul:first-of-type {
	margin-top: 0;
}
.module ul:last-of-type {
	margin-bottom: 0;
}
.module ul li {
	position: relative;
	padding: 0 0 0 1.5em;
}

.module ul li:before {
	content:"";
	position: absolute;
	top: 0.75em;
	left: 0.5em;
	background: #2e3b4e;
	width: 5px;
	height: 5px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}

.module ul.notes li:before {
	content:"\203B";
	position: absolute;
	top: 0;
	left: 0;
	background: none;
	width: 1em;
	height: 1em;
	margin: 0;
	border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
}

.module ul.none li {
	padding: 0 0 0 1em;
}
.module ul.none li:before {
	display: none;
}

.module ul.box {
	border: 1px solid #b2d7f7;
	width: 100%;
	padding: 10px;
	line-height: 1.2;
	text-align: center;
	color: #0a88c5;
}
.module ul.box li {
	display: inline-block;
	position: relative;
	margin: 5px 10px;
	padding: 0;
}
.module ul.box li:before {
	content:"\30FB";
	position: relative;
	top: auto;
	left: auto;
	background: none;
	width: auto;
	height: auto;
	border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
}

.index .link a,
.module .link a {
	position: relative;
}
.index .link a:after,
.module .link a:after {
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	border-top: 1px solid #3093cc;
	border-right: 1px solid #3093cc;
	margin: 2px 8px 4px 6px;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	vertical-align: middle;
	z-index: 1;
}

.index .pdf a,
.module .pdf a {
	position: relative;
	display: inline-block;
	padding: 0 0 0 20px;
}
.index .pdf a:before,
.module .pdf a:before {
	content: "";
	position: absolute;
	top: 1px;
	left: 0;
	background: url(../img/icon-pdf.svg) center center no-repeat;
	background-size: 14px 18px;
	width: 14px;
	height: 18px;
	z-index: 1;
}

.index .blank a,
.module .blank a {
	position: relative;
}
.index .blank a:after,
.module .blank a:after {
	content: "";
	display: inline-block;
	background: url(../img/icon-blank.svg) center center no-repeat;
	background-size: 12px;
	width: 12px;
	height: 12px;
	margin: 0px 8px 2px 6px;
	vertical-align: middle;
	z-index: 1;
}

.module .rsslink a {
	position: relative;
	display: inline-block;
	padding: 0 0 0 22px;
}
.module .rsslink a:before {
	content: "";
	position: absolute;
	top: 2px;
	left: 0;
	background: url(../img/icon-rss2.svg) center center no-repeat;
	background-size: 16px;
	width: 16px;
	height: 16px;
	z-index: 1;
}

.module .dllink a {
	position: relative;
}
.module .dllink a:after {
	content: "";
	display: inline-block;
	background: url(../img/icon-dl.svg) center center no-repeat;
	background-size: 14px;
	width: 14px;
	height: 14px;
	margin: 0px 8px 3px 6px;
	vertical-align: middle;
	z-index: 1;
}

.module ul.link li,
.module ul.pdf li,
.module ul.blank li {
	padding: 0;
}
.module ul.link li:before,
.module ul.pdf li:before,
.module ul.blank li:before {
	display: none;
}
.module ul.link.tr li,
.module ul.pdf.tr li,
.module ul.blank.tr li {
	text-align: right;
}

.module ol {
	counter-reset: num;
	margin: 15px 0;
}
.module ol:first-of-type {
	margin-top: 0;
}
.module ol:last-of-type {
	margin-bottom: 0;
}
.module ol &gt; li {
	position: relative;
	padding: 0 0 0 2.4em;
}
.module ol &gt; li:before {
	counter-increment: num;
	content: counter(num) " .";
	position: absolute;
	top: 0;
	left: 0;
	width: 1.8em;
	text-align: right;
	text-wrap: none;
	white-space: nowrap;
}

.module ol.num li {
	margin-left: 1em;
	padding: 0 0 0 2.6em;
}
.module ol.num li:before {
	content: "("counter(num)")";
	left: 0;
	width: 2em;
	text-align: center;
	white-space: nowrap;
}

.module ol.notes li {
	padding: 0 0 0 2.8em;
}
.module ol.notes li:before {
	content: "\203B"counter(num);
	width: 2.5em;
	text-align: left;
	color: #5f6a7d;
	white-space: nowrap;

}

.module dl {
	margin: 15px 0;
}
.module dl:first-of-type {
	margin: 0 0 15px 0;
}
.module dl:last-of-type {
	margin: 15px 0 0 0;
}
.module dt {
	margin: 15px 0 5px 0;
	margin-bottom: 5px;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.4;
	color: #2e3b4e;
}
.module dt:first-child {
	margin: 0;
}
.module dd {
	margin-bottom: 5px;
}
.module dd:last-of-type {
	margin-bottom: 15px;
}
.module dl.indent dd {
	position: relative;
	margin: 0 0 0 1.4em;
}
.module dl.indent dd:before {
	content:"";
	position: absolute;
	top: 0.75em;
	left: -0.85em;
	background: #2e3b4e;
	width: 5px;
	height: 5px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}

.module .column1,
.module .column2,
.module .column3,
.module .column4 {
	position: relative;
	width: 100%;
	margin-top: 20px;
}
.module .column1:first-child,
.module .column2:first-child,
.module .column3:first-child,
.module .column4:first-child {
	margin-top: 0;
}
.module .column1.cb,
.module .column2.cb,
.module .column3.cb,
.module .column4.cb {
	border: 1px solid #d1d1d1;
	background: #f5f5f5;
	padding: 20px;
}
.module .bg2 .cb {
	background: #fff;
}
.module .column2 &gt; div,
.module .column3 &gt; div,
.module .column4 &gt; div {
	width: 100%;
	margin-bottom: 20px;
}
.module .column2 &gt; div:last-child,
.module .column3 &gt; div:last-child,
.module .column4 &gt; div:last-child {
	margin-bottom: 0;
}

.module .border-box {
	position: relative;
	max-width: 100%;
	border-bottom: 1px solid #ddd;
	margin: 0 0 40px 0;
	padding: 0 0 40px 0;
}
.module .border-box.first {
}
.module .border-box.last {
	margin: 0;
}

.module figure {
	display: inline-block;
	max-width: 100% !important;
	line-height: 1.5;
	font-size: 12px;
	color: #666;
	text-align: center;
}
.module figure img {
	display: block;
	max-width: 100%;
}
.module figure figcaption {
	display: inline-block;
	margin-top: 8px;
	text-align: center;
}

.module .imgbox {
	position: relative;
	width: 100%;
	margin: 0 auto 15px auto;
	padding: 66% 0 0 0;
	overflow: hidden;
}
.module .imgbox:last-child {
	margin-bottom: 0px;
}
.module .imgbox &gt; img {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	width: 100%;
	height: auto;
	-webkit-transform: translate3d(0, -50%, 0);
	-ms-transform: translate3d(0, -50%, 0);
	transform: translate3d(0, -50%, 0);
}

.module .image-fl,
.module .image-fr {
	position: relative;
	width: 100%;
	text-align: center;
}

.module .youtube {
	position: relative;
	width: 100%;
	margin: 0 auto;
	padding: 56.25% 0 0 0;
	overflow: hidden;
}
.module .youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}
.module .youtube-wrapper {
	position: relative;
	width: 100%;
	max-width: 768px;
	margin: 0 auto;
}

.module table {
	position: relative;
	width: 100%;
}
.module table td {
	word-break: break-all;
}
.module table.basic {
	display: block;
	width: auto;
	margin: 20px 0;
	padding-bottom: 20px;
	overflow: auto;
	white-space: nowrap;
}
.module table.basic:after {
	position: absolute;
	left: 0;
	bottom: 4px;
	content: "\203B\53F3\306B\30B9\30AF\30ED\30FC\30EB\3067\304D\307E\3059\2192";
	display: block;
	width: 100%;
	font-size: 10px;
	line-height: 1;
	color: #888;
}
.module table.basic::-webkit-scrollbar {
	width: 10px;
	height: 10px;
}
.module table.basic::-webkit-scrollbar-track {
	background: #eee;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}
.module table.basic::-webkit-scrollbar-thumb {
	background: #999;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}
.module table.basic tbody {
	display:table;
	width: 100%;
}
.module table.basic &gt; tr &gt; th,
.module table.basic &gt; tbody &gt; tr &gt; th {
	vertical-align: middle;
	border: 1px solid #d5d5d5;
	background: #e7f5fb;
	padding: 12px 10px;
	font-weight: normal;
	text-align: left;
	line-height: 1.6;
}
.module table.basic .table-top th {
	background: #3197ca;
	font-weight: bold;
	text-align: left;
	color: #fff;	
}
.module table.basic &gt; tr &gt; td,
.module table.basic &gt; tbody &gt; tr &gt; td {
	vertical-align: middle;
	border: 1px solid #d5d5d5;
	background: #fff;
	padding: 12px 10px;
	font-weight: normal;
	text-align: left;
	line-height: 1.6;
	word-break: break-all;
}
.module table.basic.light th {
	background: #fff;
	color: #2e3b4e;
}
.module table.basic.light .table-top th {
	background: #fff;
	text-align: center;
	color: #2e3b4e;
}
.module table.basic.nosc {
	overflow: visible;
	white-space: normal;
	padding-bottom: 0;
}
.module table.basic.nosc:after {
	display: none;
}
.module table.basic.nosc th,
.module table.basic.nosc td {
	display: block;
	width: 100%;
	margin-top: -1px;
}

.module table.simple {}
.module table.simple &gt; tr &gt; th,
.module table.simple &gt; tbody &gt; tr &gt; th {
	vertical-align: top;
	white-space: nowrap;
	border-bottom: 1px solid #e7e7e7;
	padding: 15px 15px 15px 0;
	font-weight: normal;
	text-align: left;
}
.module table.simple &gt; tr &gt; td,
.module table.simple &gt; tbody &gt; tr &gt; td {
	vertical-align: top;
	border-bottom: 1px solid #e7e7e7;
	padding: 15px 0;
	text-align: left;
	word-break: break-all;
}
.module table.simple.line {
	position: relative;
	width: 100%;
	margin: 0 0 30px 0;
}
.module table.simple.line &gt; tr &gt; th,
.module table.simple.line &gt; tbody &gt; tr &gt; th {
	display: inline-block;
	position: relative;
	border-bottom: none;
	width: auto;
	padding: 10px 10px 0 0;
	font-size: 15px;
	font-weight: normal;
	text-align: left;
	color: #2e3b4e;
}
.module table.simple.line &gt; tr &gt; td,
.module table.simple.line &gt; tbody &gt; tr &gt; td {
	display: block;
	position: relative;
	border-bottom: none;
	width: 100%;
	padding: 6px 0 0 0;
	text-align: left;
}
.module table.simple.line &gt; tr &gt; td:last-child,
.module table.simple.line &gt; tbody &gt; tr &gt; td:last-child {
	border-bottom: 1px solid #e7e7e7;
	padding: 6px 0 10px 0;
}
.module table.simple table {
	border-top: 1px solid #d5d5d5;
}
.module table.simple table th {
	display: block;
	width: 100%;
	vertical-align: middle;
	border: 1px solid #d5d5d5;
	border-top: none;
	background: #e7f5fb;
	padding: 10px;
	font-weight: normal;
	text-align: left;
	line-height: 1.6;
}
.module table.simple table td {
	display: block;
	width: 100%;
	vertical-align: middle;
	border: 1px solid #d5d5d5;
	border-top: none;
	background: #fff;
	padding: 10px;
	font-weight: normal;
	text-align: left;
	line-height: 1.6;
}

.module .prelusion {
	position: relative;
	width: 100%;
	margin: 20px 0 10px 0;
}
.module .prelusion &gt; div {
	position: relative;
	background: #fff;
	width: 100%;
	margin: 0 0 10px 0;
}
.module .prelusion &gt; div &gt; div {
	position: relative;
	border: 1px solid #d5d5d5;
	background: #fff;
	margin: 0 0 -1px 0;
}
.module .prelusion .image {
	padding: 10px;
	text-align: center;
}
.module .prelusion .title {
	padding: 10px;
	line-height: 1.5;
	text-align: center;
}
.module .prelusion .text {
	padding: 10px;
	font-size: 13px;
	line-height: 1.5;
}
.module .prelusion &gt; div.c2 .image {
	border-bottom: none;
	padding: 10px 10px 5px 10px;
}
.module .prelusion &gt; div.c2 .image:nth-child(2n) {
	border-top: none;
	padding: 5px 10px 10px 10px;
}

.module .btn {
	margin: 0;
}
.module .btn a,
.module .btn button {
	display: block;
	position: relative;
	border: none;
	background: #3193cc;
	width: 100%;
	margin: 10px 0;
	padding: 24px 30px 24px 20px;
	font-size: 16px;
	font-weight: normal;
	color: #fff;
	text-decoration: none;
	text-align: center;
	line-height: 1;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	border-radius: 0px;
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;
	transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	-webkit-transition: 0.2s linear;
}
.module .btn a:after,
.module .btn button:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 15px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	margin: -5px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 1;
}
.module .btn .blank,
.module .btn .contact,
.module .btn .download,
.module .btn .material,
.module .btn .people {
	position: relative;
	display: inline-block;
	padding: 0 0 0 46px;
}
.module .btn .print,
.module .btn .map {
	position: relative;
	display: inline-block;
	padding: 0 0 0 40px;
}
.module .btn .blank:before,
.module .btn .contact:before,
.module .btn .download:before {
	content:"";
	position: absolute;
	top: 50%;
	left: 0;
	border: 1px solid #fff;
	width: 34px;
	height: 34px;
	margin-top: -17px;
	border-radius: 22px;
	-moz-border-radius: 22px;
	-webkit-border-radius: 22px;
}
.module .btn .blank:before {
	background: url(../img/icon-blank2.svg) center center no-repeat;
	background-size: 20px;
}
.module .btn .contact:before {
	background: url(../img/icon-mail2.svg) center center no-repeat;
	background-size: 20px;
}
.module .btn .download:before {
	background: url(../img/icon-dl2.svg) center center no-repeat;
	background-size: 20px;
}
.module .btn .material:before,
.module .btn .people:before {
	content:"";
	position: absolute;
	top: 50%;
	left: 0;
	border: 1px solid #004e65;
	width: 34px;
	height: 34px;
	margin-top: -17px;
	border-radius: 22px;
	-moz-border-radius: 22px;
	-webkit-border-radius: 22px;
}
.module .btn .material:before {
	background: url(../img/icon-mt.svg) center center no-repeat;
	background-size: 20px;
}
.module .btn .people:before {
	background: url(../img/icon-pe.svg) center center no-repeat;
	background-size: 20px;
}
.module .btn .print:before,
.module .btn .map:before {
	content:"";
	position: absolute;
	top: 50%;
	left: 0;
	background-color: #a5a5a5;
	width: 28px;
	height: 28px;
	margin-top: -14px;
	border-radius: 14px;
	-moz-border-radius: 14px;
	-webkit-border-radius: 14px;
}
.module .btn .print:before {
	background: #a5a5a5 url(../img/icon-print.svg) center center no-repeat;
	background-size: 14px;
}
.module .btn .map:before {
	background: #a5a5a5 url(../img/icon-map.svg) center center no-repeat;
	background-size: 16px;
}
.module .btnmini a {
	display: inline-block;
	position: relative;
	background: #3193cc;
	min-width: 100px;
	padding: 6px 20px 6px 15px;
	font-size: 12px;
	font-weight: normal;
	color: #fff;
	text-decoration: none;
	text-align: center;
	line-height: 1;
	vertical-align: middle;
	white-space: nowrap;
}
.module .btnmini a:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 7px;
	width: 5px;
	height: 5px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	margin: -3px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 1;
}
.module a.btnc1 {
	background: #00af9d;
}
.module a.btnc2 {
	background: #004e65;
}
.module a.btnc3 {
	border: 1px solid #d5d5d5;
	background: #fff;
	color: #2e3b4e;
}
.module a.btnc3:after {
	border-top: 2px solid #3193cc;
	border-right: 2px solid #3193cc;
}
.module a.btnc4 {
	background: #eee;
	color: #2e3b4e;
}
.module a.btnc4:after {
	border-top: 2px solid #3193cc;
	border-right: 2px solid #3193cc;
}
.module .btnarea a.btnc4,
.module .btnarea button.btnc4 {
	padding: 18px 30px 18px 20px;
	font-size: 14px;
}

.module .pager {
	display: table;
	position: relative;
	width: 100%;
	margin: 20px 0 0 0;
	font-size: 16px;
	text-align: center;
}
.module .pager p {
	display: table-cell;
	vertical-align: top;
	margin: 0;
	padding: 0;
}
.module .pager a {
	display: inline-block;
	position: relative;
	height: 40px;
	color: #2e3b4e;
	text-decoration: none;
	line-height: 40px;
}
.module .pager .prev {
	width: 25%;
	padding: 0;
	text-align: left;
}
.module .pager .prev a {
	padding: 0 0 0 25px;
	white-space: nowrap;
}
.module .pager .prev a:before {
	content:"";
	position: absolute;
	top: 50%;
	left: 0;
	background: #004e65;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	z-index: 1;
}
.module .pager .prev a:after {
	content:"";
	position: absolute;
	top: 50%;
	left: 8px;
	width: 5px;
	height: 5px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	margin: -3px 0 0 0;
	transform: rotate(-135deg);
	-ms-transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
	z-index: 2;
}
.module .pager .next {
	width: 25%;
	padding: 0;
	text-align: right;
}
.module .pager .next a {
	padding: 0 25px 0 0;
	white-space: nowrap;
}
.module .pager .next a:before {
	content:"";
	position: absolute;
	top: 50%;
	right: 0;
	background: #004e65;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	z-index: 1;
}
.module .pager .next a:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 8px;
	width: 5px;
	height: 5px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	margin: -3px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 2;
}
.module .pager .page,
.module .pager .return {
	width: 50%;
	text-align: center;
}
.module .pager .page a {
	border: 1px solid #e1e1e1;
	background: #fff;
	width: 40px;
	margin: 0 -1px -1px 0;
	line-height: 38px;
	text-align: center;
}
.module .pager .return a {
	border: 1px solid #e1e1e1;
	background: #fff;
	width: 130px;
	font-size: 14px;
	line-height: 38px;
	text-align: center;
}
.module .pager .page a.active,
.module .pager .return a.active {
	background: #e1e1e1;
	color: #fff;
}
.module .pager .page span.current {
	border: 1px solid #e1e1e1;
	background: #e1e1e1;
	width: 40px;
	margin: 0 -1px -1px 0;
	line-height: 38px;
	text-align: center;
	color: #fff;
}
.module .pager img {
	vertical-align: middle;
	margin: 0 0 2px 0;
}

.module .pager .page.search {
	letter-spacing: -.4em;
	width: 100%;
}
.module .pager .page.search a,
.module .pager .page.search span {
	letter-spacing:normal;
}
.module .pager a.prev {
	padding: 0 25px 0 25px;
	white-space: nowrap;
	background:none;
	display:inline;
	border:none;
}
.module .pager a.prev:before {
	content:"";
	position: absolute;
	top: 50%;
	left: 0;
	background: #004e65;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	z-index: 1;
}
.module .pager a.prev:after {
	content:"";
	position: absolute;
	top: 50%;
	left: 8px;
	width: 5px;
	height: 5px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	margin: -3px 0 0 0;
	transform: rotate(-135deg);
	-ms-transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
	z-index: 2;
}
.module .pager a.next {
	padding: 0 25px 0 25px;
	white-space: nowrap;
	background:none;
	display:inline;
	border:none;
	width:25%;
}
.module .pager a.next:before {
	content:"";
	position: absolute;
	top: 50%;
	right: 0;
	background: #004e65;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	z-index: 1;
}
.module .pager a.next:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 8px;
	width: 5px;
	height: 5px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	margin: -3px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 2;
}

.module .search-area {
	position: relative;
	width: 100%;
	margin: 30px 0 0 0;
}
.module .search-area:first-child {
	margin: 0;
}
.module .search-area dt {
	position: relative;
	background: #458ec7;
	width: 100%;
	margin: 0;
	padding: 20px;
	font-size: 18px;
	font-weight: normal;
	line-height: 1;
	text-align: center;
	color: #fff;
	cursor: pointer;
}
.module .search-area dt:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 15px;
	width: 18px;
	border-top: 2px solid #fff;
	margin: -1px 0 0 0;
	z-index: 1;
}
.module .search-area dt:before {
	content:"";
	position: absolute;
	top: 50%;
	right: 23px;
	height: 18px;
	border-left: 2px solid #fff;
	margin: -9px 0 0 0;
	z-index: 1;
}
.module .search-area dt.active:before {
	display: none;
}
.module .search-area dd {
	display: none;
	position: relative;
	background: #f5f5f5;
	width: 100%;
	margin: 0;
	padding: 0;
	color: #2e3b4e;
	line-height: 1.2;
}
.module .search-area dd.view {
	display: block;
  margin-top: 60px;
}
.module .search-area dd p {
	margin: 0;
}

.module .flow-list {
	position: relative;
	background: #0a88c5;
	width: 100%;
	margin: 10px 0;
	padding: 0;
	z-index: 1;
}
.module .flow-list li {
	position: relative;
	border-bottom: 2px solid #fff;
	background: #0a88c5;
	width: 100%;
	margin: 0;
	padding: 18px 10px 18px 10px;
	text-align: center;
	line-height: 1.2;
	color: #fff;
}
.module .flow-list li:after,
.module .flow-list li:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	border: solid transparent;
	background: none;
	height: 0;
	width: 0;
	pointer-events: none;
	border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	z-index: 1;
}
.module .flow-list li:after {
	border-color: rgba(10, 136, 197, 0);
	border-top-color: #0a88c5;
	border-width: 10px;
	margin-left: -10px;
}
.module .flow-list li:before {
	border-color: rgba(255, 255, 255, 0);
	border-top-color: #fff;
	border-width: 13px;
	margin-left: -13px;
}
.module .flow-list li:last-child:after,
.module .flow-list li:last-child:before {
	display: none;
}
.module .flow-list li:last-child {
	border: none;
}
.module .flow-list.gl {
	background: #dadada;
}
.module .flow-list.gl:after {
	border-top-color: #dadada;
}
.module .flow-list.gl li {
	background: #dadada;
}
.module .flow-list.gl li:after {
	border-top-color: #dadada;
}
.module .flow-list.gl li.active {
	background: #9f9f9f;
}
.module .flow-list.gl li.active:after {
	border-top-color: #9f9f9f;
}





.image-menu {
	position: relative;
	width: 100%;
}
.module .image-menu dl {
	position: relative;
	background: #fff;
	width: 100%;
	margin: 0 0 25px 0;
	padding: 0;
}
.module .image-menu dl:last-child {
	margin: 0;
}
.module .image-menu dt {
	margin: 0;
	padding: 0;
}
.image-menu dt .imgbox {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 50% 0 0 0;
	overflow: hidden;
}
.image-menu dt .imgbox &gt; div {
	position: absolute;
	top: 50%;
	left: 50%;
	border: 2px solid #fff;
	width: 70px;
	height: 70px;
	margin: -35px 0 0 -35px;
	border-radius: 35px;
	-moz-border-radius: 35px;
	-webkit-border-radius: 35px;
	overflow: hidden;
	z-index: 2;
}
.image-menu dt a {
	display: block;
	text-decoration: none;
}
.image-menu dt a span {
	position: relative;
	display: block;
	background: #2b2b2b;
	padding: 24px 35px 24px 20px;
	font-size: 18px;
	font-weight: normal;
	line-height: 1.1;
	color: #fff;
}
.image-menu dt a span:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	margin: -6px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 1;
}
.module .image-menu dd {
	background: #fff;
	margin: 0;
	padding: 15px 20px;
}

.image-menu2 {
	position: relative;
	width: 100%;
}
.image-menu2 &gt; a {
	display: block;
	position: relative;
	float: left;
	background: #fff;
	width: 100%;
	margin: 0 0 20px 0;
	padding: 0;
	text-decoration: none;
}
.image-menu2 .imgbox {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 50% 0 0 0;
	overflow: hidden;
}
.image-menu2 .imgbox &gt; div {
	position: absolute;
	top: 50%;
	left: 50%;
	border: 2px solid #fff;
	width: 60px;
	height: 60px;
	margin: -30px 0 0 -30px;
	border-radius: 30px;
	-moz-border-radius: 30px;
	-webkit-border-radius: 30px;
	overflow: hidden;
	z-index: 2;
}
.module .image-menu2 dl {
	margin: 0;
	padding: 15px 20px;
}
.module .image-menu2 dl dt {
	margin: 0 0 6px 0;
	font-size: 18px;
	font-weight: normal;
	line-height: 1.2;
	color: #3193cc;
}
.module .image-menu2 dl dd {
	margin: 0;
	font-size: 13px;
	font-weight: normal;
	color: #5f6a7d;
}

.image-menu3 {
	position: relative;
	width: 100%;
}
.image-menu3 &gt; a {
	display: block;
	position: relative;
	border: 1px solid #e1e1e1;
	background: #f5f5f5;
	width: 100%;
	margin: 0 0 15px 0;
	padding: 0;
}
.image-menu3 .imgbox {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 50% 0 0 0;
	overflow: hidden;
}
.image-menu3 h3 {
	padding: 10px 15px;
	font-size: 14px;
	font-weight: normal;
	line-height: 1.5;
	color: #3193cc;
}
.image-menu3 h3:after {
	content: "";
	position: relative;
	display: inline-block;
	vertical-align: middle;
	background: url(../img/icon-blank.svg) center center no-repeat;
	background-size: 12px;
	width: 12px;
	height: 12px;
	margin: 0 0 0 5px;
	z-index: 1;
}

.catch-menu {
	position: relative;
	width: 100%;
}
.catch-menu a {
	display: block;
	position: relative;
	border: 1px solid #e4e4e4;
	background: #fff;
	width: 100%;
	margin: 0 0 25px 0;
	padding: 0 0 90px 0;
	text-decoration: none;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
}
.bg2 .catch-menu a {
	border: none;
}
.catch-menu .imgbox,
.index-spmenu .catch-menu .imgbox {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 50% 0 0 0;
	overflow: hidden;
	z-index: 1;
}
.catch-menu .imgbox &gt; img,
.index-spmenu .catch-menu .imgbox &gt; img {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	width: 100%;
	height: auto;
	-webkit-transform: translate3d(0, -50%, 0);
	-ms-transform: translate3d(0, -50%, 0);
	transform: translate3d(0, -50%, 0);
	-webkit-transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	transition: 0.2s linear;
}
.index-spmenu .catch-menu dl,
.module .catch-menu dl {
	position: absolute;
	left: 0;
	bottom: 0;
	background: #fff;
	width: 100%;
	margin: 0;
	padding: 0;
	z-index: 2;
}
.index-spmenu .catch-menu dl dt,
.module .catch-menu dl dt {
	width: 100%;
	min-height: 90px;
	margin: 0;
	padding: 35px 15px 25px 15px;
	font-size: 18px;
	font-weight: normal;
	line-height: 1.2;
	text-align: center;
	color: #3193cc;
	-webkit-transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	transition: 0.2s linear;
}
.catch-menu dl dt small {
	font-size: 14px;
}
.catch-menu dl dt span {
	display: block;
	width: 100%;
	margin-top: 5px;
	font-size: 14px;
	line-height: 1.2;
}
.catch-menu dl dt div {
	position: absolute;
	top: -32px;
	left: 50%;
	background: #fff;
	width: 64px;
	height: 64px;
	margin: 0 0 0 -32px;
	padding: 0 ;
	border-radius: 32px;
	-moz-border-radius: 32px;
	-webkit-border-radius: 32px;
	overflow: hidden;
	z-index: 2;
	-webkit-transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	transition: 0.2s linear;
}
.catch-menu dl dt div img {
	margin-top: -64px;
}
.index-spmenu .catch-menu dl dd,
.module .catch-menu dl dd {
	display: none;
	width: 100%;
	margin: 0;
	padding: 0 15px 15px 15px;
	font-size: 12px;
	line-height: 1.5;
	text-align: center;
	color: #3193cc;
}
.catch-menu a.active .imgbox &gt; img {
	-webkit-transform: scale(1.1,1.1) translate3d(0, -45%, 0);
	-ms-transform: scale(1.1,1.1) translate3d(0, -45%, 0);
	transform: scale(1.1,1.1) translate3d(0, -45%, 0);
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}
.catch-menu a.active dl dt {
	min-height: 80px;
	padding: 40px 15px 10px 15px;
}
.catch-menu a.active dl dt div {
	background: #2e3b4e;
}
.catch-menu a.active dl dt div img {
	margin-top: 0;
}

.catch-menu.c2 a {
	float: left;
	width: 49%;
	margin: 0 2% 10px 0;
	padding: 0 0 45px 0;
}
.catch-menu.c2 a:nth-child(2n) {
	margin: 0 0 10px 0;
}
.catch-menu.c2 dl dt {
	min-height: 45px;
	padding: 17px 10px;
	font-size: 11px;
}
.catch-menu.c2 dl dt small {
	font-size: 9px;
}
.catch-menu.c2 dl dt div {
	position: absolute;
	top: -15px;
	left: 50%;
	background: #fff;
	width: 30px;
	height: 30px;
	margin: 0 0 0 -15px;
	padding: 0 ;
	border-radius: 15px;
	-moz-border-radius: 15px;
	-webkit-border-radius: 15px;
	overflow: hidden;
	z-index: 2;
	-webkit-transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	transition: 0.2s linear;
}
.catch-menu.c2 dl dt div img {
	margin-top: -30px;
}
.catch-menu.c2 dl dd {
	padding: 0 10px 10px 10px;
	font-size: 8px;
}
.catch-menu.c2 a.active dl dt {
	min-height: 40px;
	padding: 22px 10px 7px 10px;
}

.page-menu {
	display: none;
}

.sns-btn {
	width: 100%;
}
.sns-btn.page-top {}
.sns-btn.page-btm {
	margin: 15px 0 30px 0;
}
.sns-btn &gt; div {
	float: left;
	width: 24.25%;
	height: 34px;
	margin: 0 1% 0 0;
}
.sns-btn &gt; div:nth-child(4) {
	float: right;
	margin: 0;
}
.sns-btn &gt; div a {
	display: inline-block;
	background: #ccc;
	width: 100%;
	height: 34px;
	padding: 34px 0 0 0;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	overflow: hidden;
}
.sns-btn .twitter a {
	background: url(../img/sns-x.png) center center no-repeat;
	background-size: cover;
}
.sns-btn .facebook a {
	background: #4065b5 url(../img/sns-facebook.svg) center center no-repeat;
	background-size: 30px;
}
/*.sns-btn .google a {
	background: #dc4a3d url(../img/sns-google.svg) center center no-repeat;
	background-size: 30px;
}*/
.sns-btn .linkedin a {
	background: #0077b5 url(../img/sns-linkedin.svg) center center no-repeat;
	background-size: 30px;
}
.sns-btn .line a {
	background: #00b900 url(../img/sns-line.svg) center center no-repeat;
	background-size: 30px;
}




/* news */

.news-tab dl {
	width: 100%;
}
.news-tab dl .cat {
	float: left;
	border: 1px solid #a1abaf;
	background: #a1abaf;
	width: 135px; /*2021.8.17 125-&gt;135*/
	height: 22px;
	margin: 0 15px 8px 0;
	font-size: 12px;
	font-weight: normal;
	line-height: 20px;
	text-align: center;
	color: #fff;
}
.module .news-tab dl .cat {
	font-size: 12px;
	font-weight: normal;
	line-height: 20px;
}
.news-tab dl .cat.c01 {
	border: 1px solid #47bbaf;
	background: #fff;
	color: #47bbaf;
}
.news-tab dl .cat.c02 {
	border: 1px solid #95a2a7;
	background: #fff;
	color: #95a2a7;
}
.news-tab dl .cat.c03 {
	border: 1px solid #c8b367;
	background: #fff;
	color: #c8b367;
}
.news-tab dl .cat.c04 {
	border: 1px solid #34a9d4;
	background: #fff;
	color: #34a9d4;
}
.news-tab dl .cat.c05 {
	border: 1px solid #86be67;
	background: #fff;
	color: #86be67;
}
.news-tab dl .day {
	float: left;
	border-right: 1px solid #ccc;
	height: 22px;
	margin: 0 0 8px 0;
	padding: 0 15px 0 0;
	line-height: 22px;
}
.news-tab dl .tit {
	clear: both;
	margin: 0 0 15px 0;
	line-height: 1.5;
}
.news-tab dl .tit a {
	display: block;
}

.event-tab ul {
	display: none;
}
.event-tab dl {
	width: 100%;
	border-bottom: 1px solid #e1e1e1;
	line-height: 1.6;
}
.event-tab dl dt {
	font-size: 13px;
	font-weight: normal;
	color: #5f6a7d;
}
.event-tab dl dt .cat {
	display: block;
	border: 1px solid #86be67;
	background: #fff;
	width: 135px; /*2021.8.17 110-&gt;135*/
	height: 22px;
	margin: 0 0 6px 0;
	font-size: 12px;
	font-weight: normal;
	line-height: 20px;
	text-align: center;
	color: #86be67;
	vertical-align: middle;
}
.event-tab dl dd.area {
	font-size: 13px;
	word-break: break-word;
}
.event-tab dl dd.name {
	font-size: 15px;
}
.event-tab dl dd.name a,
.event-tab dl dd.name span {
	display: inline-block;
	width: 100%;
	font-size: 18px;
}

.link-tab {
	position: relative;
	border-bottom: 1px solid #ccc;
	width: 100%;
	margin: 20px 0 25px 0;
	padding-bottom: 25px;
}
.link-tab:first-child {
	margin: 0 0 25px 0;
}
.link-tab .sp-link {
	position: relative;
	width: 80%;
	margin: 0 auto;
	text-align: center;
	z-index: 1;
}
.link-tab .sp-link:after {
	position: absolute;
	top: 50%;
	right: 12px;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	pointer-events: none;
	border-color: rgba(49, 147, 204, 0);
	border-top-color: #3193cc;
	border-width: 8px;
	margin-top: -4px;
	z-index: 2;
}
.link-tab .sp-link select {
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	border-radius: 0px;
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;
	width: 100%;
	border: 1px solid #d5d5d5;
	padding: 18px 12px;
	font-size: 16px;
	line-height: 1;
	color: #2e3b4e;
}
.link-tab .sp-link select::-ms-expand {
	display: none;
}
.link-tab ul {
	display: none;
}
.link-tab .rss {
	display: none;
}

.search-area .search-news1,
.search-area .search-news2 {
	border-bottom: 1px solid #dcdcdc;
	width: 100%;
	margin: 0;
	padding: 20px 12px;
	white-space: nowrap;
}
.search-area .search-news3 {
	width: 100%;
	margin: 0;
	padding: 20px 12px;
	white-space: nowrap;
}

.fcb.view&gt;span {
  position: relative;
  top: -40px;
  display: block;
  text-align: center;
  font-size: large;
  font-weight: bold;
  margin: auto 15px;
  color: #5f6a7d;
}

.search-news1&gt;form {
  margin-top: -30px;
}

.search-area .search-news1 .word {
	width: 60%;
}
.search-area .search-news2 .select,
.search-area .search-news3 .select {
	width: 30%;
}

.search-area .search-news3 .txt {
	width: 18%;
}

.search-form {
	width: 100%;
	font-size: 0;
}
.search-form span {
	display: inline-block;
	position: relative;
	margin: 10px 0 0 0;
	padding: 0 5px 0 0;
	font-size: 14px;
	white-space: nowrap;
	text-align: center;
}
.search-form span input[type="text"],
.search-form span select {
	border: 1px solid #d5d5d5;
	background: #fff;
	width: 100%;
	height: 50px;
	padding: 0 5px;
	font-size: 14px;
	line-height: 1;
	color: #5f6a7d;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	border-radius: 0px;
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;
}

.search-form span.word input[type="text"] {
	padding: 0 40px 0 5px;
}
.search-form span.select:before {
	content: "";
	position: absolute;
	top: 13px;
	right: 12px;
	border: solid transparent;
	width: 0;
	height: 0;
	pointer-events: none;
	border-color: rgba(69, 142, 199, 0);
	border-bottom-color: #458ec7;
	border-width: 5px;
}
.search-form span.select:after {
	content: "";
	position: absolute;
	bottom: 13px;
	right: 12px;
	border: solid transparent;
	width: 0;
	height: 0;
	pointer-events: none;
	border-color: rgba(69, 142, 199, 0);
	border-top-color: #458ec7;
	border-width: 5px;
}
.search-form span.select select {
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	padding: 0 20px 0 5px;
}
.search-form span.send {
	padding: 0;
}

.search-form span.send input {
  content: '';
  background: url(../img/search-icon2.svg) center center no-repeat;
  background-size: 20px;
  width: 40px;
  height: 40px;
  border: none;
  color: transparent;
  position: relative;
  left: 20px;
}



/* news-txtpage */

.press-head {
	position: absolute;
	top: 0;
	left: 0;
	background: #f5f5f5;
	width: 100%;
	height: 55px;
	padding: 0 12px;
	z-index: 2;
}
.module .press-head dl {
	position: absolute;
	top: 16px;
	left: 12px;
	margin: 0;
	padding: 0;
}
.press-head dl .cat {
	clear: both;
	float: left;
	border: 1px solid #a1abaf;
	background: #a1abaf;
	width: 135px;
	height: 22px;
	margin: 0 12px 0 0;
	padding: 0;
	font-size: 12px;
	font-weight: normal;
	line-height: 20px;
	text-align: center;
	color: #fff;
}
.press-head dl .cat {
	font-size: 12px;
	font-weight: normal;
	line-height: 20px;
}
.press-head dl .cat.c01 {
	border: 1px solid #47bbaf;
	background: #fff;
	color: #47bbaf;
}
.press-head dl .cat.c02 {
	border: 1px solid #95a2a7;
	background: #fff;
	color: #95a2a7;
}
.press-head dl .cat.c03 {
	border: 1px solid #c8b367;
	background: #fff;
	color: #c8b367;
}
.press-head dl .cat.c04 {
	border: 1px solid #34a9d4;
	background: #fff;
	color: #34a9d4;
}
.press-head dl .cat.c05 {
	border: 1px solid #86be67;
	background: #fff;
	color: #86be67;
}
.press-head dl .day {
	float: left;
	height: 22px;
	margin: 0;
	padding: 0;
	line-height: 22px;
}
.press-head p {
	display: none;
}

.press-release {
	position: relative;
	padding-top: 40px;
	z-index: 1;
}
.press-release h2 {
	margin: 0 0 10px 0;
	font-size: 25px;
	font-weight: normal;
	line-height:1.3;
}
.press-release h3,
.press-release h4 {
	position: relative;
	border-left: 3px solid #3197ca;
	margin: 40px 0 20px 0;
	padding: 2px 0 2px 12px;
	font-size: 16px;
	font-weight: bold;
	line-height:1.2;
}
.press-release h2 + h3 {
	border: none;
	margin: 0 0 5px 0;
	padding: 0;
	font-size: 16px;
	font-weight: normal;
	color: #5f6a7d;
	line-height:1.4;
}
.press-release h2 + h3 span {
	display: block;
	margin: 5px 0 0 0;
	font-size: 14px;
}
.press-release p:first-of-type {
	border-top: 1px solid #d1d1d1;
	margin-top: 25px;
	padding-top: 35px;
}
.press-release .btnarea {
	margin-top: 20px;
}
.press-release p.btn:first-of-type {
	border-top: none !important;
	margin-top: 0 !important;
	padding-top: 0 !important;
}
.press-release strong {
	font-size: 16px;
	color: #555;
}
.module .press-release .ul_list,
.module .press-release .ul_list li,
.module .press-release .li_left,
.module .press-release .li_center_right {
	padding: 0;
}
.module .press-release .ul_list li:before {
	display: none;
}
.module .press-release .li_copy {
	font-size: 12px;
}
.module .press-release .li_copy li:before {
	display: none;
}

.event-seminar {
	position: relative;
	padding-top: 40px;
	z-index: 1;
}
.event-seminar .border-box {
	margin: 0 0 25px 0;
	padding: 0 0 25px 0;
}
.event-seminar h2 {
	margin: 0;
	font-size: 25px;
	font-weight: normal;
	line-height:1.3;
}
.event-seminar h3 {
	border: none;
	margin: 10px 0 0 0;
	font-size: 16px;
	font-weight: normal;
	color: #5f6a7d;
	line-height:1.4;
}
.event-seminar .txtarear {
	width: 100%;
}
.event-seminar .event-imgbox {
	position: relative;
	border: 1px solid #d1d1d1;
	background: #fff;
	width: 100%;
	margin: 0 0 15px 0;
	padding: 15px;
}
.module .event-seminar .simple {
	margin: 10px 0 0 0;
}




/* products */

.module .keyword ul {
	position: relative;
	width: 100%;
	margin: 0;
	font-size: 0;
}
.module .keyword ul li {
	display: inline-block;
	margin: 0;
	padding: 0;
	font-size: 16px;
	line-height: 1;
}
.keyword ul li:before {
	display: none;
}
.keyword ul li a {
	display: inline-block;
	background: #fff;
	margin: 0 8px 8px 0;
	padding: 14px 16px;
	text-decoration: none;
}
.keyword ul li a:hover {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}




/* investors */

table.basic.schedule tbody {
	display: block;
	padding: 0 0 95px 0;
}
.module table.basic.schedule th {
	padding: 24px 15px;
	line-height: 1.2;
}
.module table.basic.schedule td {
	padding: 0;
	line-height: 1.2;
	white-space: nowrap;
}
table.basic.schedule td div {
	position: relative;
	padding: 24px 40px;
	text-align: center;
	white-space: nowrap;
}
table.basic.schedule td span {
	display: block;
	position: absolute;
	top: 55px;
	left: 50%;
	padding: 40px 0 0 0;
	text-align: center;
	white-space: nowrap;
	-webkit-transform: translate3d(-50%, 0, 0);
	-ms-transform: translate3d(-50%, 0, 0);
	transform: translate3d(-50%, 0, 0);
}
table.basic.schedule td span:before {
	content: "";
	position: absolute;
	bottom: 100%;
	left: 50%;
	border: solid transparent;
	height: 0;
	width: 0;
	pointer-events: none;
	border-color: rgba(46, 59, 78, 0);
	border-bottom-color: #2e3b4e;
	border-width: 6px;
	margin-left: -6px;
}
table.basic.schedule td span:after {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	width: 0;
	height: 35px;
	border-left: 1px solid #2e3b4e;
}
table.basic.schedule td span.long {
	padding: 80px 0 0 0;
}
table.basic.schedule td span.long:after {
	height: 75px;
}

.faq-q {
	position: relative;
	margin: 30px 0 10px 0;
	padding: 0 0 0 34px;
	font-size: 18px;
	font-weight: normal;
	line-height: 1.2;
}
.faq-q:before {
	content: "Q.";
	position: absolute;
	top: -2px;
	left: 0;
	font-size: 24px;
	font-weight: bold;
	line-height: 1;
}
.faq-a {
	padding: 0 0 0 34px;
}




/* casestudy */

.search-case {
	position: relative;
	background: #fff;
	width: 100%;
	padding: 15px;
	line-height: 1;
}
.module .search-case p.title {
	border-bottom: 1px solid #d5d5d5;
	margin: 0 0 10px 0;
	padding: 0 0 8px 0;
	font-size: 18px;
	font-weight: normal;
}
.search-case li {
	color: #5f6a7d;
}
.search-case li:before {
	display: none;
}
.search-case input[type="checkbox"] {
	display: none;
}
.search-case label {
	display: block;
	cursor: pointer;
}
.search-case label span:before {
	content: "";
	display:inline-block;
	background: #fff;
	border: 2px solid #c1c1c1;
	width: 8px;
	height: 8px;
	margin: 2px 8px 4px 0;
	vertical-align: middle;
}
.search-case input[type="checkbox"]:checked + span {
	color: #000;
}
.search-case input[type="checkbox"]:checked + span:before {
	border: 2px solid #004e65;
	background: #458ec7;
}
.search-case .product {
	width: 100%;
	margin: 0 0 15px 0;
}
.search-case .product ul {
	margin: 0 0 15px 0;
}
.module .search-case .product li {
	margin: 0 0 4px 0;
	padding: 0 0 0 10px;
}
.module .search-case .product li.category {
	background: #ebf0f3;
	margin: 0 0 10px 0;
	padding: 10px 10px;
	font-weight: bold;
	color: #2e3b4e;
}
.search-case .industry {
	width: 100%;
}
.module .search-case .industry li {
	float: left;
	width: 50%;
	margin: 0 0 4px 0;
	padding: 0 10px;
}
.module .search-case .send {
	margin: 20px 0 0 0;
}
.search-case .send input {
	border: none;
	background: #666;
	width: 70%;
	height: 50px;
	padding: 0 5px;
	font-size: 14px;
	line-height: 1;
	text-align: center;
	color: #fff;
	cursor: pointer;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	border-radius: 0px;
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;
	-webkit-transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	transition: 0.2s linear;
}

.casestudy-list {
	position: relative;
	width: 100%;
	margin: 20px 0;
}
.casestudy-list &gt; a {
	display: block;
	border-bottom: 1px solid #e1e1e1;
	position: relative;
	float: left;
	width: 100%;
	margin: 0 0 15px 0;
	padding: 0 0 15px 0;
	color: #5f6a7d;
	text-decoration: none;
}
.module .casestudy-list .imgbox {
	border: 1px solid #e1e1e1;
	background: #fff;
	margin: 0 0 10px 0;
}
.casestudy-list h3 {
	margin: 0;
	font-size: 18px;
	font-weight: normal;
	line-height: 1.2;
	color: #2e3b4e;
}
.module .casestudy-list p {
	margin: 10px 0 0 0;
	line-height: 1.7;
}
.module .casestudy-list p.cat {
	display: inline-block;
	background: #fff;
	border: 1px solid #3193cc;
	padding: 10px;
	font-size: 12px;
	line-height: 1.2;
	color: #3193cc;
	text-align: center;
	border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
}

.casestudy-top {
	display: table;
	position: relative;
	background: #f5f5f5;
	width: 100%;
	margin: 0 0 20px 0;
}
.casestudy-top dt {
	display: table-cell;
	background: #004e65;
	width: 80px;
	padding: 10px;
	font-size: 12px;
	font-weight: normal;
	line-height: 1;
	text-align: center;
	color: #fff;
	vertical-align: middle;
	white-space: nowrap;
}
.casestudy-top dd {
	display: table-cell;
	padding: 10px;
	line-height: 1;
	vertical-align: middle;
}
.casestudy-top dd span {
	display: inline-block;
	background: #fff;
	border: 1px solid #3193cc;
	padding: 10px;
	font-size: 12px;
	line-height: 1.2;
	color: #3193cc;
	text-align: center;
	border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
}

.casestudy-main {
	position: relative;
	width: 100%;
	margin: 20px 0 30px 0;
}
.casestudy-main .image {
	width: 100%;
	margin: 0 0 15px 0;
	text-align: center;
}
.casestudy-main .text {
	width: 100%;
}
.casestudy-main h2 {
	border-bottom: 1px solid #7fa6b2;
	padding: 0 0 15px 0;
	font-size: 28px;
	font-weight: normal;
	line-height: 1.2;
}
.casestudy-main h2 span {
	display: block;
	border-bottom: 1px solid #7fa6b2;
	margin: 0 0 15px 0;
	padding: 0 0 10px 0;
	font-size: 20px;
}

.casestudy-voice {
	position: relative;
	width: 100%;
	margin: 0 0 20px 0;
}
.casestudy-voice .image {
	float: right;
	width: 25%;
	min-width: 120px;
	margin: 0 0 10px 10px;
}

.casestudy-profile {
	position: relative;
	background: #f5f5f5;
	width: 100%;
	margin: 0 0 20px 0;
	padding: 15px;
}
.casestudy-profile h4 {
	margin: 0 0 15px 0;
	padding: 0 0 10px 0;
	font-size: 16px;
	line-height: 1.2;
	border-bottom: 1px solid #dbdbdb;
}
.module .casestudy-profile p {
	margin: 0;
}
.module .casestudy-profile .name {
	margin: 0 0 5px 0;
	font-size: 18px;
}
.casestudy-profile .image {
	width: 100%;
	margin: 0 0 10px 0;
	padding: 0 10%;
	text-align: center;
}

.casestudy-leading {
	position: relative;
	width: 100%;
	margin: 0 0 40px 0;
}
.casestudy-leading .image {
	width: 100%;
	margin: 0 0 10px 0;
	padding: 0 10%;
	text-align: center;
}




/* company */

.president-img {
	position: relative;
	top: -10px;
	margin: 0 0 20px 0;
	text-align: center;
}

.module .business-menu {
	margin: 30px 0 0 0;
	text-align: center;
}
.module area,
.module .business-menu img,
.module .business-menu img:focus,
.module .business-menu a,
.module .business-menu a:focus {
	outline: none;
}

.vision-img {
	position: relative;
	top: -10px;
	background: #f8f8f8 url(../img/company/vision-bg.png) center center no-repeat;
	background-size: cover;
	height: 320px;
	height: 60vw;
	margin: 0 0 -10px 0;
	text-align: center;
}
.vision-img h2 {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0 10px;
	font-size: 24px;
	font-size: 7.5vw;
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1.4;
	color: #1caaa7;
	-webkit-transform: translate3d(0, -50%, 0);
	-ms-transform: translate3d(0, -50%, 0);
	transform: translate3d(0, -50%, 0);
}
.module .vision-read {
	margin: 15px 0;
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 1.6;
	color: #0a88c5;
	text-align: center;
}
.vision-column {
	width: 100%;
}
.vision-column &gt; div {
	width: 100%;
	background: #f5f5f5;
	margin: 10px 0 0 0;
	padding: 20px 15px;
}
.module .vision-column dl {
	margin: 0;
	padding: 0;
}
.module .vision-column dt {
	margin: 0 0 10px 0;
	padding: 0;
	font-size: 18px;
	font-weight: normal;
	text-align: center;
}
.module .vision-column dd {
	position: relative;
	margin: 0;
	padding: 0 0 0 12px;
	font-size: 13px;
}
.module .vision-column dd:before {
    position: absolute;
    top: 8px;
    left: 0;
    content: "";
    display: inline-block;
    background: #2e3b4e;
    width: 5px;
    height: 5px;
    vertical-align: middle;
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
}

.global-list {
	position: relative;
	width: 100%;
	margin: 15px 0 30px 0;
}
.module .global-list dt {
	margin: 0 0 8px 0;
	font-size: 16px;
	font-weight: normal;
	line-height: 1.4;
}
.module .global-list dd {
	margin: 0 0 15px 0;
	padding: 0 0 15px 0;
	border-bottom: 1px solid #e7e7e7;
}


/* company-business */

.iot-works {
	position: relative;
	width: 100%;
	margin: 0 auto;
	line-height: 1.4;
}
.iot-works h3 {
	height: 5.3vw;
	font-size: 3.4vw;
	font-weight: normal;
	text-align: center;
	line-height: 1;
}
.module .iot-works p {
	margin: 1vw 0 0 0;
	text-align: center;
	font-size: 1.5vw;
	z-index: 2;
}
.iot-works .things,
.iot-works .cloud {
	position: relative;
	float: left;
	width: 33%;
}
.iot-works .things h3,
.iot-works .cloud h3 {
	color: #3193cc;
}
.iot-works .internet {
	position: relative;
	float: left;
	width: 34%;
}
.iot-works .internet h3 {
	color: #20b6a4;
}
.iot-works .internet p:first-of-type {
	position: absolute;
	top: 6.5vw;
	left: 0;
	width: 100%;
	margin: 0;
}
.iot-works .internet p:last-of-type {
	position: absolute;
	bottom: 0.5vw;
	left: 0;
	width: 100%;
	margin: 0;
}

.iot-forte {
	position: relative;
	background: #004e65 url(../img/company/business-iot-subbg.jpg) center center no-repeat;
	background-size: cover;
	width: 100%;
	margin: 0;
	padding: 50px 0;
}
.pub-forte {
	position: relative;
	background: #004e65 url(../img/company/business-pub-subbg.jpg) center center no-repeat;
	background-size: cover;
	width: 100%;
	margin: 0;
	padding: 50px 0;
}
.net-forte {
	position: relative;
	background: #004e65 url(../img/company/business-net-subbg.jpg) center center no-repeat;
	background-size: cover;
	width: 100%;
	margin: 0;
	padding: 50px 0;
}
.module .iot-forte .head2,
.module .pub-forte .head2,
.module .net-forte .head2 {
	color: #fff;
}
.module .iot-forte .head2:after,
.module .pub-forte .head2:after,
.module .net-forte .head2:after {
	border-top: 1px solid #fff;
}

.forte-list {
	position: relative;
	width: 100%;
}
.forte-list h3 {
	text-align: center;
}
.forte-list img {
	width: 100%;
	max-width: 240px;
}
.forte-list.c2 img,
.forte-list.c1 img {
	width: 100%;
	max-width: 430px;
}
.forte-list &gt; div {
	background: rgba(255,255,255,0.8);
	width: 100%;
	margin: 0 0 15px 0;
	padding: 20px;
}
.module .forte-list &gt; div p {
	margin: 15px 0 0 0;
}
.module p.notes {
	width: 100%;
	max-width: 1020px;
	margin: 0;
	font-size: 12px;
	color: #fff;
}

.case-list {
	position: relative;
	border-top: 1px solid #d5d5d5;
	width: 100%;
	margin: 0 auto;
}
.case-list &gt; div {
	border-bottom: 1px solid #d5d5d5;
	padding: 10px 0 0 0;
}
.case-list h3 {
	margin: 0 0 10px 0;
	font-size: 20px;
	font-weight: normal;
	line-height: 1.2;
}
.case-list h3 div {
	display: block;
	vertical-align: middle;
	background: #5f5f5f;
	width: 65px;
	height: 24px;
	margin: 0 0 5px 0;
	font-size: 10px;
	line-height: 24px;
	text-align: center;
	color: #fff;
}
.case-list h3 div span {
	font-size: 16px;
}
.module .case-list p {
	margin: 0 0 10px 0;
}
.case-list img {
	float: right;
	width: 25%;
	margin: 0 0 10px 30px;
}

.module .solution {
	position: relative;
	width: 100%;
}
.module .solution li {
	width: 100%;
	height: 60px;
	margin: 0 0 10px 0;
	padding: 0;
}
.module .solution li:before {
	display: none;
}
.solution li a,
.solution li div {
	display: block;
	background: #fff;
	width: 100%;
	height: 60px;
	padding: 0 0 0 70px;
	font-size: 14px;
	line-height: 60px;
	text-decoration: none;
	color: #3193cc;
}
.solution li a:before {
	content:"";
	position: absolute;
	top: 50%;
	right: 12px;
	width: 8px;
	height: 8px;
	border-top: 1px solid #3193cc;
	border-right: 1px solid #3193cc;
	margin: -5px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 1;
}
.solution li span {
	position: absolute;
	top: 0;
	left: 0;
	background: #3193cc;
	width: 60px;
	height: 60px;
	overflow: hidden;
}
.solution li span img {
	width: 60px;
}

.pub-vision {
	position: relative;
	width: 100%;
	margin: 0 auto;
}
.pub-vision h3 {
	background: #004e65;
	padding: 20px 10px;
	font-size: 20px;
	font-weight: normal;
	line-height: 1;
	color: #fff;
	text-align: center;
}
.pub-vision &gt; div {
	background: #fff;
	padding: 15px 15px 5px 15px;
}
.module .pub-vision dl {
	background: #e6f5fe;
	width: 100%;
	margin: 0 0 10px 0;
	padding: 0;
}
.module .pub-vision dt {
	position: relative;
	background: #3193cc;
	margin: 0;
	padding: 15px 10px;
	font-size: 16px;
	font-weight: normal;
	line-height: 1;
	color: #fff;
	text-align: center;
}
.module .pub-vision dt:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(49, 147, 204, 0);
	border-top-color: #3193cc;
	border-width: 10px;
	margin-left: -10px;
}
.module .pub-vision dd {
	margin: 0;
	padding: 20px 15px 15px 15px;
	text-align: center;
	line-height: 1.5;
	color: #333;
}
.module .pub-vision dd br {
	display: none;
}
.module .pub-vision dd span {
	display: block;
	background: #fff;
	width: 60px;
	height: 60px;
	margin: 0 auto 10px auto;
	overflow: hidden;
	border-radius: 40px;
	-moz-border-radius: 40px;
	-webkit-border-radius: 40px;
}

.publication-list,
.network-list {
	position: relative;
	width: 100%;
}
.module .publication-list li,
.module .network-list li {
	width: 100%;
	margin: 0 0 10px 0;
	padding: 0;
}
.module .publication-list li:before,
.module .network-list li:before {
	display: none;
}
.module .publication-list li img,
.module .network-list li img {
	width: auto;
	height: 50px;
}
.publication-list a,
.network-list a {
	position: relative;
	display: block;
	border: 1px solid #e4e4e4;
	background: #fff;
	width: 100%;
	padding: 5px 25px 5px 15px;
	text-align: center;
}
.publication-list a:before,
.network-list a:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	width: 9px;
	height: 9px;
	border-top: 1px solid #3093cc;
	border-right: 1px solid #3093cc;
	margin: -6px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 1;
}




/* download */

.dl-menu {
	background: #f5f5f5;
	width: 100%;
	padding: 0;
}
.module .dl-menu li {
	border-bottom: 1px solid #ddd;
	margin: 0;
	padding: 0;
	line-height: 1;
}
.module .dl-menu li:last-child {
	border-bottom: none;
}
.module .dl-menu li:before {
	display: none;
}
.dl-menu li a {
	display: block;
	position: relative;
	padding: 15px;
}
.dl-menu li a:after {
	top: 50%;
	right: 10px;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(204, 204, 204, 0);
	border-top-color: #ccc;
	border-width: 6px;
	margin-top: -3px;
}

.dl-list {
	line-height: 1.6;
}
.dl-list &gt; div {
	display: inline-block ;
	margin: 0 0 15px 0;
}
.dl-list &gt; div:after {
	content: "." ;
	font-size: 0.1em ;
	line-height: 0 ;
	display: block ;
	height: 0 ;
	visibility: hidden ;
	clear: both ;
}
/* \*/
* html .dl-list &gt; div {
    height: 1% ;
}
.dl-list &gt; div {
    display: block ;
}
/* */
.dl-list .dl-img {
	float: left;
	width: 25%;
}
.dl-list .dl-txt {
	margin: 0 0 0 30%;
	font-size: 12px;
}
.module .dl-list .imgbox {
	background: #f5f5f5;
	width: 100%;
	padding: 133.33% 0 0 0;
	border: 1px solid #eee;
}
.module .dl-list .imgbox &gt; img {
	top: 50%;
	left: 50%;
	-webkit-transform: translate3d(-50%, -50%, 0);
	-ms-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
}
.module .dl-list p {
	margin: 10px 0;
}
.module .dl-list ul {
	margin: 0;
	padding: 0;
}
.module .dl-list li {
	margin: 0;
	padding: 0;
}
.module .dl-list li:before {
	display: none;
}
.dl-list .dllink {
	font-size: 14px;
}




/* contact */

.contact-menu {
	position: relative;
	width: 100%;
	margin: 20px 0 0 0;
}
.contact-menu &gt; div {
	background: #f5f5f5;
	width: 100%;
	margin: 0 0 15px 0;
	padding: 20px 25px;
}
.contact-menu &gt; div:nth-child(3n) {
	margin: 0 0 11px 0;
}
.contact-menu &gt; div &gt; div {
	margin: 0 0 12px 0;
	padding: 0 0 1px 0;
}
.contact-menu h2 {
	position: relative;
	display: table;
	width: 100%;
	height: 46px;
	margin: 0;
}
.contact-menu h2:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	display:block;
	background: #bebebe;
	width: 46px;
	height: 46px;
	-webkit-transform: translate3d(0, -50%, 0);
	-ms-transform: translate3d(0, -50%, 0);
	transform: translate3d(0, -50%, 0);
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
}
.contact-menu h2.i01:before {
	background: #bebebe url(../img/contact/contact-icon_01.svg) center center no-repeat;
	background-size: 46px;
}
.contact-menu h2.i02:before {
	background: #bebebe url(../img/contact/contact-icon_02.svg) center center no-repeat;
	background-size: 46px;
}
.contact-menu h2.i03:before {
	background: #bebebe url(../img/contact/contact-icon_03.svg) center center no-repeat;
	background-size: 46px;
}
.contact-menu h2.i04:before {
	background: #bebebe url(../img/contact/contact-icon_04.svg) center center no-repeat;
	background-size: 46px;
}
.contact-menu h2.i05:before {
	background: #bebebe url(../img/contact/contact-icon_05.svg) center center no-repeat;
	background-size: 46px;
}
.contact-menu h2 span {
	display: table-cell;
	width: 100%;
	height: 46px;
	padding: 0 0 0 60px;
	font-size: 18px;
	font-weight: normal;
	line-height: 1.3;
	vertical-align: middle;
}
.module .contact-menu .btn a {
	margin: 0;
	padding: 20px 30px 20px 20px;
	font-size: 14px;
	line-height: 1.2;
}
.module .contact-menu p {
	margin: 10px 0 0 0;
	font-size: 12px;
}

.module ul.contact-flow {
	position: relative;
	border: 1px solid #d5d5d5;
	background: #f5f5f5;
	width: 100%;
	margin: 0 0 40px 0;
	color: #999;
	overflow: hidden;
}
.module ul.contact-flow li {
	position: relative;
	float: left;
	width: 33.3333%;
	margin: 0;
	padding: 10px 0;
	font-size: 10px;
	line-height: 1;
	text-align: center;
}
.module ul.contact-flow li:nth-child(1n) {
	z-index: 3;
}
.module ul.contact-flow li:nth-child(2n) {
	z-index: 2;
}
.module ul.contact-flow li:nth-child(3n) {
	z-index: 1;
}
.module .contact-flow li:before {
	display: none;
}
.module .contact-flow li:after {
	content: "";
	position: absolute;
	top: 0;
	right: -10px;
	background: url(../img/contact/flow_02.png) no-repeat;
	background-size: 100% 100%;
	width: 10px;
	height: 100%;
}
.module .contact-flow li.now {
	background: #004d65;
	color: #fff;
}
.module .contact-flow li.now:after {
	content: "";
	position: absolute;
	top: 0;
	right: -10px;
	background: url(../img/contact/flow_01.png) no-repeat;
	background-size: 100% 100%;
	width: 10px;
	height: 100%;
}
.module .contact-flow li:last-child:after {
	display: none;
}
.module .contact-flow li span {
	position: relative;
	display: block;
	white-space: nowrap;
}
.module .contact-flow li span.no1:before {
	content: "1";
	display: block;
	margin: 0 0 4px 0;
	font-size: 20px;
	text-align: center;
}
.module .contact-flow li span.no2:before {
	content: "2";
	display: block;
	margin: 0 0 4px 0;
	font-size: 20px;
	text-align: center;
}
.module .contact-flow li span.no3:before {
	content: "3";
	display: block;
	margin: 0 0 4px 0;
	font-size: 20px;
	text-align: center;
}

.contact-form {
	position: relative;
	width: 100%;
}
.contact-form table {
	position: relative;
	border-top: 1px solid #e7e7e7;
	width: 100%;
	margin: 0 0 30px 0;
}
.contact-form table th {
	display: block;
	position: relative;
	border-bottom: 1px solid #e7e7e7;
	width: 100%;
	min-height: 40px;
	padding: 10px 50px 10px 0;
	font-weight: normal;
	text-align: left;
	line-height: 1.4;
}
.contact-form table th .required {
	display: block;
	position: absolute;
	top: 9px;
	right: 0;
	background: #45b8a9;
	width: 52px;
	height: 22px;
	font-size: 10px;
	line-height: 22px;
	text-align: center;
	color: #fff;
}
.contact-form table td {
	display: block;
	position: relative;
	vertical-align: middle;
	border-bottom: 1px solid #e7e7e7;
	width: 100%;
	padding: 10px 0 10px 10px;
	text-align: left;
	line-height: 1.4;
}
.contact-form table.check td {
	line-height: 1.6;
}
.contact-form table td div {
	position: relative;
	width: 100%;
}
.module .contact-form  ul {
	margin: 0;
	padding: 0;
}
.module .contact-form li {
	margin: 0;
	padding: 0;
}
.module .contact-form li:before {
	display: none;
}

.contact-form input[type="text"],
.contact-form input[type="tel"],
.contact-form input[type="email"],
.contact-form input[type="url"],
.contact-form textarea,
.contact-form select {
	border: 1px solid #f4f4f4;
	background: #f4f4f4;
	border: none;
	width: 100%;
	padding: 10px;
	font-size: 14px;
	vertical-align: middle;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	border-radius: 0px;
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;
}
.contact-form.nf input[type="text"] {
	width: 70%;
}
.contact-form input[type="submit"].search {
	background: #666;
	border: none;
	width: 20%;
	padding: 10px;
	font-size: 14px;
	vertical-align: middle;
	text-align: center;
	color: #fff;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	border-radius: 0px;
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;
}

.contact-form input[type="checkbox"],
.contact-form input[type="radio"] {
	display: none;
}
.contact-form label {
	display: block;
	margin: 2px 0;
}
.contact-form label span {
	padding-right: 15px;
}
.contact-form label span:before {
	content: "";
	display:inline-block;
	background: #fff;
	border: 2px solid #c1c1c1;
	width: 8px;
	height: 8px;
	margin: 2px 6px 4px 0;
	vertical-align: middle;
}
.contact-form input[type="radio"] + span:before {
	border-radius: 20px;
	-moz-border-radius: 20px;
	-webkit-border-radius: 20px;
}
.contact-form input[type="checkbox"]:checked + span,
.contact-form input[type="radio"]:checked + span {
	color: #000;
}
.contact-form input[type="checkbox"]:checked + span:before,
.contact-form input[type="radio"]:checked + span:before {
	border: 2px solid #004e65;
	background: #458ec7;
}
.contact-form input[type="checkbox"][disabled] + span,
.contact-form input[type="radio"][disabled] + span {
	display: none;
}
.contact-form label input[type="hidden"] + span {
	display: inline-block !important;
	padding-right: 15px;
	color: #000 !important;
}
.contact-form label input[type="hidden"] + span:before {
	border: 2px solid #458ec7 !important;
	background: #fff !important;
}

.module .contact-form .product ul {
	width: 100%;
	margin: 0 0 15px 0;
	padding: 0;
}
.module .contact-form .product li {
	margin: 4px 0 0 0;
	padding: 0 0 0 10px;
}
.module .contact-form .product li.category {
	background: #ebf0f3;
	margin: 0 0 10px 0;
	padding: 8px 10px;
	font-size: 14px;
	color: #2e3b4e;
}
.contact-form .industry {
	width: 100%;
}
.module .contact-form .industry li {
	float: left;
	width: 170px;
	margin: 0 0 5px 0;
	padding: 0 10px;
}
.module .contact-form .send {
	margin: 30px 0 0 0;
}

.module .contact-form .ul3c {
	width: 100%;
	margin: 5px 0 0 0;
}
.module .contact-form .ul3c li {
	margin: 4px 0 0 0;
	padding: 0 0 0 10px;
}

.contact-form .wpcf7-confirm,
.contact-form .wpcf7-submit,
.contact-form .wpcf7-back {
	display: block;
	position: relative;
	border: none;
	background: #3193cc;
	width: 100%;
	margin: 10px 0;
	padding: 24px 20px;
	font-size: 16px;
	font-weight: normal;
	color: #fff;
	text-decoration: none;
	text-align: center;
	line-height: 1;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	border-radius: 0px;
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;
	transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	-webkit-transition: 0.2s linear;
}
.contact-form .wpcf7-back {
	background: #004e65;
}

.custom-wpcf7c-confirmed .contact-form {}
.custom-wpcf7c-confirmed .contact-form input[type="text"],
.custom-wpcf7c-confirmed .contact-form input[type="tel"],
.custom-wpcf7c-confirmed .contact-form input[type="email"],
.custom-wpcf7c-confirmed .contact-form input[type="url"],
.custom-wpcf7c-confirmed .contact-form textarea,
.custom-wpcf7c-confirmed .contact-form select {
	border: 1px solid #fff;
	background: #fff;
}

.information-box {
	border: 1px solid #e7e7e7;
	width: 100%;
	height: 300px;
	margin: 0 0 30px 0;
	padding: 15px;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
}
.information-box li ul,
.information-box li ol {
	margin-top: 10px !important;
	margin-bottom: 10px !important;
}

.rc-anchor-alert,
.rc-anchor {
	z-index: 9999;
}

div.wpcf7-response-output {
    border: 2px solid #e66 !important;
    margin: 20px auto !important;
    padding: 10px !important;
	text-align: center !important;
	color: #222 !important;
}
div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing {
	border: 2px solid #e33 !important;
	color: #e33 !important;
}
div.wpcf7 .ajax-loader {
	display: none !important;
}

span.wpcf7-list-item {
	margin: 0 !important;
}

.wpcf7-form {
	margin-top: -100px;
	padding-top: 100px;
}





/* search */

.search-results {
	width: 100%;
	border: 1px solid #e7e7e7;
	background: #fff;
	padding: 10px 15px;
	line-height: 1.4;
	text-align: center;
}
.search-list {}
.search-list dd {
	border-bottom: 1px solid #e7e7e7;
	padding-left: 1em;
	padding-bottom: 15px;
}



































/* carelis */

.ca-txt {
	position: relative;
	width: 100%;
}
.ca-img {
	position: relative;
	width: 100%;
	margin-top: 25px;
	text-align: center;
	border-bottom: 1px solid #e4e4e4;
	margin: 20px 0 40px 0;
	padding: 0 0 10px 0;
}
.ca-img2 {
	position: relative;
	width: 100%;
	margin-top: 25px;
	text-align: center;
	border-bottom: 1px solid #e4e4e4;
	margin: 20px 0 40px 0;
	padding: 0;
}
.ca-img img,
.ca-img2 img {
	width: 60%;
}
.ca-mb {
	position: relative;
	width: 100%;
	margin-top: 20px;
	text-align: center;
}
.ca-mb img {
	width: 80%;
	margin-bottom: -40px;
}
.border-box.sp-03 {
	border: none;
	margin: 0;
	padding: 0;
}

/* iot */

.about-iot {
	position: relative;
	width: 100%;
	margin: 20px 0 0 0;
}
.about-iot div {
	border-bottom: 1px dotted #ccc;
	width: 100%;
	padding: 15px 0;
	text-align: center;
}
.about-iot div:last-child {
	border-bottom: none;
}
.about-iot h4 {
	margin: 0;
	font-size: 20px;
	font-weight: normal;
	text-align: center;
}
.about-iot h4 img {
	margin: 10px 0;
}
.module .about-iot p {
	margin: 0;
	text-align: left;
}
.about-iot p br {
	display: none;
}

.iot-flow {
	position: relative;
	width: 100%;
	margin: 10px 0 0 0;
}
.iot-flow .image {
	width: 100%;
	margin: 15px 0 10px 0;
}
.iot-flow .text {
	width: 100%;
	margin: 10px 0 15px 0;
}

.iot-discussion {
	width: 90%;
	margin: 20px auto;
}
.module .iot-discussion dl {
	border: 3px solid #444;
	width: 100%;
	margin: 0 0 5px 0;
	padding: 0;
	line-height: 1.2;
}
.module .iot-discussion dt {
	background: #444;
	margin: 0;
	padding: 10px;
	font-size: 16px;
	font-weight: normal;
	text-align: center;
	color: #fff;
}
.module .iot-discussion dd {
	background: #fff;
	margin: 0;
	padding: 15px 10px;
	font-size: 16px;
	font-weight: normal;
	text-align: center;
}

/* entrusted-development */

.ed-flow {
	position: relative;
	width: 100%;
	margin: 20px 0;
	line-height: 1;
	color: #333;
}
.module .ed-flow .flow-list {
	float: left;
	background: #42bbac;
	width: 80%;
	margin: 0;
}
.module .ed-flow .flow-list:after {
	border-top-color: #42bbac;
}
.module .ed-flow .flow-list li {
	background: #42bbac;
}
.module .ed-flow .flow-list li:after {
	border-top-color: #42bbac;
}
.module .ed-flow1,
.module .ed-flow2 {
	position: relative;
	display: block;
	float: left;
	width: 10%;
	padding: 0 0 0 5%;
}
.module .ed-flow1 p {
	position: relative;
	border-left: 2px solid #999;
	width: 100%;
	height: 100%;
	margin: 0;
	text-align: center;
}
.module .ed-flow2 p {
	position: absolute;
	bottom: 0;
	border-left: 2px dotted #999;
	width: 100%;
	height: 58%;
	text-align: center;
}
.module .ed-flow1 p:before,
.module .ed-flow2 p:before {
	content:"";
	position: absolute;
	top: 0;
	left: -5px;
	width: 6px;
	height: 6px;
	border-top: 2px solid #999;
	border-right: 2px solid #999;
	transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	z-index: 1;
}
.module .ed-flow1 p:after,
.module .ed-flow2 p:after {
	content:"";
	position: absolute;
	bottom: 0;
	left: -5px;
	width: 6px;
	height: 6px;
	border-top: 2px solid #999;
	border-right: 2px solid #999;
	transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	-webkit-transform: rotate(135deg);
	z-index: 1;
}
.module .ed-flow1 span,
.module .ed-flow2 span {
	position: absolute;
	display: block;
	background: #fff;
	top: 50%;
	left: -8px;
	width: 14px;
	padding: 5px 0;
	font-size: 14px;
	line-height: 1;
	text-align: center;
	transform: translate3d(0, -50%, 0);
	-ms-transform: translate3d(0, -50%, 0);
	-webkit-transform: translate3d(0, -50%, 0);
	color: #3197ca;
}

.module .icon-list &gt; div {
	position: relative;
	padding-left: 65px;
}
.module .icon-list &gt; div img {
	position: absolute;
	top: 0;
	left: 0;
	width: 55px;
	margin: 0;
}
.module .icon-list &gt; div h4 {
	margin: 0 0 10px 0;
}
.module .icon-list &gt; div p {
	margin: 0;
}

article#tab {
	margin-top:-65px;
	padding-top:65px;
}

.mw_wp_form_send_error {
    color: #ff0000;
    font-size: 16px;
}



/* moduleSiteMap */

.moduleSiteMap .moduleSiteMap-name {
	margin: 30px 0 15px 0;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.2;
	color: #2e3b4e;
}
.moduleSiteMap .moduleSiteMap-txt {
	display: block;
	width: 90%;
	height: 10em;
	border: 1px solid #ccc;
	margin: 15px auto 30px auto;
	padding: 10px;
	font-size: 12px;
	color: #666;
}
.moduleSiteMap .moduleSiteMap-txt:last-child {
	margin: 15px auto 0 auto;
}

.moduleSiteMap .head1 {
	margin: 40px 0 20px 0;
	font-size: 28px;
	font-weight: normal;
	line-height:1.4;
}
.moduleSiteMap .head2 {
	position: relative;
	margin: 40px 0 50px 0;
	padding: 0;
	font-size: 24px;
	font-weight: normal;
	line-height:1.4;
}
.moduleSiteMap .head2:after {
	content:"";
	position: absolute;
	bottom: -22px;
	left: 0;
	width: 50px;
	margin: 0;
	border-top: 1px solid #42bbac;
}
.moduleSiteMap .head2 br {
	display: none;
}
.moduleSiteMap .head2.tc {
	text-align: left !important;
}
/*
.moduleSiteMap .head2.tc:after {
	left: 50%;
	margin: 0 0 0 -25px;
}
*/
.moduleSiteMap .head2 span {
	font-size: 36px;
}
.moduleSiteMap .head3 {
	position: relative;
	border-bottom: 1px solid #d1d1d1;
	margin: 40px 0 20px 0;
	padding: 0 0 15px 0;
	font-size: 20px;
	font-weight: normal;
	line-height:1.2;
}
.moduleSiteMap .head3:after {
	content:"";
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 70px;
	margin: 0;
	border-top: 2px solid #3193cc;
}
.moduleSiteMap .head2.tc {
	text-align: left !important;
}
.moduleSiteMap .head2.tc.other {
	text-align: center !important;
}
.moduleSiteMap .head2.tc.other:after {
	left: 50%;
	margin: 0 0 0 -25px;
}
.moduleSiteMap .head3.library-head {
	margin: -40px 0 20px 0;
	padding: 80px 0 15px 0;
}
.moduleSiteMap .head3.library-head:first-child {
	margin: -60px 0 20px 0 !important;
	padding: 80px 0 15px 0 !important;
}
.moduleSiteMap .head4 {
	position: relative;
	border-bottom: 1px solid #e7e7e7;
	margin: 30px 0 15px 0;
	padding: 0 0 8px 0;
	font-size: 18px;
	font-weight: normal;
	line-height:1.2;
}
.moduleSiteMap .head5 {
	position: relative;
	margin: 30px 0 10px 0;
	font-size: 20px;
	font-weight: normal;
	line-height:1.2;
}
.moduleSiteMap .head5 span {
	padding-right: 10px;
	font-size: 24px;
	font-weight: normal;
	color: #0a88c5;
}
.moduleSiteMap .head6 {
	position: relative;
	border-left: 3px solid #3197ca;
	margin: 25px 0 10px 0;
	padding: 2px 0 2px 12px;
	font-size: 16px;
	font-weight: bold;
	line-height:1.2;
}
.moduleSiteMap .head7 {
	position: relative;
	margin: 25px 0 10px 0;
	font-size: 16px;
	font-weight: bold;
	line-height:1.2;
	color: #3197ca;
}
.moduleSiteMap .head8 {
	position: relative;
	margin: 25px 0 10px 0;
	font-size: 16px;
	font-weight: bold;
	line-height:1.2;
}
.moduleSiteMap h2:first-child,
.moduleSiteMap h3:first-child,
.moduleSiteMap h4:first-child,
.moduleSiteMap h5:first-child,
.moduleSiteMap h6:first-child,
.moduleSiteMap h7:first-child,
.moduleSiteMap h8:first-child {
	margin-top: 0;
}
.moduleSiteMap h2.rss-on {
	padding-right: 35px;
}
.moduleSiteMap h2 .rss {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
}
.moduleSiteMap h2 .rss img {
	width: 30px;
	height: 30px;
}

.moduleSiteMap p {
	margin: 10px 0;
}
.moduleSiteMap p:first-child {
	margin-top: 0;
}
.moduleSiteMap p:last-child {
	margin-bottom: 0;
}

.moduleSiteMap .read {
	border: none;
	margin-bottom: 10px;
	padding: 0;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.4;
	color: #2e3b4e;
}
.moduleSiteMap .read:after {
	display: none;
}
.moduleSiteMap .read + p {
	margin-top: 0;
}

.moduleSiteMap .read2 {
	border: none;
	margin-bottom: 10px;
	padding: 0;
	font-size: 20px;
	font-weight: normal;
	line-height: 1.4;
	color: #2e3b4e;
}
.moduleSiteMap .read2:after {
	display: none;
}
.moduleSiteMap .read2 + p {
	margin-top: 0;
}

.moduleSiteMap .striking {
	margin-top: 20px;
	font-size: 18px;
	color: #2e3b4e;
	line-height: 1.4;
}
.moduleSiteMap .big {
	font-size: 16px;
}
.moduleSiteMap .normal {
	font-size: 14px;
}
.moduleSiteMap .small {
	font-size: 12px;
}

.moduleSiteMap ul {
	margin: 15px 0;
}
.moduleSiteMap ul:first-of-type {
	margin-top: 0;
}
.moduleSiteMap ul:last-of-type {
	margin-bottom: 0;
}
.moduleSiteMap ul li {
	position: relative;
	padding: 0 0 0 1.5em;
}

.moduleSiteMap ul :before {
	content:"";
	position: absolute;
	top: 0.75em;
	left: 0.5em;
	width: 5px;
	height: 5px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}

.moduleSiteMap li:before {
	position: absolute;
	top: 0.75em;
	left: 0.5em;
	background: #2e3b4e;
	width: 5px;
	height: 5px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}

.page_item li:before {
	position: absolute;
	width: 8px;
    height: 1px;
	background: #2e3b4e;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}

.moduleSiteMap ul.notes li:before {
	content:"\203B";
	position: absolute;
	top: 0;
	left: 0;
	background: none;
	width: 1em;
	height: 1em;
	margin: 0;
	border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
}

.moduleSiteMap ul.none li {
	padding: 0 0 0 1em;
}
.moduleSiteMap ul.none li:before {
	display: none;
}

.moduleSiteMap ul.box {
	border: 1px solid #b2d7f7;
	width: 100%;
	padding: 10px;
	line-height: 1.2;
	text-align: center;
	color: #0a88c5;
}
.moduleSiteMap ul.box li {
	display: inline-block;
	position: relative;
	margin: 5px 10px;
	padding: 0;
}
.moduleSiteMap ul.box li:before {
	content:"\30FB";
	position: relative;
	top: auto;
	left: auto;
	background: none;
	width: auto;
	height: auto;
	border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
}

.index .link a,
.moduleSiteMap .link a {
	position: relative;
}
.index .link a:after,
.moduleSiteMap .link a:after {
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	border-top: 1px solid #3093cc;
	border-right: 1px solid #3093cc;
	margin: 2px 8px 4px 6px;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	vertical-align: middle;
	z-index: 1;
}

.index .pdf a,
.moduleSiteMap .pdf a {
	position: relative;
	display: inline-block;
	padding: 0 0 0 20px;
}
.index .pdf a:before,
.moduleSiteMap .pdf a:before {
	content: "";
	position: absolute;
	top: 1px;
	left: 0;
	background: url(../img/icon-pdf.svg) center center no-repeat;
	background-size: 14px 18px;
	width: 14px;
	height: 18px;
	z-index: 1;
}

.index .blank a,
.moduleSiteMap .blank a {
	position: relative;
}
.index .blank a:after,
.moduleSiteMap .blank a:after {
	content: "";
	display: inline-block;
	background: url(../img/icon-blank.svg) center center no-repeat;
	background-size: 12px;
	width: 12px;
	height: 12px;
	margin: 0px 8px 2px 6px;
	vertical-align: middle;
	z-index: 1;
}

.moduleSiteMap .rsslink a {
	position: relative;
	display: inline-block;
	padding: 0 0 0 22px;
}
.moduleSiteMap .rsslink a:before {
	content: "";
	position: absolute;
	top: 2px;
	left: 0;
	background: url(../img/icon-rss2.svg) center center no-repeat;
	background-size: 16px;
	width: 16px;
	height: 16px;
	z-index: 1;
}

.moduleSiteMap .dllink a {
	position: relative;
}
.moduleSiteMap .dllink a:after {
	content: "";
	display: inline-block;
	background: url(../img/icon-dl.svg) center center no-repeat;
	background-size: 14px;
	width: 14px;
	height: 14px;
	margin: 0px 8px 3px 6px;
	vertical-align: middle;
	z-index: 1;
}

.moduleSiteMap ul.link li,
.moduleSiteMap ul.pdf li,
.moduleSiteMap ul.blank li {
	padding: 0;
}
.moduleSiteMap ul.link li:before,
.moduleSiteMap ul.pdf li:before,
.moduleSiteMap ul.blank li:before {
	display: none;
}
.moduleSiteMap ul.link.tr li,
.moduleSiteMap ul.pdf.tr li,
.moduleSiteMap ul.blank.tr li {
	text-align: right;
}

.moduleSiteMap ol {
	counter-reset: num;
	margin: 15px 0;
}
.moduleSiteMap ol:first-of-type {
	margin-top: 0;
}
.moduleSiteMap ol:last-of-type {
	margin-bottom: 0;
}
.moduleSiteMap ol &gt; li {
	position: relative;
	padding: 0 0 0 2.4em;
}
.moduleSiteMap ol &gt; li:before {
	counter-increment: num;
	content: counter(num) " .";
	position: absolute;
	top: 0;
	left: 0;
	width: 1.8em;
	text-align: right;
	text-wrap: none;
	white-space: nowrap;
}

.moduleSiteMap ol.num li {
	margin-left: 1em;
	padding: 0 0 0 2.6em;
}
.moduleSiteMap ol.num li:before {
	content: "("counter(num)")";
	left: 0;
	width: 2em;
	text-align: center;
	white-space: nowrap;
}

.moduleSiteMap ol.notes li {
	padding: 0 0 0 2.8em;
}
.moduleSiteMap ol.notes li:before {
	content: "\203B"counter(num);
	width: 2.5em;
	text-align: left;
	color: #5f6a7d;
	white-space: nowrap;

}

.moduleSiteMap dl {
	margin: 15px 0;
}
.moduleSiteMap dl:first-of-type {
	margin: 0 0 15px 0;
}
.moduleSiteMap dl:last-of-type {
	margin: 15px 0 0 0;
}
.moduleSiteMap dt {
	margin: 15px 0 5px 0;
	margin-bottom: 5px;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.4;
	color: #2e3b4e;
}
.moduleSiteMap dt:first-child {
	margin: 0;
}
.moduleSiteMap dd {
	margin-bottom: 5px;
}
.moduleSiteMap dd:last-of-type {
	margin-bottom: 15px;
}
.moduleSiteMap dl.indent dd {
	position: relative;
	margin: 0 0 0 1.4em;
}
.moduleSiteMap dl.indent dd:before {
	content:"";
	position: absolute;
	top: 0.75em;
	left: -0.85em;
	background: #2e3b4e;
	width: 5px;
	height: 5px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}

.moduleSiteMap .column1,
.moduleSiteMap .column2,
.moduleSiteMap .column3,
.moduleSiteMap .column4 {
	position: relative;
	width: 100%;
	margin-top: 20px;
}
.moduleSiteMap .column1:first-child,
.moduleSiteMap .column2:first-child,
.moduleSiteMap .column3:first-child,
.moduleSiteMap .column4:first-child {
	margin-top: 0;
}
.moduleSiteMap .column1.cb,
.moduleSiteMap .column2.cb,
.moduleSiteMap .column3.cb,
.moduleSiteMap .column4.cb {
	border: 1px solid #d1d1d1;
	background: #f5f5f5;
	padding: 20px;
}
.moduleSiteMap .bg2 .cb {
	background: #fff;
}
.moduleSiteMap .column2 &gt; div,
.moduleSiteMap .column3 &gt; div,
.moduleSiteMap .column4 &gt; div {
	width: 100%;
	margin-bottom: 20px;
}
.moduleSiteMap .column2 &gt; div:last-child,
.moduleSiteMap .column3 &gt; div:last-child,
.moduleSiteMap .column4 &gt; div:last-child {
	margin-bottom: 0;
}

.moduleSiteMap .border-box {
	position: relative;
	max-width: 100%;
	border-bottom: 1px solid #ddd;
	margin: 0 0 40px 0;
	padding: 0 0 40px 0;
}
.moduleSiteMap .border-box.first {
}
.moduleSiteMap .border-box.last {
	margin: 0;
}

.moduleSiteMap figure {
	display: inline-block;
	max-width: 100% !important;
	line-height: 1.5;
	font-size: 12px;
	color: #666;
	text-align: center;
}
.moduleSiteMap figure img {
	display: block;
	max-width: 100%;
}
.moduleSiteMap figure figcaption {
	display: inline-block;
	margin-top: 8px;
	text-align: center;
}

.moduleSiteMap .imgbox {
	position: relative;
	width: 100%;
	margin: 0 auto 15px auto;
	padding: 66% 0 0 0;
	overflow: hidden;
}
.moduleSiteMap .imgbox:last-child {
	margin-bottom: 0px;
}
.moduleSiteMap .imgbox &gt; img {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	width: 100%;
	height: auto;
	-webkit-transform: translate3d(0, -50%, 0);
	-ms-transform: translate3d(0, -50%, 0);
	transform: translate3d(0, -50%, 0);
}

.moduleSiteMap .image-fl,
.moduleSiteMap .image-fr {
	position: relative;
	width: 100%;
	text-align: center;
}

.moduleSiteMap .youtube {
	position: relative;
	width: 100%;
	margin: 0 auto;
	padding: 56.25% 0 0 0;
	overflow: hidden;
}
.moduleSiteMap .youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}
.moduleSiteMap .youtube-wrapper {
	position: relative;
	width: 100%;
	max-width: 768px;
	margin: 0 auto;
}

.moduleSiteMap table {
	position: relative;
	width: 100%;
}
.moduleSiteMap table td {
	word-break: break-all;
}
.moduleSiteMap table.basic {
	display: block;
	width: auto;
	margin: 20px 0;
	padding-bottom: 20px;
	overflow: auto;
	white-space: nowrap;
}
.moduleSiteMap table.basic:after {
	position: absolute;
	left: 0;
	bottom: 4px;
	content: "\203B\53F3\306B\30B9\30AF\30ED\30FC\30EB\3067\304D\307E\3059\2192";
	display: block;
	width: 100%;
	font-size: 10px;
	line-height: 1;
	color: #888;
}
.moduleSiteMap table.basic::-webkit-scrollbar {
	width: 10px;
	height: 10px;
}
.moduleSiteMap table.basic::-webkit-scrollbar-track {
	background: #eee;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}
.moduleSiteMap table.basic::-webkit-scrollbar-thumb {
	background: #999;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}
.moduleSiteMap table.basic tbody {
	display:table;
	width: 100%;
}
.moduleSiteMap table.basic &gt; tr &gt; th,
.moduleSiteMap table.basic &gt; tbody &gt; tr &gt; th {
	vertical-align: middle;
	border: 1px solid #d5d5d5;
	background: #e7f5fb;
	padding: 12px 10px;
	font-weight: normal;
	text-align: left;
	line-height: 1.6;
}
.moduleSiteMap table.basic .table-top th {
	background: #3197ca;
	font-weight: bold;
	text-align: left;
	color: #fff;	
}
.moduleSiteMap table.basic &gt; tr &gt; td,
.moduleSiteMap table.basic &gt; tbody &gt; tr &gt; td {
	vertical-align: middle;
	border: 1px solid #d5d5d5;
	background: #fff;
	padding: 12px 10px;
	font-weight: normal;
	text-align: left;
	line-height: 1.6;
	word-break: break-all;
}
.moduleSiteMap table.basic.light th {
	background: #fff;
	color: #2e3b4e;
}
.moduleSiteMap table.basic.light .table-top th {
	background: #fff;
	text-align: center;
	color: #2e3b4e;
}
.moduleSiteMap table.basic.nosc {
	overflow: visible;
	white-space: normal;
	padding-bottom: 0;
}
.moduleSiteMap table.basic.nosc:after {
	display: none;
}
.moduleSiteMap table.basic.nosc th,
.moduleSiteMap table.basic.nosc td {
	display: block;
	width: 100%;
	margin-top: -1px;
}

.moduleSiteMap table.simple {}
.moduleSiteMap table.simple &gt; tr &gt; th,
.moduleSiteMap table.simple &gt; tbody &gt; tr &gt; th {
	vertical-align: top;
	white-space: nowrap;
	border-bottom: 1px solid #e7e7e7;
	padding: 15px 15px 15px 0;
	font-weight: normal;
	text-align: left;
}
.moduleSiteMap table.simple &gt; tr &gt; td,
.moduleSiteMap table.simple &gt; tbody &gt; tr &gt; td {
	vertical-align: top;
	border-bottom: 1px solid #e7e7e7;
	padding: 15px 0;
	text-align: left;
	word-break: break-all;
}
.moduleSiteMap table.simple.line {
	position: relative;
	width: 100%;
	margin: 0 0 30px 0;
}
.moduleSiteMap table.simple.line &gt; tr &gt; th,
.moduleSiteMap table.simple.line &gt; tbody &gt; tr &gt; th {
	display: inline-block;
	position: relative;
	border-bottom: none;
	width: auto;
	padding: 10px 10px 0 0;
	font-size: 15px;
	font-weight: normal;
	text-align: left;
	color: #2e3b4e;
}
.moduleSiteMap table.simple.line &gt; tr &gt; td,
.moduleSiteMap table.simple.line &gt; tbody &gt; tr &gt; td {
	display: block;
	position: relative;
	border-bottom: none;
	width: 100%;
	padding: 6px 0 0 0;
	text-align: left;
}
.moduleSiteMap table.simple.line &gt; tr &gt; td:last-child,
.moduleSiteMap table.simple.line &gt; tbody &gt; tr &gt; td:last-child {
	border-bottom: 1px solid #e7e7e7;
	padding: 6px 0 10px 0;
}
.moduleSiteMap table.simple table {
	border-top: 1px solid #d5d5d5;
}
.moduleSiteMap table.simple table th {
	display: block;
	width: 100%;
	vertical-align: middle;
	border: 1px solid #d5d5d5;
	border-top: none;
	background: #e7f5fb;
	padding: 10px;
	font-weight: normal;
	text-align: left;
	line-height: 1.6;
}
.moduleSiteMap table.simple table td {
	display: block;
	width: 100%;
	vertical-align: middle;
	border: 1px solid #d5d5d5;
	border-top: none;
	background: #fff;
	padding: 10px;
	font-weight: normal;
	text-align: left;
	line-height: 1.6;
}

.moduleSiteMap .prelusion {
	position: relative;
	width: 100%;
	margin: 20px 0 10px 0;
}
.moduleSiteMap .prelusion &gt; div {
	position: relative;
	background: #fff;
	width: 100%;
	margin: 0 0 10px 0;
}
.moduleSiteMap .prelusion &gt; div &gt; div {
	position: relative;
	border: 1px solid #d5d5d5;
	background: #fff;
	margin: 0 0 -1px 0;
}
.moduleSiteMap .prelusion .image {
	padding: 10px;
	text-align: center;
}
.moduleSiteMap .prelusion .title {
	padding: 10px;
	line-height: 1.5;
	text-align: center;
}
.moduleSiteMap .prelusion .text {
	padding: 10px;
	font-size: 13px;
	line-height: 1.5;
}
.moduleSiteMap .prelusion &gt; div.c2 .image {
	border-bottom: none;
	padding: 10px 10px 5px 10px;
}
.moduleSiteMap .prelusion &gt; div.c2 .image:nth-child(2n) {
	border-top: none;
	padding: 5px 10px 10px 10px;
}

.moduleSiteMap .btn {
	margin: 0;
}
.moduleSiteMap .btn a,
.moduleSiteMap .btn button {
	display: block;
	position: relative;
	border: none;
	background: #3193cc;
	width: 100%;
	margin: 10px 0;
	padding: 24px 30px 24px 20px;
	font-size: 16px;
	font-weight: normal;
	color: #fff;
	text-decoration: none;
	text-align: center;
	line-height: 1;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	border-radius: 0px;
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;
	transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	-webkit-transition: 0.2s linear;
}
.moduleSiteMap .btn a:after,
.moduleSiteMap .btn button:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 15px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	margin: -5px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 1;
}
.moduleSiteMap .btn .blank,
.moduleSiteMap .btn .contact,
.moduleSiteMap .btn .download,
.moduleSiteMap .btn .material,
.moduleSiteMap .btn .people {
	position: relative;
	display: inline-block;
	padding: 0 0 0 46px;
}
.moduleSiteMap .btn .print,
.moduleSiteMap .btn .map {
	position: relative;
	display: inline-block;
	padding: 0 0 0 40px;
}
.moduleSiteMap .btn .blank:before,
.moduleSiteMap .btn .contact:before,
.moduleSiteMap .btn .download:before {
	content:"";
	position: absolute;
	top: 50%;
	left: 0;
	border: 1px solid #fff;
	width: 34px;
	height: 34px;
	margin-top: -17px;
	border-radius: 22px;
	-moz-border-radius: 22px;
	-webkit-border-radius: 22px;
}
.moduleSiteMap .btn .blank:before {
	background: url(../img/icon-blank2.svg) center center no-repeat;
	background-size: 20px;
}
.moduleSiteMap .btn .contact:before {
	background: url(../img/icon-mail2.svg) center center no-repeat;
	background-size: 20px;
}
.moduleSiteMap .btn .download:before {
	background: url(../img/icon-dl2.svg) center center no-repeat;
	background-size: 20px;
}
.moduleSiteMap .btn .material:before,
.moduleSiteMap .btn .people:before {
	content:"";
	position: absolute;
	top: 50%;
	left: 0;
	border: 1px solid #004e65;
	width: 34px;
	height: 34px;
	margin-top: -17px;
	border-radius: 22px;
	-moz-border-radius: 22px;
	-webkit-border-radius: 22px;
}
.moduleSiteMap .btn .material:before {
	background: url(../img/icon-mt.svg) center center no-repeat;
	background-size: 20px;
}
.moduleSiteMap .btn .people:before {
	background: url(../img/icon-pe.svg) center center no-repeat;
	background-size: 20px;
}
.moduleSiteMap .btn .print:before,
.moduleSiteMap .btn .map:before {
	content:"";
	position: absolute;
	top: 50%;
	left: 0;
	background-color: #a5a5a5;
	width: 28px;
	height: 28px;
	margin-top: -14px;
	border-radius: 14px;
	-moz-border-radius: 14px;
	-webkit-border-radius: 14px;
}
.moduleSiteMap .btn .print:before {
	background: #a5a5a5 url(../img/icon-print.svg) center center no-repeat;
	background-size: 14px;
}
.moduleSiteMap .btn .map:before {
	background: #a5a5a5 url(../img/icon-map.svg) center center no-repeat;
	background-size: 16px;
}
.moduleSiteMap .btnmini a {
	display: inline-block;
	position: relative;
	background: #3193cc;
	min-width: 100px;
	padding: 6px 20px 6px 15px;
	font-size: 12px;
	font-weight: normal;
	color: #fff;
	text-decoration: none;
	text-align: center;
	line-height: 1;
	vertical-align: middle;
	white-space: nowrap;
}
.moduleSiteMap .btnmini a:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 7px;
	width: 5px;
	height: 5px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	margin: -3px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 1;
}
.moduleSiteMap a.btnc1 {
	background: #00af9d;
}
.moduleSiteMap a.btnc2 {
	background: #004e65;
}
.moduleSiteMap a.btnc3 {
	border: 1px solid #d5d5d5;
	background: #fff;
	color: #2e3b4e;
}
.moduleSiteMap a.btnc3:after {
	border-top: 2px solid #3193cc;
	border-right: 2px solid #3193cc;
}
.moduleSiteMap a.btnc4 {
	background: #eee;
	color: #2e3b4e;
}
.moduleSiteMap a.btnc4:after {
	border-top: 2px solid #3193cc;
	border-right: 2px solid #3193cc;
}
.moduleSiteMap .btnarea a.btnc4,
.moduleSiteMap .btnarea button.btnc4 {
	padding: 18px 30px 18px 20px;
	font-size: 14px;
}

.moduleSiteMap .pager {
	display: table;
	position: relative;
	width: 100%;
	margin: 20px 0 0 0;
	font-size: 16px;
	text-align: center;
}
.moduleSiteMap .pager p {
	display: table-cell;
	vertical-align: top;
	margin: 0;
	padding: 0;
}
.moduleSiteMap .pager a {
	display: inline-block;
	position: relative;
	height: 40px;
	color: #2e3b4e;
	text-decoration: none;
	line-height: 40px;
}
.moduleSiteMap .pager .prev {
	width: 25%;
	padding: 0;
	text-align: left;
}
.moduleSiteMap .pager .prev a {
	padding: 0 0 0 25px;
	white-space: nowrap;
}
.moduleSiteMap .pager .prev a:before {
	content:"";
	position: absolute;
	top: 50%;
	left: 0;
	background: #004e65;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	z-index: 1;
}
.moduleSiteMap .pager .prev a:after {
	content:"";
	position: absolute;
	top: 50%;
	left: 8px;
	width: 5px;
	height: 5px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	margin: -3px 0 0 0;
	transform: rotate(-135deg);
	-ms-transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
	z-index: 2;
}
.moduleSiteMap .pager .next {
	width: 25%;
	padding: 0;
	text-align: right;
}
.moduleSiteMap .pager .next a {
	padding: 0 25px 0 0;
	white-space: nowrap;
}
.moduleSiteMap .pager .next a:before {
	content:"";
	position: absolute;
	top: 50%;
	right: 0;
	background: #004e65;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	z-index: 1;
}
.moduleSiteMap .pager .next a:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 8px;
	width: 5px;
	height: 5px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	margin: -3px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 2;
}
.moduleSiteMap .pager .page,
.moduleSiteMap .pager .return {
	width: 50%;
	text-align: center;
}
.moduleSiteMap .pager .page a {
	border: 1px solid #e1e1e1;
	background: #fff;
	width: 40px;
	margin: 0 -1px -1px 0;
	line-height: 38px;
	text-align: center;
}
.moduleSiteMap .pager .return a {
	border: 1px solid #e1e1e1;
	background: #fff;
	width: 130px;
	font-size: 14px;
	line-height: 38px;
	text-align: center;
}
.moduleSiteMap .pager .page a.active,
.moduleSiteMap .pager .return a.active {
	background: #e1e1e1;
	color: #fff;
}
.moduleSiteMap .pager .page span.current {
	border: 1px solid #e1e1e1;
	background: #e1e1e1;
	width: 40px;
	margin: 0 -1px -1px 0;
	line-height: 38px;
	text-align: center;
	color: #fff;
}
.moduleSiteMap .pager img {
	vertical-align: middle;
	margin: 0 0 2px 0;
}

.moduleSiteMap .pager .page.search {
	letter-spacing: -.4em;
	width: 100%;
}
.moduleSiteMap .pager .page.search a,
.moduleSiteMap .pager .page.search span {
	letter-spacing:normal;
}
.moduleSiteMap .pager a.prev {
	padding: 0 25px 0 25px;
	white-space: nowrap;
	background:none;
	display:inline;
	border:none;
}
.moduleSiteMap .pager a.prev:before {
	content:"";
	position: absolute;
	top: 50%;
	left: 0;
	background: #004e65;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	z-index: 1;
}
.moduleSiteMap .pager a.prev:after {
	content:"";
	position: absolute;
	top: 50%;
	left: 8px;
	width: 5px;
	height: 5px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	margin: -3px 0 0 0;
	transform: rotate(-135deg);
	-ms-transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
	z-index: 2;
}
.moduleSiteMap .pager a.next {
	padding: 0 25px 0 25px;
	white-space: nowrap;
	background:none;
	display:inline;
	border:none;
	width:25%;
}
.moduleSiteMap .pager a.next:before {
	content:"";
	position: absolute;
	top: 50%;
	right: 0;
	background: #004e65;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	z-index: 1;
}
.moduleSiteMap .pager a.next:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 8px;
	width: 5px;
	height: 5px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	margin: -3px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 2;
}

.moduleSiteMap .search-area {
	position: relative;
	width: 100%;
	margin: 30px 0 0 0;
}
.moduleSiteMap .search-area:first-child {
	margin: 0;
}
.moduleSiteMap .search-area dt {
	position: relative;
	background: #458ec7;
	width: 100%;
	margin: 0;
	padding: 20px;
	font-size: 18px;
	font-weight: normal;
	line-height: 1;
	text-align: center;
	color: #fff;
	cursor: pointer;
}
.moduleSiteMap .search-area dt:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 15px;
	width: 18px;
	border-top: 2px solid #fff;
	margin: -1px 0 0 0;
	z-index: 1;
}
.moduleSiteMap .search-area dt:before {
	content:"";
	position: absolute;
	top: 50%;
	right: 23px;
	height: 18px;
	border-left: 2px solid #fff;
	margin: -9px 0 0 0;
	z-index: 1;
}
.moduleSiteMap .search-area dt.active:before {
	display: none;
}
.moduleSiteMap .search-area dd {
	display: none;
	position: relative;
	background: #f5f5f5;
	width: 100%;
	margin: 0;
	padding: 0;
	color: #2e3b4e;
	line-height: 1.2;
}
.moduleSiteMap .search-area dd.view {
	display: block;
}
.moduleSiteMap .search-area dd p {
	margin: 0;
}

.moduleSiteMap .flow-list {
	position: relative;
	background: #0a88c5;
	width: 100%;
	margin: 10px 0;
	padding: 0;
	z-index: 1;
}
.moduleSiteMap .flow-list li {
	position: relative;
	border-bottom: 2px solid #fff;
	background: #0a88c5;
	width: 100%;
	margin: 0;
	padding: 18px 10px 18px 10px;
	text-align: center;
	line-height: 1.2;
	color: #fff;
}
.moduleSiteMap .flow-list li:after,
.moduleSiteMap .flow-list li:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	border: solid transparent;
	background: none;
	height: 0;
	width: 0;
	pointer-events: none;
	border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	z-index: 1;
}
.moduleSiteMap .flow-list li:after {
	border-color: rgba(10, 136, 197, 0);
	border-top-color: #0a88c5;
	border-width: 10px;
	margin-left: -10px;
}
.moduleSiteMap .flow-list li:before {
	border-color: rgba(255, 255, 255, 0);
	border-top-color: #fff;
	border-width: 13px;
	margin-left: -13px;
}
.moduleSiteMap .flow-list li:last-child:after,
.moduleSiteMap .flow-list li:last-child:before {
	display: none;
}
.moduleSiteMap .flow-list li:last-child {
	border: none;
}
.moduleSiteMap .flow-list.gl {
	background: #dadada;
}
.moduleSiteMap .flow-list.gl:after {
	border-top-color: #dadada;
}
.moduleSiteMap .flow-list.gl li {
	background: #dadada;
}
.moduleSiteMap .flow-list.gl li:after {
	border-top-color: #dadada;
}
.moduleSiteMap .flow-list.gl li.active {
	background: #9f9f9f;
}
.moduleSiteMap .flow-list.gl li.active:after {
	border-top-color: #9f9f9f;
}





.image-menu {
	position: relative;
	width: 100%;
}
.moduleSiteMap .image-menu dl {
	position: relative;
	background: #fff;
	width: 100%;
	margin: 0 0 25px 0;
	padding: 0;
}
.moduleSiteMap .image-menu dl:last-child {
	margin: 0;
}
.moduleSiteMap .image-menu dt {
	margin: 0;
	padding: 0;
}
.image-menu dt .imgbox {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 50% 0 0 0;
	overflow: hidden;
}
.image-menu dt .imgbox &gt; div {
	position: absolute;
	top: 50%;
	left: 50%;
	border: 2px solid #fff;
	width: 70px;
	height: 70px;
	margin: -35px 0 0 -35px;
	border-radius: 35px;
	-moz-border-radius: 35px;
	-webkit-border-radius: 35px;
	overflow: hidden;
	z-index: 2;
}
.image-menu dt a {
	display: block;
	text-decoration: none;
}
.image-menu dt a span {
	position: relative;
	display: block;
	background: #2b2b2b;
	padding: 24px 35px 24px 20px;
	font-size: 18px;
	font-weight: normal;
	line-height: 1.1;
	color: #fff;
}
.image-menu dt a span:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	margin: -6px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 1;
}
.moduleSiteMap .image-menu dd {
	background: #fff;
	margin: 0;
	padding: 15px 20px;
}

.image-menu2 {
	position: relative;
	width: 100%;
}
.image-menu2 &gt; a {
	display: block;
	position: relative;
	float: left;
	background: #fff;
	width: 100%;
	margin: 0 0 20px 0;
	padding: 0;
	text-decoration: none;
}
.image-menu2 .imgbox {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 50% 0 0 0;
	overflow: hidden;
}
.image-menu2 .imgbox &gt; div {
	position: absolute;
	top: 50%;
	left: 50%;
	border: 2px solid #fff;
	width: 60px;
	height: 60px;
	margin: -30px 0 0 -30px;
	border-radius: 30px;
	-moz-border-radius: 30px;
	-webkit-border-radius: 30px;
	overflow: hidden;
	z-index: 2;
}
.moduleSiteMap .image-menu2 dl {
	margin: 0;
	padding: 15px 20px;
}
.moduleSiteMap .image-menu2 dl dt {
	margin: 0 0 6px 0;
	font-size: 18px;
	font-weight: normal;
	line-height: 1.2;
	color: #3193cc;
}
.moduleSiteMap .image-menu2 dl dd {
	margin: 0;
	font-size: 13px;
	font-weight: normal;
	color: #5f6a7d;
}

.image-menu3 {
	position: relative;
	width: 100%;
}
.image-menu3 &gt; a {
	display: block;
	position: relative;
	border: 1px solid #e1e1e1;
	background: #f5f5f5;
	width: 100%;
	margin: 0 0 15px 0;
	padding: 0;
}
.image-menu3 .imgbox {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 50% 0 0 0;
	overflow: hidden;
}
.image-menu3 h3 {
	padding: 10px 15px;
	font-size: 14px;
	font-weight: normal;
	line-height: 1.5;
	color: #3193cc;
}
.image-menu3 h3:after {
	content: "";
	position: relative;
	display: inline-block;
	vertical-align: middle;
	background: url(../img/icon-blank.svg) center center no-repeat;
	background-size: 12px;
	width: 12px;
	height: 12px;
	margin: 0 0 0 5px;
	z-index: 1;
}

.catch-menu {
	position: relative;
	width: 100%;
}
.catch-menu a {
	display: block;
	position: relative;
	border: 1px solid #e4e4e4;
	background: #fff;
	width: 100%;
	margin: 0 0 25px 0;
	padding: 0 0 90px 0;
	text-decoration: none;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
}
.bg2 .catch-menu a {
	border: none;
}
.catch-menu .imgbox,
.index-spmenu .catch-menu .imgbox {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 50% 0 0 0;
	overflow: hidden;
	z-index: 1;
}
.catch-menu .imgbox &gt; img,
.index-spmenu .catch-menu .imgbox &gt; img {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	width: 100%;
	height: auto;
	-webkit-transform: translate3d(0, -50%, 0);
	-ms-transform: translate3d(0, -50%, 0);
	transform: translate3d(0, -50%, 0);
	-webkit-transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	transition: 0.2s linear;
}
.index-spmenu .catch-menu dl,
.moduleSiteMap .catch-menu dl {
	position: absolute;
	left: 0;
	bottom: 0;
	background: #fff;
	width: 100%;
	margin: 0;
	padding: 0;
	z-index: 2;
}
.index-spmenu .catch-menu dl dt,
.moduleSiteMap .catch-menu dl dt {
	width: 100%;
	min-height: 90px;
	margin: 0;
	padding: 35px 15px 25px 15px;
	font-size: 18px;
	font-weight: normal;
	line-height: 1.2;
	text-align: center;
	color: #3193cc;
	-webkit-transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	transition: 0.2s linear;
}
.catch-menu dl dt small {
	font-size: 14px;
}
.catch-menu dl dt span {
	display: block;
	width: 100%;
	margin-top: 5px;
	font-size: 14px;
	line-height: 1.2;
}
.catch-menu dl dt div {
	position: absolute;
	top: -32px;
	left: 50%;
	background: #fff;
	width: 64px;
	height: 64px;
	margin: 0 0 0 -32px;
	padding: 0 ;
	border-radius: 32px;
	-moz-border-radius: 32px;
	-webkit-border-radius: 32px;
	overflow: hidden;
	z-index: 2;
	-webkit-transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	transition: 0.2s linear;
}
.catch-menu dl dt div img {
	margin-top: -64px;
}
.index-spmenu .catch-menu dl dd,
.moduleSiteMap .catch-menu dl dd {
	display: none;
	width: 100%;
	margin: 0;
	padding: 0 15px 15px 15px;
	font-size: 12px;
	line-height: 1.5;
	text-align: center;
	color: #3193cc;
}
.catch-menu a.active .imgbox &gt; img {
	-webkit-transform: scale(1.1,1.1) translate3d(0, -45%, 0);
	-ms-transform: scale(1.1,1.1) translate3d(0, -45%, 0);
	transform: scale(1.1,1.1) translate3d(0, -45%, 0);
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}
.catch-menu a.active dl dt {
	min-height: 80px;
	padding: 40px 15px 10px 15px;
}
.catch-menu a.active dl dt div {
	background: #2e3b4e;
}
.catch-menu a.active dl dt div img {
	margin-top: 0;
}

.catch-menu.c2 a {
	float: left;
	width: 49%;
	margin: 0 2% 10px 0;
	padding: 0 0 45px 0;
}
.catch-menu.c2 a:nth-child(2n) {
	margin: 0 0 10px 0;
}
.catch-menu.c2 dl dt {
	min-height: 45px;
	padding: 17px 10px;
	font-size: 11px;
}
.catch-menu.c2 dl dt small {
	font-size: 9px;
}
.catch-menu.c2 dl dt div {
	position: absolute;
	top: -15px;
	left: 50%;
	background: #fff;
	width: 30px;
	height: 30px;
	margin: 0 0 0 -15px;
	padding: 0 ;
	border-radius: 15px;
	-moz-border-radius: 15px;
	-webkit-border-radius: 15px;
	overflow: hidden;
	z-index: 2;
	-webkit-transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	transition: 0.2s linear;
}
.catch-menu.c2 dl dt div img {
	margin-top: -30px;
}
.catch-menu.c2 dl dd {
	padding: 0 10px 10px 10px;
	font-size: 8px;
}
.catch-menu.c2 a.active dl dt {
	min-height: 40px;
	padding: 22px 10px 7px 10px;
}

.page-menu {
	display: none;
}

.sns-btn {
	width: 100%;
}
.sns-btn.page-top {}
.sns-btn.page-btm {
	margin: 15px 0 30px 0;
}
.sns-btn &gt; div {
	float: left;
	width: 24.25%;
	height: 34px;
	margin: 0 1% 0 0;
}
.sns-btn &gt; div:nth-child(4) {
	float: right;
	margin: 0;
}
.sns-btn &gt; div a {
	display: inline-block;
	background: #ccc;
	width: 100%;
	height: 34px;
	padding: 34px 0 0 0;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	overflow: hidden;
}
.sns-btn .twitter a {
	background: url(../img/sns-x.png) center center no-repeat;
	background-size: cover;
}
.sns-btn .facebook a {
	background: #4065b5 url(../img/sns-facebook.svg) center center no-repeat;
	background-size: 30px;
}
/*.sns-btn .google a {
	background: #dc4a3d url(../img/sns-google.svg) center center no-repeat;
	background-size: 30px;
}*/
.sns-btn .linkedin a {
	background: #0077b5 url(../img/sns-linkedin.svg) center center no-repeat;
	background-size: 30px;
}
.sns-btn .line a {
	background: #00b900 url(../img/sns-line.svg) center center no-repeat;
	background-size: 30px;
}
</pre></body></html>