@charset "utf-8";

/*
	* 顧客オリジナルスタイルシート
	* サイト全体に関するスタイル
	* ver1
	* Copyright (C) ●●など
	* 更新履歴
		└ 
*/
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	初期設定（不要なものは削除）
//////////////////////////////////////////////////////////////////////////////////////////////////// */
/* ******************************************************************************************
	root設定（カラー、基準幅、ベースフォント適宜修正）
****************************************************************************************** */
:root{
	--black: #2b2d42;
	--mainColor: #03a571;
	--mainColorLight: #35b78d;
	--mainColorRecruit: #0061e3;
	--accentColor: #004ea2;
	--accentColorRecruit: #d8df53;
	--lightGray: #f8f8f8;
	--gray: #f0f2ef;
	--darkGray: #b1b1b1;
	--pink: #f58c8e;
	--lightBlue : #3ebde1;
	--purple: #8090c6;
	--lightBrown: #bba165;


	/* 基準幅設定 */
	--vw-base: 1920;

	/* ベースフォント設定（数値のみ） */
	--fontSizeBase: 16.5;/* パソコン */
	--fontSizeBaseSp: 14;/* スマホ */

	--fontSize10: calc(10 / var(--fontSizeBase) * 1rem);
	--fontSize11: calc(11 / var(--fontSizeBase) * 1rem);
	--fontSize12: calc(12 / var(--fontSizeBase) * 1rem);
	--fontSize13: calc(13 / var(--fontSizeBase) * 1rem);
	--fontSize14: calc(14 / var(--fontSizeBase) * 1rem);
	--fontSize15: calc(15 / var(--fontSizeBase) * 1rem);
	--fontSize16: calc(16 / var(--fontSizeBase) * 1rem);
	--fontSize17: calc(17 / var(--fontSizeBase) * 1rem);
	--fontSize18: calc(18 / var(--fontSizeBase) * 1rem);
	--fontSize19: calc(19 / var(--fontSizeBase) * 1rem);
	--fontSize20: calc(20 / var(--fontSizeBase) * 1rem);
	--fontSize21: calc(21 / var(--fontSizeBase) * 1rem);
	--fontSize22: calc(22 / var(--fontSizeBase) * 1rem);
	--fontSize23: calc(23 / var(--fontSizeBase) * 1rem);
	--fontSize24: calc(24 / var(--fontSizeBase) * 1rem);
	--fontSize25: calc(25 / var(--fontSizeBase) * 1rem);
	--fontSize26: calc(26 / var(--fontSizeBase) * 1rem);
	--fontSize27: calc(27 / var(--fontSizeBase) * 1rem);
	--fontSize28: calc(28 / var(--fontSizeBase) * 1rem);
	--fontSize29: calc(29 / var(--fontSizeBase) * 1rem);
	--fontSize30: calc(30 / var(--fontSizeBase) * 1rem);
	--fontSize31: calc(31 / var(--fontSizeBase) * 1rem);
	--fontSize32: calc(32 / var(--fontSizeBase) * 1rem);
	--fontSize33: calc(33 / var(--fontSizeBase) * 1rem);
	--fontSize34: calc(34 / var(--fontSizeBase) * 1rem);
	--fontSize35: calc(35 / var(--fontSizeBase) * 1rem);
	--fontSize36: calc(36 / var(--fontSizeBase) * 1rem);
	--fontSize37: calc(37 / var(--fontSizeBase) * 1rem);
	--fontSize38: calc(38 / var(--fontSizeBase) * 1rem);
	--fontSize39: calc(39 / var(--fontSizeBase) * 1rem);
	--fontSize40: calc(40 / var(--fontSizeBase) * 1rem);
	--fontSize41: calc(41 / var(--fontSizeBase) * 1rem);
	--fontSize42: calc(42 / var(--fontSizeBase) * 1rem);
	--fontSize43: calc(43 / var(--fontSizeBase) * 1rem);
	--fontSize44: calc(44 / var(--fontSizeBase) * 1rem);
	--fontSize45: calc(45 / var(--fontSizeBase) * 1rem);
	--fontSize46: calc(46 / var(--fontSizeBase) * 1rem);
	--fontSize47: calc(47 / var(--fontSizeBase) * 1rem);
	--fontSize48: calc(48 / var(--fontSizeBase) * 1rem);
	--fontSize49: calc(49 / var(--fontSizeBase) * 1rem);
	--fontSize50: calc(50 / var(--fontSizeBase) * 1rem);
	--fontSize51: calc(51 / var(--fontSizeBase) * 1rem);
	--fontSize52: calc(52 / var(--fontSizeBase) * 1rem);
	--fontSize53: calc(53 / var(--fontSizeBase) * 1rem);
	--fontSize54: calc(54 / var(--fontSizeBase) * 1rem);
	--fontSize55: calc(55 / var(--fontSizeBase) * 1rem);
	--fontSize56: calc(56 / var(--fontSizeBase) * 1rem);
	--fontSize57: calc(57 / var(--fontSizeBase) * 1rem);
	--fontSize58: calc(58 / var(--fontSizeBase) * 1rem);
	--fontSize59: calc(59 / var(--fontSizeBase) * 1rem);
	--fontSize60: calc(60 / var(--fontSizeBase) * 1rem);
	--fontSize61: calc(61 / var(--fontSizeBase) * 1rem);
	--fontSize62: calc(62 / var(--fontSizeBase) * 1rem);
	--fontSize63: calc(63 / var(--fontSizeBase) * 1rem);
	--fontSize64: calc(64 / var(--fontSizeBase) * 1rem);
	--fontSize65: calc(65 / var(--fontSizeBase) * 1rem);
	--fontSize66: calc(66 / var(--fontSizeBase) * 1rem);
	--fontSize67: calc(67 / var(--fontSizeBase) * 1rem);
	--fontSize68: calc(68 / var(--fontSizeBase) * 1rem);
	--fontSize69: calc(69 / var(--fontSizeBase) * 1rem);
	--fontSize70: calc(70 / var(--fontSizeBase) * 1rem);
}
@media screen and (max-width:576px){
	:root{
		--fontSize10: calc(10 / var(--fontSizeBaseSp) * 1rem);
		--fontSize11: calc(11 / var(--fontSizeBaseSp) * 1rem);
		--fontSize12: calc(12 / var(--fontSizeBaseSp) * 1rem);
		--fontSize13: calc(13 / var(--fontSizeBaseSp) * 1rem);
		--fontSize14: calc(14 / var(--fontSizeBaseSp) * 1rem);
		--fontSize15: calc(15 / var(--fontSizeBaseSp) * 1rem);
		--fontSize16: calc(16 / var(--fontSizeBaseSp) * 1rem);
		--fontSize17: calc(17 / var(--fontSizeBaseSp) * 1rem);
		--fontSize18: calc(18 / var(--fontSizeBaseSp) * 1rem);
		--fontSize19: calc(19 / var(--fontSizeBaseSp) * 1rem);
		--fontSize20: calc(20 / var(--fontSizeBaseSp) * 1rem);
		--fontSize21: calc(21 / var(--fontSizeBaseSp) * 1rem);
		--fontSize22: calc(22 / var(--fontSizeBaseSp) * 1rem);
		--fontSize23: calc(23 / var(--fontSizeBaseSp) * 1rem);
		--fontSize24: calc(24 / var(--fontSizeBaseSp) * 1rem);
		--fontSize25: calc(25 / var(--fontSizeBaseSp) * 1rem);
		--fontSize26: calc(26 / var(--fontSizeBaseSp) * 1rem);
		--fontSize27: calc(27 / var(--fontSizeBaseSp) * 1rem);
		--fontSize28: calc(28 / var(--fontSizeBaseSp) * 1rem);
		--fontSize29: calc(29 / var(--fontSizeBaseSp) * 1rem);
		--fontSize30: calc(30 / var(--fontSizeBaseSp) * 1rem);
		--fontSize31: calc(31 / var(--fontSizeBaseSp) * 1rem);
		--fontSize32: calc(32 / var(--fontSizeBaseSp) * 1rem);
		--fontSize33: calc(33 / var(--fontSizeBaseSp) * 1rem);
		--fontSize34: calc(34 / var(--fontSizeBaseSp) * 1rem);
		--fontSize35: calc(35 / var(--fontSizeBaseSp) * 1rem);
		--fontSize36: calc(36 / var(--fontSizeBaseSp) * 1rem);
		--fontSize37: calc(37 / var(--fontSizeBaseSp) * 1rem);
		--fontSize38: calc(38 / var(--fontSizeBaseSp) * 1rem);
		--fontSize39: calc(39 / var(--fontSizeBaseSp) * 1rem);
		--fontSize40: calc(40 / var(--fontSizeBaseSp) * 1rem);
		--fontSize41: calc(41 / var(--fontSizeBaseSp) * 1rem);
		--fontSize42: calc(42 / var(--fontSizeBaseSp) * 1rem);
		--fontSize43: calc(43 / var(--fontSizeBaseSp) * 1rem);
		--fontSize44: calc(44 / var(--fontSizeBaseSp) * 1rem);
		--fontSize45: calc(45 / var(--fontSizeBaseSp) * 1rem);
		--fontSize46: calc(46 / var(--fontSizeBaseSp) * 1rem);
		--fontSize47: calc(47 / var(--fontSizeBaseSp) * 1rem);
		--fontSize48: calc(48 / var(--fontSizeBaseSp) * 1rem);
		--fontSize49: calc(49 / var(--fontSizeBaseSp) * 1rem);
		--fontSize50: calc(50 / var(--fontSizeBaseSp) * 1rem);
		--fontSize51: calc(51 / var(--fontSizeBaseSp) * 1rem);
		--fontSize52: calc(52 / var(--fontSizeBaseSp) * 1rem);
		--fontSize53: calc(53 / var(--fontSizeBaseSp) * 1rem);
		--fontSize54: calc(54 / var(--fontSizeBaseSp) * 1rem);
		--fontSize55: calc(55 / var(--fontSizeBaseSp) * 1rem);
		--fontSize56: calc(56 / var(--fontSizeBaseSp) * 1rem);
		--fontSize57: calc(57 / var(--fontSizeBaseSp) * 1rem);
		--fontSize58: calc(58 / var(--fontSizeBaseSp) * 1rem);
		--fontSize59: calc(59 / var(--fontSizeBaseSp) * 1rem);
		--fontSize60: calc(60 / var(--fontSizeBaseSp) * 1rem);
		--fontSize61: calc(61 / var(--fontSizeBaseSp) * 1rem);
		--fontSize62: calc(62 / var(--fontSizeBaseSp) * 1rem);
		--fontSize63: calc(63 / var(--fontSizeBaseSp) * 1rem);
		--fontSize64: calc(64 / var(--fontSizeBaseSp) * 1rem);
		--fontSize65: calc(65 / var(--fontSizeBaseSp) * 1rem);
		--fontSize66: calc(66 / var(--fontSizeBaseSp) * 1rem);
		--fontSize67: calc(67 / var(--fontSizeBaseSp) * 1rem);
		--fontSize68: calc(68 / var(--fontSizeBaseSp) * 1rem);
		--fontSize69: calc(69 / var(--fontSizeBaseSp) * 1rem);
		--fontSize70: calc(70 / var(--fontSizeBaseSp) * 1rem);
	}
}
/* ******************************************************************************************
	ベースフォント設定
****************************************************************************************** */
html{
	font-size: calc(var(--fontSizeBase) * 1px);/* px単位追加 */
}
@media screen and (max-width:576px){
	html{
		font-size: calc(var(--fontSizeBaseSp) * 1px);/* px単位追加 */
	}	
}
/* ******************************************************************************************
	body設定
****************************************************************************************** */
body{
	/* 文字色設定 */
	color: var(--black);
	/* 行間設定 */
	line-height: 1.8;
	/* 間隔設定 */
	letter-spacing: 0.05em;
	/* フォント設定 */
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	/* 背景設定 */
	background-color: var(--baseColor);
	/* デフォルト設定 */
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
	word-break: break-word;
	overflow-wrap: break-word;
}
/* ******************************************************************************************
	テキスト設定
****************************************************************************************** */
/* pの中にrubyがあれば余白をあける */
p:has(>ruby){
	line-height: 2;
}
/* ******************************************************************************************
	画像設定
****************************************************************************************** */
img{
	vertical-align: bottom;/* 余白防止 */
	max-width: 100%;/* 画像のデフォルトサイズ */
	height: auto;
	object-fit: cover;
}
/* ******************************************************************************************
	フォーム設定（適宜設定）
****************************************************************************************** */
/* 共通 */
input,
textarea,
select,
button {
    box-sizing: border-box;
    margin: 0;
    font: inherit;
    line-height: 1.5;
    color: var(--black, #333);
}
/* テキスト入力 */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="url"],
input[type="number"],
input[type="search"],
input[type="tel"],
textarea {
    padding: 0.2em 0.45em;
    border: 1px solid #ccc;
    background-color: #fff;
}
/* textarea */
textarea {
    resize: vertical;
    vertical-align: top;
}
/* select */
select {
    padding: 0.2em 0.45em;
    border: 1px solid #ccc;
    border-radius: 4px;
    background-color: #fff;
    cursor: pointer;
    appearance: auto;
}
/* button */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
    display: inline-block;
    padding: 0.5em 1em;
    border: 1px solid #ccc;
    /* border-radius: 4px; */
    background-color: #e9e9ed;
    color: var(--black, #333);
    text-align: center;
    cursor: pointer;
    appearance: none;
}
/* hover */
button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
    background-color: #dcdce1;
    border-color: #bbb;
}
/* disabled */
input:disabled,
textarea:disabled,
select:disabled,
button:disabled {
    background-color: #e9ecef;
    color: #6c757d;
    cursor: not-allowed;
    opacity: 0.7;
}
/* placeholder */
input::placeholder,
textarea::placeholder {
    color: #6c757d;
    opacity: 1;
}
/* checkbox / radio */
input[type="checkbox"],
input[type="radio"] {
    margin: 0;
}
/* fieldset */
fieldset {
    margin: 0 0 1.5em;
    padding: 1em 1.5em;
    border: 1px solid #ccc;
    border-radius: 4px;
}
legend {
    padding: 0 0.5em;
    color: var(--black, #333);
}
/* ******************************************************************************************
    リンク設定
****************************************************************************************** */
a {
    display: inline-block;
    color: var(--black);
    /* text-decoration: underline; */
    text-underline-offset: .2rem;
    text-decoration-thickness: 1px;
    text-decoration-skip-ink: none;
}
@media (hover: hover) and (pointer: fine) {
    /* マウスのようにホバーできて、細かいポインター操作ができる環境 */
    a:hover {
        text-underline-offset: .2rem;
        opacity: .8;
		transition: all .2s;
    }
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    フォーカス設定
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:not([tabindex="-1"]):focus-visible {
    outline: 2px solid var(--black, #333);
    outline-offset: 2px;
}
/* 色設定 */
/* a{
	color: #003399;
	text-decoration: underline;
	position: relative;
}
a:visited {
    color: #800080;
}
a:hover {
    color: #0000CC;
}
a:active {
    color: #FF0000;
} */
/* ******************************************************************************************
	リスト設定
****************************************************************************************** */
ol{
	list-style: decimal;/* リセットCSS打ち消し */
}
/* ******************************************************************************************
	電話番号設定（576px以下タップ有効化）
****************************************************************************************** */
/* タップ電話 */
a[href^="tel:"]{
	display: inline-block;
	text-decoration: none;
	pointer-events: none;
}
@media screen and (max-width:576px){
	a[href^="tel:"]{
		text-decoration: underline;
		cursor: pointer;
		pointer-events: auto;
		/* フォントサイズを変更する場合適宜修正 */
		/* font-size: 1.2rem; */
	}
}
/* ******************************************************************************************
	サイト幅設定（適宜設定）
****************************************************************************************** */
.ly_inner{
	width: 100%;
	max-width: calc(1280px + 50px);/* 基準幅 + 両padding余白分 */
	margin-right: auto;
	margin-left: auto;
	padding-right: 25px;
	padding-left: 25px;
}
/* ******************************************************************************************
	サイト区切り設定（必要に応じて設定）
****************************************************************************************** */
.ly_section{
	padding-top: 5rem;
	padding-bottom: 7rem;
}
@media screen and (max-width:768px){
	.ly_section{
		padding-top: 2.5rem;
		padding-bottom: 5rem;
	}
}
/* ******************************************************************************************
	パーツ設定
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	ベースボタン
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.el_arrowBtn{
	max-width: 320px;
	width: 100%;
	height: 65px;
	display: flex;
	align-items: center;
	background-color: var(--mainColorRecruit);
	color: #fff;
	border-radius: 6px;
	font-weight: 700;
	padding-left: 27px;
	padding-right: calc(10px + 15px);/* 矢印幅 + 余白 */
	position: relative;
	border: 1px solid #fff;
}
.el_arrowBtn::before{
	content: '';
	position: absolute;
	top: 50%;
	right: 10px;
	display: block;
	transform: translateY(-50%) rotate(90deg);
	border-style:solid;
	border-width: 0 5px 10px 5px;
	border-color: transparent transparent #fff transparent;
}
.el_arrowBtn.el_arrowBtn__white{
	background-color: #fff;
	color: var(--mainColorRecruit);
	border: 1px solid var(--mainColorRecruit);
}
.el_arrowBtn.el_arrowBtn__white::before{
	border-color: transparent transparent var(--mainColorRecruit) transparent;
}
@media screen and (max-width:576px){
	.el_arrowBtn{
		max-width: 220px;
		height: 52px;
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	ヘッダー
//////////////////////////////////////////////////////////////////////////////////////////////////// */
.ly_header{
    margin-bottom: 100px;
	display: flex;
	justify-content: space-between;
	/* align-items: center; */
	margin: 20px;
    box-shadow: 0 0 15px rgb(48 76 137 / 13%);
	border-radius: 40px;
	background-color: #fff;
}
@media screen and (max-width:1300px){
	.ly_header{
		margin-right: calc(20px + 120px + 20px);/* メニュー移動で設定した左余白 + メニュー幅 + 右余白 */
		height: 120px;
		position: relative;
		border-radius: 14px;
	}
}
@media screen and (max-width:768px){
	.ly_header{
		margin: 10px;
		margin-right: calc(10px + 60px + 10px);/* メニュー移動で設定した左余白 + メニュー幅 + 右余白 */
		height: 60px;
	}
}
/* ******************************************************************************************
	協会名ロゴ
****************************************************************************************** */
.bl_companyTitleArea{
	padding-left: 45px;
	padding-right: calc(100px + 20px);/* アイコン幅 + 余白 */
	position: relative;
	display: flex;
    align-items: center;
}
.bl_companyTitleArea img{
	width: 350px;
}
.bl_companyTitleArea::after{
	content: '';
	display: block;
	width: 100px;
	aspect-ratio: 102/100;
	background-image: url(../img/common/icon-hyokkori.png);
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
    bottom: -9px;
    right: 0;
}
@media screen and (max-width:1530px){
	.bl_companyTitleArea{
		padding-right: calc(90px + 10px);/* アイコン幅 + 余白 */
	}
	.bl_companyTitleArea::after{
		width: 90px;
	}
}
@media screen and (max-width:768px){
	.bl_companyTitleArea{
		padding-left: 10px;
		padding-right: calc(40px + 10px);/* アイコン幅 + 余白 */;
	}
	.bl_companyTitleArea::after{
		width: 40px;
	}
	.bl_companyTitleArea img{
		width: 150px;
	}
}
/* ******************************************************************************************
	グリッド定義 > メニュー
****************************************************************************************** */
.grid_gNavArea{
	display: grid;
	grid-template-columns: 1fr auto auto;
	grid-template-rows: 1fr auto;
	grid-template-areas:
	"area_formArea area_snsArea area_headerBtnArea"
	"area_gNavArea area_gNavArea area_gNavArea";
	gap: 5px 25px;
	align-items: center;
}
.area_formArea{
	grid-area: area_formArea;
	justify-self: end;
}
.area_snsArea{
	grid-area: area_snsArea;
}
.area_headerBtnArea{
	grid-area: area_headerBtnArea;
}
.area_gNavArea{
	grid-area: area_gNavArea;
}
@media screen and (max-width:1300px){
	.grid_gNavArea{
		grid-template-columns: 1fr;
		grid-template-rows: 1fr auto auto auto;
		grid-template-areas:
		"area_formArea"
		"area_gNavArea"
		"area_headerBtnArea"
		"area_snsArea";
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	エリア > サイト内検索
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_formArea form{
	width: 280px;
	height: 42px;
	border-radius: 999px;
	border: 1px solid #2b2d42;
	padding-left: 20px;
}
.bl_formArea input{
	border: none;
	width: calc(100% - 50px);/* アイコン幅マイナス */
	height: 100%;
}
.bl_formArea input:focus-visible{
	outline: initial;
	outline-offset: initial;
}
.bl_formArea [type="submit"]{
	background-color: initial;
	padding: 0;
	width: 50px;
	height: 100%;
	text-align: center;
	border: none;
}
@media screen and (max-width:1300px){
	.bl_formArea{
		justify-self: center;
		margin-bottom: 30px;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	エリア > snsボタン
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_snsArea{
	display: flex;
	gap: 22px;
	width: 96px;
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	エリア > ボタン
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_headerBtnArea{
	display: flex;
}
.bl_headerBtnLink{
	padding: 10px;
	background-color: var(--mainColor);
	width: 250px;
	height: 70px;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	flex-wrap: wrap;
	
}
.bl_headerBtnLink:hover,.bl_headerBtnLink:focus{
	opacity: 1;
}
.bl_headerBtnLink.bl_headerBtnLink__recruit{
	background-color: var(--mainColorLight);
	border-radius: 0 0 0 40px;
}
.bl_headerBtnLink.bl_headerBtnLink__kinyu{
	border-radius: 0 40px 0 0;
}
.bl_headerBtnLink img{
	margin-right: 15px;
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	背景
//////////////////////////////////////////////////////////////////////////////////////////////////// */
.front-page {
    background-image: url(../img/top/bg-gradient.png);
    background-repeat: no-repeat;
    background-position: top 0 left 0;
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	ファーストビュー（キャッチコピー、メインスライダー）
//////////////////////////////////////////////////////////////////////////////////////////////////// */
.ly_firstViewWrap{
	display: flex;
	justify-content: space-between;
	padding: 0 75px 0 100px;/* 右の70pxは内部画像のシャドウ領域確保分の20pxを引いた数値 */
	align-items: center;
	gap: 35px 60px;
}
@media screen and (max-width:1300px){
	.ly_firstViewWrap{
		padding: 0 20px 0 50px;
		/* 右の余白は内部画像のシャドウ領域確保分の30pxを引いた数値 */
	}
}
@media screen and (max-width:992px){
	.ly_firstViewWrap{
		flex-direction: column-reverse;
		justify-content: center;
		padding: 0;
	}
}
/* ******************************************************************************************
    キャッチフレーズ
****************************************************************************************** */
.bl_catchphraseArea{
    /* padding-top: 25px; */
	/* スライダー画像のシャドウ領域確保分に合わせ余白を設ける */
}
.bl_catchphraseArea img{
	width: 433px;
}
@media screen and (max-width:992px){
	.bl_catchphraseArea{
		padding-top: 0px;
		display: flex;
		justify-content: center;
		padding: 0 25px;
		background-image: linear-gradient(to top,
		rgba(255, 255, 255, 1) 0%,
		rgba(255, 255, 255, 0) 100%);
	}
}
@media screen and (max-width:576px){
	.bl_catchphraseArea img{
		max-width: 250px;
		width: 100%;
	}
}
/* ******************************************************************************************
	スライダー
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	基本
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.st_splideMain {
    position: relative;
}
.st_splideMain .splide__slide{
    padding: 25px;
}
.st_splideMain a:is(:hover,:focus){
	opacity: 1;
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	スライダー画像
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.st_splideMain .splide__slide img{
    border-radius: 60px;
    box-shadow: 0 0 20px rgb(131 181 82 / 40%);
}
@media screen and (max-width:1300px){
	.st_splideMain .splide__slide img{
		border-radius: 30px;
	}	
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	スライダー幅
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.st_splideMain .splide__list{
	max-width: calc(1080px + 30px + 30px);/* 表示したい幅 + 影分の領域確保 + 影分の領域確保 */
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	コントロールエリア
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.st_splideMain .bl_splideControlsArea{
	display: flex;
	justify-content: end;
    padding: 0 25px;/* スライダーに合わせる */
	gap: 25px;
}
@media screen and (max-width:992px){
	.st_splideMain .bl_splideControlsArea{
		margin-top: -10px;
	}
}
/* ======================================================================
	ページネーション
====================================================================== */
/* ------------------------------------------------------------
	ドット
------------------------------------------------------------ */
/* ドット余白 */
.st_splideMain .splide__pagination{
	gap: 23px;
}
.st_splideMain .splide__pagination li{
    line-height: 0;/* リストの余計な余白削除 */
}
/* ドット幅 */
.st_splideMain .splide__pagination__page{
    width: 12px;
    height: 12px;
    border-radius: 999px;
    background-color: var(--mainColorLight);
    padding: 0;/* 幅指定の際paddingの値を継承しないように値を消す */
}
.st_splideMain .splide__pagination__page.is-active{
    width: 18px;
    height: 18px;
    background-color: var(--mainColor);
}
@media screen and (max-width:1300px){
	.st_splideMain .splide__pagination{
		gap: 14px;
	}
	.st_splideMain .splide__pagination__page{
		width: 7px;
		height: 7px;
	}
	.st_splideMain .splide__pagination__page.is-active{
		width: 10px;
		height: 10px;
	}
}
/* ======================================================================
	矢印
====================================================================== */
.st_splideMain .splide__arrow {
    width: 50px;
    height: 50px;
    border-radius: 999px;
    background-color: #fff;
    box-shadow: 0 0 10px rgb(0 0 0 / 30%);
    text-align: center;
	line-height: 0;
	padding: 0;
}
.st_splideMain .splide__arrow+.splide__arrow{
	margin-left: 10px;
}
.st_splideMain .splide__arrow svg{
    width: 13px;
    fill: var(--mainColor);
}
.st_splideMain .splide__arrow--prev svg{
    transform: rotate(180deg);
}
@media screen and (max-width:1300px){
	.st_splideMain .splide__arrow {
		width: 30px;
		height: 30px;
	}
	.st_splideMain .splide__arrow svg{
		width: 10px !important;
		height: 10px !important;
		fill: var(--mainColor);
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	目的から探す
//////////////////////////////////////////////////////////////////////////////////////////////////// */
/* ******************************************************************************************
	レイアウト
****************************************************************************************** */
.ly_mokuteki{
	background-color: var(--gray);
	border-radius: 120px;
	margin-top: calc(100px + 50px);/* バナーはみ出し領域 + 余白 */
	margin-bottom: 166px;
}
.bl_mainMokutekiBannerArea{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: calc(100px + 40px) 40px;/* はみ出し領域保管 + 余白 */
	justify-items: center;
	max-width: calc(1700px + 40px);
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 177px;
	padding-left: 25px;
	padding-right: 25px;
}
@media screen and (max-width:1300px){
	.bl_mainMokutekiBannerArea{
		grid-template-columns: repeat(2, 1fr);
	}
}
@media screen and (max-width:992px){
	.ly_mokuteki{
		border-radius: 40px;
	}
	.bl_mainMokutekiBannerArea{
		grid-template-columns: 1fr;
		margin-bottom: 84px;
	}
}
@media screen and (max-width:576px){
	.ly_mokuteki{
		margin-bottom: 80px;
	}
}
/* ******************************************************************************************
	バナー
****************************************************************************************** */
.bl_mainMokutekiBanner{
	max-width: 540px;
	width: 100%;
	margin-top: -100px;/* はみ出し分 */
}
.bl_mainMokutekiBanner img{
	filter: drop-shadow(0 0 15px rgb(48 76 137 / 13%));
}
.bl_mainMokutekiBannerWrap{
	display: flex;
	justify-content: center;
	margin-top: -40px;/* ボタン高さの半分 */
	gap: 15px;
	position: relative;
	z-index: 1;/* これがないとボタンが隠れる */
}
.bl_mainMokutekiBanner_more{
	padding: 25px 20px;
	border-radius: 999px;
	max-width: 360px;
	width: 100%;
	color: #fff;
	font-size: var(--fontSize20);
	font-weight: 700;
	text-align: center;
}
.bl_mainMokutekiBanner:nth-of-type(1) .bl_mainMokutekiBanner_more{
	background-color: #247ba0;
}
.bl_mainMokutekiBanner:nth-of-type(2) .bl_mainMokutekiBanner_more{
	background-color: #eb6031;
	max-width: 190px;
}
.bl_mainMokutekiBanner:nth-of-type(3) .bl_mainMokutekiBanner_more{
	background-color: #7eb528;
}
@media screen and (max-width:576px){
	.bl_mainMokutekiBannerWrap{
		display: flex;
		justify-content: center;
		margin-top: -28px;/* ボタン高さの半分 */
		gap: 15px;
		position: relative;
		z-index: 1;/* これがないとボタンが隠れる */
	}
	.bl_mainMokutekiBanner_more{
		max-width: 253px;
		padding: 17px 20px;
		font-size: var(--fontSize15);
	}
	.bl_mainMokutekiBanner:nth-of-type(2) .bl_mainMokutekiBanner_more{
		max-width: 133px;
	}
}
/* ******************************************************************************************
	カード
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	カード > タイトル
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_mokutekiTitleArea{
	display: flex;
	justify-content: center;
	margin-bottom: 53px;
	padding: 0 25px;
}
@media screen and (max-width:576px){
	.bl_mokutekiTitleArea{
		margin-bottom: 35px;
	}
	.bl_mokutekiTitleArea img{
		max-width: 332px;
		width: 100%;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	カード > 単体
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_mainMokutekiCardWrap{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 40px;
	margin-bottom: 35px;
}
.bl_mainMokutekiCard{
	/* flex: 1 1; */
	width: calc((100% - 80px) / 3);
}
@media screen and (max-width:992px){
	.bl_mainMokutekiCardWrap{
		gap: 10px;
	}
	.bl_mainMokutekiCard{
		width: calc((100% - 10px) / 2);
	}
}
@media screen and (max-width:576px){
	.bl_mainMokutekiCardWrap{
		margin-bottom: 22px;
	}
}
/* ******************************************************************************************
	吹き出し
****************************************************************************************** */
.bl_fukidashiArea{
	text-align: right;
	padding-right: 106px;
}
.bl_fukidashiArea img{
	margin-bottom: -54px;
}
@media screen and (max-width:992px){
	.bl_fukidashiArea{
		padding-right: 20px;
	}
	.bl_fukidashiArea img{
		max-width: 249px;
		width: 100%;
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	新着情報
//////////////////////////////////////////////////////////////////////////////////////////////////// */
.ly_news{
	margin-bottom: 117px;
}
@media screen and (max-width:576px){
	.ly_news{
		margin-bottom: 57px;
	}
}
/* ******************************************************************************************
	タイトル
****************************************************************************************** */
.bl_newsTitleArea{
	text-align: center;
	margin-bottom: 53px;
}
@media screen and (max-width:576px){
	.bl_newsTitleArea{
		margin-bottom: 37px;
	}
	.bl_newsTitleArea img{
		max-width: 192px;
		width: 100%;
	}
}
/* ******************************************************************************************
	全体
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	中身
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_informationInner{
	padding: 54px 75px;
	background-color: rgb(3 165 113 / 8%);
	border-radius: 42px;
}
@media screen and (max-width:576px){
	.bl_informationInner{
		padding: 5px 25px 30px;
		border-radius: 30px;
	}
}
/* ======================================================================
	タブの選択によって出し分け
====================================================================== */
.bl_informationUnit[aria-hidden="true"]{
	display: none;
}
.bl_informationUnit[aria-hidden="false"]{
	display: block;
}
/* ******************************************************************************************
	個別
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	タブボタン
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ======================================================================
	グリッド・エリア定義
====================================================================== */
.bl_tabList{
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: 1fr;
	grid-template-areas:
	"tabPanelAllNews tabPanelRecruit";
	gap: 13px;
	margin-bottom: 25px;
}
.tabPanelAllNews{
	grid-area: tabPanelAllNews;
}
.tabPanelRecruit{
	grid-area: tabPanelRecruit;
}
@media screen and (max-width:992px){
	.bl_tabList{
		/* display: grid;
		grid-template-columns: 1fr 1fr;
		grid-template-rows: 1fr;
		grid-template-areas:
		"tabPanelAllNews tabPanelRecruit"; */
		gap: 7px;
		margin-bottom: 10px;
	}
}
/* ======================================================================
	タブボタンスタイル
====================================================================== */
.el_btn_tab{
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	padding: 10px 5px;
	height: 65px;
	border-radius: 20px;
	border: 3px solid var(--mainColor);
	background-color: #fff;
	font-weight: bold;
	text-align: center;
	font-size: var(--fontSize18);
	font-weight: bold;
	color: var(--black);
}

.el_btn_tab[aria-selected="true"],
.el_btn_tab:is(:hover,:focus){
	color: #fff;
}
.el_btn_tab[aria-selected="true"]::before{
	content: '';
    width: 0;
    height: 0;
    border-left: 9px solid transparent;
    border-right: 9px solid transparent;
	border-top: 15px solid;
    display: inline-block;
	position: absolute;
	bottom: -15px;
	left: 50%;
	transform: translateX(-50%);
}
.el_btn_tab:nth-of-type(1){
	border-color: var(--mainColor);
	position: relative;
}
.el_btn_tab:nth-of-type(1)[aria-selected="true"],
.el_btn_tab:nth-of-type(1):is(:hover,:focus){
	background-color: var(--mainColor);
}
.el_btn_tab:nth-of-type(1)[aria-selected="true"]::before{
     border-top-color: var(--mainColor);
}
.el_btn_tab:nth-of-type(2){
	border-color: var(--mainColorRecruit);
}
.el_btn_tab:nth-of-type(2)[aria-selected="true"],
.el_btn_tab:nth-of-type(2):is(:hover,:focus){
	background-color: var(--mainColorRecruit);
}
.el_btn_tab:nth-of-type(2)[aria-selected="true"]::before{
    border-top-color: var(--mainColorRecruit);
}
@media screen and (max-width:992px){
	.el_btn_tab{
		height: 52px;
		font-size: var(--fontSize16);
		border-radius: 14px;
	}
}
@media screen and (max-width:768px){
	.el_btn_tab{
		border-width: 2px;
	}
}
@media screen and (max-width:576px){
	.el_btn_tab{
	height: 40px;
	font-size: var(--fontSize14);
	}
}
/* ======================================================================
	日付、カテゴリ、タイトルリンク
====================================================================== */
/* ------------------------------------------------------------
	グリッド・エリア定義
------------------------------------------------------------ */
.grid_informationUnit_item{
	display: grid;
	grid-template-rows: 1fr;
	grid-template-columns: auto auto 1fr;
	grid-template-areas: " area_informationUnit_item_date area_informationUnit_item_cat area_informationUnit_item_cont";
	gap: 20px;
	align-items: center;
}
@media screen and (max-width:992px){
	.grid_informationUnit_item{
		grid-template-rows: 1fr auto;
		grid-template-columns: auto 1fr;
		grid-template-areas:
		"area_informationUnit_item_date area_informationUnit_item_cat"
		"area_informationUnit_item_cont area_informationUnit_item_cont";
		gap: 10px 0;
	}
}
.area_informationUnit_item_date{
	grid-area: area_informationUnit_item_date;
}
.area_informationUnit_item_cat{
	grid-area: area_informationUnit_item_cat;
}
.area_informationUnit_item_cont{
	grid-area: area_informationUnit_item_cont;
}
/* ------------------------------------------------------------
	全体（カテゴリ無しの場合st_informationUnit_catNoneを付与）
------------------------------------------------------------ */
.bl_informationUnit_item{
	padding: 17px 16px;
	border-bottom: 1px solid rgb(43 45 66 / 20%);
}
.st_informationUnit_catNone .bl_informationUnit_item{
	display: flex;
	gap: 5px 20px;
}
@media screen and (max-width:992px){
	.bl_informationUnit_item{
		padding: 20px 0 20px 0;
	}
}
@media screen and (max-width:576px){
	.st_informationUnit_catNone .bl_informationUnit_item{
		flex-direction: column;
	}
}
/* ------------------------------------------------------------
	全体（検索結果で使用）（日付、カテゴリ無しの場合st_informationUnit_metaNoneを付与）
------------------------------------------------------------ */
.st_informationUnit_metaNone .bl_informationUnit_item{
	
}
/* ------------------------------------------------------------
	日付
------------------------------------------------------------ */
.bl_informationUnit_item_date{
	display: flex;
	align-items: center;
	width: 130px;
	/* padding: 1rem 0; */
	white-space: nowrap;
}
@media screen and (max-width:576px){
	.bl_informationUnit_item_date{
		width: 100%;
		max-width: 140px;
		margin-right: 10px;
		font-size: var(--fontSize13);
	}
}
/* ------------------------------------------------------------
	カテゴリ
------------------------------------------------------------ */
.bl_informationUnit_item_cat{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	flex-direction: column;
	gap: 5px;
}
.el_cat{
    width: 136px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 5px 5px;
	background-color: var(--mainColor);
    font-weight: 700;
    font-size: var(--fontSize13);
    text-decoration: none;
	color: #fff;
	border-radius: 999px;
}
/* 色分け */
.el_cat.cat-recruit{
	background-color: var(--mainColorRecruit);
}
@media screen and (max-width:992px){
	.bl_informationUnit_item_cat{
		flex-direction: row;
	}
}
@media screen and (max-width:576px){
	.el_cat{
		max-width: 100px;
		/* width: 85px; */
		font-size: var(--fontSize12);
		line-height: 1.5;
	}
}
/* ------------------------------------------------------------
	タイトルリンク
------------------------------------------------------------ */
.st_informationUnit_catNone .bl_informationUnit_item_cont{
	width: calc(100% - 130px);
}
.bl_informationUnit_item_cont > a{
	display: block;
	padding-right: calc(16px + 20px);/* アイコン幅 + 余白 */
	position: relative;
}
.bl_informationUnit_item_cont > a::after{
	content: '';
	display: block;
	width: 16px;
	aspect-ratio: 1/1;
	background-image: url(../img/top/icon-arrow-right.png);
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	right: 8px;
	transform: translateY(-50%);
}
.bl_informationUnit_item_cont > a:hover:after{
	right: 6px;
}

.bl_eventStatus{
	/* 終了フラグが付与された場合 */
	color: #919191;
}
@media screen and (max-width:576px){
	.bl_informationUnit_item_cont > a{
		font-size: var(--fontSize13);
		padding-right: 0;
	}
	.bl_informationUnit_item_cont > a::after{
		content: none;
	}
	.st_informationUnit_catNone .bl_informationUnit_item_cont{
		width: 100%;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	一覧を見るボタン
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_newsMoraArea{
	display: flex;
	justify-content: end;
	margin-top: 24px;
}
.bl_newsMora{
	display: flex;
	justify-content: end;
	align-items: center;
	font-size: var(--fontSize18);
	font-weight: 700;
	padding-right: calc(60px + 20px);/* アイコン幅 + 余白 */
	position: relative;
	height: 60px;
	text-decoration: underline;
	text-underline-offset: .2rem;
	text-decoration-thickness: 1px;
	text-decoration-skip-ink: none;
}
.bl_newsMora::after{
	content: '';
	display: block;
	width: 60px;
	aspect-ratio: 1/1;
	background-image: url(../img/top/icon-circle-arrow-right.png);
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}
@media screen and (max-width:576px){
	.bl_newsMoraArea{
		margin-top: 19px;
	}
	.bl_newsMora{
		font-size: var(--fontSize13);
		padding-right: calc(44px + 14px);/* アイコン幅 + 余白 */
		height: 44px;
	}
	.bl_newsMora::after{
		width: 44px;
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	バナーグリッド
//////////////////////////////////////////////////////////////////////////////////////////////////// */
/* ******************************************************************************************
	グリッド定義
****************************************************************************************** */
.grid_btnArea{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-template-rows: 1fr 1fr 1fr;
	grid-template-areas:
	"area_qa area_qa area_hoshoseido area_hoshoseido"
	"area_qa area_qa area_download area_download"
	"area_shinyohosho area_keisan area_gepo area_panfu";
	gap: clamp(10px, 3vw, 40px);
	margin-bottom: 47px;
}
.area_qa{
	grid-area: area_qa;
}
.area_hoshoseido{
	grid-area: area_hoshoseido;
}
.area_download{
	grid-area: area_download;
}
.area_shinyohosho{
	grid-area: area_shinyohosho;
}
.area_keisan{
	grid-area: area_keisan;
}
.area_gepo{
	grid-area: area_gepo;
}
.area_panfu{
	grid-area: area_panfu;
}
@media screen and (max-width:992px){
	.grid_btnArea{
		grid-template-columns: 1fr 1fr;
		grid-template-rows: 1fr auto auto auto auto;
		grid-template-areas:
		"area_qa area_qa"
		"area_hoshoseido area_hoshoseido"
		"area_download area_download"
		"area_shinyohosho area_keisan"
		"area_gepo area_panfu";
		gap: 20px;
		max-width: 620px;
		margin-left: auto;
		margin-right: auto;
	}
}
@media screen and (max-width:576px){
	.grid_btnArea{
		gap: 10px;
		margin-bottom: 21px;
	}
}
/* ******************************************************************************************
	通常バナー
****************************************************************************************** */
.bl_btnSubArea{
	display: flex;
	gap: 5px;
	margin-left: -25px;
}
.bl_btnSub_link{
	display: flex;
	justify-content: center;
	align-items: center;
}
.bl_btnSub_link.bl_btnSub_link__instagram{
	padding-top: 5px;/* 左バナーに高さを合わせる */
}
@media screen and (max-width:992px){
	.bl_btnSubArea{
		flex-direction: column;
		margin-right: -25px;
	}
	.bl_btnSub_link{
		display: inline-block;
		margin-left: auto;
		margin-right: auto;
		justify-content: initial;
		align-items: initial;
	}
	.bl_btnSub_link.bl_btnSub_link__instagram{
		padding-top: 0;
		padding-left: 25px;
		padding-right: 25px;
	}
}
@media screen and (max-width:576px){
	.bl_btnSubArea{
		margin-left: -10px;
		margin-right: -10px;
	}
	.bl_btnSub_link.bl_btnSub_link__instagram{
		padding-left: 20px;
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	本体サイト > 採用情報コンテンツ
//////////////////////////////////////////////////////////////////////////////////////////////////// */
.ly_recruit{
	margin-top: calc(112px + 150px);/* はみ出し領域 + 余白 */
	margin-bottom: 130px;
}
.bl_recruitArea{
	background-color: #000;
	background-image: url(../img/top/img-recruit-bg.png);
	background-repeat: no-repeat;
	background-size: cover;
	/* height: 730px; */
	padding-bottom: 120px;
	border-radius: 120px;
}
.bl_recruitMainContent{
	display: flex;
	align-items: end;
	gap: 0 clamp(40px, 5vw, 100px);
	padding-right: 50px;
}
.bl_recruit_images{
	margin-top: -112px;
	position: relative;
}
.un_recruit_decoImg{
	position: absolute;
	top: 70px;
	right: calc(0px - 580px + 60px);/* 基準 - 画像幅分移動 + 重なり分 */
	max-width: 580px;
	width: 100%;
}
.bl_recruit_textImgArea{
	display: flex;
	flex-direction: column;
	gap: 62px;
	position: relative;
}

.bl_btnMore{
	max-width: 340px;
	width: 100%;
	height: 90px;
	position: relative;
	border-radius: 999px;
	padding-right: calc(60px + 10px);/* アイコン幅 + 余白 */
	padding-left: 45px;
	background-color: #fff;
	color: #1c448e;
	font-size: var(--fontSize20);
	font-weight: 700;
	display: flex;
    align-items: center;
}
.bl_btnMore::after{
	content: '';
	display: block;
	width: 60px;
	aspect-ratio: 1/1;
	background-image: url(../img/top/icon-circle-arrow-right-blue.png);
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
}
@media screen and (max-width:1300px){
	.bl_recruitMainContent{
		display: flex;
		align-items: start;
		flex-direction: column;
		gap: 13px;
	}
	.un_recruit_decoImg{
		display: none;
	}
	.bl_recruit_textImgArea{
		/* margin-left: auto; */
		/* margin-right: auto; */
		padding: 0 30px;
	}
}
@media screen and (max-width:768px){
	.bl_recruitArea{
		padding-bottom: 120px;
		border-radius: 40px;
	}
	.bl_recruit_textImgArea{
		gap: 52px;
	}
}
@media screen and (max-width:576px){
	.ly_recruit{
		margin-top: calc(86px + 90px);/* はみ出し領域 + 余白 */
		margin-bottom: 86px;
	}
	.bl_recruit_images{
		margin-top: -68px;
		position: relative;
	}
	.bl_recruitArea{
		padding-bottom: 54px;
	}
	.bl_btnMore{
		max-width: 260px;
		height: 70px;
		padding-right: calc(46px + 10px);/* アイコン幅 + 余白 */
		padding-left: 33px;
		font-size: var(--fontSize16);
	}
	.bl_btnMore::after{
		width: 46px;
		right: 15px;
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	フッター
//////////////////////////////////////////////////////////////////////////////////////////////////// */
.ly_footer{
	overflow: hidden;
}
.bl_footerLinksContainer{
	background-color: var(--gray);
	border-radius: 120px 120px 0 0;
}
@media screen and (max-width:768px){
	.bl_footerLinksContainer{
		border-radius: 40px 40px 0 0;
	}
}
/* ******************************************************************************************
	リスト > レイアウト
****************************************************************************************** */
.bl_footerLinksSection{
	display: flex;
	gap: 40px 20px;
	justify-content: space-between;
	padding: 115px 0;
}
@media screen and (max-width:992px){
	.bl_footerLinksSection{
		flex-wrap: wrap;
	}
}
@media screen and (max-width:768px){
	.bl_footerLinksSection{
		padding: 70px 0 88px;
	}
}
/* ******************************************************************************************
	リスト > スタイル
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	リスト > 親ページタイトル
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_footerLinksCol_heading,.bl_footerManualList_item{
	font-weight: 700;
	padding-bottom: 20px;
	border-bottom: 1px solid #2b2d42;
	position: relative;
}
@media screen and (max-width:992px){
	.bl_footerLinksCol_heading,.bl_footerManualList_item{
		padding-right: calc(32px + 10px);/* 開閉ボタンクリック領域 + 余白 */
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	その他のリスト
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_footerManualList{
	display: flex;
	flex-direction: column;
	gap: 30px;
	flex-wrap: wrap;
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	リスト > 子ページリスト
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_footerLinksCol{
	max-width: 270px;
	width: 100%;
}
.bl_footerLinksCol_childList{
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.bl_footerLinksCol_childList_item{
	padding-left: calc(8px + 13px);/* 線幅 + 余白 */
	position: relative;
}
.bl_footerLinksCol_childList_item:first-of-type{
	margin-top: 30px;
}
.bl_footerLinksCol_childList_item::before{
	content: '';
	display: block;
	width: 8px;
	height: 1px;
	background-color: var(--black);
	position: absolute;
	top: 13px;
	left: 0;
}
.bl_footerLinksCol_childList_itemLink{
	font-size: var(--fontSize14);
}
/* ******************************************************************************************
	リスト > 開閉ボタン
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	デスクトップ時
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.el_footerLinksCol_toggleBtn {
    /* デスクトップでは非表示 */
    display: none;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	スマホサイズのリスト開閉CSS (更新)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
@media screen and (max-width: 992px) {
    /* 子ページリストのデフォルト状態 (閉じた状態) */
    .bl_footerLinksCol_childList {
        max-height: 0; /* 高さを0にして隠す */
        overflow: hidden; /* はみ出した内容を隠す */
        transition: max-height 0.3s ease-out; /* スムーズな開閉アニメーション */
    }
    /* 開いた状態 (is_listOpen クラスが追加された場合) */
    .bl_footerLinksCol_childList.is_listOpen {
        max-height: 1000px; /* 開いた時の最大高さ。 */
        transition: max-height 0.3s ease-in;
    }
    .bl_footerLinksCol {
		max-width: initial;
		width: calc(50% - 20px);
    }
    .el_footerLinksCol_toggleBtn {
        display: block;
        background: none;
        border: none;
        padding: 32px;/* クリック領域広めに */
        cursor: pointer;
        font-size: 0;
        width: 12px;
        height: 12px;
        position: absolute;
		top: calc(50% - 10px);
        right: 0;
        transform: translateY(-50%);
        outline: none;
    }
	.el_footerLinksCol_toggleBtn:hover{
		background-color: rgb(220 220 225 / 50%);
	}
	/*
	* .bl_footerLinksCol の中に、
	* 直下の子要素として .bl_footerLinksCol_childList があり、
	* その .bl_footerLinksCol_childList の直下の子要素に
	* .bl_footerLinksCol_childList_item が一つも存在しない場合、
	* .bl_footerLinksCol の中の .el_footerLinksCol_toggleBtn を非表示にする
	*/
   .bl_footerLinksCol:has(> .bl_footerLinksCol_childList:not(:has(> .bl_footerLinksCol_childList_item))) .el_footerLinksCol_toggleBtn {
	   display: none;
   }
    .el_footerLinksCol_toggleBtn_icon {
        display: block;
        width: 12px;
        height: 1px;
        background-color: var(--black);
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        transition: background-color 0.3s ease;
    }
	.el_footerLinksCol_toggleBtn_icon::before,
	.el_footerLinksCol_toggleBtn_icon::after{
        content: '';
        display: block;
        width: 100%;
        height: 100%;
        background-color: var(--black);
        position: absolute;
        top: 0;
        left: 0;
	}
    .el_footerLinksCol_toggleBtn_icon::after {
        transform: rotate(90deg);
        transition: transform 0.3s ease, opacity 0.3s ease;
    }
    .el_footerLinksCol_toggleBtn[aria-expanded="true"] .el_footerLinksCol_toggleBtn_icon::after {
        opacity: 0;
        transform: rotate(90deg) scaleY(0);
    }
    .el_footerLinksCol_toggleBtn:hover .el_footerLinksCol_toggleBtn_icon,
    .el_footerLinksCol_toggleBtn:hover .el_footerLinksCol_toggleBtn_icon::before,
    .el_footerLinksCol_toggleBtn:hover .el_footerLinksCol_toggleBtn_icon::after {
        background-color: #007bff;
    }
}
@media screen and (max-width:576px){
    .bl_footerLinksCol {
		width: 100%;
    }
	.bl_footerManualList{
		flex-direction: initial;
	}
	.bl_footerManualList_item{
		width: calc(50% - 15px);
	}
}
/* ******************************************************************************************
	フッター > メイン
****************************************************************************************** */
.bl_footerMainContainer{
	background-color: var(--mainColor);
	padding-top: 90px;
	padding-bottom: 74px;
	border-radius: 0 0 120px 120px;
}
.bl_footerLogoArea{
	margin-bottom: 35px;
}
.bl_footerLogoArea img{
	max-width: 360px;
	width: 100%;
}
.bl_footerMain_Wrap{
	display: flex;
	justify-content: space-between;
	gap: 54px 30px;
}
.bl_footerMain_address{
	color: #fff;
	font-size: var(--fontSize15);
	margin-bottom: 6px;
}
.bl_footerMain_telLink{
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: var(--fontSize32);
	color: #fff;
}
.bl_footerMain_telLinkItem span{
	font-size: var(--fontSize13);
	color: #fff;
	display: inline-block;
	margin-left: 15px;
}
.bl_footerMain_telLinkItem{
	margin-bottom: 43px;
}
.bl_footerMain_btnArea{
	display: flex;
	gap: 22px;
}
.bl_footerMain_btnLink{
	max-width: 220px;
	width: 100%;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #038c61;
	border-radius: 999px;
	color: #fff;
	font-size: var(--fontSize15);
	font-weight: 700;
}
.bl_footerMain_btnLink img{
	margin-right: 15px;
}
@media screen and (max-width:992px){
	.bl_footerMain_Wrap{
		flex-direction: column;
	}
}
@media screen and (max-width:768px){
	.bl_footerMainContainer{
		border-radius: 0 0 40px 40px;
	}
}
@media screen and (max-width:576px){
	.bl_footerLogoArea{
		margin-bottom: 25px;
	}
	.bl_footerLogoArea img{
		max-width: 230px;
	}
	.bl_footerMain_address{
		font-size: var(--fontSize12);
		margin-bottom: 0;
	}
	.bl_footerMain_telLink{
		font-size: var(--fontSize30);
	}
	.bl_footerMain_telLinkItem span{
		font-size: var(--fontSize12);
		display: block;
		margin-left: 0;
	}
	.bl_footerMain_telLinkItem{
		margin-bottom: 32px;
	}
	.bl_footerMain_btnLink{
		max-width: 161px;
		height: 44px;
		font-size: var(--fontSize12);
	}
	.bl_footerMain_btnArea{
		gap: 13px;
	}
	.bl_footerMainContainer{
		padding-top: 75px;
		padding-bottom: 70px;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	その他リンク
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_footerOtherListArea{
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.bl_footerOtherList_item{
	padding-left: calc(8px + 13px);
	position: relative;
}
.bl_footerOtherList_item::before{
    content: '';
    display: block;
    width: 8px;
    height: 1px;
    background-color: #fff;
    position: absolute;
    top: 13px;
    left: 0;
}
.bl_footerOtherList_link{
	color: #fff;
	font-size: var(--fontSize13);
}
@media screen and (max-width:576px){
	.bl_footerOtherList_link{
		font-size: var(--fontSize12);
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	コピーライト
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_footerCopyright{
	font-size: var(--fontSize15);
	height: 105px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 400;
}
@media screen and (max-width:576px){
	.bl_footerCopyright{
		font-size: var(--fontSize12);
		height: 70px;
		padding-right: calc(40px + 10px);/* トップへ戻るアイコン幅 + 余白 */
	}
}
/* ******************************************************************************************
	トップへ戻る
****************************************************************************************** */
.bl_pageTop {
	position: fixed;
	right: 20px;
	bottom: 20px;
	opacity: 0;               /* 初期は非表示 */
	pointer-events: none;     /* 非表示時はクリック不可 */
	transition: opacity 0.3s ease;
	color: #fff;
	z-index: 1000;
  }
  
  .bl_pageTop.js_showStyle {
	opacity: 1;               /* 表示時はふわっと見える */
	pointer-events: auto;     /* 表示時はクリック可能 */
  }
@media screen and (max-width:576px){
	.bl_pageTop{
		right: 10px;
		bottom: 10px;
	}
	.bl_pageTop img{
		width: 40px;
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	セカンドページ
//////////////////////////////////////////////////////////////////////////////////////////////////// */
/* ******************************************************************************************
	コンテンツ幅
****************************************************************************************** */
.bl_mainContent:has(+ .ly_sidebar){
	width: 900px;
}
@media screen and (max-width:992px){
	.bl_mainContent:has(+ .ly_sidebar){
		width: 100%;
	}
}
/* ******************************************************************************************
	シミュレーション
****************************************************************************************** */
.bl_simulationArea p {
	margin-top: 1rem;
}
.bl_simulationForm {
	margin-top: 1rem;
	margin-bottom: 1rem;
	border:1px solid #9dc0c9;
	background-color: rgb(3 165 113 / 5%);
	padding: 0.5rem 2rem;
}
.st_simulationForm input[type="text"]{
	background-color: #fff;
	padding: 3px;
}
.bl_simulationList {
	margin-left: 0;
	list-style-position: inside;
}
.bl_simulationList li {
	padding-top: 1rem;
	padding-bottom: 1rem;
}
.bl_simulationList li::marker {
	position: absolute;
	font-weight: bold;
}
.bl_simulationList li+li {
	border-top: 1px dotted #9dc0c9;
}
.bl_simulationList li p {
	margin-top: 0;
	margin-bottom: 0.5rem;
}
.bl_simulationList li .small {
	font-size: 0.875rem;
	line-height: 1.5em;
}
.bl_simulationBtn{
	border-radius: 2px;
	padding: 5px 5px;
}
.bl_simulationBtn.bl_simulationBtn__keisan{
	background-color: var(--mainColor);
	color: #fff;

}
.bl_simulationBtn.bl_simulationBtn__reset{
	background-color: #e9e9ed;
	border: 1px solid #c3c3c3;
}
.btn-keisan {
	background-color: #00ccff;
}
.bl_inputYen{
	width:200px;
	height:32px;
	font-size:24px;
}
/* ******************************************************************************************
	サイドバー > レイアウト
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
レイアウト
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.ly_sidebar{
	width: 300px;
}
/* サイドバーがあったら */
.bl_contentWrap:has( > .ly_sidebar){
	display: flex;
	gap: 50px 30px;
	justify-content: space-between;
}
.bl_sidebar > div:last-child{
	margin-bottom: 0;
}
@media screen and (max-width:992px){
	.bl_contentWrap{
		flex-direction: column;
	}
	.ly_sidebar{
		width: 100%;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	スタイル
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* 親 */
.st_sidebarList > .page_item:first-child{
	background-color: var(--mainColor);
	padding: 31px 20px 31px 35px;
	border-radius: 0 20px 0 20px;
	position: relative;
}
.st_sidebarList > .page_item:first-child::before{
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 17px;
	width: 6px;
	height: 34px;
	background-color: #81d2b8;
	border-radius: 999px;
}
/* リンク */
.st_sidebarList > .page_item:first-child a{
	font-size: var(--fontSize18);
	font-weight: 500;
	color: #fff;
}
.st_sidebarList .page_item:not(:first-child) a{
	padding: 20px 10px 20px 50px;
	border-bottom: 1px solid #dfdfe3;
	display: block;
	position: relative;
}
.st_sidebarList .page_item:not(:first-child) a::before{
	content: '';
	display: block;
	width: 11px;
	aspect-ratio: 1/1;
	background-image: url(../img/common/icon-arrow-green.svg);
	background-repeat: no-repeat;
	background-size: 11px;
	position: absolute;
	top: calc(50% + 2px);
	left: 17px;
	transform: translateY(-50%);
}
/* 子リスト */
.st_sidebarList .page_item .children{
	padding-left: 30px;
}
.st_sidebarList .page_item .children a{
	font-size: var(--fontSize14);
	padding: 10px 10px 10px 30px;
}
.st_sidebarList .page_item .children a::before{
	background-image: none;
	width: 11px;
	height: 1px;
	background-color: var(--mainColor);
	left: 10px;
}
@media screen and (max-width:576px){
	.st_sidebarList > .page_item:first-child{
		padding: 15px 10px 15px 30px;
	}
	.st_sidebarList > .page_item:first-child::before{
		left: 16px;
		width: 5px;
		height: 24px;
	}
	.st_sidebarList > .page_item:first-child a{
		font-size: var(--fontSize16);
	}
	.st_sidebarList .page_item:not(:first-child) a{
		padding: 15px 10px 15px 50px;
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	お知らせ詳細
//////////////////////////////////////////////////////////////////////////////////////////////////// */
.bl_newsMetaWrap{
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 10px;
	margin-bottom: 60px;
}
.bl_newsCatArea{
	display: flex;
	gap: 10px;
}
.st_newsCatArea .el_cat{
	width: 110px;
	padding: 5px 5px;
	font-size: var(--fontSize12);
	font-weight: 500;
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	セカンドページ詳細
//////////////////////////////////////////////////////////////////////////////////////////////////// */
/* ******************************************************************************************
	ヘッダー
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	レイアウト
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.ly_titleHeaderContainer{
	margin-top: 80px;
}
.bl_titleHeaderArea{
	position: relative;
	padding-right: 66px;
	padding-bottom: 16px;
}
.bl_titleHeaderArea::after{
	content: '';
	display: block;
	width: 200px;
	height: 196px;
	background-image: url(../img/common/icon-character.svg);
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	bottom: 0;
	right: 0;
}
.ly_titleHeaderContainer .ly_inner{
	max-width: calc(1280px + 20px);/* 基準幅 + 両padding余白分 */
	margin-right: auto;
	margin-left: auto;
	padding-right: 10px;
	padding-left: 10px;
}
@media screen and (max-width:992px){
	.bl_titleHeaderArea{
		padding-right: 0;
		padding-bottom: 0;
	}
	.bl_titleHeaderArea::after{
		content: none;
	}
}
@media screen and (max-width:768px){
	.ly_titleHeaderContainer{
		margin-top: 30px;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	見出し
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_titleHeaderBox{
	background-color: var(--gray);
	border-radius: 40px 40px 0 0;
	padding: 47px 40px 47px 65px;
	position: relative;
}
.bl_titleHeaderBox::before{
	content: '';
	display: block;
	width: 35px;
	height: 10px;
	border-radius: 0 999px 999px 0;
	background-color: var(--mainColor);
	position: absolute;
	top: calc(50% + 4px);
	left: 0;
	transform: translateY(-50%);
}

.bl_titleHeaderBox h1{
	font-size: var(--fontSize40);
	font-weight: 700;
	position: relative;
	z-index: 1;
}
@media screen and (max-width:768px){
	.bl_titleHeaderBox{
		padding: 20px 15px 20px 30px;
		border-radius: 14px 14px 0 0;
	}
	.bl_titleHeaderBox::before{
		width: 15px;
		height: 6px;
		top: calc(50% + 0px);
	}
	.bl_titleHeaderBox h1{
		font-size: var(--fontSize20);
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	パンくずリスト
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_breadcrumbsBox{
	padding: 20px 47px;/* 横余白はh1に合わせる */
	background-color: #f7f9f6;
	border-radius: 0 0 40px 40px;
}
@media screen and (max-width:768px){
	.bl_breadcrumbsBox{
		border-radius: 0 0 14px 14px;
		padding: 10px 15px;
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	採用サイトトップ
//////////////////////////////////////////////////////////////////////////////////////////////////// */
/* ******************************************************************************************
	ヘッダー※上書きの場合「.st_recruit」を付与
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	レイアウト
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.ly_recruitHeader{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 27px;
	position: relative;
	z-index: 1;
	/* flex-wrap: wrap; */
	background-image: linear-gradient(0deg,rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.7) 100%);
}
.page-id-8684 .ly_recruitHeader{
	height: 116px;/* 採用サイトトップのみ高さ固定、計算調整の為高さ固定 */
}
@media screen and (max-width:1300px){
	.ly_recruitHeader{
		background-color: #fff;
		padding-right: calc(20px + 50px + 30px);/* スマホ時のメニュー領域確保 → 移動分 + メニュー幅 + 余白 */
		height: initial;
	}
	.page-id-8684 .ly_recruitHeader{
		height: initial;
	}
}
@media screen and (max-width:768px){
	.ly_recruitHeader{
		padding: 20px;
	}
}
/* ******************************************************************************************
	ロゴ
****************************************************************************************** */
.bl_recruitCompanyTitleArea{
	max-width: 446px;
	width: 100%;
}
.bl_recruitCompanyTitleArea a{
	display: block;
}
@media screen and (max-width:576px){
	.bl_recruitCompanyTitleArea{
		max-width: 270px;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	メインビジュアル
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

.bl_recruitMvArea{
	margin-top: -116px;/* ヘッダー高さ分 */
	position: relative;
	z-index: 0;
	/* background-color: #0061E3; */
	background-image: url(../img/recruit/img-recruit-main-new.jpg);
    background-image:
		linear-gradient(70deg, rgba(0, 97, 227, 0) 50%, rgba(0, 97, 227, 0.2) 100%), /* 1. これが上に表示されるグラデーション */
        url(../img/recruit/img-recruit-main-new.jpg); /* 2. これが下に表示される背景画像 */
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top 0 left 60%;
	padding-bottom: 156px;/* ニューススティッカーの位置をここで調整 */
}
.bl_recruitMv_catchphraseImgArea{
	padding-top: calc(116px + 184px);/* ネガティブマージン補完 + 余白 */
	display: flex;
	justify-content: end;
}
.bl_recruitMv_sectionImg{
	position: absolute;
	bottom: -1px;/* 繋ぎ目消す */
	left: 0;
	z-index: -1;
}
@media screen and (max-width:1300px){
	.bl_recruitMvArea{
		margin-top: 0px;/* ヘッダー高さ分 */
		background-position: top 0px left 75%;
	}
	.bl_recruitMv_catchphraseImgArea{
		padding-top: 140px;/* 位置調整 */
	}
}
@media screen and (max-width:576px){
	.bl_recruitMvArea{
		padding-bottom: 0px;
	}
	.bl_recruitMv_catchphraseImgArea{
		padding-top: 45px;/* 位置調整 */
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	キャッチフレーズ
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_recruitMv_catchphraseImgArea img{
	max-width: 1065px;
	width: 100%;
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	ニューススティッカー
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_verticalSliderWrap{
	display: flex;
	padding: 45px 50px;
	background-color: #fff;
	border-radius: 11px 0 0 11px;
	max-width: 960px;
    margin-left: auto;
	gap: 15px 70px;
	position: relative;
	z-index: 0;/* 1にしない（ハンバーガーメニューの重なり） */
}
/* タイトル */
.bl_verticalSliderTitle{
	position: relative;
	width: 70px;
	display: flex;
	align-items: center;
}
.bl_verticalSliderTitle::after{
	content: '';
	display: block;
	width: 1px;
	height: 100%;
	background-color: #80b0f1;
	position: absolute;
	top: 50%;
	right: -35px;/* 余白の中央 */
	transform: translateY(-50%);
}
.bl_verticalSliderTitle img{
	width: 79px;
}
@media screen and (max-width:992px){
	.bl_verticalSliderContainer{
		background-color: var(--mainColorRecruit);
		padding: 40px 0 0;
		z-index: 0;
	}
	.bl_verticalSliderWrap{
		flex-direction: column;
		width: calc(100% - 25px);
		padding: 21.75px 25px;
		padding-right: calc(15px + 10px + 25px);/* 矢印幅 + 矢印移動分 + 右側余白 */
	}
	.bl_verticalSliderTitle::after{
		content: none;
	}
}
/* ======================================================================
	コンテンツ
====================================================================== */
.bl_verticalSliderLink{
	display: flex;
	gap: 1.5px 30px;
}
.bl_verticalSliderLink_date{
	white-space: nowrap;
}
.bl_verticalSliderLink_title{
    white-space: nowrap; /* 折り返しを禁止 */
    overflow: hidden;    /* はみ出した部分を非表示 */
    text-overflow: ellipsis; /* はみ出した部分を「...」で表示 */
	max-width: 560px;/* この数値を大きくする場合は「NEWS」のタイトルが縮むため気をつける */
}
/* 何もない場合 */
.splide:has(.un_recruitNewsNone){
	visibility: visible;
}
@media screen and (max-width:992px){
	.bl_verticalSliderLink{
		flex-direction: column;
		font-size: var(--fontSize13);
	}
}
/* ======================================================================
	Splide設定
====================================================================== */
/* Splide上書き > 矢印 */
.st_verticalSlider .splide__arrows{
	position: absolute;
    right: -30px;
	top: 50%;
	transform: translateY(-50%);
    display: flex;
    flex-direction: column;
	line-height: 0;
	gap: 30px;
}
.st_verticalSlider .splide__arrow{
	background-color: initial;
	padding: 0;
	border: none;
}
.st_verticalSlider .splide__arrow svg{
	width: 15px;
	height: 15px;
}
.st_verticalSlider .splide__arrow--prev svg {
    transform: rotate(-90deg);
}
.st_verticalSlider .splide__arrow--next svg {
    transform: rotate(90deg);
}
@media screen and (max-width:992px){
	.st_verticalSlider .splide__arrows{
		right: calc(0px - 15px - 10px);/* 基準 + 矢印幅 + 文字間余白 */
	}
}
/* ******************************************************************************************
	協会を知る・仕事を知る
****************************************************************************************** */
.ly_aboutWorksSection{
	background-color: var(--mainColorRecruit);
	padding-top: 120px;
	margin-bottom: 130px;
}
.bl_aboutWorksWrap{
	display: flex;
	flex-direction: column;
	gap: 143px;
}
.bl_aboutWorksArea{
	display: flex;
	gap: 45px 75px;
	align-items: flex-start;
	width: 100%;
}
.bl_aboutWorksArea.bl_aboutWorksArea__works{
	flex-direction: row-reverse;
	justify-content: flex-end;
}
.bl_aboutWorksInfo{
	display: flex;
	flex-direction: column;
	gap: 35px 55px;
	max-width: 563px;
	width: 100%;
	position: relative;
    z-index: 1;/* 地図の重なり防止 */
}
.bl_aboutWorksInfo.bl_aboutWorksInfo__works{
	max-width: 408px;
	width: 100%;
}
.bl_aboutWorksImg.bl_aboutWorksImg__about{
	position: relative;
}
.bl_aboutWorksImg.bl_aboutWorksImg__about::before{
	content: '';
	display: block;
	width: 255px;
	aspect-ratio: 255/418;
	background-image: url(../img/recruit/img-map.svg?1);
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	bottom: -179px;
	left: -116px;
}
.bl_aboutWorksImg img{
	border-radius: 12px;
	max-width: 640px;
	width: 100%;
	height: 360px;
    object-position: center;
}
.bl_aboutWorksSectionImg{
	margin-top: -60px;
	margin-bottom: -1px;
}
@media screen and (max-width:992px){
	.ly_aboutWorksSection{
		padding-top: 85px;
		margin-bottom: 80px;
		position: relative;
        z-index: 0;/* ハンバーガーメニューオープン時重複防止 */
	}
	.bl_aboutWorksWrap{
		gap: 85px;
	}
	.bl_aboutWorksArea{
		flex-direction: column;
	}
	.bl_aboutWorksArea.bl_aboutWorksArea__works{
		flex-direction: column;
	}
	.bl_aboutWorksImg.bl_aboutWorksImg__about{
		align-self: flex-end;
		margin-right: -25px;
		padding-bottom: 179px;
		padding-left: 116px;
		max-width: 640px;
        box-sizing: content-box;
	}
	.bl_aboutWorksImg img{
		border-radius: 8px;
		height: initial;
	}
	.bl_aboutWorksImg.bl_aboutWorksImg__about img{
		border-radius: 8px 0 0 8px;
		height: 100%;
	}
	.bl_aboutWorksImg.bl_aboutWorksImg__about::before{
		bottom: 0px;
		left: 0px;
	}
	.bl_aboutWorksSectionImg{
		margin-top: 60px;
	}
}
@media screen and (max-width:576px){
	.bl_aboutWorksImg.bl_aboutWorksImg__about{
		max-width: 290px;
        height: 220px;
		padding-bottom: 135px;
        padding-left: 120px;
	}
	.bl_aboutWorksImg img{
		border-radius: 8px;
	}
	.bl_aboutWorksImg.bl_aboutWorksImg__about img{
		object-position: left;
	}
	.bl_aboutWorksImg.bl_aboutWorksImg__about::before{
		width: 193px;
	}
}
/* ******************************************************************************************
	人を知る
****************************************************************************************** */
.ly_peopleSection{
	margin-bottom: 40px;
}
.bl_peopleWrap{
	display: flex;
	justify-content: space-between;
	/* max-width: 1600px; */
	width: 100%;
	gap: 40px 50px;
	margin-left: auto;
	padding-left: max(calc((100vw - 1280px) / 2), 25px);
	/* box-sizing: content-box; */
}
.bl_peopleInfo{
	max-width: 422px;
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 35px 70px;
}
@media screen and (max-width:1400px){
	.bl_peopleWrap{
		flex-direction: column;
	}
}
@media screen and (max-width:576px){
	.ly_peopleSection{
		margin-bottom: 60px;
	}
	.bl_peopleInfo{
		padding-right: 25px;
	}
}
/* ******************************************************************************************
	スライダー
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	基本
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.st_splide3col {
    position: relative;
}
.st_splide3col a:is(:hover,:focus){
	opacity: 1;
}
.st_splide3col.splide{
	width: 960px;
}
.st_splide3col .splide__track{
	margin-bottom: 60px;
}
@media screen and (max-width:1400px){
	.st_splide3col.splide{
		align-self: flex-end;
	}
}
@media screen and (max-width:992px){
	.st_splide3col.splide{
		width: 100%;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	スライダー画像
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.st_splide3col .splide__slide img{
    border-radius: 12px;
}
@media screen and (max-width:1300px){
	.st_splide3col .splide__slide img{
		border-radius: 8px;
	}	
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	スライダーリスト
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.st_splide3col .splide__slide:nth-child(odd){
	padding-bottom: 40px;
}
.st_splide3col .splide__slide:nth-child(even){
	padding-top: 40px;
}
.st_splide3col .splide__slide{
	aspect-ratio: 320/420;
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	名前欄
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_peopleInfoBox{
	background-color: #fff;
	padding: 16px 16px 0 0;
	position: absolute;
	bottom: 0;
	left: 0;
}
.bl_peopleInfoBox_item span:nth-of-type(1){
	font-size: clamp(14px,calc(100vw * 22 / var(--vw-base)),22px);/* clamp(最小px, calc(100vw * 最大px / var(基準画面幅をrootに定義1920)), 最大px) */
	display: block;
	font-weight: 600;
}
.bl_peopleInfoBox_item span{
	font-size: var(--fontSize15);
	font-size: clamp(12px,calc(100vw * 15 / var(--vw-base)),15px);/* clamp(最小px, calc(100vw * 最大px / var(基準画面幅をrootに定義1920)), 最大px) */
	display: block;
}
.st_splide3col .splide__slide:nth-child(odd) .bl_peopleInfoBox{
	bottom: 40px;/* padding-bottom分補完 */
}
@media screen and (max-width:768px){
	.bl_peopleInfoBox_item{
		font-size: var(--fontSize15);
	}
	.bl_peopleInfoBox_item span{
		font-size: var(--fontSize12);
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	コントロールエリア
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.st_splide3col .bl_splideControlsArea{
	display: flex;
	flex-direction: column;
	gap: 25px;
	padding-right: calc(71px + 20px + 10px);/* トップへ戻るボタン重複防止→ （アイコン幅 + 移動分 + 余白） */
}
@media screen and (max-width:992px){
	.st_splide3col .bl_splideControlsArea{
		margin-top: -10px;
	}
}
@media screen and (max-width:576px){
	.st_splide3col .bl_splideControlsArea{
		display: flex;
		flex-direction: column;
		gap: 25px;
		padding-right: calc(40px + 10px + 10px);/* トップへ戻るボタン重複防止→ （アイコン幅 + 移動分 + 余白） */
	}
}
/* ======================================================================
	ページネーション
====================================================================== */
/* ------------------------------------------------------------
	ドット
------------------------------------------------------------ */
/* ドット余白 */
.st_splide3col .splide__pagination{
	display: flex;
	flex-wrap: nowrap;
}
.st_splide3col .splide__pagination li{
    line-height: 0;/* リストの余計な余白削除 */
	width: 100%;
}
/* ドット幅 */
.st_splide3col .splide__pagination__page{
    width: inherit;
    height: 6px;
    background-color: #d5d5d9;
    padding: 0;/* 幅指定の際paddingの値を継承しないように値を消す */
}
.st_splide3col .splide__pagination__page.is-active{
    background-color: var(--mainColorRecruit);
}
/* ======================================================================
	矢印
====================================================================== */
.st_splide3col .splide__arrows{
	display: flex;
	justify-content: flex-end;
	gap: 10px;
}
.st_splide3col .splide__arrow {
    width: 50px;
    height: 50px;
    border-radius: 999px;
    background-color: var(--mainColorRecruit);
    text-align: center;
	line-height: 0;
	padding: 0;
}
.st_splide3col .splide__arrow svg{
    width: 13px;
    fill: #fff;
}
.st_splide3col .splide__arrow--prev svg{
	position: relative;
	right: 2px;
}
.st_splide3col .splide__arrow--next svg{
    transform: rotate(180deg);
	position: relative;
	left: 2px;
}
@media screen and (max-width:1300px){
	.st_splide3col .splide__arrow {
		width: 30px;
		height: 30px;
	}
	.st_splide3col .splide__arrow svg{
		width: 8px !important;
		height: 8px !important;
	}
}
/* ******************************************************************************************
	先輩社員クロストーク
****************************************************************************************** */
.ly_talkSection{
	margin-bottom: -9vw;
	position: relative;
}
@media screen and (max-width:576px){
	.ly_talkSection{
		margin-bottom: 65px;
	}
}
/* ******************************************************************************************
	働く環境を知る > メイン
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	背景
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_environmentImgBg{
	background-color: #ebf2fd;
}
.un_lightBlueSectionTop{
	margin-bottom: -7vw;
}
@media screen and (max-width:576px){
	.un_lightBlueSectionTop{
		margin-bottom: -65px;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	タイトルエリア
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_environmentImgArea{
    max-width: 1438px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	padding-bottom: 50px;
}
.bl_environmentImgTitleArea{
	display: flex;
	gap: 17px;
	justify-content: center;
}
.un_environmentLeftImg{
	align-self: flex-end;
}
.un_environmentRightImg{
	align-self: center;
}
.un_environmentTitleImg{
	max-width: 821px;
	width: 100%;
	padding-bottom: calc(77px + 26px);/* 空けたい余白 + ボタンのネガティブマージン */
}
.un_environmentTitleImg img{
	margin-bottom: 65px;
}
.un_environmentTitleImg p{
	text-align: center;
	font-size: var(--fontSize18);
	font-weight: 400;
	line-height: 2;
}
/* ボタン */
.el_arrowBtn.el_arrowBtn__positionChange{
	margin-left: auto;
	margin-right: auto;
	margin-top: -26px;
	z-index: 1;/* これがないと押せない */
	justify-content: center;
}
.un_environmentCenterImg{
	display: none;
}
@media screen and (max-width:1300px){
	.un_environmentCenterImg{
		display: flex;
		justify-content: center;
		padding-left: 15px;
		padding-right: 15px;
	}
	.el_arrowBtn.el_arrowBtn__positionChange{
		margin-top: 0;
	}
	.un_environmentLeftImg,.un_environmentRightImg{
		display: none;
	}
	.bl_environmentImgTitleArea{
		padding-left: 25px;
		padding-right: 25px;
	}
}
@media screen and (max-width:576px){
	.un_environmentTitleImg{
		padding-bottom: 30px;/* 空けたい余白 + ボタンのネガティブマージン */
	}
	.un_environmentTitleImg p{
		font-size: var(--fontSize15);
	}
	.un_environmentTitleImg img{
		margin-bottom: 28px;
	}
	.bl_environmentImgArea{
		padding-bottom: 0;
	}
}
/* ******************************************************************************************
	働く環境を知る > サブエリア
****************************************************************************************** */
.bl_environmentSubArea{
	background-image: url(../img/recruit/bg-nami-hito.png);
	background-repeat: no-repeat;
	background-size: cover;
	padding-top: 490px;
	padding-bottom: 325px;
	display: flex;
	background-position: center;
	position: relative;
	margin-top: -480px;
}
.bl_environmentSubAreaInner{
	max-width: 1120px;
	width: 100%;
	padding-left: 25px;
	padding-right: 25px;
	margin-left: auto;
	margin-right: auto;
}
.bl_environmentSubCatchphraseImg{
	max-width: 753px;
	margin-bottom: 90px;
	margin-left: auto;
	margin-right: auto;
}
.bl_environmentSubTitle{
	display: flex;
	justify-content: center;
	margin-bottom: 90px;
}
@media screen and (max-width:576px){
	.bl_environmentSubArea{
		background-image: url(../img/recruit/bg-nami-hito-sp.png);
		padding-top: 250px;
		padding-bottom: 150px;
        margin-top: -120px;
	}
	.bl_environmentSubTitle{
		margin-bottom: 40px;
	}
	.bl_environmentSubCatchphraseImg{
		margin-bottom: 40px;
	}
}
@media screen and (max-width:450px){
	.bl_environmentSubArea{
		background-image: url(../img/recruit/bg-nami-hito-sp.png);
		padding-top: 150px;
		padding-bottom: 110px;
        margin-top: -60px;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	ボタン
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_environmentSubBtnArea{
	display: flex;
	/* justify-content: space-between; */
	justify-content: center;
	gap: 20px;
}
.bl_environmentBtn{
	max-width: 520px;
    width: 100%;
    height: 140px;
    display: flex;
    align-items: center;
	font-size: var(--fontSize28);
    background-color: #fff;
    color: var(--mainColorRecruit);
    border-radius: 6px;
    font-weight: 700;
    padding-left: 40px;
    padding-right: calc(20px + 30px + 0px);/* アイコン幅 + 移動距離 + 余白 */
    position: relative;
    border: 1px solid var(--mainColorRecruit);
}
.bl_environmentBtn::before {
    content: '';
    position: absolute;
    top: calc(50% + 2px);
    right: 30px;
    display: block;
    transform: translateY(-50%) rotate(90deg);
    border-style: solid;
    border-width: 0 10px 20px 10px;
    border-color: transparent transparent var(--mainColorRecruit) transparent;
}
.bl_environmentBtn.bl_environmentBtn__yellow{
	background-color: #d8df53;
	color: var(--mainColorRecruit);
}
.bl_environmentBtn.bl_environmentBtn__yellow::before{
	border: initial;
	background-image: url(../img/common/icon-newtab-blue.png);
	background-repeat: no-repeat;
	background-size: contain;
	width: 26px;
	height: initial;
	aspect-ratio: 1/1;
	transform: translateY(-50%) rotate(0deg);
}
@media screen and (max-width:1200px){
	.bl_environmentBtn{
		font-size: var(--fontSize24);
	}
}
@media screen and (max-width:992px){
	.bl_environmentSubBtnArea{
		flex-direction: column;
	}
	.bl_environmentBtn{
		margin-left: auto;
		margin-right: auto;
	}
}
@media screen and (max-width:576px){
	.bl_environmentBtn{
		max-width: 320px;
		height: 80px;
		font-size: var(--fontSize17);
		font-weight: bold;
		padding-left: 20px;
		padding-right: calc(12px + 15px + 0px);/* アイコン幅 + 移動距離 + 余白 */
	}
	.bl_environmentBtn::before {
		right: 15px;
		border-width: 0 6px 12px 6px;
	}
	.bl_environmentBtn.bl_environmentBtn__yellow::before{
		width: 15px;
	}
}
/* ******************************************************************************************
	採用サイト > 詳細ページ
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	ヘッダー
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_recruitSubVisualArea{
	position: relative;
	margin-bottom: -170px;
}
.bl_recruitSubVisualArea img{
	width: 100%;
}
.un_recruitSubVisualDeco{
	position: absolute;
	bottom: -1px;
	right: 0;
}
@media screen and (max-width:1200px){
	.bl_recruitSubVisualArea{
		margin-bottom: -100px;
	}
}
@media screen and (max-width:576px){
	.bl_recruitSubVisualArea{
		margin-bottom: -40px;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	タイトル
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_recruitSubTitleWrap{
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: end;
	margin-right: max(calc((100vw - 1280px) / 2), 25px);/* calcでインナー外側の余白計算と0の場合20px適用 */
	gap: 30px;
}
.bl_recruitSubTitleBox{
	background-color: var(--mainColorRecruit);
	padding: 50px 70px;
	display: flex;
	align-items: center;
	border-radius: 0 10px 10px 0;
	max-width: 960px;
	width: 100%;
}
.bl_recruitSubTitle{
	display: flex;
	flex-direction: column;
	color: #fff;
	position: relative;
	z-index: 0;
}
.bl_recruitSubTitle_jp{
	display: inline-block;
	font-size: var(--fontSize20);
	font-weight: 700;
	display: flex;
	align-items: center;
	gap: 25px;
	margin-right: 15px;
}
.bl_recruitSubTitle_jp::after{
	content: "";
    flex: 1;
    height: 1px;
    background-color: #fff;
}
.bl_recruitSubTitle_en{
	display: inline-block;
	font-size: var(--fontSize65);
	font-family: "Montserrat", sans-serif;
	font-weight: 600;
	letter-spacing: 8px;
}
@media screen and (max-width:1200px){
	.bl_recruitSubTitleWrap{
		flex-direction: column;
		margin-right: initial;
		align-items: initial;
	}
	.bl_recruitSubTitleBox{
		height: initial;
		padding: 30px 60px;
		width: fit-content;
	}
	.bl_recruitSubTitleBox::before{
		height: 130px;
	}
	.bl_recruitSubTitle_jp{
		font-size: var(--fontSize16);
		gap: 15px;
	}
	.bl_recruitSubTitle_en{
		font-size: var(--fontSize50);
	}
}
@media screen and (max-width:576px){
	.bl_recruitSubTitleWrap{
		gap: 15px;
	}
	.bl_recruitSubTitleBox{
		padding: 15px 30px 10px;
	}
	.bl_recruitSubTitle_jp{
		font-size: var(--fontSize14);
		gap: 12px;
	}
	.bl_recruitSubTitle_en{
		font-size: var(--fontSize28);
		letter-spacing: 3px;
	}
	.bl_recruitSubTitleBox::before{
		content: none;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	内部リンク
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_recruitPageListUnit{
	display: flex;
	flex-direction: column;
	/* gap: 19px 30px; */
	gap: 10px 30px;
	flex-wrap: wrap;
}
.bl_recruitPageList_link{
	font-size: var(--fontSize18);
	font-weight: 500;
	color: var(--mainColorRecruit);
	padding-left: calc(14px + 10px);/* 矢印幅 + 余白 */
	position: relative;
	text-shadow: 
	1px  0   0 #fff,
	-1px  0   0 #fff,
	 0    1px 0 #fff,
	 0   -1px 0 #fff,
	 1px  1px 0 #fff,
	 1px -1px 0 #fff,
	-1px  1px 0 #fff,
	-1px -1px 0 #fff;
}
.bl_recruitPageList_link::before{
	content: '';
	width: 0;               /* 幅を0に設定 */
	height: 0;              /* 高さを0に設定 */
	border-left: 7px solid transparent; /* 左のボーダーを透明に */
	border-right: 7px solid transparent; /* 右のボーダーを透明に */
	border-top: 12px solid var(--mainColorRecruit);     /* 上のボーダーに色を付けて三角形の本体にする */
	display: inline-block;
	position: absolute;
	top: 9px;
	left: 0;
	filter:
	drop-shadow(1px 0 0 #fff)
	drop-shadow(-1px 0 0 #fff)
	drop-shadow(0 1px 0 #fff)
	drop-shadow(0 -1px 0 #fff);
}
@media screen and (max-width:1200px){
	.bl_recruitPageListUnit{
		flex-direction: row;
		padding: 0 25px;
	}
}
@media screen and (max-width:576px){
	.bl_recruitPageList_link{
		font-size: var(--fontSize14);
		padding-left: calc(14px + 3px);/* 矢印幅 + 余白 */
	}
	.bl_recruitPageList_link::before{
		border-left: 5px solid transparent; /* 左のボーダーを透明に */
		border-right: 5px solid transparent; /* 右のボーダーを透明に */
		border-top: 8px solid var(--mainColorRecruit);     /* 上のボーダーに色を付けて三角形の本体にする */
		top: 7px;
		left: 0;
	}
}
/* ******************************************************************************************
	採用サイト > 人を知る > トップ
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	リスト
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.page-id-11952 .bl_peopleList{
	display: flex;
	grid-template-columns: initial;
	gap: 30px 20px;
	margin-bottom: 108px;
	flex-wrap: wrap;
}
.page-id-11952 .bl_peopleList_item{
	aspect-ratio: 320/420;
	max-width: 320px;
	width: calc((100% - 60px) / 4);/* calc(100% - 余白gap3つ分の合計) / カラム数 */
	position: relative;
}
.page-id-11952 .bl_peopleList_item img{
	border-radius: 12px;
}
@media screen and (max-width:992px){
	.page-id-11952 .bl_peopleList{
		max-width: calc(320px + 20px + 320px);/* カード幅 + 余白 + カード幅 */
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 60px;
	}
	.page-id-11952 .bl_peopleList_item{
		width: calc((100% - 20px) / 2);/* calc(100% - 余白gap3つ分の合計) / カラム数 */
	}
}
@media screen and (max-width:576px){
	.page-id-11952 .bl_peopleInfoBox{
		position: initial;
		padding: 5px 0 0;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	見出し
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.page-id-11952 .el_title_blueLines{
	margin-bottom: 73px;
}
.page-id-11952 .el_title_blueLines.el_title_blueLines__marginChange{
	margin-bottom: 0;
}
@media screen and (max-width:576px){
	.page-id-11952 .el_title_blueLines,.page-id-11952 .el_title_blueLines.el_title_blueLines__marginChange{
		margin-bottom: 30px;
	}
}
/* ******************************************************************************************
	採用サイト > 人を知る > 詳細
****************************************************************************************** */
.parent-pageid-11952 .st_editorRecruit{
	letter-spacing: 2px;
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	エディター部分 > キャッチコピーと職員情報
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* キャッチコピー */
.st_editorRecruit .st_interviewMeta .bl_interviewMeta_title{
	font-size: var(--fontSize28);
	font-weight: bold;
	padding: 20px 30px;
	line-height: 2;
	border-left: 1px solid var(--mainColorRecruit);
}
/* 職員情報 */
.st_editorRecruit .st_interviewMeta .bl_interviewMeta_info{
	border-radius: 12px;
	line-height: 1.8;
	margin-bottom: 0;
}
@media screen and (max-width:576px){
	.st_editorRecruit .st_interviewMeta .bl_interviewMeta_title{
		font-size: var(--fontSize20);
		padding: 10px 15px;
		line-height: 1.5;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	エディター部分（タイトル）
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* 人を知るの子ページ（インタビューページ）の見出し */
.parent-pageid-11952 .st_editorRecruit h2{
	font-size: var(--fontSize18);
}
.parent-pageid-11952 .st_editorRecruit h3{
	font-size: var(--fontSize22);
	padding: 0;
	color: var(--black);
	margin-top: 30px;
	margin-bottom: 20px;
}
.parent-pageid-11952 .st_editorRecruit h3::before,.parent-pageid-11952 .st_editorRecruit h3::after{
	content: none;
}
.parent-pageid-11952 .st_editorRecruit h2::after{
	content: none;
}
@media screen and (max-width:576px){
	.parent-pageid-11952 .st_editorRecruit h2{
		margin-top: 40px;
		margin-bottom: 10px;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	タイムスケジュール
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* タイムライン全体を囲むコンテナ */
.bl_timeline {
    padding: 40px; /* 左右の余白 */
	background-color: #f4f8fe;
	border-radius: 8px;
}

/* 各タイムライン項目 */
.bl_timeline_item {
    position: relative;
    padding-left: calc(20px + 15px); /* calc(ドット幅 + 余白 */
    padding-bottom: 25px; /* 縦線の下の余白調整 */
	display: flex;
	gap: 30px;
}
.bl_timeline_item:last-of-type{
	padding-bottom: 0;
}

/* タイムラインの縦線 */
.bl_timeline_item::before {
    content: "";
    position: absolute;
    top: 25px; /* ドットの中心から線を伸ばすように調整 */
    left: 8px; /* ドットの中央に線を配置 (ドット幅15pxの半分-1px程度) */
    width: 2px; /* 線の太さ */
    background-color: var(--mainColorRecruit); /* 線の色 */
    bottom: -10px; /* 縦線を次の項目まで伸ばす */
    z-index: 0; /* ドットや時刻表示より後ろに */
}

/* 最後のタイムライン項目には縦線を短く、または表示しない */
.bl_timeline_item:last-child::before {
    display: none; /* 最後の項目は線を非表示 */
}

/* 時刻表示 */
.bl_timeline_time {
    white-space: nowrap;
    width: 50px;
	font-weight: 500;
}

/* タイムラインの丸いドット */
.bl_timeline_dot {
    content: "";
    display: block;
    position: absolute;
    top: 5px; /* タイムライン項目の上端からの位置 */
    left: 0; /* 左端に配置 */
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: var(--mainColorRecruit); /* ドットの色 */
    box-sizing: content-box;
    z-index: 2; /* ドットを一番手前に */
	border: 3px solid #f4f8fe;
}

/* タイムラインの内容コンテナ */
.bl_timeline_content {
    position: relative; /* 重なり順のため */
    z-index: 1; /* ドットと時刻表示より奥、ただし縦線より手前 */
}

/* タイトル */
.st_editorRecruit p.bl_timeline_content_title {
	margin-bottom: 0;
	font-weight: 500;
}

/* 説明文 */
.st_editorRecruit p.bl_timeline_content_description {
    font-size: 0.95em;
    line-height: 1.6;
    color: #555;
	margin-bottom: 10px;
}
/* ******************************************************************************************
	採用サイト > 働く環境を知る
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	働き方データ > エディター上書き
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* .st_editorRecruit .wp-block-gallery.wp-block-gallery-1 {
	--wp--style--unstable-gallery-gap: 40px;

} */
/* .st_editorRecruit :where(.wp-block-gallery.is-layout-flex) {
	gap: 40px;
	max-width: 1130px;
	margin-left: auto;
	margin-right: auto;
} */
/* ギャラリーブロックのギャップを調整 */
/* ---------------------------------------------------- */
/* WordPress ギャラリーブロック (3カラム) のギャップ調整 */
/* ---------------------------------------------------- */

/* ギャラリーコンテナ全体のスタイルを調整 */
.st_editorRecruit .wp-block-gallery.is-layout-flex.columns-3.un_galleryArea {
    --wp--style--block-gap: clamp(10px,calc(100vw * 40 / var(--vw-base)),40px);
	max-width: 1130px;
	margin-left: auto;
	margin-right: auto;
    /* --wp--style--unstable-gallery-gap: 40px;  */
}

/* 個々のギャラリーアイテムのスタイルを調整 */
.st_editorRecruit .wp-block-gallery.is-layout-flex.columns-3.un_galleryArea .blocks-gallery-item,
.st_editorRecruit .wp-block-gallery.is-layout-flex.columns-3.un_galleryArea figure.wp-block-image {
    width: auto; 
}
@media screen and (max-width:992px){
	/* 個々のギャラリーアイテムのスタイルを調整 */
.st_editorRecruit .wp-block-gallery.is-layout-flex.columns-3.un_galleryArea .blocks-gallery-item,
.st_editorRecruit .wp-block-gallery.is-layout-flex.columns-3.un_galleryArea figure.wp-block-image {
    width: calc(50% - var(--wp--style--unstable-gallery-gap, 16px)/2); 
}
}
/* ******************************************************************************************
	フッター > 本体フッターをst_recruitFooterで上書き
****************************************************************************************** */
.st_recruitFooter .bl_footerLinksSection{
	padding: 90px 0 115px;
}
.st_recruitFooter .bl_footerLinksContainer{
	background-color: #f0f2f9;
	border-radius: 0;
}
.st_recruitFooter .bl_footerMainContainer{
	background-color: #e1e5f2;
}
.st_recruitFooter .bl_footerLogoArea{
	margin-bottom: 0;
}
.st_recruitFooter .bl_footerLogoArea{
	max-width: 446px;
	width: 100%;
}
.st_recruitFooter .bl_footerMainContainer{
	padding-bottom: 106px;
}
.un_footerBtn{
	max-width: 270px;
    width: 100%;
    height: 55px;
    display: flex;
    align-items: center;
    background-color: var(--mainColor);
    color: #fff;
    border-radius: 6px;
    font-weight: 700;
    padding-left: 27px;
    padding-right: calc(10px + 15px + 10px);/* アイコン幅 + 移動距離 + 余白 */
    position: relative;
	font-size: var(--fontSize15);
}
.un_footerBtn::after{
	content: '';
    position: absolute;
    top: 50%;
    right: 15px;
	background-image: url(../img/common/icon-newtab-white.png);
	background-repeat: no-repeat;
	background-size: contain;
    display: block;
    transform: translateY(-50%);
    border-style: solid;
	width: 13px;
	aspect-ratio: 1/1;
}
@media screen and (max-width:768px){
	.st_recruitFooter .bl_footerLinksSection{
		padding: 65px 20px 75px;
	}
	.st_recruitFooter .bl_footerMainContainer{
		padding-left: 20px;
		padding-right: 20px;
	}
}
@media screen and (max-width:576px){
	.st_recruitFooter .bl_footerManualList_item{
		width: 100%;
	}
	.st_recruitFooter .bl_footerLogoArea img{
		max-width: 270px;
	}
	.st_recruitFooter .bl_footerMainContainer{
		padding: 45px 20px 50px;
	}
	.st_recruitFooter .bl_footerMain_Wrap{
		gap: 30px;
	}
	.un_footerBtn{
		max-width: 220px;
		height: 40px;
		font-size: var(--fontSize12);
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	親ページ > バナーリンク
//////////////////////////////////////////////////////////////////////////////////////////////////// */
.bl_bannerNavList{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30px;
}
.bl_bannerNavList_link{
	width: 100%;
}
@media screen and (max-width:1300px){
	.st_bannerNav .bl_gNav_item_image {
        display: block; /* 画像を非表示 */
    }
    .st_bannerNav .bl_gNav_item_text_mobile {
        display: none;  /* スマホ用テキストを表示 */
    }
	.st_bannerNav .bl_gNav_link{
		position: relative;
        display: block;
        padding: 0;
        border-bottom: none;
        color: var(--black);
        margin: 0;
	}
}
@media screen and (max-width:576px){
	.bl_bannerNavList{
		grid-template-columns: repeat(1, 1fr);
		gap: 10px;
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	印刷用スタイル
//////////////////////////////////////////////////////////////////////////////////////////////////// */
@media print{
	body{
		/* 背景色反映のため */
		-webkit-print-color-adjust: exact;
	}
}