@charset "utf-8";
/*
Theme Name:mrp-child
Template:mrp
Version: 1.0.0
*/
/*
DesignCode CSS: ver 0.01
*/
/*------------------------------------------------------
Theme Material
------------------------------------------------------*/
/*------@import------*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&display=swap');

:root {
	/*------▼基本設定▼------*/
	--color-background: #fff;
	--color-font: #000;
	--color-primary: linear-gradient(90deg, rgba(177, 156, 40, 1) 0%, rgba(119, 126, 65, 1) 100%);
	--color-primary-shade: #777E41;
	--color-primary-tint: ;
	--color-secondary: #ED6D35;
	--color-secondary-tint: ;
	--color-table-border: #CCC;
	--body-font-size: min(calc(1.6rem + (1vw - 1.92rem) * 0.1294), 1.6rem);
	/* 1.6-1.4rem (1920-375) */
	--body-font-family: "Noto Sans JP", sans-serif;
	--content-max-width: 1240px;
	/*------▼ヘッダー設定▼------*/
	--header-background: #fff;
	--header-color-font: #000;
	--header-color-primary: linear-gradient(90deg, rgba(177, 156, 40, 1) 0%, rgba(119, 126, 65, 1) 100%);
	--header-secondary: #ED6D46;
	--header-color-primary-shade: ;
	--header-color-primary-tint: ;
	/*------▼フッター設定▼------*/
	--footer-background: #DEDFD2;
	--footer-color-font: #000;
	--footer-color-primary: ;
	/*------▼フォント設定▼------*/
	--font-family01: "Noto Sans JP", sans-serif;
	--font-family02: "Roboto Condensed", sans-serif;
	--font-family03: ;
	--font-family04: ;
}

/*--メディアクエリ--------------------------------------------*/
@media print,
screen and (min-width: 1024px) {}

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

@media print,
screen and (min-width: 769px) {}

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

/*--全体の設定--------------------------------------------*/
html {
	scroll-behavior: smooth;
	scroll-padding-top: 80px;
	line-height: 1.8;
}

/*--アンカーリンク--------------------------------------------*/
.anchor-link_contents {
	margin-top: -120px !important;
	padding-top: 120px !important;
}

.anchor-link {
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #fff;
	font-weight: bold;
	color: var(--color-primary-shade);
	max-width: 370px;
	width: 100%;
	border-radius: 50em;
	padding: var(--px20) var(--px40);
	position: relative;
	border: 1px solid var(--color-primary-shade);

	&::before,
	&::after {
		content: "";
		position: absolute;
		bottom: calc(50% - 7px);
		right: 30px;
		width: 2px;
		height: 14px;
		border-radius: 9999px;
		background-color: var(--color-primary-shade);
		transform-origin: 50% calc(100% - 1px);
	}

	&::before {
		transform: rotate(45deg);
	}

	&::after {
		transform: rotate(-45deg);
	}

	&:hover {
		background-color: var(--color-primary-tint);
		color: var(--color-primary-shade);
	}

	&.anchor-link--special {
		max-width: 540px;
		width: 100%;
		background: var(--color-primary);
		border: 1px solid var(--color-primary);
		color: #fff;

		&::before,
		&::after {
			background-color: #fff;
		}

		&:hover {
			background: var(--color-primary-tint);
			color: var(--color-primary);

			&::before,
			&::after {
				background-color: var(--color-primary);
			}
		}
	}
}

@media print,
screen and (max-width: 768px) {
	.anchor-link {

		&::before,
		&::after {
			content: "";
			position: absolute;
			bottom: calc(50% - 5px);
			right: 20px;
			width: 2px;
			height: 10px;
			border-radius: 9999px;
			transform-origin: 50% calc(100% - 1px);
		}
	}
}

/*--表示の切り替え--------------------------------------------*/

body:not(.page.home) .top-news {
	display: none;
}

#content,
body:not(.home) #content.wide {
	padding: var(--px100w) 0 var(--px80);
	margin: 0 auto;
}

/*--お知らせ　下線--------------------------------------------*/
.postlist li {
	border-top: 1px solid #ddd;
}

.postlist li:last-child {
	border-bottom: 1px solid #ddd;
}

/*--fvの比率調整--------------------------------------------*/
#mainImg img {
	width: 100% !important;
	height: auto;
}

/*--幅フル100%背景色--------------------------------------------*/

.widecolor--bg-pink {
	margin-right: calc(((100vw - 100%) / 2) * -1);
	margin-left: calc(((100vw - 100%) / 2) * -1);
	padding: min(calc(120px + (1vw - 19.2px) * 2.5890), 120px) calc((100vw - 100%) / 2) min(calc(150px + (1vw - 19.2px) * 3.2362), 150px);
	/* 120-80px (1920-375) */
	background-color: var(--color-primary-tint);
}

.widecolor--bg-primary {
	margin-right: calc(((100vw - 100%) / 2)* -1);
	margin-left: calc(((100vw - 100%) / 2)* -1);
	background-color: var(--color-primary);
}

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

	.widecolor--bg-pink,
	.widecolor--bg-primary {
		padding: min(calc(120px + (1vw - 19.2px) * 2.5890), 120px) 0 min(calc(150px + (1vw - 19.2px) * 3.2362), 150px) 0;
		/* 120-80px (1920-375) */
	}
}

.post .widecolor>h2:first-child {
	margin-top: 0 !important;
}

.widearea {
	margin-right: calc(((100vw - 100%) / 2)* -1);
	margin-left: calc(((100vw - 100%) / 2)* -1);
}

#content,
body:not(.home) #content.wide {
	margin: 0 auto;
}

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

	#content,
	#content.wide {
		width: 100%;
	}

	.content_inner {
		width: 100%;
	}
}


/*----------------------------------------------
  utility
----------------------------------------------*/
/*---------コンテンツ幅-----------*/
.max_w340 {
	max-width: 340px !important;
}

.max_w600 {
	max-width: 600px;
}

/*---------背景色-----------*/
.bg_white {
	background: var(--color-background) !important;
}

.bg_blue {
	background: #EFFAFE !important;
}

.bg_green {
	background: #E0F6EB !important;
}

.bg_yellow {
	background: #FCF8DA !important;
}

.bg_pink {
	background: #FFB5B9 !important;
}

.bg_light-pink {
	background: #FFF4F5 !important;
}

/*---------文字色-----------*/
.fc_secondary {
	color: var(--color-secondary) !important;
}

.fc_black {
	color: var(--color-font) !important;
}

.fc_navy {
	color: var(--color-primary) !important;
}

.fc_white {
	color: #fff !important;
}

.fc_blue {
	color: #68A9DC !important;
}

.fc_green {
	color: #4DB983 !important;
}

.fc_yellow {
	color: #FBB74C !important;
}

.fc_pink {
	color: var(--color-primary) !important;
}

/*---------文字-----------*/
.ff_01 {
	font-family: var(--font-family01) !important;
}

/*---------フォントサイズ-----------*/
.fz14 {
	font-size: 14px;
}

.fz20 {
	font-size: var(--rem20);
}

.fz30 {
	font-size: var(--rem30);
	line-height: 2;
}

/*---------リンク-----------*/
.txc_link {
	color: #1EB3EA;
	font-weight: bold;
}

/*---------gap-----------*/
.gap1 {
	gap: 1%;
}

/*---------border-----------*/
.border-b1 {
	border-bottom: 1px solid #DFDFDF;
}

/*---------pc表示-----------*/
@media screen and (max-width: 1300px) {
	.pc_mid_w30 {
		width: 30% !important;
	}

	.pc_mid_w60 {
		width: 60% !important;
	}
}

/*---------tab表示-----------*/
@media screen and (max-width: 768px) {
	.tab_w60 {
		width: 60% !important;
	}

	.pc_mid_w60 {
		width: 100% !important;
	}
}

/*---------sp表示-----------*/
@media screen and (max-width: 450px) {
	.sp-txt_l {
		text-align: left !important;
	}

	.sp-txt_c {
		text-align: center !important;
	}

	.sp_w100 {
		width: 100% !important;
	}
}

/*================================================
				　採用情報
================================================*/

.post .lead {
	font-size: min(calc(3.2rem + (1vw - 19.2px) * 0.5178), 3.2rem);
	/* 3.2-2.4rem (1920-375) */
	font-weight: 500;
	font-style: italic;
}

.post .lead_en {
	font-size: min(calc(1.8rem + (1vw - 19.2px) * 0.3236), 1.8rem);
	/* -- 1920 1.8rem 375 1.3rem -- */
	color: var(--color-primary-shade);
	letter-spacing: 0.8rem;
}

/*--幅フル100%背景色--------------------------------------------*/

.widecolor {
	margin-right: calc(((100vw - 100%) / 2) * -1);
	margin-left: calc(((100vw - 100%) / 2) * -1);
	padding: min(calc(120px + (1vw - 19.2px) * 2.5890), 120px) calc((100vw - 100%) / 2) min(calc(150px + (1vw - 19.2px) * 3.2362), 150px);
	margin-top: min(calc(120px + (1vw - 19.2px) * 2.5890), 120px);
	/* 120-80px (1920-375) */
	background: #fafafa;
}

.post .widecolor>h2:first-child {
	margin-top: 0 !important;
}

/*--スタイルリストエリア--------------------------------------------*/

ul.box_style01>li {
	position: relative;
	gap: 40px;
	width: 100%;
	background: #fff;
	padding: min(calc(40px + (1vw - 19.2px) * 0.6472), 40px) min(calc(35px + (1vw - 19.2px) * 0.6472), 35px);
	border-radius: 20px;
	-webkit-box-shadow: 0 0 30px rgba(0, 0, 0, .1);
	box-shadow: 0 0 30px rgba(0, 0, 0, .1);
	margin-bottom: 30px;
	text-align: left;
}

.post ul.box_style01 .box_style_ttl {
	width: 100%;
	font-size: min(calc(2.8rem + (1vw - 19.2px) * 0.4531), 2.8rem);
	/* 2.8-2.1rem (1920-375) */
	font-weight: 400;
	padding: 0.6rem 0 0.6rem 2rem;
	margin: 0 0 min(calc(15px + (1vw - 19.2px) * 0.4531), 15px);
	/*15-10px (1920-375) */
	border-bottom: none;
	border-left: 3px solid var(--color-primary-shade);
	text-align: left;
	font-style: italic;
	line-height: 1.4;
}

@media screen and (min-width: 769px) {
	ul.box_style01>li {
		display: flex;
	}
}

/*--ボタン別アイコン--------------------------------------------*/

a.external.ico_phone::before {
	content: '\f095';
	display: inline-block;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-right: 1rem;
}

a.external.ico_mail::before {
	content: '\f0e0';
	display: inline-block;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-right: 1rem;
}

a.external.ico_phone::after,
a.external.ico_mail::after {
	content: none;
}

/*---table_style04-------------------------------------*/

.post table.table_style04 th {
	background-color: transparent;
}

.post table.table_style04,
.post table.table_style04 th,
.post table.table_style04 td {
	border: none;
}

table.table_style04 tr:first-child {
	border-top: 1px solid #ababab;
}

table.table_style04 tr:last-child {
	border-bottom: 1px solid #ababab;
}

table.table_style04 tr {
	border-top: 1px dashed #ababab;
	letter-spacing: 1px;
}

table.table_style04 th,
table.table_style04 td {
	padding: 50px 30px;
}

table.table_style04 th {
	position: relative;
	z-index: 0;
	color: var(--color-background);
}

table.table_style04 th:before {
	position: absolute;
	content: "";
	background: var(--color-primary-shade);
	top: 7px;
	left: 0;
	bottom: 7px;
	width: 100%;
	height: auto;
	z-index: -1;
}

table.table_style04 td ul li {
	padding-left: 1em;
	position: relative;
	line-height: 2;
}

table.table_style04 td ul li:before {
	position: absolute;
	content: "・";
	top: 0;
	left: 0;
}

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

	table.table_style04 th,
	table.table_style04 td {
		padding: 35px 10px;
		font-size: 1.4rem;
		vertical-align: middle;
	}

	table.table_style04 th {
		width: 32%;
	}

	table.table_style04 td {
		width: 68%;
	}
}

/*--contact_area-------------------------------------*/

.contact_area {
	padding: min(calc(80px + (1vw - 19.2px) * 2.5890), 80px);
	/*80px-40px (1920-375)x*/
	text-align: center;
	background: #f7f7f7;
	margin-top: min(calc(120px + (1vw - 19.2px) * 2.5890), 120px);
}

.post .contact_ttl {
	font-size: min(calc(2.8rem + (1vw - 19.2px) * 0.4531), 2.8rem);
	/* 2.8-2.1rem (1920-375) */
	font-weight: 600;
	text-align: center;
	letter-spacing: .2rem;
	padding: 0;
	margin: min(calc(120px + (1vw - 19.2px) * 3.5599), 120px) auto min(calc(50px + (1vw - 19.2px) * 0.9709), 50px);
	/* 120-65px auto 50-35px (1920-375) */
}

.post .contact_ttl::before {
	content: none;
	position: relative;
	width: auto;
	height: auto;
	top: auto;
	left: auto;
}

.post .contact_ttl::after {
	content: '';
	position: relative;
	visibility: visible;
	display: block;
	width: 2.2em;
	height: 3px;
	background: var(--color-primary);
	margin: 0.6em auto 0;
}

.contact_read {
	margin: 0 0 min(calc(30px + (1vw - 19.2px) * 0.9709), 30px);
	/*30px-15px (1920-375)*/
	text-align: center;
}

.button_wrap,
.post .button_wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.button_wrap>*,
.post .button_wrap>* {
	margin: 10px !important;
}

.contact_area .linkBtn,
.contact_area .post .linkBtn {
	padding: 0;
}

.contact_area .linkBtn a {
	color: #fff;
	padding: 0.8em 1.2em;
	display: block;
}

.linkBtn:hover,
.post .linkBtn:hover {
	color: #fff;
	background: var(--color-primary);
	opacity: 0.8;
}

/*================================================
					会社概要
================================================*/

/*--見出し--------------------------------------------*/
/*================================================
					事業内容
================================================*/

/*--幅フル100%--------------------------------------------*/

.widearea {
	margin-right: calc(((100vw - 100%) / 2) * -1);
	margin-left: calc(((100vw - 100%) / 2) * -1);
}

/*--teleco_v1------------------------------*/

.teleco_v1 h2 {
	width: 100%;
}

.teleco_v1 .w50.image_box {
	position: relative;
	overflow: hidden;
}

.teleco_v1 .w50.image_box::before {
	content: '';
	display: block;
}

.teleco_v1 .w50.image_box img {
	position: absolute;
	width: 102%;
	height: auto;
	max-width: none;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.teleco_v1 .w50.text_box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	background: #ffffff;
	padding: min(calc(120px + (1vw - 19.2px) * 3.5599), 120px);
	/* 120-65px (1920-375) */
}

@media print,
screen and (min-width: 769px) {
	.teleco_v1 .w50.image_box::before {
		padding-top: calc(550px + (1vw - 19.2px) * 17.3762);
	}

	.teleco_v1 .w50.image_box img {
		width: auto;
		height: 116%;
	}
}

.flexinnerBtn {
	align-self: normal;
}

@media print,
screen and (max-width: 768px) {
	.teleco_v1 .w50.image_box {
		margin-bottom: 0;
	}

	.teleco_v1 .w50.image_box::before {
		padding-top: calc(350px + (1vw - 7.68px) * 27.9898);
	}

	.teleco_v1 .w50.text_box {
		padding: 20px;
		margin-bottom: 0;
	}
}

.post .sub_company h2 {
	font-size: min(calc(2.8rem + (1vw - 19.2px) * 0.4531), 2.8rem);
	/* 2.8-2.1rem (1920-375) */
	font-weight: 600;
	text-align: left;
	letter-spacing: .2rem;
	padding: 0;
	margin: min(calc(120px + (1vw - 19.2px) * 3.5599), 120px) auto min(calc(50px + (1vw - 19.2px) * 0.9709), 50px);
	/* 120-65px auto 50-35px (1920-375) */
}

.post .sub_company h2::before {
	content: none;
	position: relative;
	width: auto;
	height: auto;
	top: auto;
	left: auto;
}

.post .sub_company h2::after {
	content: '';
	position: relative;
	visibility: visible;
	display: block;
	width: 2.2em;
	height: 2px;
	background: var(--color-primary);
	margin: 0.6em auto 0;
	margin-right: auto;
	margin-left: 0;
}

.post .sub_company h2:first-child {
	margin-top: 0;
}

/*--テーブル--------------------------------------------*/

.post table.table_style02,
.post table.table_style02 th,
.post table.table_style02 td {
	border-width: 1px 0;
	border-color: var(--color-table-border);
}

.post table.table_style02 {
	margin: min(calc(30px + (1vw - 19.2px) * 0.6472), 30px) auto;
	/* 30-20px (1920-375) */
}

.post table.table_style02 th,
.post table.table_style02 td {
	font-size: min(calc(1.6rem + (1vw - 19.2px) * 0.1294), 1.6rem);
	padding: min(calc(20px + (1vw - 19.2px) * 0.5580), 20px) min(calc(15px + (1vw - 19.2px) * 0.3236), 15px);
	/* 20-15px 15-10px (1920-375) */
}

.post table.table_style02 th {
	width: 25%;
	font-weight: 600;
	background-color: var(--color-primary-shade);
	color: var(--color-background);

}

.post table.table_style02:first-child {
	margin-top: 0;
}

.post table.table_style02:last-child {
	margin-bottom: 0;
}

/*--list--------------------------------------------*/

.post .list_style01 li {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	flex-shrink: 0;
	border-bottom: solid 1px #ddd;
}

.post .history_style01 li .head {
	width: 25%;
	padding: min(calc(10px + (1vw - 19.2px) * 0.3236), 10px) min(calc(15px + (1vw - 19.2px) * 0.4531), 15px);
	/* 30-20px 15-10px (1920-375) */
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.post .list_style01 li .body {
	padding: min(calc(10px + (1vw - 19.2px) * 0.3236), 10px) min(calc(15px + (1vw - 19.2px) * 0.4531), 15px);
	/* 30-20px 15-10px (1920-375) */
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.post .list_style01 li:nth-child(odd) {
	background: #eee;
}

@media only screen and (max-width: 640px) {
	.post .list_style01 li {
		flex-direction: column;
	}

	.post .list_style01 li .head {
		width: 100%;
		padding-bottom: 0;
	}
}

/*--幅フル100%背景色--------------------------------------------*/

.widecolor {
	margin-right: calc(((100vw - 100%) / 2) * -1);
	margin-left: calc(((100vw - 100%) / 2) * -1);
	padding: min(calc(120px + (1vw - 19.2px) * 2.5890), 120px) calc((100vw - 100%) / 2) min(calc(150px + (1vw - 19.2px) * 3.2362), 150px);
	margin-top: min(calc(120px + (1vw - 19.2px) * 2.5890), 120px);
	/* 120-80px (1920-375) */
	background: #fafafa;
}

/*--幅フル100%--------------------------------------------*/

.widearea {
	margin-right: calc(((100vw - 100%) / 2) * -1);
	margin-left: calc(((100vw - 100%) / 2) * -1);
}

/*----------------------------------------------
  header
----------------------------------------------*/

/*--------------google翻訳--------------*/
#flags ul li a {
	padding: 0 !important;
}

.gt_flex {
	display: flex;
	justify-content: flex-end;
	padding: 5px 10px;
	background: var(--header-secondary);
}

#flags {
	width: 160px !important;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.gt_flex #flags,
.gt_flex #google_language_translator {
	height: 30px;
}

.gt_flex ul#sortable li {
	height: 18px !important;
	display: block;
}

/*--------------google翻訳ここまで--------------*/
#header {

	a.head_btn.tel_btn {
		display: flex;
		align-items: center;
		font-size: 2.2rem;
		background: none;
		color: var(--header-color-font);
		background-color: transparent;

		&::before {
			content: none;
		}

		&:hover {
			opacity: 0.8;
		}
	}

	a.head_btn .header_tel {
		position: relative;
        display: inline-block;
		&:before {
			content: '\f879';
    		font-family: 'Font Awesome 6 Free';
    		display: inline-block;
    		font-weight: 600;
    		font-size: 75%;
    		transform: translateY(-2px);
			margin-right: 3px;
		}
	}

	a.head_btn .header_time {
		&::before {
			content: none;
		}
	}

	a.head_btn.mail_btn {
		&::before {
			content: none;
		}

		>span {
			&:before {
				/* content: '\f0e0'; */
				content: none;
				display: inline-block;
				font-family: 'FontAwesome';
				font-size: 1.4rem;
				font-weight: 400;
				line-height: 1;
				margin-bottom: .1em;
				margin-right: 5px;
			}
		}
	}

	/* nav#mainNav ul li a span,
	nav#mainNav ul li.current-menu-item a span {
		color: var(--header-secondary);
	} */

	nav#mainNav ul li a:active span,
	nav#mainNav ul li a:hover span,
	nav#mainNav ul li.current-menu-item a span,
	nav#mainNav ul li.current-menu-parent a span {
		color: var(--header-secondary);
	}
}

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

@media print,
screen and (min-width: 1024px) {
	nav#mainNav ul li a {
		padding: var(--px20) var(--px12);

		&:hover {
			opacity: 0.6;
		}
	}

	#header a.head_btn.mail_btn {
		background: var(--header-color-primary);
		color: #fff;

		&:hover {
			background: var(--header-color-primary);
			color: #fff;
			opacity: 0.8;
		}
	}
}

@media print,
screen and (min-width: 1024px) {
	nav#mainNav ul li li {
		background: var(--color-background);
	}

	nav#mainNav ul li a span {
		color: var(--header-secondary);
	}
}

/*----------------------------------------------
  title
----------------------------------------------*/
h1.title,
.post h1,
header#h1Header h1.title {
	font-size: var(--rem48);
	font-family: var(--font-family01);
}

#thumbImg::before,
header#h1Header::before {
	background: transparent;
}

.post h1,
h1,
.post h2,
h2,
.post h3,
h3,
.post h4,
h4,
.post h5,
h5,
p,
div,
span {

	&.readtxt {
		font-size: var(--rem36);
		line-height: 2;
		font-weight: 600;
	}

	/*---------top-main-title-----------*/
	&.top-main-title {
		font-family: var(--font-family02);
		font-size: var(--rem80);
		font-weight: 600;
		color: var(--color-primary-shade);
		overflow-wrap: break-word;
		padding: 0;
		margin: 0 auto var(--rem30);
		border: none;
		background: transparent;
		display: inline-flex;
		align-items: baseline;
		line-height: 1.2;
		position: relative;


		&:first-letter {
			color: var(--color-secondary);
		}


		&:before {
			content: none;
		}

		&:after {
			content: "";
			display: inline-block;
			width: 100%;
			height: 7px;
			background: linear-gradient(90deg, rgba(177, 156, 40, 1) 0%, rgba(177, 156, 40, 0) 100%);
			position: absolute;
			left: 0;
			bottom: 0;
		}

		.subtxt {
			display: inline-block;
			font-size: var(--rem20);
			font-family: var(--font-family01);
			color: var(--color-font);
			font-weight: 600;
			padding: 0;
			margin: 0 0 0 var(--px20);
			border: none;
			background: transparent;
		}

		&.top-main-title--white {
			color: var(--color-background);

			.subtxt {
				color: var(--color-background);
			}
		}
	}

	&.top-secondary-title {
		font-family: var(--font-family01);
		font-weight: bold;
		font-size: var(--rem28);
		border: none;
		margin: 0;
		padding: 0 0 var(--rem40);
		text-align: left;

		&::before,
		&:after {
			content: none;
		}
	}


	/*---------page-main-title-----------*/
	&.page-main-title {
		font-family: var(--font-family02);
		font-size: 4rem;
		font-weight: 600;
		color: var(--color-primary-shade);
		overflow-wrap: break-word;
		padding: 0;
		margin: 0 auto var(--rem30);
		border: none;
		background: transparent;
		display: inline-flex;
		align-items: baseline;
		line-height: 1.2;
		position: relative;

		&:before {
			content: none;
		}

		&:after {
			content: "";
			display: inline-block;
			width: 100%;
			height: 7px;
			background: linear-gradient(90deg, rgba(177, 156, 40, 1) 0%, rgba(177, 156, 40, 0) 100%);
			position: absolute;
			left: 0;
			bottom: 0;
		}

		.subtxt {
			display: inline-block;
			font-size: var(--rem16);
			font-family: var(--font-family01);
			color: var(--color-font);
			font-weight: 600;
			padding: 0;
			margin: 0 0 0 var(--px20);
			border: none;
			background: transparent;
		}

		&.top-main-title--white {
			color: var(--color-background);

			.subtxt {
				color: var(--color-background);
			}
		}
	}

	/*---------page-secondary-title-----------*/
	&.page-secondary-title {
		font-family: var(--font-family01);
		font-size: var(--rem20);
		font-weight: bold;
		text-align: left;
		color: var(--color-font);
		line-height: 1.4;
		overflow-wrap: break-word;
		padding: var(--px20) var(--px30);
		margin: 0 auto var(--rem40);
		border: none;
		background: var(--color-primary-tint);

		&:before,
		&:after {
			content: none;
		}
	}
}


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

	.post h1,
	h1,
	.post h2,
	h2,
	.post h3,
	h3,
	.post h4,
	h4,
	.post h5,
	h5,
	p,
	div,
	span {
		&.readtxt {
			font-size: var(--rem28);
			line-height: 2;
			font-weight: 600;
		}
	}
}

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

	.post h1,
	h1,
	.post h2,
	h2,
	.post h3,
	h3,
	.post h4,
	h4,
	.post h5,
	h5,
	p,
	div,
	span {}
}

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

	.post h1,
	h1,
	.post h2,
	h2,
	.post h3,
	h3,
	.post h4,
	h4,
	.post h5,
	h5,
	p {

		/*---------txtstyle01-----------*/
	}
}

/*----------------------------------------------
  title
----------------------------------------------*/
.linkBtn,
.post .linkBtn {
	border-radius: 0;
	max-width: 300px;
}

/*-----------------------------
cta01_col2
------------------------------*/
.cta01 {
	background: url(/wp-content/uploads/cta-bg.jpg) no-repeat center / cover;
	position: relative;
	z-index: 0;
}

.cta01 .cta01_wrap {
	max-width: 1240px;
	width: 90%;
	margin: 0 auto;
	padding: var(--px80);
}

.cta01 .ctabtnlist {
	justify-content: space-between;
	max-width: 960px;
	margin: var(--px50) auto 0 auto;
}

.cta01 .ctabtnlist li {
	width: 50%;
	margin: 0;
	padding: 0;
	line-height: 1;
	display: flex;
}

.cta01 a.item {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: var(--px30) 0;
	text-align: center;
	box-sizing: border-box;
	color: #111;
	border-radius: 0;
	transition: all ease .15s;
}

.cta01 a.item:hover {
	opacity: 0.8;
}

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

	.cta01 .ctabtnlist li,
	.cta01 .ctabtnlist a.item {
		width: 100%;
	}

	.cta01 .ctabtnlist li+li {
		margin-top: 1rem;
	}
}

/*ボタン共通パーツ*/

.cta01 .btnttl {
	display: block;
	font-weight: bold;
	margin-bottom: 1rem;
}

.cta01 .infotxt {
	font-size: var(--rem16);
	font-weight: 400;
}

/*電話ボタン*/

.cta01 .telnum {
	font-size: var(--rem36);
	margin-bottom: 1rem;
}

.cta01 .telbtn .btnttl {
	font-size: var(--rem20);
}

.cta01 a.telbtn {
	background: var(--color-primary-shade);
	color: #fff;
}

/*メールボタン*/

.cta01 .mailbtn .btnttl {
	font-size: var(--rem24);
}

.cta01 a.mailbtn {
	background: var(--color-secondary);
	color: var(--color-background);
}

/*ボタンアイコン*/

.cta01 .mailbtn .btnttl::before,
.cta01 .telnum::before {
	content: '';
	display: inline-block;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-right: 1rem;
}

.cta01 .mailbtn .btnttl::before {
	content: '\f0e0';
}

.cta01 .telnum::before {
	content: '\f095';
}

/*================================================
				　TOP
================================================*/
.column01 {
	position: relative;
	margin: 0;
}

.column01_wrap {
	position: relative;
	max-width: 1240px;
	width: 94%;
	margin: 0 auto;
	z-index: 1;
}

.column01 .txtarea {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: var(--px80) var(--px40);
	margin: 0;
}

.column01 .txtarea .txtinner {
	max-width: 580px;
	line-height: 2;
}

.column01 .imgarea {
	line-height: 0;
	margin: 0 auto;
}

.column01 .imgarea img {
	width: 100%;
}

@media print,
screen and (max-width: 1300px) {
	.pc-md_w1100 {
		max-width: 1100px;
		width: 100%;
		margin: 0 auto !important;
	}
}

@media print,
screen and (max-width: 768px) {
	.column01 .txtarea {
		padding: var(--px80) 5%;
	}
}

@media print,
screen and (max-width: 768px) {
	.column01 .txtarea {
		padding: var(--px80) 5%;
	}
}

.top-about {
	background: url(/wp-content/uploads/top-about-bg.jpg) no-repeat center / cover;
}

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

	.top-about {
		padding-bottom: 0;
		padding-top: 40px;
	}
	.top-about .column01 .txtarea {
    	padding-block: 0;
	}

	.top-service,
	.top-recruit {
		padding: var(--px120) 5%;
	}
	.top-recruit .recruit-bnr {
    	margin-right: calc(((100vw - 100%) / 2) * -1);
    	margin-left: calc(((100vw - 100%) / 2) * -1);
	}
}

.post table th {
	background: var(--color-primary-shade);
	color: var(--color-background);
}

.post .subimitarea .linkBtn input[type="submit"] {
	padding: 0;
}