@charset "utf-8";/*ページ用*/
/* ------------------------------------------------ */
#mv{
	position: relative;
	z-index: 0;
	background-color: var(--white);
	margin: 0;
	line-height: 1em;
}
#mv b {
	position: absolute;
	z-index: 2;
	left: 0px;
	width: 100%;
	text-align: center;
	pointer-events: none;
	display: block;
	color: var(--white);
	font-size: 50px;
	font-size: clamp(22px, 5vw, 50px);
	font-weight: 700;
	line-height: 1em;
	padding: 10px 0px;
}
@media screen and (min-width:480px) {
	#mv b {
		top: 60%;
		transform: translateY(-60%);
	}
}
@media screen and (max-width:479px) {
	#mv b {
		top: 30%;
	}
}
#mv b span.line::after {
	bottom: 0px;
	height: 100%;
}
#mv b em {
	display: inline-block;
	position: relative;
	z-index: 1;
	padding: 10px 10px;
}
#mv div {
	position: relative;
	z-index: 0;
	pointer-events: none;
}
#mv div::after {
	content: "";
	position: absolute;
	z-index: 1;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	min-width: 100%;
	min-height: 100%;
	background-color: rgba(255,255,255,0.5);
	background-color: rgba(0,0,0,0.3);
	box-sizing: border-box;
	line-height: 1em;
}
#mv div img {
}
/* ------------------------------------------------ */
#title {
	position: relative;
	z-index: 0;
	text-align: center;
	color: var(--white);
	background-color: var(--color1);
	padding: 50px 10px;
}
@media screen and (max-width: 767px) {
	#title {
		background-size: cover;
	}
}
#title div {
	position: relative;
	z-index: 1;
}
#title b {
	display: block;
	font-size: 14px;
	font-size: 20px;
	font-size: clamp(18px, 2vw, 20px);
	font-weight: 900;
	line-height: 1em;
}
#title b span {
}
#title b span.line::after {
	height: 2px;
	background-color: var(--white);
}
@media screen and (max-width: 767px) {
	#title{
		padding: 40px 10px;
	}
}
html#html_single #title {
	padding: 80px 10px;
}
html#html_single #title div {
	display: none;
}
/* ------------------------------------------------ */
.title {
	line-height: 1em;
	text-align: center;
}
@media screen and (max-width: 767px) {
	.title {
		padding: 0px 10px;
	}
}
.title h2 {
	display: block;
	font-size: 24px;
	font-size: clamp(24px, 2.4vw, 24px);
/*
*/
	font-weight: 500;
	line-height: 1em;
	margin-bottom: 40px;
}
.title h2 b {
	display: inline-block;
	font-weight: 500;
	line-height: 1em;
	border-top: 3px solid var(--color1);
	border-bottom: 3px solid var(--color1);
	padding: 10px;
}
.title h3 {
	color: var(--color1);
	font-size: 36px;
	font-size: clamp(24px, 3.6vw, 36px);
	font-weight: 700;
	line-height: 1em;
	border-bottom: 2px solid var(--color1);
	margin-bottom: 40px;
	padding-bottom: 10px;
}
/* ------------------------------------------------ */
#page {
}
.div.page {
}
.pageinner {
}
#pageentry {
}
.pageentry {
}
.page-content {
}
@media screen and (max-width: 767px) {
	div.page {
		padding: 0px 10px;
	}
}
/* ------------------------------------------------ */
#page-archive {
	padding: 50px 0px;
}
/* ------------------------------------------------ */
#page-single {
	padding: 50px 0px;
}
.single-title {
	display: block;
	text-align: center;
	font-weight: 700;
	border-bottom: 1px solid #000;
	margin-bottom: 20px;
}
.single-title h2 {
}
.single-title h2 b {
	display: block;
	color: var(--black);
	font-size: 24px;
}
.single-title h2 em {
	display: inline-block;
	color: var(--white);
	font-size: 11px;
	line-height: 1em;
	background-color: var(--color1);
	padding: 3px 5px;
}
.single-title h2 i {
	display: block;
	font-size: 12px;
	font-weight: 400;
	text-align: right;
}

.single-photo {
	margin-bottom: 30px;
}
.single-photo img {
	width: auto;
	height: auto;
	margin: 0px auto;
}
.single-content {
	padding: 10px 10px 50px 10px;
}
@media screen and (min-width: 768px) {
	.single-content {
		padding: 10px 30px 50px 30px;
	}
}
.single-content:last-child {
}
.single-content img {
	display: inline-block;
}
.single-content img.aligncenter {
	display: block;
	margin: 0px auto;
}
.single-content img.alignleft {
	display: block;
	margin: 0px auto 0px 0px;
}
.single-content img.alignright {
	display: block;
	margin: 0px 0px 0px auto;
}
.single-content img.alignnone {
}
.single-content h1 {
	color: var(--white);
	font-size: 30px;
	font-weight: 700;
	line-height: 1em;
	background-color: var(--color1);
	margin-bottom: 15px;
	padding: 10px 5px;
}
.single-content h2 {
	color: var(--color1);
	font-size: 26px;
	font-weight: 700;
	line-height: 1em;
	border-bottom: 3px solid var(--color1);
	margin-bottom: 15px;
	padding: 5px 5px;
}
.single-content h3 {
	color: var(--color1);
	font-size: 24px;
	font-weight: 700;
	line-height: 1em;
	border-left: 5px solid var(--color1);
	margin-bottom: 15px;
	padding: 5px 5px;
}
.single-content h4 {
	color: var(--color2);
	font-size: 22px;
	margin-bottom: 15px;
}
.single-content h5 {
	color: var(--color2);
	font-size: 20px;
	margin-bottom: 15px;
}
.single-content h6 {
	color: var(--color2);
	font-size: 20px;
	margin-bottom: 15px;
}
.single-content h6 {
	font-size: 20px;
	margin-bottom: 15px;
}
.single-content p {
	margin-bottom: 15px;
}
.single-content p:last-child {
	margin-bottom: 0px;
}
.entry-footer {
	display: none;
	font-size: 0.688em;
	text-align: right;
	padding-top: 30px;
}
.single-content a {
	color: var(--color1);
	text-decoration: underline;
}
.single-content a:hover {
	color: var(--color2);
}
/* ------------------------------------------------ */
.navigation {
}
.navigation h2 {
	display: none;
}
.navigation {
	padding: 30px 0px;
}
.nav-links {
	display: table;
	width: 100%;
	table-layout: fixed;
	border-spacing: 0px;
}
.nav-previous,
.nav-next {
	display: table-cell;
	vertical-align: middle;
	padding: 0px 10px;
}
.nav-previous {
}
.nav-next {
	text-align: right;
}
.nav-links a {
	display: inline-block;
	color: #000;
	font-size: 0.8em;
	line-height: 1em;
	text-decoration: none;
	padding: 5px 10px;
}
.nav-links a:hover {
	background-color: #f2f2f2;
}
.nav-previous a::before {
	content: "<<"
}
.nav-next a::after {
	content: ">>"
}
.nav-links .meta-nav,
.nav-links .screen-reader-text {
	display: none;
}
.nav-links .post-title {
}
.wp-pagenavi {
	line-height: 1em;
	text-align: center;
	padding: 0px 0px 20px 0px;
}
.wp-pagenavi span,
.wp-pagenavi a {
	display: inline-block;
	overflow: hidden;
	width: 30px;
	height: 30px;
	line-height: 30px;
	text-decoration: none;
	vertical-align: middle;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	margin: 2px;
}
.wp-pagenavi span.pages {
	display: none;
}
.wp-pagenavi span.extend {
	border: none;
}
.wp-pagenavi a.page {
	background-color: #f2f2f2;
}
.wp-pagenavi span.current {
	width: 40px;
	height: 40px;
	line-height: 40px;
	color: #fff;
	background-color: var(--color2);
}
.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink {
	position: relative;
	text-indent: 100%;
	white-space: nowrap;
	background-color: var(--gray6);
}
.wp-pagenavi a:hover {
	color: #fff;
	width: 40px;
	height: 40px;
	line-height: 40px;
	background-color: var(--color1);
}
.wp-pagenavi a.previouspostslink::before,
.wp-pagenavi a.nextpostslink::before,
.wp-pagenavi a.previouspostslink::after,
.wp-pagenavi a.nextpostslink::after {
	content: "";
	position: absolute;
	left: 50%;;
	top: 50%;
	width: 1px;
	height: 8px;
	background-color: var(--gray1);
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
}
.wp-pagenavi a.previouspostslink:hover::before,
.wp-pagenavi a.nextpostslink:hover::before,
.wp-pagenavi a.previouspostslink:hover::after,
.wp-pagenavi a.nextpostslink:hover::after {
	background-color: var(--white);
}
.wp-pagenavi a.previouspostslink::before,
.wp-pagenavi a.nextpostslink::after {
	-webkit-transform: skewX(-35deg);
	transform: skewX(-35deg);
}
.wp-pagenavi a.previouspostslink::after,
.wp-pagenavi a.nextpostslink::before {
	-webkit-transform: skewX(35deg);
	transform: skewX(35deg);
}
.wp-pagenavi a.previouspostslink::before,
.wp-pagenavi a.nextpostslink::before {
	margin-top: -8px;
}
/* ------------------------------------------------ */
.widget_search {
	position: relative;
	max-width: 250px;
}
.headerwidget .widget_search {
	margin: 0px 0px 0px auto;
}
.widget_search label span.screen-reader-text {display: none;}
.widget_search button span.screen-reader-text {display: none;}
.widget_search label input[type="search"]{
	width: 100%;
	background-color: #e6e6e6;
	border: 1px solid #fff;
	border-radius: 20px;
	-moz-border-radius: 20px;
	-webkit-border-radius: 20px;
	padding: 10px 5px;
}
.widget_search button[type="submit"]{
	position: absolute;
	right: 10px;
	top: 5px;
	width: 30px;
	height: 25px;
	background-color: transparent;
	background-image: url("./img/parts/search.svg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 22px;
	border: 0px;
	padding: 0;
	cursor: pointer;
}
/* ------------------------------------------------ */
.article-outer {
}
.article-inner {
}
/* ------------------------------------------------ */
.bloc {
	position: relative;
	margin: 0px auto;
	padding: 0px;
}
.outer {
	position: relative;
/*
	z-index: 1;
*/
}
.bloc .outer {
	padding: 30px 0px;
}
@media screen and (min-width:768px) {
	.bloc .outer {
		padding: 50px 0px;
	}
}
.inner {
}
.inner::after {
	content: "";
	display: block;
	clear: both;
}
.inner:last-child {
	margin-bottom: 0px;
}
@media screen and (max-width: 767px) {
	.inner {
		padding: 0px 10px;
	}
}
.inner p {margin-bottom: 15px;}
.inner p:last-child {margin-bottom: 0px;}
/* ------------------------------------------------ */
/* --------- */
#index-news {
	background-color: var(--white);
	background-color: var(--gray6);
}
#index-news .outer {
}
.index-news {
}
.index-news ul {
	margin-bottom: 30px;
}
.index-news ul li {
	border-bottom: 1px dashed #000;
	padding: 10px;
}
@media screen and (max-width: 767px) {
	.index-news ul li {
	}
}
@media screen and (min-width: 768px) {
	.index-news ul::after {
		display: block;
		content: "";
		clear: both;
	}
	.index-news ul li {
	}
}

.index-news ul li a {
	display: block;
	line-height: 1.2em;
	text-decoration: none;
	padding: 0px 10px;
}
.index-news ul li a span {
	display: inline-block;
	font-size: 13px;
	vertical-align: middle;
	padding: 3px 5px;
}
.index-news ul li a em {
	display: inline-block;
	color: var(--white);
	font-size: 11px;
	line-height: 1em;
	vertical-align: middle;
	background-color: var(--color1);
	padding: 3px 5px;
}
.index-news ul li a strong {
	display: inline-block;
	font-size: 16px;
	vertical-align: middle;
	padding: 0px 5px;
}
.index-news ul li a p {
	font-size: 13px;
	line-height: 1.4em;
}

#news {
}
.news {
}
.news-list {
}
.news-list ul {
}
.news-list ul li {
	border-bottom: 1px solid #000;
	padding: 15px 5px;
}
.news-list ul li:last-child {
	border-bottom: none;
}
.news-list ul li dl {
	margin-bottom: 15px;
}
.news-list ul li dl dt {
	border-bottom: 1px solid #ccc;
}
.news-list ul li dl dt span {
	display: inline-block;
	font-size: 13px;
	font-weight: 700;
	line-height 1em;
	padding-right: 10px;
}
.news-list ul li dl dt em {
	display: inline-block;
	color: var(--white);
	font-size: 11px;
	line-height: 1em;
	background-color: var(--color1);
	padding: 3px 5px;
}
.news-list ul li dl dt a {
	display: block;
	color: var(--color1);
	font-size: 20px;
	line-height: 1.4em;
	text-decoration: none;
}
.news-list ul li dl dt a:hover {
	color: var(--color2);
}
.news-list ul li dl dt a strong {
}
.news-list ul li dl dd {
}
/* ------------------------------------------------ */
#index {
/*
	background-image: url("./img/mv.webp");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	background-attachment: fixed;
*/
}
/* ------------------------------------------------ */
#index-top {
	color: var(--white);
	background-color: var(--color1);
}
#index-top .outer {
	padding: 0px;
}
.index-top {
	padding: 10px;
}
@media screen and (min-width: 768px) {
	.index-top {
		background-image: url("./img/favicon2.webp");
		background-repeat: no-repeat;
		background-position: right top;
		background-size: 100%;
		background-size: cover;
		background-size: contain;
		padding: 70px 410px 70px 10px;
	}
}
@media screen and (max-width: 767px) {

}
.index-top p {
}
/* ------------------------------------------------ */
#index-bloc {
/*
	border-bottom: 5px solid var(--white);
*/
}
/*
@media screen and (min-width: 768px) {
	#index-bloc {
	background-image: url("./img/mv.webp");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100%;
	background-size: cover;
	background-attachment: fixed;
	}
}
*/
#index-bloc .outer {
	padding: 0px;
}
#index-bloc .inner {
	padding: 0px;
}
.index-bloc {
	background-color: rgba(255,255,255,0);
}


.index-bloc {
}
.index-bloc::nth-child(1) {
}
.index-bloc::nth-child(2) {
}
.index-bloc ul {
}
.index-bloc ul li {
}
.index-bloc ul li {
	position: relative;
}
.index-bloc ul li {
	position: relative;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 100%;
	background-size: cover;
}
@media screen and (min-width: 768px) {
	.index-bloc ul li:nth-child(1) {
		background-image: url("./img/works-bg.webp");
	}
	.index-bloc ul li:nth-child(2) {
		background-image: url("./img/recruit-bg3.webp");
	}
}
@media screen and (max-width: 767px) {

}
@media screen and (min-width: 768px) {
	.index-bloc ul li::before {
		content: "";
		position: absolute;
		z-index: 1;
		top: 0px;
		width: 55%;
		height: 100%;
		background-color: rgba(0,0,0,0.9);
		background-color: rgba(255,255,255,0.9);
	}
	.index-bloc ul li:nth-child(1)::before {
		left: 0px;
		clip-path: polygon(0 0, 82% 0%, 100% 100%, 0% 100%);
	}
	.index-bloc ul li:nth-child(2)::before {
		right: 0px;
		clip-path: polygon(18% 0, 100% 0, 100% 100%, 0% 100%);
	}
}
@media screen and (max-width: 767px) {
	.index-bloc ul li::before {
	}
}

.index-bloc-inner {
}
.index-box {
	position: relative;
	z-index: 2;
}
.index-box {
	position: relative;
}
.index-box-inner {
	padding: 20px 0px 10px 0px;
}
@media screen and (min-width: 768px) {
	.index-box-inner {
		width: 500px;
	}
	.index-bloc ul li:nth-child(1) .index-box-inner {
		margin: 0px auto 0px 0px;
	}
	.index-bloc ul li:nth-child(2) .index-box-inner {
		margin: 0px 0px 0px auto;
	}
	.index-box-inner {
		padding: 40px 0px;
	}
}
.index-box h2 {
}
.index-box h2 span {
	display: block;
	font-size: 100px;
	font-size: clamp(50px,10vw,100px);
	font-weight: 700;
	line-height: 1em;
	text-align: center;
	text-transform: capitalize;
	text-transform: uppercase;
	margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
	.index-box h2 span {
		position: absolute;
		z-index: 0;
		bottom: 30px;
		color: rgba(0,0,0,0.8);
		color: rgba(255,255,255,0.3);
	}
	.index-bloc ul li:nth-child(1) .index-box h2 span {
		right: 0px;
	}
	.index-bloc ul li:nth-child(2) .index-box h2 span {
		left: 0px;
	}
}
@media screen and (max-width: 767px) {
	.index-box h2 span {
		font-size: 100px;
		font-size: clamp(50px,9vw,90px);
		padding: 10px 10px;
		margin-bottom: 10px;
	}
}
.index-box h2 strong {
	display: block;
	color: var(--color2);
	color: rgba(76,191,238,0.4);
	color: rgba(70,70,70,0.4);
	font-size: 44px;
	font-size: clamp(20px, 4.4vw, 44px);
	font-weight: 900;
	line-height: 1em;
	text-align: center;
	margin-bottom: 40px;
	opacity: .5;
}
.index-box h2 b {
	display: block;
	color: var(--color1);
	font-size: 44px;
	font-size: clamp(20px, 2.4vw, 24px);
	font-weight: 900;
	line-height: 1.4em;
	text-align: center;
}
@media screen and (min-width: 768px) {
	.index-box h2 b {
		margin-bottom: 20px;
	}
}
@media screen and (max-width: 767px) {
	.index-box h2 b {
		margin-bottom: 20px;
	}
}
.index-box h2 span b {
	font-size: 1.2em;
}
.index-box-tex {
	position: relative;
	padding: 0px 20px;
}
@media screen and (min-width: 768px) {
	.index-box-tex {
		text-align: center;
		padding: 10px 20px 20px 20px;
	}
	.index-bloc ul li:nth-child(1) .index-box-tex,
	.index-bloc ul li:nth-child(3) .index-box-tex {
	}
	.index-bloc ul li:nth-child(2) .index-box-tex {
	}
}
.index-box-tex img {
	margin: 0px auto;
}
@media screen and (min-width: 768px) {
	.index-box-tex-img {
		display: none;
	}
}
@media screen and (max-width: 767px) {
	.index-box-tex-img img {
		margin: 0px auto;
	}
}
.index-box p {
	display: block;
	font-size: 16px;
	font-size: clamp(14px, 1.6vw, 16px);
	font-weight: 400;
	padding: 0px;
}
@media screen and (min-width: 768px) {
	.index-box p {
		padding: 0px;
	}
}
@media screen and (max-width: 767px) {

}
.index-box p b {
}
.index-box-works {
	display: flex;
	flex-wrap: nowrap;
	gap: 3px;
	align-items: stretch;
	justify-content: center;
}
.index-box-works div {
	flex: 1;
	box-sizing: border-box;
}
/* ------------------------------------------------ */
#works-about {
}
#works-about .outer {
	padding: 50px 0px 0px 0px;
}
.works-about {
}
.works-about-tex {
	position: relative;
	text-align: center;
	position: relative;
	z-index: 0;
	color: var(--white);
	background-image: url("./img/works-bg.webp");
	background-repeat: no-repeat;
	background-position: center;
	background-attachment: fixed;
	background-size: cover;
	margin-bottom: 30px;
}
.works-about-tex::after {
	content: "";
	position: absolute;
	z-index: 0;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.8);
}
@media screen and (max-width: 767px) {
	.works-about-tex {
		margin-bottom: 20px;
	}
}
.works-about-tex-inner {
	position: relative;
	z-index: 1;
	padding: 80px 10px;
}
.works-about-tex-inner h2 {
	display: block;
	color: var(--color1);
	color: var(--white);
	font-size: 44px;
	font-size: clamp(22px, 4.4vw, 44px);
	font-weight: 900;
	font-weight: 900;
	line-height: 1.4em;
	vertical-align: middle;
	margin-bottom: 20px;
}
.works-about-tex-inner p {
	font-size: 20px;
	font-size: clamp(16px, 2vw, 20px);
	line-height: 1.8em;
}

.works-naiyo {
	padding: 20px 10px;
}
.works-naiyo dl {
	background-color: var(--white);
	border-radius: 10px;
	box-shadow: 0px 0px 5px 2px rgba(0,0,0,0.1);
	margin-bottom: 20px;
	padding: 10px;
}
.works-naiyo dl dt {
	position: relative;
}
.works-naiyo dl dt h4 {
	display: inline-block;
	position: relative;
	font-size: 20px;
	font-size: clamp(18px, 2.4vw, 24px);
	font-weight: 900;
	line-height: 1em;
	color: var(--white);
	background-color: var(--color1);
	border-radius: 3px;
	margin-bottom: 5px;
	padding: 10px 20px;
	box-shadow: 0px 0px 3px 1px rgba(0,0,0,0.2);
}

@media screen and (min-width: 768px) {
	.works-naiyo dl dt h4 {
		position: absolute;
		top: -20px;
	}
	.works-naiyo dl:nth-child(odd) dt h4 {
		right: 20px;
	}
	.works-naiyo dl:nth-child(even) dt h4 {
		left: 20px;
	}

}
.works-naiyo dl dd {
}
.works-naiyo dl dd::after {
	content: "";
	display: block;
	clear: both;
}
.works-naiyo dl dd img {
	margin: 0px auto;
}
.works-naiyo dl dd p {
}

@media screen and (min-width: 768px) {
	.works-naiyo dl dd {
		padding: 10px 20px;
	}
	.works-naiyo dl:nth-child(odd) dd img {
		float: left;
		margin: 0px 20px 0px 0px;
	}
	.works-naiyo dl:nth-child(even) dd img {
		float: right;
		margin: 0px 0px 0px 20px;
	}
	.works-naiyo dl dd p {
		padding: 40px 0px 0px 0px;
	}
}

.works-about-reki {
	text-align: center;
	background-color: var(--bg1);
	padding: 40px 10px;
}

.works-about-reki-inner {
}
.works-about-reki h3 {
	display: block;
	color: var(--color1);
	font-size: 20px;
	font-size: clamp(24px, 3vw, 30px);
	font-weight: 900;
	line-height: 1em;
	margin-bottom: 40px;
}
.works-about-reki table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0px;
	empty-cells:show;
	background-color: var(--white);
	border: 2px solid var(--black);
	margin: 0px auto 10px auto;
}
.works-about-reki table tr {
}
.works-about-reki table tr th {
	border: 1px solid #999;
	border-bottom: 2px solid var(--black);
	padding: 5px;
}
.works-about-reki table tr td {
	border: 1px solid #999;
	padding: 10px;
}
/* ------------------------------------------------ */
#recruit-top {
	background-image: url("./img/recruit-bg2.webp");
	background-repeat: no-repeat;
	background-position: center;
	background-attachment: fixed;
	background-size: cover;
}
#recruit-top.bloc .outer {
	background-color: rgba(0,0,0,0.5);
	padding: 0px 0px 0px 0px;
}
@media screen and (max-width: 767px) {
	#recruit-top.bloc .inner {
		padding: 0px 0px;
	}
}
#recruit-top.bloc .inner {
}
.recruit-top {
}

.recruit-top-tex1 {
	color: var(--white);
	text-align: center;
	background-color: rgba(0,0,0,0.7);
	padding: 20px 10px;
}
@media screen and (min-width: 768px) {
	.recruit-top-tex1 {
		padding: 50px 20px;
	}
}
.recruit-top-tex1 h3 {
	display: inline-block;
	color: var(--white);
	font-size: 44px;
	font-size: clamp(22px, 4.4vw, 44px);
	font-weight: 900;
	line-height: 1.4em;
	margin-bottom: 20px;
}
.recruit-top-tex1 p {
}

.recruit-top-tex1-bloc {
	position: relative;
	padding: 50px 10px 0px 10px;
}
.recruit-top-tex1-box {
	background-color: var(--white);
	box-shadow: 0px 0px 3px 1px rgba(0,0,0,0.1);
	border-radius: 10px;
	margin-bottom: 20px;
	padding: 10px;
}
@media screen and (min-width: 768px) {
	.recruit-top-tex1-box {
		padding: 20px 10px 10px 10px;
	}
}
@media screen and (max-width: 767px) {
	.recruit-top-tex1-bloc {
		padding: 0px 10px;
	}
}
.recruit-top-tex1-box h3 {
	color: rgba(255,255,255,0.8);
	color: var(--color1);
	font-size: 30px;
	font-size: clamp(24px,3vw,30px);
	font-weight: 900;
	line-height: 1.4em;
	text-align: center;
	margin-bottom: 10px;
}
.recruit-top-tex1-box h3 b {
	font-size: 1.2em;
}
.recruit-top-tex1-tex {
	padding: 0px;
}
@media screen and (min-width: 768px) {
	.recruit-top-tex1-tex {
		padding: 10px 50px;
	}
}
@media screen and (max-width: 767px) {

}
.recruit-top-tex1-tex::after {
	content: "";
	display: block;
	clear: both;
}
.recruit-top-tex1-tex img {
}
@media screen and (min-width: 768px) {
	.recruit-top-tex1-tex img {
		width: 350px;
	}
	.recruit-top-tex1-box:nth-child(1) .recruit-top-tex1-tex img {
		float: left;
		margin: 0px 20px 0px auto;
	}
	.recruit-top-tex1-box:nth-child(2) .recruit-top-tex1-tex img {
		float: right;
		margin: 0px auto 0px 20px;
	}
}
@media screen and (max-width: 767px) {
	.recruit-top-tex1-tex img {
		margin: 0px auto;
	}
}

.recruit-top-tex1-btm {
	text-align: center;
	background-color: rgba(0,0,0,0.7);
	padding: 30px 10px;
}
.recruit-top-tex1-btm b {
	display: inline-block;
	color: var(--white);
	font-size: 24px;
	font-size: clamp(22px,2.4vw,24px);
	font-weight: 500;
	margin-bottom: 20px;
	padding: 5px 10px;
}

.recruit-top-tex2 {
	position: relative;
	background-color: rgba(0,0,0,0.8);
	background-color: var(--bg1);
	background-color: rgba(255,255,255,0.5);
	padding: 30px 10px;
}
@media screen and (min-width:768px) {
	.recruit-top-tex2 {
	padding: 50px 10px;
	}
}
.recruit-top-tex2-inner {
	position: relative;
	z-index: 1;
}

.recruit-top-tex2-title {
	position: relative;
	z-index: 1;
	text-align: center;
	margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
	.recruit-top-tex2-title {
		margin-bottom: 20px;
	}
}
.recruit-top-tex2-title b {
	display: inline-block;
	font-size: 30px;
	font-size: clamp(20px, 3.6vw, 36px);
	-moz-border-radius: 20px;
	-webkit-border-radius: 20px;
	border-radius: 20px;
	padding: 10px 10px;
}
.recruit-top-tex2-title b small {
	display: block;
	color: var(--white);
	font-size: 20px;
	font-size: clamp(16px, 2vw, 20px);
	font-weight: 500;
	line-height: 1.4em;
	margin-bottom: 10px;
}
.recruit-top-tex2-title b span {
	display: inline-block;
	position: relative;
	color: var(--color1);
	font-size: 40px;
	font-size: clamp(24px, 4vw, 40px);
	font-weight: 900;
	line-height: 1em;
}
.recruit-top-tex2-title b span.line::after {
	bottom: 0px;
	background-color: var(--white);
	height: 100%;
}
.recruit-top-tex2-title b span em {
	display: block;
	padding: 10px 10px;
}
.recruit-top-tex2-tex {
	text-align: center;
	margin-bottom: 30px;
}
.recruit-top-tex2-tex p {
	font-size: 20px;
	font-size: clamp(18px, 2vw, 20px);
	font-weight: 700;
	line-height: 1.4em;
}
@media screen and (min-width: 768px) {
	.recruit-top-tex2-tex p span {
		display: inline-block;
		position: relative;
	}
	.recruit-top-tex2-tex p span::before,
	.recruit-top-tex2-tex p span::after {
		content: "";
		position: absolute;
		z-index: 0;
		top: 0px;
		width: 2px;
		height: 100%;
		background-color: var(--color1);
	}
	.recruit-top-tex2-tex p span::before {
		left: -20px;
		transform: rotate(-25deg);
	}
	.recruit-top-tex2-tex p span::after {
		right: -20px;
		transform: rotate(25deg);
	}
}



.recruit-top-tex2-inner ul {
}
.recruit-top-tex2-inner ul li {
	position: relative;
	box-sizing: border-box;
	background-color: rgba(0,0,0,0.6);
	background-color: rgba(255,255,255,0.9);
	background-color: var(--white);
	box-shadow: 1px 1px 3px 1px rgba(0,0,0,0.1);
	border-radius: 10px;
}
@media screen and (min-width: 768px) {
	.recruit-top-tex2-inner ul {
		display: flex;
		flex-wrap: wrap;
		align-items: stretch;
		justify-content: center;
		gap: 10px;
	}
	.recruit-top-tex2-inner ul li {
		flex: 0 0 calc(33.3333% - 10px);
	}
}
@media screen and (max-width:767px) {
	.recruit-top-tex2-inner ul {
	}
	.recruit-top-tex2-inner ul li {
	margin-bottom: 10px;
	}
}
.recruit-top-tex2-inner ul li dl {
}
.recruit-top-tex2-inner ul li dl dt {
	text-align: center;
	padding: 10px 0px;
}
.recruit-top-tex2-inner ul li dl dd {
}
.recruit-top-tex2-inner ul li dl dt span {
	display: inline-block;
	color: var(--white);
	font-size: 14px;
	font-weight: 700;
	line-height: 1em;
	background-color: var(--color2);
	border-radius: 30px;
	padding: 4px 10px;
}
.recruit-top-tex2-inner ul li dl dt span b {
	font-size: 1.2em;
}
.recruit-top-tex2-inner ul li dl dt h3 {
	font-size: 24px;
	font-size: clamp(20px, 2.4vw, 24px);
	line-height: 1.2em;
	padding: 10px 0px 0px 0px;
}
.recruit-top-tex2-inner ul li dl dt h3 b {
	color: var(--color1);
	font-size: 1.2em;
	font-weight: 900;
}
.recruit-top-tex2-inner ul li dl dd img {
	margin: 0px auto;
}
.recruit-top-tex2-inner ul li dl dd img {
	margin: 0px auto;
}
.recruit-top-tex2-inner ul li dl dd p {
	padding: 10px 10px 10px 10px;
}
@media screen and (max-width: 767px) {
	.recruit-top-tex2-inner ul li dl dd p {
		padding: 0px 5px 10px 5px;
	}
}


.recruit-data {
	text-align: center;
}
.recruit-data ul {
}
.recruit-data ul li {
	position: relative;
	color: var(--white);
	box-sizing: border-box;
	background-color: var(--black);
	border-radius: 10px;
}
@media screen and (max-width: 767px) {
	.recruit-data ul li {
		border: 3px solid var(--color2);
		margin-bottom: 5px;
		padding: 20px 10px;
	}
}
@media screen and (min-width: 768px) {
	.recruit-data ul {
		display: flex;
		flex-wrap: nowrap;
		gap: 15px;
		align-items: stretch;
		justify-content: center;
	}
	.recruit-data ul li {
		width: 150px;
		height: 150px;
		border-radius: 50%;
		border: 4px solid var(--color2);
	}
	#recruit-top .recruit-data ul li {
		width: 220px;
		height: 220px;
	}
}
.recruit-data ul li::after {
	content: "";
	position: absolute;
	z-index: 0;
	background-repeat: no-repeat;
	background-position: center top;
}
.recruit-data ul li:nth-child(1)::after {
	background-image: url('data:image/svg+xml;charset=UTF-8,<svg width="100%" height="100%" viewBox="0 0 30 30" version="1.1" xmlns="http://www.w3.org/2000/svg"><path fill="%23cc2828" d="M21.506,15.859L18.326,6.838C18.291,6.742 18.237,6.669 18.171,6.615C18.015,6.398 17.662,6.268 17.472,6.24C17.344,6.221 17.061,6.207 16.696,6.198L13.224,6.206C12.859,6.217 12.576,6.233 12.448,6.252C12.198,6.29 11.673,6.504 11.674,6.855L8.494,15.875C8.354,16.255 8.555,16.673 8.943,16.81C9.025,16.839 9.108,16.853 9.19,16.853C9.497,16.855 9.785,16.669 9.895,16.371L11.864,11.56L12.098,17.317C12.174,19.619 12.384,29.036 12.386,29.089C12.428,30.288 14.198,30.302 14.345,29.14L15.039,17.458L15.692,29.136C15.844,30.297 17.615,30.276 17.651,29.077C17.652,29.023 17.913,19.605 17.978,17.303L18.128,11.524L20.105,16.355C20.215,16.653 20.503,16.839 20.81,16.838C20.893,16.837 20.976,16.823 21.058,16.794C21.445,16.657 21.646,16.239 21.506,15.859"/><path fill="%23cc2828" d="M14.968,5.425C15.017,5.425 15.064,5.42 15.113,5.417C16.573,5.339 17.731,4.155 17.727,2.706C17.724,1.208 16.482,-0.004 14.954,0C13.426,0.003 12.192,1.222 12.195,2.719C12.2,4.217 13.44,5.429 14.968,5.425"/></svg>');
}
.recruit-data ul li:nth-child(2)::after {
	background-image: url('data:image/svg+xml;charset=UTF-8,<svg width="100%" height="100%" viewBox="0 0 30 30" version="1.1" xmlns="http://www.w3.org/2000/svg"><path fill="%23cc2828" d="M20.415,17.475L20.415,19.126L16.554,19.126L16.489,19.231L16.489,20.338L20.415,20.338L20.415,21.99L16.489,21.99L16.489,25.433L14.24,25.433L14.24,21.99L10.314,21.99L10.314,20.338L14.24,20.338L14.24,19.231L14.175,19.126L10.314,19.126L10.314,17.475L13.246,17.475L9.761,11.413L12.302,11.413L15.364,17L18.427,11.413L20.969,11.413L17.498,17.475L20.415,17.475ZM14.999,6.858C6.692,6.858 -0,14.211 -0,20.298C-0,22.831 1.461,28.722 14.999,28.722C28.538,28.722 30,22.831 30,20.298C30,14.211 23.309,6.858 14.999,6.858"/><path fill="%23cc2828" d="M3.329,10.903C3.346,10.903 3.363,10.899 3.38,10.899C3.689,10.886 3.993,10.759 4.22,10.514C6.838,7.684 10.668,6.126 15,6.126C19.334,6.126 23.161,7.684 25.78,10.514C26.007,10.759 26.313,10.89 26.624,10.902C26.933,10.914 27.248,10.808 27.493,10.58C27.984,10.125 28.014,9.358 27.56,8.867C25.078,6.185 21.703,4.476 17.865,3.91C18.092,3.631 18.233,3.282 18.233,2.895C18.233,2.002 17.509,1.278 16.617,1.278C15.723,1.278 15,2.002 15,2.895C15,2.002 14.277,1.278 13.384,1.278C12.491,1.278 11.767,2.002 11.767,2.895C11.767,3.282 11.908,3.631 12.135,3.91C8.297,4.476 4.922,6.185 2.44,8.867C1.985,9.358 2.015,10.126 2.506,10.58C2.74,10.796 3.035,10.903 3.329,10.903"/></svg>');
}
.recruit-data ul li:nth-child(3)::after {
	background-image: url('data:image/svg+xml;charset=UTF-8,<svg width="100%" height="100%" viewBox="0 0 30 30" version="1.1" xmlns="http://www.w3.org/2000/svg"><path fill="%23cc2828" d="M22.857,18.131C22.857,19.039 22.411,20.208 22.028,20.606L16.224,26.628L16.224,11.869C16.224,10.96 16.67,9.793 17.053,9.394L22.857,3.371L22.857,18.131ZM24.099,0.118C23.771,-0.014 22.916,-0.221 22.028,0.7L15.29,7.695C15.19,7.799 15.094,7.918 15,8.044C14.906,7.918 14.81,7.799 14.71,7.695L7.972,0.7C7.084,-0.221 6.228,-0.015 5.901,0.118C5.45,0.3 4.694,0.844 4.694,2.44L4.694,18.131C4.694,19.613 5.345,21.407 6.208,22.305L12.947,29.301C13.48,29.853 14.001,30 14.403,30C14.662,30 14.868,29.939 15,29.887C15.132,29.939 15.338,30 15.597,30C15.999,30 16.521,29.853 17.053,29.301L23.792,22.304C24.655,21.407 25.306,19.613 25.306,18.131L25.306,2.44C25.306,0.844 24.55,0.3 24.099,0.118"/></svg>');
}
.recruit-data ul li:nth-child(4)::after {
	background-image: url('data:image/svg+xml;charset=UTF-8,<svg width="100%" height="100%" viewBox="0 0 30 30" version="1.1" xmlns="http://www.w3.org/2000/svg"><path fill="%23cc2828" d="M15.723,24.122L1.565,24.122L1.565,10.36L23.479,10.36L23.479,14.702C23.512,14.702 23.544,14.697 23.577,14.697C24.078,14.697 24.568,14.749 25.044,14.838L25.044,3.969L21.327,3.969L21.327,5.931C21.327,7.01 20.45,7.888 19.37,7.888C18.291,7.888 17.414,7.01 17.414,5.931L17.414,3.969L7.631,3.969L7.631,5.931C7.631,7.01 6.753,7.888 5.674,7.888C4.595,7.888 3.718,7.01 3.718,5.931L3.718,3.969L-0,3.969L-0,25.687L16.177,25.687C15.974,25.188 15.823,24.665 15.723,24.122"/><rect fill="%23cc2828" x="3.614" y="12.121" width="2.87" height="2.87"/><rect fill="%23cc2828" x="8.595" y="12.121" width="2.871" height="2.87"/><rect fill="%23cc2828" x="13.578" y="12.121" width="2.87" height="2.87"/><rect fill="%23cc2828" x="18.559" y="12.121" width="2.87" height="2.87"/><rect fill="%23cc2828" x="3.614" y="16.817" width="2.87" height="2.87"/><rect fill="%23cc2828" x="8.595" y="16.817" width="2.871" height="2.87"/><path fill="%23cc2828" d="M13.578,16.817L13.578,19.687L16.176,19.687C16.258,19.486 16.35,19.292 16.448,19.099L16.448,16.817L13.578,16.817Z"/><path fill="%23cc2828" d="M4.5,5.931C4.5,6.58 5.026,7.105 5.674,7.105C6.322,7.105 6.848,6.58 6.848,5.931L6.848,2.064C6.848,1.416 6.322,0.89 5.674,0.89C5.026,0.89 4.5,1.416 4.5,2.064L4.5,5.931Z"/><path fill="%23cc2828" d="M18.196,5.931C18.196,6.58 18.722,7.105 19.37,7.105C20.018,7.105 20.544,6.58 20.544,5.931L20.544,2.064C20.544,1.416 20.018,0.89 19.37,0.89C18.722,0.89 18.196,1.416 18.196,2.064L18.196,5.931Z"/><path fill="%23cc2828" d="M27.197,23.469L23.577,23.469C23.371,23.469 23.17,23.386 23.024,23.24C22.878,23.094 22.794,22.893 22.794,22.687L22.794,19.028C22.794,18.596 23.144,18.245 23.577,18.245C24.01,18.245 24.359,18.596 24.359,19.028L24.359,21.904L27.197,21.904C27.629,21.904 27.979,22.255 27.979,22.687C27.979,23.119 27.629,23.469 27.197,23.469M30,22.686C30,19.138 27.125,16.262 23.577,16.262C20.028,16.262 17.152,19.138 17.152,22.686C17.152,26.234 20.028,29.11 23.577,29.11C27.125,29.11 30,26.234 30,22.686"/></svg>');
}
@media screen and (min-width: 768px) {
	.recruit-data ul li::after {
		left: 50%;
		top: 20px;
		transform: translateX(-50%);
		width: 30px;
		height: 30px;
	}
	#recruit-top .recruit-data ul li::after {
		width: 50px;
		height: 50px;
	}
}
@media screen and (max-width: 767px) {
	.recruit-data ul li::after {
		left: 10px;
		top: 50%;
		transform: translateY(-50%);
		width: 30px;
		height: 30px;
	}
	#recruit-top .recruit-data ul li::after {
		width: 30px;
		height: 30px;
	}
}
.recruit-data ul li strong {
	display: inline-block;
}
.recruit-data ul li strong em {
	display: inline-block;
	font-weight: 700;
	line-height: 1em;
}
.recruit-data ul li strong b {
	display: inline-block;
	font-size: 20px;
	font-size: clamp(18px, 2vw, 20px);
	font-weight: 700;
	line-height: 1em;
}
@media screen and (min-width: 768px) {
	.recruit-data ul li strong {
		position: absolute;
		z-index: 0;
		left: 0px;
		top: 0px;
		left: 50%;
		top: 60%;
		transform: translate(-50%,-60%);
		width: 100%;
	}
	.recruit-data ul li strong em {
		display: block;
		margin-bottom: 10px;
	}
	.recruit-data ul li strong b {
		display: block;
	}
}
.recruit-data ul li strong b span {
	color: var(--color2);
	font-size: 1.2em;
	border-bottom: 3px dotted var(--color2);
}
@media screen and (min-width: 768px) {
	#recruit-top .recruit-data ul li strong b {
		font-size: 30px;
		font-size: clamp(18px, 3vw, 30px);
	}
}
.recruit-link {
	text-align: center;
	padding: 40px 10px;
}
.recruit-link a {
	display: inline-block;
	color: var(--white);
	font-size: 20px;
	font-size: clamp(18px, 2vw, 20px);
	font-weight: 700;
	line-height: 1em;
	background-color: var(--color1);
	border: 2px solid var(--white);
	padding: 20px 40px;
}
.recruit-link a span {
	position: relative;
}
.recruit-link a span::after {
	content: "";
	position: absolute;
	z-index: 0;
	right: 0px;
	top: 50%;
	transform: translateY(-50%);
	width: 10px;
	height: 10px;

}
.recruit-link {
}

.recruit-top-btm {
	text-align: center;
	background-color: rgba(0,0,0,0.8);
	padding: 5px 10px 50px 10px;
}
.recruit-top-btm b {
	display: inline-block;
	color: var(--white);
	font-size: 24px;
	font-size: clamp(22px,2.4vw,24px);
	font-weight: 500;
	margin-bottom: 20px;
	padding: 5px 10px;
}
/* -------------------------- */
.recruit-info {
}
.recruit-info dl dd a {
	color: var(--color1);
	font-size: 1.2em;
	font-weight: 700;
}
.recruit-info .link-bloc {
	padding: 20px 10px 5px 10px;
}
/* ------------------------------------------------ */
#page-company {
}
#company-greeting {
	position: relative;
	background-image: url("./img/company-bg.webp");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	background-attachment: fixed;
}
#company-greeting::after {
	z-index: 1;
	position: relative;
	content: "";
	position: absolute;
	z-index: 0;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.6);
}
#company-greeting .outer {
	padding: 0px;
	position: relative;
	z-index: 2;
}
.company-top-tex {
	color: var(--white);
	text-align: center;
	padding: 30px 10px 50px 10px;
}
.company-top-tex strong {
	display: block;
	display: inline-block;
	font-size: 24px;
	font-size: clamp(30px, 5.4vw, 54px);
	font-weight: 900;
	line-height: 1.4em;
	margin-bottom: 50px;
	padding-bottom: 0px;
}
.company-top-tex p {
	font-size: 1.2em;
	font-size: clamp(14px, 2vw, 20px);
	font-weight: 500;
	line-height: 1.8em;
/*
	text-shadow: 1px 1px 5px rgba(0,0,0,1),1px 2px 5px rgba(0,0,0,1);
*/
}

.company-greeting {
	background-color: rgba(255,255,255,0.8);
		padding: 30px 0px;
}
.company-greeting-inner {
}
.company-greeting-tex {
	padding: 10px;
}
.company-greeting-img img {
	margin: 0px auto;
}
@media screen and (min-width: 768px) {
	#company-greeting {
	}
	.company-top-tex {
		padding: 100px 0px 80px 0px;
	}
	.company-greeting-inner {
		display: table;
		table-layout: fixed;
		border-spacing: 0px;
	}
	.company-greeting-img {
		display: table-cell;
		width: 300px;
		vertical-align: middle;
	}
	.company-greeting-tex {
		display: table-cell;
		vertical-align: middle;
		padding: 10px 0px 10px 50px;
	}
}
@media screen and (max-width: 767px) {
	#company-greeting {
		padding: 0px 0px 40px 0px;
	}
	.company-greeting-img {
		margin-bottom: 10px;
	}
	.company-greeting-img img {
		width: 120px;
	}
}
#company-company {
}
#company-company .title {
}
#company-map {
	position: relative;
	color: var(--white);
	background-image: url("./img/company-bg.webp");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	background-attachment: fixed;
}
#company-map::after {
	z-index: 1;
	position: relative;
	content: "";
	position: absolute;
	z-index: 0;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.8);
}
#company-map .outer {
	position: relative;
	z-index: 2;
}
/* ------------------------------------------------ */
#index-works {
}
.photo {
}
/* ------------------------------------------------ */