@charset "utf-8";


/*Font Awesomeの読み込み
---------------------------------------------------------------------------*/
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css");


/*Google Fontsの読み込み
---------------------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');


/*テンプレート専用cssファイルの読み込み
---------------------------------------------------------------------------*/
@import url("inview.css");


/*CSSカスタムプロパティ（サイト全体を一括管理する為の設定）
---------------------------------------------------------------------------*/
:root {
	--primary-color: #333;
	/*テンプレートのメインまたはアクセントカラー*/
	--primary-inverse-color: #fff;
	/*上のprimary-colorの対となる色*/

	--space-large: 8vw;
	/*主に余白の一括管理用。画面幅100%＝100vwです。*/
	--space-medium: 3vw;
	--space-small: 2vw;
	/*主に余白の一括管理用。画面幅100%＝100vwです。*/

	--main-BL: #0099E7;

	/*--main-LB:#c2e7eb;*/
	--main-LB: #fff;

	--sub-YE: #f7cc46;

	/*--bg-color:#FFFAF0;*/
	--bg-color: #fff;

	/*--sub-bg:#fcf3cd;　non_0411*/
	--sub-bg: #fff;

	/*--sub-bg2:#F9EDBB;*/
	--sub-bg2: #FFFAF0;
	;

	--btn-rgba-LB: rgba(194, 231, 235, 0.6);

	--bg-transparent: #ffffffcf;

	--border: #adadad;
	--grey: #f7f7f7;
	--dgl: #757F96;
}

/*opa1のキーフレーム設定（汎用的）
---------------------------------------------------------------------------*/
@keyframes opa1 {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

/*全体の設定
---------------------------------------------------------------------------*/
body * {
	box-sizing: border-box;
}

/* ナビゲーションが開いているときbodyを止める */

body {
	margin: 0;
	padding: 0;
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, "メイリオ", "Osaka", "MS PGothic", "ＭＳ Ｐゴシック", sans-serif;
	/*フォント種類*/
	-webkit-text-size-adjust: none;
	background: var(--bg-color);
	/*背景色*/
	color: var(--primary-color);
	/*文字色。冒頭で指定しているprimary-colorを読み込みます。*/
	line-height: 2;
	/*行間*/
	overflow-x: hidden;
	word-break: break-all;
	font-size: clamp(16px, 2.9vw, 17px);
	height: 100%;
}

/*section余白*/
section {
	padding-top: 3%;
	padding-bottom: 3%;
}

/*recruit_bosyu.phpページの余白*/
.recruit_bosyu_wrap section {
	padding-bottom: 3%;
}

/*sectionimgの余白*/
section.top_img {
	padding-bottom: 2rem;
}



@media screen and (min-width:768px) {
	section.top_img {
		padding-bottom: 3rem;
	}
}

/*リセット他*/
figure {
	margin: 0;
}

dd {
	margin: 0;
}

nav ul {
	list-style: none;
}

nav,
ul,
li,
ol {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

section li {
	margin-left: 1rem;
}

h1 {
	all: unset;
	display: block;
}

/*table全般の設定*/
table {
	border-collapse: collapse;
}

/*画像全般の設定*/
img {
	border: none;
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

/*iframeタグ*/
iframe {
	width: 100%;
}

/*input*/
input {
	font-size: 1rem;
}

/*inner*/
.inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 2%;
}

/*index-topicsinner*/
.index-topics.inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 2% 0;
}

/*背景色*/
.bgYE {
	background: var(--sub-bg);
}

.bgYE_entry {
	background: var(--sub-bg2);
}

.bgLB {
	background: var(--main-LB);
}

.bgGY {
	background: var(--grey);
}

/*下線*/
.undeline-WT {
	text-decoration: underline;
	text-decoration-color: var(--primary-inverse-color);
	text-decoration-thickness: 0.5em;
	text-decoration-skip-ink: none;
	text-underline-offset: -0.25em;
}

.undeline-YE {
	text-decoration: underline;
	text-decoration-color: var(--sub-bg);
	text-decoration-thickness: 0.5em;
	text-decoration-skip-ink: none;
	text-underline-offset: -0.25em;
}

/*btn設定*/
.btn {
	text-decoration: none;
	cursor: pointer;
	border-radius: 25px;
	width: 80%;
	margin: 1rem auto;
	padding: 0.5rem 2em;
	border: none;
	display: flex;
	justify-content: center;
	align-items: center;
}

.btn:hover {
	opacity: 0.7;
}

.btnBL {
	background: var(--main-BL);
	color: var(--primary-inverse-color);
}

a.btn.btnBL {
	line-height: 1.3;
}

/*応募btn*/
.oubo_btn {
	font-size: 1.5rem;
}

.oubo_btn:hover {
	letter-spacing: 0.16em;
	transform: translateY(-5px);
}

@media screen and (min-width:768px) {
	.btn {
		width: 60%;
		height: 3.5rem;
		max-width: 500px;
	}
}

.indent {
	text-indent: -1em;
	padding-left: 1em;
	display: inline-block;
}

span.small {
	font-size: 85%;
}

.other ul.YE li,
.other ul.BL li {
	position: relative;
	padding-left: 40px;
}

.other ul.YE li:before {
	color: var(--sub-YE);
	content: "・";
	font-size: 46px;
	position: absolute;
	top: -30px;
	left: 0;
}

.other ul.BL li:before {
	color: var(--main-BL);
	content: "・";
	font-size: 46px;
	position: absolute;
	top: -30px;
	left: 0;
}

/*リンクテキスト全般の設定
---------------------------------------------------------------------------*/
a {
	color: inherit;
	transition: 0.3s;
	/*hoverまでにかける時間。0.3秒。*/
	text-decoration: none;
}

/*マウスオン時*/
a:hover {
	text-decoration: none;
	/*下線を消す*/
	opacity: 0.9;
	/*色を90%だけ出す*/
}

/*container（サイト全体を囲むボックス）
---------------------------------------------------------------------------*/
#container {
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

/*header（ロゴが入った最上段のブロック）
---------------------------------------------------------------------------*/
header {
	position: absolute;
	z-index: 100;
	left: 0px;
	/*左からの配置場所の指定*/
	top: 0px;
	/*上からの配置場所の指定*/
	width: 100%;
	/*幅*/
	height: auto;
	/*ヘッダーの高さ*/
}

.other header {
	position: static;
	/* デフォルトの配置に戻す */
}

header .hd.wrap.flex {
	padding-left: 0.5em;
	padding-right: 0.5em;
	margin-left: auto;
	margin-right: auto;
	justify-content: space-between;
	align-items: center;
	padding-top: 0;
	padding-bottom: 1%;
}

/*ロゴ画像*/
#logo img {
	display: block;
	width: 80px;
}

@media (min-width: 440px) {
	#logo img {
		width: 100px;
	}
}

@media (min-width: 768px) {
	#logo img {
		width: 130px;
	}
}

@media (min-width: 1240px) {
	#logo img {
		width: 160px;
	}
}

/*h1テキスト*/
header h1.text {
	list-style: none;
	font-size: 0.4em;
	justify-content: center;
	align-items: center;
	font-weight: normal;
	width: 90%;
	margin-block-start: 0;
	margin-block-end: 0;
}

@media screen and (min-width:768px) {
	header h1.text {
		margin: 0 0 0 1%;
		padding: 0;
		width: 90%;
		justify-content: flex-start;
		font-size: 0.7em;
	}
}

/*ヘッダー内メニュー
---------------------------------------------------------------------------*/
/*900px未満では非表示*/
header nav ul {
	display: none;
}

/*画面幅900px以上の追加指定*/
@media screen and (min-width:900px) {

	/*メニューブロック全体の設定*/
	header>nav>ul {
		margin-right: 10vw;
		/*ハンバーガーアイコンに重ならないように余白*/
		display: flex;
		/*横並びにする*/
	}

	/*メニュー１個あたりの設定*/
	header nav li a {
		display: block;
		text-decoration: none;
		font-size: 0.9rem;
		/*文字サイズ90%*/
		padding: 0.5rem 1rem;
		/*メニュー内の余白。上下、左右へ。*/
	}

	/*ドロップダウンメニュー冒頭の矢印アイコン*/
	header nav i {
		padding-right: 0.5rem;
		/*右に空ける余白*/
	}

}

/*追加設定ここまで*/


/*ヘッダー内メニュー、開閉メニュー、共通のドロップダウン設定
---------------------------------------------------------------------------*/
header nav ul ul,
.small-screen #menubar ul ul {
	animation: opa1 0.5s 0.1s both;
	/*0.1秒待機後、0.5秒かけてフェードイン表示*/
}

/*メニューブロック初期設定
---------------------------------------------------------------------------*/
/*メニューをデフォルトで非表示*/
#menubar {
	display: none;
}

#menubar ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

#menubar a {
	display: block;
	text-decoration: none;
}

/*上で非表示にしたメニューを表示させる為の設定*/
.large-screen #menubar {
	display: block;
}

.small-screen #menubar.display-block {
	display: block;
}

/*3本バーをデフォルトで非表示*/
#menubar_hdr.display-none {
	display: none;
}

/*ドロップダウンをデフォルトで非表示*/
.ddmenu_parent ul {
	display: none;
}


/*開閉メニュー
---------------------------------------------------------------------------*/
/*animation1のキーフレーム設定*/
@keyframes animation1 {
	0% {
		right: -100vw;
	}

	100% {
		right: 0px;
	}
}

/*メニューブロック設定*/
.small-screen #menubar.display-block {
	position: fixed;
	overflow: auto;
	z-index: 1000;
	right: 0px;
	top: 0px;
	max-width: 800px;
	height: 100%;
	padding: 50px 10vw;
	/*ブロック内の余白。上、左右、下への順番。*/
	background: var(--primary-color);
	/*背景色*/
	color: var(--primary-inverse-color);
	/*文字色*/
	animation: animation1 0.2s both;
	/*animation1を実行する。0.2sは0.2秒の事。*/
	overflow-y: hidden;
}

/*メニュー１個あたりの設定*/
.small-screen #menubar nav ul li {
	margin: 0;
	/*メニューの外側に空けるスペース。上下、左右への順番。*/
}

.small-screen #menubar a {
	color: inherit;
	padding: 0.5rem 2rem 0.5rem 0.5rem;
	/*メニュー内の余白。上下、左右へ。*/
}

.small-screen #menubar i.fas.fa-angle-right {
	padding-right: 0.5rem;
}

/*３本バー（ハンバーガー）アイコン設定
---------------------------------------------------------------------------*/
/*３本バーを囲むブロック*/
#menubar_hdr {
	animation: opa1 0.3s 0.5s both;
	position: fixed;
	z-index: 9999;
	cursor: pointer;
	top: 5px;
	/*上からの配置場所*/
	right: 10px;
	width: 60px;
	height: 50px;
	padding: 15px;
	/*ここの20pxの数字を変更すると2本のバーの上下間のバランス調整ができます*/
	display: flex;
	justify-content: center;
	align-items: center;
	transition: transform 0.5s;
	mix-blend-mode: exclusion;
}

@media screen and (min-width: 900px) {
	#menubar_hdr {
		top: 34px;
	}
}

/*マウスオン時だけmix-blend-modeを無効に*/
#menubar_hdr.ham {
	mix-blend-mode: normal;
}

/*バーの設定*/
#menubar_hdr div {
	position: relative;
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

#menubar_hdr div span {
	display: block;
	width: 100%;
	height: 2px;
	/*線の太さ*/
	background-color: #fff;
	/*本来は線の色なのですが、mix-blend-modeを使っているので背後の色に合わせて変動します。変動したくないなら#menubar_hdrのmix-blend-modeの行を削除して下さい。*/
	transition: all 0.5s ease-in-out;
	position: absolute;
}

/*以下変更不要*/
#menubar_hdr div span:nth-child(1) {
	top: 0;
}

#menubar_hdr div span:nth-child(2) {
	top: 50%;
	transform: translateY(-50%);
}

#menubar_hdr div span:nth-child(3) {
	bottom: 0;
}

#menubar_hdr.ham div span:nth-child(1) {
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
}

#menubar_hdr.ham div span:nth-child(2) {
	opacity: 0;
}

#menubar_hdr.ham div span:nth-child(3) {
	top: 50%;
	transform: translateY(-50%) rotate(-45deg);
}

/*FV
---------------------------------------------------------------------------*/
#mainimg {
	position: relative;
	width: 100%;
	height: 95vh;
	overflow: hidden;
}

/*movie*/
.video_wrap {
	width: 100%;
	height: 100%;
}

video {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/*キャッチコピー*/
#mainimg span.img_com.flex {
	position: absolute;
	justify-content: flex-end;
	align-items: flex-start;
	text-align: left;
	height: 100%;
	font-size: clamp(30px, 4vw, 45px);
	left: 0;
	bottom: 20%;
	width: 100%;
	line-height: 1.5;
	flex-direction: column;
}

#mainimg span.img_com.flex p.catch {
	margin-block-start: 0;
	margin-block-end: 10px;
	background: #ffffffba;
	padding: 0.5rem 2rem;
	border-radius: 0 10px 10px 0;
}

/*
#mainimg span.RED {color: #ff0000;}
#mainimg span.PNK {color: #ff5bc5;}
#mainimg span.GRN {color: #34cd0a;}
#mainimg span.BLU {color: #009eff;}
*/
/*スクロールバー*/
.scrollbar-text {
	display: inline-block;
	position: absolute;
	padding: 0;
	color: #fff;
	font-size: 13px;
	line-height: 1;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	writing-mode: vertical-lr;
	left: 1.5rem;
	bottom: 3rem;
	transform: translateX(-50%);
}

.scrollbar {
	position: absolute;
	left: 0.5rem;
	transform: translateX(-50%);
	bottom: 0;
}

.scrollbar::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 1px;
	height: 120px;
	background: #fff;
	animation: liner 2.5s cubic-bezier(1, 0, 0, 1) infinite;
}

@keyframes liner {
	0% {
		transform: scale(1, 0);
		transform-origin: 0 0;
	}

	30% {
		transform: scale(1, 1);
		transform-origin: 0 0;
	}

	70% {
		transform: scale(1, 1);
		transform-origin: 0 100%;
	}

	100% {
		transform: scale(1, 0);
		transform-origin: 0 100%;
	}
}


/*main（メインコンテンツ）
---------------------------------------------------------------------------*/
main {
	flex: 1 0 auto;
	overflow: hidden;
	padding: 0;
}

/*h2見出し*/
h2 {
	z-index: 1;
}

main h2,
.entry h2 {
	margin: 0;
	padding: 0;
	font-size: clamp(21px, 2.9vw, 40px);
	font-weight: 600;
	/*h要素のデフォルトの太字を標準に*/
	margin-block-start: 0;
	margin-block-end: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	letter-spacing: 2px;
	color: var(--main-BL);
	line-height: 1.5;
	position: relative;
}

main h2 span {
	display: inline-block;
	letter-spacing: 0.1rem;
	padding-top: 2rem;
	font-size: clamp(16px, 2.9vw, 20px);
}

main h2::before,
.entry h2::before {
	content: "";
	position: absolute;
	bottom: -10px;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 120px;
	height: 15px;
	background: rgba(255, 204, 0, 0.5);
	border-radius: 50%;
	z-index: -1;
}

@media screen and (min-width:768px) {
	main h2::before {
		width: 220px;
		height: 30px;
		bottom: -20px;
	}
}

/*contactページh2*/
.contact h2:before,
.contact h2:after {
	border: 1.5px solid var(--main-BL);
	content: "";
	flex-grow: 1;
	margin-right: 1.5rem;
	margin-left: 1.5rem;
}

.contact h2 {
	margin: 0 auto 4%;
	font-size: clamp(20px, 2vw, 25px);
	text-align: center;
	display: flex;
	align-items: center;
	letter-spacing: 1.5px;
}

/*contactページh3*/
.contact h3,
.recruit_bosyu h3 {
	text-align: center;
	font-size: clamp(16px, 2vw, 23px);
	color: var(--main-BL);
	letter-spacing: 2px;
	border: 1px solid var(--border);
	border-radius: 50px;
	background: var(--white-color);
	padding: 1% 5%;
}

.contact h3 {
	margin: 0 auto 4%;
}

/*contactページa*/
a.tel {
	text-decoration: none;
}

/*h4見出し*/
main h4 {
	position: relative;
	padding: 16px;
	outline: 1px solid var(--primary-color);
	font-size: clamp(18px, 2.9vw, 23px);
	letter-spacing: 0.1em;
	font-weight: 600;
	display: block;
	box-sizing: border-box;
	max-width: 800px;
	text-align: center;
	margin: 1.5rem 0 1.2em;
	background: var(--primary-inverse-color);
	color: var(--main-BL);
	z-index: 1;
	line-height: 1.5;
}

/*お仕事紹介ページ　h4見出し*/
/*.works h4{
	line-height: .7;
	margin: 0 auto;
}*/
@media screen and (min-width:1024px) {
	.works h4 {
		line-height: 1.2;
	}
}

/*
@media screen and (max-width:1024px){
	.recruit h4 {
		margin: 0 auto 2rem;
	}
}*/

main h4:before {
	content: "";
	position: absolute;
	top: 6px;
	left: 6px;
	width: 100%;
	height: 100%;
	outline: 1px solid var(--primary-color);
	background: var(--primary-inverse-color);
	color: var(--main-BL);
	z-index: -1;
}

/*イラスト1*/
.about_torikumi_box:after {
	content: "";
	position: absolute;
	top: -45px;
	left: 20px;
	width: 65px;
	height: 65px;
	z-index: 1;
	/* h4 より前面に */
	background: url("../images/about_illust1.png") no-repeat center center / contain;
}

/*イラスト2*/
.about_torikumi_box2:after {
	content: "";
	position: absolute;
	top: -35px;
	left: 5px;
	width: 80px;
	height: 70px;
	z-index: 1;
	/* h4 より前面に */
	background: url("../images/about_illust2.png") no-repeat center center / contain;
}


/*イラスト3*/
.about_torikumi_box3:after {
	content: "";
	position: absolute;
	top: -55px;
	left: 15px;
	width: 55px;
	height: 80px;
	z-index: 1;
	/* h4 より前面に */
	background: url("../images/about_illust3.png") no-repeat center center / contain;
}

/*イラスト4*/
.about_torikumi_box4:after {
	content: "";
	position: absolute;
	top: -35px;
	left: 15px;
	width: 100px;
	height: 50px;
	z-index: 1;
	/* h4 より前面に */
	background: url("../images/about_illust4.png") no-repeat center center / contain;
}


/*index
---------------------------------------------------------------------------*/
/*about
------------------------------*/
.index-about.bgYE {
	overflow-x: visible;
	position: relative;
	margin-top: 0;
	height: auto;
}

.index-about h2::before {
	content: none;
}

.index-about .deco-text,
.index-about .illust {
	display: none;
}

.index-about h2 {
	align-items: flex-start;
}

.index-about .img_box {
	position: relative;
	opacity: 0.5;
}

.index-about .text_contencts {
	font-size: clamp(18px, 2.9vw, 19px);
	position: absolute;
	top: 0;
	width: 90%;
	margin: 0 auto;
	overflow-wrap: break-word;
}

@media screen and (min-width: 768px) {
	.index-about.bgYE {
		height: auto;
		margin-top: 10vw;
	}

	.index-about .deco-text,
	.index-about .illust {
		display: block;
	}

	.index-about .page_text {
		column-gap: 100px;
		align-items: center;
	}

	.index-about .img_box {
		width: 30%;
		position: initial;
		opacity: 1;
	}

	.index-about .text_contencts {
		flex: 1;
		position: initial;
	}

	.index-about .deco-text {
		position: absolute;
		right: 0;
		top: -19vw;
		color: var(--sub-bg);
		font-size: clamp(25px, 15vw, 10vw);
		line-height: 1;
		font-weight: 500;
	}

	.index-about .illust {
		position: absolute;
		left: 4vw;
		top: -10vw;
		width: 18vw;
	}
}

@media screen and (max-width: 400px) {
	.index-about.bgYE {
		overflow-x: visible;
		position: relative;
		margin-top: 0;
		height: auto;
		padding: 0px 0 10% 0;
	}
}

@media screen and (max-width: 399px) {
	.index-about.bgYE {
		overflow-x: visible;
		position: relative;
		margin-top: 0;
		height: auto;
		padding: 0px 0 25% 0;
	}
}



/*福祉用具事業
------------------------------*/
.index-work .pageContentsWrap {
	padding: 0;
}

/*採用情報
------------------------------*/
.index-recruit .pageContentsWrap {
	display: flex;
	justify-content: center;
	text-align: center;
	align-items: center;
	flex-direction: column;
	transform: translate(0, -35%);
}

img.oiwai_img {
    width: 65%;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
}

@media (max-width: 768px) {
	img.oiwai_img {
        width: 95%;
        margin-top: 7%;

	}
}

/*募集要項タブ*/
.tab {
    display: flex;
    flex-wrap: wrap;
    column-gap: .5%;
    text-align: center;
    justify-content: center;
}
.tab > input {
  display: none;
}
.tab > label {
  flex: 1;
  background-color: var(--main-LB);
  border: 1px solid var(--border);
  padding: 1em;
  cursor: pointer;
  text-align: center;
  width: 100%;
}

.tab > label::before {
  display: none;
}

/*三角形*/
.tab > input:checked + label::before {
  content: '';
  position: absolute;
  bottom: -8px;
  left: 50%;
  transform: translateX(-50%);
  width: 18px;
  height: 9px;
  background-color: var(--main-BL);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  display: block;
}

.tab .content {
    width: 100%;
    padding-top: 1em;
    order: 1;
}

#tab1:checked ~ .content1,
#tab2:checked ~ .content2,
#tab3:checked ~ .content3 {
display: block;
}

/*ボタンを選択したときに色がかわる*/
.tab > input:checked + label {
  background-color: var(--main-BL);
  color: var(--main-LB);
  position: relative;
  border: none;
}

/*ｈ4タブのスタイル打消し*/
.recruit_bosyu h4 {
        position: static;
        padding: initial;
        outline: none;
        font-size: inherit;
        display: block;
        box-sizing: border-box;
        max-width: none;
        text-align: left;
        margin: 0;
        background: none;
}

/*テーブル*/
.fukushi-recruit.flex {
    display: block;
}

.fukushi-recruit .ttl {
    font-weight: 500;
    line-height: 1.5rem;
    margin: 2rem 0 2.5rem;
    text-align: start;
}

.fukushi-recruit span.text {
    font-size: .9rem;
}

.fukushi-recruit th {
    vertical-align: top;
}

.fukushi-recruit td {
	text-align: start;
    padding-left: 2.5rem;
}

.fukushi-recruit tr {
    border-bottom: 1px solid var(--border);
	display: block;
    padding: 2%;
}
.fukushi-recruit span.title {
    display: block;
    width: 195px;
    text-align: start;
}

/*詳しくはこちら*/
a.recruit_bosyu_btn {
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    max-width: 230px;
    padding: 10px 0px 10px 25px;
    font-family: "Noto Sans Japanese";
    line-height: 1.8;
    text-decoration: none;
    color: var(--main-BL);
    transition: 0.3s ease-in-out;
    font-weight: 500;
	margin: 4% 0 1% 0 ;
	font-family: "Noto Sans JP";
}
a.recruit_bosyu_btn:before,
a.recruit_bosyu_btn:after {
  content: "";
  position: absolute;
  display: block;
  top: 50%;
}
a.recruit_bosyu_btn:before {
  width: 0.5rem;
  height: 0.5rem;
  left: 1.1rem;
  border-top: solid 2px var(--main-BL);
  border-right: solid 2px var(--main-BL);
  z-index: 2;
  transform: translateY(-50%) rotate(45deg);
  transition: all 0.3s;
}
a.recruit_bosyu_btn:after {
  left: 0;
  background: var(--btn-rgba-LB);
  z-index: -1;
  width: 3rem;
  height: 3rem;
  border-radius: 4rem;
  transform: translateY(-50%);
  transition: all 0.5s;
}
a.recruit_bosyu_btn:hover {
  color: var(--main-BL);
  font-weight: 500;
}
a.recruit_bosyu_btn:hover:before {
  left: 2.5rem;
  border-top: solid 2px var(--main-BL);
  border-right: solid 2px var(--main-BL);
}
a.recruit_bosyu_btn:hover:after {
  right: 0;
  width: 100%;
  background: var(--btn-rgba-LB);
}

@media (max-width: 1280px) {
	.index-recruit .pageContentsWrap {
		transform: translate(0, -25%);
	}
}

@media (max-width: 767px) {
	.index-recruit .pageContentsWrap {
		transform: translate(0, -40%);
	}

	.fukushi-recruit th {
		display: block;
	}

	.fukushi-recruit td {
		padding-left: initial;
	}
	.tab {
	flex-direction: column;
	}
	.tab > label {
    margin: .3rem;
	}
	
	/*三角形*/
	.tab > input:checked + label::before {
		row-gap: 5px;
		display: none;
	}

}

@media (max-width: 440px) {
	.index-recruit .pageContentsWrap {
		transform: translate(0, -25%);
	}
}


.index-recruit .img_all_box {
	width: 98%;
	transform: translate(0, -270%);
	display: flex;
	justify-content: center;
	text-align: center;
	align-items: center;

}

.index-recruit .page_all_text {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: left;
	height: auto;
	margin-top: 3%;
}

.index-recruit .page_all_text p {
	font-size: clamp(16px, 2.9vw, 19px);
	background: var(--bg-transparent);
	padding: 2rem;
	line-height: 2.3;
}

@media screen and (min-width:768px) {
	.index-recruit .img_all_box {
		width: 50%;
		transform: translate(0, -55%);
	}

	.index-recruit .page_all_text p {
		padding: 2rem 10rem;
	}
}

/*横サムネイルスライドショー*/
/*スライドショーブロック全てを囲むブロック*/
.slide-thumbnail-box {
	overflow-x: hidden;
	padding-left: 0;
	padding-right: 0;
	margin-top: -5rem;
}

@media screen and (max-width:767px) {
	.slide-thumbnail-box {
		margin-top: -9rem;
	}
}

@media screen and (max-width: 440px) {
	.slide-thumbnail-box {
		margin-top: -5rem;
	}
}


/*各スライドショーブロックを囲むブロック*/
.slide-thumbnail1 {
	margin-bottom: 6vw;
	/*下に空けるスペース。スライドショーを２個以上置く場合に上下の画像が重ならないようにする為。*/
}

/*画像たちを囲むブロック*/
.slide-thumbnail1 .img {
	display: flex;
}

/*画像*/
.slide-thumbnail1 .img img {
	width: 90%;
	background: var(--bg-transparent);
	border-radius: 50px;
}

/*偶数番目の画像の垂直位置を少しずらす。垂直位置を並べたいならこのブロックを削除。*/
.slide-thumbnail1 .img div:nth-of-type(even) {
	transform: translateY(3vw);
}

/*右から左へ、左から右へ、のアニメーション*/
.slide-thumbnail1 .rtl,
.slide-thumbnail1 .ltr {
	animation-timing-function: linear;
	animation-iteration-count: infinite;
}

.slide-thumbnail1 .rtl {
	animation-name: slide-rtl;
}

.slide-thumbnail1 .ltr {
	animation-name: slide-ltr;
}

@keyframes slide-rtl {
	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(-50%);
	}
}

@keyframes slide-ltr {
	0% {
		transform: translateX(-50%);
	}

	100% {
		transform: translateX(0);
	}
}

/*other
---------------------------------------------------------------------------*/
/*共通設定
------------------------------*/
/*top_img*/
.top_img .page_wrap.flex {
	flex-direction: row-reverse;
	justify-content: center;
	align-items: center;
}

.top_img .img_wrap {
	width: 50%;
}

.top_img .wrap {
	flex: 1;
}

.top_img .wrap p {
	font-size: clamp(21px, 2.9vw, 40px);
	font-weight: bold;
	letter-spacing: 2px;
	color: #25407d;
	line-height: 1.8;
	display: flex;
	justify-content: center;
	align-items: center;
}

.top_img .wrap {
	flex: 1;
	margin: 3% 0 0 0;
}

@media screen and (max-width:768px) {
	.top_img .wrap {
		margin: 10% 0 0 0;
	}

	.top_img .wrap p {
		line-height: 1.3;
	}
}



/*画像　インナーからはみ出し設定*/
.other .over .page_text .text_contencts {
	margin: 0 2rem;
}

.other .over .page_text2 .text_contencts {
	margin: 0 2rem;
}

.other .over .img_box,
.other .over .img_box2 {
	width: 70%;
	margin-bottom: 1rem;
}

@media screen and (min-width:767px) {

	/*.other .over .page_text2 .text_contencts {
		margin: 0 0 0 5em;
	}
	.other .over .page_text .text_contencts {
		margin: 0 5em 0 0;
	}
	*/
	.other .over .img_box2 img {
		/* border-radius: 30px 0px 0px 30px; */
		width: 100%;
	}

	.other .over .img_box img {
		/* border-radius: 0px 30px 30px 0px; */
		width: 100%;
	}

	.other .over .img_box,
	.other .over .img_box2 {
		width: calc((100% - 30px * 2) /2);
	}

	.works.over .img_box,
	.works.over .img_box2 {
		width: 70%;
		margin: 0 auto;
	}
}

/*お仕事紹介【福祉用具専門相談員】とは?こんなお仕事です！*/

@media screen and (min-width:1024px) {

	.works.over .img_box,
	.works.over .img_box2 {
		width: calc((100% - 30px * 2) /2);
	}

	.workspage_round img {
		border-radius: 0px 30px 30px 0px;
	}

}

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

	.works .img_box,
	.works .img_box2 {
		width: 70%;
		margin: 0 auto;
	}

	.workspage_round img {
		border-radius: 20px;
	}
}

/*私たちについて
------------------------------*/
.other .about .page_all_text {
	text-align: center;
}

/*事業理念*/
/*h3(サブタイトル)見出し*/
.other .about h3 {
	font-size: clamp(20px, 2.9vw, 25px);
	letter-spacing: 0.1em;
	font-weight: bold;
	display: block;
	box-sizing: border-box;
	text-align: center;
	color: var(--main-BL);
	margin: 0;
}

.other .about.message p.mainBL {
	font-size: clamp(18px, 2.9vw, 20px);
	font-weight: bold;
	display: block;
	box-sizing: border-box;
	color: #25407d;
	line-height: 1.8;
}

/*代表者メッセージ*/
.message figure {
	background: url(../images/about_illust5.png) no-repeat center center / contain;
}

@media (max-width: 768px) {
	.message figure {
		background: none;
	}
}

/*事業理念3つのC*/
.mainBL_box {
	background: #fff;
	padding: 1rem;
	display: inline-block;
	border-radius: 5px;
	width: 80%;
	margin: 2% auto;
}

/*事業理念はこちらのボタン*/
i.fas.fa-angle-double-right {
	padding-left: .5rem;
}

/*about.php用テスト*/
/*ホバーすると画像大きく*/
.torikumi img {
	transition: transform 0.4s ease;
}

.torikumi img:hover {
	transform: scale(1.15);
}

.torikumi .img_box,
.torikumi .img_box2 {
	overflow: hidden;
	border-radius: 20px;
}

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

	.torikumi .img_box2 {
		overflow: hidden;
		border-radius: 30px 0px 0px 30px;
	}

	.torikumi .img_box {
		overflow: hidden;
		border-radius: 0px 30px 30px 0px;
	}
}


/*福祉用具事業
------------------------------*/
/*こんなお悩みありませんか*/
.other .fukushi.rental.worries h2::before {
	content: none;
}

.other .fukushi.rental.worries h2 span {
	background: linear-gradient(transparent 67%, #fff 0%);
	font-size: clamp(30px, 2.9vw, 40px);
	padding: 0;
}

.other .fukushi.rental.worries .page_all_text {
	background: var(--bg-color);
	padding: 2%;
	border-radius: 20px;
	margin: 2% 0;
}

/*福祉用具レンタル*/
.other .fukushi h3 {
	padding: 0.3em 0;
	border-top: solid 2px var(--main-BL);
	border-bottom: solid 2px var(--main-BL);
	text-align: center;
	width: 60%;
	margin: 0 auto;
	color: var(--main-BL);
	font-size: clamp(20px, 2.9vw, 28px);
	margin-block-start: 0;
	margin-block-end: 1em;
	line-height: 1.7rem;
}

.other .fukushi table.table_fukushi-rental {
	width: 100%;
	text-align: left;
	border: 1px solid var(--border);
	font-size: 85%;
}

.other .fukushi table.table_fukushi-rental tr {
	display: flex;
	flex-direction: column;
}

.other .fukushi table.table_fukushi-rental th {
	display: block;
	width: auto;
	padding: 5px 10px;
	background: var(--grey);
}

.other .fukushi table.table_fukushi-rental td {
	display: block;
	width: auto;
	padding: 5px 10px;
	background: var(--primary-inverse-color);
}

.other .fukushi table.table_fukushi-rental td span.memo1,
.other .fukushi table.table_fukushi-rental td span.memo2 {
	color: var(--primary-inverse-color);
	padding: 0.5em;
	border-radius: 5px;
	font-size: 85%;
	margin: 0 0.5em;
}

.other .fukushi table.table_fukushi-rental td span.memo1 {
	background: #ff629b;
}

.other .fukushi table.table_fukushi-rental td span.memo2 {
	background: #477eff;
}


@media screen and (min-width:768px) {
	.other .fukushi table.table_fukushi-rental tr {
		border-bottom: 1px solid var(--border);
		flex-direction: row;
	}

	.other .fukushi table.table_fukushi-rental tr:last-of-type {
		border-bottom: none;
	}

	.other .fukushi table.table_fukushi-rental th {
		display: table-cell;
		width: 25%;
	}

	.other .fukushi table.table_fukushi-rental td {
		width: 25%;
		line-height: 2rem;
	}
}

/*レンタルのメリット*/
@media screen and (max-width:1279px) {
	.merit figure img {
		display: block;
		margin: 0 auto;
		width: 30%;
	}

	.fukushi .text_contencts h4,
	.recruit .text_contencts h4 {
		margin: 0 auto;
	}

	.rental p,
	.recruit p {
		max-width: 800px;
		display: block;
		margin: 2rem auto 0;
		margin: .5rem auto
	}
}

@media screen and (max-width:768px) {
	.merit figure img {
		width: 45%;
	}
}

/*特定福祉用具販売*/
.other .fukushi .box {
	padding: 1em;
	margin: 0.5em 0;
	font-weight: bold;
	background: var(--primary-inverse-color);
	border: solid 1px #f43443;
	border-radius: 10px;
	color: #f43443;
}

.other .fukushi .box span.small {
	color: var(--primary-color);
	font-weight: normal;
}

.other .fukushi table.table_fukushi-sale1 {
	width: 100%;
	text-align: left;
	font-size: 85%;
}

.other .fukushi table.table_fukushi-sale1 tr {
	border: 1px solid var(--border);
}

.other .fukushi table.table_fukushi-sale1 th,
.other .fukushi table.table_fukushi-sale1 td {
	display: block;
	border-spacing: 0px;
	width: auto;
	padding: 5px 10px;
}

.other .fukushi table.table_fukushi-sale1 th {
	background: var(--primary-inverse-color);
	background: var(--grey);
}

.other .fukushi table.table_fukushi-sale1 td {
	background: var(--primary-inverse-color);
}

/*住宅改修介護リフォーム 居宅介護住宅改修（介護予防住宅改修）*/
.reform figure {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 65%;
	margin: 0 auto;
}

@media screen and (min-width:768px) {
	.other .fukushi table.table_fukushi-sale1 th {
		width: 25%;
	}

	.other .fukushi table.table_fukushi-sale1 th,
	.other .fukushi table.table_fukushi-sale1 td {
		display: table-cell;
		padding: 5px 10px;
	}
}

@media screen and (min-width:1280px) {
	.reform figure {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		margin: 0 auto;
	}
}

/*ご利用方法*/
.other .fukushi .flow-wrap {
	counter-reset: count;
	margin: 2em 0 0;
	position: relative;
}

.other .fukushi .flow-content {
	padding: 0 0 1.3em 2em;
	margin: 0;
	position: relative;
}

.other .fukushi .flow-content::before {
	content: "";
	display: block;
	width: 13px;
	height: 13px;
	background: var(--main-BL);
	border: solid 3px var(--main-LB);
	border-radius: 50%;
	position: absolute;
	top: 3px;
	left: 3px;
	box-shadow: 0 0 0 2px var(--main-BL);
}

.other .fukushi .flow-content::after {
	content: "";
	display: block;
	height: calc(100% - 35px);
	border-left: solid 2px var(--border);
	position: absolute;
	top: 30px;
	left: 10px;
}

.other .fukushi .flow-title {
	font-weight: bold;
	font-size: 120%;
}

.other .fukushi .flow-label {
	font-weight: bold;
	width: 10%;
}

.other .fukushi .flow-label::after {
	counter-increment: count;
	content: counter(count);
	position: relative;
	left: .3em;
}

.other .fukushi .flow-body span.red {
	color: #f43443;
	font-size: 95%;
}

.other .fukushi .flow-wrap> :last-of-type::after {
	display: none;
}

/*仕事紹介
------------------------------*/
/*主な仕事内容*/
.other .works.content .wrap {
	border-radius: 30px;
	padding: 3%;
	background: var(--bg-color);
	display: flex;
	justify-content: center;
	flex-direction: column;
	margin: 0 auto;
	width: 70%;
}


@media screen and (max-width:768px) {
	.other .works.content .wrap {
		width: 95%;
	}
}

.other .works.content .wrap br {
	display: none;
}

.other .works.content .wrap span {
	font-size: clamp(20px, 2.9vw, 25px);
	padding-left: 40px;
	border-bottom: 1px dotted var(--border);
	padding-bottom: .3rem;
}

/*一日の流れ*/
.other .works .time-schedule {
	list-style: none;
	margin: 0 auto 0 6em;
	padding-left: 20px;
	border-left: 6px solid var(--main-BL);
	box-sizing: border-box;
	flex-direction: column;
}

.other .works .time-schedule li {
	width: 100%;
	margin: 0 0;
	padding: 5px 0;
	position: relative;
}

.other .works .time-schedule span.time {
	width: 5em;
	display: inline-block;
	margin-left: -8em;
	padding: 0 0 5px;
	margin-top: 15px;
	vertical-align: top;
	position: relative;
	box-sizing: border-box;
}

.other .works .time-schedule span.time::after {
	content: "";
	position: absolute;
	right: -38px;
	top: 5px;
	background: var(--main-BL);
	width: 20px;
	height: 20px;
	border-radius: 10px;
}

.other .works .time-schedule .sch_box {
	display: inline-block;
	width: 95%;
	margin-left: 30px;
	padding: 15px 10px 15px 5%;
	vertical-align: middle;
	box-sizing: border-box;
	border-radius: 6px;
}

/*働く仲間を知る*/
.other .works .voice_list.flex {
	flex-direction: column;
	gap: 50px;
}

.other .works .voice_list .name span {
	font-size: 1.5em;
	letter-spacing: 3px;
	font-weight: bold;
	padding-right: 1em;
}

.other .works .voice_list .wrap .copy-wrap {
	color: var(--main-BL);
	font-weight: 600;
	font-size: 1.5em;
	margin-bottom: 0.5em;
}

.other .works .voice_list .name {
	margin-bottom: 0.5em;
	border-bottom: 5px solid #b2d5de;

}

.other .works .voice_list .wrap .ttl {
	margin-bottom: 0.5em;
	border-bottom: 3px dotted #b2d5de;
	font-weight: bold;
}

.other .works .voice_list .wrap p.com {
	margin: 0 0 1em;
}

.other .works .voice_list .wrap .shikaku {
	border: 1px solid #000;
	padding: 5px 20px;
}

/**画像がある場合**/
.other .works .voice_list .wrap.flex {
	gap: 80px;
}

.other .works .voice_list .wrap.flex:nth-of-type(even) {
	flex-direction: row-reverse;
}

.other .works .voice_list .img-wrap {
	height: 100%;
	position: relative;
}

.other .works .voice_list .text-wrap.flex {
	flex-direction: column;
	flex: 1;
}

@media screen and (max-width:1024px) {
	.other .works .voice_list .wrap.flex {
		gap: 40px;
		flex-direction: column;
		align-items: center;
	}

	.other .works .voice_list .wrap.flex:nth-of-type(even) {
		flex-direction: column;
	}

	.works_introduce figure {
		margin: 0 auto;
		width: 65%;
	}
}

/*働く環境
------------------------------*/
/*ハートサービス4つの特徴特徴*/
.other .recruit .text_contencts span.wrap,
.works span.wrap {
	margin: 0 auto 0.5em;
	color: var(--main-BL);
	max-width: 500px;
	display: inline-block;
	border-top: 2px solid var(--main-BL);
	border-bottom: 2px solid var(--main-BL);
	padding: .5rem;
	text-align: center;
	font-size: clamp(1.2rem, 1.5vw, 1.5rem);
}

.other .recruit .img_box figure,
.other .recruit .img_box2 figure {
	position: relative;
	overflow: hidden;
	padding-top: 60%;
	margin: 10px 5px;
	height: 20em;
}

.other .recruit .img_box img,
.other .recruit .img_box2 img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	object-fit: cover;
}

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

	.other .recruit .img_box img,
	.other .recruit .img_box2 img {
		width: 70%;
		height: auto;
	}

	.other .recruit .text_contencts span.wrap {
		margin: 1rem auto 0.5em;
	}
}

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

	.other .recruit .img_box img,
	.other .recruit .img_box2 img {
		width: 100%;
		height: 100%;
	}
}


/*テーブル
---------------------------------------------------------------------------*/
.about.profile .table_wrap {
	background: var(--bg-transparent);
	border-radius: 30px;
	padding: 3%;
	margin-bottom: 2%;
}

/*会社概要
------------------------------*/
table.table_profile {
	width: 100%;
	text-align: left;
	margin: 0 auto;
}

table.table_profile tr {
	border-bottom: 1px solid #adadad;
	display: block;
}

table.table_profile th,
table.table_profile td {
	display: block;
	border-spacing: 0px;
	width: auto;
	padding: 10px;
}

table.table_profile tr:last-of-type {
	border-bottom: none;
}

@media screen and (min-width:768px) {
	table.table_profile {
		width: 90%;
	}

	table.table_profile tr {
		display: flex;
		align-items: flex-start;
	}

	table.table_profile th {
		width: 20%;
	}

	table.table_profile th,
	table.table_profile td {
		display: table-cell;
	}
}

/*沿革
------------------------------*/
table.table_enkaku {
	width: 100%;
	text-align: left;
	margin: 0 auto;
}

table.table_enkaku tr {
	border-bottom: 1px solid #adadad;
}

table.table_enkaku th,
table.table_enkaku td {
	display: block;
	border-spacing: 0px;
	width: auto;
}

table.table_enkaku th {
	padding: 10px 10px 0;
}

table.table_enkaku td {
	padding: 0 10px 10px;
}

table.table_enkaku tr:last-of-type {
	border-bottom: none;
}

@media screen and (min-width:768px) {
	table.table_enkaku th {
		width: 20%;
		padding-left: 5%;
		font-weight: normal;
	}

	table.table_enkaku th,
	table.table_enkaku td {
		display: table-cell;
		padding: 10px;
	}
}

/*更新履歴設定
---------------------------------------------------------------------------*/
/*index
------------------------------*/
.home .topics_wrap.flex {
	flex-direction: column;
	margin-bottom: 4%;
}

.home .topics_wrap .index_scroll {
	height: 300px;
	overflow-y: scroll;
	padding: 2%;
	background: var(--primary-inverse-color);
	margin-bottom: 1.5rem;
}

/*スクロールバーの横幅指定*/
.home .topics_wrap .index_scroll::-webkit-scrollbar {
	width: 15px;
}

/*スクロールバーの背景色・角丸指定*/
.home .topics_wrap .index_scroll::-webkit-scrollbar-track {
	border-radius: 10px;
	background: var(--grey);
}

/*スクロールバーの色・角丸指定*/
.home .topics_wrap .index_scroll::-webkit-scrollbar-thumb {
	border-radius: 10px;
	background: var(--main-BL);
}

/*フッター設定
---------------------------------------------------------------------------*/
footer {
	background: var(--primary-inverse-color);
}

footer a {
	display: block;
	text-decoration: none;
	text-align: center;
	font-size: 95%;
}

/*フッター左よせ*/
.inner.flex1 {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	padding: 1rem;
	border-radius: 10px;
	width: fit-content;
	flex-direction: column;
	flex-wrap: wrap;
	padding: 3%;
	border-radius: 30px;
	display: flex;
	font-size: 90%;
	height: 95px;
	width: 70%;
	margin: 0;
}

/*entry文言の位置*/
.entry .page_all_text p {
	text-align: center;
	margin: 0 auto;
}

.entry .page_all_text p {
	text-align: center;
	margin: 0 auto;
}

/*各事業所リンクエリア*/
footer .group_link h2 {
	text-align: left;
	color: var(--border);
	display: block;
	margin: 0 auto 1%;
	font-size: clamp(20px, 2vw, 25px);
}

footer .group_link h2:before,
footer .group_link h2:after {
	content: none;
}

.group_link {
	background-color: var(--grey);
	padding-bottom: clamp(2.5rem, 2vw, 5rem);
	padding-top: clamp(1.5rem, 2vw, 5rem);
}

/*各事業所リンクいimgレスポンシブサイズ*/
@media screen and (min-width: 767px) {
	ul.group-banner_wrap {
		max-width: 65%;
	}
}

/*footermenu*/
footer .footernav .inner {
	justify-content: space-between;
	padding: 2%;
}

footer .footer-menu_wrap {
	display: none;
}

footer .footernav .sns_block {
	justify-content: flex-end;
	margin: 0 auto;
}

@media screen and (min-width:1024px) {
	footer .footer-menu_wrap {
		display: flex;
		justify-content: space-between;
		width: 90%;
	}

	footer .footernav .sns_block {
		margin: 0;
	}
}

/*Copyright*/
.footerCopyright {
	line-height: normal;
	text-align: center;
	font-size: 70%;
}

footer a.copyright {
	padding: 1em;
}

/*フローティングバナー TOP募集要項バナー
---------------------------------------------------------------------------*/
.bosyuyoukou_top_banner {
	position: fixed;
	top: 10%;
	right: .5%;
	z-index: 999;
	text-align: center;
}

img.bosyuyoukou_top_img {
	width: 110px;
	height: 110px;
}


.floating-banner {
	position: fixed;
	z-index: 999;
	right: 0;
	bottom: 0;
}

.floating-banner img.floating-banner_img {
	width: 200px;
}

.floating-banner a:hover {
	opacity: 0.8;
}

@media screen and (min-width:768px) {
	.floating-banner {
		bottom: 8%;
	}

	.floating-banner img.floating-banner_img {
		right: 0.5rem;
		width: 370px;
	}
}

/*PAGE TOP（↑）設定
---------------------------------------------------------------------------*/
	.pagetop-show {
		display: block;
	}
	/*ボタンの設定*/
	.pagetop a {
		display: block;
		text-decoration: none;
		text-align: center;
		z-index: 99;
		position: fixed;/*スクロールに追従しない(固定で表示)為の設定*/
		right: 20px;
		bottom: 100px;
		color: #fff;
		font-size: 1.5rem;
		background: rgba(0, 0, 0, 0.2);
		width: 35px;
		line-height: 35px;
		border-radius: 50%;
	}
	.pagetop i.fas.fa-angle-double-up {
		display: inline-block;
	}

@media screen and (min-width:768px) {
	.pagetop a {
		right: 45px;
		bottom: 15px;
		width: 50px;
		line-height: 50px;
	}
}


/*仕事紹介を見るボタン
---------------------------------------------------------------------------*/
.recruit_syoukai_banner {
	position: relative;
	height: 370px;
	background: transparent url(../images/banner3.jpg) no-repeat scroll center center / cover;
	box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.2);
	background-color: rgba(255, 255, 255, 0.3);
	background-blend-mode: lighten;
}

.recruit_syoukai_banner_btn {
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 72%;
}

.recruit_syoukai_banner_btn a {
	display: flex;
	justify-content: center;
	padding: 1em 0;
	color: var(--main-BL);
	background-color: rgba(194, 231, 235, 0.85);
	border-radius: 200px;
	font-size: .86667rem;
	line-height: 1.5;
	font-size: 1.6rem;
}

.recruit_syoukai_hidden {
    overflow: hidden;
}

@media screen and (min-width: 769px) {
	.recruit_syoukai_banner_btn {
		width: 480px;
	}
}

.recruit_syoukai_banner_btn:hover {
	letter-spacing: 0.16em;
}

.recruit_syoukai_banner_btn a:hover {
	transform: translateY(-5px);
}

/*応募要項フォーム
---------------------------------------------------------------------------*/
.gird_wrap {
	display: flex;
	margin: 0 auto;
	gap: 5px;
	padding: 1%;
	width: 100%;
}

.gird_btn {
	display: flex;
	justify-content: center;
	padding: 1em 2rem;
	color: #0099E7;
	;
	background-color: rgba(194, 231, 235, 0.85);
	border-radius: 200px;
	font-size: .86667rem;
	line-height: 1.5;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.9rem;
	transition: all 0.3s ease;
	transform: scale(1);
}

.gird_btn:hover {
	letter-spacing: 0.16em;
	transform: translateY(-5px);
}

.gird_inner1 {
	background-image: url(../images/banna.jpg);
}

.gird_inner2 {
	background-image: url(../images/bosyu_youko2.jpg);
}

.gird_inner1,
.gird_inner2 {
	display: grid;
	place-items: center;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	width: 100%;
	height: 250px;
	border-radius: 10px;
	box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.2);
}

/* 応募要項　TOP画像サイズ・高さ */
@media screen and (max-width:767px) {
	.gird_wrap {
		display: block;
	}

	.gird_inner1,
	.gird_inner2 {
		height: 150px;
	}
}

.ani_01 {
	opacity: 0;
	transform: translateY(20px);
	animation: fadeInUp 1.5s ease-out forwards;
	animation-name: ani_01;
}

/* アニメーション定義 */
@keyframes ani_01 {
	from {
		opacity: 0;
		transform: translateY(20px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/*募集要項*/
span.center.tx_bl {
	color: var(--main-BL);
}

span.center {
	display: flex;
	justify-content: center;
	align-items: center;
}

.markerBL {
	background: linear-gradient(transparent 39%, var(--main-BL) 90%);
}

.markerYE {
	background: linear-gradient(transparent 39%, var(--sub-YE) 90%);
}


/*その他追記ishizawa*/

/*下部余白*/
section.pp,
.site_map,
.topics_all,
.contact {
	margin-bottom: clamp(2rem, 2vw, 5rem);
	/*margin-top: clamp(2rem, 2vw, 5rem);*/
}

/*背景色*/
.text_content {
	background-color: var(--primary-inverse-color);
	padding: 0 2% 2%;
	border-radius: 20px;
}

/*募集についてボタン*/
.syousai_btn {
	background: #fff;
	text-align: center;
	font-size: 1.5rem;
	color: #0357AF;
	margin: 1rem;
	padding: 1%;
	line-height: 2rem;
	border-radius: 65px;
}


/*aboutページ行間*/
@media screen and (min-width:768px) {
	.about p {
		line-height: 1.4rem;
	}
}

@media screen and (min-width:1024px) {
	.about p {
		line-height: 1.7rem;
	}
}

/*ログイン画面*/
table.bgcolor {
    display: grid;
    width: 100%;
    margin: 1%;
}