@charset "utf-8";
/*-----------------------------------------------------------------
	Setting, reset
-----------------------------------------------------------------*/
body {
	background-color: #fff;
	color: #111;
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Arial, "MS PGothic", sans-serif;
	font-size: 16px; /* =1rem */
	font-weight: normal;
	line-height: 1.7;
	width: 100%;
	word-wrap: break-word;
	overflow-wrap: break-word;
	-webkit-text-size-adjust:100%;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main
{ display: block;}
table
{ border-collapse: collapse; border-spacing: 0; font-size: 100%;}
img
{ max-width: 100%; height: auto; vertical-align: top; border: 0; image-rendering: -webkit-optimize-contrast; image-rendering: auto;}
video
{ max-width: 100%; height: auto;}
em
{ font-style: normal; font-weight: bold;}
ul
{ margin: 0; padding: 0; list-style: none;}

/*-----------------------------------------------------------------
	基本構造・スタイル
-----------------------------------------------------------------*/
body {
	display: flex;
}
#bodyWrapper {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	width: 100%;
}
#header, #footer {
	flex-shrink: 0;
	width: 100%;
}
#contentWrapper {
	flex: 1 0 auto;
	min-height: 1px; /* for IE11(img resizing)*/
}
.content {
	margin: 0 auto;
	padding-bottom: 2.5em;
	text-align: left;
	width: 100%;
}

p {
	margin-bottom: 1.2em;
}
figure {
	text-align: center;
	min-height: 1px; /* for IE11 */
}
figcaption, .figcaption {
	color: #323232;
	font-size: 80%;
	font-weight: 400;
	line-height: 1.5;
	text-align: left;
}
.figure-line-box {
	border: 1px solid #ccc;
	border-radius: 5px;
	overflow: hidden;
	padding: 20px 10px;
}
.cap-top {
	color: #323232;
	font-size: 90%;
	font-weight: bold;
}

/* Link
********************************/
a {
	color: #c43252;
	text-decoration: none;
	transition: all 0.3s ease 0s;
}
a:hover, a:active, a:focus:not(:focus-visible) {
	outline: none;
}
a:hover,
#footer a:hover {
	color: #ffa6ca;
	text-decoration: underline;
}
a:hover img, a:focus img {
	opacity: 0.8;
}

.hvop:hover {
	color: #ffa6ca !important;
	text-decoration: underline !important;
	transition: all 0.3s ease 0s;
}

a.nolink, .nolink a {
	pointer-events: none;
	color: inherit;
}

/* Global Typography 
********************************/
h1, h2, h3, h4, h5, h6 {
	margin: 0 0 .8em;
}
h1, .style-h1 { font-size: 28px; line-height: 1.3; font-weight: 300;}
h2, .style-h2 { font-size: 24px; line-height: 1.3; font-weight: 300;}
h3, .style-h3 { font-size: 20px; line-height: 1.4; font-weight: bold;}
h4, .style-h4 { font-size: 18px; line-height: 1.4; font-weight: bold;}
h5, .style-h5 { font-size: 16px; line-height: 1.6; font-weight: bold;}
h6, .style-h6 { font-size: 90%;  line-height: 1.6; font-weight: bold;}
@media (min-width:768px) {
  h1, .style-h1 { font-size:32px;}
  h2, .style-h2 { font-size:29px;}
  h3, .style-h3 { font-size:22px;}
  h4, .style-h4 { font-size:20px;}
  h5, .style-h5 { font-size:18px;}
  h6, .style-h6 { font-size:16px;}
}

.font-smaller {
	font-size: 90%;
	font-weight: normal;
}

.lead-wrap {
	background-color: #f2f2f2;
	padding: 15px 0 13px;
}
.lead {
	line-height: 1.5;
	font-weight: normal;
	margin-bottom: 0;
}
@media (max-width:767.98px) {
  .lead {
	font-size: 1.1rem;
  }
}

/*-----------------------------------------------------------------
	Common Style
-----------------------------------------------------------------*/
.clear { clear: both;}

.textstyle-inherit {
	color: inherit; font-size: inherit; font-weight: inherit; line-height: inherit;
}

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

/* color, background, border
******************************************/
.text-sitecolor { color: #c43252;}
.text-red { color: #e51400;} /* = icon-new color */
.text-blue{ color: #1d2087;} /* = btn-blue color */

.bg-sitecolor { background-color: #c43252;}
.bg-lightgray { background-color: #f2f2f2;}
.bg-white{ background-color: #fff;}
.bg-blue { background-color: #1d2087;}
/* news-info-list : used in icon */
.bg-product-info { background-color: #fa6800;}
.bg-product-press{ background-color: #41853a;}
.bg-product-seminar { background-color: #00a4db;}
.bg-firmware { background-color: #6a00ff;}
.bg-gpres { background-color: #106287;}
/* home : pageimg color */
.bg-giga { background-color: #24b7bd;}
.bg-support { background-color: #ef8a45;}
.bg-localgovtsec { background-color: #e24b6c;}
.bg-logadapter { background-color: #5eabda;}

/* border gray */
.border-6px-gray { border: 6px solid #ddd;}
.border-bold-dotted-gray { border: 2px dotted #ccc;}
.border-top-dotted-gray { border-top: 1px dotted #ccc;}
.border-bottom-dotted-gray { border-bottom: 1px dotted #ccc;}

/* border sitecolor */
.border-top-bold-dotted { border-top: 2px dotted #c43252;}
.border-bottom-bold { border-bottom: 2px solid #c43252;}

/* border + title style */
.border-bottom-titlestyle { /* home use */
	border-bottom: 2px solid #c43252;
	color: #c43252;
	padding-bottom: .3em;
}
/* 
.border-bottom-pagetitle { 
	border-bottom: 3px solid #c43252;
}
*/

/* box, margin, padding
******************************************/
.box-border {
	border: 1px solid #ccc;
	border-radius: .25rem;
	background-color: #fff;
	width: 100%;
	padding: 22px;
}
.box-gray {
	border-radius: .25rem;
	background-color: #f2f2f2;
	width: 100%;
	padding: 22px;
}
.box-padding {
	padding: 22px;
}

.flex-gap15px {gap: 15px 15px;}
.flex-gap30px {gap: 30px 30px;}
@media (min-width:768px) {
  .flex-md-gap15px {gap: 15px 15px;}
  .flex-md-gap30px {gap: 30px 30px;}
}

/* width
******************************************/
.w-1em { width:1em !important;}
.w-15 { width: 15% !important;}
.w-20 { width: 20% !important;}
.w-30 { width: 30% !important;}
.w-35 { width: 35% !important;}
.w-40 { width: 40% !important;}

/* icon, btn, mark
******************************************/
/* アイコン */
.icon {
	display: inline-block;
	color: #fff;
	font-size: 12px;
	font-style: normal;
	line-height: 1;
	text-align: center;
	width: 8.3em;
	padding: .4em .3em .3em;
}
.icon-new-text {
	display: inline-block;
	color: #e51400;
	text-align: center;
	font-size: 80%;
	font-style: normal;
	font-weight: bold;
	margin-left: .5em;
}
.icon-new {
    display:inline-block;
	background-color: #fff;
	border:1px solid #e51400;
	color: #e51400;
	font-size: 80%;
	font-style: normal;
    font-weight: bold;
	vertical-align: middle;
	padding: .1em .3em;
	margin: -.2em 0 0 2px;
}
.icon-pdf:not(img)::after {
	content: '\f1c1';
	font-family: 'Font Awesome 5 Free';
	font-weight: 400;
	font-size: .8em;
	color: #ff7e00;
	margin-left: .5em;
}
.icon-blank > a[target="_blank"]::after,
a[target="_blank"] > .icon-blank:not(img)::after {
	content: '\f35d';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	font-size: .8em;
	color: #ff7e00;
	margin-left: .5em;
}

.icon-link-arrow {
	position: relative;
	padding-right: 1.2em;
}
.icon-link-arrow::after {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0, -50%);
	content: '\f105';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	color: #c43252;
}
/* option = .arrow-align-left */
.icon-link-arrow.arrow-align-left {
	padding-left: 1em;
}
.icon-link-arrow.arrow-align-left::after {
	right: auto;
	left: 2px;
}

/* ボタン */
.btn-white, .btn-blue {
	display: inline-block;
	border: 1px solid #1d2087;
	border-radius: 3px;
	line-height: 1.3;
	text-align: center;
	text-decoration: none;
	padding: .8em .8em .7em;
}
.btn-white{ background-color:#fff; color:#1d2087;}
.btn-blue { background-color:#1d2087; color:#fff;}
/* hover */
.btn-white:hover, .btn-white:focus {
	background-color: #1d2087;
	color: #fff;
	text-decoration: none;
}
.btn-blue:hover, .btn-blue:focus {
	background-color: #fff;
	color: #1d2087;
	text-decoration: none;
}
/* ボタン+リンク矢印 */
.btn-white.icon-link-arrow,
.btn-blue.icon-link-arrow {
	position: relative;
	padding: .8em 2em .7em 1em;
}
.btn-white.icon-link-arrow::after,
.btn-blue.icon-link-arrow::after {
	position: absolute;
	top: 50%;
	right: .8em;
	transform: translate(0, -50%);
	content: '\f105';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	color: #1d2087;
}
.btn-white.icon-link-arrow::after,
.btn-blue.icon-link-arrow:hover::after {
	color: #1d2087;
}
.btn-white.icon-link-arrow:hover::after,
.btn-blue.icon-link-arrow::after {
	color: #fff;
}

/* ボタン+アイコン */
/* btn-img-contact = #headerTop,#contentInquiry only use */
.btn-contact, .btn-img-contact {
	display: inline-block;
	vertical-align: middle;
	background: url('../img/icon/icon_contact_s.png') left 40% no-repeat;
	font-weight: 400;
	padding: .4em 5px .35em 33px;
}
.btn-pdf {
	display: inline-block;
	vertical-align: middle;
	background: url('../img/icon/icon_pdf_s.png') left center no-repeat;
	font-weight: 400;
	padding: .4em 5px .35em 28px;
}
.btn-html {
	display: inline-block;
	vertical-align: middle;
	background: url('../img/icon/icon_html_s.png') left center no-repeat;
	font-weight: 400;
	padding: .4em 5px .35em 28px;
}

/* リストマーク */
/* disc */
.mark-disc,
ul.mark-disc > li,
ol.mark-disc > li {
	position: relative;
	list-style: none;
	line-height: 1.5;
	padding-left: 1.1em;
	margin-bottom: .6em;
}
	ul.mark-disc > li:last-child,
	ol.mark-disc > li:last-child {
		margin-bottom: 1.2em;
	}
	.mark-disc.mb-0 > li:last-child {
		margin-bottom: 0;
	}
.mark-disc::before,
ul.mark-disc > li::before,
ol.mark-disc > li::before {
	display: block;
	position: absolute;
	content: '\25CF'; /* ■\25A0 ●\25CF*/
	speak: none;
	top: 0;
	left: 0;
	color: #999;
}
/* color option = mark-red */
.mark-disc.mark-red::before,
ul.mark-disc.mark-red > li::before,
ol.mark-disc.mark-red > li::before{
	color: #c43252;
}
	ul.mark-disc,
	ol.mark-disc{
		position: static;
		padding-left: 0;
	}
	ul.mark-disc::before,
	ol.mark-disc::before{
		position: static;
		content: '';
	}

/* ポツ */
.mark-disc-s {
	position: relative;
	padding-left: 1em;
}
	.mark-disc-s::before {
		display: block;
		position: absolute;
		content:'・';
		left: 0;
	}
	ul.mark-disc.mark-disc-s > li::before,
	ol.mark-disc.mark-disc-s > li::before {
		content:'・';
		color: #111;
	}

/*----------------------------------------
	テーブル
-----------------------------------------*/
/***【bootstrap setting : border/thead-dark color/table-sm padding】
.table td,.table th {border-top:1px solid #dee2e6}
.table thead th {border-bottom:2px solid #dee2e6}
.table tbody+tbody{border-top:2px solid #dee2e6}
.table-bordered{border:1px solid #dee2e6}
.table-bordered td,.table-bordered th{border:1px solid #dee2e6}
.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}
.table-sm td,.table-sm th{padding:.3rem} 
****/

/* setting change */
.table td,.table th, .table thead th, .table tbody+tbody,
.table-bordered, .table-bordered td,.table-bordered th { border-color: #ccc;}
.table-sm th, .table-sm td { padding: .4rem .6rem;}

.table {
	border-bottom: 1px solid #ccc;
}
.table thead th {
	vertical-align: middle;
	line-height: 1.3;
}
.table th {
	text-align: center;
}
.table th, .table td {
	vertical-align: middle;
}
.table-responsive-sm .table {
	min-width: 500px;
}

/* add setting */
.table .td-bgcolor {
	background-color: #f2f2f2;
}
.table .th-bgcolor.light {
	background-color: #999;
	color: #fff;
}
.table .th-bgcolor:not(.light) {
	background-color: #343a40; /* =.thead-dark */
	border-top: 2px solid #343a40;
	border-bottom: 2px solid #343a40;
	color: #fff;
}

.table-title-bar {
	position: relative;
	background-color: #c43252;
	color: #fff;
	font-size: 1.15rem;
	line-height: 1.3;
	padding: .6rem .6rem .5rem;
	margin-bottom: 0;
}

.table-layout-fixed {
	table-layout: fixed;
	width: 100%;
}

/* table : .style-firmware
******************************************/
.table.style-firmware { font-size: 98%;}
.table.style-firmware th { font-size: 93%;}

.table.style-firmware .th-version,
.table.style-firmware .th-date {width:16%;}

/* 1=.th-version, 2=.th-description, 3=.th-date */
.table.style-firmware tr > td:nth-child(1),
.table.style-firmware tr > td:nth-child(3) {
	text-align:center;
	padding-left: .1em;
	padding-right: .1em;
}
@media (max-width:767.98px) {
  .table.style-firmware tr > td:nth-child(1),
  .table.style-firmware tr > td:nth-child(3) {
	font-size: 88%;
  }
}

/* table : .style-download
******************************************/
.table.style-download { font-size: 98%;}
.table.style-download th { font-size: 93%;}

/* 1=.th-description, 2=.th-2nd-dawnload */
/* 1=.th-title, 2=.th-description, 3=.th-3rd-dawnload */
.table.style-download .th-2nd-dawnload {width:26%;}

.table.style-download .th-title,
.table.style-download .th-3rd-dawnload {width:20%;}

.table.style-download .dl-icon {
	min-width: 60px;
}

/*----------------------------------------
	エフェクト
-----------------------------------------*/
@keyframes slideInRight {
  from {
    opacity: 0;
    transform: translateX(150px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.slideInRight {
  animation-name: slideInRight;
  animation-duration: 1s;
  animation-timing-function: ease-out;
}
@keyframes slideInLeft {
  from {
    opacity: 0;
    transform: translateX(-150px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.slideInLeft {
  animation-name: slideInLeft;
  animation-duration: 1s;
  animation-timing-function: ease-out;
}

/*-----------------------------------------------------------------
	ヘッダ
-----------------------------------------------------------------*/
#headerTop {
	border-top: 5px solid #c43252;
	background: #fff;
	padding: 8px 0;
}
#headerTop .container {
	display: flex;
	align-items: center;
}

#headerTop .top-contact {
	display: table;
	margin-left:auto;
}
#headerTop .top-contact li {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	line-height: 1.4;
	padding: 0 14px;
}
#headerTop .top-contact li:last-child {
	padding-right: 0;
}

/* btn-inquiry */
#headerTop .btn-inquiry {
	display: block;
	border: 1px solid #323232;
	border-radius: 3px;
	background-color: #f2f2f2;
	color: #323232;
	font-size: 13px;
	font-weight: normal;
	line-height: 1.3;
	padding: 7px 12px;	
	margin-bottom: 0;
	width: 230px;
}
@media (hover:hover) and (pointer:fine) {
  #headerTop .btn-inquiry:hover, #headerTop .btn-inquiry:focus {
	background-color: #323232;
	color: #fff;
  }
}

/* logo */
#headerTop .brand-logo img {
	width: 160px;
}
#headerTop .header-logo img {
	width: 78px;
	height: 22px;
}
@media (max-width:991.98px) {
  #headerTop .header-logo img {
	object-fit: cover;
	object-position: 0 50%;
  }
}


@media (min-width:576px) {
  #headerTop .brand-logo img {
	width: 198px;
  }
  #headerTop .header-logo img {
	width: 96px;
	height: 26px;
  }
}
@media (min-width:768px) {
  #headerTop {
	padding: 22px 0;
  }
}
@media (min-width:992px) {
  #headerTop .brand-logo img {
	width: 250px;
  }
  #headerTop .header-logo img {
	width: 190px;
	height: auto;
  }
}

/* ヘッダ固定時のヘッダ高さ差調整（基本jsで設定）
**************************************************/
/* height = 101.875→98.175 */
@media (max-width:575.98px) {
  #header.fixed-top + #contentWrapper > .rgs-breadcrumb-wrap {
	margin-top: -4px;
  }
}
@supports (position: sticky) or (position: -webkit-sticky) {
  .table-sticky {
	position: relative;
	vertical-align: top!important;
  }
  .table-stickymove {
	position: -webkit-sticky;
	position: sticky;
	top: 160px; /* 実際値はjsで変更 */
	margin-top: 40px;
  }
}

/*----------------------------------------
	グローバルナビゲーション
-----------------------------------------*/
/* reset */
.navbar-light .navbar-nav .nav-link {
	color: #111;
}
#gNav .navbar-nav .nav-item * {
	white-space: normal;
}
#gNav .navbar-brand {
	color: #fff;
	font-size: .9rem;
	line-height: 1.2;
	width: calc( 100% - 4.5rem );
	white-space: normal;
}

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

/* toggler open : navbar fixed */
#gNav.navbar.open {
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  overflow: auto;
  padding-bottom: 2em;
  width: 100%;
  z-index: 9999;
}
#gNav.navbar.open .navbar-brand {
	display: none;
}

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

/* navbar
******************************************/
#gNav.navbar {
	box-shadow: 0 2px 5px rgba(0,0,0,.1);
	background-color: #c43252;
	padding: 0;
}
#gNav .container {
	padding: 0 15px;
}
#gNav .navbar-nav {
	background-color: #c43252;
	width: 100%;
	padding: 0;
	margin: 0;
}
#gNav .navbar-nav a,
#gNav .navbar-nav a:hover {
	color: #fff;
	text-decoration: none;
}

/* nav-item, dropdown */
#gNav .navbar-nav > .nav-item {
	font-size: 1rem;
	font-weight: bold;
	line-height: 1.2;
	text-align: center;
}
#gNav .navbar-nav > .nav-item > a {
	display: block;
	width: 100%;
	padding: 14px 2px;
}

/* dropdown-menu */
#gNav .dropdown-menu {
	width: 100%;
	border-radius: 0;
	padding: 0;
	margin-top: -1px;
	transition: all 0.3s ease 0s;
}
#gNav .dropdown-menu li a {
	display: block;
	color: #111;
	font-size: 1rem;
	font-weight: normal;
	line-height: 1.4;
	text-indent: -.35em;
	padding: 10px .8em 8px 1.8em;
}

@media (max-width:767.98px) {
  #gNav.navbar {
	display: block;
	width: 100%;
	padding: 5px 0;
  }
  #gNav .navbar-collapse {
	border: 1px solid #dcdcdc;
	margin-top: 5px;
  }
  #gNav .navbar-nav {
    padding: 0 1em;
  }
  #gNav .navbar-nav > .nav-item {
	border-bottom: 1px solid #dcdcdc;
  }
	#gNav .navbar-nav > .nav-item:last-child {
		border-bottom: none;
	}
  #gNav .dropdown-menu {
	border: none;
	margin-top: 0;
  }
  #gNav .navbar-nav > .nav-item:last-child .dropdown-menu li:last-child {
	  margin-bottom: 1em;
  }
  /* open */
  #gNav .navbar-nav > .nav-item.dropdown.open > a {
	background-color: #fdf7f9;
  }
}
@media (min-width:768px) {
  #gNav .navbar-nav > .nav-item {
	display: flex;
	font-size: 14px;
	padding: 10px 0;
  }
  #gNav .navbar-nav > .nav-item > a {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 8px 2px;
  }
  #gNav .dropdown-menu {
	min-width: 250px;
	overflow: auto;
	margin: -1px 0 0 -2px;
  }
  #gNav .dropdown-menu.dropdown-menu-right {  
	margin: -1px -2px 0 0;
  }
  #gNav .dropdown-menu li a {
	font-size: 14px;
	font-weight: 600;
	font-weight: bold;
  }
  /* hover, open */
  #gNav .dropdown-menu,
  #gNav .navbar-nav > .nav-item > a:hover,
  #gNav .navbar-nav > .nav-item.dropdown.open > a {
	border-radius: 2px;
  }
}
@media (min-width:992px) {
  #gNav .navbar-nav > .nav-item {
	position:relative;
	padding: 10px;
  }
  /* border */
  #gNav .navbar-nav > .nav-item::after,
  #gNav .navbar-nav > .nav-item:first-child::before {
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0, -50%);
	content: '';
	width: 1px;
	height: calc(100% - 20px);
	background-color: #ccc; /* footer = #e24b6c */
  }
  #gNav .navbar-nav > .nav-item::after {right: 0;}
  #gNav .navbar-nav > .nav-item:first-child::before {left: 0;}
}

/* navbar : hover
******************************************/
#gNav .navbar-nav > .nav-item > a:hover,
#gNav .navbar-nav > .nav-item.dropdown.open > a,
#gNav .dropdown-menu li a:hover,
#gNav .dropdown-menu li a:focus {
	background-color: #f9eaee;
	color: #c43252;
}
@media (any-pointer:coarse), (hover:none) {
  #gNav .navbar-nav > .nav-item:not(.open) > a:hover {
	background-color: #c43252;
	color: #fff;
	border-radius: 0;
  }
}

/*-----------------------------------------------------------------
	お問い合わせ
-----------------------------------------------------------------*/
#contentInquiry {
	background-image: url('../img/bg/bg_inquiry.jpg');
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
	color: #fff;
	text-align: center;
	padding: 2.5em 0 2em;
}
#contentInquiry .inquiry-title {
	font-size: 36px;
	line-height: 1.2;
	font-weight: bold;
}
#contentInquiry .tel-number {
	font-size: 22px;
	line-height: 1.4;
	font-weight: normal;
	margin: 1.8rem auto .5rem;
}

#contentInquiry .btn-inquiry {
	display: block;
	border: none;
	border-radius: 3px;
	background-color: #323232;
	color: #fff;
	font-size: 19px;
	font-weight: normal;
	line-height: 1.3;
	padding: .4em 1em;
	margin: 0 auto;
	width: 88%;
}
@media (hover:hover) and (pointer:fine) {
  #contentInquiry .btn-inquiry:hover, #contentInquiry .btn-inquiry:focus {
	background-color: #fff;
	color: #323232;
  }
}

@media (min-width:768px) {
  #contentInquiry .tel-number {
	font-size: 24px;
  }
  #contentInquiry .btn-inquiry {
	font-size: 20px;
	width: 50%;
  }
}

/*-----------------------------------------------------------------
	フッター
-----------------------------------------------------------------*/
#footer {
	background-color: #323232;
	color: #fff;
}
#footer a {
	color: #fff;
}

/* footer-common-links
******************************************/
#footer .footer-common-links {
	text-align: center;
	padding: 2em 0;
}
#footer .footer-common-links li {
	display: inline-block;
	font-size: .9rem;
	line-height: 1.2;
	margin-bottom: .7em;
}
#footer .footer-common-links li::after {
	content: '\FF5C';
	padding: 0 5px;
}

/* copyright
******************************************/
#footer .copyright {
	font-size: 14px;
	text-align: center;
	padding-bottom: 2em;
}

/*----------------------------------------
	footerLinks
-----------------------------------------*/
#footerLinks {
	background: #c43252;
	padding: 2.5em 0 1.5em;
}
#footerLinks .link-item-wrap {
	padding: 0 1em;
}

#footerLinks .link-item {
	display: block;
	border-top: 1px solid #e24b6c;
	font-size: .95rem;
	font-weight: bold;
	padding: .8em 0 .7em;
}
#footerLinks .link-item-child {
	margin-bottom: 1em;
}
#footerLinks .link-item-child li {
	font-size: .8rem;
	line-height: 1.3;
	margin: 0 0 .5em 1px;
}

/* arrow : link text only  */
#footerLinks .link-item:not(.nolink)::after,
#footerLinks .link-item-child li::before {
	position: absolute;
	top: 50%;
	transform: translate(0, -50%);
	content: '\f105';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	color: #e76884;
}
	/* link-item */
	#footerLinks .link-item:not(.nolink)::after {right: 0; font-size: 1.2em;}
	#footerLinks .link-item {position: relative; padding-right: 1em;}
	/* link-item-child */
	#footerLinks .link-item-child li::before {left: 0;}
	#footerLinks .link-item-child li {position: relative; padding-left: 1em;}
	/* hover */
	@media (hover:hover) and (pointer:fine) {
	  #footerLinks .link-item:not(.nolink):hover::after,
	  #footerLinks .link-item-child li:hover::before { color: #ffa6ca;}
	}


@media (min-width:576px) {
  #footerLinks .link-item-wrap {
	padding: 0;
  }
}
@media (min-width:1200px) {
  #footerLinks .link-item {
	font-size: 14px;
  }
  #footerLinks .link-item-child li {
	font-size: 11px;
  }
}

/*-----------------------------------------------------------------
	上へ戻る
-----------------------------------------------------------------*/
#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: rgba(255,255,255,.9);
	color: #c43252;
	cursor: pointer;
	font-size: 22px;
	line-height: 38px;
	text-align: center;
	z-index: 999;
}
@media (hover:hover) and (pointer:fine){
  #toTop:hover {
	background: rgba(50,50,50,.5);
  }
}

/*-----------------------------------------------------------------
	パンくず
-----------------------------------------------------------------*/
.rgs-breadcrumb-wrap {
	background-color: #f2f2f2;
	color: #444;
	padding: .6rem 0 .1rem;
}
.rgs-breadcrumb {
	margin-bottom: 0;
}
.rgs-breadcrumb .menu-item {
	display: inline-block;
	font-size: .9rem;
	line-height: 1.2;
	list-style: none;
	text-align: left;
	vertical-align: middle;
	margin-bottom: .5rem;
}
.rgs-breadcrumb .menu-item + .menu-item {
	padding-left: 1.5em;
	text-indent: -1.7em;
}
.rgs-breadcrumb .menu-item + .menu-item::before {
	content: '\f105';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	color: #999;
	margin: 0 .4rem;
}

/*-----------------------------------------------------------------
	コンテンツタイトル（ページタイトル）
-----------------------------------------------------------------*/
#contentTopTitle {
	width: 100%;
}
#contentTopTitle .page-title {
	display: flex;
	align-items: center;
	border-bottom: 3px solid #c43252;
	padding: 1em 0 .8em;
	margin-bottom: .8em;
}

#contentTopTitle .page-title > .page-icon,
#contentTopTitle .page-title > .page-title-text {
	display: inline-block;
	vertical-align: middle;
}
#contentTopTitle .page-title > .page-icon {
	margin: 0 .1em .1em;
	max-width: 30%;
	max-height: 52px;
	object-fit: contain;
}
@media (min-width:768px) {
  #contentTopTitle .page-title > .page-icon {
	max-width: 18%;
	max-height: 66px;
  }	
}

/*-----------------------------------------------------------------
	コンテンツ（各ページ）
-----------------------------------------------------------------*/
/*----------------------------------------
	ニュースリスト
-----------------------------------------*/
.news-info-list > .entry,
.news-info-list > .entry a {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	width: 100%;
}
.news-info-list > .entry .icon {
	flex-shrink: 0;
}
.news-info-list > .entry .entry-date {
	flex-shrink: 0;
	order: 1;
}
.news-info-list > .entry .entry-text {
	width: 100%;
	order: 2;
}

.news-info-list > .entry {
	border-bottom: 1px solid #e5e5e5;
}
.news-info-list > .entry:not(.nolink) a,
.news-info-list > .entry.nolink {
	position: relative;
	color: #111;
	padding: 1em 1.7em 1em .7em;
}
	/* arrow */
	.news-info-list > .entry:not(.nolink) a::after {
		position: absolute;
		top: 50%;
		right: 8px;
		transform: translate(0, -50%);
		content: '\f105';
		font-family: 'Font Awesome 5 Free';
		font-weight: 900;
		color: #c43252;
	}
	/* hover */
	.news-info-list > .entry:not(.nolink) a:hover,
	.news-info-list > .entry:not(.nolink) a:focus {
		background-color: #f9eaee;
		color: #c43252;
		text-decoration: none;
	}
	.news-info-list > .entry:not(.nolink) a:hover .entry-text,
	.news-info-list > .entry:not(.nolink) a:focus .entry-text {
		text-decoration: underline;
	}

.news-info-list > .entry .entry-date {
	font-size: 90%;
}
.news-info-list > .entry .icon {
	margin: -.1em .8em 0 0;
}
.news-info-list > .entry .entry-text {
	font-size: 95%;
	line-height: 1.5;
	text-align: left;
	max-width: 100%;
	margin: 8px auto 0;
}

@media (min-width:768px) {
  .news-info-list > .entry,
  .news-info-list > .entry a {
	flex-wrap: nowrap;
  }
  .news-info-list > .entry .entry-date {
	order: 0;
  }
  .news-info-list > .entry .icon {
	order: 0;
	margin: -.1em 1.2em 0;
  }
  .news-info-list > .entry .entry-text {
	order: 0;
	flex-grow: 1;
	margin: 0;
  }
}

/*----------------------------------------
	AWS, Azureテキスト
-----------------------------------------*/
/***** 
  use : home, lineup/index.html
******/
.text-aws {
    font-size: 200%;
    font-weight: bold;
}
.text-azure {
	color: #0078d4;
    font-family: "Segoe UI",sans-serif;
	font-size: 120%;
    font-weight: bold;
	line-height: 1.2;
}

/*----------------------------------------
	導入事例一覧 （.content.page-case）
-----------------------------------------*/
.content.page-case .case-box {
	font-size: 14px;
}

.case-box {
	position: relative;
	border: 1px solid #ccc;
	border-radius: .25rem;
	background-color: #fff;
	width: 100%;
}
.case-box-body {
	padding: 20px 20px 0 20px;
}
.case-box img.image {
	width: 100%;
	margin-bottom: 15px;
}
/*業種カテゴリ*/
.img-overlay-topL { /* 画像の左上にアイコン配置 */
	position: absolute;
    top: 20px;
    left: 20px;
	margin: 0;
	z-index: 10;
}
.icondark {
	display: inline-block;
	background: rgba(0,0,0,.5);
	color: #fff;
	font-size: 12px;
	font-style: normal;
	font-weight: normal;
	line-height: 1.2;
	text-align: center;
	padding: .4em .3em .3em .3em;
	float: right;
	width: 12em;
}
.img-overlay-topL2 { /* リンク先なしBOX用 */
	margin-bottom: 18px;
	z-index: 10;
}
.img-overlay-topL2 .icondark {
	border-radius: .25rem .25rem 0 0;
	padding: 7px 0 6px 0;
	margin-bottom: 14px;
	width: 100%;
}

.case-box .case-box-title {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.4;
	letter-spacing: 0.05em;
	text-align: center;
	margin-bottom: 5px;
}
.case-box .case-box-title .icon-name {
	display: inline-block;
	background: url('../img/pageicon_case-detail_s.png') left center no-repeat;
	background-size: 28px;
	line-height: 2em;
	font-weight: bold;
	padding-left: 32px;
	margin-bottom: 10px;
}
	.case-box a .case-box-title {
		color: #000;
	}
	.case-box a:hover .case-box-title {
		color: #c43252;
		text-decoration: underline;
	}

/*機能アイコン*/
.case-box .function {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	width: 100%;
}
.case-box .function > .icon {
	display: inline-block;
	background: url('../img/icon/kazari_01.png') 8px 6px no-repeat #24b7bd;
	color: #fff;
	font-size: 12px;
	font-style: normal;
	line-height: 1;
	text-align: left;
	width: 49%;
	padding: .5em .2em .4em 2em;
	margin-bottom: 5px;
	margin: 0 0 5px 0;
}
@media screen and (min-width:576px) and (max-width:767.98px) {
  .case-box .function > .icon { width: 32.5%;}
}
@media screen and (min-width:992px) and (max-width:1199.98px) {
  .case-box .function > .icon {
	background-image: none;
	padding-left: .3em;
  }
}

.case-box .case-box-body > p {
	text-align: left;
	margin-top: 10px;
	margin-bottom: 15px;
}

.case-box .case-btn-area {
	background: #f2f2f2;
	border-radius: .25rem;
	text-align: center;
	padding: 18px 20px;
}
.content.page-case .case-btn-area > .btn-white {
	display: block;
	border: 1px solid #1d2087;
	border-radius: 3px;
	background-color: #fff;
	color: #1d2087;
	font-size: 13px;
	line-height: 1.3;
	font-weight: 400;
	text-align: center;
	padding: 7px 10px;
	margin-bottom: 0;
}
.content.page-case .case-btn-area > .btn-white:hover,
.content.page-case .case-btn-area > .btn-white:focus {
	background-color: #1d2087;
	color: #fff;
	text-decoration: none;
}

@media screen and (max-width:449.98px) {
  .content.page-case .btn-pdf,
  .content.page-case .btn-html {
	background-image: none;
	padding-left: 0;
  }
}
@media screen and (max-width:767.98px) {
  .case-box-body {
	padding: 15px 15px 0 15px;
  }
  .img-overlay-topL {
    top: 15px;
    left: 15px;
  }
  .content.page-case .case-btn-area {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 18px 15px;
  }
  .content.page-case .case-btn-area > .btn-white {
	width: 49%;
  }
}

/*----------------------------------------
	事例詳細ページ
-----------------------------------------*/
/* インタビュー画像*/
.interviewedR {
	display: block;
	float: right;
	max-width: 180px;
	margin: 0 0 1rem 1.5rem;
}
.interviewedL {
	display: block;
	float: left;
	max-width: 180px;
	margin: 0 1.5rem 1rem 0;
}
@media (max-width:575.98px) {
  .interviewedR {
	  max-width: 148px;
  }
}
.division_name_box {
	background-color: #f2f2f2;
	padding: 10px 8px 10px 10px;
	margin-top: 0;
	width: 100%;
}
.division_name_box p {
	font-size: 70%;
	line-height: 1.5;
	margin-bottom: 0;
}
/* 会社概要*/
.overview {
	position: relative;
	border-top: 2px solid #ccc;
	border-bottom: 2px solid #ccc;
	padding: 20px 0 10px 0;
}
.overview dl {
	font-size: 90%;
}
.overview dt {
	float: left;
	clear: both;
}
.overview dt span {
	display: block;
	background-color: #f2f2f2;
	font-size: 88%;
	line-height: 1;
	text-align: center;
	width: 7.8em;
	padding: .5em .2em .3em .2em;
}
.overview dd {
	margin-bottom: .2rem;
	margin-left: 7.8em;
}

/*----------------------------------------
	FAQページ
-----------------------------------------*/
/* faq-toc */
.faq-toc a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 100%;
	padding: 18px 0 12px;
	padding: 1em 0 .8em;
	color:#c43252;
}
.faq-toc .toc-text  {
	font-size: 18px;
	line-height: 1.2;
	font-weight: 600;
	margin-right: .8em;
}

/* accordion */
.accordion .toc-title {
	background-color: #c43252;
	border-radius: .2rem;
	color: #fff;
	font-size: 19px;
	font-weight: bold;
	line-height: 1.2;
	width: 100%;
	padding: .5em 1em .4em;
	margin-bottom: .8em;
}
.accordion .card,
.accordion .card .card-header,
.accordion .card:not(:first-of-type),
.accordion .card:not(:last-of-type) {
	border: none;
}
.accordion .card .card-header {
	position: relative;
	display: block;
	background-color: #fff;
	color: inherit;
	padding: .5rem;
	margin-bottom: .1rem;
}
.accordion .card .card-header:after,
.accordion .card .card-header[aria-expanded="true"]:after {
	position: absolute;
	top: 50%;
	right: .3rem;
	transform: translate(0, -50%);
	content: '';
	width: 24px;
	height: 24px;
	display: block;
}
	.accordion .card .card-header:after {
		background: url('../img/arw_circle-down.svg') no-repeat bottom right;
	}
	.accordion .card .card-header[aria-expanded="true"]:after {
		background: url('../img/arw_circle-up.svg') no-repeat bottom right;
	}
	/* margin for arw */
	.accordion .card .ques-text-area {	
		margin-right: 2rem;
	}
.accordion .card .card-body {
	border-bottom: 2px dotted #c43252;
	background-color: #fae6e6;
	padding: .6rem 1.25rem;
}

.accordion .card .ques-title {
	display: flex;
	align-items: center;
	font-weight: normal;
	margin: 0;
}
.accordion .card .qa-number,
.accordion .card .qa-text-area {
	font-size: 15px;
	line-height: 1.6;
}
.accordion .card .qa-number {
	color: #c43252;
	font-weight: bold;
	white-space:nowrap;
	min-width: 3.2em;
}
.accordion .card .ans-text-area p:last-child {
	margin-bottom: 0;
}

@media (min-width:576px) {
  .accordion .card .card-header {
	padding: 0.5rem 1.25rem;
  }
  .accordion .card .card-header:after,
  .accordion .card .card-header[aria-expanded="true"]:after {
	right: 1rem;
  }
}	
@media (min-width:768px) {
  .accordion .card .qa-number {	
	margin-right: .8em;
  }
}
@media (min-width:992px) {
  .accordion .card .qa-number {	
	margin-right: 1.4em;
  }
}
@media (min-width:1200px) {
  .accordion .card .qa-number {	
	margin-right: 2.4em;
  }
}

/* FAQ : hover setting
******************************************/
.faq-toc a:hover, .faq-toc a:focus {
	text-decoration: none;
}
.accordion .card .card-header[aria-expanded="false"],
.accordion .card .card-header[aria-expanded="false"] .ques-title {
	text-decoration: none;
}
.accordion .card .card-header[aria-expanded="true"] .ques-title {
	text-decoration: underline #ffa6ca;
}
@media (hover:hover) and (pointer:fine){
  .faq-toc a:hover > .toc-text {
	text-decoration: underline #ffa6ca;
  }
  .accordion .card .card-header:hover .ques-title {
	color: #ffa6ca;
	text-decoration: underline #ffa6ca;
	transition: all 0.3s ease 0s;
  }
}


@media (min-width:768px) {
  #gNav .navbar-nav > .nav-item > a {
		font-size: 12px;
  }
}
@media (min-width:992px) {
  #gNav .navbar-nav > .nav-item > a {
		font-size: 14px;
  }
}
