/* 旧サイトの記事・固定ページの本文の CSS（legacy/design-kk/style-post.css・style-post-mobile.css・custom.css の .call-list）を、
 * 本文（.jjcPostContent）の中だけに効くように書き換えたもの。tools/legacy-css/convert.py で作る（手で直さない）。
 * #mypost → .jjcPostContent、ページごとの body の id（#recruit など）→ .jjc-page-{スラッグ}、Font Awesome → jjc-icons。 */

@container onestarViewport (inline-size >= 48rem) {
	.jjcPostContent :where(dl, dt, dd, blockquote, figure, figcaption, fieldset, legend, pre, address, menu, form, label, caption, th, td) {
		margin: 0;
		padding: 0;
		border: 0;
	}
}

/* 旧テーマの style.css の .youtube（動画一覧のページ）：16:9 の枠に iframe を広げる */
:root .jjcPostContent .youtube {
	position: relative;
	width: 100%;
	height: 0;
	padding-bottom: 56.25%;
	overflow: hidden;
	margin-bottom: 1rem;
}
:root .jjcPostContent .youtube iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

:root .jjcPostContent .b {
	font-weight: 900 !important;
}

:root .jjcPostContent .b-n {
	font-weight: 100 !important;
}

:root .jjcPostContent .txt-c {
	text-align: center !important;
}

:root .jjcPostContent .txt-l {
	text-align: left !important;
}

:root .jjcPostContent .txt-r {
	text-align: right !important;
}

:root .jjcPostContent .fl-l {
	float: left;
	margin-right: 1em;
}

:root .jjcPostContent .fl-r {
	float: right;
	margin-left: 1em;
}

:root .jjcPostContent .clearfix:after {
	content: "";
	display: block;
	clear: both;
	height: 0;
}

:root .jjcPostContent .link_arrow:before {
	font-family: "jjc-icons";
	content: "\f138";
	margin-right: 0.5em;
}

:root .jjcPostContent p,
:root .jjcPostContent dl,
:root .jjcPostContent ul,
:root .jjcPostContent ol,
:root .jjcPostContent table {
	margin: 0 0 1.7em 0;
	padding: 0;
	font-size: 16px;
	line-height: 1.7em;
}

:root .jjcPostContent ul {
	list-style-position: inside;
}

:root .jjcPostContent ol {
	list-style-position: outside;
	margin-left: 3em;
}

:root .jjcPostContent ol li {
	margin-bottom: 0.5em;
	padding-left: 0.4em;
}

:root .jjcPostContent dt {
	margin-top: 1.5em;
	font-weight: 900;
}

:root .jjcPostContent h1 {
	margin-bottom: 16px;
	padding: 10px 0 6px 18px;
	border-bottom: 2px solid #dadada;
	font-size: 176%;
}

:root .jjcPostContent h2 {
	margin-bottom: 16px;
	padding: 10px 0 6px 20px;
	font-size: 160%;
	font-weight: bold;
	color: #ffffff;
	background-color: #585e7e;
}

:root .jjcPostContent h3 {
	margin: 48px 0 16px;
	padding: 0 0 0 36px;
	font-size: 144%;
	font-weight: bold;
	background: url("images/legacy/bg_page_h3.png") 0 0 no-repeat;
}

:root .jjcPostContent h4 {
	margin-bottom: 16px;
	padding: 0 0 0 12px;
	font-size: 128%;
	font-weight: bold;
}

:root .jjcPostContent .eye_catch {
	display: block;
	width: 640px;
	margin: 0 auto 20px;
	padding: 7px 8px 7px;
	text-align: center;
	border: 1px solid #dddddd;
	background-color: var(--jjc-c-pale, #f4f7f8);
}

:root .jjcPostContent .eye_catch img {
	max-width: 100%;
}

:root .jjcPostContent .page_header {
	padding: 30px;
	margin-bottom: 30px;
	border: 1px dotted #cccccc;
}

:root .jjcPostContent .page_header p:last-child {
	margin: 0;
	color: var(--jjc-c-blue, #073b87);
}

:root .jjcPostContent p.page_parent {
	padding: 0.2em 0.6em 0.1em;
	display: inline-block;
	background: #ffe300;
	font-size: 12px;
	font-weight: 900;
	color: var(--jjc-c-navy, #243684);
	transform: rotate(350deg);
}

:root .jjcPostContent p.img_box {
	padding: 2em 0 3em;
}

:root .jjcPostContent p.bt_x {
	margin: 0;
}

:root .jjcPostContent p.bt_x a {
	margin: auto;
	padding: 0.4em 0.8em 0.3em;
	display: table;
	background: #ffe300;
	font-weight: 900;
	color: var(--jjc-c-navy, #243684);
	text-align: center;
	transition: all 0.5s;
}

:root .jjcPostContent p.bt_x a:hover {
	background: var(--jjc-c-navy, #243684);
	color: #ffffff;
}

:root .jjcPostContent .flex {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
}

:root .jjcPostContent .flex div {
	flex: 1;
	margin: 1em;
	padding: 1em;
	box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.2);
}

:root .jjcPostContent .flex li {
	flex: 1;
	text-align: center;
}

:root .jjcPostContent .flex li i {
	padding-top: 30px;
	display: block;
	font-size: 7em;
	color: var(--jjc-c-navy, #243684);
}

:root .jjcPostContent .flex div h3 {
	margin-top: 0;
	padding: 0;
	background: var(--jjc-c-blue, #073b87);
	background-image: none;
	font-size: 1.5em;
}

:root .jjcPostContent .flex div h3 a {
	padding: 0.5em 0.5em 0.4em;
	display: block;
	color: #ffffff;
}

:root .jjcPostContent .flex div h3 a i {
	margin-top: -7px;
	font-size: 1.2em;
}

:root .jjcPostContent .flex div h4 {
	border-left: 3px solid var(--jjc-c-navy, #243684);
	color: var(--jjc-c-navy, #243684);
}

:root .jjcPostContent .flex div img {
	width: 100%;
	max-width: 100%;
	margin-bottom: 1em;
}

:root .jjcPostContent .call {
	margin: auto;
	padding: 1.4em 1.8em 1.3em;
	display: table;
	background: var(--jjc-c-navy, #243684);
	font-weight: 900;
	color: #ffffff;
	text-align: center;
}

:root .jjcPostContent .call p i {
	font-size: 1.5em;
	transform: rotate(325deg);
}

:root .jjcPostContent .call p:first-child {
	margin-bottom: 1em;
	font-size: 176%;
	font-weight: 900;
}

:root .jjcPostContent .call p:last-child {
	margin: 0;
}

:root .jjcPostContent .call a {
	font-size: 3em;
	font-weight: 900;
	color: #ffe300;
}

:root .jjcPostContent .contact {
	margin: auto;
	margin-top: 1.5em;
	display: table;
	background: #eeeeee;
	font-weight: 900;
	color: #ffffff;
	text-align: center;
}

:root .jjcPostContent .contact p:first-child {
	margin-bottom: 1em;
}

:root .jjcPostContent .contact p:last-child {
	margin: 0;
}

:root .jjcPostContent .contact a {
	font-weight: 900;
	color: var(--jjc-c-navy, #243684);
	display: table-cell;
	padding: 1.4em 1.8em 1.3em;
	transition-property: color, background;
	transition-duration: 0.5s;
	position: relative;
}

:root .jjcPostContent .contact a i {
	font-size: 2em;
	display: block;
	margin: auto;
	position: relative;
	transition-property: all;
	transition-duration: 0.4s;
}

:root .jjcPostContent .contact a:hover {
	background: var(--jjc-c-navy, #243684);
	color: #ffe300;
}

:root .jjcPostContent .contact a:hover i {
	padding-left: 200px;
	color: #ffffff;
}

:root .jjcPostContent .contents_menu {
	margin: 1em 0;
	padding-top: 1em;
	background: #ffe300;
}

:root .jjcPostContent .contents_menu div div {
	background: #ffffff;
}

:root .jjcPostContent .contents_menu h4 {
	margin: 0 1em 0;
	padding: 0;
	display: flex;
	align-items: center;
	font-size: 1.5em;
	text-align: center;
	color: var(--jjc-c-navy, #243684);
}

:root .jjcPostContent .contents_menu h4:before,
:root .jjcPostContent .contents_menu h4:after {
	border-top: 1px solid var(--jjc-c-navy, #243684);
	content: "";
	display: inline;
	flex-grow: 1;
}

:root .jjcPostContent .contents_menu h4:before {
	margin-right: 0.5em;
}

:root .jjcPostContent .contents_menu h4:after {
	margin-left: 0.5em;
}

:root .jjcPostContent .contents_menu h5 {
	min-height: 3em;
	margin-bottom: 0.5em;
}

:root .jjcPostContent .contents_menu h5 a {
	font-weight: 900;
	color: var(--jjc-c-navy, #243684);
}

:root .jjcPostContent .contents_menu h5 i {
	font-size: 3em;
	float: left;
}

:root .jjcPostContent table {
	border-collapse: collapse;
	text-align: left;
	line-height: 1.5;
}

:root .jjcPostContent table thead th {
	padding: 10px;
	font-weight: bold;
	vertical-align: top;
	color: #336699;
	border-bottom: 3px solid #003366;
}

:root .jjcPostContent table tbody th {
	width: 150px;
	padding: 10px;
	font-weight: bold;
	vertical-align: top;
	border-bottom: 1px solid #cccccc;
	background: #f3f6f7;
}

:root .jjcPostContent table td {
	width: 350px;
	padding: 10px;
	vertical-align: top;
	border-bottom: 1px solid #cccccc;
}

:root .jjcPostContent .assets_01 {
	width: 150px;
	height: 150px;
	margin-right: 2em;
	padding-top: 50px;
	border-radius: 50%;
	float: left;
	text-align: center;
	background: #ff4a3d;
	color: #ffffff;
	font-weight: 900;
}

:root .jjcPostContent .assets_02 {
	width: 150px;
	height: 150px;
	margin-right: 2em;
	padding-top: 63px;
	border-radius: 50%;
	float: left;
	text-align: center;
	background: #fede27;
	color: #ffffff;
	font-weight: 900;
}

:root .jjcPostContent .assets_03 {
	width: 150px;
	height: 150px;
	margin-right: 2em;
	padding-top: 63px;
	border-radius: 50%;
	float: left;
	text-align: center;
	background: #529f4f;
	color: #ffffff;
	font-weight: 900;
}

:root .jjcPostContent .assets_04 {
	width: 150px;
	height: 150px;
	margin-right: 2em;
	padding-top: 63px;
	border-radius: 50%;
	float: left;
	text-align: center;
	background: #4f83aa;
	color: #ffffff;
	font-weight: 900;
}

:root .jjcPostContent .list_under_arrow {
	margin-bottom: 4em;
	padding: 2em;
	background: #ffe300;
	display: inline-block;
	position: relative;
}

:root .jjcPostContent .list_under_arrow:after {
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	top: 100%;
	left: 50%;
	border: 40px solid transparent;
	border-top: 40px solid #ffe300;
	margin-left: -40px;
}

:root .jjcPostContent .list_under_arrow li {
	margin-bottom: 2em;
	font-weight: 900;
	padding-left: 3em;
	position: relative;
}

:root .jjcPostContent .list_under_arrow li:before {
	font-family: "jjc-icons";
	content: "\f046";
	position: absolute;
	left: 0;
	color: var(--jjc-c-pink, #f6115d);
	font-size: 2em;
}

:root .jjcPostContent .list_under_arrow li:last-child {
	margin-bottom: 0;
}

:root .jjcPostContent .peace {
	width: 180px;
	height: 180px;
	display: block;
	margin: auto;
	padding-top: 68px;
	border-radius: 50%;
	text-align: center;
	background: #c3d60b;
	color: #ffffff;
	font-size: 1.2em;
	font-weight: 900;
}

:root .jjcPostContent .voice .voice_header {
	display: inline-block;
	width: 100%;
	margin-bottom: 4em;
	padding: 2em;
	background: var(--jjc-c-navy, #243684);
	position: relative;
	color: #ffffff;
	text-align: center;
}

:root .jjcPostContent .voice .voice_header:after {
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	top: 100%;
	left: 50%;
	border: 40px solid transparent;
	border-top: 40px solid var(--jjc-c-navy, #243684);
	margin-left: -40px;
}

:root .jjcPostContent .voice .voice_header .voice_babble {
	display: inline-block;
	margin-bottom: 0;
	padding: 1em;
	background: #ffffff;
	position: relative;
	border-radius: 30px;
	color: var(--jjc-c-navy, #243684);
	text-align: center;
}

:root .jjcPostContent .voice .voice_header .voice_babble:after {
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	top: 100%;
	left: 50%;
	border: 10px solid transparent;
	border-top: 10px solid #ffffff;
	margin-left: -10px;
}

:root .jjcPostContent .voice .voice_header h2 {
	margin-bottom: 0;
	background: var(--jjc-c-navy, #243684);
	font-size: 3em;
	color: #ffe300;
}

:root .jjcPostContent .voice .voice_header p {
	margin-bottom: 0;
}

:root .jjcPostContent .voice .owner h3 {
	padding: 1em 0;
	background: var(--jjc-c-navy, #243684);
	background-image: none;
	color: #ffffff;
}

:root .jjcPostContent .voice .owner span {
	margin-right: 1em;
	padding: 1.01em;
	position: relative;
	background: #ffe300;
	background-image: none;
	color: var(--jjc-c-navy, #243684);
}

:root .jjcPostContent .voice .owner span:after {
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	top: 50%;
	right: -20px;
	border: 10px solid transparent;
	border-left: 10px solid #ffe300;
	margin-top: -10px;
}

:root .jjcPostContent .voice .owner img {
	float: left;
}

:root .jjcPostContent .voice .owner h4 {
	font-size: 160%;
	color: var(--jjc-c-navy, #243684);
}

:root .jjcPostContent .voice .owner dl:after {
	content: "";
	display: block;
	clear: both;
	height: 0;
}

:root .jjcPostContent .voice .owner dt {
	width: 120px;
	height: 120px;
	margin: 0 2em 0 0;
	padding-top: 35px;
	border-radius: 50%;
	float: left;
	background: #ffe300;
	color: var(--jjc-c-navy, #243684);
	text-align: center;
}

:root .jjcPostContent .voice .owner dd ul {
	min-height: 120px;
	list-style-type: disc;
	padding: 15px 0 0 0;
}

:root .jjcPostContent .voice .owner dd ul li {
	text-indent: -1em;
	margin-right: 1em;
}

:root .jjcPostContent .list_merit {
	padding: 2em;
}

:root .jjcPostContent .list_merit li {
	margin-bottom: 2em;
	font-weight: 900;
	padding-left: 3em;
	position: relative;
}

:root .jjcPostContent .list_merit li:before {
	font-family: "jjc-icons";
	content: "\f118";
	position: absolute;
	left: 0;
	color: var(--jjc-c-pink, #f6115d);
	font-size: 2em;
}

:root .jjcPostContent .list_merit li:last-child {
	margin-bottom: 0;
}

:root .jjcPostContent .list_demerit {
	padding: 2em;
}

:root .jjcPostContent .list_demerit li {
	margin-bottom: 2em;
	font-weight: 900;
	padding-left: 3em;
	position: relative;
}

:root .jjcPostContent .list_demerit li:before {
	font-family: "jjc-icons";
	content: "\f119";
	position: absolute;
	left: 0;
	color: var(--jjc-c-navy, #243684);
	font-size: 2em;
}

:root .jjcPostContent .list_demerit li:last-child {
	margin-bottom: 0;
}

:root .jjcPostContent .list_check {
	padding: 2em;
}

:root .jjcPostContent .list_check li {
	margin-bottom: 2em;
	font-weight: 900;
	padding-left: 3em;
	position: relative;
}

:root .jjcPostContent .list_check li:before {
	font-family: "jjc-icons";
	content: "\f046";
	position: absolute;
	left: 0;
	color: var(--jjc-c-navy, #243684);
	font-size: 2em;
}

:root .jjcPostContent .list_check li:last-child {
	margin-bottom: 0;
}

:root .jjcPostContent ul.bt_2:after {
	content: "";
	display: block;
	clear: both;
	height: 0;
}

:root .jjcPostContent ul.bt_2 li:nth-child(even) {
	width: 50%;
	float: right;
}

:root .jjcPostContent ul.bt_2 li:nth-child(odd) {
	width: 50%;
	float: left;
}

:root .jjcPostContent dl.qa dt {
	font-weight: 900;
	margin-bottom: 0.5em;
}

:root .jjcPostContent dl.qa dt::before {
	content: "Q.";
	font-weight: 900;
	color: var(--jjc-c-navy, #243684);
	font-size: 2em;
}

:root .jjcPostContent dl.qa dd {
	padding-left: 2.3em;
	text-indent: -2.3em;
}

:root .jjcPostContent dl.qa dd p {
	padding-left: 0;
	text-indent: 0;
}

:root .jjcPostContent dl.qa dd::before {
	content: "A.";
	font-weight: 900;
	color: #00a594;
	font-size: 2em;
}

:root .jjcPostContent .frame_yellow {
	margin-bottom: 20px;
	padding: 20px 0;
	border: 3px double #c8e7e7;
	background-color: #fffef7;
}

:root .jjcPostContent .frame_title {
	margin-bottom: 40px;
	text-align: center;
}

:root .jjcPostContent .frame_content {
	padding: 0 60px;
}

:root .jjcPostContent .frame_content p {
	text-indent: 1em;
}

:root .jjcPostContent .greenribbon {
	display: inline-block;
	width: 209px;
	width: 100%;
	height: 45px;
	margin-bottom: 20px;
	line-height: 1.9em;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	color: #ffffff;
	background: url("images/legacy/title_greenribbon.png") center 0 no-repeat;
}

:root .jjcPostContent .let-4 {
	padding-left: 0.3em;
	letter-spacing: 0.3em;
}

:root .jjcPostContent #daihyou_company {
	float: right;
	margin: 0 0 15px 25px;
}

:root .jjcPostContent .company_main_col {
	overflow: hidden;
	margin-bottom: 60px;
}

:root .jjcPostContent .company_main_col th,
:root .jjcPostContent .company_main_col td {
	font-size: 12px;
	background-color: transparent !important;
}

:root .jjcPostContent .company_main_col th {
	white-space: nowrap;
}

:root .jjcPostContent .company_col_3:nth-child(3n) {
	margin-right: 0;
}

:root .jjcPostContent .company_col_3 {
	float: left;
	width: 276px;
	margin-right: 10px;
}

:root .jjcPostContent .company_col_3 strong {
	display: block;
	height: 4.4em;
	text-align: center;
	margin-bottom: 0.7em;
	padding-top: 0.7em;
	font-size: 14px;
	border-bottom: 3px solid var(--jjc-c-pale2, #e4eaf3);
}

:root .jjcPostContent .company_col_3 p {
	font-size: 13px;
}

:root .jjcPostContent .bluecube {
	position: relative;
	text-align: center;
	line-height: 2.8em;
	font-size: 17px;
	font-weight: bold;
	color: #ffffff;
	background-color: #1865be;
}

:root .jjcPostContent .bluecube:after {
	position: absolute;
	top: 2.8em;
	left: 0;
	content: "";
	width: 0;
	border-top: 13px solid #00348a;
	border-right: 138px solid transparent;
	border-bottom: 13px solid transparent;
	border-left: 138px solid transparent;
}

:root .jjcPostContent .bluecube_inner {
	padding: 40px 10px 15px 15px;
	border-right: 1px solid #bbbbbb;
	border-bottom: 1px solid #bbbbbb;
	border-left: 1px solid #bbbbbb;
	background-color: #f7f7fb;
}

:root .jjcPostContent .bluecube_inner p {
	font-size: 14px;
	margin-bottom: 1.2em;
}

:root .jjcPostContent .title_arrow_gray {
	position: relative;
	display: inline-block;
	margin-bottom: 1.2em;
	padding: 0 1em;
	line-height: 2em;
	color: #ffffff;
	background-color: #516979;
}

:root .jjcPostContent .title_arrow_gray:after {
	position: absolute;
	top: 0;
	right: -30px;
	content: "";
	display: inline-block;
	background-color: #f7f7fb;
	border-left: 15px solid #516979;
	border-top: 1em solid transparent;
	border-right: 15px solid transparent;
	border-bottom: 1em solid transparent;
}

:root .jjcPostContent .company_col_2:nth-child(2n) {
	margin-right: 0;
}

:root .jjcPostContent .company_col_2 {
	float: left;
	width: 420px;
	margin-right: 10px;
	padding: 25px 10px 15px 15px;
	border: 1px solid #bbbbbb;
	background-color: #f7f7fb;
}

:root .jjcPostContent .work dt {
	padding: 0.5rem 1rem;
	display: inline-block;
	background: var(--jjc-c-navy, #243684);
	font-weight: 900;
	color: #ffe300;
	border-radius: 3px;
}

:root .jjcPostContent .work dd {
	padding: 2rem 1.5rem 1rem 1.5rem;
	margin-top: -1.5rem;
	margin-left: 2rem;
	border: 3px solid var(--jjc-c-navy, #243684);
	border-radius: 3px;
}

:root .jjcPostContent .term {
	display: flex;
	flex-wrap: wrap;
	border: 1px solid #dddddd;
	border-top: none;
}

:root .jjcPostContent .term dt {
	background: #eeeeee;
	width: 30%;
	margin-top: 0;
	padding: 1rem;
	box-sizing: border-box;
	border-top: 1px solid #dddddd;
}

:root .jjcPostContent .term dd {
	padding: 1rem;
	margin: 0;
	border-left: 1px solid #dddddd;
	border-top: 1px solid #dddddd;
	width: 70%;
	background: #ffffff;
	box-sizing: border-box;
}

:root .jjcPostContent .term dd p:last-of-type,
:root .jjcPostContent .term dd ul:last-of-type {
	margin-bottom: 0;
}

:root .jjcPostContent dd ul li {
	margin: 0 0 1rem 1rem;
}

:root .jjcPostContent dd ul li:before {
	content: "●";
	color: var(--jjc-c-navy, #243684);
}

:root .jjcPostContent dd .welcome {
	margin-top: 1rem;
	padding: 1rem 0.5rem 0 0;
	border: 3px solid #eeeeee;
	border-radius: 3px;
}

:root .jjcPostContent .caution_menu {
	margin: 15px 0;
	padding: 1em 2em;
	color: #7ca5dc;
	background-color: var(--jjc-c-pale2, #e4eaf3);
	text-align: right;
	border-right: 8px solid var(--jjc-c-line2, #bccbdf);
}

:root .jjcPostContent .caution_menu a {
	margin: 0 2em;
}

:root .jjcPostContent #my_bukken {
	overflow: hidden;
	width: 600px;
	margin: 0 auto;
	padding-bottom: 20px;
}

:root .jjcPostContent #my_bukken #b_info {
	display: block !important;
	border: 5px solid var(--jjc-c-line2, #bccbdf);
	overflow: hidden;
	padding: 20px;
	font-size: 15px;
	background-color: var(--jjc-c-pale2, #e4eaf3);
	border-radius: 10px;
}

:root .jjcPostContent #my_bukken #t_img {
	float: left;
	margin-right: 20px;
}

:root .jjcPostContent #my_bukken #t_img img {
	max-width: 200px;
	max-height: 200px;
}

:root .jjcPostContent #my_bukken #b_heading {
	margin: 0.2em 0 0.7em;
	border-bottom: 3px solid var(--jjc-c-line2, #bccbdf);
	font-size: 20px;
	font-weight: bold;
}

:root .jjc-page-contact-top .jjcPostContent #mainbox_1,
:root .jjc-page-contact-top .jjcPostContent #mainbox_2 {
	float: left;
	width: 310px;
	height: 310px;
	margin-left: 80px;
	padding: 90px 0 0 70px;
}

:root .jjc-page-contact-top .jjcPostContent #mainbox_1 {
	background: url("images/legacy/bg_contact_owner.png") no-repeat;
}

:root .jjc-page-contact-top .jjcPostContent #mainbox_2 {
	background: url("images/legacy/bg_contact_customer.png") no-repeat;
}

:root .jjc-page-contact-top .jjcPostContent #mainbox_1 ul,
:root .jjc-page-contact-top .jjcPostContent #mainbox_2 ul {
	padding-top: 15px;
	list-style-type: none;
}

:root .jjc-page-contact-top .jjcPostContent #mainbox_1 li,
:root .jjc-page-contact-top .jjcPostContent #mainbox_2 li {
	background: url("images/legacy/icon-arrow-orange-right.png") 0 center no-repeat;
	margin-bottom: 2px;
	padding: 0 0 0 15px;
	font-size: 15px;
}

:root .jjcPostContent .akiya * {
	box-sizing: border-box;
}

:root .jjcPostContent .akiya img {
	display: block;
	max-width: 100%;
	margin: auto;
}

:root .jjcPostContent .akiya .txt-c {
	text-align: center;
}

:root .jjcPostContent .akiya .fnt-s {
	font-size: 80%;
}

:root .jjcPostContent .akiya h2,
:root .jjcPostContent .akiya h3 {
	padding-left: 0;
	background: none #ffffff;
}

:root .jjcPostContent .akiya h3 {
	color: #2ea6b2;
	border-bottom: 1px solid #2ea6b2;
	display: inline-block;
	margin-top: 0 !important;
}

:root .jjcPostContent .akiya h3 span {
	color: #e15625;
	border-bottom: 1px solid #e15625;
	padding-bottom: 1px;
	font-weight: 900;
}

:root .jjcPostContent .akiya li {
	padding: 5px;
	display: inline-block;
	width: 49%;
	text-align: center;
}

:root .jjc-page-coin-parking .jjcPostContent dl {
	margin-bottom: 50px;
	background: var(--jjc-c-navy, #243684);
	border-right: 1px solid #eeeeee;
}

:root .jjc-page-coin-parking .jjcPostContent dt {
	width: 120px;
	margin-top: 0;
	padding: 1rem;
	float: left;
	border-top: 1px solid #ffe300;
	color: #ffffff;
	font-weight: 100;
	text-align-last: justify;
	text-justify: inter-ideograph;
}

:root .jjc-page-coin-parking .jjcPostContent dt:first-child {
	border-top: 4px solid #ffe300;
}

:root .jjc-page-coin-parking .jjcPostContent dt:last-child {
	border-bottom: 1px solid #eeeeee;
}

:root .jjc-page-coin-parking .jjcPostContent dd {
	margin: 0;
	padding: 1rem;
	overflow: auto;
	background: #ffffff;
	border-top: 1px solid #eeeeee;
}

:root .jjc-page-coin-parking .jjcPostContent dd:last-child {
	border-bottom: 1px solid #eeeeee;
}

:root .jjc-page-coin-parking .jjcPostContent dt:first-child + dd {
	border-top: 4px solid #eeeeee;
}

:root .jjc-page-coin-parking .jjcPostContent dd ul,
:root .jjc-page-coin-parking .jjcPostContent dd p {
	margin: 0;
}

:root .jjc-page-coin-parking .jjcPostContent dd > h3:first-child {
	margin-top: 0;
}

:root .jjc-page-coin-parking .jjcPostContent dd i {
	margin-right: 0.5rem;
}

:root .jjc-page-download-pdf .jjcPostContent h3 {
	padding: 0.5em 0.5em 0.4em;
	color: #ffffff;
}

:root .jjc-page-lend-property .jjcPostContent .flex li {
	list-style-type: none;
	margin-bottom: 1rem;
}

:root .jjcPostContent .call-list dd::before {
	font-family: "jjc-icons";
	display: inline-block;
	content: "\f095";
	margin-right: 0.5rem;
}

/* お問い合わせフォーム（旧 style.css の .btn_area・98. CONTACT。PC 版だけ） */
@container onestarViewport (inline-size >= 48rem) {
	:root .jjcPostContent .btn_area {
		padding: 20px;
		text-align: center;
	}

	:root .jjcPostContent input[type="text"],
	:root .jjcPostContent input[type="password"],
	:root .jjcPostContent input[type="email"],
	:root .jjcPostContent input[type="tel"],
	:root .jjcPostContent textarea,
	:root .jjcPostContent select {
		border-width: 1px;
		border-style: solid;
		border-color: #ddd;
		color: #333;
		background-color: #fff;
	}

	:root .jjcPostContent input[type="text"]:focus,
	:root .jjcPostContent input[type="password"]:focus,
	:root .jjcPostContent input[type="email"]:focus,
	:root .jjcPostContent input[type="tel"]:focus,
	:root .jjcPostContent textarea:focus {
		border-width: 1px;
		border-style: solid;
		border-color: #6ddeff;
		color: #333;
		background-color: #fff;
	}

	:root .jjcPostContent button,
	:root .jjcPostContent input[type="button"],
	:root .jjcPostContent input[type="submit"],
	:root .jjcPostContent input[type="reset"] {
		padding: 3px 0.7em 1px;
		margin: 0;
	}

	:root .jjcPostContent form label,
	:root .jjcPostContent button,
	:root .jjcPostContent input[type="button"],
	:root .jjcPostContent input[type="submit"],
	:root .jjcPostContent input[type="reset"],
	:root .jjcPostContent select {
		cursor: hand;
		cursor: pointer;
	}

	:root .jjcPostContent #mail_contact input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]),
	:root .jjcPostContent #mail_contact select,
	:root .jjcPostContent #mail_contact textarea {
		box-sizing: content-box;
	}

	:root .jjcPostContent #mail_contact {
		width: 800px;
		margin: 0 auto;
		border-top: 1px solid #d6d6d6;
		font-size: 15px;
		background: #f2f3f4;
		background: -webkit-linear-gradient(left, #f2f3f4 0%,#f2f3f4 34%,#fff 34%,#fff 100%);
		background: -moz-linear-gradient(left, #f2f3f4 0%, #f2f3f4 34%, #fff 34%, #fff 100%);
		background: linear-gradient(to right, #f2f3f4 0%,#f2f3f4 34%,#fff 34%,#fff 100%);
	}

	:root .jjcPostContent .line_input {
		overflow: hidden;
		padding: 2em 0 1em 292px;
		border-bottom: 1px solid #d6d6d6;
		border-right: 1px solid #d6d6d6;
		border-left: 1px solid #d6d6d6;
	}

	:root .jjcPostContent #mail_contact .heading {
		float: left;
		margin-left: -264px;
	}

	:root .jjcPostContent #mail_contact .cont_box {
		float: left;
		width: 100%;
	}

	:root .jjcPostContent #mail_contact .cont_box label {
		float: left;
		width: auto;
		clear: both;
		margin-bottom: .2em;
	}

	:root .jjcPostContent #mail_contact .no_float label {
		float: none;
	}

	:root .jjcPostContent #mail_contact .補助テキスト {
		margin: 0 0 1.6em 0;
		padding: .5em 0 1.2em 32px;
		border-bottom: 1px dotted gray;
		font-size: .8em;
	}

	:root .jjcPostContent #mail_contact .wpcf7-list-item-label {
		color: #39c;
	}

	:root .jjcPostContent #mail_contact .cont_box label:hover {
		color: tomato;
	}

	:root .jjcPostContent #mail_contact input,
	:root .jjcPostContent #mail_contact select,
	:root .jjcPostContent #mail_contact textarea {
		font-size: 1em;
		padding: .4em .6em .2em;
	}

	:root .jjcPostContent #mail_contact textarea {
		width: 90%;
		height: 6em;
	}

	:root .jjcPostContent #company_name {
		float: left;
		width: 60%;
	}

	:root .jjcPostContent .btn_area {
		text-align: center;
	}

	:root .jjcPostContent .btn_area input {
		padding: .6em 5em .5em;
		font-size: 1.4em;
		font-weight: bold;
	}

	:root .jjcPostContent .hide_element {
		display: none;
	}

	:root .jjcPostContent .hissu,
	:root .jjcPostContent .ninni {
		position: relative;
		display: inline-block;
		vertical-align: middle;
		margin: 0 0 5px 1.5em;
		padding: .3em .0 .05em;
		font-size: .7em;
		color: #fff;
		border-radius: 4px;
	}

	:root .jjcPostContent .hissu:after,
	:root .jjcPostContent .ninni:after {
		content: "";
		position: absolute;
		top: 50%;
		left: -4px;
		margin-top: -4px;
		display: block;
		width: 0px;
		height: 0px;
		border-style: solid;
		border-width: 4px 4px 4px 0;
	}

	:root .jjcPostContent .hissu:after {
		border-color: transparent #188C6B transparent transparent;
	}

	:root .jjcPostContent .ninni:after {
		border-color: transparent #bbb transparent transparent;
	}

	:root .jjcPostContent .hissu {
		background-color: #188C6B;
	}

	:root .jjcPostContent .ninni {
		background-color: #bbb;
	}

	:root .jjcPostContent .btn_tel {
		text-align: center;
		overflow: hidden;
		margin-bottom: 1em;
	}

	:root .jjcPostContent .btn_tel a {
		margin: 0 .5em 1em;
		-moz-box-shadow: inset 0px 1px 0px 0px #ffffff;
		-webkit-box-shadow: inset 0px 1px 0px 0px #ffffff;
		box-shadow: inset 0px 1px 0px 0px #ffffff;
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0.05, #f9f9f9), color-stop(1, #e9e9e9));
		background: -moz-linear-gradient(top, #f9f9f9 5%, #e9e9e9 100%);
		background: -webkit-linear-gradient(top, #f9f9f9 5%, #e9e9e9 100%);
		background: -o-linear-gradient(top, #f9f9f9 5%, #e9e9e9 100%);
		background: -ms-linear-gradient(top, #f9f9f9 5%, #e9e9e9 100%);
		background: linear-gradient(to bottom, #f9f9f9 5%, #e9e9e9 100%);
		background-color: #f9f9f9;
		-moz-border-radius: 6px;
		-webkit-border-radius: 6px;
		border-radius: 6px;
		border: 1px solid #dcdcdc;
		display: inline-block;
		cursor: pointer;
		color: #666666;
		font-family: Arial;
		font-size: 15px;
		font-weight: bold;
		padding: 6px 24px;
		text-decoration: none;
		text-shadow: 0px 1px 0px #ffffff;
	}

	:root .jjcPostContent .btn_tel a:hover {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0.05, #e9e9e9), color-stop(1, #f9f9f9));
		background: -moz-linear-gradient(top, #e9e9e9 5%, #f9f9f9 100%);
		background: -webkit-linear-gradient(top, #e9e9e9 5%, #f9f9f9 100%);
		background: -o-linear-gradient(top, #e9e9e9 5%, #f9f9f9 100%);
		background: -ms-linear-gradient(top, #e9e9e9 5%, #f9f9f9 100%);
		background: linear-gradient(to bottom, #e9e9e9 5%, #f9f9f9 100%);
		background-color: #e9e9e9;
	}

	:root .jjcPostContent .btn_tel a:active {
		position: relative;
		top: 1px;
	}

	:root .jjcPostContent .wpcf7-response-output {
		text-align: center;
		background-color: #F4FFB6;
		border: 1px solid #A6FD7A;
		border-radius: 5px;
	}

	:root .jjcPostContent .mailform_caution {
		overflow-y: scroll;
		width: 80%;
		height: 160px;
		margin: 10px auto 20px;
		padding: 2em 2em 1em;
		background-color: var(--jjc-c-pale, #f4f7f8);
	}

	:root .jjcPostContent .mailform_caution h4 {
		margin-bottom: 1em;
		text-align: center;
		font-size: 13px;
	}

	:root .jjcPostContent .mailform_caution ol {
		font-size: 11px;
		margin-bottom: 0;
		line-height: 1.8em;
	}

	:root .jjcPostContent .mailform_caution li,
	:root .jjcPostContent .mailform_caution p {
		font-size: 11px;
		margin-bottom: 11px;
		line-height: 1.8em;
	}

	:root .jjcPostContent .note {
		font-size: 12px;
		color: gray;
	}

	:root .jjcPostContent #mail_contact input[type="date"] {
		width: 192px;
		height: 17px;
		border: 1px solid #ddd;
		font-family: Arial, sans-serif;
		color: #333;
		background-color: #fff;
		vertical-align: text-bottom;
	}
}
:root .jjcPostContent .btn_area {
	text-align: center;
}

/* 旧 style.css の .cf（clearfix） */
:root .jjcPostContent .cf:before,
:root .jjcPostContent .cf:after {
	content: "";
	display: table;
}

:root .jjcPostContent .cf:after {
	clear: both;
}

/* 確認画面（旧 custom.css） */
:root .jjcPostContent .confirm_area input[type="submit"] {
	display: block;
	margin: auto;
	padding: 1rem 3rem;
	font-size: 1.3rem;
}

:root .jjcPostContent .confirm_box {
	display: flex;
	justify-content: space-between;
	gap: 80px;
}

:root .jjcPostContent .confirm_box:last-of-type {
	margin-bottom: 2rem;
}

:root .jjcPostContent .confirm_box div {
	width: 50%;
}

:root .jjcPostContent .confirm_text {
	padding: 1rem;
	background: rgba(0, 211, 63, 0.05);
	border-radius: 10px;
}

:root .jjcPostContent .confirm_text p {
	margin: 0 !important;
}

:root .jjcPostContent .confirm_check {
	position: relative;
}

:root .jjcPostContent .confirm_check::before {
	position: absolute;
	top: 40px;
	left: -50px;
	display: block;
	content: "";
	width: 20px;
	height: 20px;
	background: #188c6b;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
}

:root .jjcPostContent .confirm_check p {
	margin: 0 !important;
	padding: 2rem 1.5rem !important;
	border: 1px solid #188c6b;
}

:root .jjcPostContent .confirm_agree {
	padding: 1rem 0 !important;
	text-align: center;
	background: #fafafa;
	border: 1px solid #eee;
}

:root .jjc-page-house_moveout .jjcPostContent .cont_box {
	display: block;
}
@container onestarViewport (inline-size <= 480px) {
	:root .jjcPostContent .confirm_box div {
		width: 100%;
	}

	:root .jjcPostContent .confirm_check p {
		margin: 0 !important;
		padding: 2rem 0 !important;
		text-align: center;
	}

	:root .jjcPostContent .confirm_check input[type="checkbox"] {
		display: block;
		cursor: pointer;
		height: 25px;
		width: 25px;
		margin: auto;
		margin-bottom: 0.5rem;
	}

	:root .jjcPostContent .wpcf7-list-item {
		margin: 0 !important;
	}

	:root .jjc-page-house_moveout .jjcPostContent .cont_box {
		display: block;
		width: 100%;
		box-sizing: border-box;
	}

	:root .jjc-page-house_moveout .jjcPostContent .cont_box input {
		padding: 0.5rem;
		box-sizing: border-box;
	}

	:root .jjc-page-house_moveout .jjcPostContent .cont_box input[type="text"],
	:root .jjc-page-house_moveout .jjcPostContent .cont_box input[type="email"] {
		width: 100%;
	}

	:root .jjc-page-house_moveout .jjcPostContent .cont_box select {
		padding: 0.2rem;
	}

	:root .jjc-page-house_moveout .jjcPostContent .cont_box select[name="josuikiari"] {
		margin-left: 1rem;
	}

	:root .jjc-page-house_moveout .jjcPostContent .cont_box .message {
		margin-right: 0;
	}

	:root .jjc-page-house_moveout .jjcPostContent .cont_box .message textarea {
		padding: 0.5rem;
	}
}
@container onestarViewport (768px <= inline-size <= 1024px) {
	:root .jjcPostContent .confirm_check {
		margin-right: 20px;
	}
}

/* スマホ版（旧サイト style-post-mobile.css） */
@container onestarViewport (inline-size < 48rem) {
	:root .jjcPostContent {
		padding: 15px;
	}

	:root .jjcPostContent .page_header {
		margin-bottom: .5em;
		padding: 15px 25px 30px;
	}

	:root .jjcPostContent h1 {
		padding: 0;
	}

	:root .jjcPostContent a {
		text-decoration: none;
	}

	:root .jjcPostContent .eye_catch {
		width: 100%;
		box-sizing: border-box;
		padding: 7px;
	}

	:root .jjcPostContent .eye_catch img {
		width: 100%;
		height: auto;
		vertical-align: bottom;
	}

	:root .jjcPostContent .flex {
		display: block;
	}

	:root .jjcPostContent .flex div {
		margin: 1em 0;
	}

	:root .jjcPostContent .contents_menu .flex div {
		margin: 1em;
	}

	:root .jjcPostContent .list_check {
		padding: 0em;
	}

	:root .jjcPostContent .list_check li {
		margin-bottom: 1em;
		padding-left: 2.2em;
	}

	:root .jjcPostContent .call {
		padding-top: 1.2em;
	}

	:root .jjcPostContent .call a {
		font-size: 1.7em;
	}

	:root .jjcPostContent .call p:first-child {
		margin-bottom: 1em;
		font-size: 128%;
		font-weight: 900;
	}

	:root .jjcPostContent .frame_content {
		padding: 0 25px;
	}

	:root .jjcPostContent #daihyou_company {
		display: block;
		float: none;
		margin: 0 auto;
	}

	:root .jjcPostContent .company_main_col {
		margin-bottom: 20px;
	}

	:root .jjcPostContent .company_col_3 {
		float: none;
		width: 384px;
		margin-bottom: 20px;
	}

	:root .jjcPostContent .company_col_2 {
		width: 382px;
		padding: 20px 0;
		margin-bottom: 20px;
	}

	:root .jjcPostContent .bluecube:after {
		border-right: 192px solid transparent;
		border-left: 192px solid transparent;
	}

	:root .jjc-page-recruit .jjcPostContent ul.bt_2 {
		list-style-type: none;
		padding: 0;
	}

	:root .jjc-page-recruit .jjcPostContent ul.bt_2 li {
		width: 49%;
	}

	:root .jjc-page-recruit .jjcPostContent ul.bt_2 li:nth-child(odd) {
		margin-right: 2%;
	}

	:root .jjcPostContent #my_bukken {
		width: 100%;
	}

	:root .jjcPostContent #my_bukken #t_img {
		float: none;
		margin: 0;
	}

	:root .jjcPostContent #my_bukken #t_img img {
		max-width: 100%;
		max-height: 100%;
	}

	:root .jjcPostContent #mail_contact .line_input {
		margin-bottom: 15px;
		line-height: 2em;
		border-top: 3px solid var(--jjc-c-pale2, #e4eaf3);
	}

	:root .jjcPostContent #mail_contact .line_input .heading {
		display: block;
		padding: 15px 0 10px;
		font-size: 20px;
		font-weight: bold;
		color: var(--jjc-c-blue, #073b87);
	}

	:root .jjcPostContent #mail_contact textarea {
		width: 94%;
		margin-top: 5px;
	}

	:root .jjcPostContent .wpcf7-submit {
		padding: .5em 3em;
		font-size: 24px;
	}

	:root .jjcPostContent .hissu,
	:root .jjcPostContent .ninni {
		font-size: 13px;
		margin-left: .5em;
		font-weight: normal;
	}

	:root .jjcPostContent .hissu {
		color: orange;
	}

	:root .jjcPostContent .ninni {
		color: gray;
	}

	:root .jjcPostContent .mailform_caution {
		overflow-y: scroll;
		width: 80%;
		height: 100px;
		margin: 10px auto 20px;
		padding: 2em 2em 1em;
		background-color: var(--jjc-c-pale, #f4f7f8);
	}

	:root .jjcPostContent .mailform_caution h4 {
		margin-bottom: 1em;
		text-align: center;
		font-size: 13px;
	}

	:root .jjcPostContent .mailform_caution ol {
		font-size: 11px;
		margin-bottom: 0;
		margin-left: 0;
		padding-left: 1em;
		line-height: 1.8em;
	}

	:root .jjcPostContent .mailform_caution li,
	:root .jjcPostContent .mailform_caution p {
		font-size: 11px;
		margin-bottom: 11px;
		line-height: 1.8em;
	}

	:root .jjc-page-contact-top .jjcPostContent #mainbox_1 {
		background: url("images/legacy/bg_contact_owner.png") no-repeat;
	}

	:root .jjc-page-contact-top .jjcPostContent #mainbox_2 {
		background: url("images/legacy/bg_contact_customer.png") no-repeat;
	}

	:root .jjc-page-contact-top .jjcPostContent #mainbox_1,
	:root .jjc-page-contact-top .jjcPostContent #mainbox_2 {
		height: 250px;
		margin-left: 34px;
	}

	:root .jjc-page-contact-top .jjcPostContent #mainbox_1 ul,
	:root .jjc-page-contact-top .jjcPostContent #mainbox_2 ul {
		list-style-type: none;
		padding: 0;
	}

	:root .jjcPostContent .akiya * {
		box-sizing: border-box;
	}

	:root .jjcPostContent .akiya img {
		display: block;
		max-width: 100%;
		margin: auto;
	}

	:root .jjcPostContent .akiya .txt-c {
		text-align: center;
	}

	:root .jjcPostContent .akiya .fnt-s {
		font-size: 80%;
	}

	:root .jjcPostContent .akiya h2,
	:root .jjcPostContent .akiya h3 {
		padding-left: 0;
		background: none #FFFFFF;
	}

	:root .jjcPostContent .akiya h3 {
		color: #2ea6b2;
		border-bottom: 1px solid #2ea6b2;
		display: inline-block;
		margin-top: 0!important;
	}

	:root .jjcPostContent .akiya h3 span {
		color: #e15625;
		border: none;
		font-weight: 900;
	}

	:root .jjcPostContent .akiya ul {
		margin: 0!important;
		padding: 0;
	}

	:root .jjcPostContent .akiya li {
		padding: 0;
		display: block;
		width: 100%;
		text-align: center;
	}

	:root .jjc-page-lend-property .jjcPostContent .flex li {
		list-style-type: none;
		margin-bottom: 1rem;
	}

	:root .jjc-page-lend-property .jjcPostContent .peace {
		width: 180px;
		height: 118px;
		display: block;
		margin: auto;
		padding-top: 68px;
		border-radius: 50%;
		text-align: center;
		background: #c3d60b;
		color: #FFFFFF;
		font-size: 1.2em;
		font-weight: 900;
	}
}

/* ---------- 手直し（convert.py の EXTRA）：幅の固定をやめ、どの幅でも親に収める ---------- */
/* お問い合わせフォーム（旧 style.css の #mail_contact は幅 800px 固定）：画面が狭い PC（768〜1150px 前後）でも本文の幅に収める。
 * 入力欄も箱からはみ出さない（.line_input の overflow: hidden で切れないように） */
:root .jjcPostContent #mail_contact {
	max-inline-size: 100%;
}

:root .jjcPostContent #mail_contact :is(input, select, textarea) {
	max-inline-size: 100%;
}

/* 会社概要の青い見出しの下の三角：左右の透明な枠線（固定 138px・192px）ではなく、幅いっぱいの三角を切り抜きで描く */
:root .jjcPostContent .bluecube:after {
	inset-inline: 0;
	inline-size: auto;
	block-size: 13px;
	border: 0;
	background: #00348a;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
}

@container onestarViewport (inline-size < 48rem) {
	/* 旧 CSS で幅を px で決めている箱（640・600・420・350・310px など）は、親より広くならないように */
	:root .jjcPostContent :where(div, section, table, ul, ol, dl, figure, img, iframe, video) {
		max-inline-size: 100%;
	}

	:root .jjcPostContent :is(.company_col_3, .company_col_2) {
		inline-size: auto;
		max-inline-size: 100%;
	}

	:root .jjcPostContent .company_main_col {
		overflow: visible;
	}

	:root .jjcPostContent :is(.company_main_col, .company_col_3, .company_col_2) table {
		inline-size: 100%;
		table-layout: fixed;
		overflow-wrap: anywhere;
	}

	/* 旧 CSS の th 150px + td 350px（= 500px）が table-layout: fixed でも表の幅を押し広げるので、狭い画面では比率（3:7）にする */
	:root .jjcPostContent :is(.company_main_col, .company_col_3, .company_col_2) table tbody th {
		width: 30%;
	}

	:root .jjcPostContent :is(.company_main_col, .company_col_3, .company_col_2) table td {
		width: auto;
	}

	:root .jjcPostContent .company_main_col th {
		white-space: normal;
	}
}
