html {
	height: 100%;
	/* スマホを横向きにしても文字が大きくならない */
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

:root {
	--va-saraciere-bgc_base: hsla(0, 0%, 100%, 1);
	--va-saraciere-bgc_assort: hsla(225, 24%, 14%, 1);
	--va-saraciere-bgc_accent: hsla(225, 34%, 54%, 1);
	--va-saraciere-c_p: #1C1C1C;
}

/* remベース（スマホ）：1rem = 10px */
@media screen and (max-width: 743.9px) {
	html {
		font-size: 62.5%;
	}

	:root {
		--va-saraciere-ff_base: 'Noto Sans JP', sans-serif;
		--va-saraciere-fw_base: 400;
		--va-saraciere-fz_p: clamp(16px, calc(16px + ((1vw - 3.6px) * 0.1563)), 17px);
		--va-saraciere-fz_small: clamp(11px, calc(11px + ((1vw - 3.6px) * 0.1563)), 12px);
		--va-saraciere-fz_em: clamp(16.4px, calc(16.4px + ((1vw - 3.6px) * 0.25)), 18px);
		--va-saraciere-fz_strong: clamp(20.4px, calc(20.4px + ((1vw - 3.6px) * 0.71875)), 25px);
	}
}

@media screen and (min-width: 744px) {
	html {
		font-size: 100%;
	}

	:root {
		--va-saraciere-ff_base: 'Noto Sans JP', sans-serif;
		--va-saraciere-fw_base: 400;
		--va-saraciere-fz_p: 17px;
		--va-saraciere-fz_small: 12px;
		--va-saraciere-fz_em: 18px;
		--va-saraciere-fz_strong: 25px;
		--va-saraciere-c_p: #1C1C1C;
	}
}

body {
	position: relative;
	z-index: 0;
	width: 100%;
	height: 100%;
	/* IEで疑似要素を表示させる用 */
	text-rendering: optimizeLegibility;
	font-kerning: normal;
	font-variant-ligatures: common-ligatures contextual;
	font-feature-settings: "kern", "liga", "clig", "calt";
	/* フォントベース */
	line-height: 1.84;
	letter-spacing: 0.04em;
	font-size: var(--va-saraciere-fz_p);
	min-height: 0vw;
	font-weight: var(--va-saraciere-fw_base);
	color: var(--va-saraciere-c_p);
	/* 役物の字詰めを綺麗にする */
	font-feature-settings: "palt";
}

/* タブレット */
body.tablet {
	min-width: 1200px;
}

/* ベース・ゴシック体 */
body,
body .gothic {
	font-family: var(--va-saraciere-ff_base);
}

/* 背景 */
.marble-saraciere {
	position: relative;
	z-index: -1;
	width: 100%;
	height: auto;
	background-color: #434343;
	background-image: linear-gradient(#FEFEFE, #EEEEFB);
}

.marble-saraciere::before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	margin: auto;
	width: 100%;
	height: 100%;
	background-image:
		linear-gradient(0deg, transparent 9%,
			rgba(0, 0, 0, 0.04) 10%, rgba(0, 0, 0, 0.04) 12%, transparent 13%, transparent 29%,
			rgba(0, 0, 0, 0.02) 30%, rgba(0, 0, 0, 0.02) 31%, transparent 32%, transparent 49%,
			rgba(0, 0, 0, 0.02) 50%, rgba(0, 0, 0, 0.02) 51%, transparent 52%, transparent 69%,
			rgba(0, 0, 0, 0.02) 70%, rgba(0, 0, 0, 0.02) 71%, transparent 72%, transparent 89%,
			rgba(0, 0, 0, 0.02) 90%, rgba(0, 0, 0, 0.02) 91%, transparent 92%, transparent),
		linear-gradient(90deg, transparent 9%,
			rgba(0, 0, 0, 0.04) 10%, rgba(0, 0, 0, 0.04) 12%, transparent 13%, transparent 29%,
			rgba(0, 0, 0, 0.02) 30%, rgba(0, 0, 0, 0.02) 31%, transparent 32%, transparent 49%,
			rgba(0, 0, 0, 0.02) 50%, rgba(0, 0, 0, 0.02) 51%, transparent 52%, transparent 69%,
			rgba(0, 0, 0, 0.02) 70%, rgba(0, 0, 0, 0.02) 71%, transparent 72%, transparent 89%,
			rgba(0, 0, 0, 0.02) 90%, rgba(0, 0, 0, 0.02) 91%, transparent 92%, transparent);
	background-repeat: repeat;
	background-size: 50px 50px;
	background-color: transparent;
	pointer-events: none;
}

/* display: none（PC） */
@media screen and (min-width: 744px) {
	.d-none_pc,
	img.d-none_pc {
		display: none;
	}
}

/* display: none（スマホ） */
@media screen and (max-width: 743.9px) {
	.d-none_sp,
	img.d-none_sp {
		display: none;
	}
}

/* border-box, reset */
*,
*::before,
*::after {
	margin: 0;
	padding: 0;
	margin-block-start: 0;
	margin-block-end: 0;
	padding-inline-start: 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

/* 一応おまじないで指定（旧ブラウザ対策） */
article,
aside,
dialog,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section {
	margin: 0;
	padding: 0;
	display: block;
	font-size: 100%;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}

/* clearfix */
.clearfix:after,
.is-clearfix:after {
	content: "";
	display: block;
	clear: both;
}

/* sr-only（スクリーンリーダーのみ） */
.sr-only {
	position: absolute;
	clip: rect(1px, 1px, 1px, 1px);
	border: 0;
	height: 1px;
	width: 1px;
	overflow: hidden;
}

/* 画像系タグのリセット */
img,
picture,
iframe,
embed,
video,
svg,
img[src$=".svg"] {
display: inline-block;
width: auto;
height: auto;
max-width: 100%;
vertical-align: middle;
background-repeat: no-repeat;
background-size: cover;
shape-margin: 0.75pc;
object-fit: cover;
}

/* svg：非表示（フィルター） */
.svg-filter {
	position: absolute;
	overflow: hidden;
	width: 0;
	height: 0;
	visibility: hidden;
}

strong,
b,
dt,
dd,
th,
td {
	margin: 0;
	padding: 0;
	font-weight: var(--va-saraciere-fw_base);
}

u,
em,
s,
q,
ins,
del,
address {
	margin: 0;
	padding: 0;
	font-style: normal;
	text-decoration: none;
}

q::before,
q::after {
	content: "";
}

ruby,
rb,
rt,
rp {
	margin: 0;
	padding: 0;
	display: inline-block;
}

/* 下線（inline） */
u.underline {
	display: inline;
	text-decoration: underline solid hsla(0, 0%, 44%, 1);
  -webkit-text-decoration: underline solid hsla(0, 0%, 44%, 1);
	text-decoration-thickness: 1px;
	text-underline-offset: 5px;
}

/* inline-block */
i {
	margin: 0;
	padding: 0;
	font-style: normal;
	display: inline-block;
}

/* 斜体 */
i.italic {
	font-style: italic;
}

/* 取り消し線 */
s.strike {
	text-decoration: line-through;
}

/* マーカー（黄） */
mark.highlighter,
mark.highlighter.bg-banana {
	background: linear-gradient(transparent 62%, hsla(60, 100%, 50%, 0.7) 62%);
}

/* padding */
.is-padding {
	padding: var(--va-saraciere-fz_p);
}

/* 引用 */
q.quote {
	background: hsla(0, 0%, 92%, 1);
}

blockquote {
	margin: 0;
	padding: 0;
	background: hsla(0, 0%, 92%, 1);
}

hr {
	margin: 0;
	padding: 0;
	height: 0;
	border: 0;
	overflow: visible;
}

hr.hori-rule {
	margin-top: 10px;
	display: block;
	width: 100%;
	height: 1px;
	background: hsla(0, 0%, 64%, 1);
	clear: both;
}

/* ボタンスタイルリセット */
button {
	margin: 0;
	padding: 0;
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	appearance: none;
}

/* summaryの三角消去 */
details,
summary {
	margin: 0;
	padding: 0;
	list-style: none;
}

details summary::marker,
summary::-webkit-details-marker {
	display: none;
}

.ie summary::before {
	content: "" !important;
}

details summary:focus {
	outline: none;
}

details summary:focus {
	outline: none;
}

a {
	margin: 0;
	padding: 0;
	display: inline-block;
	color: inherit;
	text-decoration: none;
}

a:hover {
	color: inherit;
	filter: brightness(1.1)
}

/* a:アンカーリンク位置調整（ヘッダーpx） */
.a-murasa {
	margin-top: -95px;
	padding-top: 95px;
}

/* hover.css */
.sarafrntflma .hvr-sweep-to-right::before,
.sarabsnsfr7a .hvr-sweep-to-right::before {
	background: hsla(207, 43%, 48%, 1);
}

/* PCのときは電話リンク無効（※IE対策 = block or iBlock）*/
@media screen and (min-width: 744px) {
	a[href^="tel:"] {
		display: inline-block;
		pointer-events: none;
	}
}

/* スマホのときに画像拡大（.zoomIn_sp）*/
@media screen and (max-width: 743.9px) {
	a.zoomIn_sp {
		position: relative;
		display: inline-block;
	}

	a.zoomIn_sp::before {
		content: "拡大する";
		position: absolute;
		display: inline-flex;
		flex-direction: column;
		justify-content: flex-end;
		align-items: center;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		box-sizing: border-box;
		width: 120px;
		height: 87px;
		border-radius: 5px;
		transition: opacity .3s;
		font-size: 12px;
		text-align: center;
		padding: 20px 10px 8px 10px;
		background: url("../img/ornaments/search-wsh.png") no-repeat;
		background-size: 40px 40px;
		background-position: center 14px;
		background-color: hsla(223, 65%, 39%, 0.45);
		color: #FFF;
	}
}

@media screen and (min-width: 744px) {
	a.zoomIn_sp {
		pointer-events: none;
	}
}

/* cite>a（参照元） */
cite {
	margin: 0;
	padding: 0;
	font-style: normal;
}

cite>a {
	position: relative;
	display: inline-block;
	color: hsla(240, 64%, 27%, 0.85);
	text-decoration: underline;
	text-decoration-style: solid;
	text-decoration-color: hsla(240, 64%, 27%, 0.85);
	text-decoration-thickness: 1px;
	text-underline-offset: 5px;
}

cite>a:hover {
	color: hsla(240, 64%, 37%, 0.85);
	text-decoration-color: hsla(240, 64%, 37%, 0.85);
}

/* a:PDF */
cite>a[href$=".pdf"] {
	padding-right: 1.8em;
}

cite>a[href$=".pdf"]::after {
	position: absolute;
	right: 0%;
	bottom: 50%;
	transform: translate(0%, 10px);
	-webkit-transform: translate(0%, 10px);
	-moz-transform: translate(0%, 10px);
	margin: auto;
	width: 24px;
	height: 24px;
	content: url("https://icongr.am/material/file-pdf-box.svg?color=FF1414&size=24");
}

/* a:_blank */
cite>a[target="_blank"] {
	padding-right: 1.5em;
	margin-left: 0.2em;
	margin-right: 0.4em;
}

cite>a[target="_blank"]::after {
	position: absolute;
	right: 0%;
	bottom: 50%;
	transform: translate(0%, 0.7em);
	-webkit-transform: translate(0%, 0.7em);
	-moz-transform: translate(0%, 0.7em);
	margin: auto;
	width: 24px;
	height: 24px;
	content: url("https://icongr.am/material/open-in-new.svg?color=888888&size=24");
}

/* 明朝体 */
.mintyo,
.mincho {
	font-family: 'Shippori Mincho', serif;
	font-weight: 500;
}

/* 英数字用フォント */
.ff-Ssans {
	font-family: 'Source Sans Pro', sans-serif;
}

.ff-Sserif {
	font-family: 'Source Serif Pro', serif;
}

/* Roboto（Helveticaの代わり） */
.ff-Roboto {
	font-family: 'Roboto', sans-serif;
}

.ff-Oswald {
	font-family: 'Oswald', sans-serif;
}

/* Montserrat（一部使用） */
.ff-Montserrat {
	font-family: 'Montserrat', sans-serif;
}

.ff-EBGmon {
	font-family: 'EB Garamond', serif;
}

/* M PLUS Rounded 1c（丸文字 + ジャギ防止） */
.ff-mRounded {
	font-family: 'M PLUS Rounded 1c', sans-serif;
	transform: rotateZ(0.03deg);
}




/* 画像（.box.is-float） 
-------------------------------------- */
.box.is-fl-left-visible,
.box.is-fl-left-hidden,
.box.is-fl-right-visible,
.box.is-fl-right-hidden {
	position: relative;
	overflow: hidden;
}

.box.is-fl-left-visible::after,
.box.is-fl-left-hidden::after,
.box.is-fl-right-visible::after,
.box.is-fl-right-hidden::after {
	content: "";
	display: block;
	clear: both;
}

.box.is-fl-left-visible>*>img,
.box.is-fl-left-hidden>*>img,
.box.is-fl-right-visible>*>img,
.box.is-fl-right-hidden>*>img {
	width: auto;
	height: auto;
	margin-bottom: -1em;
}

.box.is-fl-left-visible>*,
.box.is-fl-left-hidden>* {
	float: left;
	width: auto;
	max-width: 100%;
	margin-left: 0;
	margin-right: 1em;
}

.box.is-fl-right-visible>*,
.box.is-fl-right-hidden>* {
	float: right;
	width: auto;
	max-width: 100%;
	margin-left: 1em;
	margin-right: 0;
}

.box.is-fl-left-visible>*:last-child,
.box.is-fl-left-hidden>*:last-child,
.box.is-fl-right-visible>*:last-child,
.box.is-fl-right-hidden>*:last-child {
	float: none;
	width: auto;
	height: auto;
	margin-left: 0;
	margin-right: 0;
}

.box.is-fl-left-hidden>*:last-child,
.box.is-fl-right-hidden>*:last-child {
	overflow: hidden;
}

/* Flexbox（.box.is-flex） 
-------------------------------------- */
.box.is-flex.is-nowrap.is-left {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	flex-wrap: nowrap;
}

.box.is-flex.is-nowrap.is-right {
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	flex-wrap: nowrap;
}

.box.is-flex.is-nowrap.is-center {
	display: flex;
	flex-direction: row;
	justify-content: center;
	flex-wrap: nowrap;
}

.box.is-flex>*>img {
	width: auto;
	height: auto;
}

.box.is-flex.is-left>* {
	margin-left: 0;
	margin-right: 1em;
}

.box.is-flex.is-right>* {
	margin-left: 0;
	margin-right: 1em;
}

.box.is-flex.is-center>* {
	margin-left: 0.5em;
	margin-right: 0.5em;
}

.box.is-flex.is-left>*:last-child,
.box.is-flex.is-right>*:last-child {
	margin-left: 0;
	margin-right: 0;
}

.box.is-flex.is-center>*:first-child {
	margin-left: 0;
	margin-right: 0.5em;
}

.box.is-flex.is-center>*:last-child {
	margin-left: 0.5em;
	margin-right: 0;
}

/* .has-img（jQuary） */
.box.is-flex .has-img {
	flex-shrink: 0;
}

/* （スマホ） */
@media screen and (max-width: 743.9px) {

	/* 画像（.box.flexbox） */
	.box.is-flex.is-nowrap.is-left,
	.box.is-flex.is-nowrap.is-right,
	.box.is-flex.is-nowrap.is-center {
		display: flex;
		flex-direction: column;
	}
}

/* テーブル
-------------------------------------- */
/* tableのseparate化（罫線バグ対策） */
table {
	border-collapse: separate;
	border-spacing: 0;
}

.tbly-auto {
	table-layout: auto;
}

.tbly-fixed {
	table-layout: fixed;
}

/* テーブル（.tbl-Responsive）
-------------------------------------- */
.tbl-Responsive {
	position: relative;
}

.tbl-Responsive table {
	/* 均等割 */
	table-layout: fixed;
	width: 100%;
	background: hsla(30, 2%, 100%, 1);
	border-bottom: 1px solid hsla(30, 2%, 44%, 1);
	border-right: 1px solid hsla(30, 2%, 44%, 1);
	text-align: left;
}

.tbl-Responsive caption {
	caption-side: top;
	text-align: right;
}

.tbl-Responsive tr {
	width: 100%;
}

.tbl-Responsive th,
.tbl-Responsive td {
	position: relative;
	/* padding: 上 右 下 左 */
	padding: 0.4em 0.5em 0.5em 1em;
	border-top: 1px solid hsla(30, 2%, 44%, 1);
	border-left: 1px solid hsla(30, 2%, 44%, 1);
	vertical-align: middle;
}

.tbl-Responsive th {
	width: auto;
	background: hsla(30, 2%, 89%, 1);
}

.tbl-Responsive td {
	width: auto;
}

.tbl-Responsive p,
.tbl-Responsive p,
.tbl-Responsive th,
.tbl-Responsive td {
	line-height: 1.84;
	font-size: 16px;
	font-size: min(max(15.5px, calc(15.5px + ((1vw - 3.6px) * 0.07813))), 16px);
	font-weight: 400;
}

.tbl-Responsive p span,
.tbl-Responsive p span,
.tbl-Responsive th span,
.tbl-Responsive td span {
	display: inline;
}

/* thead */
.tbl-Responsive thead th,
.tbl-Responsive thead td {
	background: hsla(30, 2%, 64%, 1);
	color: #FFF;
	font-weight: 500;
	text-align: center;
}

/* テーブル（スマホ） */
@media screen and (max-width: 743.9px) {

	.tbl-Responsive th,
	.tbl-Responsive td {
		display: block;
		width: 100%;
	}

	.tbl-Responsive th {
		background: hsla(30, 2%, 64%, 1);
		color: #FFF;
	}

	.tbl-Responsive thead th,
	.tbl-Responsive thead td {
		display: none;
	}
}

/* テーブル（.tbl-insert-Absolute）
-------------------------------------- */
.tbl-insert-Absolute {
	position: relative;
}

.tbl-insert-Absolute table {
	/* 均等割 */
	table-layout: fixed;
	width: 100%;
	background: hsla(30, 2%, 100%, 1);
	border-bottom: 1px solid hsla(30, 2%, 44%, 1);
	border-right: 1px solid hsla(30, 2%, 44%, 1);
}

.tbl-insert-Absolute caption {
	caption-side: top;
	text-align: right;
}

.tbl-insert-Absolute tr {
	width: 100%;
}

.tbl-insert-Absolute th,
.tbl-insert-Absolute td {
	position: relative;
	/* padding: 上 右 下 左 */
	padding: 0.4em 0.5em 0em 1em;
	border-top: 1px solid hsla(30, 2%, 44%, 1);
	border-left: 1px solid hsla(30, 2%, 44%, 1);
}

.tbl-insert-Absolute th {
	width: 240px;
	background: hsla(30, 2%, 89%, 1);
}

.tbl-insert-Absolute td {
	width: auto;
}

.tbl-insert-Absolute th:last-of-type,
.tbl-insert-Absolute td:last-of-type {
	padding-bottom: 0.5em;
}

.tbl-insert-Absolute p,
.tbl-insert-Absolute p,
.tbl-insert-Absolute th,
.tbl-insert-Absolute td {
	line-height: 1.84;
	font-size: 16px;
	font-size: min(max(15.5px, calc(15.5px + ((1vw - 3.6px) * 0.07813))), 16px);
	font-weight: 400;
}

.tbl-insert-Absolute p span,
.tbl-insert-Absolute p span,
.tbl-insert-Absolute th span,
.tbl-insert-Absolute td span {
	display: inline;
}

/* thead */
.tbl-insert-Absolute thead th,
.tbl-insert-Absolute thead td {
	background: hsla(30, 2%, 64%, 1);
	color: #FFF;
	font-weight: 500;
	text-align: center;
}

/* テーブル（スマホ） */
@media screen and (max-width: 743.9px) {

	.tbl-insert-Absolute th,
	.tbl-insert-Absolute td {
		display: block;
		width: 100%;
	}

	.tbl-insert-Absolute thead th,
	.tbl-insert-Absolute thead td {
		display: none;
	}

	.tbl-insert-Absolute th {
		background: hsla(30, 2%, 64%, 1);
		color: #FFF;
	}

	.tbl-insert-Absolute td:not(:nth-of-type(1)) {
		border-top: none;
	}

	.tbl-insert-Absolute td[data-label] {
		padding-left: 5em;
	}

	.tbl-insert-Absolute td[data-label]::before {
		content: attr(data-label);
		position: absolute;
		top: 0.6em;
		left: 1em;
		margin: auto;
		display: block;
		height: 2em;
		padding: 0.5em 0.5em;
		line-height: 1;
		font-size: 85%;
		text-align: center;
		background: hsla(30, 2%, 89%, 1);
	}
}

/* テーブル（.tbl-insert-TableCell）
-------------------------------------- */
.tbl-insert-TableCell {
	position: relative;
}

.tbl-insert-TableCell table {
	/* 均等割 */
	table-layout: fixed;
	width: 100%;
	background: hsla(30, 2%, 100%, 1);
	border-bottom: 1px solid hsla(30, 2%, 44%, 1);
	border-right: 1px solid hsla(30, 2%, 44%, 1);
	text-align: left;
}

.tbl-insert-TableCell caption {
	caption-side: top;
	text-align: right;
}

.tbl-insert-TableCell tr {
	width: 100%;
}

.tbl-insert-TableCell th,
.tbl-insert-TableCell td {
	position: relative;
	/* padding: 上 右 下 左 */
	padding: 0.4em 0.5em 0.5em 1em;
	border-top: 1px solid hsla(30, 2%, 44%, 1);
	border-left: 1px solid hsla(30, 2%, 44%, 1);
}

.tbl-insert-TableCell th {
	width: 240px;
	background: hsla(30, 2%, 89%, 1);
}

.tbl-insert-TableCell td {
	width: auto;
}

.tbl-insert-TableCell th p,
.tbl-insert-TableCell td p,
.tbl-insert-TableCell th,
.tbl-insert-TableCell td {
	line-height: 1.84;
	font-size: 16px;
	font-size: min(max(15.5px, calc(15.5px + ((1vw - 3.6px) * 0.07813))), 16px);
	font-weight: 400;
}

.tbl-insert-TableCell th p span,
.tbl-insert-TableCell td p span,
.tbl-insert-TableCell th span,
.tbl-insert-TableCell td span {
	display: inline;
}

/* thead */
.tbl-insert-TableCell thead th,
.tbl-insert-TableCell thead td {
	background: hsla(30, 2%, 64%, 1);
	color: #FFF;
	font-weight: 500;
	text-align: center;
}

/* テーブル（スマホ） */
@media screen and (max-width: 743.9px) {

	.tbl-insert-TableCell th,
	.tbl-insert-TableCell td {
		display: block;
		width: 100%;
	}

	.tbl-insert-TableCell th {
		background: hsla(30, 2%, 64%, 1);
		color: #FFF;
	}

	.tbl-insert-TableCell thead th,
	.tbl-insert-TableCell thead td {
		display: none;
	}

	.tbl-insert-TableCell td[data-label] {
		display: table;
		padding: 0;
		width: 100%;
	}

	.tbl-insert-TableCell td[data-label]::before {
		content: attr(data-label);
		display: table-cell;
		width: 4.8em;
		text-align: left;
		vertical-align: baseline;
		/* padding: 上  右  下  左 */
		padding: 0.4em 0.5em 0.5em 0.5em;
		background: hsla(30, 2%, 89%, 1);
	}

	.tbl-insert-TableCell td[data-label]>p {
		display: table-cell;
		text-align: left;
		/* padding: 上  右  下  左 */
		padding: 0.4em 0.5em 0.5em 1em;
		border-left: 1px solid hsla(0, 0%, 44%, 1);
	}
}


/* テーブル（.tbl-direction-Row）
-------------------------------------- */
.tbl-direction-Row {
	position: relative;
}

.tbl-direction-Row table {
	/* 均等割 */
	table-layout: fixed;
	width: 100%;
	background: hsla(30, 2%, 100%, 1);
	border-bottom: 1px solid hsla(30, 2%, 44%, 1);
	border-right: 1px solid hsla(30, 2%, 44%, 1);
	text-align: left;
}

.tbl-direction-Row caption {
	caption-side: top;
	text-align: right;
}

.tbl-direction-Row tr {
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}

.tbl-direction-Row th,
.tbl-direction-Row td {
	position: relative;
	/* padding: 上 右 下 左 */
	padding: 0.4em 0.5em 0.5em 1em;
	border-top: 1px solid hsla(30, 2%, 44%, 1);
	border-left: 1px solid hsla(30, 2%, 44%, 1);
}

.tbl-direction-Row th {
	width: 240px;
	background: hsla(30, 2%, 89%, 1);
}

.tbl-direction-Row td {
	width: 33.3333%;
}

.tbl-direction-Row p,
.tbl-direction-Row p,
.tbl-direction-Row th,
.tbl-direction-Row td {
	line-height: 1.84;
	font-size: 16px;
	font-size: min(max(15.5px, calc(15.5px + ((1vw - 3.6px) * 0.07813))), 16px);
	font-weight: 400;
}

.tbl-direction-Row p span,
.tbl-direction-Row p span,
.tbl-direction-Row th span,
.tbl-direction-Row td span {
	display: inline;
}

/* thead */
.tbl-direction-Row thead th,
.tbl-direction-Row thead td {
	background: hsla(30, 2%, 64%, 1);
	color: #FFF;
	width: 100%;
	font-weight: 500;
	text-align: center;
}

/* テーブル（スマホ） */
@media screen and (max-width: 743.9px) {

	.tbl-direction-Row th,
	.tbl-direction-Row td {
		display: block;
		width: 100%;
	}

	.tbl-direction-Row th {
		background: hsla(30, 2%, 64%, 1);
		color: #FFF;
	}
}


/* テーブル（.td-direction-Column）
-------------------------------------- */
.tbl-direction-Column {
	position: relative;
}

.tbl-direction-Column table {
	/* 均等割 */
	table-layout: fixed;
	width: 100%;
	background: hsla(30, 2%, 100%, 1);
	border-bottom: 1px solid hsla(30, 2%, 44%, 1);
	border-right: 1px solid hsla(30, 2%, 44%, 1);
	text-align: left;
}

.tbl-direction-Column caption {
	caption-side: top;
	text-align: right;
}

.tbl-direction-Column tr {
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}

.tbl-direction-Column th,
.tbl-direction-Column td {
	position: relative;
	/* padding: */
	padding: 0;
	border-top: 1px solid hsla(30, 2%, 44%, 1);
	border-left: 1px solid hsla(30, 2%, 44%, 1);
}

.tbl-direction-Column th>p,
.tbl-direction-Column td>p {
	position: relative;
	/* padding: 上 右 下 左 */
	padding: 0.4em 0.5em 0.5em 1em;
}

.tbl-direction-Column th {
	width: 240px;
	background: hsla(30, 2%, 89%, 1);
}

.tbl-direction-Column td {
	width: 33.3333%;
}

.tbl-direction-Column th>p:not(:nth-of-type(1)),
.tbl-direction-Column td>p:not(:nth-of-type(1)) {
	border-top: 1px solid hsla(30, 2%, 44%, 1);
}

.tbl-direction-Column th>p,
.tbl-direction-Column td>p,
.tbl-direction-Column th,
.tbl-direction-Column td {
	margin: 0 !important;
	line-height: 1.84;
	font-size: 16px;
	font-size: min(max(15.5px, calc(15.5px + ((1vw - 3.6px) * 0.07813))), 16px);
	font-weight: 400;
}

.tbl-direction-Column th>p span,
.tbl-direction-Column td>p span,
.tbl-direction-Column th span,
.tbl-direction-Column td span {
	display: inline;
}

/* thead */
.tbl-direction-Column thead th,
.tbl-direction-Column thead td {
	/* padding: 上 右 下 左 */
	padding: 0.4em 0.5em 0.5em 1em;
	background: hsla(30, 2%, 64%, 1);
	color: #FFF;
	width: 100%;
	font-weight: 500;
	text-align: center;
}

/* テーブル（スマホ） */
@media screen and (max-width: 743.9px) {

	.tbl-direction-Column th,
	.tbl-direction-Column td {
		display: block;
		width: 100%;
	}

	.tbl-direction-Column th {
		background: hsla(30, 2%, 64%, 1);
		color: #FFF;
	}
}

/* テーブル（.tbl-Scrollable）
-------------------------------------- */
.tbl-Scrollable table {
	/* 均等割 */
	table-layout: fixed;
	width: 1500px;
	background: hsla(30, 2%, 100%, 1);
	border-bottom: 1px solid hsla(30, 2%, 44%, 1);
	border-right: 1px solid hsla(30, 2%, 44%, 1);
	text-align: left;
	margin-bottom: 5px;
}

.tbl-Scrollable caption {
	caption-side: top;
	text-align: right;
}

.tbl-Scrollable tr {
	width: 100%;
}

.tbl-Scrollable th,
.tbl-Scrollable td {
	position: relative;
	/* padding: 上 右 下 左 */
	padding: 0.4em 0.5em 0.5em 1em;
	border-top: 1px solid hsla(30, 2%, 44%, 1);
	border-left: 1px solid hsla(30, 2%, 44%, 1);
}

.tbl-Scrollable th {
	width: 120px;
	background: hsla(30, 2%, 89%, 1);
}

.tbl-Scrollable td {
	width: auto;
}

.tbl-Scrollable p,
.tbl-Scrollable p,
.tbl-Scrollable th,
.tbl-Scrollable td {
	line-height: 1.84;
	font-size: 16px;
	font-size: min(max(15.5px, calc(15.5px + ((1vw - 3.6px) * 0.07813))), 16px);
	font-weight: 400;
}

.tbl-Scrollable p span,
.tbl-Scrollable p span,
.tbl-Scrollable th span,
.tbl-Scrollable td span {
	display: inline;
}

/* thead */
.tbl-Scrollable thead th,
.tbl-Scrollable thead td {
	background: hsla(30, 2%, 64%, 1);
	color: #FFF;
	font-weight: 500;
	text-align: center;
}

/* スクロールバー */
.tbl-Scrollable::-webkit-scrollbar {
	margin-top: 6px;
	width: 10px;
	height: 10px;
}

.tbl-Scrollable::-webkit-scrollbar-track {
	background: hsla(0, 0%, 94%, 1);
}

.tbl-Scrollable::-webkit-scrollbar-thumb {
	height: 6px;
	border-radius: 999px;
	background: #00C2D4;
}

/* テーブル（.tbl-Flex）
-------------------------------------- */
/* Flexbox */
.tbl-Flex {
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
}

/* （PC） */
@media screen and (min-width: 744px) {
	.tbl-Flex>table:not(:last-of-type) {
		border-right: none;
	}
}

/* テーブル（スマホ） */
@media screen and (max-width: 743.9px) {

	/* Flexbox */
	.tbl-Flex {
		display: flex;
		flex-direction: column;
	}

	.tbl-Flex>table:not(:last-of-type) {
		border-bottom: none;
	}
}

/* margin
-------------------------------------- */
.mt-0d25r {
	margin-top: 0.25rem;
}

.mt-0d5r {
	margin-top: 0.5rem;
}

.mt-0d75r {
	margin-top: 0.75rem;
}

.mt-1r {
	margin-top: 1rem;
}

.mt-2r {
	margin-top: 2rem;
}

.mt-3r {
	margin-top: 3rem;
}

.mt-4r {
	margin-top: 4rem;
}

.mt-5r {
	margin-top: 5rem;
}

.mt-6r {
	margin-top: 6rem;
}

.mt-7r {
	margin-top: 7rem;
}

.mt-8r {
	margin-top: 8rem;
}

.mt-9r {
	margin-top: 9rem;
}

.mt-10r {
	margin-top: 10rem;
}

.mb-0d25r {
	margin-bottom: 0.25rem;
}

.mb-0d5r {
	margin-bottom: 0.5rem;
}

.mb-0d75r {
	margin-bottom: 0.75rem;
}

.mb-1r {
	margin-bottom: 1rem;
}

.mb-2r {
	margin-bottom: 2rem;
}

.mb-3r {
	margin-bottom: 3rem;
}

.mb-4r {
	margin-bottom: 4rem;
}

.mb-5r {
	margin-bottom: 5rem;
}

.mb-6r {
	margin-bottom: 6rem;
}

.mb-7r {
	margin-bottom: 7rem;
}

.mb-8r {
	margin-bottom: 8rem;
}

.mb-9r {
	margin-bottom: 9rem;
}

.mb-10r {
	margin-bottom: 10rem;
}

.ml-0d25r {
	margin-left: 0.25rem;
}

.ml-0d5r {
	margin-left: 0.5rem;
}

.ml-0d75r {
	margin-left: 0.75rem;
}

.ml-1r {
	margin-left: 1rem;
}

.ml-2r {
	margin-left: 2rem;
}

.ml-3r {
	margin-left: 3rem;
}

.ml-4r {
	margin-left: 4rem;
}

.ml-5r {
	margin-left: 5rem;
}

.ml-6r {
	margin-left: 6rem;
}

.ml-7r {
	margin-left: 7rem;
}

.ml-8r {
	margin-left: 8rem;
}

.ml-9r {
	margin-left: 9rem;
}

.ml-10r {
	margin-left: 10rem;
}

.mr-0d25r {
	margin-right: 0.25rem;
}

.mr-0d5r {
	margin-right: 0.5rem;
}

.mr-0d75r {
	margin-right: 0.75rem;
}

.mr-1r {
	margin-right: 1rem;
}

.mr-2r {
	margin-right: 2rem;
}

.mr-3r {
	margin-right: 3rem;
}

.mr-4r {
	margin-right: 4rem;
}

.mr-5r {
	margin-right: 5rem;
}

.mr-6r {
	margin-right: 6rem;
}

.mr-7r {
	margin-right: 7rem;
}

.mr-8r {
	margin-right: 8rem;
}

.mr-9r {
	margin-right: 9rem;
}

.mr-10r {
	margin-right: 10rem;
}

/* padding
-------------------------------------- */
.pt-0d25r {
	padding-top: 0.25rem;
}

.pt-0d5r {
	padding-top: 0.5rem;
}

.pt-0d75r {
	padding-top: 0.75rem;
}

.pt-1r {
	padding-top: 1rem;
}

.pt-2r {
	padding-top: 2rem;
}

.pt-3r {
	padding-top: 3rem;
}

.pt-4r {
	padding-top: 4rem;
}

.pt-5r {
	padding-top: 5rem;
}

.pt-6r {
	padding-top: 6rem;
}

.pt-7r {
	padding-top: 7rem;
}

.pt-8r {
	padding-top: 8rem;
}

.pt-9r {
	padding-top: 9rem;
}

.pt-10r {
	padding-top: 10rem;
}

.pb-0d25r {
	padding-bottom: 0.25rem;
}

.pb-0d5r {
	padding-bottom: 0.5rem;
}

.pb-0d75r {
	padding-bottom: 0.75rem;
}

.pb-1r {
	padding-bottom: 1rem;
}

.pb-2r {
	padding-bottom: 2rem;
}

.pb-3r {
	padding-bottom: 3rem;
}

.pb-4r {
	padding-bottom: 4rem;
}

.pb-5r {
	padding-bottom: 5rem;
}

.pb-6r {
	padding-bottom: 6rem;
}

.pb-7r {
	padding-bottom: 7rem;
}

.pb-8r {
	padding-bottom: 8rem;
}

.pb-9r {
	padding-bottom: 9rem;
}

.pb-10r {
	padding-bottom: 10rem;
}

.pl-0d25r {
	padding-left: 0.25rem;
}

.pl-0d5r {
	padding-left: 0.5rem;
}

.pl-0d75r {
	padding-left: 0.75rem;
}

.pl-1r {
	padding-left: 1rem;
}

.pl-2r {
	padding-left: 2rem;
}

.pl-3r {
	padding-left: 3rem;
}

.pl-4r {
	padding-left: 4rem;
}

.pl-5r {
	padding-left: 5rem;
}

.pl-6r {
	padding-left: 6rem;
}

.pl-7r {
	padding-left: 7rem;
}

.pl-8r {
	padding-left: 8rem;
}

.pl-9r {
	padding-left: 9rem;
}

.pl-10r {
	padding-left: 10rem;
}

.pr-0d25r {
	padding-right: 0.25rem;
}

.pr-0d5r {
	padding-right: 0.5rem;
}

.pr-0d75r {
	padding-right: 0.75rem;
}

.pr-1r {
	padding-right: 1rem;
}

.pr-2r {
	padding-right: 2rem;
}

.pr-3r {
	padding-right: 3rem;
}

.pr-4r {
	padding-right: 4rem;
}

.pr-5r {
	padding-right: 5rem;
}

.pr-6r {
	padding-right: 6rem;
}

.pr-7r {
	padding-right: 7rem;
}

.pr-8r {
	padding-right: 8rem;
}

.pr-9r {
	padding-right: 9rem;
}

.pr-10r {
	padding-right: 10rem;
}