body {
	background: #fff;
	color: #111;
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "MS PGothic", sans-serif;
	font-size: 17px;
	font-weight: 300;
	line-height: 1.7;
}
p {
	margin-bottom: 20px;
}
ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
ul li {
	font-size: 95%; /* 約16px */
}

/* ----------------------------------------------
	Global Typography
----------------------------------------------- */
h1, h2, h3, h4, h5, h6 {
	margin: 0 0 15px;
}

h1 {
	font-size: 36px;
	font-weight: 600;
	line-height: 1.2;
}
h2 {
	font-size: 30px;
	font-weight: 300;
	line-height: 1.5;
}
h3 {
	font-size: 24px;
	font-weight: 300;
	line-height: 1.5;
}
h4 {
	font-size: 18px;
	font-weight: 300;
	line-height: 1.5;
}
h5 {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
}
h6 {
	line-height: 1.5;
}

/* ----------------------------------------------
	リンク
---------------------------------------------- */
a {
	color: #2552c1;
	text-decoration: none;
	transition: all 0.3s ease 0s;
}
a:hover {
	color: #2552c1;
	text-decoration: none;
}
a:hover, a:active, a:focus:not(:focus-visible) {
	outline: none;
}
a:hover img, a:focus img {
	opacity: 0.8;
}

@media (hover:hover) and (pointer:fine) {
  section a:hover,
  .right-link-area > .text-right:hover {opacity: 0.7;}
}

/* ----------------------------------------------
	色, ボーダー
---------------------------------------------- */
/* site main color
***************************/
.text-blue     {color: #014ea0;}
.text-linkblue {color: #2552c1;}
.text-green    {color: #008000;}
.text-darkgreen  {color: #006934;}
.text-yellowgreen{color: #a0c12c;}

.text-white{color: #fff;}
.text-gray {color: #666;}
.text-sky  {color: #3498db;}
.text-navy {color: #1d4293;}
.text-pink {color: #ad438e;}

/* background
***************************/
.bg-blue  {background-color: #014ea0;}
.bg-green {background-color: #008000;}
.bg-yellowgreen {background-color: #a0c12c;}
.bg-white {background-color: #fff;}
.bg-gray  {background-color: #e4e4e4;}

/* .top-visual & section bg */
.bg-lightgreen {background-color: #edffbe;}
/* table-bg overwrite color */
.bg-lightblue, .table-bg-lightblue {background-color: #d4efff;}

/* border
***************************/
.border-blue {border: 1px solid #014ea0;}


/* ----------------------------------------------
	カラム
---------------------------------------------- */
/* 5カラム */
.col-15, .col-sm-15, .col-md-15, .col-lg-15 {
	position: relative;
	min-height: 1px;
	padding-right: 15px;
	padding-left: 15px;
	width: 100%;
}
@media (min-width: 768px) {
  .col-sm-15 {
	width: 20%;
	flex: 0 0 20%;
  }
}
@media (min-width: 992px) {
  .col-md-15 {
	width: 20%;
	flex: 0 0 20%;
  }
}
@media (min-width: 1200px) {
  .col-lg-15 {
	width: 20%;
	flex: 0 0 20%;
  }
}

/* ----------------------------------------------
	アイコン
---------------------------------------------- */
.icn {
	color: #fff;
	font-size: 17px;
	font-style: normal;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	padding: .3em .5em ;
	width: 10em;
}
.icn-darkgreen {
	background-color: #006934;
	border: 2px solid #006934;
	margin-right: 1rem;
}

/*.icn-event {
  background-color: #fd6e50;
  border: 2px solid #fd6e50;
}
.icn-case {
  background-color: #5074CD;
  border: 2px solid #5074CD;
}
.icn-catalog {
  background-color: #29ABE2;
  border: 2px solid #29ABE2;
}
.icn-news {
  background-color: #febe33;
  border: 2px solid #febe33;
}
.icn-support {
  background-color: #88b933;
  border: 2px solid #88b933;
}
.icn-column {
  background-color: #02728c;
  border: 2px solid #02728c;
}
.icn-end {
  background-color: #FFFFFF;
  border: 1px solid #E51400;
  color: #E51400 !important;
  letter-spacing: 0.2em;
}
.icn-new {
  display: inline-block;
  text-align: center;
  margin-left: 0.5em;
  font-weight: bold;
  font-size: 12px;
  border: none;
  color: #E51400 !important;
  letter-spacing: 0.1em;
  font-style: normal;
}
.no-gutter > [class*='col-'] {
  padding-right: 0;
  padding-left: 0;
}*/

/* ----------------------------------------------
	Wrapper
---------------------------------------------- */
#main-wrapper {
	background: #fff;
}

.content-wrapper {
	overflow: hidden;
}

/* ----------------------------------------------
	ヘッダー
---------------------------------------------- */
#header-top {
  background: #ffffff;
  height: 100px;
}

#brand-logo {
  float: left;
  margin-top: 35px;
  display: flex;
 
}
#brand-logo h1.catch {
  font-size: 13px;
  color: #7d7d7d;
  z-index: 2;
  display: inline-block;
  margin-top: 8px;
  margin-left: 15px;
}
#brand-logo img {
  display: inline-block;
 height: 30px; /* ロゴの高さを調整（必要に応じて変更可） */
}

@media (max-width:441px) {
  #header-logo {
	display: none;
  }
}

/* ----------------------------------------------
	ナビゲーション
---------------------------------------------- */
/* reset */
.navbar-light .navbar-nav .nav-link {
	color: #111;
}
#nav .navbar-nav .dropdown-item {
	white-space: normal;
}
#nav .nav-item > a:focus,
#nav .nav-item > a:hover {color: inherit;}

/* navbar-toggler */
#nav .navbar-toggler {
	border-color: #ccc;
	background-color: #fff;
}
#nav .navbar-toggler:focus:not(:focus-visible) {
	outline:0;
}
#nav .navbar-toggler-icon {
	background-image: url(../img/toggler-icon.png);
}
#nav .navbar-toggler-right {
	margin-right: 0;
	margin-left: auto;
}

/* navbar
*************************/
#nav .container {
	padding: 0 15px;
}
#nav.navbar {
	background-color: #fff;
	padding: 0;
	z-index: 9999;
}
#nav .navbar-nav {
	background-color: #fff;
	width: 100%;
	margin: 0;
	padding: 0;
}
#nav .navbar-nav a,
#nav .navbar-nav a:hover {
	text-decoration: none;
}

/* nav-item, dropdown */
#nav .navbar-nav > .nav-item {
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
	text-align: center;
}
#nav .navbar-nav > .nav-item > a {
	display: block;
	width: 100%;
	padding: .7em 4px;
}

/* dropdown-menu */
#nav .dropdown-menu {
	width: 100%;
	border-radius: 0;
	padding: 0;
	margin-top: -1px;
	transition: all 0.3s ease 0s;
}
#nav .dropdown-menu li {
	border-bottom: 1px dotted #d9e021;
}
	#nav .dropdown-menu li:last-child {
		border-bottom: none;
	}
#nav .dropdown-menu li a {
	display: block;
	color: #111;
	font-size: 14px;
	font-weight: 600;
	line-height: 25px;
	text-indent: -0.4em;
	padding: 8px 18px 7px 28px;
}
#nav .dropdown-menu li a > .fa-angle-right{
	color: #d9e021;
}
#nav .dropdown-menu li a:hover,
#nav .dropdown-menu li a:focus {
	background-color: #ecf7f9;
	color: #006934;
}

/* dropdown open */
#nav .dropdown.open > .dropdown-menu { 
  display: block;
}
#nav .dropdown > .dropdown-menu { 
	display: none;
}

/* navbar fixed, toggler open */
.sticky-nav,
#nav.navbar.open {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	z-index: 9999;
}
	#nav.navbar.open {
		bottom: 0;
		width: 100%;
		overflow: auto;
		padding-bottom: 50px;
	}

/* navbar hover
*************************/
#nav .navbar-nav > .nav-item > a:hover,
#nav .navbar-nav > .nav-item.dropdown.open > a {
	background-color: #d9e021;
	color: #006934;
}
@media (any-pointer:coarse), (hover:none) {
  #nav .navbar-nav > .nav-item:not(.open) > a:hover {
	background-color: #d9e021;
	color: #006934;
  }
}

@media (min-width:768px) {
  #nav.navbar {
	box-shadow: 0 2px 2px rgba(0,0,0,.1);
	padding: 10px 0;
  }
  #nav .navbar-nav > .nav-item {
	display: flex;
	flex: 1;
	border-right: 1px solid #808080;
	padding: 0 5px;
  }
	#nav .navbar-nav > .nav-item.nav-04,
	#nav .navbar-nav > .nav-item.nav-05 {flex:1.2;}
	#nav .navbar-nav > .nav-item:first-child {
		border-left: 1px solid #808080;
	}
  #nav .navbar-nav > .nav-item > a {
	display: flex;
	justify-content: center;
	align-items: center;
  }
  #nav .dropdown-menu {
	min-width: 380px;
	overflow: auto;
  }
	#nav .navbar-nav > .nav-item.nav-05 .dropdown-menu-right {
		right: -2em;
	}	
  /* navbar current, hover
  *************************/
  #nav .navbar-nav > .nav-item > a.current,
  #nav .navbar-nav > .nav-item > a:hover,
  #nav .navbar-nav > .nav-item.dropdown.open > a {
	background-color: #d9e021;
	color: #006934;
	border-radius: 6px;
  }
}
@media (min-width:768px) and (max-width:991.98px) {
  #nav .navbar-nav > .nav-item {
    font-size: 0.75rem;
  }
}
@media (max-width:767.98px) {
  /* ヘッダ固定しない*/
  .sticky-nav {
	position: static;
  }
  #nav.navbar {
	display: block;
	width: 100%;
	padding: 5px 0;
	box-shadow: 0 0 3px rgba(0,0,0,.1);
  }
  #nav .navbar-collapse {
	border: 1px solid #dcdcdc;
	margin-top: 5px;
  }
  #nav .navbar-nav {
    padding: 0 1em;
  }
  #nav .navbar-nav > .nav-item {
	border-bottom: 1px solid #dcdcdc;
  }
	#nav .navbar-nav > .nav-item:last-child {
		border-bottom: none;
	}
  #nav .dropdown-menu {
	border: none;
	margin-top: 0;
  }
  #nav .navbar-nav > .nav-item:last-child .dropdown-menu li:last-child {
	  margin-bottom: 18px;
  }
  #nav .navbar-nav > .nav-item > a {padding: 1em 4px;}
  #nav .dropdown-menu li a {padding: .8em 18px .8em 28px;}
}

/* ----------------------------------------------
	パンくずリスト
---------------------------------------------- */
.breadcrumb-outer,
.breadcrumb {
	background-color: #6B8E23;
	margin: 0;
}
.breadcrumb a,
.breadcrumb .breadcrumb-item {
	color: #fff;
	font-size: .8rem;
}
.breadcrumb-item+.breadcrumb-item::before {
	content: ">";
	color: #fff;
	padding-right: .2em;
}
@media (hover:hover) and (pointer:fine) {
  .breadcrumb a:hover { color: #2552c1;}
}

/* ----------------------------------------------
	上へ戻る
---------------------------------------------- */
#toTop {
	display: none;
	position: fixed;
	right: 30px;
	bottom: 35px;
	width: 35px;
	height: 35px;
	border: none;
	border-radius: 3px;
	box-shadow: 0 0 5px 0 rgba(0,0,0,.3);
	background-color: #fff;
	color: #6B8E23;
	cursor: pointer;
	font-size: 22px;
	line-height: 38px;
	text-align: center;
	z-index: 999;
}
@media (hover:hover) and (pointer:fine){
  #toTop:hover {
	background-color: #323232;
	opacity: .5;
  }
}

/* ----------------------------------------------
	フッター OLD
---------------------------------------------- */
.footer {
	border-top: 20px solid #0000ff;
	background: url(../img/footer.png) no-repeat center;
	background-size: cover;
}

/*.footer */.btn-inquiry {
    background-color: #0000ff;
	border: 1px solid;
    color: #fff;
    font-size: 20px;
    font-weight: 400;
    padding-top: .5em;
}
/* .footer .btn-inquiry:hover {
	color:#212529;
}*/

.footer-widget-section {
	padding: 30px 0 0;
}
.footer-text-wrap {
	text-align: center;
	padding: 0 .3rem;
}
.footer-title {
	font-size: 1.3rem;
	line-height: 1.5;
	margin-bottom: .7rem;
}

/* copyright 
*********************/
.copyright-section {
	background-color: #4b4b4b;
	color: #fff;
	text-align: center;
	padding: 20px 0;
}
.copyright-section a { color: #fff;}
@media (hover:hover) and (pointer:fine) {
  .copyright-section a:hover { color: #2552c1;}
}

.copyright-menu {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.copyright-menu li::before,
.copyright-menu li:last-child::after {
	content:'\FF5C';
	padding: 0 .3rem;
}
.copyright-menu li,
.copyright-section .copytext small {
	font-size: 12px;
}

/* ----------------------------------------------
	HOME トップ（メインビジュアル）
---------------------------------------------- */
#home-top-visual {
	width: 100%;
	text-align: center;
}
#home-top-visual.top-image {
	background: url(../img/dxtop_mv.png) no-repeat center;
	background-size: cover;
	overflow: hidden;
	padding: 80px 0;
}

#home-top-visual .top-visual-text {
	color: #fff;
	font-size: 35px;
	font-weight: bold;
	line-height: 1.5;
	text-shadow: 1px 2px 3px #808080;
	margin-bottom: 0;
}

@media (min-width:768px) {
  #home-top-visual.top-image {
    padding: 100px 0;
  }
}

/* ----------------------------------------------
	Page トップ（ページタイトル）
---------------------------------------------- */
.top-visual {
	background-color: #edffbe;
	padding: 45px 0;
}
.page-title {
	color: #008000;
	font-size: 30px;
	font-weight: 600;
	line-height: 1.5;
	text-align: center;
	margin-bottom: 15px;
}
.lead {
	font-size:1.25rem;
}

/* ---------------------------------------------
	コンテンツ
----------------------------------------------- */
.section-content {
	padding: 45px 0 50px;
}

.section-title {
	font-size: 30px;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	padding: 0 .5em;
	margin-bottom: 35px;
}
@media (max-width:767.98px) {
  .section-title {
	font-size: 24px;
  }
}

/* title, text style
******************************/
.title {
	line-height: 1.5;
	margin: 0 0 15px;
}
	.title.yellowgreen {
		color: #a0c12c;
		border-bottom: 1px solid #a0c12c;
	}
	.title.blue {
		color: #014ea0;
		border-bottom: 1px solid #014ea0;
	}

.i-title {
	font-size: 19px;
	font-weight: bold;
	line-height: 24px;
	margin-bottom: 3rem;
}

.style-h1 {
	font-size: 30px;
	line-height: 1.5;
	font-weight: 600;
}
.style-h2 {
	font-size: 24px;
	line-height: 1.5;
	font-weight: 700;
}
.style-h3 {
	font-size: 21px;
	line-height: 1.5;
	font-weight: bold;
}
.style-h4 {
	font-size: 19px;
	line-height: 1.5;
	font-weight: bold;
}
.style-borderbox {
	display: block;
	border: 3px solid #008000;
 	color: #008000;
	font-size: 1.5rem; /* 24px */
	font-weight: bold;
 	text-align: center;
	padding: 9px 14px;
	margin-top: 20px;
}
.style-li {
	font-size: 95%; /* = ul li, 約16px */
	margin-bottom: 0;
}

/* bootstrap .small は 80% */
.text-smaller {
	font-size: 90%;
}

.text-inherit {
	font-size: inherit;
}

/* インデント
***************************/
.txt-ind1 {
	padding-left: 1em;
	text-indent: -1em;
}
.txt-ind15 {
	padding-left: 1.5em;
	text-indent: -1.5em;
}
.txt-ind2 {
	padding-left: 2em;
	text-indent: -2em;
}
.txt-ind3 {
	padding-left: 3em;
	text-indent: -3em;
}

/* right linktext setting
******************************/
.right-link-area {
	display: flex;
	flex-wrap:wrap;
	justify-content:flex-end;
}
.right-link-area .linkicon {
	padding-right: .5em;
}
.right-link-area > .txt-ind1 {
	padding-left: .7em;
	text-indent: -.7em;
}
.right-link-area > .text-right {
	line-height: 1.2;
	margin: 0 0 .6em 2em;
}

/* ------------------------------
	表
------------------------------ */
.table-layout-fixed {
	table-layout: fixed;
}

.TableBoxSpec {
	width: 100%;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	font-size: 14px;
	line-height: 1.6;
	word-wrap: break-word;
	overflow-wrap: break-word;
}
.TableBoxSpec th {
	background-color: #f2f2f2;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	font-weight: bold;
    padding: 8px 10px;
}
.TableBoxSpec td {
	background-color: #fff;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	padding: 8px 10px;
}

.TableBoxSpec.TableHPEDX td {
	text-align: center;
	font-size: 12px;
}

/* 表の背景色を上書き（tbody, tr, th, td）
***********************************************/
/* .table-bg-lightblue */
.TableBoxSpec .table-bg-lightblue th,
.TableBoxSpec .table-bg-lightblue td {
	background-color: #d4efff !important;
}

/* 行（tr）にアイコンを付与する
***********************************************/
.i-target-tr > th > .i-set {
	display: block;
}
@media (min-width:576px) {
  .i-target-tr > th {
	position: relative;
	padding-left: 2em;
  }
  .i-target-tr > th > .i-set {
	position: absolute;
	top: 50%;
	left: 5px;
	transform: translate(0, -50%);
  }
 
}

/*-----------------------------------------------------------------
		フッター設定 new
-----------------------------------------------------------------*/
.footer {
  border-top: #1A2692 20px solid;
    background: url(../img/gl_footer.png) no-repeat center;
    background-size: cover;
}
.footer-title p{
font-size: 1.3rem;
margin-bottom: 0.6rem;
}
.footer-center{
margin: 0 auto;
}
.footer-text{
     padding: 0 0.3rem;
     margin-bottom: 20px;
  }
.footer-text p{
    font-size: 17px;
    line-height: 1.7;
    text-align: center;
    margin-bottom: 0;
}
.footer-text p.tobt{
    font-size: 20px;
    margin-bottom: 12px;
}

.footer-text .btn-inquiry {
    position: relative;
    background-color: #0000ff;
    border: none;
    color: #ffffff;
    font-size: 20px;
    font-weight: 400;
    padding-top: 0.5em;
    margin-bottom: 12px;
}
.footer-widget-section {
  padding: 30px 0 0 0;
}
.footer-widget-section p{
  font-size: 20px;
}
.footer .footer-logo {
  margin-bottom: 30px;
}
.footer .footer-col {
  border-left: #5074cd 1px solid;
  margin-bottom: 10px;
}
.footer .footer-col ul li {
  font-size: 12px;
  color: #ffffff;
}
.footer .footer-col h6 {
  font-weight: 600;
  margin-bottom: 3px;
  font-size: 14px;
  display: block;
  color: #ffffff;
}
.footer .footer-col a {
  color: #ffffff;
}
.footer .footer-col a:hover {
  color: #a7b9e6 !important;
}
#txt_contact_mail{
    margin-bottom: 12px;
}

@media screen and (max-width : 991px) {
  .footer .footer-logoarea {
    border-bottom: #a1c1e8 1px solid;
    padding-bottom: 15px;
    margin-bottom: 20px;
  }
  .footer .footer-logo {
    margin-bottom: 10px;
    margin-right: 15px;
    display: inline-block;
  }
  .footer .footer-col {
    border-left: none;
    margin-bottom: 10px;
  }
}


.hop_bt:hover{
    opacity: 0.7;
}

.page-top a img {
    width: 90px;
    height: 90px;
    position: fixed;
    bottom: 60px;
    right: 40px;
    z-index: 2;
    display: block;
    text-indent: -3333px;
}



/* Copyright */
.copyright-section {
  margin-top: 20px;
  width: 100%;
  background-color: #1A2692;
  text-align: center;
  display: block;
  padding: 20px 0 32px 0;
}


footer .foot-menu {
  color: #ffffff;
  font-size:16px;
  margin-bottom:12px;
  font-family: 'Noto Sans Japanese',   sans-serif;
  font-weight:700;
  text-align:left;
}
footer .foot-menu a{
  color: #ffffff;
  padding: 20px 10px;
}
footer .foot-menu a:hover{
		text-decoration: underline;
  }
@media (max-width:959px) {
	 .foot-menu a{
		font-size:14px;
  }
  .foot-menu {
	text-align:center;
}
}

.copyright-menu {
  color: #ffffff;
  font-size: 12px;
  padding: 0 0.3rem;
  text-align:left;
}
.copyright-menu a{
  color: #ffffff;
  font-size: 12px;
  text-decoration: underline;
}
.copyright-menu a:hover{
  opacity: 0.5;
  color:#FFF;
}

.copyright-section .copytext {
  color: #ffffff;
  font-size: 14px;
  margin-top:30px ;
}

.copyright{
  text-align:right;
}

.copy-box{
 max-width:860px;
 margin:0 auto;
 background-image: url(../img/img-logo-01.svg);
 background-repeat: no-repeat;
 background-position: right 10px bottom 25px;
 background-size: 100px;
}

@media (max-width:959px) {
  .copy-box{
	padding: 0 10px;
	min-height:120px;
  }
  .copyright{
    text-align:center;
  }
  footer .copyright {
    margin-top: 20px;
    margin-bottom: 0;
}
  
  
}