@charset "utf-8";

/* web font */
@font-face {
  font-family: 'icomoon';
  src:  url('../fonts/icomoon.eot?qxx1pr');
  src:  url('../fonts/icomoon.eot?qxx1pr#iefix') format('embedded-opentype'),
    url('../fonts/icomoon.ttf?qxx1pr') format('truetype'),
    url('../fonts/icomoon.woff?qxx1pr') format('woff'),
    url('../fonts/icomoon.svg?qxx1pr#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="ico-"], [class*=" ico-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ico-pen:before {
  content: "\e900";
}
.ico-time:before {
  content: "\e901";
}
.ico-location:before {
  content: "\e902";
}
.ico-yen:before {
  content: "\e903";
}
.ico-arrow-up:before {
  content: "\edba";
}
.ico-arrow-right:before {
  content: "\edbe";
}
.ico-arrow-down:before {
  content: "\edc2";
}
.ico-arrow-left:before {
  content: "\edc6";
}

/* TCD Hack */
body.hide_header_image #header {
	border-bottom: none;
}
.rich_font_type3,
.top-recruit .design_headline1 {
  font-family: "Zen Old Mincho", serif!important;
  font-style: normal;
}
#header_logo a img {
	max-height: 50px;
	width: auto;
}
body.single #header:before {
	z-index: 11;
}
#page_header {
	height: 400px;
}
.design_headline1.left {
	text-align: left!important;
}
.two_column_image img {
	max-width: 100%;
}
.post_content p {
	line-height: 1.66!important;
}
.caption {
	text-align: center;
	line-height: 1.44;
	margin-top: 10px;
	font-size: 13px;
}
#article > * + * {
	margin-bottom: 30px;
}
.speach_balloon_text {
	margin-bottom: 0!important;
}
#archive_square_headline {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
#main_contents.single_col #main_col {
  width: 100%;
  max-width: inherit;
}
#main_contents.single_col #post_title2 {
	margin: 0 0 40px;
}
.design_headline1 {
	color: #0ECB74!important;
}
.design_headline1.align-left {
	text-align: left!important;
}

#company_list {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
}
#company_list .item {
	width: 100%;
}
#company_list a {
	display: flex;
	flex-direction: column;
	transition: all .3s ease-in-out;
}
#company_list .image:after {
	display: none!important;
}
#company_list .title {
	color: #0ECB74;
	position: relative;
	z-index: inherit;
    left: inherit;
    top:inherit;
    -ms-transform: inherit;
    -webkit-transform: inherit;
    transform: inherit;
    -webkit-transition: inherit;
    transition: inherit;
    background: #fff;
    padding: 20px;
}
#company_list a:hover .title {
	left: inherit;
}
#company_list a:hover {
    box-shadow: 1px 1px 12px rgba(0, 0, 0, .4);
}
#company_list .title .main_title {
	position: relative;
}
#company_list .title .main_title:after {
	font-family: 'icomoon';
	content: "\edbe";
	color: #0ECB74;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	font-size: 14px;
}
.category_list_widget .square_headline {
	display: flex;
	align-items: center;
}
#footer {
	background: #fff;
}
#footer_logo img {
	max-width: 240px;
}
@media screen and (max-width: 768px) {
	.post_row {
		display: flex!important;
		flex-direction: column!important;		
	}
	.post_row.reverse {
		flex-direction: column-reverse!important;		
	}
	.post_col.post_col-2 {
		width: 100%;
	}
	.category_list_widget .square_headline h3 {
		height: 50px;
		line-height: 50px;
		display: flex;
		justify-content: space-between;
		width: 100%;
	}
}
@media screen and (max-width: 750px) {
	#company_list {
		padding: 0 10px;
		gap: 10px;
		display: grid!important;
	    margin: inherit!important;
	}
	#company_list .item {
		width: inherit!important;
	}
	#company_list .title {
		padding: 10px!important;
	}
}

@media screen and (max-width: 480px) {
	#company_list {
		grid-template-columns: 1fr;
	}
}

/* custom style */
.top-recruit .design_headline1 {
	font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
	font-size: 36px !important;
}
.top-recruit p {
	text-align: center;
	font-size: 16px;
    line-height: 2.4;
}
body.header-no-img #header:after {
	background: #fff;
	top: 0px !important;
}
body.header-no-img #header #global_menu > ul > li > a, body.header_fix #global_menu > ul > li > a, body.single #global_menu > ul > li > a {
    color: #000;
}
body.header-no-img #container {
	padding-top: 80px;
}
body.header-no-img #bread_crumb {
	border-top: 1px solid #ddd;
}

.c_ttl__01 {
	font-size: 24px;
	margin-bottom: 30px;
}

.search-conditions {
	background: #F6F6F6;
	padding: 25px 30px;
	margin-bottom: 20px;
}
.search-conditions h3 {
	font-size: 14px;
	margin-bottom: 20px;
}
.search-conditions dl {
	display: flex;
}
.search-conditions dl + dl {
	margin-top: 15px;
}
.search-conditions dl dt,
.search-conditions dl dd {
	font-size: 14px;
	line-height: 1.44;
}
.search-conditions dl dt {
	min-width: 100px;
	position: relative;
}
.search-conditions dl dt:after {
	content: '｜';
	margin-right: 10px;
	position: absolute;
	right: 0;
}
.jobs-count {
	display: flex;
	justify-content: flex-end;
	margin-bottom: 20px;
}
.jobs-count p {
	font-size: 16px;
	font-weight: bold;
}
.jobs-count p span {
	color: #0ECB74;
	font-size: 24px;
	margin: 0 5px;
}
.jobs-list {
	margin: 30px 0;
	display: flex;
	flex-direction: column;
	border-top: 1px solid #ddd;
}
.jobs-list .jobs-list__item {
	padding: 30px 0;
	border-bottom: 1px solid #ddd;
}
.jobs-list__item {
	display: flex;
	flex-direction: column;
}
.jobs-list__item h3 {
	font-size: 20px;
	color: #0ECB74;
	margin-bottom: 15px;
}
.jobs-list__item > p {
	font-size: 15px;
	margin-bottom: 15px;
	line-height: 1.55;
}
.jobs-list__item .jobs-list__detail {
	display: flex;
	justify-content: space-between;
}
.jobs-list__item .jobs-list__detail .jobs-list__img {
	width: 300px;
	aspect-ratio: 300 / 190;
}
.jobs-list__item .jobs-list__detail .jobs-list__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.jobs-list__item .jobs-list__detail .jobs-list__meta {
	width: 100%;
	display: flex;
	flex-direction: column;
}
.jobs-list__item .jobs-list__detail .jobs-list__img + .jobs-list__meta {
	width: calc( 100% - 320px );
}
.jobs-list__item .jobs-list__detail .jobs-list__meta .jobs-list__meta_item {
	display: flex;
	align-items: center;
	position: relative;
	justify-content: space-between;
}
.jobs-list__item .jobs-list__detail .jobs-list__meta .jobs-list__meta_item + .jobs-list__meta_item {
	margin-top: 10px;
}
.jobs-list__item .jobs-list__detail .jobs-list__meta .jobs-list__meta_item i {
	content: '';
	width: 32px;
	height: 32px;
	background: #22B7E8;
	border-radius: 50%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 18px;
}
.jobs-list__item .jobs-list__detail .jobs-list__meta .jobs-list__meta_item span {
	width: calc( 100% - 40px );
	font-size: 14px;
	line-height: 1.44;
}
.jobs-list__item .jobs-list__tags {
	display: flex;
	flex-wrap: wrap;
	margin: 15px 0 0;
	list-style: none;
}
.jobs-list__item .jobs-list__tags li {
	font-size: 13px;
	padding: 6px 12px;
	background: #F4F4F4;
	border-radius: 3px;
	margin-right: 8px;
	margin-bottom: 6px;
	line-height: 1;
}
.jobs-list__item .jobs-list__btns {
	margin: 20px 0 30px;
	display: flex;
	justify-content: center;
}
.jobs-list__item .jobs-list__btns a {
	border: 1px solid #0ECB74;
	border-radius: 8px;
	height: 50px;
	width: 260px;
	font-size: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	font-weight: bold;
}
.jobs-list__item .jobs-list__btns a:hover {
	opacity: .8;
}
.jobs-list__item .jobs-list__btns a:after {
	content: '\edbe';
	font-family: 'icomoon';
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 14px;
	font-weight: normal;
}
.jobs-list__item .jobs-list__btns a + a {
	margin-left: 20px;
}
.jobs-list__item .jobs-list__btns a.detail {
	background: #0ECB74;
	color: #fff;
}
.jobs-list__item .jobs-list__btns a.entry {
	background: #fff;
	color: #0ECB74;
}
.jobs-list__item .jobs-list__dates {
	display: flex;
}
.jobs-list .jobs-list__item .jobs-list__dates {
	justify-content: flex-end;
	list-style: none;
	margin: 0;
}
.jobs-detail .jobs-list__item .jobs-list__dates {
	margin-bottom: 20px;
}
.jobs-list__item .jobs-list__dates li {
	font-size: 13px;
}
.jobs-list__item .jobs-list__dates li + li {
	margin-left: 10px;
}
.jobs-list .page-nav {
	margin-top: 50px;
	display: flex;
	justify-content: center;
}
.jobs-list .page-nav > * + * {
	margin-left: 10px;
}
.jobs-list .page-nav a,
.jobs-list .page-nav span {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: #0ECB74;
	font-weight: bold;
}
.jobs-list .page-nav a,
.jobs-list .page-nav span:not(.extend) {
	border: 1px solid #ccc;
	border-radius: 4px;
	width: 50px;
	height: 50px;
}
.jobs-list .page-nav span.current,
.jobs-list .page-nav a:hover {
	background: #0ECB74;
	border: 1px solid #0ECB74;
	color: #fff;
}
.jobs-detail .jobs-list__item h3 {
	font-size: 30px;
	color: #000;
	line-height: 1.44;
}
.jobs-detail .jobs-list__item > p {
	margin-bottom: 30px;
}
.jobs-detail .design_headline2 {
	text-align: left;
	margin: 50px 0!important;
}
.jobs-detail .jobs-detail__block {
	display: flex;
	justify-content: space-between;
}
.jobs-detail .jobs-detail__block .jobs-detail__img {
	width: 240px;
}
.jobs-detail .jobs-detail__block .jobs-detail__img img {
	width: 100%;
	height: auto;
}
.jobs-detail .jobs-detail__block .jobs-detail__txt {
	width: 100%;
}
.jobs-detail .jobs-detail__block .jobs-detail__img + .jobs-detail__txt {
	width: calc( 100% - 270px );
}
.jobs-detail .jobs-detail__block .jobs-detail__txt p {
	font-size: 15px;
	line-height: 1.55;
}
.jobs-detail .jobs-detail__table {
	background: #F6F6F6;
	padding: 40px;
}
.jobs-detail .jobs-detail__table dl {
	display: flex;
}
.jobs-detail .jobs-detail__table dl dt,
.jobs-detail .jobs-detail__table dl dd {
	font-size: 15px;
	line-height: 1.55;
}
.jobs-detail .jobs-detail__table dl dt {
	color: #0ECB74;
	font-weight: bold;
	width: 150px;
}
.jobs-detail .jobs-detail__table dl dd {
	width: calc( 100% - 150px );
}
.jobs-detail .jobs-detail__table dl + dl {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid #DDD;
}
.jobs-detail .entry-btn {
	margin: 30px 0;
	display: flex;
	justify-content: center;
	margin-bottom: 70px;
}
.jobs-detail .entry-btn a {
	width: 260px;
    height: 70px;
    line-height: 70px;
    font-size: 16px;
    padding: 0 20px;
    position: relative;
    background: #0ECB74;
    border: none;
    border-radius: 8px;
    color: #fff;
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
    text-align: center;
    font-weight: bold;
}


/* sidebar searchform */
.job-search-form dl dt {
	background: #F6F6F6;
	font-size: 16px;
	font-weight: bold;
	padding: 20px;
	border-top: 1px solid #E2E2E2;
	position: relative;
}
.job-search-form dl dd {
	border-top: 1px solid #E2E2E2;
	display: flex;
	flex-direction: column;
	padding-bottom: 20px;
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}
.job-search-form dl.has_child dt:after {
	content: '\edc2';
	font-family: 'icomoon';
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 14px;
	font-weight: normal;
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}
.job-search-form dl.has_child.active dt:after {
	content: '\edba';
}
.job-search-form dl.has_child:not(.active) dd {
	display: none;
}
.job-search-form dl dd .subttl {
	background: #F6F6F6;
	font-size: 14px;
	padding: 20px;
	margin-bottom: 20px;
}
.job-search-form dl dd .input-item {
	padding: 0 20px;
}
.job-search-form dl dd .input-item input[type="checkbox"] {
	display: none;
}
.job-search-form dl dd .input-item label {
	position: relative;
	padding-left: 28px;
	line-height: 20px;
	display: block;
}
.job-search-form dl dd .input-item label:before {
	content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 16px;
    height: 16px;
    border: 1px solid #DDD;
    text-align: center;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    border-radius: 3px;
}
.job-search-form dl dd .input-item input[type=checkbox]:checked + label:after {
    content: "";
    display: block;
    background-color: transparent;
    position: absolute;
    top: 8px;
    left: 3px;
    width: 11px;
    height: 5px;
    margin-top: -4px;
    border-style: solid;
    border-color: #0ECB74;
    border-width: 0 0 2px 2px;
    -o-border-image: none;
    border-image: none;
    -webkit-transform: rotate(-45deg) scale(1);
    -ms-transform: rotate(-45deg) scale(1);
    transform: rotate(-45deg) scale(1);
    -webkit-transition: -webkit-transform 200ms ease-out;
    transition: -webkit-transform 200ms ease-out;
    -o-transition: transform 200ms ease-out;
    transition: transform 200ms ease-out;
    transition: transform 200ms ease-out, -webkit-transform 200ms ease-out;
}
.job-search-form dl dd .input-item:first-child {
	margin-top: 20px;
}
.job-search-form dl dd .input-item + .input-item {
	margin-top: 10px;
}
.job-search-form dl dd .input-item + .subttl {
	margin-top: 20px;
}
.job-search-form dl dd input[type="text"] {
	appearance: none;
	font-size: 15px;
	padding: 5px 10px;
	line-height: 34px;
	border: 1px solid #CCC;
	border-radius: 5px;
	width: 100%;
}
.job-search-form .search-submit {
	padding: 10px 20px;
}
.job-search-form input[type="submit"] {
    width: 100%;
    height: 70px;
    line-height: 70px;
    font-size: 16px;
    padding: 0 20px;
    position: relative;
    background: #0ECB74;
    border: none;
    color: #fff;
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}

/* related jobs */
.related_jobs {
	background: #F6F6F6;
	padding: 50px 0;
}
.related_jobs .inner {
	width: 100%;
	max-width: 1320px;
	margin: 0 auto;
}
.jobs-grid {
	margin-left: 0!important;
	margin-top: 50px;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 20px;
	padding: 0 20px;
}
.jobs-grid li {
	width: 100%;
	background: #fff;
    transition: all .3s ease-in-out;
    list-style: none;
}
.jobs-grid li a {
	display: block;
}
.jobs-grid li:hover {
    box-shadow: 1px 1px 12px rgba(0,0,0,.4);
}
.jobs-grid li a .jobs-grid__img {
	width: 100%;
	aspect-ratio: 2 / 1;
	position: relative;
}
.jobs-grid li a .jobs-grid__img span {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 80px;
	color: #fff;
	background: #22B7E8;
	line-height: 24px;
	text-align: center;
	font-size: 12px;
}
.jobs-grid li a .jobs-grid__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.jobs-grid li a .jobs-grid__txt {
	padding: 15px;
}
.jobs-grid li a .jobs-grid__txt h4 {
	font-size: 15px;
	line-height: 1.55;
	width: 100%;
	overflow: hidden;
	display: -webkit-box;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	min-height: 46.5px;
	margin-bottom: 10px;
}
.jobs-grid li a .jobs-grid__txt p {
	font-size: 14px;
	line-height: 1.44;
	width: 100%;
	overflow: hidden;
	display: -webkit-box;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	min-height: 40.32px;
	margin-bottom: 10px;
}
.jobs-grid li a .jobs-grid__txt .jobs-grid__meta {
	width: 100%;
	display: flex;
	flex-direction: column;
}
.jobs-grid li a .jobs-grid__txt .jobs-grid__meta .jobs-grid__meta_item {
	display: flex;
	align-items: center;
	position: relative;
	justify-content: space-between;
}
.jobs-grid li a .jobs-grid__txt .jobs-grid__meta .jobs-grid__meta_item + .jobs-grid__meta_item {
	margin-top: 10px;
}
.jobs-grid li a .jobs-grid__txt .jobs-grid__meta .jobs-grid__meta_item i {
	content: '';
	width: 32px;
	height: 32px;
	background: #22B7E8;
	border-radius: 50%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 18px;
}
.jobs-grid li a .jobs-grid__txt .jobs-grid__meta .jobs-grid__meta_item span {
	width: calc( 100% - 40px );
	font-size: 14px;
	line-height: 1.44;
}

/* 記事用追加パーツ */
.post_content .dl_list dl {
	margin-bottom: 0;
}
.dl_list {
	display: flex;
	flex-direction: column;
	margin-bottom: 50px;
}
.dl_list dl {
	display: flex;
	padding: 30px;
	border-bottom: 1px solid #ccc;
}
/*
.dl_list dl:first-child {
	border-top: 1px solid #ccc;
}
*/
.dl_list dl dt {
	font-weight: bold;
}
.dl_list dl.right dd {
	text-align: right;
}
.post_content .dl_list dl dd {
	margin-bottom: 0;
}

.table_wrap table {
	width: 100%;
	table-layout: fixed;
}
.table_wrap table th,
.table_wrap table td {
	border: 1px solid #ccc;
	padding: 10px 20px;
	line-height: 1.44
}
.table_wrap table th {
	background: #f1f1f1;
}

/* Form Style */
input, button, textarea, select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.contact-form .contact-form__inner {
	display: flex;
	flex-direction: column;
}
.contact-form .p-country-name {
	display: none;
}
.contact-form .contact-form__item:not(.split) dl + dl {
	margin-top: 20px;
}
.contact-form dl dt,
.contact-form p.ttl {
	font-weight: bold;
	margin-bottom: 10px;
    display: flex;
    align-items: center;
}
.mw_wp_form_input .contact-form dl dt.require:after,
.mw_wp_form_input .contact-form p.ttl.require:after {
	content: '必須';
	color: #fff;
	font-size: 12px;
	display: inline-block;
	width: 40px;
	text-align: center;
	background: #FF7F00;
	margin-left: 10px;
	line-height: 1.66;
}
.contact-form dl dd {
	margin-bottom: 0;
}
.contact-form .contact-form__item.split {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}
.contact-form input[type="text"],
.contact-form input[type="url"],
.contact-form input[type="email"] {
    width: 100%;
    padding: 15px 24px;
    font-size: 15px;
    line-height: 1.6;
    letter-spacing: .05rem;
    border: 1px solid #DDD;
    border-radius: 4px;
}
.contact-form input[name="zip[data][0]"],
.contact-form input[name="zip[data][1]"] {
	width: auto;
}
.contact-form textarea {
    width: 100%;
    padding: 15px 24px;
    font-size: 15px;
    line-height: 1.6;
    letter-spacing: .05rem;
    border: 1px solid #DDD;
    border-radius: 4px;
}
.contact-form .checkbox-wrap {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 20px;
}
.contact-form .radio input[type="radio"] {
	position: absolute;
	opacity: 0;
}
.contact-form .radio input[type="radio"] + label {
	display: flex;
	align-items: center;
	font-size: 14px;
}
.contact-form .radio input[type="radio"] + label:before {
	content: '';
	background: #fff;
	border-radius: 100%;
	border: 1px solid #DDD;
	display: inline-block;
	width: 1.4em;
	height: 1.4em;
	margin-top: -1px;
	position: relative;
	margin-right: 10px;
	vertical-align: top;
	cursor: pointer;
	text-align: center;
	transition: all 250ms ease;
}
.contact-form .radio input[type="radio"]:checked + label:before {
  background-color: #FF6826;
  box-shadow: inset 0 0 0 4px #f4f4f4;
}
.contact-form .radio input[type="radio"]:focus + label:before {
  outline: none;
  border-color: #FF6826;
}
.contact-form .radio input[type="radio"]:disabled + label:before {
  box-shadow: inset 0 0 0 4px #f4f4f4;
  border-color: #013f7b;
  background: #013f7b;
}
.contact-form .radio input[type="radio"] + label:empty:before {
  margin-right: 0;
}
.contact-form .checkbox input[type="checkbox"] {
	display: none;
}
.contact-form .checkbox label {
	position: relative;
	padding-left: 28px;
	line-height: 20px;
	display: block;
}
.contact-form .checkbox label:before {
	content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 16px;
    height: 16px;
    border: 1px solid #DDD;
    text-align: center;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    border-radius: 3px;
}
.contact-form .checkbox input[type=checkbox]:checked + label:after {
    content: "";
    display: block;
    background-color: transparent;
    position: absolute;
    top: 8px;
    left: 3px;
    width: 11px;
    height: 5px;
    margin-top: -4px;
    border-style: solid;
    border-color: #FF6826;
    border-width: 0 0 2px 2px;
    -o-border-image: none;
    border-image: none;
    -webkit-transform: rotate(-45deg) scale(1);
    -ms-transform: rotate(-45deg) scale(1);
    transform: rotate(-45deg) scale(1);
    -webkit-transition: -webkit-transform 200ms ease-out;
    transition: -webkit-transform 200ms ease-out;
    -o-transition: transform 200ms ease-out;
    transition: transform 200ms ease-out;
    transition: transform 200ms ease-out, -webkit-transform 200ms ease-out;
}
.contact-form .select-wrap {
	position: relative;
	width: 100%;	
	max-width: 100%;
}
.contact-form select{
    outline:none;
    text-indent: 0.01px;
    text-overflow: '';
    background: none transparent;
    vertical-align: middle;
    font-size: inherit;
    color: inherit;
    font-size: 14px;
    line-height: 1.6;
    width: 100%;
    padding: 15px 24px;
    border: 1px solid #DDD;
    background-color: #fff;
    border-radius: 4px;
}
.contact-form select option{
	background-color: #fff;
	color: #333;
}
.contact-form select::-ms-expand {
	display: none;
}
.contact-form select:-moz-focusring { 
	color: transparent; 
	text-shadow: 0 0 0 #828c9a;
}
.contact-form .select-wrap:before {
	position: absolute;
    top: 41%;
    right: 25px;
    width: 8px;
    height: 8px;
    border-top: 1px solid transparent;
    border-right: 2px solid #060606;
    border-bottom: 2px solid #060606;
    border-left: 1px solid transparent;
    content: '';
    -webkit-transform: rotateZ(45deg) translateY(-50%);
    -ms-transform: rotate(45deg) translateY(-50%);
    transform: rotateZ(45deg) translateY(-50%);
    -webkit-transition: .3s ease;
    -moz-transition: .3s ease;
    -ms-transition: .3s ease;
    -o-transition: .3s ease;
    transition: .3s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    pointer-events: none;
}
/* 個人情報保護方針への同意 */
.contact-form .txtWrap {
    border: 1px solid #ddd;
    font-size: 13px;
    line-height: 1.44;
    overflow-y: scroll;
    padding: 20px;
    height: 270px;
}
.txtWrap > * + * {
	margin-top: 1em!important;
	margin-bottom: 0;
}
.txtWrap h3 {
    font-size: 15px;
}
.txtWrap > * + h3 {
	margin-top: 40px!important;
	padding-top: 40px;
	border-top: 1px solid #ddd;
}
.txtWrap h4 {
    font-size: 13px;
}
.txtWrap p {
	line-height: 1.44;
}
.txtWrap ul {
	margin: 0;
	list-style: none;
}
.txtWrap ul li {
    text-indent: -1em;
    padding-left: 1em;
    line-height: 1.44;
}
.txtWrap ul li:before {
    content: '・';
}
.contact-form .contact-item__privacy .checkbox-wrap {
	display: flex;
	justify-content: center;
	margin-top: 20px;
}
.contact-form .submit-btn {
	display: flex;
	justify-content: center;
	margin: 50px auto;	
}
.contact-form .submit-btn input {
    border: 1px solid #0ECB74;
    background: #0ECB74;
    color: #fff;
    border-radius: 8px;
    height: 50px;
    width: 260px;
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    font-weight: bold;
}

.map iframe {
	width: 100%;
}

.img_txt {
	display: flex;
	justify-content: space-between;
}
.img_txt figure {
	width: 30%;
}
.img_txt figure figcaption {
	text-align: center;
	margin-top: 10px;
}
.img_txt p {
	width: calc( 70% - 40px );
	line-height: 1.66;
}
.img_txt.left {
	flex-direction: row-reverse;
}

.img_list {
	display: flex;
	flex-direction: column;
}
.img_list .img_list__item + .img_list__item {
	margin-top: 40px;
}
.img_list .img_list__inner {
	display: flex;
	justify-content: space-between;
}
.img_list .img_list__inner .img_list__img {
	width: 30%;
}
.img_list .img_list__inner figure {
	aspect-ratio: 4 / 3;
}
.img_list .img_list__inner figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.img_list .img_list__inner p {
	width: calc( 70% - 40px );
	line-height: 1.66;
}

.row_button {
	padding: 40px 40px;
	margin-bottom: 50px;
}
.row_button h3 {
	text-align: center;
	margin-bottom: 30px;
}
.row_button .row_button__inner {
	display: flex;
	justify-content: center;
}
.row_button .row_button__inner a {
    min-width: 260px;
    height: 70px;
    line-height: 70px;
    font-size: 16px;
    padding: 0 20px;
    position: relative;
    overflow: hidden;
    z-index: 3;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
    color: #fff;
    text-align: center;
}
.row_button .row_button__inner a:hover {
    color: #fff;
    opacity: 0.8;
}
.row_button .row_button__inner a + a {
	margin-left: 40px;
}

.icon_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-bottom: 50px;
}
.icon_list .icon_list__item {
	width: calc( calc( 100% - 80px ) / 3 );
	display: flex;
	flex-direction: column;
	align-items: center;    
	padding: 20px;
    background: #F6F6F6;
    border-radius: 12px;
    margin-left: 40px;
    margin-bottom: 40px;
    box-sizing: border-box;
}
.icon_list .icon_list__item:nth-child(3n+1) {
	margin-left: 0;
}
.icon_list .icon_list__item h3 {
	font-size: 18px;
	line-height: 1.66;
	margin-bottom: 20px;
}
.icon_list .icon_list__item figure {
	text-align: center;
	padding: 20px 0;
	margin-bottom: 20px;
    background: #fff;
}
.icon_list .icon_list__item figure img {
	max-width: 50%;
	height: auto;
}
.icon_list .icon_list__item p {
	font-size: 14px;
	line-height: 1.44;
}

/* 2025.01.16追加 */
.rec_list {
	display: flex;
	flex-direction: column;
	margin-bottom: 40px;
}
.rec_list .rec_list__item {
	display: flex;
	justify-content: space-between;
}
.rec_list .rec_list__item + .rec_list__item {
	margin-top: 40px;
	padding-top: 40px;
	border-top: 1px solid #ddd;
}
.rec_list .rec_list__item .rec_list__img {
	width: 30%;
}
.rec_list .rec_list__item .rec_list__img figure {
	width: 100%;
	aspect-ratio: 1 / 1;
}
.rec_list .rec_list__item .rec_list__img figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.rec_list .rec_list__item .rec_list__info {
	width: 100%;
}
.rec_list .rec_list__item .rec_list__img + .rec_list__info {
	width: calc( 70% - 40px );
}
.post_content .rec_list .rec_list__item .rec_list__info h3 {
	font-size: 20px;
}
.rec_list .rec_list__item .rec_list__table {
	margin-bottom: 20px;
}
.post_content .rec_list .rec_list__item .rec_list__table dl {
	display: flex;
	border-top: 1px solid #ddd;
	padding: 10px 0;
	margin-bottom: 0;
}
.rec_list .rec_list__item .rec_list__table dl:last-child {
	border-bottom: 1px solid #ddd;	
}
.rec_list .rec_list__item .rec_list__table dl dt {
	width: 120px;
	font-size: 15px;
}
.post_content .rec_list .rec_list__item .rec_list__table dl dd {
	width: calc( 100% - 140px );
	margin-left: 20px;
	margin-bottom: 0;
	font-size: 15px;
}
.post_content .rec_list .rec_list__item .rec_list__txt p {
	font-size: 15px;
	line-height: 1.44;
}
.rec_list .rec_list__item .rec_list__btn {
	margin-top: 20px;
}
.rec_list .rec_list__item .rec_list__btn a {
	border: 1px solid #0ECB74;
	border-radius: 8px;
	height: 50px;
	width: 260px;
	font-size: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	font-weight: bold;	
	background: #0ECB74;
	color: #fff;
}
.rec_list .rec_list__item .rec_list__btn a:after {
	content: '\edbe';
	font-family: 'icomoon';
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 14px;
	font-weight: normal;
}

/* additional Layouts */
.bg-gray #container {
	background: rgba(100, 180, 180, 0.05);
}
.design_headline3 {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin-bottom: 50px!important;
}
.design_headline3 .en {
	font-size: 60px;
	font-weight: 300;
	text-align: center;
}
.design_headline3 .ja {
	font-size: 20px;
	margin-top: 0;
	font-weight: 600;
}
.philosophy {
	display: flex;
	justify-content: space-between;
	margin-bottom: 80px;
}
.philosophy .philosophy__img {
	width: 48%;
}
.philosophy .philosophy__img img {
	width: 100%;
	height: auto;
}
.philosophy .philosophy__text {
	width: 48%;
	position: relative;
}
.philosophy .philosophy__text h3 {
	display: flex;
	flex-direction: column;
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid #777;
}
.philosophy .philosophy__text h3 .en {
	color: #0ECB74;
}
.philosophy .philosophy__text .philosophy__box {
	background: #fafafa;
	padding: 20px 30px;
	border-radius: 12px;
}
.philosophy .philosophy__text .philosophy__box h4 {
	font-size: 16px;
}
.philosophy .philosophy__text .philosophy__box ul {
	list-style: none;
	display: flex;
	flex-direction: column;
	margin: 0;
}
.philosophy .philosophy__text .philosophy__box ul li {
	text-indent: -1em;
	padding-left: 1em;
}
.philosophy .philosophy__text .philosophy__box ul li:before {
	content: '・';
}
.business-list {
	display: flex;
	justify-content: space-between;
	margin-bottom: 50px;
}
.business-list__left {
	width: 44%;
	display: grid;
	grid-template-rows: 1fr 1fr 1fr;
}
.business-list__left .left-content {
	display: flex;
	align-items: center;
	border-top: 1px solid #707070;
	padding: 0 20px;
}
.business-list__left .left-content:last-child {
	border-bottom: 1px solid #707070;;
}
.business-list__left .left-content a {
	font-size: 20px;
	font-weight: bold;
	display: flex;
	justify-content: space-between;
	width: 100%;
	height: 100%;
	align-items: center;
	line-height: 1.44;
	color: inherit;
}
.business-list__left .left-content a i {
	width: 40px;
	height: 40px;
	border: 1px solid #0ECB74;
	border-radius: 50%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	font-size: 16px;
	color: #0ECB74;  
	transition : 0.3s;
}
.business-list__left .left-content a:hover {
	color: #0ECB74;
}
.business-list__left .left-content a:hover i {
	color: #fff;
	background: #0ECB74;
}
.business-list__right {
  width: 54%;
  position: relative;      /* スタック用 */
  aspect-ratio: 4 / 3;    /* 好みの比率に。なければ後述のfallback使う */
  /* min-height: 360px;  固定高にしたい場合はこちらでもOK */
}
.business-list__right .right-content {
  position: absolute;  /* 全スライドを同じ枠に重ねる */
  inset: 0;            /* top/right/bottom/left:0 のショートハンド */
  border-radius: 12px;
  overflow: hidden;
  opacity: 0;          /* 初期は不可視 */
  visibility: hidden;
}
.business-list__right .right-content:before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background: rgba( 0,0,0,0.1 );
	z-index: 1;
}
.business-list__right .right-content.active {
  opacity: 1;
  visibility: visible;
}
.business-list__right .right-content img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.business-list__right .right-content > span {
	color: #fff;
	font-size: 42px;
	position: absolute;
	left: 30px;
	top: 20px;
	font-weight: 100;
	z-index: 2;
}
.business-list__right .right-content p {
	position: absolute;
	left: 30px;
	bottom: 20px;
	color: #fff;
	z-index: 2;
}
.business-list__right .right-content a {
	display: none;
}
.service-list {
	display: grid;
	gap: 40px;
}
.service-list .service-list__item {
	padding: 40px;
	border-radius: 12px;
	background: #fff;
}
.service-list .service-list__item .service-list__img {
	border-radius: 12px;
	overflow: hidden;
	position: relative;
}
.service-list .service-list__item .service-list__img figure {
	aspect-ratio: 16 / 6;
}
.service-list .service-list__item .service-list__img figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.service-list .service-list__item .service-list__img .num {
	color: #fff;
	font-size: 42px;
	position: absolute;
	left: 30px;
	top: 20px;
	font-weight: 100;
	z-index: 2;
}
.post_content .service-list__inner ul {
	list-style: none;
	margin: 0;
}
.post_content .service-list__inner ul li {
	text-indent: -1em;
	padding-left: 1em;
}
.post_content .service-list__inner ul li:before {
	content:'・';
}
.company {
	margin-top: 80px;	
	display: flex;
	justify-content: space-between;
}
.company .company-left {
	width: 200px;	
}
.company .company-right {
	width: calc( 100% - 240px );
}
.company-right__item {
	padding: 40px;
	background: #fff;
	border-radius: 24px;
}
.company-right__item + .company-right__item {
	margin-top: 40px;
}
.post_content .company-right__item h2 {
	text-align: center;
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid #f1f1f1;
}
.post_content .company-right__item .sign {
	text-align: right;
}
.post_content .company-right__item.philos h3 {
	color: #0ECB74;
}
.post_content .company-right__item.mind ul {
	list-style: none;
	margin: 0;
	display: flex;
	flex-direction: column;
}
.post_content .company-right__item.mind ul li {
	padding: 10px 20px;
	border-bottom: 1px solid #f1f1f1;
	display: flex;
}
.post_content .company-right__item.mind ul li span {
	width: 40px;
}
.post_content .company-right__item.mind ul li span + span {
	width: calc( 100% - 40px );
}
.company-right__item.table dl,
.company-right__item.eligible dl,
.company-right__item.access dl {
	display: flex;
	border-bottom: 1px solid #f1f1f1;
}
.company-right__item.table dl dt,
.company-right__item.eligible dl dt,
.company-right__item.access dl dt {
	width: 180px;
}
.company-right__item.table dl dd,
.company-right__item.eligible dl dd,
.company-right__item.access dl dd {
	width: calc( 100% - 180px );
}
.company-right__item.eligible dl dd {
	display: flex;
	justify-content: space-between;
}
.company .company-left nav ul {
	list-style: none;
	margin: 0;
	display: flex;
	flex-direction: column;
}
.company .company-left nav ul li a {
	position: relative;
	padding-left: 28px;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.05em;
	color: #000000;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.company .company-left nav ul li a span {
	position: absolute;
	left: 9px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #000000;
}
.company .company-left nav ul li a span {
	position: absolute;
	left: 9px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #000000;
}
.company .company-left nav ul li a.active span {
	background: #0ECB74;
}
.company .company-left nav ul li a span:after {
	content: '';
	position: absolute;
	display: block;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 20px;
	height: 20px;
	border-radius: 50%;
	border: 1px solid #0ECB74;
	opacity: 0;
}
.company .company-left nav ul li a.active span:after {
	opacity: 1;
}

.top-company {
	padding: 80px 0;
	position: relative;
	background-size: cover;
	background-position: center center;
}
.top-company:after {
	content:'';
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	background: rgba( 0,0,0,0.4 );
	z-index: 1;
}
.top-company .inner {
	width: 100%;
	max-width: 1320px;
	margin: 0 auto;
	z-index: 2;
	position: relative;
}
.top-company .cb_headline .common_headline,
.top-company .cb_headline .sub_headline {
	color: #fff;
}
.top-company .top-copany__txt {
	margin: 40px auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: #fff;
	max-width: 800px;
}
.top-company .top-copany__txt dt {
	font-size: 24px;
	margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
	.top-company {
		padding: 40px 0;
	}
	.top-company .top-copany__txt {
		margin: 20px auto;
		padding: 0 20px;
		max-width: 100%;
	}
	.top-company .top-copany__txt dt {
		font-size: 18px;
		margin-bottom: 15px;
	}
	.design_headline3 {
		margin-bottom: 25px!important;
	}
	.design_headline3 .en {
		font-size: 36px;
	}
	.design_headline3 .ja {
		font-size: 18px;
	}
	.philosophy {
		flex-direction: column;
	}
	.philosophy .philosophy__img {
		width: 100%;
		margin-bottom: 20px;
		display: flex;
		justify-content: center;
	}
	.philosophy .philosophy__img img {
		max-width: 80%;
	}
	.philosophy .philosophy__text {
		width: 100%;
	}
	.service-list {
		gap: 20px;
		margin-bottom: 50px;
	}
	.service-list .service-list__item {
		padding: 20px;
	}
	.business-list__left {
		display: none;
	}
	.business-list__right {
		display: block;
		width: 100%;
	}
	.business-list__right .right-content {
		position: relative;
		opacity: 1;
		visibility: inherit;
		overflow: inherit;
	}
	.business-list__right .right-content + .right-content {
		margin-top: 40px;
	}
	.business-list__right .right-content:before {
		height: auto;
		aspect-ratio: 16 / 9;
		border-radius: 12px;
	}
	.business-list__right .right-content img {
		border-radius: 12px;
		aspect-ratio: 16 / 9;
		object-fit: cover;
	}
	.business-list__right .right-content p {
		top: calc(calc(100vw - 40px) * 0.4);
		bottom: auto;
		font-size: 3.4vw;
		margin: 0;
	}
	.post_content .business-list__right .right-content a {
		display: flex;
		padding: 30px 0;
		font-size: 24px;
		font-weight: 600;
		border-bottom: 1px solid #707070;
		color: inherit;
		justify-content: space-between;
		align-items: center;
	}
	.business-list__right .right-content a i {
		width: 40px;
		height: 40px;
		border: 1px solid #0ECB74;
		border-radius: 50%;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		font-size: 16px;
		color: #0ECB74;
		transition: 0.3s;
	}
	.business-list__right .right-content a span {
		position: relative;
	}
	.company {
		margin-top: 40px;
	}
	.company .company-left {
		display: none;	
	}
	.company .company-right {
		width: 100%;
	}
	.company-right__item {
		padding: 20px;
	}
	.company-right__item.table dl,
	.company-right__item.eligible dl,
	.company-right__item.access dl {
		flex-direction: column;
	}
	.company-right__item.table dl dt,
	.company-right__item.eligible dl dt,
	.company-right__item.access dl dt {
		width: 100%;
	}
	.company-right__item.table dl dd,
	.company-right__item.eligible dl dd,
	.company-right__item.access dl dd {
		width: 100%;
	}
	.post_content .company-right__item dl {
		margin-bottom: 15px;
	}
	.post_content .company-right__item h2 {
		padding-bottom: 15px;
		margin-bottom: 15px;
	}
	.company-right__item + .company-right__item {
		margin-top: 30px;
	}
	.post_content .company-right__item.mind ul li {
		padding: 10px 0;
	}
	.jobs-grid {
		grid-template-columns: 1fr 1fr;
		padding: 0 20px;
	}
	.jobs-list__item .jobs-list__detail .jobs-list__img {
    	width: 48%;
	}
	.jobs-list__item .jobs-list__detail .jobs-list__img + .jobs-list__meta {
		width: calc( 52% - 20px );
	}
	.jobs-list__item .jobs-list__detail .jobs-list__meta .jobs-list__meta_item {
		align-items: flex-start;
	}
	.contact-form .contact-form__item.split {
		grid-template-columns: 1fr;
	}
	.row_button {
		padding: 20px;
	}
	.row_button h3 {
		margin-bottom: 20px!important;
	}
	.row_button .row_button__inner a {
		width: calc( calc( 100% - 20px ) / 2 );	
		min-width: inherit;	
		height: 50px;
	    line-height: 50px;
	    padding: 0 10px;
	}
	.row_button .row_button__inner a + a {
		margin-left: 20px;
	}
	.icon_list {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 30px;	
	}
	.icon_list .icon_list__item {
		margin: 0;
		width: 100%;
	}
	.rec_list .rec_list__item .rec_list__img + .rec_list__info {
		width: calc( 70% - 20px );
	}
}
@media screen and (max-width: 640px) {
	.img_txt {
		flex-direction: column;
	}
	.img_txt figure {
		width: 100%;
		text-align: center;
	}
	.img_txt figure img {
		max-width: 80%;
		height: auto;
	}
	.img_txt p {
		width: 100%;
	}
	.img_txt.left {
		flex-direction: column;
	}
	.img_list .img_list__item + .img_list__item {
		margin-top: 20px;
	}
	.img_list .img_list__inner figure {
		aspect-ratio: 1;
	}
	.img_list .img_list__inner p {
		width: calc( 70% - 20px );
	}
	.row_button .row_button__inner {
		flex-direction: column;
	}
	.row_button .row_button__inner a {
		width: 100%;
	}
	.row_button .row_button__inner a + a {
		margin-top: 20px;
		margin-left: 0;
	}
	.jobs-detail .jobs-detail__block {
		flex-direction: column;
	}
	.jobs-detail .jobs-detail__block .jobs-detail__img {
		width: 100%;
	}
	.jobs-detail .jobs-detail__block .jobs-detail__img + .jobs-detail__txt {
		width: 100%;
		margin-top: 20px;
	}
}
@media screen and (max-width: 480px) {
	.dl_list dl {
		padding: 10px;
		flex-direction: column;
	}
	.dl_list dl dt {
		width: 100%!important;
	}
	.dl_list dl dd {
		width: 100%!important;
	}
	.jobs-grid {
		grid-template-columns: 1fr;
	}
	.jobs-list__item .jobs-list__detail {
		flex-direction: column;
	}
	.jobs-list__item .jobs-list__detail .jobs-list__img {
		width: 100%;
	}
	.jobs-list__item .jobs-list__detail .jobs-list__img + .jobs-list__meta {
		width: 100%;
		margin-top: 20px;
		margin-left: 0;
	}
	.jobs-list .jobs-list__item .jobs-list__dates {
		flex-direction: column;
		align-items: flex-end;
	}
	.jobs-list__item .jobs-list__btns a {
		font-size: 14px;
	}
	.jobs-list__item .jobs-list__btns a + a {
		margin-left: 10px;
	}
	.jobs-list__item .jobs-list__dates li + li {
		margin-left: 0;
		margin-top: 10px;
	}
	.jobs-detail .jobs-detail__table {
		padding: 20px;
	}	
	.jobs-detail .jobs-detail__table dl {
		flex-direction: column;
	}
	.jobs-detail .jobs-detail__table dl + dl {
		margin-top: 10px;
		padding-top: 10px;
	}
	.jobs-detail .jobs-detail__table dl dt,
	.jobs-detail .jobs-detail__table dl dd {
		width: 100%;
	}
	.icon_list {
		grid-template-columns: 1fr;
		gap: 20px;	
	}
	.icon_list .icon_list__item figure img {
		max-width: 120px;
	}
	.post_content .rec_list .rec_list__item .rec_list__info h3 {
		font-size: 16px;
	}
	.rec_list .rec_list__item .rec_list__table {
		margin-bottom: 10px;
	}
	.post_content .rec_list .rec_list__item .rec_list__table dl {
		flex-direction: column;
		padding: 5px 0;
	}
	.rec_list .rec_list__item .rec_list__table dl dt {
		width: 100%;
		font-size: 14px;
	}
	.post_content .rec_list .rec_list__item .rec_list__table dl dd {
		width: 100%;
		margin-left: 0;
		font-size: 14px;
	}
	.post_content .rec_list .rec_list__item .rec_list__txt p {
		font-size: 14px;
	}
	.rec_list .rec_list__item .rec_list__btn a {
		width: 200px;
		font-size: 15px;
	}
}
@media screen and (max-width: 374px) {
	.rec_list .rec_list__item {
		flex-direction: column;
	}
	.rec_list .rec_list__item + .rec_list__item {
		margin-top: 20px;
		padding-top: 20px;
	}
	.rec_list .rec_list__item .rec_list__img {
		width: 100%;
		margin-bottom: 10px;
	}
	.rec_list .rec_list__item .rec_list__img figure {
		aspect-ratio: 2 / 1;
	}
	.rec_list .rec_list__item .rec_list__img + .rec_list__info {
		width: 100%;
	}
}
@media screen and (max-width: 320px) {
	.jobs-list__item .jobs-list__btns a {
		font-size: 12px;
	}
}

.mw_wp_form_input .conf-only {display: none;}
.mw_wp_form_confirm .input-only {display: none;}