@charset "UTF-8";
@font-face {
	font-family: 'noto-sans-jp';
	src: url(./webfonts/Noto_Sans_JP/NotoSansJP-Regular.woff)format("woff");
	font-weight: normal;
	font-display: swap;
}
@font-face {
	font-family: 'noto-sans-jp';
	src: url(./webfonts/Noto_Sans_JP/NotoSansJP-Bold.woff)format("woff");
	font-weight: bold;
	font-display: swap;
}

/*---------------------------------

	共通

---------------------------------*/
body {
	background: #fff;
	box-sizing: border-box;
	font-family: 'noto-sans-jp', sans-serif;
	margin: 0;
	padding: 0;
	font-size: 16px;
}

a,
a:hover {
	color: #00529f;
	text-decoration: underline;
	outline: none;
}

/*---------------------------------

	メインエリア

---------------------------------*/
/* 全体 */
#wrapperArea {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

/* タイトル */
.page-header {
	background-color: #f4f2e9;
	padding: 20px;
}

.page-header h4 {
	text-align: center;
}

/* タイトル 色違い*/
.page-header-sb {
	background-color: #FFBC8E;
	padding: 20px;
}

.page-header-sb h4 {
	text-align: center;
}

span.title-en {
	color: #00529f;
	display: block;
	font-family: "museo-sans", sans-serif;
	font-weight: 900;
}

span.title-jp {
	margin-top: 5px;
	font-size: 26px;
}

/* メインコンテンツ */
.main-area {
	max-width: 1000px;
	margin: 0 auto;
	width: 100%;
}

.width_unfix {
	width: auto;
}

/* ライトボックス */
.lightbox-area>.main-area {
	padding: 15px 15px 0;
	width: initial;
}

/*
	ボックスデザイン
---------------------------------*/
/* 検索ボックス */
form {
	margin: 10px 20px;
}

.search-box {
	border: 2px solid #00529f;
	border-radius: 8px;
	margin: 20px 0 40px;
	padding: 15px;
	position: relative;
}

.search-box .box-title {
	background: #fff;
	color: #00529f;
	display: inline-block;
	font-weight: bold;
	line-height: 1;
	padding: 0 9px;
	position: absolute;
	top: -9px;
	left: 10px;
}

.form-cat {
	margin-bottom: 20px;
}

.form-cat>label,
label.label {
	display: inline-block;
	font-weight: 400;
	margin-bottom: 4px;
}

.form-cat label small {
	color: #6c757d;
	font-weight: normal;
	margin-left: 5px;
}

.form-cat .sub-label {
	display: table-cell;
	vertical-align: middle;
	width: 80px;
}

/* 詳細検索 */
.detailed-search-box {
	border: 1px solid #00529f;
	position: relative;
	margin: 3em 0;
}

.detailed-search-box .box-title {
	position: absolute;
	top: -29px;
	left: -1px;
	background: #00529f;
	border-radius: 5px 5px 0 0;
	color: #fff;
	display: inline-block;
	font-weight: bold;
	height: 25px;
	line-height: 25px;
	padding: 2px 10px;
	cursor: pointer;
}

.detailed-search-box .content {
	display: none;
	padding: 1em;
}

/* 個人情報 */
.personal-info {
	margin-top: 50px;
}

/* 補足BOX */
.addition-box {
	margin-bottom: 10px;
	padding: 5px 10px;
	border-left: 6px double #00529f;
	background-color: #eee;
}

.addition-box img {
	width: 100%;
}

.secondary-box {
	border: solid 1px #999;
	margin-bottom: 1.5em;
	padding: 1em 1.5em;
}

.card-text .secondary-box {
	margin-bottom: 1.5em;
	padding: 1em 1.5em;
}

.secondary-box p {
	margin: 5px;
	padding: 0;
}

/* 一覧表示BOX */
.summary-box {
	border: 2px solid #74a2cd;
	margin: 5px 0 1.5em;
}

.summary-box .box-title {
	background: #74a2cd;
	padding: 4px 10px;
	color: #FFF;
	font-weight: bold;
	letter-spacing: 0.05em;
	clear: both;
}

.summary-box .box-title .release-date {
	font-size: 12px;
	text-align: right;
}

.summary-box .sub-box-title {
	font-weight: bold;
	margin-bottom: 4px;
	padding-left: 1.2em;
	position: relative;
}

.summary-box .sub-box-title::before {
	color: #74a2cd;
	font-family: "Font Awesome 5 Free";
	content: "\f111";
	position: absolute;
	left: 0;
	top: 3px;
}

.summary-box>div {
	padding: 15px 20px;
	margin: 0;
}

/* シンプル_ドット */
.dotted-box {
	padding: 10px;
	margin-bottom: 10px;
	border: 1px dotted #333;
}

/* シンプル_直線 */
.solid-box {
	padding: 10px;
	margin-bottom: 10px;
	border: 1px solid #333;
	background: #fff;
	font-weight: bold;
}

/* シンプル_右線 */
.left-solid-red {
	padding: 0 10px;
    margin-bottom: 10px;
    border-left: 5px #d9534f;
    border-left-style: solid;
}

/* アコーディオン */
.accordion-header {
	cursor: pointer;
	position: relative;
}

.accordion-header::after {
	font-family: "Font Awesome 5 Free";
	content: "\f107";
	position: absolute;
	right: 10px;
	top: 8px;
}

.accordion-header.open::after {
	content: "\f106";
}

.accordion-header.open+.accordion-inner {
	display: block;
}

.accordion-inner {
	display: none;
	text-indent: 0;
}

/* サブBOX */
.contact-sub-box,
.sub-box,
.sub-box-2,
.soft-sub-box {
	margin-bottom: 20px;
	padding: 15px;
}

.cloudsim-soft-box {
	padding: 15px;
}

.cloudsim-soft-box:nth-child(even) {
	margin-bottom: 20px;
}

.contact-sub-box {
	background: #FFEFE0;
}

.sub-box,
.sub-box-2 {
	background: #e8f2fb;
}

.contact-sub-box>.form-cat:last-child,
.sub-box>.form-cat:last-child,
.sub-box-2>.form-cat:last-child,
.soft-sub-box>.form-cat:last-child,
.cloudsim-soft-box>.form-cat:last-child {
	margin-bottom: 0;
}

.sub-box.form-row {
	margin-bottom: 20px;
}

/* セクション */
.section {
	margin: 25px 20px;
}

.section p.desc-text,
.addition p.desc-text {
	margin: 0 0 1em;
}

.section.message {
	margin: 45px 20px;
}

/* 必須 */
.must {
	background-color: #d9534f;
	border-radius: 0.25em;
	color: #fff;
	display: inline-block;
	font-size: 75%;
	line-height: 1.2;
	margin-left: 8px;
	padding: 3px 6px;
	text-align: center;
	vertical-align: middle;
	white-space: nowrap;
}

/* new */
#partner-area .new-label,
#acmember-area .new-label {
	margin-left: 0;
	margin-right: 5px;
}

.new-label {
	background-color: #fb3;
	border-radius: 0.25em;
	color: #fff;
	display: inline-block;
	font-size: 75%;
	line-height: 1.2;
	margin-left: 8px;
	/* もしFAQの修正入ったら削除 */
	padding: 3px 6px;
	text-align: center;
	vertical-align: middle;
	white-space: nowrap;
}

/* 入力欄デザイン変更 */
.main-area input[type="text"],
.main-area input[type="number"],
.main-area input[type="tel"],
.main-area input[type="email"],
.main-area input[type="password"],
.main-area select,
.main-area textarea {
	background-color: #fff;
	border: 1px solid #ced4da;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
	font-size: 16px;
	font-family: inherit;
	width: 100%;
	padding: 8px;
}

/* 読み取り専用 */
input[readonly],
input[disabled],
textarea[readonly],
textarea[disabled] {
	cursor: not-allowed;
	background-color: #eee !important;
	opacity: 1;
}

/* 入力欄サイズ */
.sm-size {
	width: 50% !important;
}

.xs-size {
	width: 25% !important;
}

.form-control-lg {
	padding: 14px 16px !important;
}

/* input + text 横並び */
/* PCのみ */
.pc-input-inline {
	align-items: center;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	position: relative;
	width: 100%;
}

.pc-input-inline>input {
	position: relative;
	-ms-flex: 1 1 auto;
	flex: 1 1 auto;
	width: 1% !important;
}

/* スマホ・PC用 */
.input-inline {
	align-items: center;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: nowrap;
	flex-direction: row;
	position: relative;
	width: 100%;
}

.input-inline>input {
	position: relative;
	-ms-flex: 1 1 auto;
	flex: 1 1 auto;
	width: 1% !important;
}

.input-group-addon {
	display: flex;
	margin-left: -1px;
}

input+.input-group-addon {
	padding-left: 5px;
}

.input-group-addon+input {
	margin-left: 5px;
}

.radio>label .input-inline,
.checkbox>label .input-inline {
	box-sizing: border-box;
	padding-left: 20px;
}

/* 入力エラー */
input[type="text"].is-invalid,
input[type="number"].is-invalid,
input[type="tel"].is-invalid,
input[type="email"].is-invalid,
input[type="password"].is-invalid,
select.is-invalid,
textarea.is-invalid {
	background: #fbeeef !important;
	border: 1px solid #de737e !important;
	border-radius: 3px;
	outline-color: #de737e;
}

input[type="radio"].is-invalid+span,
input[type="checkbox"].is-invalid+span {
	color: #c81528;
}

input[type="radio"].is-invalid+span::before,
input[type="checkbox"].is-invalid+span::before {
	background: #fbeeef;
	border: 1px solid #de737e;
}

.select-cat .select-radio.is-invalid {
	border: 1px solid #de737e !important;
	outline-color: #de737e;
}

.select-cat input[type="radio"].is-invalid+span,
.select-cat-variable input[type="radio"].is-invalid+span,
.select-cat-variable input[type="checkbox"].is-invalid+span {
	background: #fbeeef !important;
}

.is-invalid+.is-invalid,
.select-cat+.is-invalid,
.invalid-feedback {
	color: #dc3545;
	margin-top: 0.25rem;
	font-size: 80%;
}

.invalid-feedback {
	display: none;
}

.was-validated .invalid-feedback {
	display: block;
	width: 100%;
}

/* 2つ並べる */
.form-row {
	display: flex;
	align-items: baseline;
	margin-bottom: 5px;
}

.form-row .col {
	width: 50%;
}

.form-row .col:last-child {
	margin-left: 10px;
}

.form-row .col>label {
	display: inline-block;
	margin-bottom: 4px;
}

/* 3つ並べる */
.form-row {
	display: flex;
	align-items: baseline;
	margin-bottom: 5px;
}

.form-row .col_3 {
	width: calc(100% / 3);
}

.form-row .col_3>label {
	display: inline-block;
	margin-bottom: 4px;
}


/* ボタン */
.form-btn {
	text-align: center;
}

.btn {
	border: none;
	font-size: 13px;
	outline: none;
	padding: 6px 12px;
	min-width: 120px;
	text-align: center;
	text-decoration: none;
	margin-bottom: 5px;
}

a.btn {
	display: inline-block;
	min-width: 96px;
}

.btn-default,
.btn-default-lg {
	color: #333;
	background: #e7e7e7;
}

.btn-primary,
.btn-primary-lg {
	color: #fff;
	background: #00529f;
}

.btn-warning {
	color: #333;
	background: #ffc107;
}

.btn-info {
	color: #fff;
	background: #17a2b8;
}

.btn-orange-lg {
	color: #fff;
	background: #FF3D00;
}

.btn-white-lg {
	color: #000;
	background: #fff;
	border: 1px solid #000;
}

.btn-map {
	padding: 4px 8px;
}

/* 大きめサイズ */
.btn-lg {
	width: 100% !important;
	box-sizing: border-box;
}

.btn-primary-lg,
.btn-default-lg,
.btn-orange-lg,
.btn-white-lg {
	font-size: 18px;
	font-weight: bold;
	padding: 10px 16px !important;
	min-width: 200px !important;
}

a.btn-primary-lg,
a.btn-default-lg,
a.btn-orange-lg,
a.btn-white-lg {
	min-width: 168px !important;
}

/* お問合わせ */
.btn-contact {
	background-image: linear-gradient(45deg, #ff4e50 0%, #fb3 100%);
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
	border-bottom: solid 3px #c58668;
	border-radius: 5px;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	padding: 10px 16px;
}

/* SOC報告書申込 */
.btn-soc {
	background-image: linear-gradient(45deg, #182848 0%, #4b6cb7 100%);
	border-radius: 5px;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	padding: 10px 16px;
}

/* パートナー様専用サイト */
.btn-partner {
	background-image: linear-gradient(45deg, #e27d4e 0%, #e6b682 74%);
	border-radius: 5px;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	padding: 10px 16px;
}

/* PSS会員NEWS */
.btn-pss {
	background-color: #738bdc;
	background-image: linear-gradient(315deg, #738bdc 0%, #48c3eb 74%);
	border-radius: 5px;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	flex-grow: 1;
	padding: 6px 12px;
}

/* 画像ボタン */
.btn-img {
	border: none;
	background: none;
	outline: none;
}

.btn-img:hover {
	cursor: pointer;
	opacity: 0.8;
}

.btn-img[disabled] {
	cursor: no-drop;
	opacity: 0.2;
}

/* OS確認情報 */
.os-btn {
	text-align: center;
}

.os-btn li {
	display: inline-block;
	text-align: center;
	margin: 0;
	padding: 0;
}

/* リコーOSO */
.btn-oso {
	border: none;
	color: #fff;
	font-size: 13px;
	outline: none;
	padding: 6px 12px;
	text-align: center;
	text-decoration: none;
}

.btn-oso-0 {
	background: #F59100;
}

.btn-oso-1 {
	background: #00A46A;
}

.btn-oso:hover {
	color: #fff;
	text-decoration: none;
	cursor: pointer;
	opacity: 0.8;
}

/* ノーマル */
.btn-normal {
	border-radius: 0.5rem;
	border: 1px solid #ccc;
	background: linear-gradient(to bottom, #fdfbfb 0%, #ebedee 100%);
	box-shadow: inset 1px 1px 1px #fff;
	box-sizing: content-box;
	color: #333;
	display: table-cell;
	font-size: 16px;
	font-weight: bold;
	padding: 0.5em;
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
	width: 220px;
	height: 48px;
}

.btn-normal:nth-child(even) {
	margin-left: 5px;
}

.btn-normal:hover {
	background: linear-gradient(to top, #fdfbfb 0%, #ebedee 100%);
	color: #333;
	text-decoration: none;
}

/* disabled */
#step-2[disabled] {
	cursor: no-drop;
	opacity: 0.5;
}

/* hover */
.btn:hover {
	cursor: pointer;
	opacity: 0.8;
}

a.btn-default:hover,
.btn-warning:hover,
.btn-default-lg:hover,
.btn-white-lg:hover {
	color: #333;
	text-decoration: none;
}

a.btn-primary:hover,
a.btn-primary-lg:hover,
a.btn-info:hover,
a.btn-soc:hover,
a.btn-partner:hover,
a.btn-pss:hover,
a.btn-orange-lg:hover,
a.btn-yes:hover,
a.btn-no:hover {
	color: #fff;
	text-decoration: none;
}

/* ログアウトボタン */
.logout {
	position: relative;
	margin-left: 20px;
	margin-right: 20px;
}

.logout>a {
	position: absolute;
	top: -212px;
	right: 0;
}

/* 右寄せ */
.show-all,
.fault-report,
.text-right {
	text-align: right !important;
}

/* 中央寄せ */
.text-center {
	text-align: center;
}

/* フォントサイズ */
.text-medium {
	font-size: medium;
}

.text-large {
	font-size: large;
}

.text-xlarge {
	font-size: x-large;
}

/* フォントカラー */
.text-red {
	color: #c81528;
}

.text-blue {
	color: #3275bc;
}

/* ヘルプテキスト */
.text-help {
	color: #6c757d;
}

.text-hint {
	color: #3275bc;
	font-size: smaller;
	margin: 0 0 5px;
	padding-left: 4.2em;
	text-indent: -4.2em;
}

.note {
	color: #3275bc;
	font-size: smaller;
}

.note-text {
	align-items: center;
	display: flex;
}

/* 空白 */
.blank-space {
	padding-left: 15px;
}

.mt-1 {
	margin-top: 10px !important;
}

.mb-0 {
	margin-bottom: 0em !important;
}

.mb-1 {
	margin-bottom: 1em !important;
}

.mt-2 {
	margin-top: 20px;
}

/* 改行 */
.text-indent::before {
	content: "\A ";
	white-space: pre;
}

.word-break {
	word-break: break-word;
}

/* インデント テキスト用 */
.div-indent {
	margin-left: 24px;
}

.table-indent {
	margin-left: 34px;
}

/* ラベル */
.badge {
	display: inline-block;
	font-size: 12px;
	font-weight: bold;
	padding: 0 4px;
	vertical-align: top;
}

.badge-outline-gray {
	color: #878787;
	background-color: #fff;
	border: 1px solid #878787;
}

.badge_partnercert {
	color: #004D40;
	background-color: #E0F2F1;
	border: 1px solid #004D40;
	font-size: 14px;
	margin-bottom: 4px;
}

.badge_supportpkg {
	color: #E65100;
	background-color: #FFF3E0;
	border: 1px solid #E65100;
	font-size: 14px;
	margin-bottom: 4px;
}

.badge_enrolled_partnerc {
	color: #880E4F;
	background-color: #FCE4EC;
	border: 1px solid #880E4F;
	font-size: 14px;
	margin-bottom: 4px;
}

.badge_enrolled_salesadv {
	color: #4A148C;
	background-color: #F3E5F5;
	border: 1px solid #4A148C;
	font-size: 14px;
	margin-bottom: 4px;
}

.badge_psip {
	color: #827717;
	background-color: #F9FBE7;
	border: 1px solid #827717;
	font-size: 14px;
	margin-bottom: 4px;
}

/* テキストサイズ */
.text-sm {
	font-size: smaller !important;
}

.text-lg {
	font-size: large !important;
}

/* サブタイトル */
h5 {
	font-size: 18px;
	font-weight: bold;
	margin: 8px 0;
	padding-left: 1.2em;
	position: relative;
}

h5::before {
	color: #00529f;
	font-family: "Font Awesome 5 Free";
	content: "\f111";
	position: absolute;
	left: 0;
	top: 3px;
}

h5.content-title {
	background-color: #e8f2fb;
	border-left: 20px solid #00529f;
	color: #00529f;
	padding: 4px 8px;
}

h5.content-title::before {
	content: none;
}

h6 {
	display: inline-block;
	font-size: 18px;
	font-weight: bold;
	margin: 4px 0;
	padding: 0 60px;
	position: relative;
}

h6:before,
h6:after {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 50px;
	height: 1px;
	background-color: black;
}

h6:before {
	left: 0;
}

h6:after {
	right: 0;
}

p.sub-title {
	margin-bottom: 5px;
}

p.sub-title>span {
	background: linear-gradient(transparent 70%, #e8f2fb 70%);
	font-weight: bold;
}

/* テーブル */
table {
	border-collapse: collapse;
	margin-bottom: 15px;
	text-align: left;
	width: 100%;
}

table tr {
	padding: 5px;
}

table th,
table td {
	padding: 10px;
}

table th.text-nowrap,
table td.text-nowrap {
	white-space: nowrap;
}

/* FAQ一覧 */
table.horizontal-table tr {
	border-bottom: 1px dotted #00529f;
}

table.horizontal-table tr:last-child {
	border-bottom: 2px solid #00529f;
}

table.horizontal-table tr td a {
	font-weight: bold;
	text-decoration: underline;
}

table.horizontal-table .new-label {
	margin-left: 0;
}

@media screen and (max-width: 570px) {
	table.horizontal-table {
		border: 0;
		width: 100%
	}

	table.horizontal-table tr {
		border-bottom: 1px solid #00529f;
	}


	table.horizontal-table tr:first-child {
		border-top: 2px solid #00529f;
	}

	table.horizontal-table th {
		display: block;
		border-right: none;
		border-bottom: 2px solid #00529f;
		padding-bottom: .6em;
		margin-bottom: .6em;
	}

	table.horizontal-table thead {
		border: none;
		clip: rect(0 0 0 0);
		height: 1px;
		margin: -1px;
		overflow: hidden;
		padding: 0;
		position: absolute;
		width: 1px;
	}

	table.horizontal-table td {
		border-bottom: 1px dotted #bbb;
		display: block;
		font-size: .9em;
		position: relative;
		padding: .625em;
		border-right: none;
	}

	table.with_th td {
		padding: .625em .625em .625em 6em;
	}

	table.horizontal-table td::before {
		content: attr(data-label);
		font-weight: bold;
		position: absolute;
		left: 10px;
	}

	table.horizontal-table td:last-child {
		border-bottom: 0;
	}
}

/* FAQ詳細 */
table.vertical-table thead th {
	text-align: center;
}

table.vertical-table thead th .new-label {
	margin-left: 8px;
}

table.vertical-table tbody tr {
	border-bottom: 1px dotted #0b85fb;
}

table.vertical-table tbody tr:first-child {
	border-top: 2px solid #00529f;
}

table.vertical-table tbody tr:last-child {
	border-bottom: 2px solid #00529f;
}

/* シンプル 縦 */
table.normal {
	width: 100%;
	border-collapse: collapse;
	border-top: 1px dotted #ced4da;
	font-size: 14px;
	margin-top: 5px;
}

table.normal th,
table.normal td {
	text-align: left;
	vertical-align: middle;
	line-height: 1.5;
	padding: .5em 1em;
	border-bottom: 1px dotted #ced4da;
}

table.normal th {
	background: #e8f2fb;
	width: 10em;
}

/* シンプル 横 */
table.normal-side {
	width: 100%;
	border-collapse: collapse;
	border-top: 1px dotted #ced4da;
	font-size: 14px;
	margin-bottom: 50px;
}

table.normal-side th,
table.normal-side td {
	text-align: left;
	vertical-align: middle;
	line-height: 1.5;
	padding: .5em 1em;
	border-bottom: 1px dotted #ced4da;
}

table.normal-side th {
	background: #e8f2fb;
}

/* ハイライト */
tr.pick {
	background-color: #ffe;
	font-weight: bold;
}

/* ラジオボタン */
.radio>label {
	display: block;
	text-indent: -20px;
	margin-top: 5px;
	padding-left: 20px;
}

.radio input[type="radio"] {
	display: none;
}

.radio input[type="radio"][disabled]+span {
	opacity: 0.5;
}

.radio input[type="radio"]+span {
	padding-left: 20px;
	position: relative;
}

.radio input[type="radio"]+span::before {
	content: "";
	display: block;
	position: absolute;
	top: 3px;
	left: 0;
	width: 15px;
	height: 15px;
	background-color: #fff;
	border: 1px solid #999;
	border-radius: 50%;
}

.radio input[type="radio"]:checked+span {
	color: #00529f;
}

.radio input[type="radio"]:checked+span::after {
	content: "";
	display: block;
	position: absolute;
	top: 6px;
	left: 3px;
	width: 11px;
	height: 11px;
	background: #00529f;
	border-radius: 50%;
}

.radio>.form-cat {
	padding-left: 20px;
}

.radio input[type="radio"]:checked+span::after,
.radio input[type="radio"]+span::before,
.radio input[type="radio"]:checked+span::before {
	box-sizing: content-box;
}

/* チェックボタン */
.checkbox label {
	display: block;
	text-indent: -20px;
	margin-top: 5px;
	padding-left: 20px;
}

.checkbox input[type="checkbox"] {
	display: none;
}

.checkbox input[type="checkbox"][disabled]+span {
	opacity: 0.5;
}

.checkbox input[type="checkbox"][disabled]+span::after {
	font-family: "Font Awesome 5 Free";
	content: "\f00d";
	color: #c81528;
	font-weight: bold;
	position: absolute;
	left: 23px;
	top: 3px;
}

.checkbox input[type="checkbox"]+span {
	padding-left: 20px;
	position: relative;
}

.checkbox input[type="checkbox"]+span::before {
	content: "";
	display: block;
	position: absolute;
	top: 3px;
	left: 0;
	width: 15px;
	height: 15px;
	background-color: #fff;
	border: 1px solid #999;
	border-radius: 4px;
}

.checkbox input[type="checkbox"]:checked+span {
	color: #00529f;
}

.checkbox input[type="checkbox"]:checked+span::after {
	content: "";
	display: block;
	position: absolute;
	top: -3px;
	left: 5px;
	width: 7px;
	height: 14px;
	transform: rotate(40deg);
	border-bottom: 3px solid #00529f;
	border-right: 3px solid #00529f;
}

.checkbox input[type="checkbox"]:checked+span::after,
.checkbox input[type="checkbox"]+span::before,
.checkbox input[type="checkbox"]:checked+span::before {
	box-sizing: content-box;
}

/*
	ボタン風 ラジオボタン,チェックボタン
---------------------------------*/
/* 幅固定 */
.select-cat {
	display: flex;
}

.select-cat label {
	display: flex;
	margin-right: 10px;
	position: relative;
}

.select-cat input[type="radio"] {
	clip: rect(0, 0, 0, 0);
	position: absolute;
	width: 100%;
	height: 100%;
	margin: 0;
	outline-color: #00529f;
	padding: 0;
}

.select-cat input[type="radio"]:checked+span {
	color: #3275bc;
	border: 1px solid #00529f;
	background-color: #d0e6fd;
}

.select-cat span.radio-name {
	color: #333;
	border: 1px solid #ced4da;
	text-align: center;
	display: inline-block;
	padding: 5px 0px;
	width: 120px;
}

.select-cat span.radio-name:hover {
	border: 1px solid #333;
	cursor: pointer;
}

/* 幅可変 */
.select-cat-variable {
	display: flex;
	flex-wrap: wrap;
}

.select-cat-variable label {
	display: flex;
	margin-bottom: 6px;
	margin-right: 10px;
	position: relative;
}

.select-cat-variable input[type="checkbox"],
.select-cat-variable input[type="radio"] {
	clip: rect(0, 0, 0, 0);
	position: absolute;
	width: 100%;
	height: 100%;
	margin: 0;
	outline-color: #00529f;
	padding: 0;
}

.select-cat-variable input[type="checkbox"]:checked+span,
.select-cat-variable input[type="radio"]:checked+span {
	color: #3275bc;
	border: 1px solid #00529f;
	background-color: #d0e6fd;
}

.select-cat-variable span.checkbox-name-variable,
.select-cat-variable span.radio-name-variable {
	background-color: rgba(255, 255, 255, 0.5);
	border: 1px solid #ced4da;
	color: #333;
	text-align: center;
	display: inline-block;
	padding: 5px 8px;
	min-width: 120px;
}

.select-cat-variable span.checkbox-name-variable:hover,
.select-cat-variable span.radio-name-variable:hover {
	border: 1px solid #333;
	cursor: pointer;
}

/* 横並び表示 */
.radio-inline>label,
.checkbox-inline>label,
.checkbox.halve label,
.checkbox .accordion-area label {
	display: inline-block;
	margin-right: 20px;
}

.accordion-area label {
	margin-right: 0 !important;
}

/* 2列に並べる */
.radio-inline.radio-2>label {
	width: calc(50% - 30px);
	margin-right: 5px;
	vertical-align: top;
}

.radio-inline .label-date {
	width: 160px;
}

.select-cat-variable .sub-box-subordinate span.checkbox-name-variable,
.select-cat-variable .sub-box-subordinate span.radio-name-variable {
	background-color: rgba(255, 255, 255, 1);
}

/*
	ON/OFF風 チェックボタン
---------------------------------*/
.add-opt-capacity input {
	display: none;
}

.add-opt-capacity {
	position: relative;
	float: left;
}

.add-opt-capacity span {
	float: right;
}

.add-opt-capacity label {
	width: 40px;
	height: 20px;
	box-sizing: border-box;
	border: 3px solid #ccc;
	background: #ccc;
	float: left;
	border-radius: 100px;
	position: relative;
	cursor: pointer;
	transition: .3s ease;
	margin-right: 6px;
}

.add-opt-capacity input[type=checkbox]:checked+label {
	background: #00529f;
	border-color: #00529f;
}

.add-opt-capacity input[type=checkbox]:checked+label:before {
	left: 22px;
}

.add-opt-capacity label:before {
	transition: .3s ease;
	content: '';
	width: 10px;
	height: 10px;
	position: absolute;
	background: white;
	left: 2px;
	top: 2px;
	box-sizing: border-box;
	border: none;
	border-radius: 100px;
}

/*
	背景色が変化 チェックボタン
---------------------------------*/
.inputGroup {
    background-color: #fff;
    display: block;
    margin: 10px 0;
    position: relative;
}
.inputGroup label {
    padding: 12px 60px 12px 30px;
    display: block;
    text-align: left;
    color: #3C454C;
    cursor: pointer;
    position: relative;
    z-index: 2;
    transition: color 200ms ease-in;
    overflow: hidden;
}
.inputGroup label:before {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    content: '';
    background-color: #5562eb;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) scale3d(1, 1, 1);
    transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 0;
    z-index: -1;
}
.inputGroup label::after {
	font-family: "Font Awesome 5 Free";
	content: "\f111";
	font-weight: bold;
	color: #f5f5f5;
	border-radius: 50%;
    z-index: 2;
    position: absolute;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    transition: all 200ms ease-in;
	font-size: 28px;
}
.inputGroup input:checked ~ label {
    color: #fff;
}
.inputGroup input:checked ~ label::before {
    transform: translate(-50%, -50%) scale3d(110, 45, 1);
    opacity: 1;
}
.inputGroup input:checked ~ label::after {
    content: "\f058";
	color: #54E0C7;
}
.inputGroup input {
    width: 32px;
    height: 32px;
    order: 1;
    z-index: 2;
    position: absolute;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    visibility: hidden;
}
.form {
    padding: 0 16px;
    max-width: 550px;
    margin: 50px auto;
    font-size: 18px;
    font-weight: 600;
    line-height: 36px;
}


/*
	均等配列
---------------------------------*/
/* 2分割 */
.halve>div {
	width: calc((100% - 1em) / 2);
	vertical-align: top;
	display: inline-block;
}

/* pdf,zip,word */
.pdf-link,
.zip-link,
.word-link,
.movie-link {
	position: relative;
	padding-left: 18px;
}

.pdf-link::before,
.zip-link::before,
.word-link::before,
.movie-link::before {
	font-family: "Font Awesome 5 Free";
	position: absolute;
	left: 0;
	top: 3px;
}

.pdf-link::before {
	content: "\f1c1";
}

.zip-link::before {
	content: "\f1c6";
}

.word-link::before {
	content: "\f1c2";
}

.movie-link::before {
	content: "\f152";
}

/* pdfボタン */
.btn.pdf-link {
	padding-left: 30px;
}

.btn.pdf-link::before {
	left: 14px;
	top: 8px;
}

/* 資料DL */
.btn-dl {
	text-decoration: none !important;
	position: relative;
	padding-left: 30px;
}

.btn-dl::before {
	font-family: "Font Awesome 5 Free";
	content: "\f56d";
	font-weight: bold;
	position: absolute;
	left: 14px;
	top: 8px;
}

/* 改行 */
.txtcent a>br,
.br-pc-none {
	display: none;
}

/*
	list
---------------------------------*/
/* 共通 */
ul,
ol {
	margin-top: 0;
	padding-left: 20px;
}

ul>li,
ol>li {
	margin-bottom: 5px;
}

ul ul {
	margin-top: 0;
	padding-left: 32px;
}

ul>li li {
	text-indent: 0em;
}

dt {
	font-weight: bold;
}

dt::after {
	content: "：";
}

/* 横並び */
.ul-inline>li {
	display: inline-block;
	margin-right: 25px;
}

.dl-inline {
	clear: both;
	margin: 5px 0;
}

.dl-inline>dt {
	float: left;
}

/* 2分割 */
.lightbox-halve {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.lightbox-halve li {
	width: calc((100% - 2em) / 2);
}

/* ※list */
ul.asterisk {
	padding-left: 14px;
}

ul.asterisk>li,
ul.square>li {
	list-style-type: none;
	text-indent: -1em;
}

ul.asterisk>li::before {
	content: "※";
	display: inline;
}

/* ■list */
ul.square>li::before {
	color: #00529f;
	content: "■";
	display: inline;
}

/* 矢印 四角 list */
ul.square-right {
	margin-bottom: 0;
	padding-left: 0;
}

ul.square-right>li {
	list-style-type: none;
}

ul.square-right>li::before {
	font-family: "Font Awesome 5 Free";
	color: #00529f;
	content: "\f152";
	font-weight: bold;
	display: inline;
	margin-right: 5px;
}

ul.square-right>li li {
	list-style-type: none;
}

ul.square-right>li li::before {
	font-family: "Font Awesome 5 Free";
	color: #00529f;
	content: "\f152";
	font-weight: normal;
	display: inline;
	margin-right: 5px;
}

/* 矢印 まる list */
ul.circle-right {
	margin-bottom: 0;
	padding-left: 0;
}

ul.circle-right>li {
	list-style-type: none;
}

ul.circle-right>li::before {
	font-family: "Font Awesome 5 Free";
	color: #00529f;
	content: "\f138";
	font-weight: bold;
	display: inline;
	margin-right: 5px;
}


/* ●なし */
ul.list-style-none {
	list-style: none;
	margin-bottom: 0;
	padding-left: 0;
}

/* インデント リスト用 */
ul.indent-list li {
	margin-left: 1.2em;
}

/* 横並び 均等 */
ul.equal-list:after {
	content: "";
	clear: both;
	display: block;
}

ul.equal-list li {
	display: block;
	float: left;
	list-style-type: none;
	width: 32%;
}

/* 三角矢印 list */
ul.caret-right {
	margin-bottom: 0;
	padding-left: 0;
}

ul.caret-right>li {
	list-style-type: none;
}

ul.caret-right>li::before {
	font-family: "Font Awesome 5 Free";
	color: #3275bc;
	content: "\f0da";
	font-weight: bold;
	display: inline;
	margin-right: 5px;
}

ul.caret-right>li li {
	list-style-type: none;
}

ul.caret-right>li li::before {
	font-family: "Font Awesome 5 Free";
	color: #74a2cd;
	content: "\f0da";
	font-weight: bold;
	display: inline;
	margin-right: 5px;
}

/* カッコ付 数字 */
ol.list-parentheses {
	padding-left: 26px;
}

ol.list-parentheses>li {
	counter-increment: cnt;
	list-style-type: none;
	list-style-position: inside;
	text-indent: -26px;
}

ol.list-parentheses>li:before {
	display: marker;
	content: "(" counter(cnt) ") ";
}

ol.list-parentheses li>* {
	text-indent: initial;
}

/* Q&A */
.qa-section {
	margin-bottom: 30px;
}

.qa-section .q-tab {
	padding-left: 36px;
	position: relative;
	margin-bottom: 20px;
	font-weight: bold;
}

.qa-section .a-tab .a-inn {
	padding-left: 36px;
	position: relative;
}

.qa-section .a-tab .a-inn p {
	margin-top: 0;
}

.qa-section .q-tab::before {
	content: "Q";
	color: #00529f;
	font-weight: bold;
}

.qa-section .a-tab .a-inn::before {
	content: "A";
	color: #c81528;
	font-weight: bold;
}

.qa-section .q-tab::before,
.qa-section .a-tab .a-inn::before {
	font-size: 28px;
	position: absolute;
	font-family: "Hiragino Kaku Gothic ProN", "メイリオ", sans-serif;
	top: -8px;
	left: 10px;
	transform: translateX(-50%);
}

.qa-section .q-tab::after {
	position: absolute;
	top: 22px;
	font-size: 20px;
	right: 40px;
	transform: translateX(50%);
	color: #7d7d7d;
	font-weight: bold;
}

/*
	card-2
---------------------------------*/
.card-2 {
	background-color: #fff;
	box-shadow: 0 0 8px rgba(0, 0, 0, .16);
	display: flex;
	flex-direction: column;
	text-decoration: none;
	width: calc((100% - 2em) / 3);
	margin-bottom: 60px;
}

/* card-2 link */
a.card-2 p,
a.card-2 div {
	color: #333;
}

.card-2:hover {
	box-shadow: 0 7px 14px rgba(50, 50, 93, .1), 0 3px 6px rgba(0, 0, 0, .08);
	text-decoration: none;
}

/* card-2 img */
.card-2 .card-image img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

/* card-2 caption */
.card-2 .card-content {
	padding: 16px 16px 0;
}

.card-2 .card-content .card-ttl {
	font-weight: bold;
	margin-bottom: 0;
}

/* card-2 footer */
.card-2 .card-footer {
	font-size: 14px;
	margin-top: auto;
	padding: 16px;
}

.card-2 .card-footer .card-text {
	margin-top: 10px;
}

.card-2 .card-footer .card-text-day>span {
	font-weight: bold;
}

.card-2 .card-footer .card-text-time {
	font-size: 14px;
	font-weight: bold;

}


/*---------------------------------

	404,500エラー画面

---------------------------------*/
.error-page {
	margin-bottom: 40px;
}


/*---------------------------------

	サーバー稼働状況画面

---------------------------------*/
/* 稼働率,障害時間 共通 */
.occupancy-rate-item,
.occupancy-rate2-item,
.failure-time-item {
	border: 2px solid #00529f;
	box-sizing: border-box;
	margin-bottom: 1em;
}

dl.inner {
	padding: 0.5em 1em;
	clear: both;
	margin-top: 0;
}

.occupancy-rate2-item dl.inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

dl.inner>div {
	width: calc((100% / 2) - 1em);
}

dl.inner dt {
	float: left;
}

/* 稼働率 */
.occupancy-rate-box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
}

.occupancy-rate-item {
	width: calc((100% / 4) - 0.5em);
}

.occupancy-rate-item:last-child {
	width: 100%;
}

.occupancy-rate-item .box-title,
.occupancy-rate2-item .box-title {
	border-bottom: 2px solid #00529f;
	color: #00529f;
	display: table;
	font-weight: bold;
	text-align: center;
	table-layout: fixed;
	margin: 0.2em auto;
	width: calc(100% - 2em);
}

.occupancy-rate-item .explanation,
.occupancy-rate2-item .explanation {
	font-size: 14px;
	padding: 0 1.5em;
}

.occupancy-rate2-item {
	width: calc((100% / 2) - 1em);
}

/* 障害時間 */
.failure-time-item:nth-child(even) {
	margin-left: 2em;
}

.failure-time-item .explanation {
	font-size: 14px;
	padding: 0 1.5em;
}

/* 障害発生について */
.system-trouble-item {
	border: 2px solid #00529f;
	margin: 1em 0;
	padding: 0.5em 1.5em;
}

.system-trouble-item>.box-title {
	border-bottom: 2px dotted #00529f;
	font-size: 16px;
	margin: 0 0 10px;
	padding-left: 5px;
}

.system-trouble-item p {
	font-weight: bold;
	margin: 0;
}

.system-trouble-item>dl {
	margin: 0 0 10px;
}

.system-trouble-item .irregular_text {
	margin-left: 40px;
}

.system-trouble-item .irregular_text span {
	display: block;
	font-weight: bold;
	margin-left: -40px;
}

.system-trouble-item .irregular_text span::after {
	content: "：";
}

.system-trouble-item .irregular_text b::after {
	content: "\A";
	white-space: pre;
}

.system-trouble-item .incident_list {
	display: flex;
}

.system-trouble-item .incident_list p {
	width: 180px;
}


/*---------------------------------

	確認画面

---------------------------------*/
.confirm-area,
.contact-confirm-area {
	padding: 20px;
	margin-bottom: 40px;
}

.confirm-area {
	background-color: #f5f5f5;
}

.contact-confirm-area {
	background-color: #FFEFE0;
}

.confirm-area>.form-cat:last-child,
.contact-confirm-area>.form-cat:last-child {
	margin-bottom: 0;
}

/* 項目名 */
.confirm-area>.form-cat>label,
.contact-confirm-area>.form-cat>label {
	font-weight: 900;
	padding-left: 5px;
}

.confirm-area>.form-cat>label {
	border-left: 3px solid #00529f;
}

.contact-confirm-area>.form-cat>label {
	border-left: 3px solid #f83600;
}

/* 内容 */
.confirm-area>.form-cat>p,
.contact-confirm-area>.form-cat>p {
	margin: 0;
	margin-left: 8px;
}

/* 価格表 */
.confirm-area .total-price-list {
	border-color: #ddd;
}


/*---------------------------------

	士業事務所検索

---------------------------------*/
/* 地方選択 */
.region-area {
	position: relative;
}

.region-area::before {
	content: '';
	display: inline-block;
	width: 100%;
	height: 240px;
	background-image: url("../img/map.png");
	background-position: center right;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: -40px;
	left: 0;
	z-index: -1;
}

/* 非表示 */
.hidden {
	display: none !important;
}


/*---------------------------------

	PCA士業事務所検索結果

---------------------------------*/
.search-results {
	clear: both;
	margin-bottom: 26px;
}

/* 会社名 */
.company-info {
	background: #e8f2fb;
	border-bottom: 1px solid #74a2cd;
	display: table;
	width: 100%;
}

.company-info>div {
	display: table-cell;
	padding: 10px 16px;
}

.company-info .company-name {
	font-size: 22px;
	font-weight: bold;
	margin: 0;
}

.company-info>.company-name span.industry-type {
	margin-bottom: 0;
}

/* 画像・コメント */
.feature {
	padding: 10px 0;
	overflow: hidden;
}

.feature .company-img {
	float: left;
	margin-right: 10px;
}

.feature .company-comment {
	overflow: hidden;
	word-break: break-all;
}

/* 項目 */
.industry {
	display: table;
	width: 100%;
	table-layout: fixed;
	border-top: 1px solid #ced4da;
	margin-top: 0;
	margin-bottom: 10px;
}

.industry dt {
	font-size: 18px;
	padding: 5px 0;
}

.industry dt::after {
	content: none;
}

.industry dd {
	margin-left: 0;
	word-break: break-all;
}

span.industry-type {
	background-color: #fff;
	border: 1px solid #00529f;
	color: #00529f;
	display: inline-block;
	font-size: 14px;
	padding: 5px 8px;
	margin-right: 2px;
}

.industry span.industry-type {
	margin-bottom: 10px;
}


/* 住所 */
.search-results dl.address {
	display: table;
	width: 100%;
	table-layout: fixed;
	font-size: 14px;
	border-top: 1px dotted #e8f2fb;
	border-bottom: 1px dotted #e8f2fb;
}

.search-results dl.address dt,
.search-results dl.address dd {
	display: table-cell;
	vertical-align: top;
	padding: 10px 1em;
}

.search-results dl.address dt {
	background: #e8f2fb;
	vertical-align: middle;
	width: 2em;
}

.search-results dl.address dt::after {
	content: none;
}

/* ページ送り */
.pager {
	border-top: 3px solid #ced4da;
	padding: 40px 0;
}

.pager-list {
	display: flex;
	align-items: center;
	justify-content: center;
	list-style: none;
	padding-left: 0;
}

.pager-list>li {
	box-sizing: border-box;
	margin: 5px;
}

.pager-list>li>a {
	display: block;
	text-decoration: none;
}

.pager-list>li>a>.label-pager {
	background: #fff;
	border-radius: 3em;
	display: inline-block;
	vertical-align: top;
	overflow: hidden;
	width: 2em;
	line-height: 1;
	padding: .5em 0;
	text-align: center;
	color: #00529f;
}

.pager-list>li>a>i {
	display: block;
	font-size: 20px;
	text-align: center;
	width: 1.75em;
}

.label-pager:hover,
.is-current>.label-pager {
	color: #fff !important;
	background: #00529f !important;
}


/*---------------------------------

	サブスク

---------------------------------*/
/* 利用規約 */
#tos {
	border: 2px #999 solid;
	font-size: 14px;
	height: 300px;
	margin: 10px 20px;
	overflow: auto;
	padding: 10px 20px;
	text-align: justify;
}

#tos .article-title {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 0;
}


/*---------------------------------

	PSIP

---------------------------------*/
/* トピックス アイコン */
.icon {
	padding-left: 6em;
	position: relative;
	margin: 0;
}

.icon:nth-child(n+2) {
	margin-top: 5px;
}

.icon::before {
	position: absolute;
	left: 0;
	top: 2px;
	border-width: 1px;
	border-style: solid;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	width: 80px;
}

.psip-general::before {
	border-color: #444;
	color: #444;
	content: "共通";
}

.psip-gold::before {
	border-color: #F0BC08;
	color: #F0BC08;
	content: "Gold";
}

.psip-silver::before {
	border-color: #878787;
	color: #878787;
	content: "Silver";
}

.psip-bronze::before {
	border-color: #6f4334;
	color: #6f4334;
	content: "Bronze";
}

.psip-hyper::before {
	border-color: #777e41;
	color: #777e41;
	content: "hyper";
}

.psip-news::before {
	border-color: #00529f;
	color: #00529f;
	content: "お知らせ";
}

.psip-important::before {
	border-color: #dc3545;
	color: #dc3545;
	content: "重要";
}

.psip-webapi::before {
	border-color: #333;
	color: #333;
	content: "Web-API";
}

/* 重要なお知らせ */
dl.important-notices {
	display: table;
	width: 100%;
	table-layout: fixed;
}

dl.important-notices dt,
dl.important-notices dd {
	display: table-cell;
	vertical-align: middle;
	padding: 10px 1em;
}

dl.important-notices dt {
	background: #00529f;
	color: #fff;
	width: 7em;
}

dl.important-notices dt::after {
	content: none;
}

dl.important-notices dd {
	border: 1px solid #ced4da;
	margin-left: 0;
}

dl.important-notices dd p {
	margin: 0;
}

/* card */
.col-1 {
	width: 100%;
	padding: 0;
}

.col-5,
.col-4 {
	width: 100%;
	display: flex;
	display: -ms-flexbox;
	/* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	/* IE10 */
	justify-content: space-between;
	padding: 0;
}

.col-5 .card,
.col-4 .card,
.col-1 .card {
	border: 1px solid #ced4da;
	border-radius: 3px;
	box-sizing: border-box;
	display: flex;
	display: -ms-flexbox;
	/* IE10 */
	flex-direction: column;
	list-style: none;
	margin-bottom: 1rem;
	padding: 1rem;
}

.col-1 .card {
	border-top: 4px solid #BC9692;
}

.col-5 .card:nth-of-type(odd),
.col-4 .card:nth-of-type(odd) {
	border-top: 4px solid #6c757d;
}

.col-5 .card:nth-of-type(even),
.col-4 .card:nth-of-type(even) {
	border-top: 4px solid #c4b8b0;
}

.col-5 .card .card-content,
.col-4 .card .card-content,
.col-1 .card .card-content {
	margin-bottom: 1rem;
}

.col-5 .card p.card-title,
.col-4 .card p.card-title,
.col-1 .card p.card-title {
	font-weight: bold;
	margin: 0;
	color: #333;
}

.col-5 .card p.card-text,
.col-4 .card p.card-text,
.col-1 .card p.card-text {
	color: #6c757d;
	font-size: 14px;
	margin: 15px 0 0;
}

.col-5 .card p.card-text .icon,
.col-4 .card p.card-text .icon,
.col-1 .card p.card-text .icon {
	display: block;
	padding: 10px;
}

.col-5 .card-link,
.col-4 .card-link,
.col-1 .card-link {
	border-top: 1px solid #ced4da;
	margin-top: auto;
}

.col-5 .card-link .btn,
.col-4 .card-link .btn,
.col-1 .card-link .btn {
	text-align: center;
	margin-top: 1rem;
}

.col-5 .card-link ul,
.col-4 .card-link ul,
.col-1 .card-link ul {
	margin-top: 1rem;
}

/* 個別カラー */
.col-4 .card.pro_kai {
	border-top: 4px solid #e6001a;
}

.col-4 .card.pro_sho {
	border-top: 4px solid #3586b3;
}

.col-4 .card.pro_kyu {
	border-top: 4px solid #7cba27;
}

.col-4 .card.pro_jin {
	border-top: 4px solid #efc20d;
}

.col-4 .card.pro_kot {
	border-top: 4px solid #9c4999;
}

.col-4 .card.pro_kou {
	border-top: 4px solid #05999b;
}

.col-4 .card.pro_sya {
	border-top: 4px solid #ed86b5;
}

.col-4 .card.pro_mca {
	border-top: 4px solid #06b3b1;
}

.col-4 .card.pro_ken {
	border-top: 4px solid #b4174a;
}

.col-4 .card.pro_gen {
	border-top: 4px solid #724531;
}

/* サポート資料 タイトル */
.support-title {
	border: 2px solid #00529f;
}

.support-title .left-column {
	background-color: #00529f;
	color: #fff;
	float: left;
	font-size: 12px;
	padding: 4px;
}

.support-title .right-column {
	color: #00529f;
	float: right;
	font-size: 12px;
	text-align: right;
	padding: 4px;
}

.support-title .right-column>.update-date {
	font-weight: bold;
	margin-left: 5px;
}

.support-title .title {
	border-top: 1px solid #00529f;
	clear: both;
	padding: 10px;
}


/*---------------------------------

	PCAクラウド 体験版

---------------------------------*/
/* 詳細 */
.external-link-alt {
	position: relative;
}

.external-link-alt::before {
	color: #00529f;
	font-family: "Font Awesome 5 Free";
	content: "\f059";
	position: absolute;
	left: 10px;
	top: 3px;
}

.external-link-alt::after {
	content: none;
}

.external-link-alt.open::after {
	content: none;
}

/* 背景 */
.soft-sub-box.taikenban_kai {
	background: #FED3D8;
}

.soft-sub-box.taikenban_han {
	background: #E1E9FC;
}

.soft-sub-box.taikenban_kyu {
	background: #E5F9CA;
}

.soft-sub-box.taikenban_zei {
	background: #F0D6EF;
}


/*---------------------------------

	パートナー様一覧

---------------------------------*/
/* table */
#partner-area table.horizontal-table tr td a {
	font-weight: normal;
}

/* card */
.col-3 {
	width: 100%;
	display: flex;
	display: -ms-flexbox;
	/* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	/* IE10 */
	justify-content: space-between;
	padding: 0;
}

.col-3 .card {
	border: 1px solid #ced4da;
	border-radius: 3px;
	box-sizing: border-box;
	display: flex;
	display: -ms-flexbox;
	/* IE10 */
	flex-direction: column;
	list-style: none;
	margin-bottom: 1rem;
	padding: 1rem;
}

.col-3 .card:nth-of-type(odd) {
	border-top: 4px solid #6c757d;
}

.col-3 .card:nth-of-type(even) {
	border-top: 4px solid #c4b8b0;
}

.col-3 .card .card-content {
	margin-bottom: 1rem;
}

.col-3 .card p.card-title {
	font-weight: bold;
	margin: 0;
	color: #333;
}

.col-3 .card .card-text {
	color: #6c757d;
	font-size: 14px;
	margin: 15px 0 0;
}

.col-3 .card .card-text>ul {
	font-size: 14px;
}

.col-3 .card .card-text .icon {
	display: block;
	padding: 10px;
}

.col-3 .card-link {
	border-top: 1px solid #ced4da;
	margin-top: auto;
}

.col-3 .card-link .btn {
	text-align: center;
	margin-top: 1rem;
}

.col-3 .card-link ul {
	margin-top: 1rem;
}

/* 一覧表示BOX */
/* 線 */
.summary-box.partner_kur {
	border-color: #CBE6F3;
}

.summary-box.partner_zai {
	border-color: #FED3D8;
}

.summary-box.partner_kyu {
	border-color: #E5F9CA;
}

.summary-box.partner_han {
	border-color: #E1E9FC;
}

.summary-box.partner_zei {
	border-color: #F0D6EF;
}

.summary-box.partner_hub {
	border-color: #B6BCFF;
}

/* 背景 */
.summary-box.partner_kur .box-title {
	background: #CBE6F3;
	color: #000;
}

.summary-box.partner_zai .box-title {
	background: #FED3D8;
	color: #000;
}

.summary-box.partner_kyu .box-title {
	background: #E5F9CA;
	color: #000;
}

.summary-box.partner_han .box-title {
	background: #E1E9FC;
	color: #000;
}

.summary-box.partner_zei .box-title {
	background: #F0D6EF;
	color: #000;
}

.summary-box.partner_hub .box-title {
	background: #B6BCFF;
	color: #000;
}


/*---------------------------------

	OS確認情報

---------------------------------*/
/* テーブル */
.os-table {
	border-collapse: collapse;
	border-top: 1px dotted #ced4da;
	font-size: 14px;
	margin-top: 5px;
}

.os-table th,
.os-table td {
	vertical-align: middle;
	line-height: 1.5;
	padding: .5em 1em;
	border-bottom: 1px dotted #ced4da;
}

.os-table th {
	background: #e8f2fb;
}

/* クリアフィックス */
.clearfix:before,
.clearfix:after {
	content: "";
	display: table;
}

.clearfix:after {
	clear: both;
}

/* divテーブル */
.os-half {
	font-size: 14px;
	float: left;
	margin: 5px 0 15px 0;
	width: calc((100% - 1em) / 2);
}

.os-half:nth-child(odd) {
	margin-right: 1em;
}

.os-div-table>.row {
	border-top: 1px dotted #ced4da;
	display: table;
	width: 100%;
}

.os-div-table>.row div {
	display: table-cell;
	margin: 15px;
	padding: .5em 1em;
	vertical-align: middle;
}

.os-div-table>.heading {
	font-weight: bold;
	background-color: #e8f2fb;
}

.os-div-table-item {
	width: calc(100% - 60px);
}

.os-div-table-confirm {
	width: 60px;
}

/* list */
#support-os.asterisk>li:not([id])::before {
	content: "　";
}


/*---------------------------------

	Web-API

---------------------------------*/
/* card 画像 */
.card .card-image {
	margin: 0 auto;
}

.card .card-image img {
	width: 100%;
}

/* 個別カラー */
.col-3 .card.pro_kai {
	border-top: 4px solid #e6001a;
}

.col-3 .card.pro_sho {
	border-top: 4px solid #3586b3;
}

.col-3 .card.pro_kyu {
	border-top: 4px solid #7cba27;
}

.col-3 .card.pro_jin {
	border-top: 4px solid #efc20d;
}

.col-3 .card.pro_kot {
	border-top: 4px solid #9c4999;
}

.col-3 .card.pro_kou {
	border-top: 4px solid #05999b;
}

/*
	Web-APIだけで使用可能
---------------------------------*/
/* 全体 */
#webapi-area * {
	font-family: 'noto-sans-jp', sans-serif;
	font-size: 12px;
}

#webapi-area .contentsArea {
	margin: 10px 10px 50px 10px;
}

/* タイトル */
#webapi-area h2 {
	font-weight: normal;
	font-size: 24px;
	margin: 1.5em 0;
}

#webapi-area h2#pageTitle {
	color: #18358e;
	padding-top: 10px;
	margin: 0 0 20px;
}

#webapi-area h3 {
	border-bottom: 1px dotted;
	font-size: 24px;
	font-weight: normal;
	margin: 1.5em 0;
}

#webapi-area h4 {
	font-size: 18px;
	padding: 8px 0 8px 5px;
	border-left: 3px solid #a9acbe;
}

#webapi-area h5 {
	font-size: 15.6px;
	font-weight: normal;
	padding: 0;
	margin: 1.5em 0;
}

#webapi-area h6 {
	display: block;
	font-size: 13.2px;
	font-weight: normal;
	padding: 0;
	margin: 1.5em 0;
}

#webapi-area h5:before,
#webapi-area h6:before,
#webapi-area h6:after {
	content: none;
}

/* list */
#webapi-area .contentsArea ul li,
#webapi-area .contentsArea ol li {
	line-height: 1.7;
	margin-bottom: 1.2em;
}

#webapi-area .contentsArea ul li {
	list-style-type: square;
}

#webapi-area .ialist {
	font-size: 10.2px;
	padding: 0;
	margin: 20px;
}

#webapi-area .ialist li {
	display: inline-block;
	border: none;
	list-style-type: none;
	line-height: 1.4;
	padding: 0 10px 0 18px;
	margin-bottom: 0.5em;
	background: url(../img/webapi/icon_arrow_d.gif) no-repeat left 1px;
}

#webapi-area .ialist li a {
	font-size: 12.24px;
	padding-right: 5px;
	padding-left: 3px;
}

#webapi-area ul#topicPath {
	margin: 5px 0;
	padding: 3px 0;
}

#webapi-area ul#topicPath li {
	display: inline-block;
	list-style-type: none;
	margin: 0px;
	padding: 0px;
}

#webapi-area ul#main-ul {
	margin: 0;
}

#webapi-area ul#main-ul>li {
	list-style-type: none;
	float: left;
}

/* サイドバー */
#webapi-area .container-left #sidebar ul {
	padding: 0;
}

#webapi-area .container-left #sidebar ul li {
	list-style: none;
}

/* link */
#webapi-area a {
	color: #039;
	text-decoration: underline;
	overflow: hidden;
	outline: none;
}

/* text */
#webapi-area p {
	line-height: 1.5;
	margin: 0.5em 0 1em 0;
	text-align: justify;
	word-break: break-all;
}

#webapi-area p.caption {
	font-size: 18px;
}

#webapi-area .anno {
	font-size: 11px;
	color: #405ba2;
}

#webapi-area pre {
	color: #007000;
	line-height: 18px;
	word-break: keep-all;
}

#webapi-area code {
	font-weight: bold;
}

#webapi-area pre code span {
	color: #000;
}

#webapi-area blockquote {
	padding: 0;
	margin: 0;
}

/* table */
#webapi-area .comparison table tr {
	border: 1px solid #999;
	font-size: 12px;
}

#webapi-area .comparison table th {
	border-right: 1px solid #999;
	font-weight: normal;
	text-align: center;
	padding: 6px;
}

#webapi-area .comparison table td {
	border-right: 1px solid #999;
	padding: 6px;
}

#webapi-area .comparison table thead tr,
#webapi-area .comparison table tbody .comparison-thead th {
	background-color: #d8d8dd;
}

#webapi-area .comparison table tbody tr:nth-child(even) {
	background-color: #eee
}

#webapi-area .comparison table tbody code {
	font-weight: normal;
}

#webapi-area .comparison table th.no {
	min-width: 2em;
}

#webapi-area .comparison table th.create,
#webapi-area .comparison table th.modify,
#webapi-area .comparison table th.erase,
#webapi-area .comparison table th.required {
	min-width: 2.5em;
}

#webapi-area .comparison table th.changecode,
#webapi-area .comparison table th.lock {
	min-width: 3.5em;
}

#webapi-area .comparison table th.type,
#webapi-area .comparison table th.codetype {
	min-width: 9em;
}

#webapi-area .comparison table th.ele {
	min-width: 5em;
}

#webapi-area .comparison table th.value,
#webapi-area .comparison table th.remarks {
	min-width: 12em;
}

/* 注意事項 */
#webapi-area aside.column {
	background: #f7f7f7;
	margin: 1.5em;
	padding: 1em;
	border-radius: 0.4em;
}

/*
	レスポンシブ対応
---------------------------------*/
/* pre */
.pre-keep {
	background-color: #eee;
	border: solid 1px #999;
	overflow-x: scroll;
	margin: 1em 0;
	padding: 1em;
}

/* table */
.comparison {
	overflow-x: scroll;
	margin-bottom: 20px;
}

.comparison table {
	word-break: keep-all;
	margin-bottom: 0;
}


/*---------------------------------

	士業コンソーシアム

---------------------------------*/
/* card 画像追加 */
.col-5 .card .card-thumbs,
.col-4 .card .card-thumbs {
	margin-bottom: 1rem;
}

.col-5 .card .card-thumbs img,
.col-4 .card .card-thumbs img {
	width: 100%;
}

/* バナー 2列 */
.bannar-list {
	display: flex;
	flex-wrap: wrap;
	list-style-type: none;
	width: 100%;
}

.bannar-list li {
	width: calc(50% - 40px);
}

.bannar-list li img {
	width: 100%;
}

.col-2.bannar-list li:nth-child(2n) {
	margin: 0 20px 20px;
}

.col-2.bannar-list li:nth-child(2n+1) {
	margin: 0 0 20px 20px;
}

/* トピックス アイコン */
.acmember-category {
	border-width: 1px;
	border-style: solid;
	font-size: 12px;
	font-weight: bold;
	line-height: 200%;
	margin-right: 10px;
	padding: 0px 1em;
}

/* セクション */
.acmember-section {
	margin-bottom: 20px;
}

/* table */
table.horizontal-table.nohead tr:first-child {
	border-top: 2px solid #00529f;
}

table.horizontal-table.acmember-movie tr td:first-child {
	width: 300px;
}

table.horizontal-table.row-wide tr td {
	padding-top: 20px;
	padding-bottom: 20px;
}

/* タイトル */
#acmember-area .article-title {
	position: relative;
	text-align: center;
}

#acmember-area .article-title h5 {
	font-size: 28px;
	padding-bottom: 50px;
	padding-left: 0;
	margin-bottom: 49px;
}

#acmember-area .article-title h5:before {
	content: none;
}

#acmember-area .article-title::before {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	background: #00529f;
	width: 40px;
	height: 3px;
	margin-left: -20px;
}

/* タイトル下の線 */
h5.kai::before {
	color: #e6001a;
}

h5.kyu::before {
	color: #8ec31f;
}

h5.ken::before {
	color: #b8174b;
}

/* サブタイトル */
.title-mid {
	background: #e8f2fb;
	border-bottom: 1px solid #74a2cd;
	display: block;
	margin-top: 34.5px;
	margin-bottom: 12px;
	padding: 15px 15px 12px;
	font-size: 16px;
	font-weight: normal;
}

.title-mid:before {
	content: none;
}

.title-mid:after {
	content: none;
}

/* 動画 */
.youtube {
	text-align: center;
	margin-top: 52px;
	margin-bottom: 22px;
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}


/*---------------------------------

	PSS会員NEWS

---------------------------------*/
/* img-link */
.img-link {
	position: relative;
	padding-left: 18px;
}

.img-link::before {
	font-family: "Font Awesome 5 Free";
	content: "\f03e";
	position: absolute;
	left: 0;
	top: 3px;
}

/* ボタン */
.pss-btn-list {
	display: flex;
	align-items: center;
	justify-content: space-between;
}


/*---------------------------------

	PCAソフトダウンロードサービス

---------------------------------*/
/* テーブル */
table.softdl-table {
	width: 100%;
	border-collapse: collapse;
	border-top: 1px dotted #ced4da;
	font-size: 14px;
	margin-top: 5px;
}

table.softdl-table th,
table.softdl-table td {
	text-align: left;
	vertical-align: middle;
	line-height: 1.5;
	padding: .5em 1em;
	border-bottom: 1px dotted #ced4da;
}

table.softdl-table thead th {
	background: #e8f2fb;
}

.softdl-ovrflw-hidden {
	white-space: nowrap;
	overflow: hidden;
}

/*---------------------------------

	価格シミュレーション

---------------------------------*/
/* シミュ結果PDF btn index画面 */
.sim-result-pdf {
	margin: 6px 0;
}

.btn-sim-result-pdf,
.btn-sim-result-pdf[disabled],
.btn-sim-result-pdf[disabled]:hover {
	background-color: rgba(60, 90, 158, 0.2);
	border: 1px solid rgba(0, 0, 0, 0);
	color: #204495;
	position: relative;
	font-weight: bold;
}

.btn-sim-result-pdf:hover {
	background-color: rgba(0, 0, 0, 0);
	border: 1px solid rgba(60, 90, 158, 0.5);
	color: #204495;
	cursor: pointer;
	text-decoration: none;
}

.btn-sim-result-pdf[disabled],
.btn-sim-result-pdf[disabled]:hover {
	cursor: no-drop;
	opacity: 0.2;
}

/* シミュ結果PDF btn 完了画面 */
a.btn-sim-pdf {
	color: #fff;
	background-color: #e27d4e;
	font-size: 18px;
	font-weight: bold;
	position: relative;
	padding: 8px 14px 8px 10px;
}

a.btn-sim-pdf:hover {
	color: #fff;
	background: #f56500;
	text-decoration: none;
}

a.btn-sim-pdf i {
	margin-right: 6px;
}

/* 価格表(2分割) */
.price-sim .fixed-halve {
	width: 100%;
	margin-bottom: 20px;
}

.price-sim .fixed-halve>div {
	padding: 15px;
}

.fixed-halve>.child-1 {
	background-color: #C1D8ED;
}

.fixed-halve>.child-2 {
	background: #e8f2fb;
	vertical-align: middle;
}

.fixed-halve .form-cat:last-child {
	margin-bottom: 0;
}

/*
	ソフト一覧
---------------------------------*/
/* 横並び */
ul.image-list {
	padding: 0;
	margin: 0;
	display: flex;
	flex-wrap: wrap;
}

ul.image-list li {
	vertical-align: top;
	list-style: none;
	margin-top: 10px;
}

ul.image-list li .image-box {
	width: 100px;
	position: relative;
}

/* ソフト画像 */
.image-box img.thumbnail {
	border: 1px solid #fff;
	box-sizing: border-box;
	cursor: pointer;
	width: 100px;
	height: auto;
}

.cloudsim_kai .image-box img.thumbnail:hover {
	border-color: #e71e2b;
}

.cloudsim_hiei .image-box img.thumbnail:hover {
	border-color: #00b2b1;
}

.cloudsim_han .image-box img.thumbnail:hover {
	border-color: #4784b6;
}

.cloudsim_kyu .image-box img.thumbnail:hover {
	border-color: #8ec31f;
}

.cloudsim_zei .image-box img.thumbnail:hover {
	border-color: #9c4998;
}

.image-box img.thumbnail.disabled {
	cursor: no-drop;
	opacity: 0.5;
}

.image-box .image-checkbox {
	position: absolute;
	top: 4px;
	right: 4px;
	display: none;
	cursor: pointer;
}

.image-box img.thumbnail.checked+.image-checkbox {
	display: block;
}

.cloudsim_kai .image-box img.thumbnail.checked {
	background-color: #FFE9EB;
	border: 4px solid #e71e2b;
}

.cloudsim_hiei .image-box img.thumbnail.checked {
	background-color: #DCFCFC;
	border: 4px solid #00b2b1;
}

.cloudsim_han .image-box img.thumbnail.checked {
	background-color: #F3FAFE;
	border: 4px solid #4784b6;
}

.cloudsim_kyu .image-box img.thumbnail.checked {
	background-color: #F6FDE5;
	border: 4px solid #8ec31f;
}

.cloudsim_zei .image-box img.thumbnail.checked {
	background-color: #FDF7FD;
	border: 4px solid #9c4998;
}

/* ソフト名 */
ul.image-list .soft-name {
	font-size: 14px;
	margin: 0;
}

/* radioボタン(小) */
.small-radio>label {
	font-size: 14px;
	margin: 0;
	padding-left: 16px;
	width: 100%;
}

.small-radio input[type="radio"]+span::before {
	top: 4px;
	left: 4px;
	width: 10px;
	height: 10px;
}

.small-radio input[type="radio"]:checked+span::after {
	top: 7px;
	left: 7px;
	width: 6px;
	height: 6px;
}

/* プリペイドプラン 割引 */
.discount-cat .total-price-list {
	padding: 10px 0;
}

/* 小計 */
.subtotal-cat {
	margin: 5px 0;
}

/* ソフトライセンス価格 */
.soft-license-cat {
	margin-top: 10px;
}

/* 合計価格 */
.total-price-list {
	align-items: center;
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid #fff;
	word-break: keep-all;
}

.total-price-list {
	margin-top: 10px;
}

.cloudsim-soft-box .total-price-list:first-child,
.price-cat .total-price-list,
.soft-license-cat .result_zaikai .total-price-list:first-child {
	margin-top: 0;
}

/* 背景 */
.cloudsim_kai {
	background: #fff;
}

.cloudsim_kai+.cloudsim_kai {
	background: #FED3D8;
}

.cloudsim_han {
	background: #fff;
}

.cloudsim_han+.cloudsim_han {
	background: #E1E9FC;
}

.cloudsim_hiei {
	background: #fff;
}

.cloudsim_hiei+.cloudsim_hiei {
	background: #CCF5E9;
}

.cloudsim_kyu {
	background: #fff;
}

.cloudsim_kyu+.cloudsim_kyu {
	background: #E5F9CA;
}

.cloudsim_zei {
	background: #fff;
}

.cloudsim_zei+.cloudsim_zei {
	background: #F0D6EF;
}

/* コストエリア固定 */
.cost-header {
	background-color: #fff;
}

.cost-header .sub-box,
.cost-header .sub-box-2 {
	position: relative;
}

.cost-header .sub-box {
	background-color: #FEF7DB;
	border: 2px solid #F6CA06;
	margin-bottom: 34px;
}

.cost-header .sub-box-2 {
	background-color: #FEEADB;
	border: 2px solid #F67306;
	margin-bottom: 34px;
}

.cost-header .sub-box .box-title,
.cost-header .sub-box-2 .box-title {
	display: inline-block;
	font-weight: bold;
	line-height: 1;
	padding: 6px 8px;
	position: absolute;
	top: -2px;
	left: -2px;
	font-size: 14px;
}

.cost-header .sub-box .box-title {
	background-color: #FEF7DB;
	border: 2px solid #F6CA06;
}

.cost-header .sub-box-2 .box-title {
	background-color: #FEEADB;
	border: 2px solid #F67306;
}

.cost-header .sub-box .total-price-list {
	border-color: #F6CA06;
}

.cost-header .sub-box-2 .total-price-list {
	border-color: #F67306;
}

[class^="cost-header"]:nth-of-type(1).fixed {
	position: sticky;
	width: 100%;
	top: 0;
	z-index: 1000;
}

[class^="cost-header"]:nth-of-type(2).fixed {
	position: sticky;
	width: 100%;
	top: 120px;
	z-index: 1000;
}

/* コストエリア もっと見る */
.cost-header .sub-box .more-btn,
.cost-header .sub-box-2 .more-btn-2 {
	border-radius: 4px;
	bottom: -15px;
	left: -10px;
	position: absolute;
	text-align: center;
	margin: 0;
	padding: 2px 6px;
}

.cost-header .sub-box .more-btn {
	background-color: #FEF7DB;
	border: 2px solid #F6CA06;
	color: #F6CA06;
}

.cost-header .sub-box-2 .more-btn-2 {
	background-color: #FEEADB;
	border: 2px solid #F67306;
	color: #F67306;
}

.cost-header .sub-box .more-btn:hover,
.cost-header .sub-box-2 .more-btn-2:hover {
	cursor: pointer;
}

.cost-header .sub-box .more-btn>i,
.cost-header .sub-box-2 .more-btn-2>i {
	vertical-align: middle;
}

/* バナー */
.banner-img a:hover {
	opacity: 0.8;
}

.banner-img img {
	width: 100%;
}

/* ユーザー数 */
.server-usage>input {
	margin: 0;
}

.server-usage>div {
	font-size: 14px;
	color: #444;
}

/* input[type=number] + text */
.number-group {
	display: table;
	width: 100%;
}

.number-group>input {
	display: table-cell;
	margin: 0;
	width: 180px !important;
	;
}

.number-group>div {
	font-size: 14px;
	color: #444;
	display: table-cell;
	vertical-align: middle;
	width: 75.2%;
	padding-left: 10px;
}

/*
	画像ボタン
---------------------------------*/
/* マージン */
.moushikomi-link {
	margin: 0 auto;
}


/*---------------------------------

	認定試験お申込み

---------------------------------*/
/* 受付終了 アイコン */
.recep-close {
	border: 1px solid #dc3545;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	padding: 0 30px;
	position: relative;
	margin: 0;
	width: 80px;
}

.recep-close::before {
	content: "受付終了";
	color: #dc3545;
	position: absolute;
	left: 0;
	top: 0;
	width: 80px;
}

/* サブBOX */
.exam-soft-box {
	padding: 15px;
}

.exam-soft-box:first-child {
	background: #e8f2fb;
}

.exam-soft-box:last-child {
	background: #C1D8ED;
	margin-bottom: 20px;
}

/*---------------------------------

	リコーOSO

---------------------------------*/
/* ボタン */
.btn-oso {
	border: none;
	color: #fff;
	font-size: 13px;
	outline: none;
	padding: 6px 12px;
	text-align: center;
	text-decoration: none;
}

.btn-oso-0 {
	background: #F59100;
}

.btn-oso-1 {
	background: #00A46A;
}

.btn-oso:hover {
	color: #fff;
	text-decoration: none;
	cursor: pointer;
	opacity: 0.8;
}

/* サブBOX */
.oso-sub-box {
	margin-bottom: 20px;
	padding: 15px;
}

.oso-sub-box>.form-cat:last-child {
	margin-bottom: 0;
}

/* 確認画面 */
.oso-confirm-area {
	padding: 20px;
	margin-bottom: 40px;
}

.confirm-oso-0,
.sub-oso-0 {
	background-color: #FFF3E3;
}

.confirm-oso-1,
.sub-oso-1 {
	background-color: #D8F3E7;
}

.confirm-oso-2 {
	background-color: #D8E7F1;
}

.confirm-oso-3 {
	background-color: #F9DDEA;
}

.oso-confirm-area>.form-cat:last-child {
	margin-bottom: 0;
}

/* 項目名 */
.oso-confirm-area>.form-cat>label {
	font-weight: 900;
	padding-left: 5px;
}

.confirm-oso-0 .form-cat>label {
	border-left: 3px solid #F59100;
}

.confirm-oso-1 .form-cat>label {
	border-left: 3px solid #00A46A;
}

.confirm-oso-2 .form-cat>label {
	border-left: 3px solid #1044A3;
}

.confirm-oso-3 .form-cat>label {
	border-left: 3px solid #D20055;
}

/* 内容 */
.oso-confirm-area>.form-cat>p {
	margin: 0;
	margin-left: 8px;
}

/* 検索ボックス */
.search-oso-0 {
	border: 2px solid #F59100;
}

.search-oso-1 {
	border: 2px solid #00A46A;
}

.search-oso-0 .box-title {
	color: #F59100;
}

.search-oso-1 .box-title {
	color: #00A46A;
}

/* table */
.product-selection {
	overflow-x: scroll;
}

.product-selection table {
	word-break: keep-all;
}

.selection-table {
	border-collapse: collapse;
	border-top: 1px solid #ced4da;
	font-size: 14px;
	margin-top: 5px;
	width: 100%;
}

.selection-table th,
.selection-table td {
	border: 1px dotted #ced4da;
	text-align: left;
	vertical-align: middle;
	line-height: 1.5;
	padding: .5em 1em;
}

.table-oso-0 th {
	background: #FFF3E3;
}

.table-oso-1 th {
	background: #D8F3E7;
}

.table-oso-1 td.price {
	text-align: right;
}


/* 横並び(3段) */
.oso-confirm-area {
	padding: 20px;
	margin-bottom: 20px;
}

.oso-confirm-area+.form-btn {
	margin-top: 40px;
}

/* 項目名 */
.oso-confirm-area .form-cat>label {
	font-weight: 900;
	padding-left: 5px;
}

/* 内容 */
.oso-confirm-area .form-cat>p {
	display: inline-block;
	margin: 0;
	margin-left: 8px;
}


/*---------------------------------

	資料請求

---------------------------------*/
/* table */
table[class*="catalog_cate"] th {
	width: auto;
}

table[class*="catalog_cate"] th:last-child {
	width: 86px;
}

table[class*="catalog_cate"] th small {
	font-weight: normal;
	margin-left: 10px;
}

.normal.catalog_cate_1 th {
	background: MistyRose;
}

.normal.catalog_cate_2 th {
	background: Thistle;
}

.normal.catalog_cate_3 th {
	background: Khaki;
}

.normal.catalog_cate_4 th {
	background: Ivory;
}

.normal.catalog_cate_5 th {
	background: Moccasin;
}

.normal.catalog_cate_6 th {
	background: Honeydew;
}

.normal.catalog_cate_7 th {
	background: AntiqueWhite;
}

.normal.catalog_cate_8 th {
	background: LightGoldenrodYellow;
}


/*---------------------------------

	サプライオーダー

---------------------------------*/
/* tab */
.tab-wrap {
	display: flex;
	flex-wrap: wrap;
	margin: 20px 0 40px;
}

.tab-wrap:after {
	content: '';
	width: 100%;
	height: 3px;
	background: #325A8C;
	display: block;
	order: -1;
}

.tab-label {
	color: White;
	background: LightGray;
	font-weight: bold;
	white-space: nowrap;
	text-align: center;
	padding: 10px .5em;
	order: -1;
	position: relative;
	z-index: 1;
	cursor: pointer;
	border-radius: 5px 5px 0 0;
	flex: 1;
}

.tab-label:not(:last-of-type) {
	margin-right: 5px;
}

.tab-content {
	width: 100%;
	height: 0;
	overflow: hidden;
	opacity: 0;
}

.tab-content .search-box {
	margin-bottom: 0;
}

.tab-switch:checked+.tab-label {
	background: #325A8C;
}

.tab-switch:checked+.tab-label+.tab-content {
	height: auto;
	overflow: auto;
	padding: 15px;
	opacity: 1;
	transition: .5s opacity;
	box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
}

.tab-switch {
	display: none;
}

/* テーブル */
table.supply-table {
	width: 100%;
	border-collapse: collapse;
	border-top: 1px dotted #ced4da;
	font-size: 14px;
	margin-top: 5px;
}

table.supply-table th,
table.supply-table td {
	text-align: left;
	vertical-align: middle;
	line-height: 1.5;
	padding: .5em 1em;
	border-bottom: 1px dotted #ced4da;
}

table.supply-table thead th {
	background: #e8f2fb;
}

table.supply-table .total>th {
	background: #e8f2fb;
}


/*---------------------------------

	PSSWeb申込

---------------------------------*/
/* テーブル */
table.pssregist-table {
	width: 100%;
	border-collapse: collapse;
	border-top: 1px dotted #ced4da;
	font-size: 14px;
	margin-top: 5px;
}

table.pssregist-table th,
table.pssregist-table td {
	text-align: left;
	vertical-align: unset;
	line-height: 1.5;
	padding: .5em 1em;
	border-bottom: 1px dotted #ced4da;
}

table.pssregist-table th {
	background: #e8f2fb;
}


/*---------------------------------

	PCA Hub 体験版

---------------------------------*/
/* ボタン 大 */
.btn-lg-wrap {
	margin-top: 30px;
	margin-bottom: 50px;
	text-align: center;
}

.btn-pcahub-lg {
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	position: relative;
	display: inline-block;
	padding: 1rem 4rem;
	transition: all 0.3s;
	text-align: left;
	vertical-align: middle;
	text-decoration: none;
	letter-spacing: 0.1em;
	color: #212529;
	border-radius: 0.5rem;
	padding: 4px 30px 8px 30px;
}

/* オプション */
a.btn-pcahub {
	font-size: 1rem;
	padding: 1.5rem 5rem 1.5rem 2rem;
	color: #fff;
	background: #3275bc;
}

a.btn-pcahub span {
	font-size: 1.4rem;
	display: inline-block;
	margin-bottom: 0.5em;
	padding: 0.2rem 0.5rem;
	color: #3275bc;
	border-radius: 4px;
	background: #fff;
}

a.btn-pcahub::before {
	font-family: "Font Awesome 5 Free";
	font-size: 1.8rem;
	line-height: 1;
	position: absolute;
	top: calc(50% - 0.7rem);
	right: 1.5rem;
	margin: 0;
	padding: 0;
	content: "\f101";
	transition: all 0.3s;
}

a.btn-pcahub:hover {
	transform: translate(0, 3px);
	color: #fff;
	background: #3275bc;
	box-shadow: 0 2px 0 #0F5EB1;
	text-decoration: none;
}

a.btn-pcahub:hover::before {
	right: 2rem;
}

p.sub-discription {
	opacity: 0.6;
}

/*---------------------------------

	PCA Hub 体験版 への誘導

---------------------------------*/
/* オプション */
.btn-pcahub-go {
	font-size: 1rem;
	padding: 1.5rem 5rem 1.5rem 2rem;
	color: #fff;
	background: #3275bc;
	border-width: 0px;
}

.btn-pcahub-go::before {
	font-family: "Font Awesome 5 Free";
	font-size: 1.8rem;
	line-height: 1;
	position: absolute;
	top: calc(50% - 0.7rem);
	right: 1.5rem;
	margin: 0;
	padding: 0;
	content: "\f101";
	transition: all 0.3s;
}

.btn-pcahub-go:hover {
	transform: translate(0, 3px);
	color: #fff;
	background: #3275bc;
	box-shadow: 0 2px 0 #0F5EB1;
	text-decoration: none;
	cursor: pointer;
}

.btn-pcahub-go:hover::before {
	right: 2rem;
}

/*
	プログレスバー
---------------------------------*/
ul.progressbar-list {
	position: relative;
	display: flex;
	max-width: 600px;
	margin: auto;
}

ul.progressbar-list li {
	position: relative;
	list-style-type: none;
	text-align: center;
	color: #999999;
	font-weight: bold;
	counter-increment: steps;
}

ul.progressbar-list li:before {
	display: block;
	width: 28px;
	height: 28px;
	margin: 10px auto 15px auto;
	content: counter(steps);
	line-height: 30px;
	font-size: 14px;
	text-align: center;
	border-radius: 50%;
	background-color: #FFF;
}

ul.progressbar-list li:after {
	position: absolute;
	top: 22px;
	left: -50%;
	width: calc(100% - 20px);
	height: 2px;
	content: '';
	margin-left: 14px;
	background-color: #FFF;
}

ul.progressbar-list li:first-child:after {
	content: none;
}

ul.progressbar-list li.current,
ul.progressbar-list li.complete {
	color: #00529f;
}

ul.progressbar-list li.current:before,
ul.progressbar-list li.complete:before {
	background-color: #00529f;
	color: #FFF;
}

ul.progressbar-list li.current:after,
ul.progressbar-list li.complete:after {
	background-color: #00529f;
}

/* 4ステップ */
.progressbar-4 li {
	width: 25%;
}

/* 画像　横幅に合わせて自動縮小するが、拡大はしない */
img.max-width-img {
	max-width: 100%;
	height: auto;
}

.hs-cta-img {
	max-width: 100%;
	height: auto;
}

/*---------------------------------

	PCAサブスク / PCAソフト 体験版申込

---------------------------------*/
.notes_list {
	margin: 10px 0;
}

.notes_list i {
	color: #efc20d;
	font-size: 20px;
}

/*---------------------------------

	PCAクラウド・PCA Hub 価格シミュレーション

---------------------------------*/
.cloud-hub-sim {
	background: #F9F7F1;
}

.cloud-hub-sim .main-area {
	max-width: 1200px;
}

.cloud-hub-sim .cost-section {
	background: #fff;
	padding: 1em;
	margin-bottom: 2em;
	border-radius: 1em;
}

.cloud-hub-sim div[id^="step-"] {
	margin:  0 0 60px;
}

/* タイトル */
.cloud-hub-sim .step-ttl {
	border-bottom: 1px solid #00529F;
	color: #00529F;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 1em;
}

.cloud-hub-sim .step-ttl span {
	font-size: 24px;
	margin-right: 6px;
}

/* もっと詳しく */
.more-balloon {
	text-decoration: none;
}

.more-balloon div {
	font-size: 12px;
	position: relative;
	margin: 0 0 1em 2.5em;
	padding: 6px 12px;
	border: 1px solid #00529F;
	border-radius: 30px;
}

.more-balloon div::before {
	content: "";
	position: absolute;
	left: -26px;
	width: 6px;
	height: 6px;
	bottom: 0;
	border: 1px solid #00529F;
	border-radius: 50%;
}

.more-balloon div::after {
	content: "";
	position: absolute;
	left: -16px;
	width: 10px;
	height: 10px;
	bottom: 2px;
	border: 1px solid #00529F;
	border-radius: 50%;
}

.more-balloon:hover div {
	background: #00529F;
	color: #fff;
}

.more-balloon:hover div::before,
.more-balloon:hover div::after {
	background: #00529F;
}

/* ?マーク */
.question-mark {
	display: block;
	margin-left: 0.6em;
	transition-duration: .2s;
}

.question-mark:hover {
	transform: scale(1.3);
}

/* モーダル */
.modal-area {
	display: none;
	position: fixed;
	z-index: 1100;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	color: #000;
	text-align: left;
	font-size: medium;
	font-weight: normal;
}

.modal-bg {
	width: 100%;
	height: 100%;
	background-color: rgba(30, 30, 30, 0.9);
}

.modal-wrapper {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 70%;
	max-width: 740px;
	padding: 10px 30px;
	background-color: #fff;
	border: 1px solid #000;
}

.modal-contents .txt {
	color: #333;
	margin: 0;
}

.modal-contents .column-two {
	display: flex;
	justify-content: space-between;
}

.modal-contents .column-two .img {
	margin-right: 6px;
}

.modal-footer {
	display: flex;
	justify-content: flex-end;
	margin-top: 1em;
}

.close-modal {
	display: block;
	cursor: pointer;
	max-width: 120px;
}

/* step内容 */
.cloud-hub-sim .step-section {
	margin-bottom: 1em;
}

.cloud-hub-sim .form-column {
	display: flex;
	align-items: center;
	margin-bottom: 1rem;
	position: relative;
}

.cloud-hub-sim .form-column.disabled:hover {
	cursor: not-allowed;
}

.cloud-hub-sim .form-column.disabled::before {
	position: absolute;
	content: '';
	background: rgba(217, 217, 217, 0.8);
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
}

.cloud-hub-sim #step-2-area .step-section {
	display: flex;
	align-items: flex-start;
	margin-bottom: 1rem;
}

.cloud-hub-sim #step-2-area .step-section .soft-list {
	width: calc(100% / 2);
}

.cloud-hub-sim .form-ttl {
	width: 320px;
	display: flex;
	justify-content: center;
	border-right: 8px solid #999;
	margin-right: 20px;
}

.cloud-hub-sim .form-content {
	width: calc(100% - 320px);
	padding: 0.4em;
}

.cloud-hub-sim #step-4-area .form-box .form-content {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

/* box */
.form-box {
	border: 1px solid #00529F;
	padding: 1em;
	margin-bottom: 1em;
}

.form-box .box-content {
	box-sizing: border-box;
	background: #eee;
	padding: 0.4em;
	margin-bottom: 0.4em;
	width: calc((100% - 2em) / 3);
	display: flex;
	align-items: center;
}

.form-box .box-content:not(:nth-child(3n)) {
	margin-right: 1em;
}

/* inputの横並び */
.cloud-hub-sim .input-group-addon {
	font-size: 12px;
	margin-left: 1em;
}

.cloud-hub-sim .input-group-addon+.input-inline {
	margin-left: 1em;
}

.cloud-hub-sim .input-inline select {
	width: auto;
}

.cloud-hub-sim .input-inline input {
	max-width: 74px;
}

.cloud-hub-sim .input-inline div+input {
	margin-left: 1em;
}

.cloud-hub-sim .radio-inline {
	display: flex;
	flex-wrap: wrap;
}

.cloud-hub-sim .radio-inline .radio-input-inline {
	padding: 0;
}

/* input系_個別設定 */
.cloud-hub-sim .server-usage {
	display: flex;
    align-items: center;
	justify-content: center;
	margin: 0 auto;
	width: 300px;
	max-width: 100%;
}

.cloud-hub-sim .server-usage>div {
	width: 40px !important;
	padding-left: 10px;
}

.cloud-hub-sim .cloud-type-2 {
	display: flex;
    align-items: center;
	margin-right: 20px;
}

.cloud-hub-sim .cloud-type-2 label+div {
	display: flex;
    align-items: center;
	margin-left: 10px;
}

.cloud-hub-sim #base_capacity {
	height: 28px;
	width: 60px;
}

/* ttl */
.box-ttl,
.form-ttl {
	font-size: 18px;
}

.form-sub-ttl {
	font-size: 14px;
	display: flex;
	align-items: center;
	margin-right: 14px;
}

/* ソフト一覧 */
.cloud-hub-sim ul.image-list .soft-name {
	font-size: 8px;
	text-align: center;
}

/* 必要ふきだし */
.soft-need-balloon {
	position: relative;
	display: inline-block;
	padding: 4px 0;
	width: 80%;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	background: #eee;
	border-radius: 4px;
	height: 100%;
}

.soft-need-balloon::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 100%;
	margin-top: -10px;
	border: 10px solid transparent;
	border-left: 16px solid #eee;
}

.soft-need-balloon .need-soft img {
	max-width: 70px;
}

.soft-need-balloon .two-need-soft img {
	max-width: 80px;
}

/* ソフト_チェック */
.cloud-hub-sim .image-list li {
	box-sizing: border-box;
	border: 2px solid #fff;
	position: relative;
	padding: 6px 2px;
}

.cloud-hub-sim .image-list li.checked {
	border: 2px solid #0190E0;
	background: rgba(1, 144, 224, 0.2);
}

.cloud-hub-sim .image-list li.disabled:hover {
	cursor: not-allowed;
}

.cloud-hub-sim .image-list li.disabled::before {
	position: absolute;
	content: '';
	background: rgba(255, 255, 255, 0.7);
	padding: 6px 2px;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
}

.cloud-hub-sim ul.image-list li .image-box {
	margin: 0 auto;
	max-width: 100%;
	text-align: center;
}

.cloud-hub-sim ul.image-list li .image-box>span {
	position: absolute;
	background: #000;
	color: #fff;
	font-size: 12px;
	padding: 2px;
	top: 0;
	left: 0;
}

.cloud-hub-sim .image-box img.thumbnail {
	border: none;
	width: 100px;
}

.cloud-hub-sim .image-box img[class^="thumbnail img_hub"] {
	width: 120px;
	max-width: 100%;
}

.cloud-hub-sim .image-box .image-checkbox {
	top: -8px;
	right: 6px;
	margin: 0;
}


/* ソフト_ラジオボタン */
.radio-group {
	display: flex;
	justify-content: center;
}

.radio-area input[type=radio] {
	position: absolute;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.radio-area label {
	cursor: pointer;
	padding: 2px 4px;
	color: #aaa;
	border: 1px solid #aaa;
	font-size: 10px;
	transition: .5s;
}

.radio-area:nth-child(n+2) label {
	border-left: 0;
}

.radio-area input[type=radio]:checked+label {
	background-color: #0190E0;
	color: #fff;
	font-weight: 700;
}


.cloud-hub-sim .radio-inline label {
	border: 4px solid #fff;
}

.cloud-hub-sim .radio-inline label:has(:checked) {
	background-color: rgba(1, 144, 224, 0.2);
	border: 4px solid #0190E0;
	border-radius: 4px;
}

.cloud-hub-sim .radio-inline input[type="radio"]:checked+span {
	color: #000;
}

.is-hidden {
	visibility: hidden;
}

/* input */
.cloud-hub-sim #user_num {
	font-size: 24px;
    font-weight: bold;
}

/* セレクトボックス */
.cloud-hub-sim .selectwrap {
	position: relative;
}

.cloud-hub-sim .selectwrap::before {
	position: absolute;
	top: 0;
	left: 137px;
	bottom: 0;
	width: 10px;
	height: 10px;
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	pointer-events: none;
	content: "\f0d7";
	color: #fff;
	background-color: #A4CBF0;
	padding: 15px 6px;
	border: 1px solid #000;
	border-left: 0px;
	border-radius: 0 8px 8px 0;
}

.cloud-hub-sim .selectwrap select {
	appearance: none;
	width: 160px;
	background-color: #fff;
	border: 1px solid #000;
	border-radius: 8px;
	cursor: pointer;
}

.cloud-hub-sim .selectwrap select:focus {
	outline: 4px solid #0190E0;
}

.cloud-hub-sim .selectwrap select:focus {
	outline: 4px solid #0190E0;
}

/* 金額エリア サイド */
.cloud-hub-sim #cost-area-side {
	position: fixed;
	background: #F2E4A7;
	border-radius: 1em 0 0 1em;
	padding: 10px;
	top: 290px;
	right: 0;
	z-index: 2;
}

.cloud-hub-sim #cost-area-side .btn-lg-pdf {
	font-size: 14px;
	padding: 0.5em;
}

.cloud-hub-sim .text-invalid {
	font-size: 14px;
}

/* 金額エリア 下 */
/* 非表示 */
.cloud-hub-sim #cost-area-bottom.not-total {
	position: relative;
}

.cloud-hub-sim #cost-area-bottom.not-total::before {
	position: absolute;
	content: '';
	background: rgba(217, 217, 217, 0.8);
	border-radius: 1em;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
}

.cloud-hub-sim #cost-area-bottom.not-total::after {
	position: absolute;
	content: '利用したサービスを選択してください';
	top: 1em;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;
	font-size: 2em;
	font-weight: bold;
}

.cloud-hub-sim #cost-area-bottom {
	background-color: #FEF7DB;
	border: 2px solid #F6CA06;
	border-radius: 1em;
	padding: 2em;
}

.cloud-hub-sim #cost-area-bottom .step-ttl {
	font-size: 24px;
}

.cloud-hub-sim #cost-area-bottom .sim-result-pdf {
	text-align: center;
}

.btn-lg-pdf,
.btn-lg-pdf[disabled],
.btn-lg-pdf[disabled]:hover {
	background-color: #00529F;
	border: 1px solid #00529F;
	color: #fff;
	position: relative;
	font-size: 18px;
	font-weight: bold;
	padding: 10px 16px;
}

.btn-lg-pdf:hover {
	background-color: #fff;
	color: #00529F;
	cursor: pointer;
	text-decoration: none;
}

.btn-lg-pdf[disabled],
.btn-lg-pdf[disabled]:hover {
	cursor: no-drop;
	opacity: 0.2;
}

.cloud-hub-sim #cost-area-bottom .sub-box {
	background: #fff;
	border: 1px solid #F6CA06;
}

.cloud-hub-sim #cost-area-bottom .sub-box .total-price-list {
	border-color: #F6CA06;
	padding-bottom: 10px;
}

.cloud-hub-sim #cost-area-bottom .sub-box .soft_license .total-price-list {
	padding-bottom: 0;
}

.cloud-hub-sim #cost-area-bottom .detail-price-list:last-child {
	margin-bottom: 2em;
}

.cloud-hub-sim #cost-area-bottom .detail-price-list .detail-price-ttl {
	display: flex;
	justify-content: space-between;
	align-items: center;
	transition-duration: .2s;
}

.cloud-hub-sim #cost-area-bottom .detail-price-list .detail-price-ttl::after {
	font-family: "Font Awesome 5 Free";
	content: "\f107";
	font-weight: bold;
	color: #00529f;
	font-size: 30px;
}

.cloud-hub-sim #cost-area-bottom .detail-price-list .detail-price-ttl.open::after {
	content: "\f106";
}

.cloud-hub-sim #cost-area-bottom .detail-price-list .detail-price-ttl.more-btn:hover::after {
	color: #FF0000;
	transform: scale(1.3);
}

.cloud-hub-sim #cost-area-bottom .detail-price-list .detail-price-list {
	margin-left: 1em;
	margin-bottom: 0;
}

.cloud-hub-sim #cost-area-bottom .detail-price-list .soft_license .detail-price-list {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.cloud-hub-sim #cost-area-bottom .total-price-question {
	display: flex;
	align-items: center;
}

/* アコーディオン */
.cloud-hub-sim .more-btn:hover {
	cursor: pointer;
}

.cloud-hub-sim .btn-area {
	text-align: center;
}

.cloud-hub-sim .btn-area a {
	box-sizing: border-box;
    width: 500px !important;
    max-width: 100%;
}

.cloud-hub-sim .btn-area .btn-cloud-trial span {
	position: relative;
	padding-right: 30px;
}

.cloud-hub-sim .btn-area .btn-cloud-trial span::before {
	content: '\0a5 0';
	position: absolute;
	top: 0;
	right: 0;
}

.cloud-hub-sim .btn-area .btn-cloud-trial span::after {
	content: '';
	border-bottom: 3px solid #fff;
	position: absolute;
	bottom: 2px;
	right: 0;
	width: 25px;
}

.cloud-hub-sim .anno {
	font-size: 12px;
	border-top: 1px solid #999;
	margin-top: 3em;
	padding-top: 1em;
}

/* 0px~1022px */
@media screen and (max-width: 1022px) {
	.cloud-hub-sim .form-box .box-content {
		flex-direction: column;
		justify-content: space-between;
	}

	.cloud-hub-sim .form-sub-ttl {
		margin-right: 0;
		margin-bottom: 1em;
	}
}

/* 0px~970px */
@media screen and (max-width: 970px) {
	.cloud-hub-sim #step-2-area .step-section {
		flex-direction: column;
	}

	.cloud-hub-sim #step-2-area .step-section .soft-list {
		width: 100%;
	}
}

/* 0px~800px */
@media screen and (max-width: 800px) {
	.cloud-hub-sim .form-box .box-content {
		width: calc((100% - 1em) / 2);
	}

	.cloud-hub-sim .form-box .box-content:not(:nth-child(3n)) {
		margin-right: 0;
	}

	.cloud-hub-sim .form-box .box-content:not(:nth-child(2n)) {
		margin-right: 1em;
	}

	.cloud-hub-sim .step-section .server-usage>div {
		display: table-cell;
		vertical-align: middle;
		width: 75.2%;
		padding-left: 10px;
	}

	.cloud-hub-sim .form-column {
		flex-direction: column;
		margin-bottom: 2em;
	}

	.cloud-hub-sim .form-ttl {
		border-right: 0;
		border-bottom: 2px solid #999;
		margin-bottom: 0.6em;
		margin-right: 0;
		width: 100%;
	}

	.cloud-hub-sim .form-content {
		width: 100%;
	}
}

/* 0px~500px */
@media screen and (max-width: 500px) {
	.cloud-hub-sim .form-box .box-content {
		width: 100%;
	}

	.cloud-hub-sim .form-box .box-content:not(:nth-child(2n)) {
		margin-right: 0;
	}

	.cloud-hub-sim #contract_month>label {
		width: calc((100% - 6em) / 2);
	}

	.cloud-hub-sim #cost-area-side {
		position: sticky;
		top: 30px;
		z-index: 1000;
		border-radius: 0;
	}

	.cloud-hub-sim #cost-area-side .sim-result-pdf {
		text-align: center;
	}
}

/* 0px~420px */
@media screen and (max-width: 420px) {
	.cloud-hub-sim .input-inline,
	.cloud-hub-sim .cloud-type-2 {
		flex-wrap: wrap;
	}
}

/* 0px~370px */
@media screen and (max-width: 370px) {
	.cloud-hub-sim .btn-area .btn-cloud-trial span::before {
		top: 50%;
	}
}

/* element.cssからのコピペ
-------------------------------------------------- */
/* sectionBody
-------------------------------------------------- */
.sectionBody__pc-1000 {
	margin: 0 auto;
}

@media screen and (min-width: 1000px),
print {
	.sectionBody__pc-1000 {
		width: 1000px !important;
	}

	.sectionBody__pc-1000>section {
		margin-top: 60px;
	}
}

@media screen and (max-width: 1030px) {
	.sectionBody__pc-1000 {
		width: 100%;
		padding: 0 20px;
	}
}

@media screen and (max-width: 750px) {
	.sectionBody__pc-1000>section {
		margin-top: 40px;
	}
}

/* title
-------------------------------------------------- */
.title_mid {
	background: #e8f2fb;
	border-bottom: 1px solid #7fa8cf;
}

.title_sub {
	border-left: solid 5px #7db4e6;
	color: #0055bf;
	font-weight: normal;
	background: transparent;
	margin-top: 47px;
	margin-bottom: 24px;
	font-size: 18px;
	line-height: 1.75;
	padding: 0.5em;
}

@media screen and (min-width: 751px),
print {
	.title_mid {
		margin-bottom: 24px;
		padding: 13px 22px 15px;
		font-size: 20px;
		line-height: 1.5;
	}

	.title_sub {
		margin-bottom: 14px;
	}
}

@media screen and (max-width: 750px) {
	.title_mid {
		margin-bottom: 10px;
		padding: 17.5px 15px 16px;
		font-size: 16px;
		line-height: 1.5;
	}

	.title_sub {
		margin-bottom: 10px;
	}
}

/* section
-------------------------------------------------- */
.section_title {
	position: relative;
	text-align: center;
}

.section_title::before {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	background: #00529f;
}

.section_title-tit {
	font-weight: normal;
}

@media screen and (min-width: 751px),
print {
	.mainTit {
		margin: 63px 0 56px;
		font-size: 44px;
	}

	.section_title {
		padding-bottom: 28px;
		margin-bottom: 52px;
	}

	.section_title::before {
		width: 40px;
		height: 3px;
		margin-left: -20px;
	}

	.section_title-tit {
		font-size: 36px;
		line-height: 1.5;
	}
}

@media screen and (max-width: 750px) {
	.mainTit {
		margin: 39px 0 35px;
		font-size: 24px;
	}

	.section_title {
		padding-bottom: 36.5px;
		margin-bottom: 35px;
	}

	.section_title::before {
		width: 20px;
		height: 1.5px;
		margin-left: -10px;
	}

	.section_title-icon {
		padding-top: 1.5px;
		margin-bottom: 8.5px;
		font-size: 16px;
		line-height: 1.5;
	}

	.section_title-tit {
		font-size: 24px;
		line-height: 1.5;
	}
}

/* section_article
-------------------------------------------------- */
.section_article_date {
	text-align: right;
	list-style: none;
}

@media screen and (min-width: 751px),
print {
	.section_article_date {
		margin-bottom: 23px;
	}

	.section_article .title_mid {
		margin-top: 80px;
		margin-bottom: 22px;
	}

	.section_article p,
	.section_article .list__indent {
		margin-bottom: 18px;
	}
}

@media screen and (max-width: 750px) {
	.section_article_date {
		margin-bottom: 10px;
	}

	.section_article .title_mid {
		margin-top: 40px;
		margin-bottom: 15px;
	}

	.section_article p,
	.section_article .list__indent {
		margin-bottom: 10.5px;
	}
}

/* section_article_twoColumns
-------------------------------------------------- */
@media screen and (min-width: 751px),
print {
	.section_article_twoColumns_title_sub,
	.section_article .title_sub {
		margin-top: 47px;
		margin-bottom: 16px;
		font-size: 20px;
		line-height: 1.75;
	}

	.section_article .title_mid+.title_sub,
	.title_mid+.section_article_twoColumns_column>.section_article_twoColumns_column_txt>.section_article_twoColumns_title_sub:nth-child(1),
	.section_article_twoColumns_column_txt .section_article_twoColumns_title_sub:nth-child(1) {
		margin-top: 0;
	}

	.section_article_twoColumns_title_sub {
		margin-bottom: 16px;
		font-size: 20px;
	}
}

@media screen and (max-width: 750px) {
	.section_article_twoColumns_title_sub,
	.section_article .title_sub {
		margin-top: 49.5px;
		margin-bottom: 8.5px;
		font-size: 16px;
		line-height: 1.75;
	}

	.section_article .title_mid+.title_sub,
	.title_mid+.section_article_twoColumns_column>.section_article_twoColumns_column_txt>.section_article_twoColumns_title_sub:nth-child(1),
	.section_article_twoColumns_column_txt .section_article_twoColumns_title_sub:nth-child(1) {
		margin-top: 0;
	}
}

/* elements_add_generalTable.css 貼り付けここから*/
.generalTable__typeBorder {
	border: 1px solid #ddd;
	width: 100%
}

.generalTable__typeBorder caption {
	margin-bottom: 4px;
	font-weight: bold;
	text-align: center
}

.generalTable__typeBorder th,
.generalTable__typeBorder td {
	padding: 6px 4px;
	border: 1px solid #ddd;
	background: #fff;
	vertical-align: middle
}

.generalTable__typeBorder td.color_00529f_extend {
	background: #e7f3ff
}

.generalTable__typeBorder td.color_c0a547_extend {
	background: #fffbe7
}

.generalTable__typeBorder__lineEven th,
.generalTable__typeBorder__lineEven td {
	background: #f1f1f1
}

.generalTable__typeBorder__lineEven td.color_00529f_extend {
	background: #d2e9ff
}

.generalTable__typeBorder__lineEven td.color_c0a547_extend {
	background: #fbf0d7
}

.generalTable__typeBorder__thead th {
	background: #7fa8cf;
	text-align: center;
	color: #fff;
	font-weight: bold
}

.generalTable__typeBorder__thead th.color_f1f1f1 {
	color: #000;
	background: #f1f1f1
}

.generalTable__typeBorder__thead th.color_c0a547 {
	color: #fff;
	background: #c0a547
}

.generalTable__typeBorder__thead th.color_00a384 {
	color: #fff;
	background: #00a384
}

.generalTable__typeBorder__thead th.color_00529f {
	color: #fff;
	background: #00529f
}

.generalTable__typeBorder__thead.comparisonTable th {
	background: #fff
}

.generalTable__typeBorder__thead.comparisonTable th.color_f1f1f1 {
	color: #000;
	background: #f1f1f1
}

.generalTable__typeBorder__thead.comparisonTable th.color_c0a547 {
	color: #fff;
	background: #c0a547
}

.generalTable__typeBorder__thead.comparisonTable th.color_00a384 {
	color: #fff;
	background: #00a384
}

.generalTable__typeBorder__thead.comparisonTable th.color_00529f {
	color: #fff;
	background: #00529f
}

.generalTable__typeBorder__tbody td {
	text-align: right
}

.generalTable__typeBorder__tbody th {
	font-weight: bold;
	text-align: right
}

.generalTable__typeBorder__tbody th.color_f1f1f1 {
	background: #d2e9ff
}

.generalTable__typeBorder__tbody th.normal {
	font-weight: normal
}

.generalTable__typeBorder__tbody .list__indent {
	margin: 20px 0 0 0;
	font-size: 12px;
	font-weight: normal
}

.generalTable__typeBorder__tbody.comparisonTable td,
.generalTable__typeBorder__tbody.comparisonTable th {
	text-align: center
}

.generalTable_plan .generalTable__typeBorder__thead tr.product_plan th {
	background-color: #f1f7fd;
	color: #222;
	font-weight: normal;
	font-size: 24px
}

@media screen and (min-width: 751px),
print {
	.generalTable__typeBorder {
		table-layout: fixed
	}
}

@media screen and (max-width: 750px) {
	/* スクロール */
	.as_scroll_area {
		overflow-x: scroll;
		display: block;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
	}

	.as_scroll_area table {
		word-break: keep-all;
	}

	.generalTable__typeBorder .scrollnone {
		width: 100%;
		table-layout: fixed
	}

	.generalTable__typeBorder td,
	.generalTable__typeBorder th {
		padding: 8px 10px
	}
}

/* elements_add_generalTable.css 貼り付けここまで*/

/* link
-------------------------------------------------- */
a[target="_blank"]::after {
	background-image: url(https://pca.jp/area_common/2018shared/svg/svg_i_window.svg);
	background-repeat: no-repeat;
	display: inline-block;
	vertical-align: top;
}

@media screen and (min-width: 751px),
print {
	a {
		transition: .6s ease;
	}

	a[target="_blank"]::after {
		margin: 0 1px 0 7px;
		width: 12px;
		height: 19px;
		background-size: 12px 10px;
		background-position: right 9px;
	}
}

@media screen and (max-width: 750px) {
	a[target="_blank"]::after {
		margin: 0 8px;
		width: 13.5px;
		height: 17px;
		background-size: 13.5px 13px;
		background-position: 0 4px;
	}
}

/* 詳細画面の表示 */
.font_b {
	font-weight: bold;
}

.fored {
	color: #a52a2a;
}

.as_fcolor_blue {
	color: #00529f;
}

.font_p_Xlarge {
	font-size: 123.1% !important;
}

.font_p_XXlarge {
	font-size: 138.5% !important;
}

.font_p_Xsmall {
	font-size: 85%;
}

strong {
	text-shadow: none;
	color: #000;
	font-weight: bold;
}

.as_font_line {
	font-weight: bold;
	color: #333;
	background: linear-gradient(transparent 60%, #fffadc 50%);
}

/* newsIcon_type
-------------------------------------------------- */
.newsIcon_type {
	font-weight: bold;
	display: inline-block;
	text-align: center;
	border: 1px solid #878787;
	color: #878787;
	background: #fff;
	padding: 2px 6px;
}

@media screen and (min-width: 751px), print {
	.newsIcon_type {
		max-width: 90px !important;
		margin-right: 10px;
		margin-bottom: 10px;
		font-size: 12px;
	}
}

@media screen and (max-width: 750px) {
	.newsIcon_type {
		max-width: 70px !important;
		margin-right: 8px;
		margin-bottom: 8px;
		font-size: 9px;
	}
}

a:link .newsIcon_type,
a:visited .newsIcon_type,
a:hover .newsIcon_type,
a:active .newsIcon_type {
	text-decoration: none;
}

.newsIcon_type_new {
	color: #000;
	background: #ffef00;
	border-color: #ffef00;
}

/* NEW */
.newsIcon_type_introductionExample {
	color: #6f4334;
	border-color: #6f4334;
}

/* 導入事例 */
.newsIcon_type_productInformation {
	color: #5792c5;
	border-color: #5792c5;
}

/* 製品･サービス */
.newsIcon_type_release,
.newsIcon_type_feature {
	color: #e94f6e;
	border-color: #e94f6e;
}

/* 特集・リリース */
.newsIcon_type_news,
.newsIcon_type_cloud {
	color: #00529f;
	border-color: #00529f;
}

/* 更新 */
.newsIcon_type_upd {
	color: #fff;
	background: #cb3f4e;
	border-color: #cb3f4e;
}

/* お知らせ */
/* ソフト */
.newsIcon_type_kai {
	color: #e71e2b;
	border-color: #e71e2b;
}

.newsIcon_type_kon {
	color: #4784b6;
	border-color: #4784b6;
}

.newsIcon_type_kan {
	color: #f0831f;
	border-color: #f0831f;
}

.newsIcon_type_kyu {
	color: #8ec31f;
	border-color: #8ec31f;
}

.newsIcon_type_jin {
	color: #ecbb31;
	border-color: #ecbb31;
}

.newsIcon_type_kot,
.newsIcon_type_alliance {
	color: #9c4998;
	border-color: #9c4998;
}

.newsIcon_type_pih {
	color: #00b2b1;
	border-color: #00b2b1;
}

.newsIcon_type_sya {
	color: #ee87b4;
	border-color: #ee87b4;
}

.newsIcon_type_kou,
.newsIcon_type_seminar {
	color: #00a384;
	border-color: #00a384;
}

.newsIcon_type_ken {
	color: #b41749;
	border-color: #b41749;
}

/* カラー */
.newsIcon_type_yellow {
	color: #af952d;
	border-color: #af952d;
}

.newsIcon_type_green {
	color: #41774B;
	border-color: #41774B;
}

.newsIcon_type_orange {
	color: #c86631;
	border-color: #c86631;
}

.newsIcon_type_darkblue {
	color: #1d425f;
	border-color: #1d425f;
}

.newsIcon_type_lightblue {
	color: #34a7bc;
	border-color: #34a7bc;
}

.newsIcon_type_purple {
	color: #6c62aa;
	border-color: #6c62aa;
}

.newsIcon_type_red {
	color: #a52a2a;
	border-color: #a52a2a;
}

.newsIcon_type_red_ex {
	color: #f00;
	border-color: #f00;
}

h5.font_b.font_p_Xlarge {
	padding: 0;
	margin: 0;
}

h5.font_b.font_p_Xlarge::before {
	content: none;
}

/* メインタイトル */
.main_visual {
	background-color: #F9F9F9;
	border-bottom: 1px solid #ccc;
	padding: 24px 10px 8px;
}

.main_visual .mv_ttl {
	text-align: center;
	font-size: 36px;
	font-weight: bold;
}

.main_visual .mv_subttl {
	font-size: 14px;
	font-weight: normal;
	display: block;
}

/* タイトル付ボックス_基本 */
.box_1 {
	margin: 2em 0;
	background: #f8f8f8;
}

.box_1 .b1_ttl {
	font-size: 22px;
	background: #00529f;
	padding: 4px 10px;
	text-align: left;
	color: #fff;
	font-weight: bold;
	letter-spacing: 0.05em;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.box_1 .b1_ttl .more_link {
	font-size: 16px;
	font-weight: normal;
}

.box_1 .b1_ttl a {
	text-decoration: none;
	color: #fff;
}

.box_1 div.b1_body {
	padding: 16px;
	margin: 0;
}

/* 色別 */
.box_info .b1_ttl {
	background: #F43E43;
}

.box_mante .b1_ttl {
	background: #F5BC00;
}

/* お知らせ系のリスト表示 */
.info_list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.info_list li:not(:last-child) {
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px solid #ccc;
}

.info_list .info_group {
	display: flex;
	justify-content: space-between;
	align-items: center;
	text-align: left;
}

.info_list .disc_arrow_wrap {
	margin-left: 10px;
}

.info_list a {
	text-decoration: none;
	color: #000;
}

.info_list a:hover .info_body {
	text-decoration: underline;
}

.info_list .info_head {
	margin-bottom: 10px;
}

.info_list .info_date {
	font-size: 14px;
	margin-right: 5px;
}

.disc_arrow::after {
	font-family: "Font Awesome 5 Free";
	content: "\f105";
	font-weight: bold;
	color: #00529f;
	font-size: 22px;
}

/*---------------------------------

	キャンペーン2311

---------------------------------*/
label.campaign-2311 small {
	margin-left: 0px;
}

/*---------------------------------

	キャンペーン2406

---------------------------------*/
.badge_campaign-2406 {
	color: #fff;
	background-color: #dc3545;
	display: inline-block;
	padding: .4em .4em;
	font-size: 100%;
	font-weight: 550;
	line-height: 1;
	text-align: center;
	white-space: nowrap;
	vertical-align: baseline;
	border-radius: 0.25rem;
}

/*---------------------------------

	メタ広告用セミナー

---------------------------------*/
/* /p-tips/css/details_remake.css からコピー */
.freeBox h3 {
	margin: 42px 0 22px;
	font-size: 18px;
	padding: 17px 0px 12px 12px;
	line-height: 1.5;
	border: none;
	border-left: solid 5px #7db4e6;
	color: #0055bf;
	font-weight: normal;
	background: transparent;
}

.section_article .title_mid {
	margin-top: 52px;
	background: #d1e4f5;
	margin-bottom: 22px;
	padding: 17px 22px 15px 12px;
	font-size: 20px;
	line-height: 1.5;
	border-bottom: 4px double #74a2cd;
}

/* /p-tips/css/details.css　からコピー */
.generalTable {
	overflow-x: auto;
}

.generalTable table {
	border-collapse: collapse;
	border-spacing: 0;
	word-break: break-all;
	width: 100%;
	border-top: 1px solid #ddd;
	border-left: 1px solid #ddd;
}

.generalTable__body th,
.generalTable__body td {
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
}

.generalTable__body th {
	text-align: left;
	background: #e8f2fb;
	font-weight: bold;
}

.generalTable__body td {
	vertical-align: top;
	background: #fff;
	text-align: left;
}

@media screen and (max-width: 750px) {
	.generalTable {
		margin: 10.5px 0 25px;
		padding: 5px 0;
	}

	.generalTable__body th {
		width: 90.5px;
		padding: 12px 12.5px 12.5px;
		font-size: 12px;
		line-height: 1.5;
	}

	.generalTable__body td {
		padding: 12px 12.5px 12.5px;
		border-bottom: 1px solid #ddd;
		font-size: 12px;
		line-height: 1.5;
	}
}

.meta-event h4 {
	border-top: 3px dotted #3072ac;
	color: #3072ac;
	font-size: 14px;
	font-weight: 700;
	margin-bottom: 20px;
	padding: 5px;
	text-align: center;
}

.meta-event h5 {
	border-bottom: 1px solid #00529F;
}

.meta-event .quote {
	text-align: right;
	color: #666;
	margin: 20px 0 30px;
}

.meta-event .sub-title {
	margin: 42px 0 22px;
	font-size: 18px;
	padding: 17px 0px 12px 12px;
	line-height: 1.5;
	background: none;
	border: none;
	border-left: solid 5px #7db4e6;
	color: #0055bf;
	font-weight: normal;
	background: transparent;
}

/*---------------------------------

	PCA Archサービス

---------------------------------*/
/* ボックス */
.box-wrap {
	position: absolute;
	width: 100%;
	top: 0;
	left: 0;
	margin-top: 50px;
}

.box-wrap.is-inactive {
	position: relative;
}

.box-wrap.is-inactive .box {
	position: relative;
}

.box-wrap .box {
	background: #f4f4f4;
	border-radius: 20px;
	padding: 80px 50px;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	display: none;
}
.box-wrap .box.is-inactive {
	position: absolute;
}

@media screen and (max-width:761px) {
	.box-wrap .box {
		padding: 60px 30px 40px;
	}
}

/* 選択肢 */
.box-wrap .box .title {
	font-size: 26px;
	text-align: center;
	position: relative;
	padding-bottom: 20px;
	margin-bottom: 50px;
}
.box-wrap .box .title::before {
	background: #999;
	content: "";
	display: block;
	height: 2px;
	width: 60px;
	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
}
.box-wrap .box .title .num {
	font-size: 30px;
}
.box-wrap .box .title .small {
	font-size: 20px;
}

.back-list {
	margin: 4px 0 0;
	display: inline-block;
	padding: 4px 8px;
	color: #47a7ff;
	cursor: pointer;
	transition: 0.2s cubic-bezier(0.5, 1, 0.89, 1);
}
.back-list:hover {
	color: #5bb0ff;
}

/* Yes or No */
.btn-no {
	border-radius: 5px;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	padding: 10px 16px;
	background: #F15F60;
}
.btn-yes {
	border-radius: 5px;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	padding: 10px 16px;
	background: #98CC67;
}

.btn-no:hover,
.no.is-inactive {
	background: #D63939;
	opacity: 1;
}

.btn-yes:hover {
	background: #70A83B;
	opacity: 1;
}

.disabled {
	background: #666;
	pointer-events: none;
}
/*---------------------------------

	メディアクエリ

---------------------------------*/
/* 0px~375px */
@media screen and (max-width: 375px) {

	/*
		ボタン風 ラジオボタン,チェックボタン
	---------------------------------*/
	/* 幅可変 */
	.select-cat-variable span.checkbox-name-variable,
	.select-cat-variable span.radio-name-variable {
		min-width: initial;
	}

	/*
		list
	---------------------------------*/
	/* 横並び 均等 */
	ul.equal-list li {
		width: 100% !important;
	}

	/* input + text 横並び */
	/* PCのみ */
	.pc-input-inline {
		display: block;
		width: 100%;
	}

	.pc-input-inline>input {
		width: 100% !important;
	}

	.pc-input-inline .input-group-addon+input {
		margin-left: 0;
	}

	/*---------------------------------

		障害通報

	---------------------------------*/
	.fault-report {
		text-align: left;
	}

	.fault-report>.btn-warning {
		display: block;
	}

	.fault-report>.btn-warning>b::after {
		content: "\A";
		white-space: pre;
	}

	/*---------------------------------

		PSIP

	---------------------------------*/
	/* card */
	.col-5 .card,
	.col-4 .card {
		width: 100% !important;
	}

	/*---------------------------------

		パートナー様一覧

	---------------------------------*/
	/* card */
	.col-3 .card,
	.col-3 .card-2 {
		width: 100% !important;
	}

	/*---------------------------------

		PCAソフトダウンロードサービス

	---------------------------------*/
	/* テーブル */
	table.softdl-table td::before {
		display: block !important;
		margin-right: 0 !important;
	}

	/*---------------------------------

		価格シミュレーション

	---------------------------------*/
	/* ソフト一覧 */
	ul.image-list li {
		width: calc(100% / 2) !important;
	}

	.cloud-hub-sim ul.image-list li {
		width: calc(100% / 2) !important;
	}

	/*---------------------------------

		リコーOSO

	---------------------------------*/
	/* 確認画面 */
	.oso-confirm-area .form-cat>p {
		display: block;
	}

	/*---------------------------------

		サプライオーダー

	---------------------------------*/
	.btn-sup {
		min-width: auto !important;
	}

	/* テーブル */
	table.supply-table td:not(:first-child) {
		border-top: 1px dotted #ced4da;
	}

	table.supply-table td::before {
		display: block !important;
		margin-right: 0 !important;
		text-align: left;
	}

	/*---------------------------------

		PSSWeb申込

	---------------------------------*/
	/* テーブル */
	table.pssregist-table td::before {
		display: block !important;
		margin-right: 0 !important;
		text-align: left;
	}
}

/* 0px~520px */
@media screen and (max-width: 520px) {

	/*---------------------------------

		サーバー稼働状況画面

	---------------------------------*/
	/* 稼働率 */
	.occupancy-rate-item,
	.occupancy-rate2-item {
		width: 100%;
	}
}

/* 520px~990px */
@media screen and (min-width: 520px) and (max-width: 990px) {

	/*---------------------------------

		サーバー稼働状況画面

	---------------------------------*/
	/* 稼働率 */
	.occupancy-rate-item {
		width: calc((100% / 2) - 1em);
	}
}

/* 0px~750px */
@media screen and (max-width: 750px) {

	/* ヘルプテキスト */
	.note-text {
		display: block;
	}

	.note-text>input {
		margin-right: 0;
		width: 100%;
	}

	/* 入力欄サイズ */
	.sm-size,
	.xs-size {
		width: 100% !important;
	}

	/* 2つ並べる */
	.form-row {
		display: block;
	}

	.form-row .col,
	.form-row .col_3 {
		width: 100%;
	}

	.form-row .col:last-child {
		margin-top: 5px;
		margin-left: 0;
	}

	.form-row .col:last-child label {
		display: inline-block;
		margin-top: 15px;
	}

	/*
		ボタン風 ラジオボタン,チェックボタン
	---------------------------------*/
	/* 2列に並べる */
	.radio-inline.radio-2>label {
		width: 100%;
	}

	.radio-inline.radio-2>label .input-inline {
		padding-right: 20px;
	}

	/* 改行 */
	.txtcent a>br,
	.br-pc-none {
		display: block;
	}

	/*
		ボタン風 ラジオボタン,チェックボタン
	---------------------------------*/
	/* 幅固定 */
	.select-cat {
		display: block;
	}

	.select-cat label {
		display: block;
		margin-right: 0;
		margin-bottom: 5px;
	}

	.select-cat span.radio-name {
		width: 100%;
	}

	/*
		均等配列
	---------------------------------*/
	/* 2分割 */
	.halve>div {
		display: block;
		width: auto;
	}

	/*
		list
	---------------------------------*/
	/* 横並び 均等 */
	ul.equal-list li {
		width: 50%;
	}

	/*
		card-2
	---------------------------------*/
	.card-2 {
		margin-bottom: 2em;
	}

	/* card-2 footer */
	.card-2 .card-footer .card-text-justified {
		display: block;
	}

	/*---------------------------------

		PCA士業事務所検索結果

	---------------------------------*/
	/* 会社名 */
	.company-info>div {
		display: block;
		text-align: left;
	}

	.company-info>.company-name {
		padding-bottom: 0;
	}

	.company-info>.company-name>a {
		display: block;
	}

	.feature .company-img {
		float: none;
		margin-right: 0;
	}

	.feature .company-img img {
		width: 100%;
	}

	/*---------------------------------

		PSIP

	---------------------------------*/
	/* card */
	.col-4 .card {
		width: calc((100% - 1em) / 2);
	}

	.col-4 .card:nth-of-type(2n) {
		margin-right: 0;
	}

	/* 重要なお知らせ */
	dl.important-notices dt,
	dl.important-notices dd {
		display: block;
	}

	dl.important-notices dt {
		width: auto;
	}

	/* トピックス アイコン */
	.horizontal-table .icon {
		padding-left: 0;
	}

	.horizontal-table .icon::before {
		padding: 2px 4px;
		position: static;
	}

	/*---------------------------------

		パートナー様一覧

	---------------------------------*/
	/* card */
	.col-3 .card,
	.col-3 .card-2 {
		width: calc((100% - 1em) / 2);
	}

	.col-3 .card:nth-of-type(2n) {
		margin-right: 0;
	}

	/*---------------------------------

		OS確認情報

	---------------------------------*/
	/* テーブル */
	.os-table .heading {
		display: none;
	}

	.os-table td {
		display: block;
	}

	.os-table td:nth-child(odd) {
		background: #e8f2fb;
		font-weight: bold;
	}

	.os-table .os-table-right {
		text-align: right;
	}

	/* divテーブル */
	.os-half {
		float: none;
		width: 100%;
	}

	.os-half:nth-child(odd) {
		margin-right: 0;
	}

	/*---------------------------------

		士業コンソーシアム

	---------------------------------*/
	/* バナー 2列 */
	.bannar-list {
		flex-direction: column;
		flex-wrap: nowrap;
	}

	.bannar-list li {
		max-width: 500px;
		width: calc(100% - 20px);
	}

	.col-2.bannar-list li:nth-child(2n) {
		margin: 0 5px 5px;
	}

	.col-2.bannar-list li:nth-child(2n+1) {
		margin: 0 0 5px 5px;
	}

	/* table */
	table.horizontal-table.acmember-movie td {
		display: block;
		width: 100%;
	}

	/* 動画 */
	.youtube iframe {
		width: 100%;
	}

	/*---------------------------------

		PSS会員NEWS

	---------------------------------*/
	/* ボタン */
	.pss-btn-list {
		display: block;
	}

	a.btn.btn-pss {
		display: block;
		margin-bottom: 10px;
	}

	/*---------------------------------

		PCAソフトダウンロードサービス

	---------------------------------*/
	/* テーブル */
	table.softdl-table .thead {
		display: none;
	}

	table.softdl-table th,
	table.softdl-table td {
		border-bottom: none;
		display: block;
	}

	table.softdl-table td::before {
		content: attr(data-label);
		color: #6c757d;
		margin-bottom: 0.25rem;
		margin-right: 1rem;
	}

	table.softdl-table th {
		background: #e8f2fb;
	}

	table.softdl-table tr {
		border-bottom: 1px dotted #ced4da;
	}

	/*---------------------------------

		価格シミュレーション

	---------------------------------*/
	/* ソフトライセンス */
	.total-price-list {
		display: block;
	}

	/* ソフト一覧 */
	ul.image-list li {
		width: calc(100% / 3);
	}

	.cloud-hub-sim ul.image-list li {
		width: calc(100% / 3);
	}

	/* Data Table */
	div.dataTables_wrapper div.dataTables_filter input {
		border: 1px solid #6c757d;
	}

	/*
		画像ボタン
	---------------------------------*/
	/* マージン */
	.sp-form-img {
		margin-top: 30px;
	}

	.sp-form-img button:last-child img {
		margin-top: 10px;
	}

	.sp-banner-img {
		margin-top: 60px;
	}

	/* サイズ */
	.sp-form-img img,
	.sp-banner-img img {
		max-width: 380px;
		width: 100%;
		vertical-align: bottom;
	}

	/* 表示・非表示 */
	.pc-form-img,
	.pc-banner-img,
	.pc-area {
		display: none;
	}

	.sp-form-img,
	.sp-banner-img,
	.sp-area {
		display: block;
	}

	/* hover */
	.sp-banner-img>a:hover {
		opacity: 0.8;
	}

	/* ユーザー数 */
	.server-usage div {
		display: block;
		margin-top: 5px;
	}

	/*---------------------------------

		Web-API

	---------------------------------*/
	/* サイドバー */
	#webapi-area .container {
		display: block;
		margin-top: 20px;
	}

	#webapi-area .container-left #sidebar ul li {
		display: inline-block;
		margin-left: 5px;
	}

	/*---------------------------------

		OSO

	---------------------------------*/
	.table-oso-1 {
		border-top: none;
		margin: 0;
		overflow: hidden;
		width: 100%;
		word-break: break-all !important;
	}

	.table-oso-1 .thead {
		display: none;
	}

	.table-oso-1 tr {
		width: 100%;
	}

	.table-oso-1 tr:nth-child(even) {
		background: #F6FDFA;
	}

	.table-oso-1 td {
		display: block;
		text-align: left !important;
		width: 100%;
	}

	.table-oso-1 td:before {
		content: attr(data-label);
		float: left;
		font-weight: bold;
		margin-right: 10px;
	}

	/*---------------------------------

		サプライオーダー

	---------------------------------*/
	/* テーブル */
	table.supply-table .thead {
		display: none;
	}

	table.supply-table th,
	table.supply-table td {
		border-bottom: none;
		display: block;
	}

	table.supply-table td::before {
		content: attr(data-label);
		color: #6c757d;
		margin-bottom: 0.25rem;
		margin-right: 1rem;
	}

	table.supply-table th {
		background: #e8f2fb;
	}

	table.supply-table tr {
		border-bottom: 1px dotted #ced4da;
	}

	table.supply-table .total>td {
		text-align: right !important;
	}

	table.supply-table tbody.table-highlight td:first-child {
		background: #e8f2fb;
	}

	/*---------------------------------

		PSSWeb申込

	---------------------------------*/
	/* テーブル */
	table.pssregist-table .thead {
		display: none;
	}

	table.pssregist-table .sp-thead {
		background: #e8f2fb;
	}

	table.pssregist-table th {
		border-bottom: none;
		display: block;
	}

	table.pssregist-table td {
		border-bottom: 1px dotted #ced4da;
		display: block;
	}

	table.pssregist-table td::before {
		content: attr(data-label);
		color: #6c757d;
		margin-bottom: 0.25rem;
		margin-right: 1rem;
	}

	/*---------------------------------

		価格シミュレーション

	---------------------------------*/
	/* コストエリア固定 */
	.cost-header .box-title+.price-cat .total-price-list {
		margin-top: 16px;
	}

	/*---------------------------------

		PCA Hub 体験版

	---------------------------------*/
	/* ボタン */
	.btn-lg-wrap {
		margin-top: 50px;
	}

	a.btn-pcahub {
		font-size: 0.8rem;
		padding: 1rem 4rem 1rem 1rem;
	}

	a.btn-pcahub span {
		font-size: 1rem;
	}

	/* 静的コンテンツからコピー */
	.spBlock {
		display: block !important;
	}

	.pcBlock {
		display: none !important;
	}

	/*---------------------------------

		サーバー稼働状況画面

	---------------------------------*/
	/* 稼働率 */
	dl.inner div {
		width: 100%;
	}

	.system-trouble-item .incident_list {
		display: block;
	}
}

/* 751px~ */
@media screen and (min-width: 751px) {

	/* ヘルプテキスト */
	.note-text>input {
		margin-right: 5px;
		width: 321.5px !important;
	}

	/*
		list
	---------------------------------*/
	ul.equal-list li:nth-child(3n-1) {
		margin: 0 2%;
	}

	/*
		card-2
	---------------------------------*/
	/* 3column */
	.card-2 {
		display: flex;
		flex-direction: column;
		width: calc((100% - 2em) / 3);
		margin-bottom: 60px;
	}

	/* card-2 footer */
	.card-2 .card-footer .card-text-justified {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.card-2 .card-footer .card-text-day {
		padding-right: 10px;
	}

	.card-2 .card-footer .card-text-time {
		border-left: 1px solid #ced4da;
		padding-left: 10px;
	}


	/*---------------------------------

		PSIP

	---------------------------------*/
	/* card */
	.col-4 .card {
		width: calc((100% - 3em) / 4);
	}

	.col-4::after,
	.col-4::before {
		content: "";
		display: block;
		width: calc((100% - 3em) / 4);
	}

	.col-4::before {
		order: 1;
	}


	/*---------------------------------

		パートナー様一覧

	---------------------------------*/
	/* card */
	.col-3 .card,
	.col-3 .card-2 {
		width: calc((100% - 2em) / 3);
	}

	.col-3::after {
		content: "";
		display: block;
		width: calc((100% - 2em) / 3);
	}


	/*---------------------------------

		OS確認情報

	---------------------------------*/
	/* テーブル */
	.os-table .product-name {
		width: 50%;
	}

	.os-table .support-ver {
		width: 25%;
	}

	.os-table .annotation {
		width: 25%;
	}


	/*---------------------------------

		Web-API

	---------------------------------*/
	/* サイドバー */
	#webapi-area .container {
		display: flex;
		margin-top: 30px;
	}

	#webapi-area .container-left {
		width: 160px;
	}

	#webapi-area .container-right {
		flex: 1;
	}

	/* table */
	#webapi-area .comparison table th.no,
	#webapi-area .comparison table th.required,
	#webapi-area .comparison table th.create,
	#webapi-area .comparison table th.modify,
	#webapi-area .comparison table th.erase {
		width: 2.5em;
	}

	#webapi-area .comparison table th.lock {
		width: 3.5em;
	}

	#webapi-area .comparison table th.element,
	#webapi-area .comparison table th.description {
		width: 15em;
	}

	#webapi-area .comparison table th.changecode {
		width: 3em;
	}


	/*---------------------------------

		PSS会員NEWS

	---------------------------------*/
	/* ボタン */
	.btn-pss:not(:last-of-type) {
		margin-right: 10px;
	}


	/*---------------------------------

		価格シミュレーション

	---------------------------------*/
	/* 2分割 */
	.price-sim .fixed-halve {
		display: table;
	}

	.price-sim .fixed-halve>div {
		display: table-cell;
	}

	.fixed-halve>.child-2 {
		width: 30%;
	}

	/* ソフト一覧 */
	ul.image-list li {
		width: calc(100% / 6);
	}

	.cloud-hub-sim ul.image-list li {
		width: calc(100% / 5);
	}

	/*
		画像ボタン
	---------------------------------*/
	/* マージン */
	.pc-form-img {
		margin-top: 60px;
	}

	.pc-form-img button:nth-child(2) img {
		margin-top: 20px;
	}

	.pc-banner-img {
		margin-top: 60px;
	}

	/* サイズ */
	.pc-form-img img {
		max-width: 800px;
		width: 100%;
		vertical-align: bottom;
	}

	.pc-banner-img img {
		width: 100%;
		vertical-align: bottom;
	}

	/* 表示・非表示 */
	.pc-form-img,
	.pc-banner-img,
	.pc-area {
		display: block;
	}

	.sp-form-img,
	.sp-banner-img,
	.sp-area {
		display: none;
	}

	/* hover */
	.pc-banner-img>a:hover {
		opacity: 0.8;
	}

	/* ユーザー数 */
	.server-usage {
		display: table;
		width: 100%;
	}

	.server-usage>input {
		display: table-cell;
		width: 180px !important;
	}

	.server-usage>div {
		display: table-cell;
		vertical-align: middle;
		width: 75.2%;
		padding-left: 10px;
	}

	/*---------------------------------

		リコーOSO

	---------------------------------*/
	/* 横並び(3段) */
	.oso-confirm-area {
		padding: 20px;
		margin-bottom: 20px;
	}

	.oso-confirm-area+.form-btn {
		margin-top: 40px;
	}

	.oso-confirm-area>.oso-form-row {
		display: flex;
		align-items: baseline;
		margin-bottom: 20px;
	}

	.oso-confirm-area>.oso-form-row:last-child {
		margin-bottom: 0;
	}

	.oso-confirm-area>.row-3>.form-cat {
		width: calc(100% / 3);
		margin-bottom: 0;
	}

	.oso-confirm-area>.row-2>.form-cat {
		width: calc(100% / 2);
		margin-bottom: 0;
	}

	/*---------------------------------

		サプライオーダー

	---------------------------------*/
	table.supply-table .total>* {
		text-align: right !important;
	}

	table.supply-table th:last-child {
		width: 86px;
	}

	/*---------------------------------

		PCA HUB シミュレーション

	---------------------------------*/
	/* ※list */
	ul.pcahubsim-asterisk {
		margin-top: 1px;
	}

	ul.pcahubsim-asterisk>li {
		list-style-type: none;
		list-style-position: inside;
	}

	ul.pcahubsim-asterisk>li::before {
		content: "※ ";
		display: inline;
	}

	/* ※ 数字 */
	ol.pcahubsim-list-parentheses {
		margin-bottom: 0px;
	}

	ol.pcahubsim-list-parentheses>li {
		counter-increment: cnt;
		list-style-type: none;
		list-style-position: inside;
	}

	ol.pcahubsim-list-parentheses>li:before {
		display: marker;
		content: "※" counter(cnt) " ";
	}

	ol.pcahubsim-list-parentheses li>* {
		text-indent: initial;
	}

	/* 静的コンテンツからコピー */
	.pcBlock {
		display: block !important;
	}

	.spBlock {
		display: none !important;
	}

	/*---------------------------------

		キャンペーン 2023 year

	---------------------------------*/
	.campaign-subtitle {
		font-size: 18px;
		font-weight: bold;
		margin: 8px 0;
		padding-left: 1.2em;
		position: relative;
	}

	.campaign-subtitle::before {
		color: #00529f;
		font-family: "Font Awesome 5 Free";
		content: "\f111";
		position: absolute;
		left: 0;
		top: 3px;
	}
}

/* 850px~ */
@media screen and (min-width: 850px) {
	.col-5 .card {
		width: calc((100% - 4em) / 5);
	}

	.col-5::after {
		content: "";
		display: block;
		width: calc((100% - 4em) / 5);
	}

	.col-5::before {
		order: 1;
	}
}
/* ~850px */
@media screen and (max-width: 850px) {
	/* card */
	.col-5::after {
        content: "";
        display: block;
        width: calc((100% - 2em) / 3);
    }
	
	.col-5 .card {
		width: calc((100% - 2em) / 3);
	}

	.col-5 .card:nth-of-type(2n) {
		margin-right: 0;
	}	
}
/* ~530px */
@media screen and (max-width: 530px) {
	.col-5 .card {
		width: calc((100% - 1em) / 2);
	}
}

/* 静的コンテンツからコピー */
.as_col_2 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	list-style: none;
	padding: 0 10px;
	margin: 25px 0 0;
}
.as_col_2 > li {
	width: calc((100% - 1em) / 2);
}

.as_software_list {
	background-color: #fff;
	margin: 15px 0;
}
.as_border_blue {
	border: 1px solid #00529F;
}
.as_border_orange {
	border: 1px solid #FF8E3F;
}
.as_software_list a {
	text-decoration: none;
}
.as_software_list .as_software_list_img {
	max-width: 250px;
	margin: 10px auto;
}
.as_software_list .as_software_list_txt {
	font-weight: bold;
	font-size: 18px;
	text-align: center;
	padding: 0 10px;;
	color: #000;
}
.as_software_list .as_txt_top_blue {
	color: #fff;
	background-color: #00529F;
}
.as_software_list .as_txt_top_orange {
	color: #fff;
	background-color: #FF8E3F;
}
.as_software_btn {
	text-align: center;
	padding: 15px;
}
.as_software_btn span {
	display: inline-block;
	padding: 6px 20px;
	border-radius: 25px;
	color: #fff;
	font-weight: bold;
	margin: 0 auto;
}
.as_software_btn span.as_btn_blue {
	background-color: #00529F;
}
.as_software_btn span.as_btn_orange {
	background-color: #FF8E3F;
}
@media screen and (max-width: 900px), print {
	.as_col_2 > li {
		width: 100%;
	}
}
/* オンライン個別相談会エントリー */
.page-header-isg {
	background-color: #dbeafb !important;
}

span.title-jp-blue {
	color: #365a9d;
	display: block;
}

span.title-en-blue {
	color: #51a8cd;
}

.suggest-point {
	margin: 0 20px;
}

.suggest-point .title-suggest {
	font-size: 26px;
	color: #365a9d;
	text-align: center;
}

.suggest-point .col-4 .point-card {
	margin: 20px 0 0;
	width: calc((100% / 4) - 25px);
	list-style-type: none;
	display: flex;
	flex-direction: column;
}

.point-card img {
	width: 100%;
	display: block;
}

.point-content {
	display: flex;
	flex-direction: column;
}

.point-content p {
	margin: 5px 0;
}

.point-content .point-number {
	font-size: 16px;
	color: #51a8cd;
	font-weight: bold;
}

.point-content .point-number span {
	font-size: 24px;
}

.point-content .point-title {
	font-size: 16px;
	color: #5791d3;
	font-weight: bold;
}

@media screen and (min-width: 750px), print {
	.point-content .point-title {
		height: 4em;
	}
}

@media screen and (max-width: 750px), print {
	.suggest-point .col-4 .point-card {
		width: calc((100% / 2) - 10px);
	}
}

@media screen and (max-width: 500px), print {
	.suggest-point .col-4 .point-card {
		width: 100%;
	}
}
/* end */