@charset "UTF-8";

/*----------------------------------------
	heading
-----------------------------------------*/
.tit-style1 {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	min-height: 43px;
	margin-top: 60px;
	padding: 2px 10px 0;
	color: #fff;
	font-size: 24px;
	background: linear-gradient(180deg, #e60012 0%, #e60012 50%, #c80010 50%, #c80010 100%);
}
section .tit-style1:first-of-type, .wp-block-group .tit-style1:first-of-type {
	margin-top: 0;
}
.tit-style2 {
	color: #e60012;
	font-size: 24px;
    margin-top: 100px;
	padding-bottom: 10px;
	border-bottom: #e60012 solid 1px;
}
.tit-style3 {
	position: relative;
	margin-top: 100px;
	padding: 0 0 10px 25px;
	font-size: 20px;
	border-bottom: #e60012 solid 2px;
}
.tit-style3::after {
	content: "";
	display: block;
	position: absolute;
	top: 3px;
	left: 0;
	width: 5px;
	height: 1em;
	background-color: #e30000;
}
.tit-style4, .tit-style5 {
	color: #e60012;
	font-size: 20px;
    margin-top: 60px;
	padding-bottom: 15px;
	border-bottom: #858585 dotted 2px;
}
.tit-style5 {
	color: #000;
}
.tit-style5 + p {
	margin-top: 20px;
}
section .tit-style1:first-of-type, .wp-block-group .tit-style1:first-of-type,
.wp-block-group .tit-style2:first-of-type, .wp-block-group .tit-style3:first-of-type {
	margin-top: 0;
}
@media only screen and (max-width: 1024px){
    .tit-style2 {
        margin-top: 75px;
    }
}
@media only screen and (max-width: 767px){
    .tit-style1 {
        min-height: 29px;
        margin-top: 30px;
        padding: 0 5px 3px;
        font-size: 16px;
    }
    .tit-style2 {
        font-size: 20px;
        margin-top: 50px;
        padding-bottom: 5px;
    }
	.tit-style3 {
		font-size: 16px;
		margin-top: 50px;
		padding: 0 0 5px 13px;
		border-bottom: #e60012 solid 1px;
	}
	.tit-style3::after {
		top: 4px;
		left: 0;
		width: 3px;
	}
	.tit-style4, .tit-style5 {
		font-size: 16px;
		margin-top: 30px;
		padding-bottom: 10px;
	}
	.tit-style5 + p {
		margin-top: 10px;
	}
}

/*----------------------------------------
	.tile1
-----------------------------------------*/
.tile1 {
	min-height: 670px;
	margin-top: 70px;
	padding: 50px 0 100px;
	background: url(../images/bg_tile_01.png) right bottom / contain no-repeat;
}
@media screen and (max-width: 1100px) {
	.tile1 {
		min-height: unset;
	}
}
@media screen and (max-width: 1024px) {
	.tile1 {
		padding: 25px 0 50px;
	}
}
@media screen and (max-width: 767px) {
	.tile1 {
        margin-top: 35px;
	}
}

/*----------------------------------------
	.tile2
-----------------------------------------*/
.tile2 {
	background: url(../images/bg_tile_02.png);
}
.tile1 + .tile2 {
	padding-top: 100px;
}
.tile2.pb0 {
	padding-bottom: 0;
}
.tile2.ptb0 {
	padding-top: 0;
    padding-bottom: 0;
}
.tile2.mtb100 {
	margin-top: 100px;
}
@media only screen and (max-width: 1100px){
	.tile1 + .tile2 {
		padding-top: 75px;
	}
}
@media only screen and (max-width: 767px){
    .tile2 {
        background-size: 11px;
    }
	.tile1 + .tile2 {
		padding-top: 50px;
	}
	.tile2.mtb100 {
		margin-top: 50px;
	}
}

/*----------------------------------------
	.column-style1
-----------------------------------------*/
.wp-block-columns.column-style1 {
	margin: 60px 0 0 0;
}
.column-style1 figure {
	max-width: 692px;
	margin: 0;
}
@media only screen and (max-width: 1024px){
	.column-style1 figure {
		text-align: center;
	}
}
@media only screen and (max-width: 767px){
    .wp-block-columns.column-style1 {
        margin-top: 30px;
    }
	.column-style1 figure {
		max-width: unset;
		margin: 20px 0 0;
		text-align: center;
	}
}

/*----------------------------------------
	.column-style2
-----------------------------------------*/
.column-style2 {
	margin-top: 50px;
}
.column-style2 .wp-block-image img {
	width: 100%;
}
.column-style2 .wp-block-column figcaption {
	margin: 0;
	padding: 15px 10px;
	color: #fff;
	text-align: center;
}
.column-style2 .wp-block-column:nth-of-type(1) figcaption {
	background-color: #34628b;
}
.column-style2 .wp-block-column:nth-of-type(2) figcaption {
	background-color: #a44805;
}
.column-style2 .wp-block-column:nth-of-type(3) figcaption {
	background-color: #447035;
}
.column-style2 .wp-block-column:nth-of-type(4) figcaption {
	background-color: #7d772d;
}
.column-style2 .wp-block-column figcaption span {
	display: inline-block;
	margin-left: 1em;
}
@media only screen and (max-width: 1100px){
	.column-style2 .wp-block-column figcaption span {
		display: block;
		margin-left: 0;
	}
}
@media only screen and (max-width: 1024px){
	.column-style2 .wp-block-column figcaption {
		padding: 10px 5px;
	}
}
@media only screen and (max-width: 767px){
	.column-style2 {
		margin-top: 25px;
	}
	.column-style2 .wp-block-column figcaption {
		font-size: 14px;
	}
    .column-style2 .wp-block-column figcaption span {
		display: none;
	}
}

/*----------------------------------------
	.column-style3
-----------------------------------------*/
.column-style3.align-c {
	align-items: center;
}
.column-style3 .wp-block-column {
	min-width: unset;
	flex-basis: auto;
	flex-grow: unset;
}
.column-style3.second-fixed .wp-block-column:nth-of-type(1) {
	flex: 1;
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
    /* IE11にのみ適用したいスタイルシート */
	.column-style3.second-fixed .wp-block-column:nth-of-type(1) {
		flex: auto;
	}
}
@media only screen and (max-width: 781px){
	.column-style3 .wp-block-image {
		text-align: center;
	}
}
@media only screen and (max-width: 599px){
	.column-style3 .wp-block-column {
		margin-top: 20px;
	}
	.column-style3 .wp-block-column:first-of-type {
		margin-top: 0;
	}
}

/*----------------------------------------
	.column-style4
-----------------------------------------*/
.wp-block-columns.column-style4 {
	margin: 60px 0 0 0;
}
.wp-block-columns.column-style4 .wp-block-column {
	flex-basis: inherit;
    flex-grow: inherit;
	min-width: auto;
}
.wp-block-columns.column-style4 .wp-block-column img {
	width: auto;
	max-width: none;
	height: auto;
}
@media (min-width: 600px) and (max-width: 781px) {
	.wp-block-columns.column-style4 {
		flex-wrap: nowrap;
	}
	.column-style4 .wp-block-column:not(:only-child) {
		flex-basis: inherit!important;
		flex-grow: inherit;
	}
}
@media only screen and (max-width: 599px){
	.wp-block-columns.column-style4 {
		flex-wrap: wrap;
		margin-top: 30px;
	}
}
@media (min-width: 782px) {
	#jobs .wp-block-columns.column-style4:not(.is-not-stacked-on-mobile)>.wp-block-column {
        flex-basis: inherit;
    }
}

/*----------------------------------------
	.column-style-wrap
-----------------------------------------*/
.column-style-wrap {
	flex-wrap: wrap !important;
	margin-bottom: 0 !important;
}
.column-style-wrap .wp-block-column {
	min-width: unset;
	flex-basis: auto;
    flex-grow: unset;
}
.column-style-wrap.column2 .wp-block-column {
	width: calc((100% - 2em)/2);
}
.column-style-wrap.column2 .wp-block-column:nth-of-type(odd) {
	margin-left: 0;
}
.column-style-wrap.column3 .wp-block-column {
	width: calc((100% - 4em)/3);
}
.column-style-wrap.column3 .wp-block-column:nth-of-type(3n+1) {
	margin-left: 0;
}
.column-style-wrap.column3 .wp-block-image, .column-style-wrap.column4 .wp-block-image {
    margin: 2.5em 0 0;
}
.column-style-wrap.column3 .wp-block-column:nth-of-type(1) .wp-block-image,
.column-style-wrap.column3 .wp-block-column:nth-of-type(2) .wp-block-image,
.column-style-wrap.column3 .wp-block-column:nth-of-type(3) .wp-block-image,
.column-style-wrap.column4 .wp-block-column:nth-of-type(1) .wp-block-image,
.column-style-wrap.column4 .wp-block-column:nth-of-type(2) .wp-block-image,
.column-style-wrap.column4 .wp-block-column:nth-of-type(3) .wp-block-image,
.column-style-wrap.column4 .wp-block-column:nth-of-type(4) .wp-block-image {
    margin-top: 0;
}
.column-style-wrap.column3 .wp-block-image img,
.column-style-wrap.column4 .wp-block-image img {
    max-width: unset;
	width: 100%;
}
.column-style-wrap.column3 .wp-block-image figcaption,
.column-style-wrap.column4 .wp-block-image figcaption {
    margin-bottom: 0;
}
.column-style-wrap + .column-style-wrap{
	margin-top: 40px;
}
.column-style-wrap.column4 .wp-block-column {
	width: calc((100% - 6em)/4);
}
.column-style-wrap.column4 .wp-block-column:nth-of-type(4n+1) {
	margin-left: 0;
}
.column-style-wrap.column4.other {
	margin-top: 140px;
}
.column-style-wrap.column4.other .benefit {
	display: block;
	margin-top: 10px;
	text-align: center;
}
@media (min-width: 600px) and (max-width: 781px) {
	.column-style-wrap.column3 .wp-block-column:not(:only-child),
	.column-style-wrap.column4 .wp-block-column:not(:only-child) {
		flex-basis: auto !important;
		flex-grow: 0;
	}
	.column-style-wrap.column3 .wp-block-column,
	.column-style-wrap.column4 .wp-block-column {
		margin-left: 2em;
	}
}
@media only screen and (max-width: 767px){
	.column-style-wrap.column3 .wp-block-column,
	.column-style-wrap.column4 .wp-block-column {
		width: calc((100% - 2em)/2);
		margin-left: 0;
	}
	.column-style-wrap.column3 .wp-block-column:nth-of-type(even),
	.column-style-wrap.column4 .wp-block-column:nth-of-type(even) {
		margin-left: 2em;
	}
	.column-style-wrap.column3 .wp-block-image,
	.column-style-wrap.column3 .wp-block-column:nth-of-type(3) .wp-block-image,
	.column-style-wrap.column4 .wp-block-image,
	.column-style-wrap.column4 .wp-block-column:nth-of-type(3) .wp-block-image,
	.column-style-wrap.column4 .wp-block-column:nth-of-type(4) .wp-block-image {
		margin-top: 1.25em;
	}
	.column-style-wrap + .column-style-wrap{
		margin-top: 20px;
	}
}
@media only screen and (max-width: 599px){
	.column-style-wrap.column3 .wp-block-column:nth-of-type(even) {
		margin-left: 0;
	}
	.column-style-wrap.column3 .wp-block-column:nth-of-type(2) .wp-block-image,
	.column-style-wrap.column4 .wp-block-column:nth-of-type(2) .wp-block-image {
		margin-top: 20px;
	}
	.column-style-wrap.column4 .wp-block-column {
		flex-basis: calc((100% - 2em)/2) !important;
	}
	.column-style-wrap.column4 .wp-block-column:nth-of-type(2) .wp-block-image {
		margin-top: 0;
	}
	.column-style-wrap.column4.other {
		margin-top: 70px;
	}
	.column-style-wrap.column4.other .benefit {
		margin-top: 5px;
	}
}

/*----------------------------------------
	.column-fig1
-----------------------------------------*/
.column-fig1 figcaption {
	font-size: 18px;
}
.column-fig1 figcaption strong {
	font-size: 20px;
}
@media only screen and (max-width: 599px){
	.column-fig1 {
		display: flex;
		margin-top: 20px;
	}
	.column-style4 .wp-block-column .column-fig1 img {
		max-width: 50%;
	}
	.column-style4 .wp-block-column .column-fig1 figcaption {
		width: calc(50% - 20px);
		margin: 0 0 0 20px;
		font-size: 16px;
	}
	.column-fig1 figcaption strong {
		font-size: 18px;
	}
}

/*----------------------------------------
	.btn-link
-----------------------------------------*/
.btn-link {
    width: 100%;
	margin-top: 10px;
    color: #fff;
}
.btn-link a {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
	height: 100%;
    padding: 17px 46px 17px 15px;
    color: #fff;
    font-size: 14px;
    background-color: #e60012;
}
.btn-link a::before, .btn-link a::after {
	content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    width: 20px;
    height: 2px;
    background-color: #fff;
}
.btn-link a::after {
    right: 14px;
    transform: translateY(-240%) rotate(45deg);
    width: 12px;
}
.btn-link a:hover {
    opacity: 0.7;
}
.btn-link {
    margin-top: 40px;
}
@media only screen and (max-width: 1024px){
	.btn-link a {
		font-size: 12px;
	}
	.btn-link a:hover {
		opacity: 1;
	}
	.btn-link {
		margin-top: 30px;
	}
}
@media only screen and (max-width: 767px){
	.btn-link {
		margin-top: 20px;
	}
	.btn-link a {
		font-size: 10px;
		padding: 10px 23px 10px 7px;
	}
	#home .main-visual .recruit-info dd a::before,
	#home .main-visual .recruit-info dd a::after,
	.btn-link a::before, .btn-link a::after {
		right: 7px;
		width: 10px;
		height: 1px;
	}
	#home .main-visual .recruit-info dd a::after,
	.btn-link a::after {
		right: 6px;
		width: 6px;
	}
	.btn-link {
		margin-top: 30px;
	}
}

/*----------------------------------------
	.calender
-----------------------------------------*/
.calender {
    margin-top: 40px;
}
.calender figure {
	max-width: 419px;
    margin-top: 10px;
	border: #a4a4a4 solid 1px;
}
@media only screen and (max-width: 767px){
    .calender {
        margin-top: 20px;
    }
}
@media only screen and (max-width: 599px){
	.calender .wp-block-column:nth-of-type(2) {
        margin-top: 40px;
    }
	.calender figure {
		text-align: center;
	}
}

/*----------------------------------------
	.table-style1
-----------------------------------------*/
.wp-block-columns.table-style1 {
	margin-bottom: 0;
}
.table-style1 .wp-block-column:not(:first-child) {
    margin-left: 3em;
}
.table-style1 td {
	position: relative;
	padding: 20px 0 22px 15px;
}
.table-style1.vtop td {
	vertical-align: top;
}
.table-style1 td::after {
	content: "";
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	width: calc(100% - 15px);
	height: 2px;
	background-color: #e5e5e5;
}
.table-style1 td:nth-of-type(1) {
	width: 140px;
	padding-right: 15px;
	font-weight: bold;
	background-color: #e5e5e5;
}
.table-style1 td:nth-of-type(1)::after {
	width: 100%;
	background-color: #fff;
}
.table-style1 tr:last-child td:nth-of-type(1)::after,
.table-style1 tr:last-child td:nth-of-type(2)::after {
	content: none;
}
.table-style1.columen1 td:nth-of-type(1) {
	width: 30%;
}
.table-style1.columen1 td:nth-of-type(2) {
	width: 70%;
}
@media all and (-ms-high-contrast: none) {
	.table-style1 td:nth-of-type(1) {
		position: inherit;
		border-bottom: #fff solid 2px;
	}
	.table-style1 td:nth-of-type(2)::after {
		bottom: -4px;
	}
	.table-style1.columen1  td:nth-of-type(2)::after {
		bottom: -2px;
	}
}
@media only screen and (max-width: 1024px){
	.table-style1 .wp-block-column:not(:first-child) {
		margin-left: 2em;
	}
}
@media only screen and (max-width: 767px){
	.wp-block-columns.table-style1 {
		margin-bottom: 0;
	}
	.table-style1 .wp-block-column:not(:first-child) {
		margin-left: 0;
	}
	.table-style1 td {
		padding: 10px 0 11px 7px;
		font-size: 12px;
	}
	.table-style1 td::after {
		width: calc(100% - 10px);
		height: 1px;

	}
	.table-style1 td:nth-of-type(1) {
		width: calc(140px - (140px / 3));
		padding-right: 7px;
	}
	.table-style1 .wp-block-column:nth-of-type(1) tr:last-child td:nth-of-type(2)::after {
		content: "";
	}
}

/*----------------------------------------
	.table-style-company
-----------------------------------------*/
.table-style-company {
	border: none;
}
.table-style-company th, .table-style-company td {
	padding: 5px 0;
	vertical-align: top;
}
.table-style-company th:first-of-type, .table-style-company td:first-of-type {
	width: 120px;
}
.table-style-company a {
	color: #0070c7;
	text-decoration: underline;
}
@media only screen and (max-width: 767px){
	.table-style-company {
		font-size: 14px;
	}
	.table-style-company th:first-of-type, .table-style-company td:first-of-type {
		width: 80px;
	}
}
/*----------------------------------------
	.btn-style1
-----------------------------------------*/
.btn-style1 {
	position: relative;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	min-width: 192px;
	height: 49px;
	padding: 9px 35px 11px 10px;
	color: #fff;
	font-size: 14px;
	background-color: #e60012;
}
.btn-style1::before, .btn-style1::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
	width: 20px;
	height: 2px;
	background-color: #fff;
}
.btn-style1::after {
    right: 14px;
    transform: translateY(-240%) rotate(45deg);
    width: 12px;
}
.btn-style1:hover {
	opacity: 0.7;
}
@media only screen and (max-width: 767px){
	.btn-style1 {
		min-width: calc(192px - (192px / 3));
		height: calc(49px - (49px / 3));
		padding: 4px 17px 5px 5px;
		font-size: 12px;
	}
	.btn-style1::before, .btn-style1::after {
		right: 7px;
		transform: translateY(-50%);
		width: 10px;
		height: 1px;
	}
	.btn-style1::after {
		right: 6px;
		transform: translateY(-240%) rotate(45deg);
		width: 6px;
	}
}

/*----------------------------------------
	.partners
-----------------------------------------*/
.partners .wp-block-columns {
	justify-content: space-between;
}
.partners .wp-block-column {
    flex-basis: auto;
    flex-grow: unset;
}
@media only screen and (max-width: 1024px){
	.partners .wp-block-columns {
		flex-wrap: nowrap;
	}
	.partners .wp-block-column:not(:only-child) {
		flex-basis: auto !important;
	}
	.partners .wp-block-column:nth-child(3) {
		margin-left: 2em;
	}
}
@media only screen and (max-width: 781px){
	.partners .wp-block-column:nth-child(2n) {
		margin-left: 0;
	}
}
@media only screen and (max-width: 767px){
	.partners .wp-block-columns {
		display: block;
		margin-bottom: 0;
	}
	.partners .wp-block-column, .partners .wp-block-column:nth-child(3)  {
		margin-left: 0;
	}
}

/*----------------------------------------
	.list-style1
-----------------------------------------*/
.list-style1 {
	padding-left: 20px;
}
.list-style1 li {
	list-style-type: disc;
	margin-top: 30px;
	font-weight: bold;
}
.list-style1 li:first-of-type {
	margin-top: 0;
}
@media only screen and (max-width: 767px){
	.list-style1 li {
		margin-top: 15px;
		font-size: 14px;
	}
	.list-style1 li:first-of-type {
		margin-top: 15px;
	}
	.partners .wp-block-column:nth-child(1) .list-style1 li:first-of-type {
		margin-top: 0;
	}
}

/*----------------------------------------
	.base
-----------------------------------------*/
.base + .base {
	padding-top: 50px;
}
.base h3 {
	font-size: 20px;
}
.base p, .base p:first-of-type {
	margin-top: 20px;
}
.tit-style2 + .wp-block-columns {
	margin-top: 30px;
}
.base .wp-block-column {
	min-width: unset;
	flex-basis: auto;
    flex-grow: unset;
	min-height: 366px;
}
.base .wp-block-column:nth-of-type(1) {
	width: 370px;
}
.base .wp-block-column:nth-of-type(2) {
	width: 700px;
	margin-left: 30px;
}
.base .wp-block-column:nth-of-type(2) iframe {
	width: 100%;
	height: 100%;
}
.base .wp-block-image {
	margin: 20px 0 0;
}
@media only screen and (max-width: 1024px){
	.base .sp_block {
		display: block !important;
	}
}
@media (min-width: 600px) and (max-width: 781px){
	.base .wp-block-column:not(:only-child) {
		flex-basis: auto !important;
	}
	.base .wp-block-column:nth-of-type(1) {
		width: 30%;
	}
	.base .wp-block-column:nth-of-type(2) {
		width: calc(70% - 15px);
		margin-left: 15px;
	}
}
@media only screen and (max-width: 767px){
	.base h3 {
		font-size: 16px;
	}
	.base p {
		font-size: 14px;
	}
	.base p, .base p:first-of-type {
		margin-top: 10px;
	}
	.base .wp-block-column:nth-of-type(1) {
		width: 30%;
	}
}
@media only screen and (max-width: 599px){
	.base + .base {
		padding-top: 25px;
	}
	.base .wp-block-column {
		min-height: unset;
	}
	.tit-style2 + .wp-block-columns {
		margin-top: 0;
	}
	.tit-style2 + .wp-block-columns {
		margin-top: 15px;
	}
	.base {
		position: relative;
	}
	.base::after {
		content: "";
		display: block;
		width: 100%;
		clear: both;
	}
	.base p.address {
		float: left;
		width: 50%;
		margin-top: 10px;
	}
	.base .wp-block-image {
		float: right;
		width: 50%;
		padding-left: 10px;
		margin-top: 17px;
	}
	.base .wp-block-column:nth-of-type(2) {
		position: relative;
		height: 0;
		padding-top: 56.25%;
		margin-left: 0;
		margin-top: 20px;
	}
	.base .wp-block-column:nth-of-type(2) iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
}

/*----------------------------------------
	.jrc-network
-----------------------------------------*/
.jrc-network {
	justify-content: space-between;
}
.jrc-network .wp-block-column {
	flex-basis: auto;
	flex-grow: unset;
}
.jrc-network .wp-block-image figcaption {
	font-size: 13px;
	font-weight: bold;
}
@media only screen and (max-width: 1024px){
	.jrc-network.wp-block-columns {
		flex-wrap: nowrap;
	}
	.jrc-network .wp-block-column {
		flex-basis: auto !important;
		margin-left: 2em;
	}
	.jrc-network .wp-block-column:first-of-type {
		margin-left: 0;
	}
}
@media only screen and (max-width: 599px){
	.jrc-network.wp-block-columns {
		flex-wrap: wrap;
	}
	.jrc-network .wp-block-column:nth-of-type(odd) {
		margin-left: 0;
	}
	.jrc-network .wp-block-column:not(:only-child) {
		flex-basis: calc(50% - 1em)!important;
		flex-grow: 0;
	}
	.jrc-network .wp-block-image figcaption {
		font-size: 11px;
	}
}

/*----------------------------------------
	.department
-----------------------------------------*/
.department.wp-block-columns, .department .wp-block-columns {
	margin-bottom: 0;
}
.department > .wp-block-column {
	position: relative;
	margin-top: 40px;
	padding-bottom: 80px;
	border: #e30000 solid 2px;
}
.department .wp-block-column h4 {
	margin: 30px 30px 0;
	font-size: 20px;
	font-weight: bold;
}
.department .wp-block-column .wp-block-image {
	margin: 20px 30px 0;
}
.department .wp-block-column .wp-block-image + .wp-block-columns {
	margin: 25px 30px 0;
}
.department .link {
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
}
.department .link a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 50px;
	padding: 10px;
	background-color: #e50012;
}
.department .link a::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -70%) rotate(45deg);
	width: 13px;
	height: 13px;
	border-top: transparent;
	border-right: #fff solid 5px;
	border-bottom: #fff solid 5px;
}
.department .link a:hover {
	opacity: 0.7;
}
@media only screen and (max-width: 1024px){
	.department .wp-block-column .wp-block-image + .wp-block-columns {
		justify-content: space-between;
		margin: 20px 20px 0;
	}
	.department .wp-block-column .wp-block-image + .wp-block-columns .wp-block-column {
		flex-wrap: nowrap;
		flex-basis: calc((100% - 60px )/3)!important;
		margin-left: 10px;
	}
	.department .wp-block-column .wp-block-image + .wp-block-columns .wp-block-column:first-of-type {
		margin-left: 0;
	}
}
@media all and (max-width:781px) and (min-width:600px) {
	#business .department {
		display: block;
	}
	#business .department > .wp-block-column {
		margin-left: 0;
	}
}
@media only screen and (max-width: 767px){
	.department > .wp-block-column {
		margin-top: 20px;
		padding-bottom: calc(80px - (80px / 3) + 15px);
	}
	.department .wp-block-column h4 {
		margin: 15px 15px 0;
		font-size: 16px;
	}
	.department .wp-block-column .wp-block-image {
		margin: 10px 15px 0;
	}
	.department .wp-block-column .wp-block-image + .wp-block-columns {
		margin: 0 15px;
	}
	.department .wp-block-column .wp-block-image + .wp-block-columns .wp-block-column {
		margin-top: 0;
	}
	.department .link a {
		height: calc(50px - (50px / 3));
	}
	.department .link a::after {
		transform: translate(-50%, -70%) rotate(45deg);
		width: 7px;
		height: 7px;
		border-top: transparent;
		border-right: #fff solid 3px;
		border-bottom: #fff solid 3px;
	}
	.department .link a:hover {
		opacity: 1;
	}
}

/*----------------------------------------
	.machinery/.repair
-----------------------------------------*/
.machinery, .repair {
	margin-top: 100px;
	padding-bottom: 100px;
	background-color: #f5f5f5;
}
.machinery h2, .repair h2 {
	font-size: 30px;
}
#business .machinery .lead, #business .repair .lead {
	margin-top: 60px;
	font-size: 20px;
}
.repair {
	margin-top: 0;
	padding-bottom: 0;
	background-color: #fff;
}
@media only screen and (max-width: 767px){
	.machinery, .repair {
		margin-top: 50px;
		padding-bottom: 50px;
	}
	.machinery h2, .repair h2 {
		font-size: 24px;
	}
	#business .machinery .lead, #business .repair .lead {
		margin-top: 30px;
		font-size: 16px;
	}
	.repair {
		margin-top: 0;
		padding-bottom: 0;
	}
}

/*----------------------------------------
	.intro
-----------------------------------------*/
.intro, .intro-reverse {
	margin-top: 50px;
}
.intro .wp-block-column, .intro-reverse .wp-block-column {
	min-width: unset;
    flex-basis: auto;
    flex-grow: unset;
}
.intro .wp-block-column:nth-child(1), .intro-reverse .wp-block-column:nth-child(1) {
	flex: 1;
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
    /* IE11にのみ適用したいスタイルシート */
	.intro .wp-block-column:nth-child(1), .intro-reverse .wp-block-column:nth-child(1) {
		flex: auto;
	}
}
.intro .wp-block-column:nth-child(2) {
	margin: 0 0 0 80px;
}
.intro-reverse .wp-block-column:nth-child(2) {
	margin: 0 80px 0 0;
}
.intro p:first-of-type, .intro-reverse p:first-of-type {
	margin-top: 10px;
}
.intro .wp-block-image, .intro-reverse .wp-block-image {
	max-width: 350px;
	margin-bottom: 0;
}
.intro-reverse {
	flex-direction: row-reverse;
}
@media only screen and (max-width: 1024px){
	.intro.wp-block-columns, .intro-reverse.wp-block-columns {
		flex-wrap: nowrap;
	}
	.intro .wp-block-column:nth-child(2) {
		margin: 0 0 0 60px;
	}
	.intro-reverse .wp-block-column:nth-child(2) {
		margin: 0 60px 0 0;
	}
}
@media only screen and (max-width: 767px){
	.intro, .intro-reverse {
		display: block !important;
		margin-top: 25px;
	}
	.intro .wp-block-column:nth-child(2) {
		margin: 0;
	}
	.intro-reverse .wp-block-column:nth-child(2) {
		margin: 0;
	}
	.intro p:first-of-type, .intro-reverse p:first-of-type {
		margin-top: 5px;
	}
	.intro .wp-block-image, .intro-reverse .wp-block-image {
		max-width: 100%;
		margin-top: 20px;
	}
	.intro .wp-block-image img, .intro-reverse .wp-block-image img {
		width: 100%;
	}
}

/*----------------------------------------
	.tit-border
-----------------------------------------*/
.tit-border strong {
	display: inline-block;
	padding-bottom: 5px;
	border-bottom: #e50012 solid 2px;
}

/*----------------------------------------
	.gray-frame
-----------------------------------------*/
.gray-frame .wp-block-group__inner-container {
	padding: 80px;
	background-color: #f5f5f5;
}
.gray-frame .intro-reverse .wp-block-column:nth-child(2) {
    margin: 0 50px 0 0;
}
.gray-frame .intro .wp-block-column:nth-child(2) {
    margin: 0 0 0 50px;
}
@media only screen and (max-width: 1100px){
	.gray-frame .wp-block-group__inner-container {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media only screen and (max-width: 1024px){
	.gray-frame .wp-block-group__inner-container {
		margin-left: 20px;
		margin-right: 20px;
		padding: 60px;
	}
	.gray-frame .intro-reverse .wp-block-column:nth-child(2) {
		margin: 0 34px 0 0;
	}
	.gray-frame .intro .wp-block-column:nth-child(2) {
		margin: 0 0 0 34px;
	}
}
@media only screen and (max-width: 767px){
	.gray-frame .wp-block-group__inner-container {
		margin-left: 10px;
		margin-right: 10px;
		padding: 40px;
	}
	.gray-frame .intro-reverse .wp-block-column:nth-child(2),
	.gray-frame .intro .wp-block-column:nth-child(2) {
		margin: 0;
	}
}

/*----------------------------------------
	.message-list
-----------------------------------------*/
.message-list {
	margin-top: 60px;
}
.message-list.wp-block-columns {
	margin-bottom: 0;
}
.message-list + .message-list  {
	margin-top: 50px
}
.message-list .wp-block-columns {
	height: 100%;
    margin-bottom: 0;
}
.message-list .wp-block-column:not(:first-child)  {
	margin-left: 0;
}
.message-list > .wp-block-column  {
	width: calc((100% - 60px)/2);
}
.message-list > .wp-block-column > .wp-block-columns {
	border-right: #999 solid 4px;
	border-bottom: #999 solid 4px;
}
.message-list > .wp-block-column:nth-of-type(even)  {
	margin-left: 60px;
}
.message-list h3 {
	width: 100%;
	font-size: 18px;
}
.message-list p {
	width: 100%;
	margin-top: 5px;
	font-size: 14px;
	line-height: 1.6;
}
.message-list h3 + p:first-of-type {
	margin-top: 5px;
}
.message-list .wp-block-image {
    margin-bottom: 0;
}
.message-list .profile {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
    padding: 20px;
	color: #333;
}
.message-list .profile .btn-link {
	margin-top: auto;
	padding-top: 10px
}
.message-list .profile .btn-link a {
	font-size: 12px;
}
@media only screen and (max-width: 1100px){
	.message-list > .wp-block-column  {
		width: calc((100% - 40px)/2);
	}
	.message-list > .wp-block-column:nth-of-type(even)  {
		margin-left: 40px;
	}
}
@media (min-width: 600px) and (max-width: 781px) {
	.message-list .wp-block-column:not(:only-child) {
		flex-basis: auto !important;
	}
}
@media only screen and (max-width: 767px){
	.message-list > .wp-block-column  {
		width: calc((100% - 30px)/2);
	}
	.message-list > .wp-block-column > .wp-block-columns {
		border-right: #999 solid 2px;
		border-bottom: #999 solid 2px;
	}
	.message-list > .wp-block-column:nth-of-type(even)  {
		margin-left: 30px;
	}
	.message-list h3 {
		font-size: 18px;
	}
	.message-list p {
		font-size: 14px;
	}
	.message-list .profile {
		padding: 10px;
	}
}
@media only screen and (max-width: 599px){
	.message-list, .message-list + .message-list {
		margin-top: 0;
	}
	.message-list > .wp-block-column {
		margin-top: 30px;
	}
	.message-list > .wp-block-column:nth-of-type(even)  {
		margin-left: 0;
	}
	.message-list .wp-block-image {
		text-align: center;
	}
	.message-list .profile .btn-link {
		width: 50%;
		margin-top: 20px;
		margin-left: auto;
		margin-right: auto;
		padding-top: 0;
	}
}

/*----------------------------------------
	.required
-----------------------------------------*/
.required {
	display: inline-block;
	padding: 5px 10px;
	color: #e50012;
	font-size: 12px;
	font-weight: bold;
	line-height: 1;
	border: #e50012 solid 1px;
	border-radius: 5px;
}
@media only screen and (max-width: 767px){
	.required {
		padding: 3px 5px;
		font-size: 10px;
	}
}

/*----------------------------------------
	#topics
-----------------------------------------*/
#topics .wp-block-table.is-style-regular,
#topics .wp-block-table.is-style-stripes {
	margin: 40px 0 0;
	border-collapse: collapse;
}
#topics .wp-block-table.is-style-regular table,
#topics .wp-block-table.is-style-stripes table {
    width: 100%;
    border-spacing: 0px;
}
#topics .wp-block-table.is-style-regular th,
#topics .wp-block-table.is-style-regular td,
#topics .wp-block-table.is-style-stripes th,
#topics .wp-block-table.is-style-stripes td {
	padding: 10px;
}
#topics .wp-block-table.is-style-regular table {
    border: 3px solid #333;
}
#topics .wp-block-table.is-style-regular th,
#topics .wp-block-table.is-style-regular td{
	border: solid 1px #333;
}
@media only screen and (max-width: 767px){
	#topics .wp-block-table.is-style-regular,
	#topics .wp-block-table.is-style-stripes {
		margin: 20px 0 0;
	}
	#topics .wp-block-table.is-style-regular th,
	#topics .wp-block-table.is-style-regular td,
	#topics .wp-block-table.is-style-stripes th,
	#topics .wp-block-table.is-style-stripes td {
		padding: 5px;
		font-size: 14px;
	}
	#topics .wp-block-table.is-style-regular table {
		border: 2px solid #333;
	}
}

/*----------------------------------------
	.justify
-----------------------------------------*/
.justify {
	text-align: justify;
}

/*----------------------------------------
	.link-border
-----------------------------------------*/
.link-border-solid img {
	border: #000 solid;
}
.link-border-solid.bw2 img {
	border-width: 2px;
}