@charset "utf-8";
/*
Theme Name:mrp04-child
Template:mrp04
Version: 0.01
*/
@import url("https://fonts.googleapis.com/css2?family=Bebas+Neue&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Barlow:wght@900&display=swap");

/* --------------------------------------------------------------
 基本設定
-------------------------------------------------------------- */
body {
	overflow-x: hidden;
	font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
		"游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "メイリオ", Meiryo,
		"Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
	font-style: normal;
	font-size: 100%;
}

/*#wrapper, #content, .post{
	overflow: visible;
}*/
ul.post {
	padding: 5rem 0;
}

.post img {
	border: none !important;
	padding: 0;
	margin: 0 !important;
	vertical-align: bottom;
}

.home #content {
	padding: 0;
	width: 100%;
}

#content {
	padding: 0;
}

.post {
	margin-bottom: 0;
	padding: 0;
}

.post p {
	line-height: 2.2;
}

.mt3 {
	margin-top: 3% !important;
}

.mt2 {
	margin-top: 2% !important;
}

.mt5 {
	margin-top: 5% !important;
}

.mt6 {
	margin-top: 6% !important;
}

.mt10 {
	margin-top: 10% !important;
}

.pt5 {
	padding-top: 5% !important;
}

.pt10 {
	padding-top: 10% !important;
}

.pb0 {
	padding-bottom: 0% !important;
}

.bold {
	font-weight: bold !important;
}

.mt20 {
	margin-top: 20px !important;
}

.mb2 {
	margin-bottom: 2% !important;
}

.mb3 {
	margin-bottom: 3% !important;
}

.mb5 {
	margin-bottom: 5% !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.mtb3 {
	margin: 3% auto !important;
}

.mtb5 {
	margin: 5% auto !important;
}

p.pb0.bold {
	display: table;
}

.center {
	text-align: center;
	margin: 0 auto;
	display: block;
}

.innerContent {
	width: 90%;
	max-width: 1560px;
	margin: 0 auto;
}

.innerContent780 {
	width: 96%;
	max-width: 780px;
	margin: 0 auto;
}

.innerContent1200 {
	position: relative;
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
}

#gallery-2 img,
#gallery-1 img {
	border: none !important;
}

.post img.aligncenter {
	margin: 0 auto !important;
}

b {
	font-weight: normal;
}

.pcbr,
table.pc_t,
.post img.img_pc {
	display: block;
	margin: 0 auto !important;
}

.spbr,
table.sp_t,
.post img.img_sp {
	display: none;
}

.postlist .date,
.postlist .ttls {
	padding: 0;
	font-family: inherit;
	font-size: 1rem;
}

.post ul {
	margin: 0;
}

.post ul li {
	list-style: none;
}

.post ul.disc li {
	list-style: disc;
	border: none;
	margin-left: 2rem;
}

.post ol {
	list-style: decimal;
}

.post ol li {
	border-bottom: 0;
	margin-left: 1rem;
}

.page-sitemap #sitemap_list b {
	margin-left: 10px;
}

.page-template .post,
.category #content,
.single #content,
.archive .postlist,
.archive .post {
	padding-bottom: 5%;
}

sup {
	vertical-align: super;
	font-size: smaller;
}

/*ジャンプリンク位置調整*/
.a_point::before {
	content: "";
	display: block;
	padding-top: 160px;
	margin-top: -160px;
}

@media (max-width: 767px) {
	.a_point::before {
		padding-top: 80px;
		margin-top: -80px;
	}

	ul.post {
		padding: 2.5rem 0;
	}
}

/*scroll矢印色
[class^="icon-"]:before, [class*=" icon-"]:before {
	color: #d9ba6a;
}
*/
@media print,
screen and (min-width: 1500px) {

	#wrapper,
	.inner {
		width: 1300px;
		padding: 0;
	}
}

@media screen and (min-width: 768px) and (max-width: 1300px) {
	.post p {
		font-size: 0.9rem;
	}

	.footcaption,
	#footer li a,
	.footeradd,
	.footertel {
		font-size: 0.8rem !important;
	}
}

.mobile #footer p a {
	color: #ffffff;
}

@media only screen and (max-width: 959px) {
	#wrapper {
		padding: 10px;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
}

@media (max-width: 767px) {
	body.mobile {
		font-size: 0.8rem;
		line-height: normal;
	}

	.post p {
		font-size: 0.9rem;
		padding-bottom: 10px;
		line-height: 2;
	}

	.spbr,
	table.sp_t,
	.post img.img_sp {
		display: block;
	}

	.pcbr,
	table.pc_t,
	.post img.img_pc {
		display: none;
	}

	.page-sitemap #sitemap_list a {
		font-size: 0.75rem;
	}
}

@media only screen and (max-width: 1023px) {
	#content.wide {
		width: 100%;
	}

	body.mobile {
		margin-top: 0;
	}
}

/*パンくず*/
#breadcrumb {
	padding: 10px;
}

#breadcrumb ul li a,
#breadcrumb ul li {
	margin: 0 3px;
}

#breadcrumb ul li b {
	margin-left: 5px;
}

#breadcrumb ul {
	padding-left: 5px;
}

#breadcrumb ul li span.en {
	display: none;
}

body.mobile #mainImg {
	margin-top: 60px;
}

body.mobile #breadcrumb {
	margin-top: 0px;
}

hr {
	margin: 2rem 0;
	color: #fafafa;
	border: 1px solid;
}

@media print,
screen and (min-width: 1100px) {
	#breadcrumb ul {
		max-width: 1510px;
		width: 100%;
	}
}

@media only screen and (max-width: 768px) {

	#header .description,
	#header h1 {
		padding: 5px 10px 0 10px;
	}

	.mobile #breadcrumb {
		padding: 5px 0;
	}

	.post ul.disc li {
		margin-left: 20px;
	}
}

/*flexbox*/
.w30,
.w40,
.w48,
.w50,
.w60,
.w70 {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.w30 {
	width: 30%;
}

.w40 {
	width: 40%;
}

.w48 {
	width: 48%;
}

.w50 {
	width: 50%;
}

.w60 {
	width: 60%;
}

.w70 {
	width: 70%;
}

.w40 img {
	border-radius: 15px;
}

.post .w60 h2 {
	text-align: left;
	padding: 0 4% 1rem 0;
	margin-left: 4%;
	margin-right: 4%;
}

@media (min-width: 768px) {

	.columns,
	.boxs,
	.item_boxs {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
}

@media (max-width: 768px) {
	.columns.rev {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
	}

	.w30,
	.w40,
	.w48,
	.w50,
	.w60,
	.w70 {
		width: 100%;
		margin-bottom: 20px;
	}

	.column:not(:last-child) {
		margin-bottom: 20px;
	}

	.columns.rev {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		-ms-flex-direction: column-reverse;
		flex-direction: column-reverse;
	}
}

/*見出し*/
.post h2,
h2 {
	font-size: 1.4rem;
	background: transparent;
	padding: 15px;
	line-height: 1.2;
	text-align: center;
	font-weight: bold;
	border-bottom: 1px solid;
	margin-bottom: 2rem;
}

.post h2:before {
	width: 100%;
	height: auto;
	top: 0;
	background-color: #cc0406;
}

.post .front_headline h2 {
	padding: 0;
}

.post h3,
h3 {
	padding: 1rem;
	border-left: 5px solid #cc0406;
	background-color: none;
	margin-bottom: 1rem;
	font-weight: bold;
	font-size: 1.3rem;
	color: #cc0406;
	line-height: 1.5;
}

.post h4,
h4 {
	padding: 1rem 1.5rem;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border: none;
	border-bottom: 3px solid #cc0406;
	background: #ffffff;
	margin-bottom: 1rem;
}

h5 {
	padding: 1rem 1.5rem;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-bottom: 6px double #000;
	background: #f4f4f4;
	margin-bottom: 1rem;
}

h6 {
	padding: 1rem 1.5rem;
	border: 6px double #000;
}

h1.title,
.post h1 {
	color: #cc0406;
}

h1.ttl,
h1.bottom-loop,
body:not(.home) h1.first,
h2.sub_ttl {
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: 3rem;
	margin: 0;
	margin-bottom: 3%;
	padding: 0;
	display: block;
	line-height: 1.2;
	text-align: left;
	padding-left: 5rem;
}

h1.ttl b,
h1.bottom-loop b,
h2.ttl b,
h1.first b,
h2.sub_ttl b {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	margin-left: 15px;
	font-size: 1.2rem;
}

body.single-post h1.first {
	line-height: 2;
	font-family: "Noto Sans JP", sans-serif;
}

h2.ttl {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
	line-height: 1.4;
	margin-bottom: 2rem;
	font-size: 1.6rem;
	border-bottom: 1px solid;
	padding: 10px;
}

h2.sub_ttl {
	font-size: 2rem;
	border-bottom: 1px solid #d5d5d5;
	text-align: left;
	padding: 10px 1rem;
}

.post h2.b_ttl,
.post h3.ttl {
	border-left: 5px solid #000;
	font-size: 1.2rem;
	padding: 0.6rem 1rem;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-weight: 500;
	text-align: inherit;
}

.post h2 {
	color: #cc0406;
	font-size: 2rem;
	font-family: "Barlow", "Noto Sans JP", sans-serif;
	padding: 0.6rem 1rem;
	margin-bottom: 1rem;
}

.post h2.en {
	font-weight: normal;
	border: none;
	font-size: 90px;
}

.post h2 span {
	background: #cc0406;
	padding-left: 0;
}

.post h2.white {
	color: #ffffff;
}

.post h2.smalls {
	font-size: 60px;
}

.front_headline h2 {
	text-align: left;
	border-bottom: 0;
}

p+h2 {
	margin-top: 3rem;
}

p+h3 {
	margin-top: 3rem;
}

.post table+h2 {
	margin-top: 4.5rem;
}

p.nolines {
	position: relative;
	padding: 0;
	text-align: left;
	color: #000000;
	font-weight: bold;
	font-size: 35px;
	line-height: 1;
	margin: 0.8rem auto 2rem auto;
}

p.lines {
	position: relative;
	display: table;
	padding: 0 65px;
	text-align: center;
	color: #cc0406;
	font-weight: bold;
	font-size: 22px;
	line-height: 1;
	margin: 0 auto 2rem auto;
}

p.lines:before,
p.lines:after {
	position: absolute;
	top: calc(50%);
	width: 50px;
	height: 1px;
	content: "";
	border-top: solid 1px #cc0406;
}

p.lines:before {
	left: 0;
}

p.lines:after {
	right: 0;
}

p.lines.white {
	color: #ffffff;
}

p.lines.white:before,
p.lines.white:after {
	border-top: solid 1px #ffffff;
}

.post h3.ttl {
	font-size: 1rem;
	padding: 12px 1rem;
	margin: 0 auto 1rem;
	font-weight: 400;
}

.post h3.ttl b {
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	margin-right: 10px;
}

h2.ttl b,
h1.ttl b.jp,
h1.bottom-loop b {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 1rem;
	font-weight: 300;
	line-height: 2;
	display: block;
}

body:not(.home) h1.first {
	margin: 10rem auto;
	padding-left: 0;
	text-align: center;
}

.archive h1.first {
	text-transform: uppercase;
}

body.single h1.first,
body.category h1.first,
body.search h1.first,
body.error404 h1.first {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 1.8rem;
	font-weight: 600;
}

body.single h1.first,
body.search h1.first,
body.error404 h1.first {
	text-align: center;
}

.post h2.title,
.post h2 a,
.post2b h2 a,
.post4b h2 a {
	font-size: inherit;
}

@media screen and (min-width: 768px) and (max-width: 1450px) {

	h1.ttl,
	h1.bottom-loop {
		font-size: 3rem;
		padding-left: 3rem;
	}

	body:not(.home).page-template h1.first {
		font-size: 3rem;
	}

	h2.ttl {
		font-size: 1.4rem;
	}
}

@media (max-width: 767px) {

	h3,
	h4,
	h5,
	h6,
	.post h4 {
		font-size: 0.9rem;
		line-height: 1.2;
	}

	h1.ttl,
	h1.bottom-loop,
	body:not(.home) h1.first {
		font-size: 1.6rem !important;
		margin-bottom: 2rem;
		padding-left: 2rem;
	}

	h1.ttl b,
	h1.bottom-loop b,
	h2.ttl b,
	h1.first b,
	.post h2.sub_ttl b {
		font-size: 0.8rem;
		display: block;
		margin-left: 0;
		margin-top: 5px;
	}

	body:not(.home) h1.first {
		margin: 5rem auto;
		line-height: 1.3;
		padding-left: 0;
	}

	body:not(.home) h1.first b {
		margin: 0;
	}

	body.single h1.first,
	body.category h1.first {
		font-size: 1.2rem !important;
		letter-spacing: normal;
	}

	#h1Header h1.first b {
		margin: 0;
	}

	.post h2 {
		font-size: 1.2rem;
	}

	.post h3 {
		font-size: 1rem;
	}

	body:not(.home) .post h3 {
		margin: 10px auto;
		font-size: 0.85rem;
		line-height: 1.4;
	}

	h2.ttl {
		margin-bottom: 1rem;
	}

	.post h2.sub_ttl {
		font-size: 1.5rem;
		margin-bottom: 1.5rem;
	}

	.post h3.ttl {
		font-size: 0.9rem !important;
		line-height: 1.5;
		padding: 0.5rem 0.5rem 0.5rem 1rem;
	}

	.archive h1.first {
		text-align: center !important;
	}
}

/*table*/
.post table {
	background-color: rgba(255, 255, 255, 0.1) !important;
}

.post table,
.post table th,
.post table td {
	border: none;
	background: none;
	padding: 20px 10px;
	color: #1f1f1f;
	font-size: 0.9rem;
	font-weight: 400;
}

.post table th {
	background-color: unset;
	font-weight: bold;
	vertical-align: middle;
	width: 30%;
	letter-spacing: 0.05em;
}

.post table td {}

.post table tr {
	border-bottom: 1px solid #d4d4d4;
}

table.responsive {
	margin: 3% 0;
}

.post table ul li {
	list-style: disc;
	margin-left: 1.5rem;
	border-bottom: 0;
}

.post .time,
.postlist .time,
.post2b .time,
.post4b .time {
	background-color: transparent;
	padding: 0;
	color: #000000;
	margin-right: 5px;
	margin-bottom: 5px;
	display: inline-block;
}

.post .time a,
.post2b .time a,
.post4b .time a,
.postlist .time a {
	color: #ffffff;
	padding: 2px 10px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 0.9rem;
	line-height: 1;
	background: #cc0406;
}

span.textblock {
	font-size: 0.8rem;
	line-height: 1;
}

input[type="text"] {
	width: auto;
}

select.wpcf7-form-control.wpcf7-select {
	width: auto;
}

@media (min-width: 768px) {}

@media (max-width: 767px) {

	.post table,
	.post table th,
	.post table td {
		padding: 18px 10px;
		font-size: 0.8rem;
	}

	.post table.responsive td,
	.post table.responsive th {
		text-align: left !important;
	}

	.post table.responsive td {
		padding: 18px 10px;
	}

	span.textblock {
		text-align: left;
		display: block;
		line-height: 1.2;
	}

	.post .time a,
	.post2b .time a,
	.post4b .time a,
	.postlist .time a {
		padding: 0 5px;
		font-size: 0.75rem;
	}
}

/*linkBtn｜ボタン設定*/
.post .linkBtn a,
.linkBtn a,
.linkBtn.active,
.post .linkBtn input[type="submit"] {
	color: #fff;
	padding: 15px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-style: normal;
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	letter-spacing: 0.02em;
	text-align: left;
	-webkit-box-shadow: none;
	box-shadow: none;
	width: 100%;
}

.general-flex .linkBtn {
	display: inherit;
}

.general-flex .linkBtn,
.post .general-flex .linkBtn {
	display: inline-block;
}

.wpcf7-form input[type="submit"],
.linkBtn,
.post .linkBtn {
	font-size: 18px;
	width: 300px;
	line-height: 1.8;
	-webkit-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
	font-weight: bold;
	margin: 3% 0 0;
	background: #000000;
	color: #fff;
	-webkit-appearance: none;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 15px;
	overflow: hidden;
	border-radius: 0;
	display: block;
	border: 1px solid #000000;
	text-align: center;
	box-shadow: 7px 7px 0px 0 #fe3f44;
}

.post .linkBtn.large {
	width: 100%;
	max-width: 300px;
	padding: 20px;
}

.post .linkBtn.center,
.f_top .linkBtn.center {
	margin: 0 auto 1rem !important;
}

.post .linkBtn::after,
.linkBtn::after,
.wpcf7-form input[type="submit"]:after {
	content: none;
}

.post .linkBtn:hover input[type="submit"],
.linkBtn:hover,
.post .linkBtn:hover,
.linkBtn:hover a {
	cursor: pointer;
	background: #fe3f44;
	color: #000000;
	-webkit-box-shadow: none;
	box-shadow: none;
	-webkit-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
	border: 1px solid #fe3f44;
}

input.wpcf7-form-control.wpcf7-submit {
	position: relative;
	padding: 10px 1rem;
	box-sizing: border-box;
	display: block;
	margin: 0 auto;
	text-align: center;
	transition: all 0.5s;
	font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
		"游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "メイリオ", Meiryo,
		"Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
}

input.wpcf7-form-control.wpcf7-submit:hover {
	background: #fe3f44;
	color: #ffffff;
	border: 1px solid #fe3f44;
	box-shadow: 0px 0px 0px 0 #fe3f44;
}

.wpcf7-form input[type="submit"]::after {
	content: none;
}

.linkBtn a {
	display: block;
}

.wpcf7-form input[type="submit"]:after {
	content: none;
}

.mobile .wpcf7-form {
	padding: 0;
}

@media screen and (min-width: 768px) and (max-width: 1450px) {

	.post .linkBtn a,
	.linkBtn a,
	.linkBtn.active {
		padding: 10px 15px;
	}

	.wpcf7-form input[type="submit"],
	.linkBtn,
	.post .linkBtn {
		width: 230px;
	}
}

@media (max-width: 767px) {

	.wpcf7-form input[type="submit"],
	.linkBtn,
	.post .linkBtn,
	#footer .linkBtn {
		width: 180px;
		margin: 1rem auto 0;
	}

	.post .linkBtn a,
	.linkBtn a,
	.linkBtn.active {
		font-size: 0.85rem;
		padding: 10px;
	}

	.post .linkBtn,
	.linkBtn {
		margin: 1rem 0 0 auto !important;
	}
}

/*sitemap*/
#sitemap_list {
	margin: 0;
}

ul#sitemap_list .en {
	display: none;
}

.post ul#sitemap_list li {
	font-weight: bold;
	padding-left: 25px;
}

.post ul#sitemap_list li a {
	position: relative;
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px solid #eee;
	display: inline-block;
}

.post ul#sitemap_list li.page_item a {}

.post ul#sitemap_list li a:before {
	content: "\f105";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	color: #b61823;
	margin-right: 10px;
}

.page-sitemap #sitemap_list b {
	font-family: "Noto Sans JP", sans-serif;
	margin-left: 10px;
}

@media (max-width: 767px) {
	.post ul#sitemap_list li {
		padding-left: 0;
		margin-bottom: 0;
	}
}

.box-business {
	background: #eee;
	padding: 2rem;
	box-sizing: border-box;
}

/*eyecatch画像設定*/
@media (max-width: 767px) {

	.mobile .page-template-page-nosidebar-fullthumb #thumbImg,
	.mobile .page-template-page-nosidebar-fullwidth #thumbImg {
		margin-top: 0;
	}

	.mobile #thumbImg img {
		width: 100%;
		height: 200px;
		-o-object-fit: cover;
		object-fit: cover;
		-o-object-position: 32% center;
		object-position: 32% center;
	}
}

/*スマホのみ適応設定*/
@media screen and (min-width: 768px) {
	a[href^="tel:"] {
		color: inherit;
		text-decoration: none;
		pointer-events: none;
	}
}

/*IE対応object-fit設定*/
.post .o_fit,
.o_fit {
	-o-object-fit: cover;
	object-fit: cover;
}

img.noradius {
	border-radius: 0 !important;
}

/* --------------------------------------------------------------
 header
-------------------------------------------------------------- */
#header .inner {
	width: 100%;
}

body.sticky-header nav#mainNav {
	background: #ffffff;
}

body.mobile nav#mainNav.menuOpen {
	position: inherit;
}

.mobile li.ft_tel_mn,
.mobile li.ft_mail_mn {
	display: none;
}

@media print,
screen and (min-width: 1024px) {
	nav div.panel {
		float: none;
		display: inherit !important;
	}

	#mainNav .inner {
		margin: 0 auto;
	}

	nav#mainNav {
		z-index: 0;
		max-width: inherit;
	}

	.sticky-header #header .logo {
		top: 8px;
		left: 15px;
	}

	#header .logo {
		width: 100%;
		max-width: 340px;
	}

	#header .logo a {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
	}

	.spmenu #menu {
		display: none !important;
	}

	#header .logo img {
		width: 100%;
		max-height: initial;
		padding: 0.5rem 1rem 1rem 1rem;
		box-sizing: border-box;
	}

	#header .bg {
		margin-left: 15px;
	}

	#header-layout,
	#header .bg .inner {
		width: 100%;
		max-width: 1920px;
	}

	span.stk {
		display: none;
	}

	span.non-stk {
		display: block;
	}

	.sticky-header span.non-stk {
		display: none;
	}

	.sticky-header span.stk {
		display: block;
	}

	.sticky-header #header .logo img {
		max-height: 90px;
	}

	.sticky-header #header .logo a {
		height: 100px;
	}

	.gnav {
		transition: all 0.3s;
		top: -125px;
	}

	.gnav li {
		width: calc(100% / 6);
	}

	.sticky-header .gnav {
		position: fixed;
		top: 0;
		z-index: 2;
	}

	nav#mainNav ul li {
		border: none !important;
	}

	nav#mainNav ul li a b {
		font-size: 1.13rem;
		margin-top: 0;
		font-family: "Bebas Neue", "Noto Sans JP", sans-serif;
		color: #000000;
	}

	.gnav nav#mainNav ul li a b {
		font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3",
			"Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "游ゴシック体",
			"YuGothic", "メイリオ", Meiryo, "Meiryo UI", "ＭＳ Ｐゴシック",
			"MS PGothic", sans-serif;
	}

	nav#mainNav ul li.ft_tel_mn {
		background: #ffffff;
	}

	nav#mainNav ul li.ft_tel_mn a b {
		font-weight: normal;
		font-size: 37px;
		line-height: 1;
	}

	nav#mainNav ul li.nav_btn a b {
		font-family: "Poppins", sans-serif;
		font-weight: 800;
		letter-spacing: 0.02em;
		position: relative;
		color: #fff;
	}

	.gnav nav#mainNav ul li.ft_mail_mn,
	.gnav nav#mainNav ul li.ft_tel_mn {
		display: none;
	}

	.gnav nav#mainNav ul li.ft_mail_mn a,
	.gnav nav#mainNav ul li.ft_tel_mn a {
		padding: 1.1rem 1.2rem;
	}

	.gnav nav#mainNav ul li.ft_mail_mn a:hover,
	.gnav nav#mainNav ul li.ft_mail_mn a {
		padding: 1.1rem 1.2rem;
	}

	.gnav nav#mainNav ul li.ft_mail_mn a span {
		font-size: 0.95vw;
	}

	.gnav nav#mainNav ul li a b,
	nav#mainNav.sub ul li a b {
		font-size: 0.85vw;
	}

	.gnav nav#mainNav ul li.ft_tel_mn a b,
	nav#mainNav.sub ul li.ft_tel_mn a b {
		/*font-size: 37px;*/
		font-size: 1.9vw;
	}

	nav#mainNav.sub ul li.ft_mail_mn a span {
		font-size: 0.8vw;
	}

	.sticky-header nav#mainNav ul li.ft_mail_mn,
	.sticky-header nav#mainNav ul li.ft_tel_mn {
		display: inherit;
	}

	.sticky-header nav#mainNav ul li.ft_tel_mn a span {
		font-size: 11px;
	}

	.sticky-header .gnav li {
		width: calc(100% / 8);
	}

	nav#mainNav ul li.ft_tel_mn a b {
		font-family: "Bebas Neue", "Noto Sans JP", sans-serif;
	}

	nav#mainNav ul li a b i {
		font-size: 25px;
		top: -3px;
		position: relative;
	}

	.sticky-header nav#mainNav ul li.ft_tel_mn a b i {
		margin-right: 5px;
	}

	nav#mainNav ul li.ft_tel_mn a {
		padding: 0.9rem 1.6rem;
	}

	nav#mainNav ul li.ft_tel_mn a span {
		font-size: 12px;
		margin: 0;
		letter-spacing: 0.05rem;
	}

	nav#mainNav ul li.ft_mail_mn a {
		background: #fe3f44;
		padding: 1.18rem 1.65rem 1.12rem 1.65rem;
		box-sizing: border-box;
		margin: 0;
		transition: background 0.5s;
		display: flex;
		align-items: center;
		text-align: left;
		width: 100%;
	}

	nav#mainNav ul li.ft_mail_mn a:hover {
		background: #d61515;
		border-top: 0;
		padding: 1.18rem 1.65rem 1.12rem 1.65rem;
		text-decoration: none;
	}

	nav#mainNav ul li.ft_mail_mn a i {
		font-size: 30px;
		top: 0;
	}

	nav#mainNav ul li.ft_mail_mn a b {
		color: #ffffff;
		line-height: 1;
	}

	nav#mainNav ul li.ft_mail_mn a span {
		color: #ffffff;
		font-weight: bold;
		margin-left: 0.8rem;
	}

	nav#mainNav ul li a span {
		margin-top: 0px;
		line-height: 1.4;
		font-size: 1rem;
		font-weight: 300;
		color: #000000;
	}

	nav#mainNav ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		justify-content: center;
		justify-content: flex-end;
	}

	.gnav nav#mainNav ul {
		justify-content: center;
	}

	.gnav nav#mainNav ul li.first-child::before {
		content: none;
	}

	.gnav nav#mainNav ul li:before {
		content: "";
		width: 1px;
		display: block;
		background: #000000;
		height: 40px;
		position: absolute;
		transform: translateY(-50%);
		top: 50%;
	}

	.gnav nav#mainNav ul li a {
		padding: 30px;
	}

	nav#mainNav ul li a {
		padding: 20px 30px;
		margin: 0 0 0 0;
		height: 100%;
		transition: all 0.2s;
		box-sizing: border-box;
	}

	#header>.inner #header-layout {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		justify-content: flex-end;
		padding: 0;
		box-sizing: border-box;
		z-index: 3;
		position: relative;
		align-items: center;
	}

	nav#mainNav ul li.current-menu-item a::before,
	nav#mainNav ul li a:hover::before {
		content: none;
	}

	nav#mainNav ul li.current-menu-item a,
	nav#mainNav ul li a:hover,
	nav#mainNav ul li.current-menu-parent a {
		height: auto;
		padding-bottom: 30px;
		background: #cc0406;
	}

	nav#mainNav ul li ul.sub-menu li {
		background: rgb(255, 255, 255);
		border-bottom: 1px solid #eee;
	}

	nav#mainNav ul li:hover ul.sub-menu {
		top: 100%;
	}

	.sticky-header #header #header-layout {
		-webkit-box-shadow: 6px 2px 10px 5px rgba(0, 0, 0, 0.05);
		box-shadow: 6px 2px 10px 5px rgba(0, 0, 0, 0.05);
	}

	/*.sticky-header #header #header-layout nav#mainNav ul li a b, .single #header #header-layout nav#mainNav ul li a b, .category #header #header-layout nav#mainNav ul li a b {
		color: #1f1f1f;
	}*/
	.sticky-header #header #header-layout nav#mainNav ul li.nav_btn a b,
	.single #header #header-layout nav#mainNav ul li.nav_btn a b,
	.category #header #header-layout nav#mainNav ul li.nav_btn a b {
		color: #fff;
	}

	nav#mainNav ul li.nav_btn a {
		background-color: #000;
		padding: 10px 15px !important;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		margin: 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
		border: 1px solid;
	}

	nav#mainNav ul li.nav_btn a:hover {
		background-color: #ededed;
		-webkit-transition: all 0.5s;
		-o-transition: all 0.5s;
		transition: all 0.5s;
	}

	nav#mainNav ul li.nav_btn a:hover b,
	nav#mainNav ul li.nav_btn a:hover span {
		color: #1f1f1f !important;
	}

	nav#mainNav ul li.nav_btn img {
		margin-left: 10px;
	}

	nav#mainNav ul li.nav_btn i {
		margin-right: 10px;
	}

	nav#mainNav ul li:hover ul.sub-menu li a {
		color: #cc0406;
		margin: 0;
	}

	nav#mainNav ul li ul.sub-menu li a:before {
		content: none;
	}

	nav#mainNav ul li:hover ul.sub-menu li a:hover {
		color: #fff;
		background: #cc0406;
	}

	nav#mainNav ul li:not(:first-child) a:before {
		background-color: #d5d5d5;
		width: 1px;
		height: 20px;
		position: absolute;
		top: 50%;
		right: auto;
		left: -12px;
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
		background-image: none;
		border: none;
	}

	#header .linkBtn {
		margin: 0 !important;
	}

	nav#mainNav ul li.nav_btn.linkBtn {
		width: 250px;
	}
}

@media print,
screen and (max-width: 1500px) {

	.sticky-header .gnav li,
	.sticky-header .gnav.sub nav#mainNav ul li {
		width: calc(100% / 6) !important;
	}

	.sticky-header nav#mainNav ul li.ft_mail_mn,
	.sticky-header nav#mainNav ul li.ft_tel_mn {
		display: none;
	}

	.sticky-header .cta_btn nav#mainNav ul li.ft_mail_mn,
	.sticky-header .cta_btn nav#mainNav ul li.ft_tel_mn {
		display: inherit;
	}
}

@media print,
screen and (max-width: 1023px) {
	.sp_safe nav#mainNav ul li.ft_tel_mn a b {
		font-weight: normal;
		font-size: 37px;
		line-height: 1;
		font-family: "Bebas Neue", "Noto Sans JP", sans-serif;
	}

	.sp_safe nav#mainNav ul li.nav_btn a b {
		font-family: "Poppins", sans-serif;
		font-weight: 800;
		letter-spacing: 0.02em;
		position: relative;
		color: #fff;
	}

	.sp_safe nav#mainNav ul li a b i {
		font-size: 25px;
		top: -3px;
		position: relative;
	}

	.sp_safe nav#mainNav ul li.ft_tel_mn a {
		background-color: #ffffff;
		color: #000000;
	}

	.sp_safe nav#mainNav ul li.ft_tel_mn a span {
		font-size: 12px;
		margin: 0;
		letter-spacing: 0.05rem;
		color: #000000;
	}

	.sp_safe nav#mainNav ul li.ft_mail_mn a {
		background: #fe3f44;
		box-sizing: border-box;
		margin: 0;
		transition: background 0.5s;
		display: flex;
		align-items: center;
		text-align: left;
		border-bottom: 0;
	}

	.sp_safe nav#mainNav ul li.ft_mail_mn a:hover {
		background: #d61515;
		border-top: 0;
	}

	.sp_safe nav#mainNav ul li.ft_mail_mn a i {
		font-size: 30px;
		top: 0;
	}

	.sp_safe nav#mainNav ul li.ft_mail_mn a b {
		color: #ffffff;
		line-height: 1;
	}

	.sp_safe nav#mainNav ul li.ft_mail_mn a span {
		color: #ffffff;
		font-weight: bold;
		margin-left: 0.8rem;
		font-size: 1.15rem;
	}
}

.spmenu #menu span,
.spmenu #menu span:before,
.spmenu #menu span:after {
	background: #cc0406;
}

body.home:not(:stickey-header) spmenu #menu p {
	color: #fff;
}

@media screen and (min-width: 1024px) and (max-width: 1100px) {
	li.ft_tel_mn {
		display: none;
	}
}

@media screen and (min-width: 768px) and (max-width: 1500px) {
	nav#mainNav ul li a b {
		font-size: 0.85rem;
	}

	nav#mainNav ul li.nav_btn.linkBtn {
		width: 200px;
	}

	nav#mainNav ul li.nav_btn.linkBtn::after {
		width: 30px;
	}
}

@media screen and (min-width: 768px) and (max-width: 1450px) {
	nav#mainNav ul li a b {
		font-size: 0.9rem;
	}

	nav#mainNav ul li a {
		margin: 0 0 0 0;
	}

	#header .bg {
		display: none;
	}
}

@media screen and (min-width: 768px) and (max-width: 1200px) {
	body.home:not(.sticky-header) #header .logo img {
		max-height: 70px;
	}
}

@media only screen and (max-width: 1099px) {
	#header-layout {
		padding: 0;
	}
}

@media only screen and (max-width: 1023px) {

	.sticky-header .spmenu #menu span,
	.sticky-header .spmenu #menu span:before,
	.sticky-header .spmenu #menu span:after,
	.single .spmenu #menu span,
	.single .spmenu #menu span:before,
	.single .spmenu #menu span:after,
	.category .spmenu #menu span,
	.category .spmenu #menu span:before,
	.category .spmenu #menu span:after {
		background: #cc0406;
	}

	.sticky-header .spmenu #menu p,
	.single .spmenu #menu p,
	.category .spmenu #menu p {
		color: #cc0406;
	}

	nav#mainNav ul li a {
		background-color: rgba(204, 4, 6, 0.9);
	}

	nav#mainNav ul li a i {
		margin-right: 6px;
	}

	nav#mainNav ul li a span {
		display: inline-block;
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 300;
		margin-left: 10px;
	}

	.mobile #header .logo .spmenu {
		background: transparent;
	}

	.spmenu #menu p {
		font-family: "Poppins", sans-serif;
		font-weight: bold;
		color: #cc0406;
	}

	nav#mainNav a.menu,
	nav#mainNav a.menu:before {
		color: #333;
	}

	nav#mainNav ul li.nav_btn a span {}

	body.mobile #header .logo img {
		max-height: 35px;
	}

	.mobile.sticky-header #header-layout {
		-webkit-box-shadow: 6px 2px 10px 5px rgba(0, 0, 0, 0.05);
		box-shadow: 6px 2px 10px 5px rgba(0, 0, 0, 0.05);
	}

	nav#mainNav nav .panel {
		z-index: 20;
	}

	#header .linkBtn {
		margin-top: 0;
	}

	#header .linkBtn::after {
		content: none;
	}

	/* SP logo 設定*/
	body.mobile #header .logo {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		height: 60px;
		justify-content: space-between;
		border-radius: 0;
	}

	body.mobile #header .logo .mark {
		padding: 0;
		width: auto;
	}

	#header .logo .mark a {
		background-color: transparent;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		height: 60px;
		padding: 0;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		padding-left: 0.5rem;
	}

	body.home:not(.sticky-header) #header .logo img {
		max-height: 35px;
	}

	span.non-stk {
		display: none;
	}

	/* SP logo 設定 ---end*/
}

/* --------------------------------------------------------------
 mainIMG | slider
-------------------------------------------------------------- */
#mainImg {
	padding-bottom: 0;
	position: relative;
	-webkit-box-shadow: none;
	box-shadow: none;
}

a.n2-ow:hover .object-img {
	opacity: 1;
	-webkit-transform: scale(1.2, 1.2);
	-ms-transform: scale(1.2, 1.2);
	transform: scale(1.2, 1.2);
	-webkit-transition: 1s all;
	-o-transition: 1s all;
	transition: 1s all;
	-webkit-filter: brightness(1.2);
	filter: brightness(1.2);
}

div#n2-ss-5item1 {
	font-size: 4.7vw !important;
}

div#n2-ss-5item2 {
	font-size: 4.8vw !important;
}

div#n2-ss-5item3 {
	font-size: 4.8vw !important;
}

p.n2-font-729825664a7c4d18e4bc4eee2b966f1b-paragraph.n2-style-f8293b450b12ef15d5c4ff97a617a3e3-heading.n2-ow {
	font-size: 3vw !important;
}

@media print,
screen and (min-width: 769px) {
	br.pcnone {
		display: none !important;
	}
}

@media print,
screen and (max-width: 768px) {
	br.spnone {
		display: none !important;
	}

	.spleft p {
		text-align: left !important;
	}

	.spleft th,
	.spleft td {
		text-align: left !important;
	}
}

.spmenu #menu p {
	left: 50%;
	transform: translateX(-50%);
}

.imgWrap {
	overflow: hidden;
	width: 100%;
}

.imgWrap img {
	display: block;
}

/*animation*/

.img-bg {
	overflow: hidden;
	position: relative;
}

.img-bg:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	background-color: #cc0406;
}

.rev .img-bg:before {
	background-color: #ffffff;
}

.img-bg img {
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition-duration: 4s;
	transition-duration: 4s;
	-webkit-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
	transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
}

.img-bg {
	-webkit-transform: translate3d(-100.5%, 0, 0);
	transform: translate3d(-100.5%, 0, 0);
	-webkit-transform-origin: left;
	transform-origin: left;
	-webkit-transition-duration: 1s;
	transition-duration: 1s;
	-webkit-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
	transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	-webkit-transition-delay: 0s;
	transition-delay: 0s;
}

.img-bg.is-shown {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.img-bg:before {
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
	-webkit-transform-origin: right;
	transform-origin: right;
	-webkit-transition-duration: 1s;
	transition-duration: 1s;
	-webkit-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
	transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	-webkit-transition-delay: 0.4s;
	transition-delay: 0.4s;
}

.img-bg.is-shown:before {
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
}

/* --------------------------------------------------------------
 TOP｜フロントページ
-------------------------------------------------------------- */
section.front_sec1 {
	background-color: #e0e0e0;
	background: url(/struct/wp-content/uploads/sec_img01_new.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

.sec_sapce {
	padding: 6rem 0;
}

section.front_sec1 h1.front-headline {
	line-height: 1.4;
	font-size: 40px;
	margin: 0 0 40px 0;
}

p.headline_en {
	font-family: "Barlow", "Noto Sans JP", sans-serif;
	padding: 0;
	margin-bottom: 1rem;
	color: #e0e0e0;
	text-shadow: 1px 1px 0 #000000, -1px -1px 0 #000000, -1px 1px 0 #000000,
		1px -1px 0 #000000, 0px 1px 0 #000000, 0-1px 0 #000000, -1px 0 0 #000000,
		1px 0 0 #000000;
	font-size: 50px;
	letter-spacing: 0.15rem;
	line-height: 1;
	display: table;
}

p.headline_en_normal {
	font-family: "Barlow", "Noto Sans JP", sans-serif;
	padding: 0;
	margin-bottom: 0.5rem;
	color: #ffffff;
	text-shadow: 1px 1px 0 #cc0406, -1px -1px 0 #cc0406, -1px 1px 0 #cc0406,
		1px -1px 0 #cc0406, 0px 1px 0 #cc0406, 0-1px 0 #cc0406, -1px 0 0 #cc0406,
		1px 0 0 #cc0406;
	font-size: 50px;
	letter-spacing: 0.15rem;
	line-height: 1;
}

p.headline01 {
	text-align: left;
	padding: 0;
	border-bottom: 0;
	font-size: 50px;
	line-height: 1;
	font-weight: bold;
	display: table;
}

.headline01.middle {
	margin-bottom: 1.5rem;
	font-size: 2.5rem;
}

h1.front-headline {
	text-align: left;
	font-family: "Barlow", "Noto Sans JP", sans-serif;
	padding: 0;
	font-size: 50px;
	color: #000000;
	font-weight: bold;
	line-height: 2.0;
	display: table;
}

.headline01 span.en {
	padding-left: 0;
	display: table;
	color: #ffffff;
	font-size: 1.5rem;
	padding: 0.1rem 0.5rem;
	box-sizing: border-box;
	margin-bottom: 0.8rem;
}

ul.disc {
	display: table;
}

ul.disc.imgWrap {
	width: auto;
}

.front_sec1 .imgWrap {
	width: 50%;
}

.post .front_sec1 ul li {
	position: relative;
	font-size: 22px;
	font-weight: bold;
	border-bottom: 0;
	padding-left: 30px;
}

.post .front_sec1 ul li:before {
	position: absolute;
	content: "\f058";
	font-family: "Font Awesome 5 Free";
	left: 0;
	color: #cc0406;
}

/*front_sec2*/
section.front_sec2:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	background-color: #cc0406;
	width: 100%;
	height: 100%;
	z-index: -1;
}

section.front_sec2 {
	position: relative;
}

.front_sec2 h2.redzone {
	margin: 0 auto 80px;
}

h2.redzone {
	color: #ffffff;
	text-align: left;
	border-bottom: 0;
	font-size: 60px;
	padding: 0;
	line-height: 1.3;
	margin: 0;
	display: table;
}

h2.redzone span.marker {
	background: linear-gradient(transparent 0%, #ffffff 0%);
	display: inline-block;
	color: #cc0406;
	padding: 0 15px;
	margin-right: 15px;
}

p.redzone {
	font-size: 20px;
	font-weight: bold;
	color: #ffffff;
	padding-bottom: 1rem;
	line-height: 1;
	display: table;
}

h3.redzone {
	font-size: 40px;
	font-weight: bold;
	color: #ffffff;
	background: transparent;
	padding: 0;
	margin-bottom: 2rem;
	border-left: 0;
	display: table;
}

.front_sec2 .feature-list {
	margin: 2rem 0;
}

.general-flex .col3 figure {
	position: relative;
	margin-bottom: 1.5rem;
}

.general-flex .col3 figcaption {
	background: #ffffff;
	font-size: 30px;
	font-weight: bold;
	color: #cc0406;
	padding: 1rem;
	position: absolute;
	bottom: 0;
	right: 0;
}

p.feature_answer {
	font-size: 30px;
	text-align: center;
	font-weight: bold;
}

span.underline {
	padding: 0 0 0.5rem 0;
	border-bottom: 1px solid #000000;
	text-decoration: none;
}

span.red {
	color: #cc0406;
}

.fr_col {
	width: 47.5%;
	/* max-width: 710px;*/
}

.fr_box {
	border: 1px solid #cc0406;
	border-radius: 30px;
	box-sizing: border-box;
	padding: 2rem 2rem 0 2rem;
}

.fr_box.request {
	margin-top: 5rem;
}

.txt_cap {
	padding: 2rem;
	box-sizing: border-box;
	border-radius: 30px;
	background: #ffffff;
	transform: translateY(-30px);
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 450px;
	font-weight: bold;
	font-size: 18px;
}

.txt_cap li {
	line-height: 1.2;
}

span.marker {
	background: linear-gradient(transparent 0%, #fe3f44 0%);
	font-weight: bold;
	color: #ffffff;
}

h2.cat-loop {
	text-align: left;
	padding: 0.6rem 0;
	font-size: 1.6rem;
	color: #cc0406;
}

h2.cat-loop a {
	color: #cc0406;
}

.post h2.headline02 {
	font-size: 6.05rem;
	font-size: 95px;
	margin-bottom: 0;
	border-bottom: 0;
	padding-bottom: 0;
}

.post h2 span.jpn {
	padding-left: 0;
	font-size: 18px;
}

section.front_sec3 {
	position: relative;
}

section.front_sec3:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	background-color: #cc0406;
	width: 100%;
	height: 510px;
	z-index: -1;
}

p.headline_en.redzone {
	font-size: 50px;
	color: #cc0406;
	text-shadow: 1px 1px 0 #ffffff, -1px -1px 0 #ffffff, -1px 1px 0 #ffffff,
		1px -1px 0 #ffffff, 0px 1px 0 #ffffff, 0-1px 0 #ffffff, -1px 0 0 #ffffff,
		1px 0 0 #ffffff;
	padding-bottom: 0;
	margin-bottom: 0.5rem;
	display: table;
}

section.flow_wrap:before {
	background-color: #f1f1f1;
}

section.flow_wrap h2.redzone {
	margin: 0;
	display: table;
	color: #000;
}

section.flow_wrap p.headline_en_normal {
	color: #f1f1f1;
}

.cta nav#mainNav {
	background: transparent !important;
}

body:not(.home) .cta nav#mainNav {
	width: 100% !important;
}

.col-fimg_wrap {
	width: 50%;
}

.col-fimg {
	position: relative;
	width: 100%;
	height: 100%;
}

.col-fimg:before {
	content: "";
	display: block;
}

.col-fimg img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	object-fit: cover;
}

.col-ftxt {
	width: 50%;
	padding: 70px 100px;
	text-align: left;
	background: #f1f1f1;
}

h2.headline01 {
	text-align: left;
	padding: 0;
	border-bottom: 0;
	font-size: 60px;
	color: #000000;
	margin-top: 0;
	margin-bottom: 50px;
}

body:not(.home) h2.headline01 {
	font-size: 40px;
}

span.marker3 {
	background: linear-gradient(transparent 0%, #cc0406 0%);
	font-weight: bold;
	color: #ffffff;
	padding: 0.5rem;
	box-sizing: border-box;
}

span.marker3.balloon {
	margin-right: 1rem;
}

p.headline03 {
	font-size: 30px;
	font-weight: bold;
	line-height: 1.6;
}

#front_bottom_content,
#front_top_content {
	padding: 2vw 0;
	background: #f1f1f1;
}

#front_bottom_content .innerContent,
#front_top_content .innerContent {
	margin-left: auto;
	margin-right: auto;
	max-width: 1560px;
}

.front_post_list {
	display: flex;
	padding: 3% 6%;
	box-sizing: border-box;
}

.front_post_list span.en {
	color: #f1f1f1;
	padding-left: 0;
	background: none;
}

ul.postlist {
	width: 60%;
	padding-top: 0;
	margin-bottom: 0;
}

.listTitle.post {
	width: 40%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

p.front_alinkBtn.linkbottom {
	padding-bottom: 0;
	width: inherit;
}

iframe {
	vertical-align: bottom;
}

a.linkBtn2 {
	text-align: center;
	display: block;
	border-radius: 50px;
	padding: 0.5rem;
	font-size: 1rem;
	webkit-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	max-width: 600px;
	margin: 0 auto;
	position: relative;
	background: transparent;
	color: #cc0406;
	font-weight: bold;
	border: 1px solid #cc0406;
	width: 100%;
}

a.linkBtn2:hover {
	background: #cc0406;
	color: #ffffff;
}

a.linkBtn2 i {
	position: absolute;
	right: 1.2rem;
	top: 50%;
	transform: translateY(-50%);
}

a:hover.linkBtn2 {
	background: #cc0406;
	color: #ffffff;
}

@media screen and (max-width: 1500px) {
	.front_recruit_item figure img {
		width: 60vw;
	}

	.col2.tel-contact {
		font-size: 2.5rem;
	}

	.col2.mail-contact a {
		font-size: 1.5rem;
	}

	.front_post_list {
		padding: 0;
	}

	.col-ftxt {
		padding: 70px;
	}
}

@media screen and (max-width: 1200px) {
	h3.redzone {
		font-size: 28px;
	}

	p.feature_answer {
		font-size: 20px;
	}

	p.headline03 {
		font-size: 20px;
	}

	p.nolines {
		font-size: 25px;
	}

	.post .linkBtn.large {
		padding: 15px;
	}

	section.front_sec3:before {
		height: 440px;
	}

	.general-flex .col3 figcaption {
		font-size: 20px;
		padding: 0.5rem;
	}

	body:not(.home) h2.headline01 {
		font-size: 32px;
	}

	.front_sec2 h2.redzone {
		margin: 0px auto 50px;
		font-size: 40px;
	}
}

@media screen and (max-width: 1024px) {
	.headline01 span.en {
		font-size: 1rem;
		margin-bottom: 0.4rem;
	}

	.sec_sapce {
		padding: 3rem 0;
	}

	p.lines {
		font-size: 1rem;
	}

	.post h2.headline02 {
		font-size: 3rem;
	}

	.post ul.disc li {
		font-size: 1rem;
	}

	p.headline_en {
		font-size: 1.4rem;
	}

	p.headline01 {
		font-size: 2rem;
	}

	.post .front_sec1 ul li {
		font-size: 18px;
		padding-left: 26px;
	}

	p.redzone {
		font-size: 1rem;
	}

	p.headline03 {
		font-size: 1rem;
	}

	p.headline_en_normal {
		font-size: 36px;
	}

	p.headline_en.redzone,
	.front_post_list span.en {
		font-size: 36px;
	}

	h2.redzone,
	h2.headline01 {
		font-size: 46px;
		margin-bottom: 40px;
	}

	body:not(.home) h2.headline01 {
		font-size: 30px;
	}
}

@media screen and (max-width: 959px) {
	.col-fimg_wrap {
		width: 100%;
	}

	.col-ftxt {
		width: 100%;
		padding: 1.5rem;
	}

	h1.front-headline {
		margin: 1.5rem 0;
		line-height: 1;
	}

	section.front_sec3:before {
		height: 330px;
	}

	.front_sec1 .imgWrap {
		width: 60%;
	}
}

@media screen and (max-width: 768px) {
	.front_post_list {
		padding: 1.5rem;
		flex-direction: column;
	}

	section.front_sec1 {
		position: relative;
		background: url(/struct/wp-content/uploads/sec_img01_sp2_new.jpg);
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center right;
		z-index: -1;
	}

	section.front_sec1:after {
		position: absolute;
		content: "";
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		background: #000;
		z-index: -1;
		opacity: .6;
	}

	.post .linkBtn:hover input[type="submit"],
	.linkBtn:hover,
	.post .linkBtn:hover,
	.linkBtn:hover a {
		font-size: 15px;
	}

	.post .linkBtn,
	.linkBtn {
		font-size: 15px;
		width: 100%;
		max-width: 250px;
		margin: 0 auto !important;
	}

	.general-flex .linkBtn,
	.post .general-flex .linkBtn {
		width: 100%;
		max-width: 250px;
		font-size: 15px;
	}

	p.nolines {
		font-size: 1rem;
	}

	.listTitle.post {
		width: 100%;
	}

	ul.postlist {
		width: 100%;
	}

	h2.headline01 {
		font-size: 34px;
		margin-bottom: 0.5rem;
	}

	body:not(.home) h2.headline01 {
		font-size: 26px;
	}

	.fr_col {
		width: 100%;
	}

	.txt_cap {
		min-height: auto;
	}

	.front_recruit_desc {
		width: 95%;
		position: relative;
		margin: 0 auto;
		top: 0;
		transform: translateY(-25%);
	}

	.front_recruit_item figure img {
		width: 100%;
	}

	.front_recruit_item {
		margin: 2.5rem 0 0 0;
	}

	section.front_sec3 {
		padding: 3rem 0;
	}

	section.front_sec3:before {
		height: 400px;
	}

	.front_headline h2.en {
		font-size: 2.5rem;
		margin-bottom: 0;
	}

	.col2.mail-contact a {
		font-size: 1.2rem;
	}

	.col2.mail-contact a:hover {
		background: #ffffff;
		color: #ce0000;
	}

	a.linkBtn2 {
		font-size: 0.9rem;
		padding: 0.5rem;
	}

	#post-64 h2.headline01.middle {
		font-size: 1.2rem;
		line-height: 1.6;
	}

	h1.front-headline {
		font-size: 1.6rem;
	}

	p.headline01 {
		font-size: 1.6rem;
	}

	.post .front_sec1 ul li {
		font-size: 16px;
		padding-left: 22px;
		color: #fff;
	}

	.post .front_sec1 ul li:before {
		color: #ff5658;
	}

	h2.redzone {
		font-size: 30px;
		margin-bottom: 1rem;
	}

	p.headline_en.redzone,
	.front_post_list span.en,
	p.headline_en_normal {
		font-size: 30px;
	}

	h3.redzone {
		font-size: 1.2rem;
		margin-bottom: 1rem;
		line-height: 1.4;
	}

	p.feature_answer {
		font-size: 1rem;
		margin-bottom: 1rem;
	}

	.general-flex .col3 figure {
		margin-bottom: 0.5rem;
	}

	h2.redzone span.marker {
		padding: 0 8px;
		margin-right: 8px;
	}

	section.front_sec1 h1.front-headline {
		font-size: 26px;
		margin: 0 0 20px 0;
		color: #fff;
	}

	.front_sec2 h2.redzone {
		margin: 0px auto 40px;
		font-size: 30px;
	}

	.front_sec1 .imgWrap {
		width: 100%;
	}
}

@media screen and (max-width: 640px) {}

/*共通設定 ---end*/
.adjust {
	padding: 6rem 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

@media screen and (min-width: 768px) and (max-width: 1500px) {
	.adjust {
		padding: 4rem 0;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
}

@media (max-width: 767px) {
	.adjust {
		padding: 3rem 0;
	}

	.card {
		padding: 8% 6%;
	}
}

/* front_top 投稿一覧｜news */
section.top_news {
	padding: 8rem 0 6rem;
}

.inner_news {
	background: #f1f1f1;
	padding: 5rem;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
}

.top_news .listTitle {
	position: absolute;
	top: -38px;
	left: 0;
}

.list_bottom_box {
	overflow: hidden;
	-o-text-overflow: ellipsis;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.top_news h1.ttl {
	margin: 0;
}

.postlist .post_text {
	width: 98%;
	margin: 0 auto 6px auto;
}

.postlist li {
	border-bottom: 1px solid #d5d5d5;
}

.postlist .date {
	letter-spacing: 0.02em;
}

#front_top_content .postlist li:nth-child(n + 6) {
	display: none;
}

#front_top_content .postlist.full_open li:nth-child(n + 6) {
	display: block;
}

#front_top_content .postlist {
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	overflow: hidden;
}

@media (max-width: 767px) {
	section.top_news {
		padding: 5rem 0 4rem;
	}

	.postlist .date,
	.postlist .ttls {
		font-size: 0.8rem;
	}

	.inner_news {
		padding: 4rem 1rem 2rem;
	}

	.postlist,
	.postlist .post_text {
		width: 100%;
		margin: 0px auto 5px auto;
	}

	.postlist .time {
		padding: 0;
	}

	ul.postlist {
		margin-bottom: 5%;
	}

	.linkBtn_open a {
		width: 40px;
		height: 40px;
	}

	.linkBtn_open a:before {
		width: 25px;
		height: 25px;
	}

	.top_news .listTitle {
		top: -21px;
	}
}

/* --------------------------------------------------------------
 footer
-------------------------------------------------------------- */
#footer {
	padding: 4rem 0;
	background: #ffffff;
	position: relative;
}

#footer .general-flex .foot_box {
	/*padding: 10rem;*/
	padding: 9vw;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.foot_box img {
	width: 100%;
	max-width: 415px;
}

#footer .f_top ul li.ft_list a:before {
	content: "－";
	padding-right: 5px;
}

.inner {
	max-width: 100%;
}

.icon-up-open:before {
	color: #1f1f1f;
}

#footer #footerLogo {
	float: right;
	padding: 0;
}

#footerLogo a {
	background-color: transparent;
	display: flex;
	align-items: center;
	height: 60px;
	border: 1px solid #ff0000;
	justify-content: space-between;
	padding-left: 1rem;
	color: #ff0000;
	font-size: 22px;
}

#footer ul li a:hover {
	color: #cc0406;
}

.columns.f_btn .linkBtn {
	margin: 0;
}

#footer ul {
	padding: 0;
	text-align: left;
}

#footer ul li {
	margin: 0;
}

/*.footnav ul {
	display: flex;
}*/
.footerlist {
	display: flex;
	gap: 2%;
}

#footer .footnav {
	float: none;
	width: 50%;
}

#footer .footnav ul li {
	display: block;
}

.footnav ul li:not(:last-child) {
	margin: 0 20px 0 0 !important;
}

#footer ul li a {
	padding: 0;
}

#footer .footnav ul li a:before {
	content: "-";
	margin-right: 5px;
	display: inline-block;
}

#footer ul li::before {
	content: none;
}

.footnav a,
.footnav ul li a {
	color: #ffffff;
}

.foot-sns .fa,
.foot-sns .far,
.foot-sns .fas {
	font-family: FontAwesome;
}

#footer li.ft_tel_mn {
	border: 1px solid #cccccc !important;
	box-sizing: border-box;
}

#footer nav#mainNav ul {
	flex-direction: column;
}

.col3.footer_contact nav#mainNav ul {
	align-items: flex-end;
}

.general-flex.fb_widget {
	margin-top: 2rem;
	border-top: 1px solid #cccccc;
	padding-top: 2rem;
}

.general-flex.fb_widget .front-flex {
	box-sizing: border-box;
	width: 18%;
}

.general-flex.fb_widget .front-flex:nth-child(5n + 2):last-child {
	margin-right: calc((18% * 3) + (((100% - (18% * 5)) / 4) * 3));
}

.general-flex.fb_widget .front-flex:nth-child(5n + 3):last-child {
	margin-right: calc((18% * 2) + (((100% - (18% * 5)) / 4) * 2));
}

.general-flex.fb_widget .front-flex:nth-child(5n + 4):last-child {
	margin-right: calc((18% * 1) + (((100% - (18% * 5)) / 4) * 1));
}

#footer nav#mainNav ul li {
	width: 100%;
	max-width: 265px;
}

#copyright .general-flex {
	max-width: 1800px;
	margin: 0 auto;
}

#footer .footnav ul li a {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 0.9rem;
	line-height: 1.8;
}

#footer .foot-sns ul li {
	margin-right: 0.5rem;
}

.right_box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.footnav a,
.footnav ul li {
	padding: 0 !important;
}

#copyright {
	background: #00020a;
	color: #f1f1f1;
	padding: 1rem;
	font-weight: 300;
	font-size: 0.7rem;
	text-align: right;
	box-sizing: border-box;
}

#footer .footcaption {
	display: none;
}

@media screen and (min-width: 769px) and (max-width: 1450px) {

	/*#footer .columns {
		        flex-direction: column;
	}*/
	#footer .column {
		width: 100%;
	}

	#footerLogo img {
		max-width: 100px;
	}

	#footerLogo a {
		box-sizing: border-box;
	}

	.right_box {
		box-sizing: border-box;
	}
}

@media (max-width: 768px) {
	#footer {
		padding: 0;
	}

	#footer ul {
		padding: 0;
		text-align: center;
	}

	#footer ul li {
		margin: 0;
	}

	.float #footerLogo {
		padding: 0 !important;
	}

	#footerLogo img {
		max-width: 100px;
		-o-object-fit: cover;
		object-fit: cover;
	}

	#footer #socialicon ul,
	.footcaption {
		text-align: center;
	}

	#footer .linkBtn a {
		font-size: 0.9rem;
	}

	#footer .footnav .box ul li {
		margin: 0 !important;
	}

	#footerLogo a {
		height: auto;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}

	#footer #footerLogo {
		float: none;
	}

	#copyright {
		text-align: center;
	}

	#footer:before {
		background-position: center bottom;
		height: 600px;
	}

	#footer .linkBtn {
		margin: 0 auto 2rem auto !important;
		height: 40px;
	}

	.mobile #footer {
		padding-bottom: 0;
	}

	#footer .general-flex>div {
		width: 100%;
		padding: 0;
		min-height: auto;
		box-sizing: border-box;
	}

	#footer .innerContent {
		margin: 3rem auto;
		max-width: 600px;
		width: 90%;
	}

	#footer .innerContent .col3 {
		margin: 1rem auto;
	}

	#footer nav#mainNav ul li {
		padding: 0;
	}
}

.mobile a#scrollUp {
	bottom: 70px;
}

/* --------------------------------------------------------------
 下層
-------------------------------------------------------------- */
span.en {
	color: #ffffff;
	text-shadow: 1px 1px 0 #d61515, -1px -1px 0 #d61515, -1px 1px 0 #d61515,
		1px -1px 0 #d61515, 0px 1px 0 #d61515, 0-1px 0 #d61515, -1px 0 0 #d61515,
		1px 0 0 #d61515;
	font-size: 50px;
	letter-spacing: 0.15rem;
}

h1.title span.sub {
	font-family: "Barlow", "Noto Sans JP", sans-serif;
	display: block;
	font-weight: 100;
	font-size: 1.6rem;
}

.linkBtn i {
	margin-right: 10px;
}

.Btncenter .linkBtn,
.post .Btncenter .linkBtn {
	display: inline-block;
}

p.btn.Btncenter {
	text-align: center;
}

#thumbImg {
	position: relative;
}

#thumbImg:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.35);
	z-index: 0;
}

body:not(.home).page-template h1.first {
	text-align: center;
}

body:not(.home).page-template h1.first b {
	text-align: center;
}

.gallery-caption {
	padding: 10px 0;
	font-size: 0.9rem;
}

.under .columns {
	margin-bottom: 3rem;
}

.topics {
	/* background: #f9fcff; */
	padding: 0.5rem 1rem 1rem 1rem;
	box-sizing: border-box;
	margin: 2rem auto 4rem auto;
	border: 1px solid #cc0406;
	border-radius: 15px;
}

@media screen and (min-width: 768px) and (max-width: 1500px) {
	.under .columns {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	span.en {
		font-size: 40px;
	}
}

@media (min-width: 768px) {
	.under .columns .column:not(:last-child) {
		padding-right: 2rem;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
}

@media (max-width: 767px) {
	h1.title span.sub {
		font-size: 0.9rem;
	}

	h2.under_sub_ttl {
		margin-bottom: 6%;
		padding: 0.8rem 1rem;
		font-size: 1.5rem;
	}

	h2.under_sub_ttl b {
		font-size: 1rem;
	}

	.under .columns {
		margin-bottom: 2rem;
	}

	.map iframe {
		height: 300px;
	}

	span.en {
		font-size: 2.5rem;
	}
}

/* archive */
.archive .post li {
	border-bottom: 0;
	margin-bottom: 5rem;
}

.post_link a {
	border: 1px solid #cc0406;
	color: #cc0406;
	border-radius: 50vh;
	padding: 0.2rem 1.0rem;
	line-height: 1.0;
}

.post_link a:hover {
	background: #cc0406;
	color: #ffffff;
}

.archive ul.post4b {
	margin: 5rem 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.archive .post4b li {
	width: 30%;
	display: block;
	margin: 0 0 2rem 0;
	border-bottom: 0px !important;
}

.archive .post4b li:nth-child(3n + 2):last-child {
	margin-right: calc(30% + (((100% - (30% * 3)) / 2) * 0));
}

.archive .postlist {
	margin-bottom: 0;
}

.archive .wide ul.postlist {
	width: 100%;
	margin: 5rem 0 0 0;
}

.archive .post table td {
	text-align: right;
}

.post4b .post4b_img {
	padding-bottom: 0;
}

.archive .post table th,
.archive .post table td {
	padding: 10px;
}

.post-type-archive .post h2 {
	background: #cc0406;
	line-height: 1;
	font-size: 1.2rem;
}

.post-type-archive .post h2 a {
	color: #ffffff;
}

@media (max-width: 799px) {
	.archive .post4b li {
		width: 45%;
	}

	.post4b .post4b_img {
		width: 100%;
		float: none;
	}

	.post4b_text70 {
		width: 100%;
	}

	.archive ul.post4b {
		justify-content: space-evenly;
		margin: 2rem 0;
	}

	.archive .post4b li:nth-child(3n + 2):last-child {
		margin-right: auto;
		margin-left: auto;
	}

	.post-type-archive .post h2 {
		font-size: 1rem;
	}
}

.wp-pagenavi {
	margin: 0 auto 3rem;
}

.post .linkBtn.under {
	width: 50%;
	margin: 3rem auto 0 !important;
}

.linkBtn.under b {
	font-size: 0.8rem;
	line-height: 1;
	font-family: "Noto Sans JP";
	font-weight: 300;
	margin-left: 6px;
}

.archive ul.postlist li {
	padding-bottom: 5px;
}

@media (max-width: 767px) {
	.post .linkBtn.under {
		width: 85%;
		margin: 1.5rem auto !important;
	}

	.wp-pagenavi {
		margin: 0 auto 1rem;
	}

	.post li {
		font-size: 0.9rem;
	}
}

/* single */
.post table td iframe {
	width: 100%;
}

@media (max-width: 767px) {
	.post table td iframe {
		height: 300px;
	}
}

h2+div.general-flex {
	margin-top: 3rem;
}

.post table th {
	background-color: unset;
	font-weight: bold;
	vertical-align: middle;
	width: 30%;
	letter-spacing: 0.05em;
	border-bottom: 1px solid #cc0406;
	color: #cc0406;
}

.general-flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.general-flex.reverse {
	flex-direction: row-reverse;
}

.general-flex.center,
.boxs.center {
	align-items: center;
}

.general-flex.flex-end {}

.general-flex .col2 {
	width: calc((100% / 2) - 1rem);
	padding: 1rem 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.general-flex .col3 {
	width: calc((100% / 3) - 3%) !important;
	padding: 10px 0;
}

.general-flex .col3 img {
	width: 100%;
	max-width: initial;
}

.general-flex.feature-list .col3 img {
	max-width: initial;
}

.general-flex .col4 {
	width: 25%;
	padding: 1rem;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.general-flex .col4:nth-child(4n + 2):last-child {
	margin-right: calc((25% * 2) + (((100% - (25% * 4)) / 3) * 2));
}

.general-flex .col4:nth-child(4n + 3):last-child {
	margin-right: calc((25% * 1) + (((100% - (25% * 4)) / 3) * 1));
}

.button-back button:hover {
	color: #fff;
	background: #000;
	-webkit-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}

.general-flex .col2_txt {
	width: 50%;
}

.general-flex .col2_img {
	width: 50%;
}

@media (max-width: 1024px) {
	.col3.footer_contact.sp_safe {
		display: contents;
		text-align: center;
		margin: 0 auto;
		display: block;
		width: 100% !important;
		max-width: 600px;
	}

	.col3.footerlist {
		width: 100% !important;
	}
}

@media (max-width: 768px) {
	.general-flex {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}

	.general-flex.row {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
	}

	.general-flex .col2 {
		width: 100%;
		padding: 0 0 1rem;
	}

	.general-flex.winblock_ditails {
		width: 100%;
	}

	.col_name {
		font-weight: bold;
	}

	.general-flex .col3 {
		width: 100% !important;
		margin: 0 auto;
	}

	.general-flex .col4 {
		width: 50%;
	}

	.results #photo_main {
		overflow: hidden;
	}

	.general-flex .col2_img,
	.general-flex .col2_txt {
		width: 96%;
		margin: 0 auto;
	}

	.general-flex.count:nth-child(odd) {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}

	.general-flex+h5 {
		margin-top: 1rem;
	}

	h2+div.general-flex {
		margin-top: 1.5rem;
	}
}

/* 調整 */
.page-sitemap span.sub_ttl {
	font-size: medium;
	display: inline;
}

header#h1Header h1.title {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 600;
}

.mobile header#h1Header {
	margin-top: 60px;
}

.mobile.page-id-85 header#h1Header h1.title {
	font-size: 1.2rem !important;
}

/*下層PCnav*/
body:not(.home) #header .logo {
	display: inherit;
}

body:not(.home).mobile #header .logo {
	display: flex;
}

body:not(.home) nav#mainNav {
	width: auto;
	margin: 0;
}

body:not(.home).sticky-header nav#mainNav {
	width: 100%;
}

body:not(.home) #header>.inner #header-layout {
	justify-content: space-between;
}

.gnav.sub {
	width: 100%;
	max-width: 600px;
	margin-left: auto;
}

.sticky-header .gnav.sub {
	max-width: inherit;
}

.gnav.sub nav#mainNav ul li {
	width: 33.3%;
}

.gnav.sub nav#mainNav ul {
	display: flex;
	flex-wrap: wrap;
	border-right: 1px solid #cccccc;
}

.gnav.sub nav#mainNav ul li a {
	padding: 9.5px;
	border-left: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
	box-sizing: border-box;
}

.gnav.sub nav#mainNav ul li:before {
	content: none;
}

nav#mainNav.sub {
	border-bottom: 0;
	box-sizing: border-box;
}

@media (max-width: 1500px) {
	nav#mainNav.sub {
		display: none;
	}

	.gnav.sub nav#mainNav ul li a {
		padding: 12px;
	}
}

@media (min-width: 1025px) {
	body:not(.home).sticky-header #header #header-layout {
		display: block;
	}

	.sticky-header .gnav.sub nav#mainNav ul li {
		width: calc(100% / 8);
	}

	.sticky-header .gnav.sub nav#mainNav ul li a {
		border: none;
		padding: 25px;
	}

	.sticky-header .gnav.sub nav#mainNav ul li.ft_mail_mn a,
	.sticky-header .gnav nav#mainNav ul li.ft_tel_mn a {
		padding: 0.6rem 1.2rem;
	}
}

/*下層共通*/
.inner-content+.inner-content {
	margin-top: calc(100px + (1vw - 19.2px) * 1.9417);
	/*100px-60px*/
}

.mb-ob {
	margin-bottom: calc(60px + (1vw - 19.2px) * 1.9417);
	/*60px-30px*/
}

.mb-ob.imgbox img {
	border-radius: 15px;
}

.textarea {
	padding: 4%;
	box-sizing: border-box;
}

.imgbox img {
	width: 100%;
}

.col-txt {
	width: 60%;
}

.col-img {
	width: 37%;
}

.col-img img {
	border-radius: 15px;
}

.col-txt p {
	font-size: 1.2rem;
}

.bg-g {
	background: #f1f1f1;
}

h2.bg-bk {
	margin-bottom: calc(60px + (1vw - 19.2px) * 1.9417);
	line-height: 1;
	background: #000;
	color: #fff;
	text-align: center;
}

@media (max-width: 768px) {
	h2.bg-bk {
		line-height: 1.6;
	}
}

@media (max-width: 768px) {
	.col-txt {
		width: 100%;
		order: 2;
	}

	.col-txt p {
		font-size: 0.9rem;
	}

	.col-img {
		width: 100%;
		order: 0;
		margin-bottom: 1rem;
	}

	.post h2 span {
		padding: 0;
	}
}

/*事業内容*/
section.sub-page.sec_sapce.opening {
	background: url(/struct/wp-content/uploads/front_bg001.jpg);
	background-size: cover;
}

.cred-description p {
	font-size: 1.5rem;
	font-style: italic;
	font-weight: 800;
	padding: 2rem;
	background: #f1f1f1;
	line-height: 1;
	display: table;
}

@media (max-width: 768px) {
	.cred-description p {
		padding: 1rem;
		font-size: 1rem;
		line-height: 1.5;
	}

	.post .linkBtn.large {
		max-width: 220px;
		padding: 12px;
	}
}

/*採用情報*/

/*会社案内*/
p.namearea-text {
	text-align: right;
	font-size: 0.9rem;
}

.name-img {
	width: 460px;
	max-width: 100%;
	margin: 0 0 0 auto;
}

/*ご相談・ご契約の流れ*/
ul.flow>li {
	position: relative;
	padding-left: calc(60px + (1vw - 19.2px) * 1.2945);
	margin-bottom: 30px;
}

ul.flow>li::before,
ul.flow>li::after {
	content: "";
	position: absolute;
	background: #cc0406;
}

ul.flow>li::before {
	width: calc(20px + (1vw - 19.2px) * 0.3236);
	height: calc(20px + (1vw - 19.2px) * 0.3236);
	border-radius: 50%;
	top: calc(10px + (1vw - 19.2px) * 0.3236);
	left: 10px;
}

ul.flow>li::after {
	width: 3px;
	height: calc(100% + (20px + (1vw - 19.2px) * 0.3236));
	top: 20px;
	left: calc(10px + ((20px + (1vw - 19.2px) * 0.3236) / 2));
	transform: translateX(-50%);
}

ul.flow .text-box {
	padding: 4%;
	box-sizing: border-box;
}

.step-ttl {
	display: flex;
	align-items: center;
}

.step-ttl:before {
	content: "STEP" counter(stepList, decimal-leading-zero);
	counter-increment: stepList;
	color: #fff;
	background: #cc0406;
	font-size: calc(2.8rem + (1vw - 19.2px) * 0.6472);
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.2rem;
	padding: 10px;
	margin-right: 10px;
}

.step-ttl p {
	font-size: 1.8rem;
	padding: 0;
}

p.big-text {
	color: #cc0406;
	font-size: 1.6rem;
	font-weight: bold;
}

p.note {
	text-align: right;
	font-size: 0.9rem;
	margin-top: 30px;
}

.flow .img-box img {
	border-radius: 15px;
}

/*==============================================================
TOP改修 2023.11
==============================================================*/

* {
	box-sizing: border-box;
}

.ttl_wrap {
	margin-bottom: 50px;
}

.ttl_wrap h2.redzone,
h2.headline01 {
	margin-bottom: 0;
}

/* flow */
.home .flow-list {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	width: 100%;
	max-width: 1300px;
	margin: 0 auto;
}

.flow-list .flow-list_item {
	display: flex;
	flex-direction: column;
	gap: 30px;
	width: 100%;
	background: #fff;
	padding: 20px;
	margin: 0;
	border-bottom: 0;
}

.flow-list_img {
	width: 70%;
	max-width: 150px;
	margin: 0 auto;
}

.flow-list_img img {
	width: 100%;
}

.flow-list_item p {
	padding-bottom: 0;
	line-height: 1.6;
	font-size: 18px;
}

.flow-list_item h3 {
	position: relative;
	width: 100%;
	background: none;
	font-size: 26px;
	color: #000;
	padding: 10px;
	margin: 0;
	border-bottom: 0;
}

.flow-list_item .step_num {
	display: block;
	color: #cc0406;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.0;
	padding: 0 0 5px 0;
}

/* footer */
.cv_wrap {
	background: #cc0406;
}

.cv_inner {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 30px;
	width: 90%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 50px 0px;
}

.cv_wrap .cv_ttl {
	line-height: 1.0;
	color: #fff;
}

.cv_wrap .cv_ttl .cv_ttl_en {
	font-family: "Barlow", "Noto Sans JP", sans-serif;
	font-size: 36px;
	color: #cc0406;
	text-shadow: 1px 1px 0 #ffffff, -1px -1px 0 #ffffff, -1px 1px 0 #ffffff, 1px -1px 0 #ffffff, 0px 1px 0 #ffffff, 0-1px 0 #ffffff, -1px 0 0 #ffffff, 1px 0 0 #ffffff;
	padding-bottom: 0;
	margin-bottom: 0.5rem;
	display: block;
	letter-spacing: 0.15rem;
}

.cv_wrap .cv_read {
	color: #fff;
}

.cta nav#mainNav {
	width: 100%;
	max-width: 500px !important;
}

.cta nav#mainNav ul {
	display: flex;
}

.cta nav#mainNav ul li {
	width: 50%;
	border: none !important;
}

.cta nav#mainNav ul li.ft_tel_mn a,
.cta nav#mainNav ul li.ft_mail_mn a {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 20px;
	width: 100%;
	height: 80px;
}

.cta nav#mainNav ul li.ft_tel_mn a {
	flex-direction: column;
	border: none;
}

.footer_logo_wrap a {
	display: block;
	max-width: 400px;
}

/* about us */
.col-ftxt p.headline_en_normal {
	color: #f1f1f1;
}

.col-ftxt .aboutus_read {
	padding-bottom: 0;
	margin-bottom: 40px;
}

.company_list .company_list_item {
	margin: 0;
	border-bottom: 1px solid #ddd;
}

.company_list .company_list_item a {
	position: relative;
	display: flex;
	justify-content: space-between;
	font-weight: bold;
	padding: 24px;
	cursor: pointer;
}

.company_list .company_list_item .deco {
	position: relative;
	width: 26px;
	height: 26px;
	border-radius: 100%;
	border: 1px solid #cc0406;
}

.company_list .company_list_item .deco:before {
	position: absolute;
	content: "";
	width: 5px;
	height: 5px;
	background-color: #cc0406;
	border-radius: 100%;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 1;
}

.company_list .company_list_item .deco:after {
	position: absolute;
	content: "";
	display: block;
	width: 26px;
	height: 26px;
	border: 1px solid #cc0406;
	background: #cc0406;
	border-radius: 50%;
	right: -2px;
	top: 50%;
	z-index: 0;
	transform: translateY(-50%) scale(0);
	transition: all .3s;
}

.company_list .company_list_item a:hover {
	background-color: #e5e5e5;
}

.company_list .company_list_item a:hover .deco:before {
	background: #fff;
}

.company_list .company_list_item a:hover .deco:after {
	transform: translateY(-50%) scale(1);
}

/* point */
.point_wrap {
	display: flex;
	flex-direction: column;
	gap: 100px;
}

.point_box {
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
	gap: 40px;
	width: 100%;
}

.point_box:last-child {
	flex-direction: row-reverse;
}

.point_ttl_wrap {
	display: flex;
	flex-direction: column;
	gap: 30px;
	width: 100%;
	max-width: 450px;
	color: #fff;
}

.point_ttl_wrap .point_ttl {
	font-size: 30px;
	font-weight: bold;
	line-height: 1.4;
	padding: 0;
	margin: 0;
	color: #fff;
	border: none;
}

.font_en {
	font-family: "Barlow", "Noto Sans JP", sans-serif !important;
}

.point_ttl_wrap .point_ttl_en {
	font-size: 50px;
	color: #cc0406;
	text-shadow: 1px 1px 0 #ffffff, -1px -1px 0 #ffffff, -1px 1px 0 #ffffff, 1px -1px 0 #ffffff, 0px 1px 0 #ffffff, 0-1px 0 #ffffff, -1px 0 0 #ffffff, 1px 0 0 #ffffff;
	padding: 0;
	margin: 0 0 40px;
	display: table;
	letter-spacing: 0.05em;
	line-height: 1.0;
}

.point_detail {
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
	width: 100%;
	gap: 20px;
}

.point_detail_item {
	display: flex;
	flex-direction: column;
	width: 100%;
	background: #fff;
	border-radius: 20px;
	padding: 30px;
}

.point_detail_item h4 {
	font-size: 22px;
	margin: 0 0 15px;
	padding: 0 0 15px;
	border-bottom: 1px solid #cc0406;
	line-height: 1.3;
}

.point_detail_item .point_detail_txt {
	line-height: 2.0;
}

.point_detail_item .point_detail_deco {
	color: #cc0406;
	text-align: right;
	font-size: 13px;
	letter-spacing: 0.05em;
}

.user,
.partner {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 20px;
}

.user {
	margin-top: auto;
}

.user_img,
.partner_img {
	width: 90px;
	height: 90px;
	border-radius: 100%;
	overflow: hidden;
}

.user .user_name,
.partner .partner_name {
	font-weight: bold;
	line-height: 1.6;
	padding-bottom: 0;
}

.user .user_name span {
	display: block;
	font-weight: normal;
	font-size: 13px;
}

.partner {
	justify-content: space-between;
	padding: 10px 20px;
	border: 2px solid #cc0406;
	border-radius: 10px;
}

.partner_txt {
	border-left: 5px solid #cc0406;
	padding-left: 10px;
}

.partner_txt p {
	padding-bottom: 0;
	line-height: 1.6;
}

.partner_txt .partner_company {
	font-weight: bold;
}

.partner_txt .partner_name {
	font-size: 18px;
}

.partner_txt .partner_name span {
	font-weight: normal;
	font-size: 13px;
}

.partner_website a {
	position: relative;
	color: #cc0406;
	font-size: 13px;
	transition: all .3s;
}

.partner_website a:after {
	content: "\f2d0";
	font-family: "Font Awesome 5 Free";
	margin-left: 8px;
}

.partner_website a:hover {
	opacity: 0.6;
}

.btn_wrap .linkBtn.large {
	font-size: 16px;
}

/* businessページ修正 */
.page-business p.front-headline {
	text-align: left;
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	padding: 0;
	/* font-size: 50px; */
	color: #000000;
	font-weight: 100;
	display: table;
	font-size: 10vw;
	line-height: 1.2;
}

/* flowページ修正 */
.page-flow .general-flex {
	flex-wrap: nowrap;
	gap: 30px;
}

.page-flow .col-txt {
	width: 65%;
}

.page-flow .col_img {
	display: flex;
	align-items: center;
	justify-content: center;
}

.page-flow ul li {
	font-size: 1.2rem;
}

.checklist_wrap {
	border: 2px solid #cc0406;
	border-radius: 20px;
	padding: 20px;
}

.checklist_wrap p.big-txt {
	font-size: 22px;
	line-height: 1.0;
}

.checklist_wrap ul li {
	position: relative;
	border-bottom: 0;
	padding-left: 26px;
}

.checklist_wrap ul li:before {
	position: absolute;
	content: "\f058";
	font-family: "Font Awesome 5 Free";
	left: 0;
	color: #cc0406;
}

.post p .cautiton {
	display: block;
	font-size: 16px;
	font-weight: bold;
}

.checklist_wrap p.big-text {
	font-size: 22px;
	line-height: 1.6;
}

.front_sec4 p.headline03 {
	font-size: 22px;
}

/* 2023.12追加修正 */
#company_profile table {
	width: 90%;
	max-width: 900px;
	margin: 0 auto;
}

#company_profile table th,
#company_profile table td {
	padding: 20px;
	font-size: 16px;
}

#company_philosophy p {
	font-size: 32px;
	text-align: center;
}

.sp_block {
	display: none;
}

@media (max-width: 1500px) {

	body.sticky-header .cv_wrap nav#mainNav ul li.ft_mail_mn,
	body.sticky-header .cv_wrap nav#mainNav ul li.ft_tel_mn {
		display: block;
	}
}

@media (max-width: 1300px) {
	.flow-list .flow-list_item {
		gap: 20px;
	}

	.point_detail_item .point_detail_deco {
		font-size: 11px;
	}

	.flow-list_item p {
		font-size: 0.9rem;
	}
}

@media screen and (min-width:901px) and (max-width:1500px) {

	/* kv */
	.kv_txt_wrap {
		width: 44% !important;
	}
}

@media (max-width: 1100px) {
	.cv_inner {
		flex-direction: column;
	}

	.cv_wrap .cv_ttl {
		text-align: center;
	}

	.point_detail {
		flex-direction: column;
	}

	.flow-list_item h3 {
		font-size: 20px;
	}

	.flow-list_item .step_num {
		font-size: 14px;
	}

	.home .flow-list {
		gap: 10px;
	}

	.front_sec4 p.headline03 {
		font-size: 18px;
	}
}

@media (max-width: 1024px) {
	.ttl_wrap {
		margin-bottom: 30px;
	}

	.point_ttl_wrap .point_ttl_en {
		font-size: 36px;
		margin-bottom: 15px;
	}

	.user,
	.partner {
		gap: 10px
	}

	.partner {
		padding: 10px;
	}

	.partner_txt .partner_company {
		font-size: 13px;
	}

	.partner_txt .partner_name {
		font-size: 14px;
	}

	.partner_txt .partner_name span {
		font-size: 10px;
	}

	.partner_website a {
		font-size: 10px;
	}

	.partner_txt p {
		line-height: 1.2;
	}

	.col-ftxt {
		padding: 50px 50px;
	}

	.company_list .company_list_item a {
		padding: 16px;
	}
}

@media (max-width: 959px) {
	.ttl_wrap {
		margin-bottom: 25px;
	}

	.page-business p.front-headline {
		margin: 1.5rem auto;
		line-height: 1.0;
		text-align: center;
	}

	.partner_txt {
		padding-left: 6px;
	}

	.point_box,
	.point_box:last-child {
		flex-direction: column;
	}

	.point_ttl_wrap {
		max-width: initial;
		gap: 20px;
	}

	.btn_wrap .linkBtn.large {
		font-size: 16px;
		max-width: 300px;
	}

	.point_detail_item {
		border-radius: 10px;
		padding: 20px;
	}

	.point_wrap {
		gap: 50px;
	}

	.point_ttl_wrap .point_ttl {
		font-size: 24px;
	}

	.flow-list_item h3 {
		padding-right: 0;
	}

	.col-fimg {
		height: initial;
	}

	.col-fimg:before {
		padding-top: 62.5%;
	}

	.col-ftxt {
		width: 100%;
		padding: 30px;
	}

	.front_sec4 p.headline03 .spnone {
		display: none;
	}

	#company_philosophy p {
		font-size: 24px;
		line-height: 1.4;
	}

	.sp_block {
		display: block;
	}
}

@media (max-width: 768px) {
	.cta nav#mainNav ul {
		flex-direction: column;
	}

	.cta nav#mainNav ul li {
		width: 100%;
	}

	.cv_wrap .cv_ttl .cv_ttl_en {
		font-size: 30px;
	}

	.point_ttl_wrap .point_ttl {
		font-size: 22px;
	}

	.point_detail_item h4 {
		font-size: 16px;
	}

	.point_detail_item .point_detail_txt {
		line-height: 1.6;
		font-size: 13px;
	}

	.user_img,
	.partner_img {
		width: 70px;
		height: 70px;
	}

	.partner_txt {
		border-left: 0;
		padding-left: 0;
	}

	.partner_txt .partner_company {
		font-size: 11px;
	}

	.partner_txt .partner_name {
		font-size: 13px;
	}

	.partner_website a:after {
		margin-left: 5px;
	}

	.home .flow-list {
		flex-direction: column;
		margin-bottom: 30px;
	}

	section.flow_wrap:before {
		height: 100% !important;
	}

	.flow-list_item .step_num {
		display: inline-block;
		padding: 0 7px 5px 0;
	}

	.company_list .company_list_item a {
		padding: 14px;
	}

	.col-ftxt {
		padding: 30px 5%;
	}

	.sp_none {
		display: none !important;
	}

	.footer_logo_wrap a {
		max-width: 280px;
		margin: 0 auto;
	}

	.page-flow .col-txt {
		width: 100%;
	}

	.page-flow ul li {
		font-size: 0.9rem;
	}

	.post p .cautiton {
		font-size: 0.9rem;
	}

	.checklist_wrap {
		border-radius: 10px;
		padding: 15px;
	}

	.checklist_wrap p.big-text {
		font-size: 18px;
	}

	.checklist_wrap ul li {
		padding-left: 18px;
		margin-bottom: 5px;
	}

	.page-flow .col_img {
		width: 40%;
		margin: 0 auto;
	}

	.page-flow .general-flex {
		gap: 20px;
	}

	h2+div.general-flex {
		margin-top: 30px;
	}

	.page-flow .inner-content+.inner-content {
		margin-top: 40px;
	}

	.front_sec4 p.headline03 {
		font-size: 16px;
		;
	}

	.btn_wrap .linkBtn.large {
		font-size: 14px;
	}

	.user .user_name span {
		font-size: 12px;
	}

	#company_profile table {
		width: 100%;
	}

	#company_profile table th,
	#company_profile table td {
		padding: 10px;
		font-size: 13px;
	}
}

@media only screen and (max-width: 640px) {
	.post table.responsive th {
		width: 30% !important;
		display: table-cell;
	}

	.post table.responsive td {
		width: 70% !important;
		display: table-cell;
	}

	#company_philosophy p {
		font-size: 19px;
	}
}


/*----------20240405----------*/
/*
.page-recruit
*/
.page-recruit .bg__be__red {
	position: relative;
}

.page-recruit .bg__be__red::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: clamp(178px, 32.82vw - -54.92px, 498px);
	background-color: #cc0406;
	z-index: -1;

}

.page-recruit .bg__be__red01::before {
	height: 100% !important;
}

.page-recruit p.headline_en.redzone {
	font-size: 100px;
	margin: 0 auto;
}

.page-recruit .a__title__text01,
.page-recruit .a__title__text02 {
	color: #fff;
}

.page-recruit .a__title__text01 {
	font-size: 24px;
	font-weight: 700;
}

.page-recruit .a__title__text02 {
	font-size: 16px;
	font-weight: 400;
}

.page-recruit .analysis__title {
	text-align: center;
}

.page-recruit .analysis__content {
	padding-top: 25px;
	display: flex;
	flex-flow: column;
	row-gap: 20px;
	justify-content: space-between;
}

.page-recruit .analysis__content .analysis__content__inner01 {
	padding-top: 25px;
	display: flex;
	column-gap: 20px;
}

.page-recruit .analysis__content .analysis__content__inner01 .aci1__left {
	width: 32%;
	background-color: #fff;
}

.page-recruit .analysis__content .analysis__content__inner01 .aci1__right {
	width: 66%;
	display: flex;
	flex-flow: column;
	row-gap: 20px;
}

.page-recruit .analysis__content .analysis__content__inner01 .aci1__right .aci1__right__top {
	display: flex;
	column-gap: 20px;
	justify-content: space-between;
}

.page-recruit .analysis__content .analysis__content__inner01 .aci1__right .aci1__right__top01 {
	width: 50%;
	background-color: #fff;
}

.page-recruit .analysis__content .analysis__content__inner01 .aci1__right .aci1__right__bottom {
	width: 100%;
	background-color: #fff;
}

.page-recruit .analysis__content .analysis__content__inner02 {
	display: flex;
	justify-content: space-between;
	column-gap: 20px;
}

.page-recruit .analysis__content .analysis__content__inner02 .aci2__inner {
	width: 50%;
}

.page-recruit .aci1__left,
.page-recruit .aci1__right__top01,
.page-recruit .aci1__right__bottom,
.page-recruit .aci2__inner {
	border-radius: 20px;
	filter: drop-shadow(0px 0px 20px rgba(0, 0, 0, 0.2));
}

.page-recruit .aci1__left img,
.page-recruit .aci1__right__top01 img,
.page-recruit .aci1__right__bottom img,
.page-recruit .aci2__inner img {
	width: 100%;
}

.page-recruit .aci2__right,
.page-recruit .aci2__left,
.page-recruit .aci1__left,
.page-recruit .aci1__right__top01_01,
.page-recruit .aci1__right__top01_02,
.page-recruit .aci1__right__bottom {
	position: relative;
}

.page-recruit .aci2__right .math_list05 .mfsz span,
.page-recruit .aci2__left .math_list05 .mfsz span,
.page-recruit .aci1__right__bottom .math_list05 .mfsz span,
.page-recruit .aci1__left .math_list05 .mfsz span,
.page-recruit .aci1__right__top01 .math_list05 .mfsz span {
	color: #cc0406;
	font-family: "Barlow Condensed", sans-serif;
}

.page-recruit .mfsz {
	position: relative;
}

.page-recruit .aci1__right__top01_02 .math_list05 {
	position: absolute;
	bottom: -14%;
	left: 17%;
	width: 100%;
	display: flex;
	justify-content: center;
}

.page-recruit .aci1__right__top01_01 .math_list05 {
	position: absolute;
	bottom: -14%;
	left: -30%;
	width: 100%;
	display: flex;
	justify-content: center;
}

.page-recruit .aci1__left .math_list05 {
	position: absolute;
	bottom: 7%;
	left: 43%;
	transform: translateX(-50%);
	width: 100%;
	display: flex;
	justify-content: center;

}

.page-recruit .aci1__right__bottom .math_list05 {
	position: absolute;
	bottom: -27%;
	left: 17%;
	transform: translateX(-50%);
	width: 100%;
	display: flex;
	justify-content: center;
}

.page-recruit .aci2__left .math_list05 {
	position: absolute;
	bottom: clamp(-18%, 2.405vw - -16.52px, -24%);
	left: 49%;
	transform: translateX(-50%);
	width: 100%;
	display: flex;
	justify-content: center;

}

.page-recruit .aci2__right .math_list05 {
	position: absolute;
	bottom: -27%;
	left: 61%;
	transform: translateX(-50%);
	width: 100%;
	display: flex;
	justify-content: center;
}

.page-recruit .aci1__left .math_list05 .mfsz {
	font-size: clamp(70px, 10.63vw - 11.8085px, 130px);
	font-weight: 700;
}

.page-recruit .aci1__right__top01_01 .math_list05 .mfsz {
	font-size: clamp(80px, 13.74vw - 25.56px, 160px);
	font-weight: 700;
}

.page-recruit .aci1__right__top01_02 .math_list05 .mfsz {
	font-size: clamp(80px, 13.74vw - 25.56px, 160px);
	font-weight: 700;
}

.page-recruit .aci1__right__bottom .math_list05 .mfsz {
	font-size: clamp(100px, 17.18vw - 31.95px, 200px);
	font-weight: 700;
}

.page-recruit .aci2__left .math_list05 .mfsz {
	font-size: clamp(90px, 12.02vw - 2.371px, 160px);
	font-weight: 700;
}

.page-recruit .aci2__right .math_list05 .mfsz {
	font-size: clamp(100px, 17.18vw - 31.95px, 200px);
	font-weight: 700;
}

.page-recruit .aci2__left .mfsz {
	position: relative;
}

.page-recruit .aci2__left .mfsz::before {
	content: ".0";
	position: absolute;
	top: 5%;
	left: clamp(36px, 4.639vw - -0.371px, 63px);
	font-size: clamp(90px, 12.02vw - 2.371px, 160px);
	font-family: "Barlow Condensed", sans-serif;
	color: #cc0406;
}

@media screen and (max-width: 768px) {

	.analysis__content__inner__sp .analysis__content__inner__sp03__inner02,
	.analysis__content__inner__sp .analysis__content__inner__sp03__inner01,
	.analysis__content__inner__sp .analysis__content__inner__sp02__inner,
	.analysis__content__inner__sp .aci__sp01__right__inner02,
	.analysis__content__inner__sp .aci__sp01__right__inner01,
	.analysis__content__inner__sp .aci__sp01__left_inner {
		position: relative;
	}

	.page-recruit .mfsz span {
		color: #cc0406;
		font-family: "Barlow Condensed", sans-serif;
	}

	.analysis__content__inner__sp .aci__sp01__left_inner .math_list05 {
		position: absolute;
		bottom: 11%;
		left: -4%;
		width: 100%;
		display: flex;
		justify-content: center;
	}

	.analysis__content__inner__sp .aci__sp01__right__inner01 .math_list05 {
		position: absolute;
		bottom: -6%;
		left: -32%;
		width: 100%;
		display: flex;
		justify-content: center;
	}

	.analysis__content__inner__sp .aci__sp01__right__inner02 .math_list05 {
		position: absolute;
		bottom: -4%;
		left: 15%;
		width: 100%;
		display: flex;
		justify-content: center;
	}

	.analysis__content__inner__sp02__inner .math_list05 {
		position: absolute;
		bottom: -8%;
		left: -31%;
		width: 100%;
		display: flex;
		justify-content: center;
	}

	.analysis__content__inner__sp03__inner01 .math_list05 {
		position: absolute;
		bottom: 10%;
		left: 0%;
		width: 100%;
		display: flex;
		justify-content: center;
	}


	.analysis__content__inner__sp03__inner02 .math_list05 {
		position: absolute;
		top: clamp(3px, 1.694vw - -3.016px, 10px);
		left: -33%;
		width: 100%;
		display: flex;
		justify-content: center;
	}

	.analysis__content__inner__sp .aci__sp01__left_inner .math_list05 .mfsz {
		font-size: clamp(50px, 12.10vw - -7.021px, 100px);
		font-weight: 700;
	}

	.analysis__content__inner__sp .aci__sp01__right__inner01 .math_list05 .mfsz {
		font-size: clamp(70px, 16.94vw - -9.83px, 140px);
		font-weight: 700;
	}

	.analysis__content__inner__sp .aci__sp01__right__inner02 .math_list05 .mfsz {
		font-size: clamp(75px, 18.15vw - -10.53px, 150px);
		font-weight: 700;
	}

	.analysis__content__inner__sp02__inner .math_list05 .mfsz {
		font-size: clamp(75px, 18.15vw - -10.53px, 150px);
		font-weight: 700;
	}

	.analysis__content__inner__sp03__inner01 .math_list05 .mfsz {
		font-size: clamp(65px, 13.99vw - -12.51px, 120px);
		font-weight: 700;
	}

	.analysis__content__inner__sp03__inner02 .math_list05 .mfsz {
		font-size: clamp(70px, 16.94vw - -9.83px, 140px);
		font-weight: 700;
	}

	.analysis__content__inner__sp .aci__sp01__right__inner01 .math_list05 .mfsz .odo08 {
		letter-spacing: -3px;
	}


	.page-recruit .analysis__content__inner__sp03__inner01 .mfsz {
		position: relative;
	}

	.page-recruit .analysis__content__inner__sp03__inner01 .mfsz::before {
		content: ".0";
		position: absolute;
		top: clamp(6px, 1.694vw - 0.0169px, 13px);
		left: clamp(27px, 5.089vw - -7.916px, 47px);
		font-size: clamp(65px, 13.99vw - -12.51px, 120px);
		font-family: "Barlow Condensed", sans-serif;
		color: #cc0406;
	}
}

.page-recruit .odometer-formatting-mark {
	display: none;
}

.barlow-condensed-black {
	font-family: "Barlow Condensed", sans-serif;
	font-weight: 700;
	font-style: normal;
}

.page-recruit .odometer-inside {
	letter-spacing: -1px;
}

.pc__none {
	display: block;
}

.sp__none {
	display: none;
}

.page-recruit .bg__be__gray {
	position: relative;
}

.page-recruit .bg__be__gray::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: clamp(300px, 17.18vw - -168.04px, 400px);
	background-color: #f1f1f1;
	z-index: -1;
}

.page-recruit .system__content {
	display: flex;
	justify-content: space-between;
	column-gap: 2%;
	filter: drop-shadow(0px 0px 20px rgba(0, 0, 0, 0.2));
}


.page-recruit .system__content .system__content__inner {
	border-radius: 20px;
	position: relative;
	display: flex;
	flex-flow: column;
	justify-content: flex-start;
}

.page-recruit .system__content .system__content__inner img {
	padding-top: 10% !important;
	margin: 0 auto !important;
	display: block;
	position: relative;
	z-index: 1;
}

.page-recruit .system__content .system__content__inner .sci__text {
	background-color: #fff;
	padding: 20px;
	width: 100%;
	line-height: 1.6;
	border-radius: 0 0 19px 19px;
	text-align: center;
	flex-grow: 1;
}

.page-recruit .system__content .system__content__inner .sci__text .sci_text14 {
	font-size: 14px !important;
}

.page-recruit .system__content .system__content__inner .sci__text .sci_text12 {
	font-size: 12px !important;
}

.page-recruit .system__content .system__content__inner .sci__inner {
	display: flex;
	flex-flow: column;
	background-color: #cc0406;
	border-radius: 20px;
}

.page-recruit .system__content .system__content__inner .sci__read {
	padding: 20px;
	width: 100%;
	line-height: 1.2;
	font-size: clamp(16px, 1.017vw - -12.18px, 20px);
	color: #fff;
	font-weight: 700;
	background-color: #cc0406;
	text-align: center;
}

.page-recruit .system__content .system__content__inner .sci__read__bgno {
	position: absolute;
	top: clamp(-13px, 1.526vw - -7.274px, -19px);
	right: 10px;
	font-size: clamp(70px, 8.651vw - -37.55px, 104px);
	font-weight: 600;
	color: #b90002;
	font-family: "Barlow Condensed", sans-serif;
	line-height: 1;
}

.page-recruit h2.headline01 {
	padding-bottom: 50px;
}

.page-recruit .desired__hires__content {
	display: flex;
	justify-content: space-between;
	column-gap: 2%;
}

.page-recruit .desired__hires__content__inner {
	width: 33%;
	column-gap: 3vw;
}

.page-recruit .desired__hires__content__inner .dhc__images {
	position: relative;
	filter: drop-shadow(0px 0px 20px rgba(0, 0, 0, 0.2));
}

.page-recruit .desired__hires__content__inner .dhc__images img {
	width: 100%;
	display: block;
}

.page-recruit .desired__hires__content__inner .dhc__images .dhc__nunber {
	position: absolute;
	bottom: -10%;
	left: 50%;
	transform: translateX(-50%);
	width: clamp(34px, 4.467vw - 0.092px, 60px);
	height: clamp(34px, 4.467vw - 0.092px, 60px);
	border-radius: 30px;
	background-color: #fff;
	color: #cc0406;
	display: flex;
	font-weight: 700;
	font-size: clamp(20px, 2.749vw - 1.113px, 36px);
	justify-content: center;
	align-items: center;
	padding-bottom: 0 !important;
	font-family: "Barlow", "Noto Sans JP", sans-serif;
}

.page-recruit .desired__hires__content__inner .dhc__text01 {
	font-size: clamp(26px, 0.205vw - -25.23px, 28px);
	font-weight: 700;
	color: #000;
	text-align: center;
	line-height: calc(42/28);
	padding: 35px 0 0 !important;
}

.page-recruit .desired__hires__content__inner .dhc__text02 {
	font-size: 18px;
	font-weight: 400;
	color: #000;
	line-height: calc(26/16);
	padding: 5px 0 0 !important;
}

.page-recruit .desired__hires__content02 {
	display: flex;
	justify-content: center;
	flex-direction: row-reverse;
}

.page-recruit .desired__hires__content02 .dhc__left {
	background-image: url(/wp-content/uploads/img_ceo.jpg);
	background-size: cover;
	background-position: center;
}

.page-recruit .desired__hires__content02 .dhc__left,
.page-recruit .desired__hires__content02 .dhc__right {
	width: 51%;
}

.page-recruit .desired__hires__content02 .dhc__right {
	background-color: #cc0406;
	color: #fff;
	padding: clamp(30px, 8.571vw - 55.7142px, 60px);
}

.page-recruit .desired__hires__content02 .dhc__right p {
	padding-bottom: 0 !important;
}

.page-recruit .dhc__right__text14,
.page-recruit .dhc__right__text16,
.page-recruit .dhc__right__text20 {
	font-weight: 400;
	line-height: 1.6;
}

.page-recruit .dhc__right__text14 {
	font-size: 14px;
}

.page-recruit .dhc__right__text16 {
	font-size: 16px;
	letter-spacing: 1.4px;
}

.page-recruit .dhc__right__text20 {
	font-size: 20px;
	padding-left: 10px;
	font-weight: 700;
}

.page-recruit .desired__hires__content02 .dhc__right .en {
	background-color: #000;
	text-shadow: unset;
}

.page-recruit .desired__hires__content02 .dhc__right h2 {
	color: #fff !important;
}

.page-recruit .dhc__right h2.headline01 {
	padding-bottom: clamp(20px, 2.857vw - 8.571px, 30px);
}

.page-recruit .dhc__right__text {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	padding-top: 10px;
}

.page-recruit .interview__wrap .en {
	background-color: #000;
	text-shadow: unset;
}

.page-recruit .interview__wrap h2 {
	color: #fff !important;
	padding-bottom: clamp(10px, 7.179vw - 16.92px, 80px);
}

.page-recruit .interview {
	filter: drop-shadow(0px 0px 20px rgba(0, 0, 0, 0.2));
	margin-top: 70px;
}

.page-recruit .interview__content {
	display: flex;
	justify-content: center;
	align-items: stretch;
	column-gap: 20px;
	padding-bottom: 20px;
}

.page-recruit .interview__content .interview__inner {
	background-color: #fff;
	border-radius: 10px;
	width: 32%;
	max-width: 380px;
}

.page-recruit .interview__ {
	position: relative;
}

.page-recruit .interview__content .interview__inner {
	background-color: #fff;
	border-radius: 10px;
	width: 32%;
	max-width: 380px;
	display: flex;
	flex-flow: column;
	align-items: center;
	padding: 30px;
	min-height: 255px;
}

@media only screen and (max-width: 768px) {
	.page-recruit .interview__content .interview__inner {
		padding: 15px;
	}
}

.page-recruit .interview__content .interview__inner .interview__inner_raed {
	font-size: clamp(15px, 1.017vw - -11.18px, 19px);
	font-weight: 700;
	color: #cc0406;
	border-bottom: 2px solid #cc0406;
	width: 100%;
	text-align: center;
	padding-bottom: 8px !important;
	line-height: 1.4;
}

.page-recruit .interview__content .interview__inner .interview__inner_text {
	font-size: 16px;
	line-height: 1.6;
	padding-bottom: 0 !important;
	padding-top: 10px;
}

@import url('https://design-code.holo-server.com/wp-content/themes/mrp04/style.css');
@import url('https://design-code.holo-server.com/wp-content/themes/mrp04-child/designcode.css');

/*--------------------
flow01
--------------------*/
.flowlist {
	position: relative;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto !important;
	padding: 0 50px;
}

.flowlist::before {
	content: "";
	width: 15px;
	height: 100%;
	background: #fff;
	margin-left: -8px;
	display: block;
	position: absolute;
	top: 0;
}

.flowlist>li {
	position: relative;
}

.flowlist>li:not(:last-child) {
	margin-bottom: 8vh;
}

.flowlist>li .icon {
	font-size: 1.6rem;
	color: #fff;
	background: #000000;
	padding: 0.8rem 2rem;
	display: block;
	position: absolute;
	top: 0;
	left: -13rem;
	z-index: 100;
	font-style: italic;
}

.flowlist>li .icon::after {
	content: "";
	border-style: solid;
	border-width: 5px 0 5px 10px;
	border-color: transparent transparent transparent #000000;
	position: absolute;
	top: 50%;
	left: 100%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.flowlist>li dl {
	padding-left: 7rem;
	position: relative;
	padding-top: 0.7rem;
	padding-right: 0.7rem;
}

.flowlist>li dl::before,
.flowlist>li dl::after {
	content: "";
	display: block;
	position: absolute;
	top: 2.1rem;
}

.flowlist>li dl::before {
	width: 7px;
	height: 7px;
	margin-top: 0;
	background: #cc0406;
	border-radius: 50%;
	left: -4px;
}

.flowlist>li dl::after {
	width: 50px;
	border-bottom: 1px dashed #999;
	position: absolute;
	left: 5px;
	top: 2.3rem;
}

.flowlist>li dl dt {
	margin-bottom: 0.5rem;
	font-weight: 600;
	font-size: 22px;
}

@media (max-width: 768px) {
	.flowlist>li .icon {
		font-size: 1.2rem;
	}

	.flowlist {
		padding-left: 10rem;
	}

	.flowlist>li .icon {
		left: -11rem;
	}

	.flowlist::before {
		left: 10rem;
	}

	.flowlist>li dl {
		padding-left: 4.5rem;
	}

	.flowlist>li dl::after {
		width: 30px;
	}

	.flowlist>li dl dt {
		font-size: 18px;
	}
}

.innerContent1200.bg__gray {
	background-color: #f1f1f1;
	padding-bottom: 60px;
}

.flowlist>li {
	border-bottom: 1px dotted #999;
}

.flowlist>li .icon {
	display: none !important;
}

.innerContent1200.bg__gray .headline01 {
	padding-top: 60px;
	text-align: center;
}

.innerContent1200.bg__gray .headline01 span.en {
	margin: 0 auto 0.8rem;
}

.flowlist>li:last-child {
	border-bottom: none;
}

.entry__.bg__be__red::before {
	height: 20%;
}

.page-recruit .pdg-top0 {
	padding-top: 0 !important;
}

.page-recruit table.responsive {
	background-color: #fff !important;
}

.page-recruit .wpcf7-form {
	padding: 15px 0;
}

.page-recruit .contact-form-wrap {
	background-color: #fff;
	filter: drop-shadow(0px 0px 20px rgba(0, 0, 0, 0.2));
	padding: 0 30px;
	border-radius: 20px;
}

.page-recruit .entry__wrap .en {
	background-color: #000;
	text-shadow: unset;
}

.page-recruit .entry__wrap h2 {
	color: #fff !important;
}

.page-recruit .job_requirements__wrap {
	filter: drop-shadow(0px 0px 20px rgba(0, 0, 0, 0.2));
}

.page-recruit .job_requirements {
	background-color: #fff;
	padding: 60px 60px 40px;
	border-radius: 20px;
	width: 100%;
}

.page-recruit .requirements__01 {
	margin-bottom: 20px;
}

.page-recruit .job_requirements__title {
	font-size: 22px;
	border-bottom: 1px solid #808080;
	text-align: center;
	padding: 0 0 30px;
	line-height: 1.5;
	font-weight: 700;
}

.page-recruit .job_requirements_en_title {
	font-size: 16px;
	font-weight: 700;
	font-family: "Barlow", "Noto Sans JP", sans-serif !important;
	color: #cc0406;
	text-align: center;
	line-height: 1.5;
	padding-bottom: 0 !important;
}

.page-recruit .job_requirements__table {
	margin-bottom: 0 !important;
}

.page-recruit .job_requirements__table tr {
	border-bottom: 1px solid #808080;
}

.page-recruit .job_requirements__table__02 tr:last-child,
.page-recruit .job_requirements__table tr:last-child {
	border-bottom: none;
}

.page-recruit .job_requirements__table table th {
	border-bottom: unset;
}

.page-recruit .job_requirements__table table {
	margin-bottom: 0 !important;
}

.page-recruit .job_requirements__table table th,
.page-recruit .job_requirements__table table td {
	padding: 15px 15px;
}

.page-recruit .job_requirements__table .jrt__right p {
	padding: 0 !important;
}

.page-recruit .job_requirements__table .jrt__right .red__d {
	color: #000;
}

.page-recruit .job_requirements__table .jrt__left__black {
	font-size: 24px;
	color: #cc0406;
}

.page-recruit .job_requirements__table .jrt__left__red {
	color: #000;
}

.page-recruit .pc__none {
	display: none;
}

.page-recruit table.responsive tr th {
	color: #000;
}

.page-recruit .flowlist li {
	display: flex;
	justify-content: space-between;
}

.page-recruit .flowlist>li {
	margin-bottom: 0;
	padding: 15px 0;
}

.page-recruit .interview__image {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
}

.staff {
	position: absolute;
	width: 90%;
	max-width: 1200px;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	overflow: hidden;
	height: clamp(178px, 32.82vw - -54.92px, 498px);
}

.staffImg {
	position: absolute;
	top: 10%;
	right: 5%;
	width: 30.75%;
	max-width: 369px;
	filter: drop-shadow(10px 10px 20px rgba(0, 0, 0, 0.4));
	z-index: 2;
}

.staff_bglogo {
	position: absolute;
	top: 50%;
	right: 25%;
	transform: translateY(-50%);
	z-index: 0;
	width: 40%;
	max-width: 372px;
}

.interview__name {
	position: absolute;
	top: 45%;
	right: 18%;
	display: inline-flex;
	color: #fff;
	justify-content: center;
	align-items: center;
	border-bottom: 2px solid #fff;
	padding: 10px 150px 10px 10px;
}

.page-recruit .interview__name p {
	padding-bottom: 0 !important;
}

.page-recruit .interview__name .interview__name__text01 {
	font-weight: 700;
	font-size: clamp(18px, 2.256vw - -9.538px, 40px);
	color: #fff;
	line-height: 1.0;
	border-right: 1px solid #fff;
	padding-right: 15px;
	margin-right: 15px;
}

.page-recruit .interview__name .interview__name__text02 {
	font-size: clamp(10px, 0.615vw - -7.692px, 16px);
}

.page-recruit textarea::placeholder {
	padding: 10px;
}

.page-recruit .interview__inner .interview__inner__no {
	font-size: clamp(30px, 5.089vw - -10.91px, 50px);
	font-family: "Barlow Condensed", sans-serif;
	font-weight: 700;
	padding-bottom: 0;
	line-height: 1.2;
	color: #cc0406;
}

@media screen and (max-width: 1024px) {
	.staffImg {
		width: 40%;
	}

	.interview__name {
		top: 45%;
	}

	.page-recruit .interview {
		margin-top: 120px;
	}
}

@media screen and (max-width: 768px) {
	.staff {
		width: 100%;
	}

	.staffImg {
		width: 50%;
		top: -2%;
		right: -10%;
	}

	.page-recruit .bg__be__red::before,
	.staff {
		height: 34vh;
	}

	.interview__name {
		padding: 10px 70px 10px 10px;
	}

	.page-recruit .interview {
		margin-top: 11vh;
	}
}

@media screen and (max-width: 640px) {
	.page-recruit .interview {
		margin-top: 8vh;
	}
}

.page-recruit .flowlist>li img {
	max-width: 180px !important;
}

@media screen and (max-width: 768px) {

	.page-recruit .flowlist>li img {
		max-width: 160px !important;
	}

	.bg__be__red01 .innerContent1200 {
		width: 95%;
	}

	.analysis__content__inner01.sp__none,
	.analysis__content__inner02.sp__none {
		display: none !important;
	}

	.page-recruit .pc__none {
		display: block;
	}

	.page-recruit .analysis__title p.headline_en.redzone {
		font-size: clamp(50px, 12.72vw - -2.29px, 100px);
	}

	.page-recruit .analysis__title .a__title__text01 {
		font-size: clamp(15px, 2.29vw - -6.412px, 24px);
	}

	.page-recruit .analysis__title .a__title__text02 {
		font-size: 0.9rem;
	}

	.page-recruit .analysis__content__inner__sp01,
	.page-recruit .analysis__content__inner__sp03 {
		display: flex !important;
		justify-content: center;
		column-gap: 5px;
	}

	.page-recruit .analysis__content__inner__sp01 .aci__sp01__left,
	.page-recruit .analysis__content__inner__sp01 .aci__sp01__right,
	.page-recruit .analysis__content__inner__sp03 .analysis__content__inner__sp03__inner01,
	.page-recruit .analysis__content__inner__sp03 .analysis__content__inner__sp03__inner02 {
		width: 50%;
	}

	.page-recruit .analysis__content__inner__sp01 .aci__sp01__left img,
	.page-recruit .analysis__content__inner__sp01 .aci__sp01__right img,
	.page-recruit .analysis__content__inner__sp02 img,
	.page-recruit .analysis__content__inner__sp03 img {
		width: 100%;
		filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.2));
		border-radius: 10px;
	}

	.page-recruit .analysis__content__inner__sp01 .aci__sp01__right {
		display: flex;
		flex-flow: column;
		row-gap: 5px;
	}

	.page-recruit .analysis__content {
		row-gap: 5px;
	}

	.page-recruit .system__content {
		display: flex;
		justify-content: center;
		column-gap: 5px;
		flex-wrap: wrap;
		row-gap: 5px;
	}

	.page-recruit .system__content .system__content__inner {
		width: 49%;
	}

	.page-recruit .desired__hires__content {
		display: flex;
		justify-content: center;
		flex-flow: column;
		row-gap: 30px;
	}

	.page-recruit .desired__hires__content__inner {
		width: 100%;
		margin: 0 auto;
	}

	.page-recruit .desired__hires__content__inner .dhc__images .dhc__nunber {
		bottom: -27px;
		left: 50%;
	}

	.page-recruit .desired__hires__content__inner .dhc__images .dhc__nunber {
		width: 60px;
		height: 60px;
		font-size: 36px;
	}

	.page-recruit .desired__hires__content02 {
		flex-flow: column;
	}

	.page-recruit .desired__hires__content02 .dhc__left,
	.page-recruit .desired__hires__content02 .dhc__right {
		width: 100%;
	}

	.page-recruit .desired__hires__content02 .dhc__left {
		height: 420px;
	}

	.page-recruit .dhc__right .pc__none img {
		display: block;
		padding-bottom: 10px;
	}

	.page-recruit .dhc__right .pc__none {
		padding-bottom: 10px;
	}

	.page-recruit .desired__hires__content__inner .dhc__text01 {
		padding: 30px 0 0 !important;
	}

	.page-recruit .system__content .system__content__inner .sci__text {
		padding: clamp(12px, 2.035vw - -4.366px, 20px);
		font-size: 0.9rem;
	}

	.page-recruit .interview__content {
		row-gap: 10px;
		padding-bottom: 10px;
		justify-content: space-around;
		flex-wrap: wrap;
		column-gap: 0;
	}

	.page-recruit .interview__content .interview__inner {
		width: 48%;
	}

	.page-recruit .flowlist {
		padding: 0 clamp(30px, 12.72vw - 17.7px, 80px);
	}

	.page-recruit .flowlist::before {
		left: clamp(30px, 12.72vw - 17.7px, 80px);
	}

	.page-recruit .flowlist>li dl {
		padding-left: 3.5rem;
	}

	.page-recruit .job_requirements__title {
		font-size: 18px;
		line-height: 1.5;
	}

	.page-recruit .br_::before {
		content: "\A";
		white-space: pre;
	}

	.page-recruit .job_requirements__table tr {
		display: flex;
		flex-flow: column;
	}

	.page-recruit .job_requirements__table tr th,
	.page-recruit .job_requirements__table tr td {
		width: 100%;
	}

	.page-recruit .job_requirements__table table th {
		padding: 10px 10px 0;
	}

	.page-recruit .job_requirements__table table td {
		padding: 0 10px 10px;
	}

	.page-recruit .contact-form-wrap {
		padding: 0 10px;
	}

	.page-recruit table.responsive tr {
		display: flex;
		flex-flow: column;
	}

	.page-recruit table.responsive tr th,
	.page-recruit table.responsive tr td {
		width: 100% !important;
	}

	.page-recruit .wpcf7-form .must {
		float: unset !important;
	}

	.page-recruit .flowlist>li img {
		width: 60%;
		margin: 0 auto !important;
	}

	.page-recruit .flowlist li {
		flex-flow: column;
	}

	.page-recruit .job_requirements {
		padding: 5%;
	}

	.page-recruit .interview__content .interview__inner {
		min-height: unset !important;
	}

	.page-recruit h2.headline01 {
		padding-bottom: 25px;
	}

	.page-recruit .job_requirements_en_title {
		font-size: 14px;
	}

	.page-recruit .job_requirements__table .jrt__left__black {
		font-size: 18px;
	}

	.page-recruit .system__content .system__content__inner {

		border-radius: 10px;
	}

	.page-recruit .system__content .system__content__inner .sci__inner {
		border-radius: 10px;
	}

	.page-recruit .job_requirements {
		border-radius: 10px;
	}

	.page-recruit .contact-form-wrap {
		border-radius: 10px;
	}

	.page-recruit .desired__hires__content__inner .dhc__text02 {
		font-size: 0.9rem;
	}

	.page-recruit .dhc__right__text16 {
		font-size: 0.9rem;
	}

	.page-recruit .dhc__right__text14 {
		font-size: 12px;
	}

	.page-recruit .dhc__right__text20 {
		font-size: 18px;
	}

	.page-recruit .interview__content .interview__inner .interview__inner_text {
		font-size: 0.9rem;
	}

	.page-recruit .dhc__right .pc__none img {
		width: 100%;
	}

	.page-recruit .aci__sp01__left_inner_text01,
	.page-recruit .aci__sp01__left_inner_text02,
	.page-recruit .aci__sp01__left_inner_text03,
	.page-recruit .aci__sp01__right__inner01_text01,
	.page-recruit .aci__sp01__right__inner01_text02,
	.page-recruit .aci__sp01__right__inner01_text03,
	.page-recruit .aci__sp01__right__inner01_text03,
	.page-recruit .aci__sp01__right__inner02__text01,
	.page-recruit .aci__sp01__right__inner02__text02,
	.page-recruit .aci__sp01__right__inner02__text03,
	.page-recruit .aci__sp01__right__inner02__text04,
	.page-recruit .analysis__content__inner__sp02__inner__text01,
	.page-recruit .analysis__content__inner__sp02__inner__text02,
	.page-recruit .analysis__content__inner__sp02__inner__text03,
	.page-recruit .analysis__content__inner__sp03__inner01__text01,
	.page-recruit .analysis__content__inner__sp03__inner01__text02,
	.page-recruit .analysis__content__inner__sp03__inner01__text03,
	.page-recruit .analysis__content__inner__sp03__inner02__text01,
	.page-recruit .analysis__content__inner__sp03__inner02__text02,
	.page-recruit .analysis__content__inner__sp03__inner02__text03 {
		position: absolute;
		font-weight: 700;
		text-align: center;
		padding: 0;
		z-index: 10;
	}

	.page-recruit .aci__sp01__left_inner_text01,
	.page-recruit .aci__sp01__right__inner01_text01,
	.page-recruit .aci__sp01__right__inner02__text01,
	.page-recruit .analysis__content__inner__sp02__inner__text01,
	.page-recruit .analysis__content__inner__sp03__inner01__text01,
	.page-recruit .analysis__content__inner__sp03__inner02__text01 {
		top: clamp(10px, 2.544vw - -0.458px, 20px);
		left: 50%;
		transform: translateX(-50%);
		background-color: #000;
		color: #fff;
		font-size: clamp(14px, 2.544vw - -4.458px, 24px);
		width: 90%;
		border-radius: 40px;
		text-align: center;
		padding: 0;
		line-height: 1.8;
	}

	.page-recruit .analysis__content__inner__sp02__inner__text01 {
		left: 0;
		transform: translateX(6%);
		width: 44%;
	}

	.page-recruit .aci__sp01__left_inner_text02 {
		font-size: clamp(16px, 4.834vw - 2.129px, 35px);
		bottom: 22%;
		right: 17%;
	}

	.page-recruit .aci__sp01__left_inner_text03 {
		font-size: clamp(14px, 2.544vw - -2.458px, 24px);
		bottom: 11%;
		left: 50%;
		transform: translateX(-50%);
	}

	.page-recruit .aci__sp01__right__inner01_text02 {
		font-size: clamp(12px, 2.035vw - -4.366px, 20px);
		bottom: 2%;
		right: 4%;
	}

	.page-recruit .aci__sp01__right__inner01_text03 {
		font-size: clamp(25px, 6.361vw - -1.145px, 50px);
		bottom: 18%;
		right: 16%;
	}

	.page-recruit .aci__sp01__right__inner02__text02 {
		font-size: clamp(12px, 2.035vw - -4.366px, 20px);
		bottom: 14%;
		right: 15%;
	}

	.page-recruit .aci__sp01__right__inner02__text03 {
		font-size: clamp(25px, 6.361vw - -1.145px, 50px);
		bottom: 21%;
		right: 25%;
	}

	.page-recruit .aci__sp01__right__inner02__text04 {
		font-size: clamp(10px, 2.544vw - -0.458px, 20px);
		top: 23%;
		left: 5%;
		white-space: nowrap;
	}

	.page-recruit .analysis__content__inner__sp02__inner__text02 {
		font-size: clamp(12px, 2.035vw - -4.366px, 20px);
		bottom: 10%;
		left: 10%;
	}

	.page-recruit .analysis__content__inner__sp02__inner__text03 {
		font-size: clamp(25px, 6.361vw - -1.145px, 50px);
		bottom: 21%;
		right: 34%;
	}

	.page-recruit .analysis__content__inner__sp03__inner01__text02 {
		font-size: clamp(12px, 2.035vw - -4.366px, 20px);
		bottom: 23%;
		left: 55%;
	}

	.page-recruit .analysis__content__inner__sp03__inner01__text03 {
		font-size: clamp(18px, 5.597vw - 2.992px, 40px);
		bottom: 33%;
		right: 3%;
		writing-mode: vertical-rl;
	}

	.page-recruit .analysis__content__inner__sp03__inner02__text02 {
		font-size: clamp(12px, 2.035vw - -4.366px, 20px);
		bottom: clamp(2px, 4.58vw - 15.17px, 20px);
		left: 13%;
	}

	.page-recruit .analysis__content__inner__sp03__inner02__text03 {
		font-size: clamp(25px, 6.361vw - -1.145px, 50px);
		bottom: 21%;
		left: clamp(119px, 30.27vw - -5.45px, 238px);
		white-space: nowrap !important;
	}

	.page-recruit .analysis__content__inner__sp03__inner02__text03 span {
		font-size: clamp(10px, 2.544vw - -0.458px, 20px);
		writing-mode: vertical-rl;
		line-height: 1;
	}

	.page-recruit #full-wrapper {
		overflow: hidden;
	}

	.page-recruit .interview__content .interview__inner .interview__inner_raed {

		text-align: left;
	}

	.page-recruit .system__content .system__content__inner .sci__text {
		text-align: unset;
	}

	.page-recruit .system__content,
	.page-recruit .desired__hires__content__inner .dhc__images,
	.page-recruit .interview,
	.page-recruit .contact-form-wrap,
	.page-recruit .job_requirements__wrap {
		filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.2));
	}

}

@media screen and (min-width:768px) and (max-width:999px) {
	.page-recruit .system__content {
		display: flex;
		justify-content: center;
		column-gap: 3vw;
		flex-wrap: wrap;
		row-gap: 3vw;
	}

	.page-recruit .system__content .system__content__inner {
		width: 40%;
	}

	.page-recruit .interview__content {
		row-gap: 20px;
		flex-wrap: wrap;
	}

	.page-recruit .interview__content .interview__inner {
		width: 48%;
	}
}

@media only screen and (max-width: 1023px) {
	.mobile #header {
		z-index: 20;
		position: relative;
	}
}

.spmenu #menu {
	padding: 0 !important;
}

.spmenu #menu p {
	transform: translateX(-56%) !important;
}

@media only screen and (min-width: 768px) {
	.page-recruit .br_w::before {
		content: "\A";
		white-space: pre;
	}
}

@media only screen and (max-width: 640px) {
	.page-recruit .desired__hires__content02 .dhc__left {
		height: 260px;
	}
}