@charset "utf-8";

/* root */
:root {
	/* color */
	--color-white: #fff;
	--color-black: #000;
	--color-cyan: #778ca3;
	--color-light-gray: #ccc;

	/* タブ */
	--tab-btn-text-color: #4d4c4c; /* タブを開いたときのボタンのテキストの色 */
	--tab-btn-color: #a8892b; /* タブを開いたときの検索項目のボタンの色 */
	--tab-active-color: #fceed4; /* タブがアクティブ・マウスオーバーしたときの色 */
	/* ページネーション */
	--page-link-bk-color: #afafaf; /* ページネーションの背景色 */
	--page-link-hover-color: #e6e3e3; /* ページネーションをマウスオーバーしたときの色 */
	--page-btn-disabled-color: #f5f5f5; /* ページネーションにdisabledをかけたときの色 */
	--page-active-portal-color: #295ba5; /* ページネーションがactiveのときの色(ポータル用) */
	--page-active-search-color: #f19d09; /* ページネーションがactiveのときの色(検索画面用) */
	/* ヘッダー */
	--purpose-icon-color: #90b900; /* 目的のアイコンの色 */
	--area-icon-color: #6eb8fa; /* エリアのアイコンの色 */
	--category-icon-color: #ffd63d; /* カテゴリのアイコンの色 */
	--price-icon-color: #f19d09; /* 料金のアイコンの色 */
	/* 利用者 */
	--user-color: #21a100;
	/* 管理者 */
	--admin-color: #295ba5;
	/* 検索系画面の色 */
	--search-color: #f19d09;
	/* 見出し */
	--seo-h1-color: #4d4c4c; /* 検索一覧のh1用の見出しの色 */
	--seo-h1-bk-color: #fceed4; /* 検索一覧のh1用の見出しの背景色 */
	--seo-h1-before-color: #f19d09; /* 検索一覧のh1用の見出しの折れ目の色 */

	/* ポータル */
	--bell-color: #21a100; /* 通知のベルの色 */
	/* ストック */
	--stock-color: #2dacd1; /* ストックの色 */
	/* オプション */
	--top-banner-color: #209e91; /* トップバナーの色 */
	--side-banner-color: #90b900; /* サイドバナーの色 */
	--search-rank-color: #e85656; /* 検索順位ーの色 */
	--lead-color: #dfb81c; /* リード情報ーの色 */
	--top-page-color: #fccdb6; /* トップページの色 */
	--category-color: #fcedb6; /* カテゴリの色 */
	--purpose-color: #e7fcb6; /* 目的の色 */
	--area-color: #f0f8ff; /* エリアの色 */
	--option-bk-color: #f5f5f5; /* オプションテーブルの背景色 */
	--option-btm-border-color: #999797; /* オプションリストの見出しの下線の色 */
	--table-content-color: #999797;
	--limited-time-shiny-color: #f19d09; /* 「期間限定」の光の色 */
	--option-arrow-color: #f19d09; /* 割引ありのときの矢印の色 */

	/* 請求書 */
	--invoice-color: #afafaf; /* 請求書の枠線の色 */
	/* 利用規約 */
	--terms-border-color: #999797; /* 利用規約の枠線の色 */
	/* 詳細画面 */
	--detail-color: #f0f8ff; /* 詳細画面の項目の色 */
	--detail-search-color: #fceed4; /* 詳細画面の項目の色(検索系画面) */
	/* 五段階評価 */
	--star-color: #FFD600; /* 五段階評価の星の色 */
	--star-none-color: #afafaf; /* 五段階評価の評価がないときの星の色 */
	/* ボタン */
	--click-user-color: #fcedb6; /* 「お申込みはこちら」のボタンの色 */
	--btn-border-shadow-color: #fcedb6; /* 「お申込みはこちら」のボタンの色 */
	/* リボン */
	--ribbon-color: #e85656; /* リボンの色 */
	/* 進捗バー */
	--progressbar-color: #ffda96; /* 進捗バーの色 */
	/* アイコン */
	--pass-icon-color: #f19d09; /* メール送信完了のときのアイコンの色 */
	--icon-check-color: #f19d09; /* チェックマークのアイコンの色 */
	--completion-color: #f19d09; /* 完了画面のアイコンの色 */
	/* テキストの左側の縦線の色 */
	--border-left-design-color: #21a100;
	/* 登録・更新時の注意書きの色 */
	--warning-text-color: #dc3545;
	/* 注意書きの色 */
	--danger-color: #dc3545;
	/* エラーメッセージの色 */
	--error-color: #dc3545;
	/* 料金 */
	--price-color: blue; /* 料金詳細画面の合計料金の色 */

	/* 会員登録せずに資料請求 */
	--non-user-border-color: #90b900; /* 見出しの下線の色 */
	--non-user-headline-color: #f5f5f5; /* 見出しの背景の色 */
	/* size */
	/* 線の太さ */
	--border-w-sm: 1px;
	--border-w-md: 3px;
	--border-w-lg: 5px;

	/* 図形サイズ */
	--shape-w-sm: 60px;
	--shape-h-sm: 60px;
	--shape-t-sm: 20px;
}

html {
	min-height:100%;
	height:100%;
}
body {
	min-height:100%;
	height:100%;
	position: relative;
	box-sizing: border-box;
}
.main {
	max-width: 991px;
	margin-left: auto;
	margin-right: auto;
}
/* ローディング */
.ajax-connect-loading {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	background: rgba(0,0,0,0.6);
	z-index: 999;
}
.ajax-connect-loading > .spinner {
	width: 100%;
	height: 100%;
	z-index: 1000;
}

/* KEYFRAMES */
@keyframes pulse {
	from {
		opacity: 1;
		transform: scale(1);
	}
	to {
		opacity: .25;
		transform: scale(.75);
	}
}

/* PULSE BUBBLES */
.pulse-container {
	width: 75px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	text-align: center;
}

.pulse-bubble {
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background-color: #3ff9dc;
}

.pulse-bubble-1 {
	animation: pulse .6s ease 0s infinite alternate;
}
.pulse-bubble-2 {
	animation: pulse .6s ease .2s infinite alternate;
}
.pulse-bubble-3 {
	animation: pulse .6s ease .6s infinite alternate;
}


textarea {
	/* 縦方向のみリサイズ可能 */
	resize: vertical;
}
.form-control-ref {
	color:#212529!important;
	border-color:transparent transparent #ced4da transparent!important;
	background-color:#f8f9fa!important;
	border-radius:0!important;
}
.form-check-input:checked {
	background-color: #a3cfbb!important;
	border-color: #a3cfbb!important;
}

/* 並列記載すると効果が出ないことがある */
/* placeholder */
input::placeholder {
	color:rgba(0,0,0,.5)!important;
}
input::-webkit-input-placeholder {
	color:rgba(0,0,0,.5)!important;
}
input:-moz-placeholder {
	color:rgba(0,0,0,.5)!important;
}
input::-moz-placeholder {
	color:rgba(0,0,0,.5)!important;
}
input:-ms-input-placeholder {
	color:rgba(0,0,0,.5)!important;
}
textarea::placeholder {
	color:rgba(0,0,0,.5)!important;
}
textarea::-webkit-input-placeholder {
	color:rgba(0,0,0,.5)!important;
}
textarea:-moz-placeholder {
	color:rgba(0,0,0,.5)!important;
}
textarea::-moz-placeholder {
	color:rgba(0,0,0,.5)!important;
}
textarea:-ms-input-placeholder {
	color:rgba(0,0,0,.5)!important;
}

/* scrollbar */
::-webkit-scrollbar {
	width:8px;
	height:8px;
}
::-webkit-scrollbar-track {
	background-color:#f8f9fa!important;
	border-radius:4px;
}
::-webkit-scrollbar-thumb {
	background-color:#6c757d!important;
	border-radius:4px;
}
/* side menu */
#wrapper {
	position: relative;
	min-height:100%;
}
#sidebar-wrapper {
	z-index:999;
	position: absolute;
	width:0;
	overflow-y:hidden;
	transition:all .5s;
	min-height:100%;
}
#page-content-wrapper {
	transition:all .5s;
}
#wrapper.menu-displayed #sidebar-wrapper {
	width:250px;
	height:100%;
}
#wrapper.menu-displayed #page-content-wrapper {
	padding-left:250px;
}
.accordion-button {
	border-radius:.2rem!important;
}

/* 文字の色を指定したいときに使用 */
.color-white {
	color: var(--color-white); 
}
.color-black {
	color: var(--color-black); 
}

/* 線の色を設定したいときに使用 */
/* 枠線 */
.border-color-light-gray {
	border-color: var(--color-light-gray);
}
/* 左線 */
.border-left-color-light-gray {
	border-left-color: var(--color-light-gray);
}
/* 右線 */
.border-right-color-light-gray {
	border-right-color: var(--color-light-gray);
}

/* 線のデザインを設定したいときに使用 */
/* 線無し */
.border-none {
	border: none;
}
/* 枠線 */
.border-style-solid {
	border-style: solid;
}
/* 左線 */
.border-left-style-solid {
	border-left-style: solid;
}
.border-left-style-dotted {
	border-left-style: dotted;
}
/* 右線 */
.border-rigth-style-dotted {
	border-right-style: dotted;
}

/* 線の太さを設定したいときに使用 */
/* 枠線 */
.border-w-sm {
	border-width: var(--border-w-sm);
}
.border-w-md {
	border-width: var(--border-w-md);
}
/* 左線 */
.border-left-w-sm {
	border-left-width: var(--border-w-sm);
}
/* 右線 */
.border-right-w-sm {
	border-right-width: var(--border-w-sm);
}

/* テキストの左側に縦線を表示 */
.border-left-design {
	border-left: solid 5px var(--border-left-design-color);
}

/* テキストのデザインを設定したいときに使用 */
.text-decoration-none {
	text-decoration: none;
}

/* マウスオーバーのデザインを設定したいときに使用 */
.hover-action:hover {
	color: var(--color-white);
}

/* 登録・更新時の注意書きの色を設定 */
.warning-text-color {
	color: var(--warning-text-color);
}

/* 文字に3点リーダーを設定したいときに使用 */
.three-dot-leader-sm {
	/* 1行対応 */
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.three-dot-leader-md {
	/* 2行対応 */
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2; /* 何行表示させるか指定 */
}
.three-dot-leader-lg {
	/* 2行対応 */
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3; /* 何行表示させるか指定 */
}

/* shape size */
/* 図形のサイズを設定 */
.shape-w-sm {
	width: var(--shape-w-sm);
}
.shape-h-sm {
	height: var(--shape-h-sm);
}
.shape-t-sm {
	top: var(--shape-t-sm);
}

/* diamond */
/* ひし形を設定したいときに使用 */
.diamond {
	/* ひし形の枠 */
	transform: rotate(45deg);
	position: relative;
}
.diamond-text {
	/* ひし形の中のテキストを調整 */
	transform: rotate(-45deg); /* テキストの傾きのみ戻す */
	text-align: center;
	position: absolute;
}

/* ribbon */
/* リボン風のデザインを設定したいときに使用 */
.ribbon {
	line-height: 60px;
	position: relative;
	height: 60px;
	/* margin: 2em 50px 1em; */
	padding: 0 2rem;
	text-align: center;
	background-color: var(--ribbon-color);
}
.ribbon:before,
.ribbon:after {
	position: absolute;
	top: 0;
	display: block;
	height: 48px;
	content: '';
	border: 30px solid var(--ribbon-color);
}
.ribbon:before {
	left: -40px;
	border-left-width: 15px;
	border-left-color: transparent;
}
.ribbon:after {
	right: -40px;
	border-right-width: 15px;
	border-right-color: transparent;
}

/* tab */
.tab.active {
	background-color: var(--tab-active-color);
}
.tab:hover {
	background-color: var(--tab-active-color);
}
.tab-list {
	/* タブ内のテキストデザインを設定 */
	color: var(--color-black);
	font-size: 15px;
	font-weight: bold;
	text-decoration: none;
}
.area {
	display: none;
}
.button-name {
	/* タブを開いたときの検索項目のデザインを設定 */
	color: var(--tab-btn-text-color);
	font-weight: bold;
	box-shadow: 0 2px 0 var(--tab-btn-color);
}

/* ツールチップの自動改行を防ぐために設定 */
/* ツールチップ内で改行を行う場合には、data-bs-html="true"を設定して自分で改行する場所を決める */
.tooltip-inner {
	word-break: break-all;
	text-align: left;
	max-width: none;
}

/* h1 */
/* SEO対策用のh1タグに使用する */
.seo-h1 {
	position: relative;
	background: var(--seo-h1-bk-color);
	box-shadow: 0px 0px 0px 5px var(--seo-h1-bk-color);
	border: dashed 2px var(--color-white);
	padding: 0.2em 0.5em;
	color: var(--seo-h1-color);
}
.seo-h1::before {
	position: absolute;
	content: '';
	left: -7px;
	top: -7px;
	border-width: 0 0 15px 15px;
	border-style: solid;
	border-color: var(--color-white) var(--color-white) var(--seo-h1-before-color);
	box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}

/* danger */
/* 注意書きの色を設定 */
.danger {
	color: var(--danger-color);
}

/* form */
/* 画面下にボタンを固定して表示するときに設定 */
.form-add {
	position: sticky;
	bottom: 0;
	z-index: 1;
	padding-top: 20px;
	padding-bottom: 20px;
	background: rgba(160, 153, 153, 0.719);
}

/* error */
/* エラーメッセージの設定 */
.error {
	color: var(--error-color);
}

/* お問い合わせ確認画面の色を設定 */
.inquiry-color {
	background-color: var(--detail-search-color);
}

/* 検索ページの項目の色を設定 */
.search-color {
	background-color: var(--detail-search-color);
}

/* 詳細ページの項目名の色を設定 */
.detail-color {
	background-color: var(--detail-color);
}

/* 検索項目のアイコンカラーを設定 */
.category-icon-color {
	color: var(--category-icon-color);
}
.purpose-icon-color {
	color: var(--purpose-icon-color);
}
.area-icon-color {
	color: var(--area-icon-color);
}
.price-icon-color {
	color: var(--price-icon-color);
}

/* table */
.table-center {
	vertical-align: middle;
}
/* テーブル内の文字を三点リーダーで表示するために設定 */
table .td-three-dot-leader {
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
	max-width: 0;
}
/* テーブルに三点リーダーをかけたときに使用する(三点リーダーが発動してレスポンシブ時に横スクロールが出なくなることを防ぐため) */
/* 主に一覧画面で画面いっぱいまでテーブルを表示するときに使用する */
.table-w {
	min-width: 960px;
}
/* ストック */
.stock-color {
	background-color: var(--stock-color);
}
/* オプション */
.top-banner-color {
	background-color: var(--top-banner-color);
}
.side-banner-color {
	background-color: var(--side-banner-color);
}
.search-rank-color {
	background-color: var(--search-rank-color);
}
.lead-color {
	background-color: var(--lead-color);
}
/* オプションのカードの枠線の設定 */
.option-list-card {
	border: solid 3px var(--color-black);
}
.top-banner-border-color {
	border-color: var(--top-banner-color);
}
.side-banner-border-color {
	border-color: var(--side-banner-color);
}
.search-rank-border-color {
	border-color: var(--search-rank-color);
}
.lead-border-color {
	border-color: var(--lead-color);
}
/* オプションリスト見出しの下に二重線を表示 */
.option-btm-border {
	border-bottom: double 5px var(--option-btm-border-color);
}
/* オプションのテーブルのデザインを設定 */
.option-table td,
.option-table th {
  border: 1px solid var(--color-light-gray);
  border-collapse: collapse;
}
.option-table .option-th {
	font-size: 20px;
	padding: 20px 0px 20px 0px;
}
.option-table .option-th-color {
	color: var(--color-white);
}
.option-table .top-page-color {
	background-color: var(--top-page-color);
}
.option-table .category-color {
	background-color: var(--category-color);
}
.option-table .purpose-color {
	background-color: var(--purpose-color);
}
.option-table .area-color {
	background-color: var(--area-color);
}
.option-table .search-rank-color {
	background-color: var(--search-rank-color);
}
.option-table .lead-color {
	background-color: var(--lead-color);
}
.option-table .option-bk-color {
	background: var(--option-bk-color);
	font-size: 20px;
	font-weight: bold;
}
.option-table .fa-caret-down {
	color: var(--option-arrow-color);
}
.option-table .border-cancel {
	border: none;
}
.padding-control {
	padding-right: 100px;
}
/* 比較系の表を作成するときに使用する */
.comparison-table thead {
	background-color: #b7d0f5;
	border: solid 1px #778ca3;
}
.comparison-table tbody {
	border: solid 1px #778ca3;
}
.comparison-table th {
	border-right: solid 1px #778ca3;
}
.comparison-table td {
	border-right: solid 1px #778ca3;
}
.comparison-table tr.price-total {
	font-weight: bold;
	font-size: 20px;
	border-bottom: solid 1px #778ca3;
}
.comparison-table tr.list-title {
	font-size: 18px;
}
.comparison-table .option-list {
	font-size: 13px;
}
.comparison-table .td-top-border {
	border-top: solid 1px var(--color-cyan);
}
.price-search {
	background-color: #f1f2f3; /* 検索箇所の背景色 */
}
/* 掲載企業・管理者の料金詳細のテーブル */
.price-detail-table>:not(caption)>*>* {
	padding: 1rem 0.5rem;
	background-color: var(--bs-table-bg);
	border-bottom-width: 1px;
	box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg);
}
.price-detail-table {
	margin-bottom: 0;
}
.price-detail-table tr:last-child td {
	border-bottom:none;
}
.price-detail-card .price {
	color: var(--price-color);
}
.price-detail-card-body {
	padding: 0 1rem;
}
/* テーブルが一行に2つある場合に交互に色を設定 */
.column-table tr:nth-child(4n+1) {
	background-color: var(--bs-table-striped-bg);
}
.column-table tr:nth-child(4n+2) {
	background-color: var(--bs-table-striped-bg);
}
/*　tableにスクロールバーを設定*/
.table_sticky {
	display: block;
	overflow-y: scroll;
	height: 100px;
	border:1px solid;
	border-collapse: collapse;
}
.table_sticky thead th {
	position: sticky;
	top: 0;
	z-index: 1;
	border-top: var(--color-white);
}

/* 請求書のデザインを設定 */
.invoice-border {
	border: 1px solid var(--invoice-color);
}
.invoice-table th,
.invoice-table td {
	border: 1px solid var(--invoice-color);
}
.invoice-table .border-cancel {
	border: none;
}
.invoice-size {
	width: 210mm;
	height: 297mm;
	margin-left: auto;
	margin-right: auto;
}
.invoice-bottom {
	padding-bottom: 50px;
}
@media print {
	/* 請求書印刷時に適用するスタイル */
	.invoice-border {
		border: none;
		margin: 0;
	}
	.print-none {
		display: none;
	}
	.invoice-bottom {
		padding-bottom: 0px;
	}
}


/* button */
/* ボタンの文字の色・背景色を変更したいときに設定 */
.bk-btn-color {
	background-color: var(--color-white);
}
.btn-color {
	color: var(--color-white);
}
/* ボタンをdisabled状態の色にしたいときに設定 */
.btn-disabled {
	opacity: .65;
}
/* 「お問い合わせはこちら」のボタンデザインを設定 */
.btn-decoration,
a.btn-decoration,
button.btn-decoration {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: var(--color-black);
  border-radius: 0.5rem;
}
a.btn-border-shadow {
  padding: calc(1.5rem - 12px) 2.5rem 1.5rem;
  background: var(--color-white);
}
a.btn-border-shadow:before {
  position: absolute;
  top: -6px;
  left: -6px;
  width: 100%;
  height: 100%;
  content: "";
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  border: 3px solid var(--color-black);
  border-radius: 0.5rem;
}
a.btn-border-shadow:hover {
  padding: calc(1.5rem - 6px) 3rem;
}
a.btn-border-shadow:hover:before {
  top: 0;
  left: 0;
}
a.btn-border-shadow--color {
  border-radius: 0;
  background: var(--btn-border-shadow-color);
}
a.btn-border-shadow--color:before {
  border-radius: 0;
}

/* link */
.link-color {
	color:var(--color-black);
}
.link-dedecoration {
	text-decoration: none;
}

/* icon */
.icon-danger {
	font-size: 70px;
	color: var(--color-light-gray);
}
.pass-icon-color {
	color: var(--pass-icon-color);
}
/* チェックアイコンの設定 */
.icon-check {
	color : var(--icon-check-color);
	font-size: 25px;
}
/* 通知のベルのアイコン設定 */
.icon-bell {
	display: inline-block;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var(--color-white);
	line-height: 40px;
	color: var(--bell-color);
}
/* メール送信完了時のアイコンの設定 */
.icon-mail {
	color: var(--completion-color);
	font-size: 70px;
}

/* タイトル等に下線を引きたい場合に使用する */
.border-btm {
	border-bottom: 2px solid var(--search-color);
}
/* タイトルに付けたアイコンの色を設定する */
.border-btm > i {
	color: var(--search-color);
}
/* 非会員の資料請求ページの見出しを設定する */
.headline-design {
	padding: 0.5em;
	background: var(--non-user-headline-color);
	border-bottom: solid 3px var(--non-user-border-color);
}

/* star */
/* 五段階評価の星の設定を行う */
.star5_rating {
	position: relative;
	z-index: 0;
	display: inline-block;
	white-space: nowrap;
	color: var(--star-none-color);
}
.star5_rating:before, .star5_rating:after {
	content: "\f005\f005\f005\f005\f005";
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
}
.star5_rating:after {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	overflow: hidden;
	white-space: pre;
	color: var(--star-color);
}
.star5_rating[data-rate="5.0"]:after { width: 100%; } /* 星5 */
.star5_rating[data-rate="5"]:after { width: 100%; } /* 星5 */
.star5_rating[data-rate="4.5"]:after { width: 90%; } /* 星4.5 */
.star5_rating[data-rate="4.0"]:after { width: 80%; } /* 星4 */
.star5_rating[data-rate="4"]:after { width: 80%; } /* 星4 */
.star5_rating[data-rate="3.5"]:after { width: 70%; } /* 星3.5 */
.star5_rating[data-rate="3.0"]:after { width: 60%; } /* 星3 */
.star5_rating[data-rate="3"]:after { width: 60%; } /* 星3 */
.star5_rating[data-rate="2.5"]:after { width: 50%; } /* 星2.5 */
.star5_rating[data-rate="2.0"]:after { width: 40%; } /* 星2 */
.star5_rating[data-rate="2"]:after { width: 40%; } /* 星2 */
.star5_rating[data-rate="1.5"]:after { width: 30%; } /* 星1.5 */
.star5_rating[data-rate="1.0"]:after { width: 20%; } /* 星1 */
.star5_rating[data-rate="1"]:after { width: 20%; } /* 星1 */
.star5_rating[data-rate="0.5"]:after { width: 10%; } /* 星0.5 */
.star5_rating[data-rate="0.0"]:after { width: 0%; } /* 星0 */
.star5_rating[data-rate="0"]:after { width: 0%; } /* 星0 */

/* 確認画面系の画面のコンテンツ量が少ない時の幅を設定する。 */
.confirmation-w {
	max-width: 480px;
}

/* pagenation */
/* ページネーション基本設定 */
.page-link {
	color: var(--color-white)!important;
	font-size: 13px;
	border: none;
	background-color: var(--page-link-bk-color)!important;
	margin: 0 3px;
	padding: 13px;
}
.page-link:hover {
	color: var(--color-white)!important;
	background-color: var(--page-link-hover-color)!important;
}

/* ページネーションがactiveのときの色を指定 */
.page-color-orange.active .page-link {
	/* 主に検索画面で使用 */
	background-color: var(--page-active-search-color)!important;
}
.page-color-blue.active .page-link {
	/* 主にポータルで使用 */
	background-color: var(--page-active-portal-color)!important;
}
.page-dot-color .page-link {
	/* ページネーション内の三点リーダーの色を設定 */
	color: var(--color-black)!important;
	background-color: var(--color-white)!important;
}
.page-bnt.disabled .page-link {
	color: var(--color-light-gray)!important;
	background-color: var(--page-btn-disabled-color)!important;
}

/* shiny */
/* 期間限定の表示の光を設定 */
@keyframes shiny {
	0% {
		transform: scale(0) rotate(25deg);
		opacity: 0;
	}

	50% {
		transform: scale(1) rotate(25deg);
		opacity: 1;
	}

	100% {
		transform: scale(50) rotate(25deg);
		opacity: 0;
	}
}
.shiny {
	position: relative;
	display: block;
	width: 100%;
	height: 40px;
	line-height: 40px;
	text-align: center;
	text-decoration: none;
	color: var(--color-white);
	background-color: var(--limited-time-shiny-color);
	overflow: hidden;
	font-weight: bold;
}
.shiny::after {
	content: '';
	position: absolute;
	top: -100px;
	left: -100px;
	width: 50px;
	height: 50px;
	background-image: linear-gradient(100deg,  rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 1) 100%, rgba(255, 255, 255, 0) 0%);
	
	/* アニメーション */
	animation-name: shiny;
	animation-duration: 3s;
	animation-timing-function: ease-in-out;
	animation-iteration-count: infinite;
}

/* 進捗状況を設定 */
/* 進捗が3個用 */
.progressbar {
	display: flex;
	flex-wrap: wrap;
}
.progressbar .item {
	position: relative;
	width: 33%; /* 4個にしたい場合、個別のcssで25%を設定 */
	text-align: center;
	position: relative;
	align-items: center;
	justify-content: center;
	padding: 13px 0;
	line-height: 15px;
	background: #F5F5F5;
	color: #535353;
}
.progressbar .item:not(:last-child)::before,
.progressbar .item:not(:last-child)::after {
	position: absolute;
	z-index: 2;
	top: 0;
	bottom: 0;
	left: 100%;
	content: '';
	border: 28px solid transparent;
	border-left: 20px solid #F5F5F5;
	margin: auto;
}
.progressbar .item:not(:last-child)::before {
	margin-left: 1px;
	border-left-color: var(--color-white);
}

@media screen and (max-width: 767px) {
.progressbar .item {
	font-size: 11px;
	line-height: 1.4;
	padding: 10px 0;
}
.progressbar .item:not(:last-child)::before,
.progressbar .item:not(:last-child)::after {
	border-width: 25px;
	border-left-width: 12px;
}
}
/* 進捗状況がactiveのときのデザインを設定 */
.progressbar .item.active {
	z-index: 1;
	background: var(--progressbar-color);
	color: #535353;
	font-weight: bold;
}
.progressbar .item.active:not(:last-child)::after {
	border-left-color: var(--progressbar-color);
}
.progressbar .item.active:not(:last-child)::before {
	border-left: none;
}

/* 利用規約のデザインの設定 */
iframe {
	border: 1px solid var(--terms-border-color);
}
input[type="checkbox"] {
	transform: scale(1.5);
}
.form-check-label {
	font-size: 17px;
}

.table-content {
	/* テキストのサイズ・デザインを設定 */
	font-weight: bold;
	font-size: 40px;
	color: var(--table-content-color);
}
.table-content2 {
	/* テキストのサイズ・デザインを設定 */
	font-weight: bold;
	font-size: 40px;
	color: var(--table-content-color);
}
