@charset "utf-8";
/*------------------------------------------------------------
	書式設定
------------------------------------------------------------*/
/* テキストの位置 */
.taLeft { text-align: left !important; }
.taCenter { text-align: center !important; }
.taRight { text-align: right !important; }

/* フォントの大きさ（プラス） */
.fsP1 { font-size: 1.08em !important; }
.fsP2 { font-size: 1.16em !important; }
.fsP3 { font-size: 1.24em !important; }
.fsP4 { font-size: 1.32em !important; }
.fsP5 { font-size: 1.4em !important; }

/* フォントの大きさ（マイナス） */
.fsM1 { font-size: 0.92em !important; }
.fsM2 { font-size: 0.84em !important; }
.fsM3 { font-size: 0.76em !important; }
.fsM4 { font-size: 0.68em !important; }
.fsM5 { font-size: 0.6em !important; }

/* フォントの太さ */
.fwNormal { font-weight: normal !important; }
.fwBold { font-weight: bold !important; }

/*------------------------------------------------------------
	微調整用クラス（※多用しないこと）
------------------------------------------------------------*/
.mt0 { margin-top: 0 !important; }
.mt5 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt30 { margin-top: 30px !important; }
.mt60 { margin-top: 60px !important; }
.mb0 { margin-bottom: 0 !important; }
.mb5 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb60 { margin-bottom: 60px !important; }
.pt0 { padding-top: 0 !important; }
.pt10 { padding-top: 10px !important; }
.pt30 { padding-top: 30px !important; }
.pb0 { padding-bottom: 0 !important; }
.t_center{ text-align:center !important;}


/*------------------------------------------------------------
	幅調整
------------------------------------------------------------*/
.w-0 { width: 0 !important; }
.w-5 { width: 5% !important; }
.w-10 { width: 10% !important; }
.w-15 { width: 15% !important; }
.w-20 { width: 20% !important; }
.w-25 { width: 25% !important; }
.w-30 { width: 30% !important; }
.w-35 { width: 35% !important; }
.w-40 { width: 40% !important; }
.w-45 { width: 45% !important; }
.w-50 { width: 50% !important; }
.w-55 { width: 55% !important; }
.w-60 { width: 60% !important; }
.w-65 { width: 65% !important; }
.w-70 { width: 70% !important; }
.w-75 { width: 75% !important; }
.w-80 { width: 80% !important; }
.w-85 { width: 85% !important; }
.w-90 { width: 90% !important; }
.w-95 { width: 95% !important; }
.w-100 { width: 100% !important; }


/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
	* html .clearfix {
		zoom: 1;
	}

	*+html .clearfix {
		zoom: 1;
	}

.clearfix:after {
	height: 0;
	visibility: hidden;
	content: ".";
	display: block;
	clear: both;
}
/*------------------------------------------------------------
  背景色
------------------------------------------------------------*/
.bg_blue {
  background-color: #D5E7FF !important;
}
.bg_gray {
  background-color: #F2F2F2 !important;
}
.bg_green {
  background-color: #C4E6EA !important;
}
.bg_white {
  background-color: #FFF !important;
}

/*------------------------------------------------------------
  文字色
------------------------------------------------------------*/
.fc_navy {
  color: #002b62;
}

/*------------------------------------------------------------
	リンク・インプットをタップ時のクラス
------------------------------------------------------------*/
a.tapCtrl, input.tapCtrl,
.tapCtrl a, .tapCtrl input {
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}

.tap {

}

/*------------------------------------------------------------
	common
------------------------------------------------------------*/
.headLine01 {
	margin-bottom: 48px;
	font-size: 30px;
	text-align: center;
}

.headLine01 img {
	margin-right: 20px;
	vertical-align: -10px;
}

.headLine02 {
	margin-bottom: 23px;
	padding-bottom: 7px;
	font-size: 24px;
	border-bottom: 2px solid #042F5F;
}

.headLine02 span {
	padding: 4px 25px 2px;
	display: inline-block;
	color: #fff;
	text-align: center;
	font-size: 20px;
	margin-right: 5px;
	background-color: #052F5F;
	border-radius: 20px;
	vertical-align: 3px;
	box-sizing: border-box;
}

.headLine02 .textSpan {
	margin-left: 5px;
}

.headLine03 {
	margin-bottom: 40px;
	padding-left: 20px;
	font-size: 25px;
	border-left: 10px solid #052f5f;
}

.headLine04 {
	font-size: 20px;
}

.headLine05 {
	margin: 0 auto 30px;
	padding-bottom: 5px;
	width: 1200px;
	font-size: 25px;
	color: #002060;
	border-bottom: 1px dotted #002060;
}

.headLine06 {
	margin-bottom: 10px;
	color: #042f5f;
	font-size: 24px;
}

.headLine07 span {
	border-radius: 0;
}

.headLine08 {
	border-bottom: none;
}

.headLine08 span {
	margin-bottom: 10px;
	padding: 8px 25px 6px;
	border-radius: 0;
	font-size: 24px;
}

.headLine09 {
	font-size: 30px;
	color: #fff;
}
.headLine09 img {
	margin-right: 20px;
	vertical-align: middle;
}
.headLine09 .textSpan {
	font-size: 16px;
	font-weight: normal;
}

.headLine10 {
	margin-bottom: 23px;
	padding-bottom: 7px;
	font-size: 21px;
	border-bottom: 1px solid #666;
}

.headLine11 {
	margin-bottom: 10px;
	color: #042f5f;
	font-size: 18px;
}

.headLine12 {
	margin-bottom: 20px;
	font-size: 16px;
	font-weight: normal;
}

.headLine12 span {
	padding: 4px 25px 2px;
	display: inline-block;
	color: #fff;
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	margin-right: 10px;
	background-color: #052F5F;
	vertical-align: 3px;
	box-sizing: border-box;
}

.headLine13 {
	margin-bottom: 20px;
	padding-bottom: 7px;
	font-size: 22px;
	font-weight: bold;
	border-bottom: 1px solid #666;
}
.headLine13 span {
	padding: 4px 25px 2px;
	display: inline-block;
	color: #fff;
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	margin-right: 10px;
	background-color: #052F5F;
	vertical-align: 3px;
	box-sizing: border-box;
}
.headLine13 small {
	font-size: 16px;
	font-weight: normal;
	margin-left: 10px;
}

.headLine14 {
  margin-bottom: 24px;
  border-bottom: 3px solid #002b62;
  color: #002b62;
  font-size: 24px;
}

.comLink {
	width: 200px;
}

.comLink a {
	padding: 15px 20px 12px;
	display: block;
	font-size: 14px;
	color: #fff;
	font-weight: bold;
	position: relative;
	text-decoration: none;
	background-color: #4A5880;
}
.comLink.green a {
	background-color: #419b91;
}
.comLink.orange a {
	background-color: #eb6e00;
}

.comLink a:after {
	width: 10px;
	height: 16px;
	margin-top: -8px;
	background: url(../../img/common/icon01.png) no-repeat right top;
	position: absolute;
	top: 50%;
	right: 10px;
	content: "";
}

.comLink a:hover {
	filter: alpha(opacity=70);
	opacity: 0.7;
}

.blankLink {
  position: relative;
}
.blankLink a {
  padding-left: 36px;
}
.blankLink a::before {
  content: "";
  display: inline-block;
	position: absolute;
	top: 0;
	right: auto;
	bottom: 0;
	left: 10px;
	width: 16px;
	height: 16px;
	margin: auto;
	background: url(../../img/common/_blank_f.png) no-repeat 0 0;
	background-size: contain;
}
.blankLink02 a {
	text-decoration: underline;
}
.blankLink02 a:hover {
  text-decoration: none;
}
.blankLink02 a::before {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-right: 8px;
	background: url(../../img/common/_blank.png) no-repeat 0 0;
	background-size: contain;
	vertical-align: middle;
}

.systemUl .comLink {
	width: 180px;
	margin: 25px auto 0;
}

.systemUl .comLink a {
	padding: 15px 20px 12px;
	display: block;
	font-size: 14px;
	color: #fff;
	font-weight: bold;
	position: relative;
	text-decoration: none;
	background-color: #4A5880;
}

.systemUl .comLink a:after {
	width: 10px;
	height: 16px;
	margin-top: -8px;
	background: url(../../img/common/icon01.png) no-repeat right top;
	position: absolute;
	top: 50%;
	right: 10px;
	content: "";
}

.systemUl .comLink a:hover {
	filter: alpha(opacity=70);
	opacity: 0.7;
}

.comLink01 a {
	border: 2px solid #fff;
}

a.txtLink {
	text-decoration: underline;
}
a.txtLink:hover {
	text-decoration: none;
}

/* scroll-top */
.scroll-top {
  position: fixed;
  right: 0;
  bottom: 40px;
  margin: 0;
  text-align: right;
}
.scroll-top a {
    display: inline-block;
    position: relative;
    padding: 10px 10px 10px 36px;
    background-color: #646e74;
    color: #fff;
    font-size: 12px;
    line-height: 1;
    text-decoration: none
  }
.scroll-top a:hover {
  opacity: .8;
}
.scroll-top a::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 10px;
  width: 16px;
  height: 16px;
  margin-top: -4px;
  border-top: 1px solid;
  border-right: 1px solid;
  border-color: #fff #fff transparent transparent;
    -webkit-transform: rotate(-45deg);
                -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
}
@media (max-width: 767px) {
  .scroll-top {
    display: block;
    position: relative;
    bottom: auto;
    margin: 10px 0;
  }
}

#main .comImgBoxL {
	margin-bottom: 43px;
}

#main .comImgBoxL .photoBox {
	float: left;
}

#main .comImgBoxL .photoBox a:hover img {
	filter: alpha(opacity=70);
	opacity: 0.7;
}

#main .comImgBoxL .textBox {
	padding: 38px 30px 0 0;
	float: right;
	width: 570px;
  box-sizing: content-box; /* special-2021.css対応 */
}

#main .comImgBoxL .textBox .textImg {
	margin-bottom: 20px;
}

#main .comImgBoxL .textBox .title {
	margin: 0 0 24px;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.1;
}

#main .comImgBoxL .textBox .title a {
	display: inline-block;
	text-decoration: none;
	border-bottom: 2px solid #747474;
}

#main .comImgBoxL .textBox .title a:hover {
	padding-bottom: 2px;
	border-bottom: none;
}
#main .comImgBoxL .textBox .title a.multiple,
#main .comImgBoxR .textBox .title a.multiple {
	display: inline;
	line-height: 1.6;
}
#main .comImgBoxL .textBox p {
	margin-bottom: 32px;
	line-height: 1.75;
}

#main .comImgBoxL .textBox .text07 {
	letter-spacing: -0.2px;
}

#main .comImgBoxL .textBox p:last-child {
	margin-bottom: 0;
}

#main .comImgBoxL .textBox p .textSpan {
	font-weight: bold;
	display: block;
	font-size: 20px;
}

#main .comImgBoxL .textBox dl {
	width: 100%;
	display: table;
}

#main .comImgBoxL .textBox .dlStyle {
	margin-bottom: 10px;
}

#main .comImgBoxL .textBox dt {
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	width: 84px;
}

#main .comImgBoxL .textBox .dlStyle dt img {
	margin-left: 8px;
	width: 60px;
}

#main .comImgBoxL .textBox dd {
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	padding: 0 0 15px 15px;
}

#main .industry .comImgBoxL .textBox {
	padding-right: 20px;
	width: 580px;
}

#main .comImgBoxL02 .photoBox {
	width: 540px;
	text-align: center;
}

#main .comImgBoxL02 .photoBox .photoSpan {
	margin-bottom: 30px;
	display: block;
}

#main .comImgBoxR {
	margin-bottom: 33px;
}

#main .comImgBoxR .photoBox {
	float: right;
}

#main .comImgBoxR .photoBox a:hover img {
	filter: alpha(opacity=70);
	opacity: 0.7;
}

#main .comImgBoxR .textBox {
	padding: 38px 0 0 0;
	float: left;
	width: 600px;
}

#main .comImgBoxR .textBox .title {
	margin-bottom: 24px;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.1;
}

#main .comImgBoxR .textBox .title a {
	display: inline-block;
	text-decoration: none;
	border-bottom: 2px solid #747474;
}

#main .comImgBoxR .textBox .title a:hover {
	border-bottom: none;
	padding-bottom: 2px;
}

#main .comImgBoxR .textBox p {
	margin-bottom: 32px;
	line-height: 1.75;
}

#main .retailUl {
	margin-bottom: 2px;
	font-size: 14px;
}

#main .retailUl li {
	margin: 0 48px 40px 0;
	float: left;
	width: 368px;
}

#main .retailUl li:nth-child(3n) {
	margin-right: 0;
}

#main .retailUl li a {
	display: block;
	text-decoration: none;
	box-shadow: 2px 2px 2px #ccc;
	background-color: #fff;
}

#main .retailUl li .whiteBox {
	padding: 25px 20px;
	background-color: #fff;
	border-top: 1px solid #D3E6FE;
}

#main .retailUl li .whiteBox p {
	font-size: 14px;
	line-height: 1.55;
}

#main .retailUl li .whiteBox .title {
	margin-bottom: 6px;
	font-size: 16px;
	color: #4a5880;
	font-weight: bold;
}

#main .retailUl li a:hover {
	filter: alpha(opacity=70);
	opacity: 0.7;
}

#main .detailUl li a {
	box-shadow: none;
}

#main .detailUl .whiteBox {
	width: 100%;
	display: table;
	box-sizing: border-box;
}

#main .detailUl li .whiteBox .title{
	display: table-cell;
	text-align: center;
	color: #000;
	font-size: 15px;
	vertical-align: middle;
}

#main .mainImg {
	background-color: #052F5F;
}

#main .mainImg .photoBox {
	float: right;
	max-width: 600px;
	width: 50%;
}

#main .mainImg .photoBox img {
	width: 100%;
}

#main .mainImg .box {
	margin: 0 auto;
	width: 1200px;
}

#main .mainImg .textBox {
	padding: 53px 10px 20px 0;
	float: left;
	max-width: 600px;
	width: 50%;
	box-sizing: border-box;
}

#main .mainImg .textBox p {
	font-size: 18px;
	color: #fff;
}

#main .mainImg .textBox .title {
	font-size: 18px;
	margin-bottom: 20px;
	letter-spacing: -0.5px;
	line-height: 1.4;
}

#main .mainImg .textBox .title span {
	margin-top: 25px;
	display: block;
	font-weight: bold;
	font-size: 40px;
	letter-spacing: 0;
}
#main .mainImg .textBox .title span.small {
	font-size: 32px;
}
#main .mainImg .textBox .title span.xsmall {
	font-size: 28px;
}
#main .mainImg .textBox .title span.xxsmall {
	font-size: 26px;
}
#main .mainImg .textBox .comLink {
  width: auto;
  max-width: 560px;
  margin-top: 20px;
}
#main .mainImg .textBox .comLink a {
  display: inline-block;
  font-size: 16px;
}
#main .mainImg .textBox .comLink a span {
  font-size: 14px;
}

#main .comLinkBox {
	margin: 0 auto 36px;
	width: 1200px;
}

#main .comLinkBox ul {
	border-bottom: 2px solid #4A5880;
	border-top: 2px solid #4A5880;
	border-left: 2px solid #4A5880;
}
#main .comLinkBox li {
	float: left;
	width: 200px;
}
#main .comLinkBox li:first-child {
  margin-left: -2px;
}
#main .comLinkBox li a {
	padding: 17px 10px 16px;
	display: block;
	text-align: center;
	color: #4a5880;
	font-weight: bold;
	line-height: 1.3;
	text-decoration: none;
	border-right: 2px solid #4A5880;
}

#main .comLinkBox .liStyle a {
	padding: 5px 10px 4px;
}

#main .comLinkBox li .on,
#main .comLinkBox li a:hover {
	background-color: #4A587F;
	color: #fff;
}


#main .comLinkBox.purple ul {
	border-bottom: 2px solid #664d7b;
	border-top: 2px solid #664d7b;
	border-left: 2px solid #664d7b;
}
#main .comLinkBox.purple li a {
	color: #664d7b;
	border-right: 2px solid #664d7b;
}
#main .comLinkBox.purple li .on,
#main .comLinkBox.purple li a:hover {
	background-color: #664d7b;
	color: #fff;
}

#main .comLinkBox.listCol3 {
  width: 1050px;
}
#main .comLinkBox.listCol3 li {
  width: 350px;
}

#main .comLinkBox .update {
  font-size: 16px;
  margin-bottom: 10px;
}


#main .comSubLinkBox {
	margin: 0 auto 52px;
	width: 1200px;
	text-align: center;
}

#main .blueBox03 .comSubLinkBox {
	padding-bottom: 30px;
}

#main .comSubLinkBox li {
	display: inline-block;
	margin: 15px 0;
}

#main .comSubLinkBox li a {
	padding: 2px 26px;
	display: block;
	text-align: center;
	color: #4a5880;
	font-weight: bold;
	line-height: 1.3;
	text-decoration: none;
	border-right: 1px solid #4A5880;
	position: relative;
}

#main .comSubLinkBox li.on a span,
#main .comSubLinkBox li a:hover span {
	border-bottom: solid 3px #4A5880;
	padding-bottom: 10px;
}
#main .comSubLinkBox li.on.outside03 a span,
#main .comSubLinkBox li.outside03 a:hover span {
	padding-bottom: 25px;
}

#main .comSubLinkBox li.other,
#main .comSubLinkBox li.outside01,
#main .comSubLinkBox li.outside02,
#main .comSubLinkBox li.outside03 {
	width: 333px;
}

#main .comSubLinkBox li.outside01 a::before {
	position: absolute;
	top: 26px;
	left: 40px;
	content: "（小売業向け店舗周辺ソリューション）";
	font-size: 12px;
	white-space: nowrap;
	padding: 0;
}

#main .comSubLinkBox li.outside02 a::before {
	position: absolute;
	top: 26px;
	left: 46px;
	content: "（「PC-POS MATE」連携システム）";
	font-size: 12px;
	white-space: nowrap;
	padding: 0;
}

#main .comSubLinkBox li.outside03 a::before {
	position: absolute;
	top: 26px;
	left: 46px;
	content: "（「NeoSarf/POS」連携システム）";
	font-size: 12px;
	white-space: nowrap;
	padding: 0;
}

#main .comSubLinkBox li:nth-child(6) a,
#main .comSubLinkBox li:last-child a {
	border-right: none;
}

#main .comSubLinkBox li a:hover {
	opacity: .8;
}

#main .industry {
	padding: 67px 0 16px;
	background-color: #C3E6EA;
}
#main .industry.bgblue {
	background-color: #dbe7ef !important;
	padding-top: 50px;
}

#main .comList {
	margin: 20px 0;
}

#main .comList li {
	text-indent: -1em;
	padding-left: 1em;
	line-height: 1.7;
}

#main .comTitle02 {
	margin-bottom: 15px !important;
	line-height: 1.75 !important;
}

#main .comTitle02 span,
#main .comTitle02 a {
	display: inline-block;
	color: #fff;
	padding: 2px 40px 2px 20px;
	border-radius: 5px;
	position: relative;
	text-decoration: none;
	background-color: #4a5880;
}
#main .comTitle02.purple span,
#main .comTitle02.purple a {
	background-color: #664d7b;
}

#main .comTitle02 span {
	padding-right: 20px;
}

#main .comTitle02 a:after {
	width: 16px;
	height: 10px;
	margin-top: -5px;
	background: url(../../img/common/icon09.png) no-repeat right top;
	position: absolute;
	top: 50%;
	right: 10px;
	content: "";
}

#main .comTitle03 a:after {
	display: none;
}

#main .comTitle02 a:hover {
	filter: alpha(opacity=70);
	opacity: 0.7;
}

#main .retailBox {
	padding: 60px 0 17px;
	background-color: #D5E7FF;
}
#main .retailBox.bgblue {
	background-color: #D5E7FF !important;
}

#main .retailBox .headLine01 {
	margin-bottom: 28px;
}

#main .retailBox .headLine01 a,
#main .retailBox .headLine01 span {
	display: inline-block;
	line-height: 1.1;
	text-decoration: none;
	border-bottom: 2px solid #272727;
}

#main .retailBox .headLine01 a:hover {
	border-bottom: none;
}

#main .retailBox .headLine01 img {
	vertical-align: -17px;
}

#main .retailBox .textP {
	line-height: 1.75;
	margin: 0 auto 51px;
	width: 960px;
}

#main .retailBox02 {
	margin-bottom: -30px;
	background-color: #f2f2f2;
}

#main .retailBox02 .retailUl li {
	margin-right: 20px;
	width: 280px;
}

#main .retailBox02 .retailUl li:nth-child(3n) {
	margin-right: 20px;
}

#main .retailBox02 .retailUl li:nth-child(4n) {
	margin-right: 0;
}

#main .retailBox02 .retailUl li img {
	width: 100%;
}

#main .retailBox02 .retailUl li .whiteBox {
	padding: 10px;
}

#main .retailBox02 .retailUl li .whiteBox .title {
	text-align: center;
	margin: 0;
}

#main .retailBox02 p {
	margin-bottom: 20px;
}

#main .retailBox02 .headLine02 {
	color: #052f5f;
}

#main .retailBox03 .headLine02 {
	color: #052f5f;
}


/*------------------------------------------------------------
	comIndustry
------------------------------------------------------------*/
#main .comIndustry {
	margin: 20px 0 0 !important;
	padding: 0 !important;
	background: none !important;
}

#main .comIndustry .comImgBoxL,
#main .comIndustry .comImgBoxR {
	margin-bottom: 0;
}

#main .comIndustry .textBox {
	padding-left: 27px;
	float: left;
	background-color: #fff;
}

#main .comIndustry .textBox .title a {
	color: #093F86;
	text-decoration: none;
	border-bottom: 2px solid #093F86;
}

#main .comIndustry .textBox .title a:hover {
	border-bottom: none;
}

#main .comIndustry .textBox p.text {
	margin-bottom: 32px !important;
	font-size: 1em !important;
}

#main .comIndustry .textBox p {
	margin-bottom: 25px;
	/* font-size: 14px; */
}

#main .comIndustry .textBox ul,
#main .comIndustryUl {
	margin-top: 20px;
}

#main .comIndustry .textBox li,
#main .comIndustryUl li {
	margin-bottom: 5px;
	padding: 3px 0 0 15px;
	font-size: 16px;
	background: url(../../img/common/icon11.gif) no-repeat left center;
}

#main .comIndustry li:last-child,
#main .comIndustryUl li:last-child {
	margin-bottom: 0;
}

#main .comIndustry .textBox li a,
#main .comIndustryUl li a {
	text-decoration: underline;
}

#main .comIndustry .textBox li a:hover,
#main .comIndustryUl li a:hover {
	text-decoration: none;
}

/*------------------------------------------------------------
	casestudyBox
------------------------------------------------------------*/
#main .casestudyBox .lead,
#main .casestudyBox .case {
  margin-bottom: 32px;
}
#main .casestudyBox .lead,
#main .casestudyBox .case .textBox p {
  line-height: 1.75;
}
#main .casestudyBox .lead {
  font-weight: bold;
}
#main .casestudyBox .lead .title {
  font-size: 20px;
}
#main .casestudyBox .textBox .title {
  margin-bottom: 10px;
  padding: 5px 0 2px 10px;
  border-left: 10px solid #04127c;
  font-size: 20px;
}
#main .casestudyBox .textBox dl.title {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
  justify-content: flex-start;
  margin-bottom: 32px;
}
#main .casestudyBox .case {
  margin-bottom: 32px;
}
#main .casestudyBox .case .head {
  position: relative;
  width: 144px;
  background-color: #04127c;
  color: #fff;
  font-family: 'Arial', sans-serif;
  text-align: center;
}
#main .casestudyBox .case .head h3 {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 1.5em;
  margin: auto;
  font-size: 20px;
  font-weight: bold;
}
#main .casestudyBox .case .textBox {
  width: calc(100% - 144px);
  padding: 20px 24px;
  background-color: #d1e2f5;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
#main .casestudyBox .casestudy01 > .photoBox {
  width: 320px;
}
#main .casestudyBox .casestudy01 > .textBox {
  width: 820px;
}
#main .casestudyBox .casestudy01 .casestudyLogo {
  text-align: right;
}

@media (max-width: 767px) {
  #main .casestudyBox .lead .title {
    font-size: 16px;
  }
  #main .casestudyBox .case .head {
    width: 100%;
    padding: 20px 0;
  }
  #main .casestudyBox .case .head h3 {
    position: inherit;
    height: auto;
  }
  #main .casestudyBox .case .textBox {
    width: 100%;
    padding: 15px 10px;
  }
  #main .casestudyBox .casestudy01 > .photoBox,
  #main .casestudyBox .casestudy01 > .textBox {
    width: 100%;
  }
  #main .casestudyBox .casestudy01 > .photoBox {
    margin-bottom: 20px;
  }
  #main .casestudyBox .photoBox img {
    max-width: 100%;
    width: auto;
  }
  #main .casestudyBox .casestudy01 .casestudyLogo {
    text-align: center;
  }
}

/*------------------------------------------------------------
	comUlBox
------------------------------------------------------------*/
#main .comUlBox {
	border-bottom: 2px solid #093F86;
	border-top: 2px solid #093F86;
	border-left: 2px solid #093F86;
}

#main .comUlBox li {
	width: 400px;
	display: table;
}

#main .comUlBox li a {
	display: table-cell;
	color: #093F86;
	border-right: 2px solid #093F86;
	vertical-align: middle;
}

#main .comUlBox .liStyle a {
	padding: 5px 10px 4px;
}

#main .comUlBox li .on,
#main .comUlBox li a:hover {
	background-color: #052F60;
}

#main .comLinkBox.comUlBox ul {
  border: none;
}
#main .comLinkBox.comUlBox li:first-child {
  margin-left: -2px;
}

/*------------------------------------------------------------
	comTtl
------------------------------------------------------------*/
#main .greyBox .title.comTtl span {
    padding: 8px 3px 8px;
}

#main .greyBox .comTtl span:after {
	display: none;
}

#main .comInner .photoBox p {
	margin-top: 5px;
}

/*------------------------------------------------------------
	comTtl01
------------------------------------------------------------*/
#main .comTtl01 {
	margin-bottom: 5px !important;
	font-size: 22px;
	font-weight: bold;
}

#communication .mainBox_tx {
	text-align: center;
}

#communication .finished_text {
    border: 2px solid #cd4f50;
    display: inline-flex;
    padding: 10px 14px;
    color: #cd4f50;
    margin: 0px auto 40px;
}

@media all and (min-width: 0px) and (max-width: 767px) {
	#main .comTtl01 {
		font-size: 18px;
	}
}

/*------------------------------------------------------------
	comColorTtl
------------------------------------------------------------*/
#main .comColorTtl {
	font-size: 20px;
	color: #473853;
	font-weight: bold;
}

@media all and (min-width: 0px) and (max-width: 767px) {
	#main .comColorTtl {
		font-size: 17px;
	}
}

/*------------------------------------------------------------
	comBorImg
------------------------------------------------------------*/
#main .comBorImg {
	border: 1px solid #D8D8D8;
}

/*------------------------------------------------------------
	comBorImg01
------------------------------------------------------------*/
#main .comBorImg01 {
	border: 2px solid #D8D8D8;
}

/*
@media all and (max-width: 1260px)  {
	#main .mainImg .textBox {
		padding-right: 50px;
	}
}
*/

@media all and (min-width: 0px) and (max-width: 767px) {
	#communication .finished_text {
	    margin: 0px auto 40px;
	    width: 83%;
	}

	.headLine01 {
		margin-bottom: 20px !important;
		font-size: 20px;
	}

	.headLine01 img {
		vertical-align: top !important;
		margin: 0 auto 15px;
		width: 60px;
		display: block;
	}

	.headLine02 {
		font-size: 15px;
		letter-spacing: -0.5px;
	}

	.headLine02 span {
		padding: 5px 25px;
		margin: 0 0 5px;
		font-size: 13px;
		text-align: left;
	}

	.headLine03 {
		margin-bottom: 30px;
		padding-left: 10px;
		font-size: 16px;
	}

	.headLine04 {
		font-size: 16px;
	}

	.headLine05 {
		width: auto;
		margin: 0 15px 30px;
		font-size: 20px;
	}

	.headLine06 {
		font-size: 18px;
	}

	.headLine08 span {
		margin-bottom: 5px;
		padding: 4px 15px 2px;
		font-size: 14px;
	}

	.headLine09 {
		margin-bottom: 0 !important;
		font-size: 20px;
	}
	.headLine09 img {
		vertical-align: top !important;
		margin: 0 auto 15px;
		width: 60px;
		display: block;
	}
	.headLine09 .textSpan {
		font-size: 14px;
	}

	.headLine10 {
		margin-bottom: 15px;
		padding-bottom: 3px;
		font-size: 15px;
	}
	.headLine13 {
		font-size: 15px;
	}
	.headLine13 span {
		font-size: 13px;
	}
	.headLine13 small {
		font-size: 12px;
	}
	.headLine14 {
		margin-bottom: 15px;
		font-size: 18px;
}

	#main .comImgBoxL {
		margin-bottom: 20px;
	}

	#main .comImgBoxL .photoBox {
		width: auto;
		float: none;
	}

	#main .comImgBoxL .textBox {
		padding: 20px 0 0 !important;
		float: none;
		width: auto !important;
	}

	#main .comImgBoxL .textBox .title {
		margin-bottom: 15px;
		font-size: 16px;
		line-height: 1.3;
	}

	#main .comImgBoxL .textBox .title a:hover {
		padding-bottom: 0;
		border-bottom: 2px solid #747474;
	}

	#main .comImgBoxL .textBox .textImg img {
		width: auto !important;
	}

	#main .comImgBoxL .textBox p {
		margin-bottom: 20px;
		margin-right: 0 !important;
		line-height: 1.6;
	}

	#main .comImgBoxL .textBox p .textSpan {
		font-size: 16px;
	}

	.comLink {
		margin: 0 auto;
	}

	.comLink a {
		padding-top: 12px;
		text-align: center;
	}

	#main .comImgBoxR .photoBox {
		float: none;
	}

	#main .comImgBoxR .textBox {
		float: none;
		width: auto;
		padding: 20px 0 0 !important;
	}

	#main .comImgBoxR .textBox .title {
		font-size: 16px;
		line-height: 1.3;
	}

	#main .comImgBoxR .textBox .title a:hover {
		border-bottom: 2px solid #747474;
		padding-bottom: 0;
	}

	#main .retailUl {
		margin-bottom: 20px;
	}

	#main .retailUl li {
		float: none;
		width: auto;
		margin: 0 0 15px;
	}

	#main .retailUl li img {
		height: auto;
		width: 100%;
	}

	#main .retailUl li a {
		height: auto !important;
	}

	#main .retailUl li .whiteBox {
		padding: 25px 10px;
		height: auto !important;
	}

	#main .retailUl li .whiteBox .title {
		font-size: 15px;
		letter-spacing: -0.5px;
	}

	#main .retailUl li:last-child {
		margin-bottom: 0;
	}

	#main .retailBox02 .retailUl li {
		margin: 0 0 15px !important;
		width: auto;
	}

	#main .industry {
		padding: 30px 0 15px;
	}

	#main .mainImg .photoBox {
		float: none;
		width: auto;
		max-width: inherit;
	}

	#main .mainImg .box {
		max-width: inherit;
		width: auto;
	}

	#main .mainImg .textBox {
		max-width: inherit;
		width: auto;
		float: none;
		padding: 30px 15px !important;
	}

	#main .mainImg .textBox .title {
		margin-bottom: 10px;
		font-size: 18px;
		letter-spacing: 0;
	}

	#main .mainImg .textBox .title span,
	#main .mainImg .textBox .title span.small,
	#main .mainImg .textBox .title span.xsmall,
	#main .mainImg .textBox .title span.xxsmall {
		margin: 0 !important;
		font-size: 23px;
	}

	#main .mainImg .textBox p {
		font-size: 12px;
		line-height: 1.75;
	}

	#main .mainImg .textBox .comLink {
		margin-top: 10px;
	}
	#main .mainImg .textBox .comLink a {
		font-size: 14px;
	}
	#main .mainImg .textBox .comLink a span {
		font-size: 12px;
	}

	#main .comLinkBox {
		width: auto;
		margin: 0 10px 30px;
		border-bottom: none;
	}

	#main .comLinkBox ul {
		border-bottom: none !important;
	}
	#main .comLinkBox li {
		width: 50%;
	}
	#main .comLinkBox li:first-child {
		margin-left: 0;
	}

	#main .comLinkBox li a {
		padding: 13px 10px;
		border-bottom: 2px solid #4a5880;
	}

	#main .comLinkBox li a:hover {
		color: #4a5880;
		background-color: #fff;
	}

	#main .comLinkBox li .on:hover {
		color: #fff;
		background-color: #4a587f;
	}
	#main .comLinkBox.purple {
		border-bottom: none;
	}

	#main .comLinkBox.listCol3 {
    width: auto;
  }
  #main .comLinkBox.listCol3 li {
    width: 50%;
  }

  #main .comLinkBox .update {
    font-size: 14px;
    margin-bottom: 5px;
  }


	#main .comSubLinkBox {
		width: auto;
		margin: 0 0 30px;
	}

	#main .comSubLinkBox li {
		width: 30%;
	}

	#main .comSubLinkBox li a {
		font-size: 12px;
		padding: 2px 10px;
	}
	#main .comSubLinkBox li.on a span,
	#main .comSubLinkBox li a:hover span {
	display: inline-block;
	padding-bottom: 5px;
}

	#main .comSubLinkBox li.other,
	#main .comSubLinkBox li.outside01,
	#main .comSubLinkBox li.outside02,
	#main .comSubLinkBox li.outside03 {
		width: 90%;
	}

	#main .comSubLinkBox li.outside01 {
		margin-bottom: 24px;
	}

	#main .comSubLinkBox li.outside01 a::before {
	  position: absolute;
	  top: 20px;
	  left: 24%;
	  content: "（小売業向け店舗周辺ソリューション）";
	  font-size: 10px;
	  white-space: nowrap;
	  padding: 0;
	}

	#main .comSubLinkBox li.outside02 a::before {
	  position: absolute;
	  top: 20px;
	  left: 24%;
	  content: "（「PC-POS MATE」連携システム）";
	  font-size: 10px;
	  white-space: nowrap;
	  padding: 0;
	}

	#main .comSubLinkBox li.outside03 a::before {
	  position: absolute;
	  top: 20px;
	  left: 50%;
	  content: "（「NeoSarf/POS」連携システム）";
	  font-size: 10px;
	  white-space: nowrap;
	  padding: 0;
	  transform: translateX(-50%);
	}

	#main .comSubLinkBox li:nth-child(3n) a,
	#main .comSubLinkBox li.other a,
	#main .comSubLinkBox li.outside01 a,
	#main .comSubLinkBox li.outside02 a,
	#main .comSubLinkBox li.outside03 a {
		border-right: none;
	}

	#main .comSubLinkBox li a:hover {
		opacity: .8;
	}

	/*------------------------------------------------------------
		comUlBox
	------------------------------------------------------------*/
	#main .comUlBox li {
		width: 33.3%;
	}

	#main .comUlBox li a:hover {
		color: #093F86;
		background-color: #fff;
	}

	#main .comUlBox li .on:hover {
		color: #fff;
		background-color: #052F60;
	}

  #main .comLinkBox.comUlBox li:first-child {
    margin-left: 0;
  }

	#main .comTitle02 {
		line-height: 1.4 !important;
	}

	#main .comTitle02 a {
		padding: 5px 30px 5px 15px;
		min-width: inherit;
	}

	#main .comTitle02 span {
		padding: 5px 15px;
	}

	#main .retailBox {
		padding: 30px 0 15px;
	}

	#main .retailBox .headLine01 img {
		vertical-align: top;
		width: 50px;
	}

	#main .retailBox .headLine01 a:hover {
		padding-bottom: 0;
		border-bottom: 2px solid #272727;
	}

	#main .retailBox .textP {
		margin-bottom: 20px;
		width: auto;
		line-height: 1.6;
	}

	/*------------------------------------------------------------
		comIndustry
	------------------------------------------------------------*/
	#main .comIndustry .mainBox {
		margin: 0 20px;
	}

	#main .comIndustry .photoBox {
		height: auto !important;
	}

	#main .comIndustry .textBox {
		padding: 20px 10px!important;
		float: none;
		height: auto !important;
	}

	#main .comIndustry .textBox .title a {
		padding-bottom: 0;
	}

	#main .comIndustry .textBox .title a:hover {
		border-bottom: none;
	}

	#main .comIndustry .textBox li,
	#main .comIndustryUl li {
		padding-top: 0;
		font-size: 14px;
	}

	#main .comIndustry .textBox li a:hover,
	#main .comIndustryUl li a:hover {
		text-decoration: underline;
	}

}

/*------------------------------------------------------------
	linkBox
------------------------------------------------------------*/
#main .linkBox {
	margin: 0 0 40px;
	padding: 30px 0;
	background-color: #4A5880;
	color: #fff;
}
#main .linkBox.blue {
  background-color: #D5E7FF;
}
#main .linkBox.green {
  background-color: #4bb1c0;
}
#main .linkBox.green02 {
  background-color: #C3E6EA;
}
#main ul.linkBox {
	padding: 0 !important;
}
#main .linkBox .imgBox {
	align-items: center;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#main .linkBox .headTitle {
	width: 100%;
	margin-bottom: 10px;
	padding: 5px 5px 4px;
	background-color: #fff;
	color: #4a5880;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#main .linkBox > li {
	width: 50%;
	padding: 20px 0;
	background-color: #4a5880;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
		-ms-flex-pack: end;
	justify-content: flex-end;
}
#main .linkBox > li:nth-child(2n) {
	background-color: #4bb1c0;
	-webkit-box-pack: start;
		-ms-flex-pack: start;
	justify-content: flex-start;
}
#main .linkBox li:nth-child(2n) .headTitle,
#main .linkBox.green .headTitle {
	color: #4bb1c0;
}
#main .linkBox .photoBox {
	width: 200px;
}
#main .linkBox .photoBox a:hover img {
	filter: alpha(opacity=70);
	opacity: 0.7;
}
#main .linkBox .textBox {
	width: 780px;
}
#main .linkBox .textBox p {
	font-size: 16px;
	line-height: 1.6;
}
#main .linkBox .title a {
	color: #fff;
	font-weight: bold;
}
#main .linkBox .textBox .title {
	margin-bottom: 20px;
	font-size: 22px;
	line-height: 1.2;
}
#main .linkBox .textBox .title a:link {
	text-decoration: underline;
}
#main .linkBox .textBox .title a:hover {
	text-decoration: none;
}
#main .linkBox li:nth-child(2n) .imgBox {
	padding-right: 0;
	padding-left: 25px;
}
#main .linkBox li .imgBox {
	max-width: 600px;
	padding-right: 25px;
}
#main .linkBox li .imgBox .photoBox {
	width: 36%;
	max-width: 200px;
}
#main .linkBox li .imgBox .textBox {
	width: 62%;
}
#main .linkBox li .imgBox .textBox p {
	font-size: 15px;
}
#main .linkBox li .imgBox .textBox .title {
	margin-bottom: 10px;
	font-size: 20px;
	line-height: 1.3;
}
#main .linkBox .comLink {
	width: 160px;
}
#main .linkBox .comLink a {
	background-color: #fff;
	color: #4A5880;
	text-align: center;
}
#main .linkBox .comLink a:after {
  display: none;
}
#main .linkBox.blue,
#main .linkBox.green02,
#main .linkBox.green02 .title a {
  color: #262626;
}
#main .linkBox.blue .headTitle,
#main .linkBox.blue .title a {
  color: #002b62;
}
#main .linkBox.blue .comLink a {
  background-color: #002b62;
  color: #fff;
}
#main .linkBox.green .comLink a {
  color: #4bb1c0;
}
#main .linkBox.green02 .comLink a {
  background-color: #4A5880;
  color: #fff;
}
#main .linkBox.linkBox01 {
	background-color: #002b62;
}
#main .linkBox.linkBox01 .title {
	font-size: 24px;
	line-height: 1.2;
}
#main .linkBox.linkBox01 .icon {
  display: inline-block;
  margin-right: 20px;
  vertical-align: middle;
}
#main .linkBox.linkBox01 .category {
  display: block;
  margin-bottom: 2px;
  font-size: 16px;
  font-weight: bold;
}
#main .linkBox.linkBox01 .comLink a {
  color: #002b62;
  text-align: left;
}
#main .linkBox.linkBox01 .comLink a:after {
  display: inline-block;
  width: 12px;
  height: 12px;
  margin-top: -6px;
  background: none;
  border-top: 2px solid;
  border-right: 2px solid;
  border-color: #002b62 #002b62 transparent transparent;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
#main .linkBox.linkBox02 {
  padding: 20px 0;
}
#main .linkBox.linkBox02 .imgBox {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
#main .linkBox.linkBox02 .photoBox {
	width: 320px;
}
#main .linkBox.linkBox02 .textBox {
	width: 840px;
}
#main .linkBox.linkBox02 .title,
#main .linkBox.linkBox02 p {
  margin-bottom: 10px;
}
#main .linkBox.linkBox03 .photoBox {
  width: 240px;
}
#main .linkBox.linkBox03 .textBox {
  width: 920px;
}
#main .linkBox.linkBox03 .headTitle {
  display: inline-block;
  width: auto;
  margin-bottom: 10px;
}
#main .linkBox.linkBox03 .textBox .title {
  line-height: 1.5;
}
#main .linkBox.middle .imgBox {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
#main .linkBox.middle .textBox p {
  font-size: 18px;
}
#main .linkBox.middle .textBox .title {
  font-size: 24px;
}
#main .linkBox .title .new {
	display: inline-block;
	margin: 0 0 5px 10px;
	padding: 4px 10px 3px;
	background-color: #dc434a;
	color: #fff;
	font-size: 16px;
	font-weight: normal;
	line-height: 1;
	vertical-align: middle;
}

@media (max-width: 767px) {
	#main .linkBox {
		margin-bottom: 30px;
		padding: 20px 0;
	}
	#main .linkBox > li {
		width: 100%;
		padding: 20px 0 10px;
	}
	#main .linkBox .mainBox {
		position: relative;
		align-items: flex-start;
	}
	#main .linkBox .headTitle {
		font-size: 14px;
	}
	#main .linkBox .photoBox {
		position: absolute;
		top: 0;
		left: 0;
		width: 100px !important;
	}
	#main .linkBox .imgBox .photoBox {
		top: 40px;
	}
	#main .linkBox .textBox {
		width: 100%;
		margin-bottom: 10px;
	}
	#main .linkBox .textBox p,
	#main .linkBox li .imgBox .textBox p {
		font-size: 14px;
	}
	#main .linkBox .textBox .title {
		min-height: 75px;
		margin: 0 0 10px 110px;
		font-size: 16px;
	}
	#main .linkBox li .imgBox,
	#main .linkBox li:nth-child(2n) .imgBox {
		position: relative;
		margin: 0 15px;
		padding: 0;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	#main .linkBox li .imgBox .textBox {
		width: 100%;
	}
	#main .linkBox li .imgBox .textBox .title {
		font-size: 16px;
	}
	#main .linkBox.linkBox01 {
		padding: 20px 0;
	}
	#main .linkBox.linkBox01 .title {
		font-size: 16px;
		margin-bottom: 10px;
	}
	#main .linkBox.linkBox01 .icon {
    display: block;
    width: 40px;
    margin: 0 auto 10px;
  }
  #main .linkBox.linkBox02 .textBox,
  #main .linkBox.linkBox03 .textBox {
    width: 100%;
  }
  #main .linkBox.linkBox03 .headTitle {
    margin: 0 0 5px 110px;
  }
  #main .linkBox.linkBox03 .title {
    margin-bottom: 0;
  }
  #main .linkBox.middle .textBox p {
    font-size: 14px;
  }
  #main .linkBox.middle .textBox .title {
    font-size: 18px;
  }
  #main .linkBox.middle .photoBox {
    top: 0;
  }
	#main .linkBox .title .new {
		margin: 5px 0 5px 10px;
		font-size: 12px;
	}
}

/* suggestBox */
#main .suggestBox {
  padding: 30px 0;
}
#main .suggestBox .btnBox {
  width: 840px;
  margin: 0 auto;
}
#main .suggestBox .btnBox .comLink {
  width: 400px;
}
#main .suggestBox .btnBox .comLink a {
  font-size: 16px;
  text-align: center;
}
@media (max-width: 767px) {
  #main .suggestBox {
    padding: 20px 0;
  }
  #main .suggestBox .btnBox,
  #main .suggestBox .btnBox .comLink {
    width: 100%;
  }
  #main .suggestBox .btnBox {
    max-width: 400px;
  }
  #main .suggestBox .btnBox .comLink:not(:last-child) {
    margin-bottom: 10px;
  }
  #main .suggestBox .btnBox .comLink a {
    font-size: 14px;
  }
}

#main .headLineBox {
	margin: 0 0 30px 0;
	padding: 20px 0;
	background-color: #052F5F;
	text-align: center;
}

#main .accessBox {
	margin: 0 auto 20px;
	padding: 20px;
	width: 1200px;
	box-sizing: border-box;
}
#main .accessBox ul {
	margin: 0 0 0 40px;
}
#main .accessBox ul li {
	margin: 10px 0 0 0;
	list-style: disc;
}

#main .textBox .ul02 {
	margin: 0 0 0 40px;
}
#main .textBox .ul02 li {
	margin: 0 0 10px 0;
	float: left;
	width: 30%;
	white-space: nowrap;
	list-style: disc;
}
@media (max-width: 767px) {
	#main .headLineBox {
		margin: 0 0 20px 0;
		padding: 10px 0;
	}

	#main .accessBox {
		margin: 0 15px 20px 15px;
		padding: 20px;
		width: auto;
	}

	#main .textBox .ul02 li {
		margin: 0 0 10px 0;
		float: none;
		width: 100%;
		white-space: normal;
	}
}

/* label */
.new {
  display: inline-block;
  margin: 0 0 5px 10px;
  padding: 5px 10px 4px;
  background-color: #be375a;
  color: #fff;
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  vertical-align: middle;
}


/* video */
.mod-media-video {
  display: block;
  position: relative;
  max-width: 650px;
  margin: 0 auto;
}
.mod-media-video > .inner {
  display: block;
  position: relative;
  padding-top: 56.25%;
}
.mod-media-video > .inner > div {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.mod-media-video .caption {
  margin-top: 10px;
  text-align: center;
}

/*
@media (min-width:768px) and (max-width: 1260px)  {
	#main .mainImg .textBox p,
	#main .mainVisual .item .textBox p {
		font-size: 15px !important;
	}
	#main .mainImg .textBox .title span,
	#main .mainVisual .item .textBox .title {
		font-size: 30px !important;
	}
	#main .mainImg .textBox .title,
	#main .mainVisual .item .textBox .title .small {
		font-size: 18px !important;
		line-height: 1;
	}
	#main .mainVisual .item .textBox {
		padding: 40px 30px 0 30px !important;
	}
	#main .mainVisual .item .textBox p span {
		font-size: 18px !important;
	}
}
*/

