@charset "utf-8";

/*------------------------------------
 CMS CSSリセット&ベース HTML4
 ------------------------------------- */

/* margin, padding, border
-------------------------------------- */
#cms-container h1, #cms-container h2, #cms-container h3, #cms-container h4, #cms-container h5, #cms-container h6,
#cms-container a, #cms-container p, #cms-container span,
#cms-container em, #cms-container small, #cms-container strong,
#cms-container sub, #cms-container sup,
#cms-container del, #cms-container ins,
#cms-container abbr, #cms-container dfn,
#cms-container blockquote, #cms-container q, #cms-container cite,
#cms-container code, #cms-container pre,
#cms-container ol, #cms-container ul, #cms-container li, #cms-container dl, #cms-container dt, #cms-container dd,
#cms-container div,
#cms-container img,
#cms-container address,
#cms-container iframe,
#cms-container fieldset, #cms-container form, #cms-container label, #cms-container legend,
#cms-container table, #cms-container caption,
#cms-container tbody, #cms-container tfoot, #cms-container thead,
#cms-container tr, #cms-container th, #cms-container td {
	margin: 0;
	padding: 0;
	border: 0;
}

/* タイポグラフィ
 ------------------------------------- */
#cms-container {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}

#cms-container a,
#cms-container a:visited {
	color: inherit;
}

/* レイアウト
 ------------------------------------- */
#cms-container *, *::before, *::after {
	box-sizing: border-box;
}

/* エレンメンツ
 ------------------------------------- */
#cms-container table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	border-collapse: collapse;
}

#cms-container ol,
#cms-container ul {
	list-style: none;
}

#cms-container img,
#cms-container video {
	max-width: 100%;
}

#cms-container img {
	border-style: none;
}

#cms-container blockquote,
#cms-container q {
	quotes: none;
}

#cms-container blockquote:after,
#cms-container blockquote:before,
#cms-container q:after,
#cms-container q:before {
	content: "";
	content: none;
}


/*------------------------------------
 CMS共通
 ------------------------------------- */
/* フォント */
@font-face {
	font-family: FujitsuSans;
	src: url(//www.fujitsu.com/fontv5/FujitsuSansRegular.eot);
	src: url(//www.fujitsu.com/fontv5/FujitsuSansRegular.eot) format("embedded-opentype"), url(//www.fujitsu.com/fontv5/FujitsuSansRegular.woff) format("woff"), url(//www.fujitsu.com/fontv5/FujitsuSansRegular.ttf) format("truetype");
}
@font-face {
	font-family: FujitsuSansBold;
	src: url(//www.fujitsu.com/fontv5/FujitsuSansMedium.eot);
	src: url(//www.fujitsu.com/fontv5/FujitsuSansMedium.eot) format("embedded-opentype"), url(//www.fujitsu.com/fontv5/FujitsuSansMedium.woff) format("woff"), url(//www.fujitsu.com/fontv5/FujitsuSansMedium.ttf) format("truetype");
}
#cms-container {
	font-family: FujitsuSans, Arial, Verdana, Lucida Grande, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", sans-serif;
	position: relative;
	width: 100%;
	margin-bottom: -60px;
}

/* セクション
 ------------------------------------- */
#cms-container .section {
	width: 100%;
}
#cms-container .section.bg-a,
#cms-container .section.bg-b {
	width: auto;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	padding-right: calc(50vw - 50%);
	padding-left: calc(50vw - 50%);
}
#cms-container .section.bg-a {
	background: #f5f4f3;
}
#cms-container .section.bg-b {
	background: #2a2e34;
	color: #fff;
}
#cms-container .section.bg-b a {
	color: #fff;
}
#cms-container .section > .section-inner {
	width: 100%;
	padding: 60px 0;
}
#cms-container .section > .section-inner + .section-inner {
	padding-top: 0;
}

#cms-container .section > .section-inner > *:last-child {
	margin-bottom: 0;
}

@media only screen and (max-width: 980px) {
	#cms-container .section > .section-inner {
		padding: 60px 24px;
	}
}
@media only screen and (max-width: 767px) {
	#cms-container .section > .section-inner {
		padding: 40px 20px;
	}
}

/* 装飾
 ------------------------------------- */
#cms-container p {
	font-size: 0.875rem;
	line-height: 1.75;
	margin-bottom: 1.75em;
}
#cms-container p small {
	font-size: 0.75rem;
}
#cms-container p.lead {
	margin-bottom: 60px;
}
#cms-container h1 {
	margin-bottom: 40px;
	font-size: 1.75rem;
}
#cms-container h2 {
	margin-bottom: 0.75em;
	padding-bottom: 0.5em;
	font-size: 1.5rem;
}
#cms-container h2.bordered {
	border-bottom: 3px solid #666;
}
#cms-container h3.bordered {
	border-bottom: 1px solid #666;
}
#cms-container h3 {
	margin-bottom: 0.5em;
	font-size: 1.125rem;
}
#cms-container h2.bg-a {
	padding: 0.4em 10px 0.3em;
	background: #f2f2f2;
}
#cms-container h3.bg-a {
	padding: 0.4em 10px;
	background: #f2f2f2;
}
#cms-container h4 {
	margin-bottom: 0.5em;
	font-size: 1rem;
}
#cms-container .text-black {
	color: #000 !important;
}
#cms-container .text-red {
	color: #a10c20 !important;
}
#cms-container .text-white {
	color: #fff !important;
}
#cms-container .font-weight-normal {
	font-weight: 400;
}
#cms-container img.bordered {
	border: 1px solid #9c9c94;
}
#cms-container img.bordered-light {
	border: 1px solid #dfdfdf;
}
/* テキストシャドウ PCとスマートフォン、PCのみ */
#cms-container .text-shadow-light,
#cms-container .text-shadow-light-pc {
	text-shadow: 
		#fff 2px 0px 0px, #fff -2px 0px 0px,
		#fff 0px -2px 0px, #fff 0px 2px 0px,
		#fff 2px 2px 0px, #fff -2px 2px 0px,
		#fff 2px -2px 0px, #fff -2px -2px 0px,
		#fff 1px 2px 0px, #fff -1px 2px 0px,
		#fff 1px -2px 0px, #fff -1px -2px 0px,
		#fff 2px 1px 0px, #fff -2px 1px 0px,
		#fff 2px -1px 0px, #fff -2px -1px 0px,
		#fff 1px 1px 0px, #fff -1px 1px 0px,
		#fff 1px -1px 0px, #fff -1px -1px 0px;
}
#cms-container .text-shadow-dark,
#cms-container .text-shadow-dark-pc {
	text-shadow: 
		#000 2px 0px 0px, #000 -2px 0px 0px,
		#000 0px -2px 0px, #000 0px 2px 0px,
		#000 2px 2px 0px, #000 -2px 2px 0px,
		#000 2px -2px 0px, #000 -2px -2px 0px,
		#000 1px 2px 0px, #000 -1px 2px 0px,
		#000 1px -2px 0px, #000 -1px -2px 0px,
		#000 2px 1px 0px, #000 -2px 1px 0px,
		#000 2px -1px 0px, #000 -2px -1px 0px,
		#000 1px 1px 0px, #000 -1px 1px 0px,
		#000 1px -1px 0px, #000 -1px -1px 0px;
}

/* テキストシャドウ スマートフォンのみ */
@media only screen and (max-width: 480px) {
	#cms-container .text-shadow-light-pc,
	#cms-container .text-shadow-dark-pc {
		text-shadow: none;
	}	
	#cms-container .text-shadow-light-sp {
		text-shadow: 
			#fff 2px 0px 0px, #fff -2px 0px 0px,
			#fff 0px -2px 0px, #fff 0px 2px 0px,
			#fff 2px 2px 0px, #fff -2px 2px 0px,
			#fff 2px -2px 0px, #fff -2px -2px 0px,
			#fff 1px 2px 0px, #fff -1px 2px 0px,
			#fff 1px -2px 0px, #fff -1px -2px 0px,
			#fff 2px 1px 0px, #fff -2px 1px 0px,
			#fff 2px -1px 0px, #fff -2px -1px 0px,
			#fff 1px 1px 0px, #fff -1px 1px 0px,
			#fff 1px -1px 0px, #fff -1px -1px 0px;
	}
	#cms-container .text-shadow-dark-sp {
		text-shadow: 
			#000 2px 0px 0px, #000 -2px 0px 0px,
			#000 0px -2px 0px, #000 0px 2px 0px,
			#000 2px 2px 0px, #000 -2px 2px 0px,
			#000 2px -2px 0px, #000 -2px -2px 0px,
			#000 1px 2px 0px, #000 -1px 2px 0px,
			#000 1px -2px 0px, #000 -1px -2px 0px,
			#000 2px 1px 0px, #000 -2px 1px 0px,
			#000 2px -1px 0px, #000 -2px -1px 0px,
			#000 1px 1px 0px, #000 -1px 1px 0px,
			#000 1px -1px 0px, #000 -1px -1px 0px;
	}
}

#cms-container .fw-normal {
	font-weight: 400;
}
#cms-container .text-center {
	text-align: center !important;
}
#cms-container .text-left {
	text-align: left !important;
}
#cms-container .text-right {
	text-align: right !important;
}
#cms-container .center{
	display: flex;
	justify-content: center;
	align-items: center;
}

#cms-container a,
#cms-container a:visited,
#cms-container p a,
#cms-container p a:visited,
#cms-container li a,
#cms-container li a:visited {
	font-weight: 400;
	text-decoration: none;
	color: #003399;
}
#cms-container a:hover,
#cms-container p a:hover,
#cms-container li a:hover {
	text-decoration: underline !important;
}

#cms-container a img {
	transition: 0.2s;
}
#cms-container a:hover img {
	opacity: 0.6;
}


/* リンク 次へ */
#cms-container p.link-a a {
	position: relative;
	display: inline-block;
	padding-right: 21px;
	text-decoration: none;
}
#cms-container p.link-a a::after {
	display: inline-block;
	width: 8px;
	height: 8px;
	margin: -3px -18px 0 10px;
	vertical-align: middle;
	border-top: 2px solid #a40e1c;
	border-right: 2px solid #a40e1c;
	content: "";
	transform: rotate(45deg);
}
/* リンク 戻る */
#cms-container p.link-b {
	position: relative;
	display: inline-block;
	padding-left: 14px;
	text-decoration: none;
}
#cms-container p.link-b a::after {
	display: inline-block;
	position: absolute;
	width: 8px;
	height: 8px;
	top: 0;
	bottom: 0.1em;
	left: 2px;
	margin: auto;
	vertical-align: middle;
	border-left: 2px solid #a40e1c;
	border-bottom: 2px solid #a40e1c;
	content: "";
	transform: rotate(45deg);
}

/* アイコン */
#cms-container li.icon-pdf {
	position: relative;
	padding-left: 1.7em;
}
#cms-container li.icon-pdf::before {
	display: inline-block;
	content: "";
	position: absolute;
	top: 2px;
	left: 0.1em;
	width: 16px;
	height: 16px;
	background-image: url(/img/common/icon_pdf.gif);
}
#cms-container li.icon-pdf + li.icon-pdf {
	margin-top: 0.5em;
}


/* リスト */
#cms-container ul.list,
#cms-container ol.list-order {
	padding-left: 20px;
}
#cms-container ul.indent,
#cms-container ul.anchor-link,
#cms-container ol.list-order {
	padding-left: 0;
}
#cms-container ul.list > li {
	position: relative;
	padding-left: 17px;
}
#cms-container ul.list > li::before {
	position: absolute;
	top: .55em;
	left: 0;
	display: block;
	width: 6px;
	height: 6px;
	background: #87867e;
	border-radius: 50%;
	content: "";
}
#cms-container ol.list-order {
	counter-reset: num;
}
#cms-container ol.list-order > li {
	display: table;
	width: 100%;
	counter-increment: num;
}
#cms-container ol.list-order > li::before {
	display: table-cell;
	text-align: right;
	white-space: nowrap;
	content: counter(num,decimal) ".";
}
#cms-container ol.list-order > li > .item {
	display: table-cell;
	width: 100%;
	padding-left: 12px;
}
#cms-container ul.list.spacing > li:not(:last-child) {
	margin-bottom: 0.75em;
}
#cms-container ul > li.unstyle {
	padding-left: 0;
}
#cms-container ul > li.unstyle::before {
	display: none;
}
#cms-container .anchor-link > li {
	padding-left: 3px;
}
#cms-container .anchor-link > li > a {
	position: relative;
	display: inline-block;
	padding-left: 21px;
	text-decoration: none;
}
#cms-container .anchor-link > li > a::after {
	position: absolute;
	top: .4em;
	left: 0;
	display: block;
	width: 12px;
	height: 12px;
	background-image: url("/gallery/agent_store/icon-anchor.png");
	background-position: 0px 0px;
	content: "";
}

#cms-container dl.line {
	display: flex;
	flex-wrap: wrap;
}
#cms-container dl.line dt {
	width: 30%;
	padding-right: 2em;
	text-align: left;
}
#cms-container dl.line dd {
	width: 70%;
	text-align: left;
}
@media only screen and (max-width: 767px) {
	#cms-container dl.line {
		flex-direction: column;
	}
	#cms-container dl.line dt {
		width: 100%;
		padding-right: 0;
		font-weight: 700;
	}
	#cms-container dl.line dd {
		width: 100%;
		margin-bottom: 0.5em;
	}
}

/* 注釈リスト */
#cms-container .notes > li {
	display: table;
	width: 100%;
	font-size: 0.8125rem;
}
#cms-container .notes > li > .mark {
	display: table-cell;
	padding-right: 12px;
	vertical-align: top;
	white-space: nowrap;
}

#cms-container .notes > li > .item {
	display: table-cell;
	width: 100%;
	vertical-align: top;
}


/* 引用 */
#cms-container blockquote.icon-a {
	padding: 14px 60px 0;
	position: relative;
}
#cms-container blockquote.icon-a::before {
	display: inline-block;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 50px;
	height: 38px;
	background-image: url(https://www.fujitsu.com/downloads/JP/about/resources/case-studies/images/quote_01.png);
	background-size: cover;
}
#cms-container blockquote.icon-a::after {
	display: inline-block;
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	width: 50px;
	height: 38px;
	background-image: url(https://www.fujitsu.com/downloads/JP/about/resources/case-studies/images/quote_01.png);
	background-size: cover;
	transform: rotate(180deg);
}
#cms-container blockquote > *:nth-last-of-type(1) {
	margin-bottom: 0;
}
@media only screen and (max-width: 480px) {
	#cms-container blockquote.icon-a {
		padding: 0px 30px 0;
	}
	#cms-container blockquote.icon-a::before {
		width: 20px;
		height: 15px;
	}
	#cms-container blockquote.icon-a::after {
		width: 20px;
		height: 15px;
	}
}

/* パジネーション */
#cms-container .nav-pager {
	position: relative;
	padding: 0 100px;
}
#cms-container .nav-pager > ul {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}
#cms-container .nav-pager > ul .prev {
	top: 0;
	left: 0;
}
#cms-container .nav-pager > ul .next {
	top: 0;
	right: 0;
}
#cms-container .nav-pager > ul li {
	position: absolute;
}
#cms-container .nav-pager > ul li a {
	display: inline-block;
	padding: 0.6em 1em 0.5em;
	font-size: 1rem;
	font-weight: 400 !important;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	border: 1px solid #a10f20;
	background: #fff;
	color: #a10f20;
	transition: 0.2s;
}
#cms-container .nav-pager > ul li a:hover {
	text-decoration: none;
	background: #a10f20;
	color: #fff;
	text-decoration: none !important;
}
#cms-container .nav-pager > ul .prev a {
	position: relative;
	padding-left: 30px;
}
#cms-container .nav-pager > ul .next a {
	position: relative;
	padding-right: 30px;
}
#cms-container .nav-pager > ul .prev a::after {
	display: inline-block;
	position: absolute;
	content: "";
	top: 50%;
	left: 12px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-left: 2px solid #a10f20;
	border-bottom: 2px solid #a10f20;
	transform: rotate(45deg);
}
#cms-container .nav-pager > ul .next a::after {
	display: inline-block;
	position: absolute;
	content: "";
	top: 50%;
	right: 12px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-top: 2px solid #a10f20;
	border-right: 2px solid #a10f20;
	transform: rotate(45deg);
}
#cms-container .nav-pager > ul .prev a:hover::after,
#cms-container .nav-pager > ul .next a:hover::after {
	border-color: #fff;
}
#cms-container .nav-pager > ol {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	flex-wrap: wrap;
}
#cms-container .nav-pager > ol > li {
	display: inline-block;
	font-size: 1rem;
}
#cms-container .nav-pager > ol > li:not(:last-child) {
	margin-right: 10px;
}
#cms-container .nav-pager > ol > li > a,
#cms-container .nav-pager > ol > li > em {
	display: block;
	width: 44px;
	height: 44px;
	padding: 10px 0;
	color: #666;
	line-height: 1.8;
	text-decoration: none;
	background: #eee;
}
#cms-container .nav-pager > ol > li > em {
	color: #fff;
	background: #706f67;
}

@media only screen and (max-width:980px) {
	#cms-container .nav-pager {
		margin: 0 10px;
	}
}
@media only screen and (max-width:767px) {
	#cms-container .nav-pager {
		padding: 0;
	}
	#cms-container .nav-pager > ul {
		position: static;
		display: flex;
		margin-bottom: 16px;
	}
	#cms-container .nav-pager > ul > li {
		position: static;
		flex: 1;
	}
	#cms-container .nav-pager > ul .prev a,
	#cms-container .nav-pager > ul .next a {
		padding-top: 7px;
		padding-bottom: 7px;
	}
	#cms-container .nav-pager > ul .next {
		text-align: right;
	}
	#cms-container .nav-pager > ol > li > a,
	#cms-container .nav-pager > ol > li > em {
		width: 37px;
		height: 37px;
		line-height: 1.4;
	}
}


/* ページリスト */
#cms-container .page-list {
	position: relative;
	margin-bottom: 20px;
}
#cms-container .page-list h2 {
	position: relative;
	padding-left: 40px;
	font-size: 1rem;
	color: #b02c33;
}
#cms-container .page-list h2::before {
	display: inline-block;
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0.1em;
	margin: auto;
	width: 32px;
	height: 32px;
	background-image: url(/gallery/agent_store/campaign-icon-scope.png);
	background-size: contain;
}
#cms-container .page-list ul {
	display: flex;
	flex-wrap: wrap;
}
#cms-container .page-list ul li {
	flex-basis: 24.23%;
}
#cms-container .page-list ul li:not(:last-child) {
	margin: 0 10px 10px 0;
}
#cms-container .page-list ul li:nth-of-type(4) {
	margin-right: 0;
}
#cms-container .page-list ul li a {
	width: 100%;
	display: inline-block;
	position: relative;
	padding: 0.8em 1em 0.65em;
	font-size: 0.875rem;
	font-weight: 400 !important;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	border: 1px solid #a10f20;
	background: #fff;
	color: #a10f20;
	transition: 0.2s;
}
#cms-container .page-list ul li a:hover {
	text-decoration: none !important;
	background: #a10f20;
	color: #fff;
}
#cms-container .page-list ul li a::after {
	display: inline-block;
	position: absolute;
	content: "";
	top: 50%;
	right: 12px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-top: 2px solid #9f1324;
	border-right: 2px solid #9f1324;
	transform: rotate(45deg);
}
#cms-container .page-list ul li a:hover::after {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}
#cms-container .page-list ul li em {
	width: 100%;
	display: inline-block;
	position: relative;
	padding: 0.8em 1em 0.65em;
	font-size: 0.875rem;
	font-weight: 400 !important;
	line-height: 1.2;
	text-align: center;
	border: 1px solid #a10f20;
	background: #a10f20;
	color: #fff;
}
@media only screen and (max-width:980px) {
	#cms-container .page-list ul li {
		flex-basis: 31.9%;
	}
	#cms-container .page-list ul li:nth-of-type(4) {
		margin-right: 10px;
	}
}
@media only screen and (max-width:767px) {
	#cms-container .page-list ul {
		flex-direction: column;
	}
	#cms-container .page-list ul li {
		flex-basis: 100%;
	}
	#cms-container .page-list ul li:not(:last-child) {
		margin: 0 0 10px 0;
	}
}


/* セパレーター */
#cms-container hr.gray1 {
	width: auto;
	position: relative;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	padding-right: calc(50vw - 50%);
	padding-left: calc(50vw - 50%);
	border-top: 1px solid #b1b1ac;
}
#cms-container hr.red3  {
	width: auto;
	position: relative;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	padding-right: calc(50vw - 50%);
	padding-left: calc(50vw - 50%);
	border-top: 3px solid #9f1324;
}


/* ボタン */
#cms-container a.btn {
	display: inline-block;
	padding: 0.6em 2.5em 0.5em;
	font-size: 1.25rem;
	font-weight: 400 !important;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	min-width: 380px;
	border: 1px solid #a10f20;
	background: #a10f20;
	color: #ffffff;
	transition: 0.2s;
}
#cms-container a.btn.btn-lg {
	padding: 0.6em 1.5em 0.5em;
	min-width: 480px;
}
#cms-container a.btn.btn-sm {
	padding: 0.6em 1.5em 0.5em;
	font-size: 1rem;
	min-width: 0;
}
#cms-container a.btn.btn-md {
	padding: 0.6em 3em 0.5em;
	font-size: 1rem;
	min-width: 0;
}
#cms-container a:visited.btn {
	color: #ffffff;
}
#cms-container a.btn:hover {
	text-decoration: none;
	background: #ffffff;
	color: #af2b30;
	text-decoration: none !important;
}
#cms-container a.btn.reverse {
	border: 1px solid #a10f20;
	background: #fff;
	color: #a10f20;
}
#cms-container a.btn.reverse:hover {
	text-decoration: none;
	background: #a10f20;
	color: #fff;
}
#cms-container a.btn.light {
	border: 1px solid #fff;
	background: transparent;
	color: #fff;
}
#cms-container a.btn.light:hover {
	text-decoration: none;
	border: 1px solid #a10f20;
	background: #a10f20;
}
#cms-container a.btn + p {
	margin: 10px 0 0;
}
#cms-container a.btn.new-window {
	position: relative;
}
#cms-container a.btn.new-window::before {
	display: inline-block;
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0.7em;
	margin: auto;
	width: 16px;
	height: 16px;
	background-image: url(/gallery/agent_store/icon-newwindow-wh.png);
	background-position: 0 0;
}
#cms-container a.btn.new-window:hover::before {
	background-image: url(/gallery/agent_store/icon-newwindow.png);
}
#cms-container a.btn.reverse.new-window {
	position: relative;
}
#cms-container a.btn.reverse.new-window::before {
	display: inline-block;
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0.7em;
	margin: auto;
	width: 16px;
	height: 16px;
	background-image: url(/gallery/agent_store/icon-newwindow.png);
	background-position: 0 0;
}
#cms-container a.btn.reverse.new-window:hover::before {
	background-image: url(/gallery/agent_store/icon-newwindow-wh.png);
}
#cms-container a.btn.reverse.movie {
	position: relative;
}
#cms-container a.btn.reverse.movie::before {
	display: inline-block;
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0.7em;
	margin: auto;
	width: 16px;
	height: 16px;
	background-image: url(/gallery/agent_store/icon-movie.png);
	background-position: 0 0;
}
#cms-container a.btn.reverse.movie:hover::before {
	background-image: url(/gallery/agent_store/icon-movie-wh.png);
}
#cms-container a.btn.next {
	position: relative;
}
#cms-container a.btn.next::after {
	display: inline-block;
	position: absolute;
	content: "";
	top: 50%;
	right: 12px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
}
#cms-container a.btn.next:hover::after {
	border-top: 2px solid #9f1324;
	border-right: 2px solid #9f1324;
}
#cms-container a.btn.reverse.next {
	position: relative;
}
#cms-container a.btn.reverse.next::after {
	display: inline-block;
	position: absolute;
	content: "";
	top: 50%;
	right: 12px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-top: 2px solid #9f1324;
	border-right: 2px solid #9f1324;
	transform: rotate(45deg);
}
#cms-container a.btn.reverse.next:hover::after {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

#cms-container a.btn.previous {
	position: relative;
}
#cms-container a.btn.previous::after {
	display: inline-block;
	position: absolute;
	content: "";
	top: 50%;
	left: 12px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-bottom: 2px solid #fff;
	border-left: 2px solid #fff;
	transform: rotate(45deg);
}
#cms-container a.btn.previous:hover::after {
	border-bottom: 2px solid #9f1324;
	border-left: 2px solid #9f1324;
}

#cms-container a.btn.reverse.previous {
	position: relative;
}
#cms-container a.btn.reverse.previous::after {
	display: inline-block;
	position: absolute;
	content: "";
	top: 50%;
	right: 12px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-bottom: 2px solid #9f1324;
	border-left: 2px solid #9f1324;
	transform: rotate(45deg);
}
#cms-container a.btn.reverse.previous:hover::after {
	border-bottom: 2px solid #fff;
	border-left: 2px solid #fff;
}

#cms-container a.btn.anchor {
	position: relative;
}
#cms-container a.btn.anchor::after {
	display: inline-block;
	position: absolute;
	content: "";
	top: 50%;
	right: 12px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: rotate(45deg);
}
#cms-container a.btn.anchor:hover::after {
	border-right: 2px solid #9f1324;
	border-bottom: 2px solid #9f1324;
}
#cms-container a.btn.reverse.anchor {
	position: relative;
}
#cms-container a.btn.reverse.anchor::after {
	display: inline-block;
	position: absolute;
	content: "";
	top: 50%;
	right: 12px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-right: 2px solid #9f1324;
	border-bottom: 2px solid #9f1324;
	transform: rotate(45deg);
}
#cms-container a.btn.reverse.anchor:hover::after {
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
}
#cms-container a.btn.download {
	position: relative;
}
#cms-container a.btn.download::after {
	display: inline-block;
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 3em;
	margin: auto;
	width: 18px;
	height: 24px;
	background-image: url(/gallery/agent_store/icon-download-wh.png);
	background-position: 0 0;
}
#cms-container a.btn.download:hover::after {
	background-image: url(/gallery/agent_store/icon-download.png);
}
#cms-container a.btn.download.btn-lg::after {
	right: 1em;
}
@media only screen and (max-width: 480px) {
	#cms-container a.btn {
		width: 100%;
		padding: 0.6em 0.5em 0.5em;
		font-size: 1.125rem;
		min-width: 0;
	}
	#cms-container a.btn.btn-lg {
		width: 100%;
		padding: 0.6em 0.5em 0.5em;
		min-width: 0;
	}
	#cms-container a.btn.btn-sm {
		width: 100%;
		min-width: 0;
	}
	#cms-container a.btn.next,
	#cms-container a.btn.anchor {
		padding: 0.6em 1.6em 0.5em;
	}
}
#cms-container ul.btn-group-col {
	padding: 0;
	display: flex;
	flex-direction: column;
}
#cms-container ul.btn-group-col li:not(:last-child) {
	margin-bottom: 10px;
}
#cms-container ul.btn-group {
	padding: 0;
	display: flex;
	justify-content: space-around;
}
#cms-container ul.btn-group.center {
	justify-content: center;
}
#cms-container ul.btn-group li,
#cms-container ul.btn-group-col li {
	padding: 0;
}
#cms-container ul.btn-group li {
	display: flex;
	align-items: center;
}
#cms-container ul.btn-group.center li:not(:first-child) {
	margin-left: 40px;
}
#cms-container ul.btn-group li::before,
#cms-container ul.btn-group-col li::before {
	display: none;
}
#cms-container ul.btn-group + p,
#cms-container ul.btn-group-col + p {
	margin: 10px 0 0;
}
#cms-container ul.btn-group.btn-3 {
	justify-content: space-between;
}
#cms-container ul.btn-group.btn-3 li {
	flex-basis: 32.6%;
}
#cms-container ul.btn-group.btn-3 li a.btn {
	min-width: 0;
	width: 100%;
	font-size: 1rem;
}
@media only screen and (max-width: 768px) {
	#cms-container ul.btn-group {
		flex-direction: column;
		align-items: center;
	}
	#cms-container ul.btn-group li:not(:last-child) {
		margin-bottom: 10px;
	}
	#cms-container ul.btn-group.center li:not(:first-child) {
		margin-left: 0;
	}
	#cms-container ul.btn-group.btn-3 {
		flex-direction: row;
	}
	#cms-container ul.btn-group.btn-3 li {
		margin-bottom: 0;
		flex-basis: auto;
	}
}
@media only screen and (max-width: 480px) {
	#cms-container ul.btn-group {
		display: block;
	}
	#cms-container ul.btn-group.btn-3 li:not(:last-child) {
		margin-bottom: 10px;
	}
}

/* 動画 */
#cms-container .movie-wrapper {
	width: 70%;
	margin: 30px auto;
}
#cms-container .movie-wrapper .caption {
	display: block;
	font-size: 0.75rem;
	margin-top: 12px;
	line-height: 1.6;
	text-align: center;
}
#cms-container .movie-wrapper > .movie {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
#cms-container .movie-wrapper > .movie > iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}
@media only screen and (max-width: 768px) {
	#cms-container .movie-wrapper {
		width: 100% !important;
	}
}

/* 画像・キャプション */
#cms-container .figure {
	text-align: center;
	margin: 40px auto;
}
#cms-container .figure .caption {
	display: block;
	font-size: 0.75rem;
	margin-top: 12px;
	line-height: 1.6;
}

/* ボックス */
#cms-container .box-a {
	width: 100%;
	padding: 20px;
	background-color: #fff;
	border: 1px solid #9c9c94;
}
#cms-container .box-b {
	width: 100%;
	padding: 20px;
	background-color: #f5f4f3;
	border: 1px solid #9c9c94;
}
#cms-container .box-c {
	width: 100%;
	padding: 20px;
	background-color: #f5f4f3;
}
#cms-container .box-d {
	width: 100%;
	padding: 20px;
	background-color: #fff;
	border: 1px solid #9f1424;
}
#cms-container .box-a > *:last-child,
#cms-container .box-b > *:last-child,
#cms-container .box-c > *:last-child,
#cms-container .box-d > *:last-child,
#cms-container .box-a .text > *:last-child,
#cms-container .box-b .text > *:last-child,
#cms-container .box-c .text > *:last-child,
#cms-container .box-d .text > *:last-child {
	margin-bottom: 0;
}

#cms-container .box-a > .figure:first-child,
#cms-container .box-b > .figure:first-child,
#cms-container .box-c > .figure:first-child,
#cms-container .box-d > .figure:first-child {
	margin-top: 0;
}

#cms-container .box-a + .box-a {
	margin-top: 10px;
}


/* タイトルエリア */
#cms-container > .title-area-a {
	width: auto;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	padding-right: calc(50vw - 50%);
	padding-left: calc(50vw - 50%);
	height: 300px;
	display: flex;
	align-items: center;
}
#cms-container > .title-area-a > .content {
	padding: 0 24px;
}
#cms-container > .title-area-a > .content > h1 {
	margin-bottom: 0.75em;
	font-size: 1.75rem;
	font-weight: 400;
}

@media only screen and (max-width: 767px) {
	#cms-container > .title-area-a > .content {
		padding: 0 10px;
	}
	#cms-container > .title-area-a > .content > h1 {
		font-size: 1.5rem;
	}
}
@media only screen and (max-width: 480px) {
	#cms-container > .title-area-a {
		height: auto;
		min-height: 300px;
	}
	#cms-container > .title-area-a > .content {
		width: 100%;
		padding: 20px 20px;
	}
}

#cms-container > .title-area-b {
	width: auto;
	position: relative;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	padding-right: calc(50vw - 50%);
	padding-left: calc(50vw - 50%);
	height: 300px;
	display: flex;
}
#cms-container > .title-area-b .content {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
}
#cms-container > .title-area-b .content-inner {
	position: relative;
	padding: 0 24px;
}
#cms-container > .title-area-b .content-inner h1 {
	margin-bottom: 16px;
	color: #000;
	font-size: 1.75rem;
	font-weight: 400;
}
#cms-container > .title-area-b .content-inner p {
	margin-bottom: 0;
	font-size: 1rem;
}
#cms-container > .title-area-b .content .visual {
	width: 100%;
	position: absolute;
	overflow: hidden;
	top: 0;
	left: 0;
	height: 300px;
	z-index: -1;
}

@media only screen and (max-width: 480px) {
	#cms-container > .title-area-b {
		height: auto;
	}
	#cms-container > .title-area-b .content {
		background: #2a2e34;
		flex-direction: column-reverse;
		align-items: flex-start;
	}
	#cms-container > .title-area-b .content-inner {
	padding: 16px;
	}
	#cms-container > .title-area-b .content-inner h1 {
		margin-bottom: 12px;
		font-size: 1.125rem;
		font-weight: 400;
		color: #fff;
		text-shadow: none;
	}
	#cms-container > .title-area-b .content-inner p {
		font-size: 0.875rem;
		line-height: 1.5;
		color: #fff;
	}
	#cms-container > .title-area-b .content-inner h1 br {
		display: none;
	}
	#cms-container > .title-area-b .content .visual {
		position: relative;
		height: 160px;
	}
}


/* テーブルレイアウト */
#cms-container .table-lay-a {
	width: 100%;
	display: flex;
	flex-direction: column;
}
#cms-container .table-lay-a > li {
	width: 100%;
	background-color: #fff;
	border: 1px solid #9c9c94;
	display: flex;
	align-items: center;
}
#cms-container .table-lay-a > li:not(:last-child) {
	border-bottom: none;
}
#cms-container .table-lay-a > li:nth-child(odd){
	background: #f5f4f3;
}
#cms-container .table-lay-a > li.head {
	background-color: #2a2e34;
	color: #fff;
	border: none;
}
#cms-container .table-lay-a > li.head + li {
	border-top: none;
}
#cms-container .table-lay-a > li .col {
	padding: 10px;
}
#cms-container .table-lay-a > li .col > ul,
#cms-container .table-lay-a > li .col > ul li {
	text-align: left;
}
@media only screen and (max-width: 767px) {
	#cms-container .table-lay-a > li.head + li {
		border-top: 1px solid #9c9c94;
	}
	#cms-container .table-lay-a > li.head.sp-none {
		display: none;
	}
	#cms-container .table-lay-a > li {
		flex-direction: column;
	}
	#cms-container .table-lay-a > li .col {
		width: 100% !important;
		text-align: center;
		display: flex;
		justify-content: center;
	}
}
@media only screen and (max-width:767px) {
	#cms-container .table-scroll {
		overflow-x: scroll;
		-webkit-overflow-scrolling: touch;
	}

	#cms-container .table-scroll > table {
		width: 768px !important;
	}
}

#cms-container .table-lay-b {
	table-layout: fixed;
}
#cms-container .table-lay-b th,
#cms-container .table-lay-b td {
	padding: 10px 16px;
	border: 1px solid #b1b1ac;
}
#cms-container .table-lay-b th,
#cms-container .table-lay-b thead td {
	font-weight: 700;
	text-align: center;
	background: #c6c6c0;
}
#cms-container .table-lay-b tbody td {
	background: #fff;
}
#cms-container .table-lay-b tbody th,
#cms-container .table-lay-b tbody .th {
	width: 240px;
	font-weight: 400;
	vertical-align: top;
	text-align: left;
	background: #dad9d6;
}
@media only screen and (max-width:767px) {
	#cms-container .table-lay-b tbody th,
	#cms-container .table-lay-b tbody .th {
		width: 180px;
	}
}
@media only screen and (max-width:480px) {
	#cms-container .table-lay-b tbody th,
	#cms-container .table-lay-b tbody .th {
		width: 100px;
	}
}

#cms-container .table-lay-c th,
#cms-container .table-lay-c td {
	padding: 18px 8px !important;
	vertical-align: top;
}
@media only screen and (max-width:767px) {
	#cms-container .table-lay-c th,
	#cms-container .table-lay-c td {
		padding: 18px 0;
	}
}
#cms-container .table-lay-c th > img,
#cms-container .table-lay-c td > img {
	vertical-align: middle;
}
@media only screen and (max-width:767px) {
	#cms-container .table-lay-c tbody {
		display: block;
	}
}
@media only screen and (max-width:767px) {
	#cms-container .table-lay-c tbody tr {
		display: block;
	}
}
#cms-container .table-lay-c tbody tr:first-child th,
#cms-container .table-lay-c tbody tr:first-child td {
	padding-top: 0;
}
@media only screen and (max-width:767px) {
	#cms-container .table-lay-c tbody tr:first-child th {
		padding-top: 14px;
	}
}
#cms-container .table-lay-c tbody th,
#cms-container .table-lay-c tbody .th {
	width: 156px;
	text-align: left;
	border-bottom: 1px solid #c6c6c0;
}
@media only screen and (max-width:1000px) {
	#cms-container .table-lay-c tbody th,
	#cms-container .table-lay-c tbody .th {
		width: 126px;
	}
}
@media only screen and (max-width:767px) {
	#cms-container .table-lay-c tbody th,
	#cms-container .table-lay-c tbody .th {
		display: block;
		width: 100%;
		padding-bottom: 0;
		border-bottom: 0;
	}
}
#cms-container .table-lay-c tbody td {
	border-bottom: 1px solid #c6c6c0;
}

@media only screen and (max-width:767px) {
	#cms-container .table-lay-c tbody td {
		display: block;
		width: 100%;
		padding-top: 6px !important;
	}
}

/* お知らせ */
#cms-container ul.list-news {
}
#cms-container ul.list-news li {
	padding: 16px 20px;
	display: flex;
	border-bottom: 1px solid #c6c6c0;
}
#cms-container ul.list-news li .date{
	white-space: nowrap;
	flex-basis: 14em;
}
#cms-container ul.list-news li .news {
	background-image: none;
	flex-basis: 0%;
	flex-grow: 1;
	flex-shrink: 1;
}
#cms-container ul.list-news +  h3 {
	margin-top: 40px;
}
@media only screen and (max-width: 767px) {
	#cms-container ul.list-news li {
		padding: 10px 0;
		flex-direction: column;
	}
	#cms-container ul.list-news li .date{
		flex-basis: 0;
	}
}

/* 手順説明 */
#cms-container .steps-group {
	width: 100%;
	margin-bottom: 20px;
	display: flex;
}
#cms-container .steps-group > .step {
	width: 100%;
	padding: 10px;
	position: relative;
	background-color: #fff;
	border: 1px solid #a11020;
	display: flex;
	flex-direction: column;
}
#cms-container .steps-group > .step:not(:last-child) {
	margin-right: 14px;
}
#cms-container .steps-group > .step:not(:last-child)::after {
	position: absolute;
	right: -20px;
	top: 0;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	width: 8px;
	height: 8px;
	border: 8px solid transparent;
	border-left: 8px solid #af3d4a;
}
#cms-container .steps-group > .step h4 {
	font-size: 1rem;
	color: #9f1024;
	text-align: center;
}
#cms-container .steps-group > .step h4 span {
	font-size: 1.5rem;
	color: #9f1024;
}
#cms-container .steps-group > .step p {
	margin-bottom: 0;
	text-align: center;
}
@media only screen and (max-width: 768px) {
	#cms-container .steps-group {
	flex-direction: column;
	}
	#cms-container .steps-group > .step {
		margin-bottom: 14px;
	}
	#cms-container .steps-group > .step:not(:last-child)::after {
		position: absolute;
		left: 0;
		right: 0;
		top: auto;
		bottom: -20px;
		margin: auto;
		content: "";
		vertical-align: middle;
		width: 8px;
		height: 8px;
		border: 8px solid transparent;
		border-top: 8px solid #af3d4a;
	}
}

/* 画像をともなうリストインデックス */
#cms-container ul.list-box {
	width: 100%;
}
#cms-container ul.list-box li {
	width: 100%;
	margin-bottom: 20px;
	padding-bottom: 20px;
	display: flex;
	border-bottom: 1px solid #b1b1ac;
}
#cms-container ul.list-box li .visual {
	flex-basis: 180px;
	margin-right: 20px;
}
#cms-container ul.list-box li .text-box {
	flex-basis: 0%;
	flex-grow: 1;
	flex-shrink: 1;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
#cms-container ul.list-box li .text-box .label {
	display: inline-block;
	margin-bottom: 10px;
	padding: 0.5em 0.8em 0.3em;
	font-size: 0.875rem;
	line-height: 1;
	color: #fff;
	background: #000;
}
#cms-container ul.list-box li .text-box .label.case {
	background: #57564f;
}
#cms-container ul.list-box li .text-box .label.feature {
	background: #904412;
}
#cms-container ul.list-box li .text-box .label.column {
	background: #904412;
}
#cms-container ul.list-box li .text-box .label.handson {
	background: #175e9a;
}
#cms-container ul.list-box li .text-box .label.event {
	background: #2a7916;
}
#cms-container ul.list-box li .text-box .label.report {
	background: #904412;
}
#cms-container ul.list-box li .text-box .tag {
	margin-bottom: 0;
	color: #555555;
}
@media only screen and (max-width: 767px) {
	#cms-container ul.list-box li {
		padding-bottom: 10px;
		display: flex;
		flex-direction: column;
	}
	#cms-container ul.list-box li .visual {
		flex-basis: 100%;
		margin: 0 0 10px 0;
	}
	#cms-container ul.list-box li .text-box {
		flex-basis: 100%;
		flex-direction: column;
		justify-content: flex-start;
	}
	#cms-container ul.list-box li .text-box .tag {
		font-size: 0.8125rem;
	}
}


/*------------------------------------
 レイアウト
 ------------------------------------- */
/* 均等分割 */
#cms-container .flex-col2,
#cms-container .flex-col3,
#cms-container .flex-col4 {
	margin-bottom: 40px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#cms-container .flex-col2 > .item {
	width: 48.71%;
}
#cms-container .flex-col3 > .item {
	width: 31.65%;
}
#cms-container .flex-col4 > .item {
	width: 23.07%;
}

#cms-container .flex-col2 > .item > .figure,
#cms-container .flex-col3 > .item > .figure,
#cms-container .flex-col4 > .item > .figure {
	margin: 20px auto 0;
}

@media only screen and (max-width: 480px) {
	#cms-container .flex-col2 > .item,
	#cms-container .flex-col3 > .item,
	#cms-container .flex-col4 > .item {
		width: 100%;
	}
}


/* 画像の右固定・左固定 */
#cms-container .img-l,
#cms-container .img-r {
	margin-bottom: 1.75em;
}
#cms-container .img-l {
	width: 100%;
	display: flex;
}
#cms-container .img-l > .img {
	width: 50%;
	padding-right: 20px;
	text-align: center;
}
#cms-container .img-l > .text {
	width: 50%;
}
#cms-container .img-r {
	width: 100%;
	display: flex;
	flex-direction: row-reverse;
}
#cms-container .img-r > .img {
	width: 50%;
	padding-left: 20px;
	text-align: center;
}
#cms-container .img-r > .text {
	width: 50%;
}
#cms-container .img-l > .text > *:last-child,
#cms-container .img-r > .text > *:last-child {
	margin-bottom: 0;
}
#cms-container .img-l.v-center, /* 画像上下中央 */
#cms-container .img-r.v-center {
	align-items: center;
}
@media only screen and (max-width: 480px) {
	#cms-container .img-l,
	#cms-container .img-r {
		flex-wrap: wrap;
	}
	#cms-container .img-l.sp-w-100,
	#cms-container .img-r.sp-w-100 {
		flex-direction: column;
	}
	#cms-container .img-l.sp-w-100 .img,
	#cms-container .img-r.sp-w-100 .img {
		width: 100% !important;
		margin-bottom: 20px;
		padding: 0;
	}
	#cms-container .img-l.sp-w-100 .text,
	#cms-container .img-r.sp-w-100 .text {
		width: 100% !important;
	}
}

/* 画像のフロート配置 */
#cms-container .float-img-l::after,
#cms-container .float-img-r::after {
	content: "";
	display: table;
	clear: both;
}
#cms-container .float-img-l .img {
	float: left;
	padding-right: 40px;
	text-align: center;
}
#cms-container .float-img-r .img {
	float: right;
	padding-left: 40px;
	text-align: center;
}
#cms-container .float-img-l .img .caption,
#cms-container .float-img-r .img .caption {
	display: block;
	margin-top: 8px;
	font-size: 0.75rem;
}
#cms-container .float-img-r .item {
	width: 100%;
}

@media only screen and (max-width: 767px) {
	#cms-container .float-img-l .img {
		float: none;
		padding-right: 0;
	}
	#cms-container .float-img-r .img {
		float: none;
		padding-left: 0;
	}
}

/* バーティカル レイアウト */
#cms-container .flex-col2.v-group .item,
#cms-container .flex-col3.v-group .item,
#cms-container .flex-col4.v-group .item {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
#cms-container .flex-col2.v-group .item .img,
#cms-container .flex-col3.v-group .item .img,
#cms-container .flex-col4.v-group .item .img {
	margin-bottom: 16px;
	min-height: 0%;
	display: flex;
	justify-content: center;
	align-content: center;
}
#cms-container .flex-col2.v-group .item .img img,
#cms-container .flex-col3.v-group .item .img img,
#cms-container .flex-col4.v-group .item .img img {
	max-width: 100%;
	align-self: flex-start;
	flex: 0 0 auto;
}
#cms-container .flex-col2.v-group .item .desc,
#cms-container .flex-col3.v-group .item .desc,
#cms-container .flex-col4.v-group .item .desc {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}
#cms-container .flex-col2.v-group .item .desc h3,
#cms-container .flex-col3.v-group .item .desc h3,
#cms-container .flex-col4.v-group .item .desc h3 {
	margin-bottom: 10px;
	font-size: 1.125rem;
	text-align: center;
}
#cms-container .flex-col2.v-group .item .desc h3.l-2,
#cms-container .flex-col3.v-group .item .desc h3.l-2,
#cms-container .flex-col4.v-group .item .desc h3.l-2 {
	min-height: 3em;
}
#cms-container .flex-col2.v-group .item .desc h3.l-3,
#cms-container .flex-col3.v-group .item .desc h3.l-3,
#cms-container .flex-col4.v-group .item .desc h3.l-3 {
	min-height: 4.5em;
}
#cms-container .flex-col2.v-group .item .desc p,
#cms-container .flex-col3.v-group .item .desc p,
#cms-container .flex-col4.v-group .item .desc p {
	margin-bottom: 0.875em;
}


/*------------------------------------
 トライアルページのパーツ
 ------------------------------------- */
/* 特長 */
#cms-container .flex-col3.feature {
	margin-bottom: 60px;
}
#cms-container .flex-col3.feature > .item {
	background: #fcfcfc;
	display: flex;
	flex-direction: column;
}
#cms-container .flex-col3.feature > .item > h3 {
	margin-bottom: 10px;
	padding: 16px;
	font-size: 1.625rem;
	font-weight: 400;
	text-align: center;
	color: #a30b1a;
	border-top: 5px solid #a10f20;
	border-bottom: 1px solid #b5b5b5;
	display: flex;
	flex-basis: 4.5em;
	justify-content: center;
	flex-direction: column;
}
#cms-container .flex-col3.feature > .item > p {
	margin-bottom: 0;
	padding: 0 16px 10px;
}
@media only screen and (max-width: 768px) {
	#cms-container .flex-col3.feature > .item > h3 {
		flex-basis: auto;
	}
}
@media only screen and (max-width: 767px) {
	#cms-container .flex-col3.feature > .item {
		width: 48%;
		margin-bottom: 16px;
	}
}
@media only screen and (max-width: 480px) {
	#cms-container .flex-col3.feature > .item {
		width: 100%;
	}
}

#cms-container .flex-col3.feature-b {
	margin-bottom: 60px;
}
#cms-container .flex-col3.feature-b > .item {
	padding: 20px;
	background: #fff;
	border: 1px solid #a30b1a;
	display: flex;
	flex-direction: column;
}
#cms-container .flex-col3.feature-b > .item *:nth-child(1) {
	margin-bottom: 10px;
	font-size: 1rem;
	font-weight: 700;
	text-align: center;
	color: #9f1024;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
#cms-container .flex-col3.feature-b > .item > p {
	margin-bottom: 0;
}

@media only screen and (max-width: 767px) {
	#cms-container .flex-col3.feature-b > .item {
		width: 48%;
		margin-bottom: 16px;
	}
}
@media only screen and (max-width: 480px) {
	#cms-container .flex-col3.feature-b > .item {
		width: 100%;
	}
}

/* キャンペーン */
#cms-container .section.campaign .img-l {
	flex-wrap: wrap;
}
#cms-container .section.campaign .img-l > .img {
	width: 30%;
	padding: 30px 40px 0 0;
}
#cms-container .section.campaign .img-l > .text {
	width: 70%;
}
#cms-container .section.campaign .img-l > .text > .btn-group {
	justify-content: flex-start;
}
#cms-container .section.campaign .img-l > .text .btn {
	margin-left: 20px;
}
@media only screen and (max-width: 767px) {
	#cms-container .section.campaign .img-l > .img {
		width: 100%;
		margin-bottom: 20px;
		padding: 0;
		text-align: center;
	}
	#cms-container .section.campaign .img-l > .text {
		width: 100%;
	}
	#cms-container .section.campaign .img-l > .text .btn {
		margin-left: 0;
	}
}

/* サービス・機能 */
#cms-container .flex-col2.service {
	margin-bottom: 40px;
}
#cms-container .flex-col2.service > .item {
	padding: 16px;
	background: #fcfcfc;
	border-top: 5px solid #a10f20;
}
#cms-container .flex-col2.service > .item > h4 {
	margin-bottom: 0.5em;
	font-size: 0.875rem;
}
#cms-container .flex-col2.service > .item > h4:not(:first-of-type) {
	margin-top: 1em;
}
#cms-container .flex-col2.service > .item > p {
	margin-bottom: 0;
	padding: 0 16px 10px;
}
#cms-container .flex-col2.service > .item > ul.strong {
	font-size: 1.128rem;
	color: #a30b1a;
}
#cms-container .flex-col2.service > .item > ul.strong > li::before {
	background: #a30b1a;
}
@media only screen and (max-width: 767px) {
	#cms-container .flex-col2.service > .item {
		width: 100%;
		margin-bottom: 16px;
	}
	#cms-container .flex-col2.service > .item > h3 {
		flex-basis: auto;
	}
}
#cms-container .flex-col3.service > .item {
	display: flex;
	flex-direction: column;
}
#cms-container .flex-col3.service > .item > .img {
	margin-bottom: 4px;
	height: 80px;
	display: flex;
	justify-content: center;
	align-content: center;
}
#cms-container .flex-col3.service > .item > .img a {
	text-align: center;
}
#cms-container .flex-col3.service > .item > .img  img {
	height: 100%;
}
#cms-container .flex-col3.service > .item > .text > h3 {
	margin-bottom: 0;
	font-size: 1.125rem;
	text-align: center;
}

/* お客様の声 */
#cms-container .section.customers-voice .img-l {
	flex-wrap: wrap;
}
#cms-container .section.customers-voice .img-l > .img {
	width: 30%;
	padding: 30px 40px 0 0;
}
#cms-container .section.customers-voice .img-l > .text {
	width: 70%;
}
#cms-container .section.customers-voice .img-l > .text > .btn-group {
	justify-content: flex-start;
}
#cms-container .section.customers-voice .img-l > .text .btn {
	margin-left: 20px;
}
@media only screen and (max-width: 767px) {
	#cms-container .section.customers-voice .img-l > .img {
		width: 100%;
		margin-bottom: 20px;
		padding: 0;
		text-align: center;
	}
	#cms-container .section.customers-voice .img-l > .text {
		width: 100%;
	}
	#cms-container .section.customers-voice .img-l > .text .btn {
		margin-left: 0;
	}
}

/* もっと知る */
#cms-container .section.learn-more {
	background: url(/gallery/agent_store/cfs_trial_learnmore_bg.jpg) 50% 0 /cover no-repeat;
}

/* よくあるご質問 */
#cms-container .section.faq .flex-col2 > .item {
	margin-bottom: 20px;
	padding: 0 16px 10px;
	background: #fcfcfc;
	border-top: 5px solid #939393;
}
#cms-container .section.faq .flex-col2 > .item > h3 {
	position: relative;
	margin-bottom: 10px;
	padding: 0.6em 0;
	font-size: 1rem;
	border-bottom: 1px solid #939393;
}
#cms-container .section.faq .flex-col2 > .item > h3::after {
	position: absolute;
	content: "";
	left: 0;
	bottom: -2px;
	width: 100%;
	height: 1px;
	border-bottom: 1px solid #000000;
}
#cms-container .section.faq .flex-col2 > .item > p {
	margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
	#cms-container .section.faq .flex-col2 {
		margin-bottom: 20px;
	}
	#cms-container .section.faq .flex-col2 > .item {
		width: 100%;
	}
}

/* お申し込みフロー */
#cms-container .section.flow .flex-col4 > .item {
	display: flex;
	flex-direction: column;
}
#cms-container .section.flow .flex-col4 > .item > .img {
	width: 100%;
	min-height: 160px;
	display: flex;
	justify-content: center;
	align-items: center;
}
#cms-container .section.flow .flex-col4 > .item > .img > img {
	width: 70%;
}
#cms-container .section.flow .flex-col4 > .item > .text {
	display: flex;
	flex-direction: column;
}
#cms-container .section.flow .flex-col4 > .item > .text > h3 {
	flex-basis: 3em;
}
#cms-container .section.flow .flex-col4 > .item > .text > p {
	margin-bottom: 0.7em;
}
@media only screen and (max-width: 768px) {
	#cms-container .section.flow .flex-col4 > .item {
		width: 48%;
		margin-bottom: 20px;
	}
	#cms-container .section.flow .flex-col4 > .item > .img {
		margin-bottom: 10px;
	}
	#cms-container .section.flow .flex-col4 > .item > .text > h3 {
		flex-basis: auto;
	}
}
@media only screen and (max-width: 767px) {
	#cms-container .section.flow .flex-col4 {
		margin-bottom: 20px;
		flex-wrap: wrap;
	}
	#cms-container .section.flow .flex-col4 > .item {
		width: 100%;
		margin-bottom: 30px;
	}
	#cms-container .section.flow .flex-col4 > .item > .img > img {
		width: 60%;
		margin-bottom: 16px;
	}
}


/*------------------------------------
 調整
 ------------------------------------- */
@media only screen and (max-width: 480px) {
	#cms-container br.sp-none-break {
		display: none !important;
	}
	#cms-container br.sp-break {
		display: block !important;
	}
}

#cms-container .indent-1em {
	padding-left: 1em !important;
}
#cms-container .indent-2em {
	padding-left: 2em !important;
}

#cms-container .w-10 {
	width: 10% !important;
}
#cms-container .w-12 {
	width: 12% !important;
}
#cms-container .w-14 {
	width: 14% !important;
}
#cms-container .w-15 {
	width: 15% !important;
}
#cms-container .w-16 {
	width: 16% !important;
}
#cms-container .w-18 {
	width: 18% !important;
}
#cms-container .w-20 {
	width: 20% !important;
}
#cms-container .w-22 {
	width: 22% !important;
}
#cms-container .w-24 {
	width: 24% !important;
}
#cms-container .w-25 {
	width: 25% !important;
}
#cms-container .w-26 {
	width: 26% !important;
}
#cms-container .w-28 {
	width: 25% !important;
}
#cms-container .w-30 {
	width: 30% !important;
}
#cms-container .w-35 {
	width: 35% !important;
}
#cms-container .w-40 {
	width: 40% !important;
}
#cms-container .w-45 {
	width: 45% !important;
}
#cms-container .w-50 {
	width: 50% !important;
}
#cms-container .w-55 {
	width: 55% !important;
}
#cms-container .w-60 {
	width: 60% !important;
}
#cms-container .w-65 {
	width: 65% !important;
}
#cms-container .w-70 {
	width: 70% !important;
}
#cms-container .w-75 {
	width: 75% !important;
}
#cms-container .w-80 {
	width: 80% !important;
}
#cms-container .w-85 {
	width: 85% !important;
}
#cms-container .w-90 {
	width: 90% !important;
}
#cms-container .w-100 {
	width: 100% !important;
}

@media only screen and (max-width: 767px) {
	#cms-container .sp-w-100 {
		width: 100% !important;
	}
}

#cms-container .mb-0 {
	margin-bottom: 0 !important;
}
#cms-container .mb-10 {
	margin-bottom: 10px !important;
}
#cms-container .mb-15 {
	margin-bottom: 15px !important;
}
#cms-container .mb-20 {
	margin-bottom: 20px !important;
}
#cms-container .mb-30 {
	margin-bottom: 30px !important;
}
#cms-container .mb-40 {
	margin-bottom: 40px !important;
}
#cms-container .mb-50 {
	margin-bottom: 50px !important;
}
#cms-container .mb-60 {
	margin-bottom: 60px !important;
}

#cms-container .mt-0 {
	margin-top: 0 !important;
}
#cms-container .mt-10 {
	margin-top: 10px !important;
}
#cms-container .mt-15 {
	margin-top: 15px !important;
}
#cms-container .mt-20 {
	margin-top: 20px !important;
}
#cms-container .mt-30 {
	margin-top: 30px !important;
}
#cms-container .mt-40 {
	margin-top: 40px !important;
}
#cms-container .mt-50 {
	margin-top: 50px !important;
}
#cms-container .mt-60 {
	margin-top: 60px !important;
}

#cms-container .pt-0 {
	padding-top: 0 !important;
}
#cms-container .pt-10 {
	padding-top: 10px !important;
}
#cms-container .pt-15 {
	padding-top: 15px !important;
}
#cms-container .pt-20 {
	padding-top: 20px !important;
}
#cms-container .pt-30 {
	padding-top: 30px !important;
}
#cms-container .pt-40 {
	padding-top: 40px !important;
}
#cms-container .pt-50 {
	padding-top: 50px !important;
}
#cms-container .pt-60 {
	padding-top: 60px !important;
}

#cms-container .pb-0 {
	padding-bottom: 0 !important;
}
#cms-container .pb-10 {
	padding-bottom: 10px !important;
}
#cms-container .pb-15 {
	padding-bottom: 15px !important;
}
#cms-container .pb-20 {
	padding-bottom: 20px !important;
}
#cms-container .pb-30 {
	padding-bottom: 30px !important;
}
#cms-container .pb-40 {
	padding-bottom: 40px !important;
}
#cms-container .pb-50 {
	padding-bottom: 50px !important;
}
#cms-container .pb-60 {
	padding-bottom: 60px !important;
}

#cms-container .display-14 {
	font-size: 0.875rem !important;
}
#cms-container .display-16 {
	font-size: 1rem !important;
}
#cms-container .display-18 {
	font-size: 1.125rem !important;
}
#cms-container .display-20 {
	font-size: 1.25rem !important;
}
#cms-container .display-24 {
	font-size: 1.5rem !important;
}
#cms-container .display-28 {
	font-size: 1.75rem !important;
}
#cms-container .display-32 {
	font-size: 2rem !important;
}
#cms-container .display-36 {
	font-size: 2.25rem !important;
}
#cms-container .display-40 {
	font-size: 2.5rem !important;
}
#cms-container .display-44 {
	font-size: 2.75rem !important;
}
#cms-container .display-48 {
	font-size: 3rem !important;
}


