@charset "utf-8";
/* CSS Document */



/* ----------------------------------------------------------------------------------------

  再定義（module.css）
	
------------------------------------------------------------------------------------------- */
[class*=" ficon-"]::before, [class*=" pcsite"]::after, [class^="ficon-"]::before, [class^="pcsite"]::after { margin-right: 5px;}


/* ----------------------------------------------------------------------------------------

  再定義（layout.css）
	
------------------------------------------------------------------------------------------- */

/* ----------------------------------------------------------------------------------------
  【02】フッター
------------------------------------------------------------------------------------------- */
#footer {
  bottom: auto;
}


/* ----------------------------------------------------------------------------------------
  【03】コンテンツ 全体の囲み
------------------------------------------------------------------------------------------- */
#main {
	padding-bottom: 120px !important;
}



/* ----------------------------------------------------------------------------------------
  【05】商品ページタイトル
------------------------------------------------------------------------------------------- */
/*ページのタイトル枠*/
.title-p-top,
.title-p-page {
	position: relative;
}

.title-p-top::before,
.title-p-page::before {
	background-color: rgba(0,0,0,0.4);
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: ' ';
  position: absolute;
}

.title-p-top-inner,
.title-p-page-inner {
	height: 345px;
	margin: 0 auto;
	text-align: center;
	line-height: 1.6;
	position: relative;
}

.title-p-top-inner {
	height: 510px;
}

.title-p-top-inner .title-p-top-inner-item,
.title-p-page-inner .title-p-page-inner-item {
	width: 100%;
	height: 345px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	top: 0;
	position: absolute;
	z-index: 1;
}

.title-p-top-inner .title-p-top-inner-item {
	height: 510px;
	padding-top: 80px;
}

.title-p-top-inner .p-logo,
.title-p-page-inner .p-logo {
	width: 100%;
	text-align: left;
	line-height: 1.0;
	padding-top: 20px;
	position: relative;
	z-index: 2;
}

.title-p-top-inner .p-logo img { width: auto; height: 65px;}
.title-p-page-inner .p-logo img { width: auto; height: 50px;}

.title-p-top-inner .p-logo span,
.title-p-page-inner .p-logo span {
	display: block;
	color: #333333;
	font-size: 1.2rem;
	font-weight: bold;
	text-align: left;
	/*text-shadow: 0px 0px 2px rgba(255,255,255,1.0), 0px 0px 2px rgba(255,255,255,1.0), 0px 0px 2px rgba(255,255,255,1.0), 0px 0px 2px rgba(255,255,255,1.0);*/
  text-shadow: 1px 1px 0 rgba(255,255,255,1.0), -1px -1px 0 rgba(255,255,255,1.0), -1px 1px 0 rgba(255,255,255,1.0), 1px -1px 0 rgba(255,255,255,1.0), 0 1px 0 rgba(255,255,255,1.0), 0-1px 0 rgba(255,255,255,1.0), -1px 0 0 rgba(255,255,255,1.0), 1px 0 0 rgba(255,255,255,1.0);
}

.title-p-top-inner .p-logo span {
	font-size: 1.6rem;
}

.title-p-top-inner .p-logo sub,
.title-p-page-inner .p-logo sub {
	color: #222222;
	font-size: 1.0rem;
	font-weight: bold;
	text-align: left;
	/*text-shadow: 0px 0px 2px rgba(0,0,0,0.1), 0px 0px 2px rgba(0,0,0,0.1), 0px 0px 2px rgba(0,0,0,0.1), 0px 0px 2px rgba(0,0,0,0.1);*/
  text-shadow: 1px 1px 0 rgba(0,0,0,0.1), -1px -1px 0 rgba(0,0,0,0.1), -1px 1px 0 rgba(0,0,0,0.1), 1px -1px 0 rgba(0,0,0,0.1), 0 1px 0 rgba(0,0,0,0.1), 0-1px 0 rgba(0,0,0,0.1), -1px 0 0 rgba(0,0,0,0.1), 1px 0 0 rgba(0,0,0,0.1);
	left: 0;
	bottom: 0;
	position: absolute;
}

.title-p-top-inner .p-logo sub {
	font-size: 1.4rem;
}

.title-p-top-inner h1.p-title,
.title-p-page-inner h1.p-title {
	color: #ffffff;
	font-size: 4.8rem;
	font-weight: normal;
	text-shadow: 0 1px 2px rgba(0,0,0,0.5);
	letter-spacing: 1px;
	line-height: 1.2;
}

.title-p-top-inner h1.p-title span,
.title-p-page-inner h1.p-title span {
	font-size: 3.6rem;
}

.title-p-top-inner p.p-about,
.title-p-page-inner p.p-about {
	color: #ffffff;
	font-size: 2.4rem;
	font-weight: normal;
	text-shadow: 0 1px 2px rgba(0,0,0,0.5);
	/*letter-spacing: 1px;*/
}

.title-p-top-inner ul.actions li a span,
.title-p-page-inner ul.actions li a span {
	font-size: 1.0rem;
}

.title-p-page-inner mark.p-customer {
	width: 120px;
	height: 120px;
	background: #ffffff;
	border: 1px solid #000000;
	text-align: center;
	padding: 10px;
	box-shadow: 0 0 5px 0 rgba(112,112,112,0.3);
	display: flex;
  justify-content: center;
  align-items: center;
	flex-flow: row wrap;
	position: absolute;
	top: 285px;
	left: 50%;
	-webkit-transform:translateX(-50%);
	transform:translateX(-50%);
}

.title-p-page-inner mark.p-customer img {
	width: 100%;
	height: auto;
	margin: auto;
}

.title-p-page-inner time.p-interview {
	display: block;
	color: #ffffff;
	font-size: 1.4rem;
	font-weight: bold;
	text-align: right;
	bottom: 40px;
	right: 8px;
	position: absolute;
}

.title-p-page-inner time.p-interview i {
	font-weight: normal;
}

.title-p-top-inner .breadclumb,
.title-p-page-inner .breadclumb {
	text-align: left;
	position: relative;
	z-index: 3;
}

.title-p-top-inner mark.workstyle {
	width: 100px;
	height: 100px;
	top: 50px;
	left: 400px;
	position: absolute;
}

.title-p-top-inner mark.itreview {
	width: 100px;
	height: 100px;
	top: 70px;
	left: 510px;
	position: absolute;
}

.breadclumb ol li { color: #ddd; font-weight: bold;}
.breadclumb ol li::before, .breadclumb930 ol li::before { color: #999}
.breadclumb ol li a { text-shadow: 1px 1px 0 rgba(221,221,221,1.0), -1px -1px 0 rgba(221,221,221,1.0), -1px 1px 0 rgba(221,221,221,1.0), 1px -1px 0 rgba(221,221,221,1.0), 0 1px 0 rgba(221,221,221,1.0), 0-1px 0 rgba(221,221,221,1.0), -1px 0 0 rgba(221,221,221,1.0), 1px 0 0 rgba(221,221,221,1.0);}


@media screen and (max-width: 1230px) {
	.title-p-top-inner mark.workstyle, .title-p-top-inner mark.itreview, .title-p-top-inner .title-p-top-inner-item small { display: none;}
}

@media screen and (max-width: 768px) {
	.title-p-page-inner {	padding-top: 20px; padding-bottom: 20px;}
	.title-p-top-inner .title-p-top-inner-item, .title-p-page-inner .title-p-page-inner-item { left: -8px; padding: 0 0 0 16px;}
	.title-p-top-inner h1.p-title, .title-p-page-inner h1.p-title {; font-size: 3.6rem;}
	.title-p-top-inner h1.p-title span,	.title-p-page-inner h1.p-title span { font-size: 2.8rem;}
	.title-p-top-inner p.p-about,	.title-p-page-inner p.p-about	{ font-size: 1.8rem;}
	.title-p-top-inner .p-logo { padding-top: 20px;}
	.title-p-top-inner .p-logo img { width: auto; height: 45px;}
	.title-p-top-inner .p-logo span { font-size: 1.2rem;}
	.title-p-top-inner .p-logo sub { font-size: 1.2rem;}
	.title-p-page-inner .p-logo { padding-top: 0;}
	.title-p-page-inner .p-logo img { width: auto; height: 40px;}
	.title-p-page-inner .p-logo span { font-size: 1.0rem;}
	.title-p-page-inner .p-logo sub { font-size: 1.0rem;}
	.title-p-top-inner .p-logo, .title-p-page-inner .p-logo { display: none;}
	.title-p-page-inner time.p-interview { font-size: 1.2rem;}
}

@media screen and (max-width: 480px) {
	.title-p-top-inner .p-logo img { width: auto; height: 40px;}
	.title-p-page-inner .p-logo img {  width: auto; height: 35px;}
	.title-p-top-inner .p-logo sub, .title-p-page-inner .p-logo sub { display: none;}
}



/* ----------------------------------------------------------------------------------------
  【06】商品メニュー
------------------------------------------------------------------------------------------- */
nav.p-menu-inlineblock {
	background: #222222;
	box-shadow: 0 2px 4px 0 rgba(52,52,52,0.25);
}

nav.p-menu-inlineblock li {
	font-size: 1.5rem;
}

nav.p-menu-inlineblock li a {
	color: #C2C2C2;
	text-shadow: rgba(0,0,0,0.25) 0 -1px 0;
	height: 50px;
	line-height: 50px;
	padding: 0 15px;
	-webkit-transition: all .5s;
	transition: all .5s;
}

nav.p-menu-inlineblock li a.active {
	color: #dddddd;
	font-weight: bold;
	background: #e95383;
}

nav.p-menu-inlineblock li a:hover {
	background: #000000;
}

nav.p-menu-inlineblock li a.active:hover {
	background: #e95383;
}


/* ----------------------------------------------------------------------------------------
  【09】見出し
------------------------------------------------------------------------------------------- */
/*商品ページのh1タグ スペース*/
.title-p-sub {
	display: none;
}

/*【hb】背景グレーの大見出し */
.hb {
	font-size: 2.4rem;
}

.hb:after {
	background-color: #e95383;
}

@media screen and (max-width: 768px) {
		.hb {
			font-size: 2.0rem;
		}
	}

/*【hc】青下線の中見出し */
.hc {
	font-size: 2.0rem;
}

.hc:after {
	background-color: #e95383;
}

@media screen and (max-width: 768px) {
	.hc {
		font-size: 1.6rem;
	}
}

/*【hd】青◎の小見出し */
	.hd:after {
		border: 3px solid #e95383;
	}


/* ----------------------------------------------------------------------------------------
  【11】画像拡大
------------------------------------------------------------------------------------------- */
.imgzoom-text {
	width: 40%;
}

.imgzoom-img {
	width: 55%;
	margin-left: 5%;
}

.imgzoom-img2column {
	width: 45%;
	margin: 0 2.5%;
	text-align: center;
	float: left;
}

.imgzoom-img3column {
	width: 30.33%;
	margin: 0 1.5%;
	text-align: center;
	float: left;
}

.imgzoom-img img,
.imgzoom-img2column img,
.imgzoom-img3column img {
	width: auto;
	max-width: 100%;
	height: auto;
	margin: auto;
}

.imgzoom-one {
	width: 90%;
}

@media screen and (max-width: 768px) {
	.imgzoom-text {	width: 100%; float: none;}
	.imgzoom-img,	.imgzoom-img2column, .imgzoom-img3column { width: 100%;	margin-left: 0;	margin-top: 20px;	float: none;}
	.imgzoom-img img,	.imgzoom-img2column img, .imgzoom-img3column img { max-width: 80%;}
	.imgzoom-one { width: 95%;}
}


/* ----------------------------------------------------------------------------------------
  【13】購入前のQ&A
------------------------------------------------------------------------------------------- */
#qalist-001 dt:before,
#qalist-002 dt:before,
#qalist-003 dt:before,
#qalist-004 dt:before,
#qalist-005 dt:before,
#qalist-006 dt:before,
#qalist-007 dt:before,
#qalist-008 dt:before,
#qalist-009 dt:before,
#qalist-010 dt:before {
		color: #e95383;
}





/* ----------------------------------------------------------------------------------------

  MaLion 共通ページ
	
------------------------------------------------------------------------------------------- */

/* ----------------------------------------------------------------------------------------
  全体
------------------------------------------------------------------------------------------- */
body {
	color: #222222;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 2.0;
	letter-spacing: 0.5px;
	text-rendering: optimizeLegibility;
}

@media screen and (max-width: 768px) {
	body { font-size: 1.4rem; line-height: 1.8;}
}


article.contents {
	padding-top: 60px;
	padding-bottom: 60px;
}

h1, h2, h3, h4, h5, strong, b, em, dt, table caption {
	font-weight: 700;
}

dl, dt, dd {
	margin: 0;
	padding: 0;
}

small, cite {
	color: #777777;
	font-size: 1.2rem;
	margin-top: 5px;
}

figure,
figcaption {
	margin: 0;
	padding: 0;
}

mark {
	display: block;
	background: none;
	margin: 0;
	padding: 0;
}

blockquote {
	display: block;
	background: none;
	margin: 0;
	padding: 0;
}


/* ----------------------------------------------------------------------------------------
  ヘッダー
------------------------------------------------------------------------------------------- */
.logo-p {
  width: 100%;
  height: 50px;
  background: #222222;
}

.logo-p .logo-p-inner {
  width: 1200px;
  height: 50px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #cacaca;
	font-size: 1.4rem;
	font-weight: bold;
  line-height: 0;
}

.logo-p .logo-p-inner .img img { width: auto; height: 30px;}
.logo-p .logo-p-inner .txt { margin-left: 10px;}


@media screen and (max-width: 1230px) {
		.logo-p .logo-p-inner { width: 1000px; padding-left: 8px; padding-right: 8px;}
}

@media screen and (min-width: 769px) {
		.logo-p { display: none}
}

@media screen and (max-width: 768px) {
		.logo-p { display: block;}
		.logo-p .logo-p-inner { width: 100%; padding: 0 8px; font-size: 1.2rem;}
}

@media screen and (max-width: 480px) {
		.logo-p .logo-p-inner { width: 100%; padding: 0 8px; font-size: 1.0rem;}
		.logo-p .logo-p-inner .img img { width: auto; height: 20px;}
		.logo-p .logo-p-inner .txt { margin-left: 5px;}
}


/* ----------------------------------------------------------------------------------------
  プロモーション
------------------------------------------------------------------------------------------- */
.p-promotion {
	background: #df4577;
}

.p-promotion .contents {
	color: #ffffff;
	font-size: 2.0rem;
	text-align: center;
  padding: 20px;
}

.p-promotion .contents a {
	color: #ffffff;
	font-size: 1.6rem;
	padding: 5px 15px;
	border: 2px solid #ffffff;
	border-radius: 40px;
	background-color: transparent;
	transition: background-color .3s,border .3s,color .3s;
	display: inline-block;
}

.p-promotion .contents a:hover {
	color: #d83c42;
	text-decoration: none;
	background-color: #ffffff;
}

.p-promotion .contents a span {
	font-size: 1.0rem;
}

.p-promotion .contents a:last-child {
	margin-left: 10px;
}

.p-promotion .contents img {
	margin-right: 20px;
	float: left;
}


@media screen and (max-width: 768px) {
		.p-promotion .contents { font-size: 1.6rem;}
		.p-promotion .contents a { font-size: 1.2rem;}
}

@media screen and (max-width: 480px) {
	.p-promotion .contents { text-align: center;}
	.p-promotion .contents a { display: block; margin-top: 5px;}
	.p-promotion .contents a:last-child { margin-left: 0px;}
	.p-promotion .contents img { float: none; margin: 0 auto 10px; display: block;}
}


/* ----------------------------------------------------------------------------------------
  機能
------------------------------------------------------------------------------------------- */
ul.function-list{
	width: 100%;
  display: flex;
  flex-wrap: wrap;
}

ul.function-list li {
	width: 15%;
	margin: 0.8%;
	float: left;
	position: relative;
}

ul.function-list li a {
	min-height: 120px;
	display: flex;
  justify-content: center;
  align-items: center;
	flex-flow: row wrap;
	color: #555555;
	font-size: 1.4rem;
	line-height: 1.4;
	text-align: center;
	background: #efefef;
	text-decoration: none;
	padding: 10px;
	border-radius: 2px;
	-webkit-transition: all .25s;
	transition: all .25s;
	position: relative;
}

ul.function-list li a:hover {
	color: #ffffff;
	background: #e95383;
}

ul.function-list li a span {
	font-size: 1.0rem;
}


@media screen and (max-width: 1230px) {
	ul.function-list li {	width: 19%;	margin: 0.5%;}
}

@media screen and (max-width: 768px) {
	ul.function-list li {	width: 24%;	margin: 0.5%;}
}

@media screen and (max-width: 480px) {
	ul.function-list li {	width: 32.33%; margin: 0.5%;}
	ul.function-list li a { font-size: 1.2rem;}
}


/*画像回り込み*/
figure.left {
	float: left;
	padding: 0 40px 40px 0;
}

figure.right {
	float: right;
	padding: 0 0 40px 40px;
}

figure.left,
figure.right {
	max-width: 60%;
}

figure.left img,
figure.right img {
  border: 0;
  display: inline-block;
  position: relative;
	width: auto;
	max-width: 100%;
	height: auto;
}

figure.left figcaption,
figure.right figcaption {
	color: #777777;
	font-size: 1.2rem;
	text-align: center;
}

@media screen and (max-width: 768px) {
	figure.left, figure.right {	max-width: 90%; padding: 20px 0;	margin: 0 auto;	text-align:center; float: none;}
}


/* ----------------------------------------------------------------------------------------

  パーツ
	
------------------------------------------------------------------------------------------- */
/*---------------------------------------------------------------------------------
  テーブル
---------------------------------------------------------------------------------*/
/* テーブル1 */
.table-wrapper {
	-webkit-overflow-scrolling: touch;
	overflow-x: auto;
	display: block;
}

.table-wrapper table {
	width: 100%;
	margin: 0;
	color: #444444;
	font-size: 1.4rem;
}

.table-wrapper table caption {
	color: #222222;
	font-size: 1.8rem;
	text-decoration: underline;
}

.table-wrapper table tbody tr {
	border: solid 1px rgba(210, 215, 217, 0.75);
	border-left: 0;
	border-right: 0;
}

.table-wrapper table tbody tr:nth-child(2n + 1) {
	background-color: rgba(230, 235, 237, 0.25);
}

.table-wrapper table td {
	padding: 10px;
}

.table-wrapper table th {
	font-weight: bold;
	padding: 10px;
	text-align: center;
}

.table-wrapper table thead {
	border-bottom: solid 2px rgba(210, 215, 217, 0.75);
}

.table-wrapper table tfoot {
	border-top: solid 2px rgba(210, 215, 217, 0.75);
}

.table-wrapper table tbody {
	border-bottom: solid 2px rgba(210, 215, 217, 0.75);
}

@media screen and (max-width: 768px){
	.table-wrapper table { font-size: 1.2rem;}
	.table-wrapper table caption { font-size: 1.4rem;}
}


/* テーブル2 */
table.alt {
	border-collapse: separate;
}

table.alt tbody tr td {
	border: solid 1px rgba(210, 215, 217, 0.75);
	border-left-width: 0;
	border-top-width: 0;
}

table.alt tbody tr td:first-child {
	border-left-width: 1px;
}

table.alt tbody tr:first-child td {
	border-top-width: 1px;
}

table.alt thead {
	border-bottom: 0;
}

table.alt tfoot {
	border-top: 0;
}


/*---------------------------------------------------------------------------------
  タブメニュー
---------------------------------------------------------------------------------*/
ul.tab-menu {
	width: 100%;
	min-height: 40px;
	position: relative;
}

ul.tab-menu::before {
	content: "";
	background-color: #eaeaea;
	height: 1px;
	bottom: -1px;
	left: 0;
	width: 100%;
	position: absolute;
}

ul.tab-menu li {
	display: inline;
	line-height: 40px;
	float: left;
}

ul.tab-menu li a {
	display: block;
	color: #999999;
	color: #1f5c9e;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	padding: 0 20px;
	background: #fafafa;
	border: 1px solid #eaeaea;
	cursor: pointer;
	position: relative;
	-webkit-transition: all .5s;
	transition: all .5s;
}

ul.tab-menu li a:hover {
	color: #222222;
	color: #32b4f1;
	background: #ffffff;
}

ul.tab-menu li a.focus {
	color: #e95383;
	background: #ffffff;
	border-bottom: none;
}

ul.tab-menu li a.focus::before {
	content: "";
	background-color: #e95383;
	height: 2px;
	top: -1px;
	left: 0;
	width: 100%;
	position: absolute;
}



@media screen and (max-width: 480px) {
	ul.tab-menu::before {	position: inherit;}
	ul.tab-menu li { width: 50%;}
	ul.tab-menu li a.focus { border: 1px solid #eaeaea;}
}


/*---------------------------------------------------------------------------------
  タブセレクトメニュー
---------------------------------------------------------------------------------*/
.tabselect {
	flex-wrap: wrap;
	display: flex;
	justify-content: flex-start;
	position: relative;
}

.tabselect::before {
	content: "";
	background-color: #eaeaea;
	height: 1px;
	bottom: 0px;
	left: 0;
	width: 100%;
	position: absolute;
}

.tabselect-item {
	display: block;
	color: #999999;
	color: #1f5c9e;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	line-height: 40px;
	padding: 0 20px;
	background: #fafafa;
	border: 1px solid #eaeaea;
	cursor: pointer;
	position: relative;
	-webkit-transition: all .5s;
	transition: all .5s;
}

.tabselect-item:hover {
	color: #222222;
	color: #32b4f1;
	background: #ffffff;
}

.tabselect-item.active {
	color: #e95383;
	background: #ffffff;
	border-bottom: none;
}

.tabselect-item.active::before {
	content: "";
	background-color: #e95383;
	height: 2px;
	top: -1px;
	left: 0;
	width: 100%;
	position: absolute;
}

@media screen and (max-width: 768px) {
	.tabselect-item { flex: 0 0 50%;}
}

@media screen and (max-width: 480px) {
	.tabselect-item { font-size: 1.2rem;}
}


/*---------------------------------------------------------------------------------
  フィルターメニュー
---------------------------------------------------------------------------------*/
ul.filter-menu {
	width: 100%;
	min-height: 40px;
	padding: 0 10px;
	position: relative;
}

ul.filter-menu::before {
	content: "";
	background-color: #eaeaea;
	height: 1px;
	bottom: -1px;
	left: 0;
	width: 100%;
	position: absolute;
}

ul.filter-menu li {
	display: inline;
	padding: 0 10px;
	margin: 0 10px;
	line-height: 40px;
	float: left;
	position: relative;
}

ul.filter-menu li span {
	display: block;
	color: #999999;
	color: #1f5c9e;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	-webkit-transition: all .5s;
	transition: all .5s;
}

ul.filter-menu li span:hover{
	color: #222222;
	color: #32b4f1;
}

ul.filter-menu li.active span {
	color: #e95383;
}

ul.filter-menu li.active::after {
	content: "";
	background-color: #e95383;
	height: 2px;
	bottom: -1px;
	left: 0;
	width: 100%;
	position: absolute;
}

@media screen and (max-width: 480px) {
	ul.filter-menu { padding: 0;}
	ul.filter-menu::before { position: inherit;}
	ul.filter-menu li { width: 50%; margin: 0; background: #fafafa; border: 1px solid #eaeaea;}
	ul.filter-menu li.active { background: #ffffff;}
}

.disnon {
  display: none;
}


/*リボン*/
.ribbon {
	display: block;
  position: absolute;
  right: -5px;
  top: -5px;
  width: 100px;
}

@media screen and (max-width: 768px) {
	.ribbon {	width: 90px;}
}

@media screen and (max-width: 480px) {
	.ribbon {	width: 80px;}
}


/*マーク*/
.mark {
	display: block;
  position: absolute;
  /*right: -10px;*/
  right: 40px;
  top: -10px;
}

@media screen and (max-width: 768px) {
	.mark {	/*right: 10px;*/right: 40px;}
}



/* ----------------------------------------------------------------------------------------
  アイコン
------------------------------------------------------------------------------------------- */
span.icon {
	display: inline-block;
	color: #ffffff;
	font-size: 1.2rem;
	margin: 0 0 0 5px;
	padding: 2.5px 10px;
	border-radius: 2px;
}

span.icon.blue { background: #69c3dd;}
span.icon.red {	background: #fd6c6e;}
span.icon.green { background: #4bb7ae;}
span.icon.yellow { background: #f7ca2e;}
span.icon.orange { background: #e67e22;}
span.icon.purple { background: #a48cd2;}


/* ----------------------------------------------------------------------------------------
  ボタン
------------------------------------------------------------------------------------------- */
.button {
	-moz-appearance: none;
	-webkit-appearance: none;
	-ms-appearance: none;
	appearance: none;
	-moz-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
	-webkit-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
	-ms-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
	transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
	background-color: transparent;
	background-color: #e6e6e6;
  border-radius: 2.5px;
  border: 1px solid #cccccc;
  /*box-shadow: 0 1px 0 rgba(0, 0, 0, 0.3), 0 2px 2px -1px rgba(0, 0, 0, 0.5), 0 1px 0 rgba(255, 255, 255, 0.3) inset;*/
	color: #555555 !important;
	cursor: pointer;
	display: inline-block;
  *display: inline;
	font-size: 1.4rem;
	font-weight: bold;
	/*text-shadow: rgba(0,0,0,0.5) 0 -1px 0;*/
	height: 3.5em;
	letter-spacing: 0.075em;
	line-height: 3.5em;
	padding: 0 2em;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
	position: relative;
}

.button:hover {
	background-color: rgba(0, 0, 0, 0.05);
	text-decoration: none;
}

.button:active {
	background-color: rgba(0, 0, 0, 0.15);
}

.button.icon:before {
	margin-right: 0.5em;
}

/*形*/
.button.fit {
	display: block;
	margin: 0 0 1em 0;
	width: 100%;
}

.button.disabled,
.button:disabled {
	-moz-pointer-events: none;
	-webkit-pointer-events: none;
	-ms-pointer-events: none;
	pointer-events: none;
	opacity: 0.25;
}

/*サイズ*/
.button.small {
	font-size: 1.2rem;
}

.button.big {
	font-size: 1.6rem;
	height: 4em;
	line-height: 4em;
}

/*型*/
.button.special {
	background-color: #d9534f;
	border:none;
	/*box-shadow: none;*/
	color: #ffffff !important;
}

.button.special:hover {
	background-color: #e95383;
}

.button.special:active {
	background-color: #e95383;
}

/*色*/
.button.red           {	background: #d9534f; border-color: #d9534f;}
.button.red:hover     {	background-color: #e95383; text-decoration:none;}
.button.red:active    { background: #e95383;}

.button.blue          { background-color: #3d91d8; border-color: #3d91d8;}
.button.blue:hover    { background-color: #025aa5; text-decoration:none;}
.button.blue:active   { background: #025aa5;}

.button.green         { background-color: #5cB85c; border-color: #5cB85c;}
.button.green:hover   { background-color: #449d44; text-decoration:none;}
.button.green:active  { background: #449d44;}

.button.yellow        { background-color: #f0ad4e; border-color: #f0ad4e;}
.button.yellow:hover  { background-color: #ec971f; text-decoration:none;}
.button.yellow:active { background: #ec971f;}


/*グループ*/
.button-group,
.button-group li{
  display: inline-block;
  *display: inline;
  zoom: 1;
}

.button-group{
  font-size: 0;
  margin: 0;
  padding: 0;
	/*
  background: rgba(239, 239, 239, 1);
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 2px;
	*/
}

.button-group li{
  margin-right: -1px;
}

.button-group .button{
  font-size: 1.2rem;
  border-radius: 0; 
}

.button-group .button::after {
	content: none;
}

.button-group .button:active{
  box-shadow: 0 0 1px rgba(0, 0, 0, .2) inset, 5px 0 5px -3px rgba(0, 0, 0, .2) inset, -5px 0 5px -3px rgba(0, 0, 0, .2) inset;   
}

.button-group li:first-child .button{
  border-radius: 3px 0 0 3px;
}

.button-group li:first-child .button:active{
  box-shadow: 0 0 1px rgba(0, 0, 0, .2) inset, -5px 0 5px -3px rgba(0, 0, 0, .2) inset;
}

.button-group li:last-child .button{
  border-radius: 0 3px 3px 0;
}

.button-group li:last-child .button:active{
  box-shadow: 0 0 1px rgba(0, 0, 0, .2) inset, 5px 0 5px -3px rgba(0, 0, 0, .2) inset;
}

@media screen and (max-width: 768px) {
	.button-group li { width: 50%; margin: auto; padding: auto;}
	.button-group li:first-child .button,	.button-group li:last-child .button {	border-radius: 0;}
}

@media screen and (max-width: 480px) {
	.button {	font-size: 1.2rem;}
	.button.small { font-size: 1.0rem;}
	.button.big { font-size: 1.4rem;}
}



/*ul.actions*/
ul.actions {
	cursor: default;
	list-style: none;
	padding-left: 0;
}

ul.actions li {
	display: inline-block;
	/*padding: 0 1em 0 0;*/
	padding: 0 10px 10px 0;
	vertical-align: middle;
}

ul.actions li:last-child {
	padding-right: 0;
}

ul.actions.small li {
	/*padding: 0 0.5em 0 0;*/
	padding: 0 5px 5px 0;
}

ul.actions.vertical li {
	display: block;
	padding: 1em 0 0 0;
}

ul.actions.vertical li:first-child {
	padding-top: 0;
}

ul.actions.vertical li > * {
	margin-bottom: 0;
}

ul.actions.vertical.small li {
	padding: 0.5em 0 0 0;
}

ul.actions.vertical.small li:first-child {
	padding-top: 0;
}

ul.actions.fit {
	display: table;
	margin-left: -1em;
	padding: 0;
	table-layout: fixed;
	width: calc(100% + 1em);
}

ul.actions.fit li {
	display: table-cell;
	padding: 0 0 0 1em;
}

ul.actions.fit li > * {
	margin-bottom: 0;
}

ul.actions.fit.small {
	margin-left: -0.5em;
	width: calc(100% + 0.5em);
}

ul.actions.fit.small li {
	padding: 0 0 0 0.5em;
}


/* ----------------------------------------------------------------------------------------
  ボックス
------------------------------------------------------------------------------------------- */
.box {
	padding: 20px 30px;
	background: rgba(230, 235, 237, 0.25);
	border: solid 1px rgba(210, 215, 217, 0.75);
	border-radius: 1px;
}

.box dt {
	color: #222222;
	font-size: 1.8rem;
	margin-bottom: 10px;
}

.box dd {
	font-size: 1.4rem;
}

.box.red {
	background: rgba(217, 83, 79, 0.05);
	border: solid 1px rgba(217, 83, 79, 0.75);
}

.box.red dt {
	color: #e95383;
}

.box.blue {
	background: rgba(61, 145, 216, 0.05);
	border: solid 1px rgba(61, 145, 216, 0.75);
}

.box.blue dt{
	color: #025aa5;
}

.box.red dd,
.box.blue dd {
	color: #444444;
}

.box dd h4 {
	font-size: 1.6rem;
	text-decoration: underline;
}

.box dd p {
	font-size: 1.4rem;
	font-weight: normal;
}


@media screen and (max-width: 768px) {
	.box dt { font-size: 1.4rem;}
	.box dd { font-size: 1.2rem;}
}


/* ----------------------------------------------------------------------------------------
  メディア
------------------------------------------------------------------------------------------- */
/*コラム*/
.madia-wrap {
	width: 100%;
}

.media-wrap-inner {
	width: 1200px;
	margin: 0 auto;
}

.media-wrap-inner ul.slider,
.media-wrap-inner ul.slider2 {
	width: 1120px;
	margin: 0 40px;
}

.media-wrap-inner ul.slider li.listblock,
.media-wrap-inner ul.slider2 li.listblock {
	margin: 10px;
	background: #ffffff;
	box-shadow: 0 2px 6px rgba(112,112,112,0.2);
	float: left;
}

.media-wrap-inner ul.slider2 li.listblock img {
  width: 100%;
  height: auto;
}

.media-wrap-inner ul.slider li.listblock a,
.media-wrap-inner ul.slider li.listblock a:active,
.media-wrap-inner ul.slider2 li.listblock a,
.media-wrap-inner ul.slider2 li.listblock a:active {
	display: block;
	color: #222222;
	border: 2px solid #eaeaea;
	-webkit-transition: all .5s;
	transition: all .5s;
}

.media-wrap-inner ul.slider li.listblock a:hover,
.media-wrap-inner ul.slider2 li.listblock a:hover {
	border: 2px solid #f7d370;
	box-shadow: 0 2px 6px rgba(112,112,112,0.5);
}

.media-wrap-inner ul.slider li.listblock figure,
.media-wrap-inner ul.slider2 li.listblock figure {
	-moz-transition: -moz-transform 0.5s linear;
	-webkit-transition: -webkit-transform 0.5s linear;
	-o-transition: -o-transform 0.5s linear;
	-ms-transition: -ms-transform 0.5s linear;
	transition: transform 0.5s linear;
}

.media-wrap-inner ul.slider li.listblock a:hover::after figure,
.media-wrap-inner ul.slider2 li.listblock a:hover::after figure {
	-webkit-transform: scale(1.2);
	-moz-transform: scale(1.2);
	-o-transform: scale(1.2);
	-ms-transform: scale(1.2);
	transform: scale(1.2);
}

.media {
	width: 100%;
	margin: 0;
	position: relative;
}

.media figure {
	width: 35%;
	/*width: 40%;*/
	height: 150px;
	line-height: 0;
	float: left;
	overflow: hidden;
}

.media dl {
	width: 65%;
	/*width: 60%;*/
	padding: 20px;
	letter-spacing: 0;
	float: left;
}

.media dl dt {
	font-size: 1.6rem;
}

.media dl dt span {
	font-size: 1.2rem;
}

.media dl dd {
	font-size: 1.4rem;
	line-height: 1.5;
	text-overflow: ellipsis;
	overflow : hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

@media screen and (max-width: 1230px) {
	.media-wrap-inner {	width: 984px;}
	.media-wrap-inner ul.slider, .media-wrap-inner ul.slider2 {	width: 904px; margin: 0 40px;}
	.media figure {	width: 35%;	height: 150px;}
	.media dl {	width: 65%;}
}

@media screen and (max-width: 768px) {
	.media-wrap-inner {	width: 100%; padding-left: 8px;	padding-right: 8px;}
	.media-wrap-inner ul.slider, .media-wrap-inner ul.slider2 {	width: 90%; margin: 0 5%;}
	.media figure {	width: 30%;	height: 175px;}
	.media dl {	width: 70%;}
}


/* ----------------------------------------------------------------------------------------
  Call to Action
------------------------------------------------------------------------------------------- */
/*Call to Action-Header*/
aside.cta-header {
	width: 400px;
	padding: 40px;
	background: linear-gradient(30deg, #dd3e54, #d83c42);
	color: #ffffff;
	font-weight: bold;
	text-align: center;
	display: inline-block;
	position: absolute;
	bottom: -20px;
	right: 8px;
}

aside.cta-header.red {
	background: linear-gradient(30deg, #dd3e54, #d83c42);
}

aside.cta-header.blue {
	background: linear-gradient(30deg, #42bde3, #3d91d8);
}

@media screen and (max-width: 768px) {
	aside.cta-header { display: none;}
}

aside.cta-header a:link,
aside.cta-header a:visited,
aside.cta-header a:active {
	color: #ffffff !important;
	text-decoration: none;
}

.cta-document .button {
	height: auto;
	line-height: 1.0;
	box-shadow: inset 0 0 0 2px #ffffff;
	background: none;
	border: none;
	padding: 20px 10px;
}

.cta-document .button {
	font-size: 2.0rem;
}

.cta-document .button span {
	font-size: 1.6rem;
	display: block;
	margin-bottom: 10px;
}

.cta-trial {
	width: 200px;
	font-size: 1.6rem;
	margin-top: 0px;
	padding-bottom: 5px;
	display: inline-block;
	border-bottom: 2px solid #ffffff;
	text-align: center;
}

.cta-trial:after {
	content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 0 0 5px;
  border-right: 2px solid rgba(255, 255, 255, 1);
  border-top: 2px solid rgba(255, 255, 255, 1);
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.cta-phone {
	font-size: 1.4rem;
	letter-spacing: 0;
	margin-top: 20px;
}

.cta-phone .tokyo {
	font-size: 2.0rem;
	letter-spacing: .12em;
	display: block;
}

.cta-phone .nagoya,
.cta-phone .osaka {
	letter-spacing: 0;
}

.cta-phone .department {
	display: block;
}


/*Call to Action-Footer*/
aside.cta-footer {
	color: #ffffff;
	text-align: center;
	position: relative;
}

aside.cta-footer::before {
	background-color: rgba(0,0,0,0.7);
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: ' ';
  position: absolute;
}

aside.cta-footer .contents {
	padding: 80px 8px;
	/*min-height: 350px;*/
	position: relative;
}

aside.cta-footer .contents h3 {
	color: #ffffff;
	font-size: 4.0rem;
	font-weight: normal;
	line-height: 1.6;
	letter-spacing: 1px;
	margin-bottom: 20px;
}


@media screen and (max-width: 768px) {
	aside.cta-footer .contents { width: 100%;	padding: 40px 8px; text-align: center;}
	aside.cta-footer .contents h3 { font-size: 2.8rem;}
	aside.cta-footer .contents ul.actions li { width: 100%; padding: 0 10px 10px 10px;}
	aside.cta-footer .contents .button {	display: block;	margin: 0; width: 100%;}
}


/*Call to Action-WhitePaper*/
aside.cta-whitepaper {
	background: #f5f5f5;
}

aside.cta-whitepaper .contents {
	width: 900px;
	padding: 80px 0;
}

aside.cta-whitepaper .contents mark {
	color: #222222;
	font-size: 2.0rem;
	font-weight: bold;
	text-align: center;
	letter-spacing: 4px;
}

aside.cta-whitepaper .contents h3 {
	font-size: 3.6rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	letter-spacing: 2px;
}

aside.cta-whitepaper .contents .whitepaper-item {
	display: flex;
	justify-content: space-between;
}
@media screen and (max-width: 768px) {
  aside.cta-whitepaper .contents .whitepaper-item {
    padding: 0 16px;
  }
}

aside.cta-whitepaper .contents .whitepaper-item .whitepaper-item-txt {
	width: 50%;
}

aside.cta-whitepaper .contents .whitepaper-item .whitepaper-item-img {
	width: 40%;
	margin: 0 auto;
	display: block;
}

aside.cta-whitepaper .contents .whitepaper-item .whitepaper-item-txt dt {
	color: #e95383;
	font-size: 1.8rem;
	line-height: 1.6;
	letter-spacing: 2px;
}

aside.cta-whitepaper .contents .whitepaper-item .whitepaper-item-txt p {
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: 2px;
}

aside.cta-whitepaper .contents .whitepaper-item .whitepaper-item-txt ul.actions li {
	width: 100%;
	padding: 0 0 10px 0;
}

aside.cta-whitepaper .contents .whitepaper-item .whitepaper-item-txt ul.actions li a span {
	font-size: 1.0rem;
}

aside.cta-whitepaper .contents .whitepaper-item .whitepaper-item-txt ul.actions li a.button {
	width: 100%;
	padding: 0 1em;
}

aside.cta-whitepaper .contents .whitepaper-item .whitepaper-item-img img {
	width: 100%;
}

@media screen and (max-width: 768px){
	aside.cta-whitepaper .contents { width: 100%;	padding: 40px 0;}
	aside.cta-whitepaper .contents mark { font-size: 1.6rem;}
	aside.cta-whitepaper .contents h3 { font-size: 2.8rem;}
	aside.cta-whitepaper .contents .whitepaper-item, aside.cta-whitepaper .contents .whitepaper-item:nth-child(odd) {	flex-direction: column;}
	aside.cta-whitepaper .contents .whitepaper-item .whitepaper-item-txt,	aside.cta-whitepaper .contents .whitepaper-item .whitepaper-item-img { width: 100%;	text-align: center;}
	aside.cta-whitepaper .contents .whitepaper-item .whitepaper-item-img img { width: 80%;}
	aside.cta-whitepaper .contents .whitepaper-item .whitepaper-item-txt { padding: 20px 0 0;}
	aside.cta-whitepaper .contents .whitepaper-item .whitepaper-item-txt dt { font-size: 1.4rem;}
	aside.cta-whitepaper .contents .whitepaper-item .whitepaper-item-txt p { font-size: 1.2rem;}
	aside.cta-whitepaper .contents .whitepaper-item .whitepaper-item-txt dd ul.actions li { width: 100%; padding: 0 10px 10px 10px;}
	aside.cta-whitepaper .contents .whitepaper-item .whitepaper-item-txt dd .button {	display: block;	margin: 0; width: 100%;}
}


/*導入企業一覧*/
aside.customers {
	padding: 80px 0;
	background: #f5f5f5;
}

aside.customers .contents {
}

aside.customers .contents h2,
aside.customers .contents h3 {
	color: #e95383;
	font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	letter-spacing: 2px;
}

aside.customers .contents p {
	font-size: 1.6rem;
	text-align: center;
	line-height: 1.8;
	letter-spacing: 2px;
}

aside.customers .contents ul.details {
	display: flex;
	flex-wrap: wrap;
	justify-content: center; 
}

aside.customers .contents ul.details li {
	width: 240px;
	height: 120px;
	text-align: center;
	background: none center center / auto no-repeat;
	position: relative;
}

aside.customers .contents ul.details li dl {
	width: 240px;
	height: 120px;
	color: #ffffff;
	text-align: center;
	box-sizing: border-box !important;
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
	padding: 20px;
	background: rgba(0,0,0,.6);
}

aside.customers .contents ul.details li dl dt {
	font-size: 1.6rem;
  line-height: 1.6;
  margin-bottom: 5px;
}

aside.customers .contents ul.details li dl dt span {
	font-size: 1.4rem;
	letter-spacing: -1px;
}
	
aside.customers .contents ul.details li dl dd {
	font-size: 1.2rem;
}
	
aside.customers .contents ul.details li dl dd span {
	display: inline-block;
	background: rgba(255,255,255,.1);
	border: 2px solid rgba(255,255,255,.5);
	border-radius: 0px 10px 0px 10px;
	padding: 2px 20px;
}

aside.customers .contents ul.details .type1 {	overflow: hidden;}
aside.customers .contents ul.details .type1 dl {　transition: opacity .6s, transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);}
aside.customers .contents ul.details .type1:not(:hover) dl { opacity: 0; transform: translateY(100%);}

aside.customers .contents ul.details .type2 {	perspective: 1000px;}
aside.customers .contents ul.details .type2 img, aside.customers .contents ul.details .type2 dl { transition: opacity .6s, transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);	backface-visibility: hidden;}
aside.customers .contents ul.details .type2:hover img {	transform: rotateX(180deg);}
aside.customers .contents ul.details .type2 dl { background-color: rgba(0,0,0,.6);}
aside.customers .contents ul.details .type2:not(:hover) dl { transform: rotateX(-180deg);}

aside.customers .contents ul.details .type3 {	overflow: hidden;}
aside.customers .contents ul.details .type3 dl { background: transparent;}
aside.customers .contents ul.details .type3 dl dt, aside.customers .contents ul.details .type3 dl dd { position: relative; z-index: 1; transition: opacity .3s .3s;}
aside.customers .contents ul.details .type3:not(:hover) dl dt, aside.customers .contents ul.details .type3:not(:hover) dl dd { opacity: 0; transition-delay: 0s;}
aside.customers .contents ul.details .type3 dl::before, aside.customers .contents ul.details .type3 dl::after { content: ""; display: block; position: absolute; top: 0; width: 50%; height: 100%; background: rgba(0,0,0,.6); transition: opacity .3s, transform .3s cubic-bezier(0.215, 0.61, 0.355, 1);}
aside.customers .contents ul.details .type3 dl::before { left: 0;}
aside.customers .contents ul.details .type3 dl::after {	right: 0;}
aside.customers .contents ul.details .type3:not(:hover) dl::before, aside.customers .contents ul.details .type3:not(:hover) dl::after { opacity: 0;	transition-duration: .6s;}
aside.customers .contents ul.details .type3:not(:hover) dl::before { transform: translateX(-175px) skew(-30deg);}
aside.customers .contents ul.details .type3:not(:hover) dl::after {	transform: translateX(275px) skew(-30deg);}


@media screen and (max-width: 768px){
	aside.customers { padding: 40px 0;}
	aside.customers .contents { width: 100%;}
	aside.customers .contents mark { font-size: 1.4rem;}
	aside.customers .contents h2, aside.customers .contents h3 { font-size: 2.0rem;}
	aside.customers .contents ul.details li dl dt {	font-size: 1.4rem;}
	aside.customers .contents ul.details li dl dt span {	font-size: 1.2rem; letter-spacing: 0;}
	aside.customers .contents ul.details li dl dd { font-size: 1.0rem;}
}


/*関連情報*/
aside.relatedness {
	padding: 0;
}

aside.relatedness ul {
	width: 100%;
}

aside.relatedness ul li {
	width: 25%;
	text-align: center;
	padding: 40px;
	float: left;
}

aside.relatedness ul li:nth-child(odd) {
	background: #f7f7f7;
	background: #fbf3f3;
}

aside.relatedness ul li:nth-child(even) {
	background: #ffffff;
}

aside.relatedness ul li figure img  {
	-moz-transition: -moz-transform 0.25s linear;
	-webkit-transition: -webkit-transform 0.25s linear;
	-o-transition: -o-transform 0.25s linear;
	-ms-transition: -ms-transform 0.25s linear;
	transition: transform 0.25s linear;
}

aside.relatedness ul li a:hover figure img  {
	-webkit-transform: scale(1.2);
	-moz-transform: scale(1.2);
	-o-transform: scale(1.2);
	-ms-transform: scale(1.2);
	transform: scale(1.2);
}

aside.relatedness ul li figure {
	line-height: 0;
	margin-top: 20px;
}

aside.relatedness ul li figure img {
	width: auto;
	/*max-width: 100%;
	height: auto;*/
	max-height: 100%;
}

aside.relatedness ul li a {
	color: #e95383;
	font-size: 2.0rem;
	font-weight: bold;
	text-decoration: none;
	line-height: 1.25;
}


@media screen and (max-width: 768px){
	aside.relatedness ul li {	width: 50%;}
	aside.relatedness ul li a { font-size: 1.6rem;}
	aside.relatedness ul li:nth-child(1), aside.relatedness ul li:nth-child(4) { background: #f7f7f7;}
	aside.relatedness ul li:nth-child(2), aside.relatedness ul li:nth-child(3) { background: #ffffff;}
}


/*---------------------------------------------------------------------------------
　フッターメニュー
---------------------------------------------------------------------------------*/
.footernavi-wrap {
	width: 100%;
	background: #222222;
}

.footernavi-inner {
	width: 1200px;
	color: rgba(255,255,255,0.9);
	font-size: 1.4rem;
	margin: 0 auto;
	padding: 80px 0;
}

.footernavi-inner dl {
	width: 17.5%;
	margin-left: 2.5%;
	float: left;
}

.footernavi-inner dl dt {
	font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 10px;
}

.footernavi-inner dl dt span {
	font-size: 1.2rem;
}

.footernavi-inner dl dd {
	font-size: 1.4rem;
	line-height: 2.0;
}

.footernavi-inner a { color: rgba(255,255,255,0.7);}
.footernavi-inner a:hover { color: rgba(255,255,255,1); text-decoration:none; transition: color 0.2s ease-in-out;}

.footernavi-inner address {
	width: 40%;
	font-style: normal;
	float: left;
}

.footernavi-inner address dl {
	width: 100%;
	margin-left: 0;
}

.footernavi-inner address dl dt {
	margin-bottom: 5px;
	border: none;
}

.footernavi-inner address dl dd {
	font-size: 1.6rem;
	margin-bottom: 5px;
}

.footernavi-inner address dl dd ul {
	font-size: 2.8rem;
  font-size: 3.2rem;
  line-height: 1.5;
	letter-spacing: 2.5px;
	margin-bottom: 10px;
}

.footernavi-inner address dl dd ul span {
	font-size: 2.0rem;
	letter-spacing: 0;
	padding-right: 10px;
}

.footernavi-inner address dl dd small {
	color: rgba(255,255,255,0.6);
	font-size: 1.2rem;
	margin-bottom: 20px;
}

.footernavi-inner dl {
	width: 17.5%;
	margin-left: 2.5%;
	float: left;
}


@media screen and (max-width: 1230px) {
	.footernavi-inner {	width: 984px;}
}

@media screen and (max-width: 768px) {
	.footernavi-inner {	width: 100%; padding: 40px 20px;}
	.footernavi-inner dl { width: 100%;	margin: 20px 0 0; text-align: center; float: none;}
	.footernavi-inner dl dd ul li { width: 33.33%; float: left;}
	.footernavi-inner address, .footernavi-inner address dl {	width: 100%; text-align: center; float: none;}
	.footernavi-inner address dl dd ul li { width: 100%; float: none;}
}

@media screen and (max-width: 480px) {
	.footernavi-inner dl dt, .footernavi-inner address dl dt { font-size: 1.4rem;}
	.footernavi-inner dl dd, .footernavi-inner address dl dd { font-size: 1.2rem;}
	.footernavi-inner dl dd ul li { width: 50%; float: left;}
	.footernavi-inner address dl dd ul {	font-size: 2.0rem;}
	.footernavi-inner address dl dd ul span { font-size: 1.6rem;}
	.footernavi-inner address dl dd small { font-size: 1.0rem;}
}



/* ----------------------------------------------------------------------------------------
  サイドメニュー
------------------------------------------------------------------------------------------- */
@media screen and (max-width: 768px) {
	.contents-side { display: none;}
}


/*お問い合わせ*/
.contents-side address {
	font-style: normal;
	border-top: 3px solid #d9534f;
	background: #f3f3f3;
	padding: 17px 20px 20px;
	margin-bottom: 1px;
}

.contents-side address dl {
	line-height: 1.6;
}

.contents-side address dt {
	font-size: 1.8rem;
	text-align: center;
	padding: 20px 0;
	margin-bottom: 0;
}

.contents-side address dd {
	font-size: 1.4rem;
	text-align: center;
	letter-spacing: 0;
	padding: 0;
	margin-bottom: 10px;
}

.contents-side address small {
	font-size: 1.2rem;
	text-align: center;
	margin-bottom: 10px;
}

.contents-side address table {
	border-collapse: separate;
	border-spacing: 5px;
	font-size: 1.4rem;
	line-height: 1.4;
	letter-spacing: 0;
}

.contents-side address table td {
	padding: 5px;
	font-size: 2.0rem;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: -.5px;
}

.contents-side address table th{
	width: 60px;
	text-align: center;
	background: #ffffff;	
	padding: 5px;
}


/*関連情報*/
.contents-side nav {
}

.contents-side nav dl {
	background: #f3f3f3;
	padding: 0 0 20px;
	margin: 0 0 1px 0;
	line-height: 1.0;
}

.contents-side nav dt {
	font-size: 1.8rem;
	padding: 30px 20px 20px;
	margin: 0;
}

.contents-side nav dd {
	font-size: 1.4rem;
	padding: 0;
}

.contents-side nav dd ul {}
.contents-side nav dd ul li {}
.contents-side nav dd ul li:first-child {}
.contents-side nav dd ul li:last-child {}
.contents-side nav dd ul li a {display: block; padding: 12.5px 12.5px 12.5px 37.5px; color: #000000; background: #f3f3f3;	-webkit-transition: all .15s; transition: all .15s;}
.contents-side nav dd ul li a:link { color: #000000; border: none;}
.contents-side nav dd ul li a:hover { color: #222222; font-weight: normal; background: #dbdbdb; text-decoration: none;}
.contents-side nav dd ul li a:active { color: #ffffff; background: #d9534f; font-weight: bold; text-decoration: none;}


/*コラム*/
.sidemenu-column {
	padding: 20px;
	background: #f3f3f3;
	margin-bottom: 1px;
}

.sidemenu-column figure {
	width: 100%;
	height: 160px;
	line-height: 0;
	text-align: center;
	margin-bottom: 10px;
	overflow: hidden;
}

.sidemenu-column dl {
	line-height: 1.6;
}

.sidemenu-column dl dt {
	font-size: 1.6rem;
	margin-bottom: 10px;
}

.sidemenu-column dl dt span {
	color: #ffffff;
	font-size: 1.2rem;
	background: #dc4c40;
	border-radius: 2px 10px 2px 10px;
	padding: 2.5px 5px;
	margin-left: 5px;
}

.sidemenu-column dl dd {
	font-size: 1.4rem;
}

.sidemenu-column a { color: #222222; transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;}
.sidemenu-column a:link { color: #222222; border: none;}
.sidemenu-column a:hover { text-decoration: none;}
.sidemenu-column a dl dd { text-decoration: underline;}

/*顧客情報*/
.contents-side aside {
	padding: 17px 20px 20px;
	background: #f3f3f3;
	margin-top: 10px;
	border-top: 3px solid #d9534f;
}

.contents-side aside dl {
}

.contents-side aside dt {
	font-size: 1.8rem;
	text-align: center;
	padding: 20px 0;
	margin: 0;
}

.contents-side aside dd {
	font-size: 1.4rem;
	padding: 0;
}

.contents-side aside dd p {
	margin-bottom: 10px;
}

.contents-side aside dd ul {
	margin-left: 10px;
}

.contents-side aside dd ul li {
	font-weight: bold;
}

.contents-side aside dd ul li span.ficon-location,
.contents-side aside dd ul li span.ficon-globe {
	color: #e95383;
}

.contents-side aside table {
	border-collapse: separate;
	border-spacing: 5px;
	font-size: 1.4rem;
	line-height: 1.4;
	margin-bottom: 20px;
}

.contents-side aside table td {
	padding: 5px 10px 5px 5px;
}

.contents-side aside table th {
	width: 60px;
	text-align: center;
	background: #ffffff;	
	padding: 5px;
}

.contents-side aside hr {
	border: 0;
	height: 1px;
	background: #e3e3e3;
	margin: 20px 0;
}

.contents-side aside ul.actions li {
	width: 100%;
	padding: 0 0 10px 0;
}

.contents-side aside ul.actions li a span {
	font-size: 1.0rem;
}

.contents-side aside ul.actions li a.button {
	width: 100%;
	padding: 0 1em;
}

/*オンライン相談*/
.contents-side .online-consultation {
	margin: 10px 0 1px 0;
	line-height: 1.0;
}

/*Microsoft Parner*/
.contents-side .microsoft-partner {
	padding: 40px;
	text-align:center;
	background: #f3f3f3;
}

.contents-side .microsoft-partner img {
	width: auto;
	max-width: 100%;
	height: auto;
}

/*デジタルサイネージ広告*/
.sidemenu-column video#transit-advertising {
	width: 230px;
	height: 410px;
	margin: 0 5px;
	text-align: center;
}



/*---------------------------------------------------------------------------------
　広告
---------------------------------------------------------------------------------*/
aside#ad-wrap {
	width: 250px;
	background: #ffffff;
	border-radius: 5px;
	box-shadow: 0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);
	bottom: 100px;
	right: 20px;
	z-index: 99;
	position: fixed;
}

aside#ad-wrap a,
aside#ad-wrap a:link,
aside#ad-wrap a:hover,
aside#ad-wrap a:active {
	color: #222222;
	text-decoration: none;
}

aside#ad-wrap #ad-close {
	display: block;
	width: 20px;
	height: 20px;
	line-height: 20px;
	overflow: hidden;
	color: #efefef;
	font-size: 1.2rem;
	font-weight: bold;
	padding: 0 5px;
	cursor: pointer;
	top: 10px;
	right: 10px;
	position: absolute;
}

aside#ad-wrap dl {
	width: 250px;
	line-height: 1.5;
	text-align: left;
	background: #ffffff;
}

aside#ad-wrap dl dt {
	color: #ffffff;
	font-size: 1.6rem;
	padding: 10px;
	background: #dc4c40;
}

aside#ad-wrap dl dt span {
	color: #dc4c40;
	font-size: 1.2rem;
	background: rgba(255,255,255,0.5);
	border-radius: 2px;
	padding: 2.5px 5px;
	margin-left: 5px;
}

aside#ad-wrap dl dd {
	color: #e95383;
	font-size: 1.6rem;
	font-weight: bold;
	padding: 20px;
}

aside#ad-wrap dl dd figure {
	width: 100%;
	/*width: 150px;*/
	margin: 0 auto 10px;
	text-align: center;
}

aside#ad-wrap dl dd figure img {
	width: 100%;
	height: auto;
	margin: auto;
	border: 1px solid #e3e3e3;
}

aside#ad-wrap .fusionentire a {
	display: block;
	color: #555555;
}

@media screen and (max-width: 768px) {
	aside#ad-wrap { display: none;}
}