@charset "UTF-8";
/* CSS Document */
html{
	width: 100%;
	height:100%;
}

body {
	width: 100%;
	margin: 0;
	padding: 0;
	height:100%;
	text-align: center;
}
        
body#submission {
	background: #e1e2e3;
}

body#top {
	position: relative;
}
ul,
li {
	list-style: none;
	margin: 0;
	padding: 0;
}
#main{
	width: calc(100% - 280px);
	justify-content: center;
	max-width:100%;
}


/*FireFoxのみ左マージン確保*/
@-moz-document url-prefix() {
	#main{ padding-left:20px; }
}
/*ヘッダー*/
.contentsTOP {
	display: flex;
	align-items: center;
    justify-content: space-between;
	padding: 10px 20px;
	height: 30px;
}
.contentsTOP ul {
	display: flex;
}
.contentsTOP ul.left {
	float: left;
	margin-left: 5px;
}
.contentsTOP ul.right {
	float: right;
	position: relative;
}
.contentsTOP ul.left li {
	font-size: 20px;
	font-weight: 600;
}
.contentsTOP ul.right li {
	margin-left: 10px;
}
.contentsTOP ul.right li.h_ico img {
	margin-top: 2px;
}
.logo img {
	width: 150px;
	height: auto;
}
.contentsTOP ul.right li.person {
	margin-bottom: 2px;
	width: 30px;
	height: 30px;
	border: none;
	background-color: #D9D9D9;
/*	background-image: url("/admin/img/resume_img2.png");*/
	background-position: center;
	background-size: auto 100%;
	background-repeat: no-repeat;
/*	cursor: pointer;*/
	border-radius: 50px;
	font-size:8px;
  display: flex;
  align-items: center; 
  justify-content: center; /* 水平方向中央揃え */
}

.contentsArea {
	margin: 0 auto;
}

.main_content {
	display: flex;
	gap: 10px;
	align-items: flex-end;
	zoom: 0.75;
}
.main_description {
	font-size: 14px;
	color: #E32F2B;
	font-weight: 600;
}

.headerTop,
.headerMiddle {
	margin: 20px 0
}
.headerTop {
	margin-bottom: 5px;
}
.headerTop .header_title{
	font-weight:bold;
}

.headerTop,
.headerTop ul {
	display: flex;
	align-items: center;
}

.headerMiddle ul {
	display: flex;
	align-items: center;
}

.headerMiddle ul li a {
	text-decoration: none;
	color: #000;
}

.headerMiddle ul li.active a {
	background: #4caf56;
	border-radius: 20px;
	padding: 4px 8px;
	color: #fff;

}

.headerMiddle ul li {
	padding-left: 20px;
}

.headerMiddle ul p,
.headerMiddle ul li {
	font-size: 12px;
}

.headerMiddle ul.left {
	float: left;
}

.headerMiddle ul.right {
	padding-left: 60px;
}

.headerMiddle .legend{
	font-weight:bold;
}

.headerBottom {
	display: flex;
	clear: both;
	justify-content: space-between;
}

.headerBottomR {
	display: flex;
	margin-top: 30px;
}

.headerBottom select,
.terms select {
	color: gray;
	width: 150px;
}

.headerBottom a {
	border-radius: 6px;
	font-size: 10px;
	background: #3a4f63;
	color: #fff;
	padding: 9.8px 7.5px;
	margin-left: 6px;
	text-decoration: none;
}

#searchForm ::placeholder {
	font-size: 11px;
	padding-left: 30px;
}

.searchBox ::placeholder {
	text-align: left;
	font-size: 11px;
	padding-left: 10px;
}

.terms ul {
	display: flex;
	justify-content: space-between;
}

.searchBox input,
.searchBox select,
.terms select,
.headerBottom select,
.headerBottom input {
	height: 30px;
	border-radius: 4px;
	border: 1px solid #d4d4d8;
	box-sizing: border-box;
}
.searchBox textarea {
	border-radius: 4px;
	border: 1px solid #d4d4d8;
}
.searchBox input#cancel {
	box-sizing: border-box;
	padding-left: 0.5rem;
	width: 100%;
	height: 40px;
}
.searchBox input#cancel::placeholder {
	padding-left: 0;
}

.searchBox input::-webkit-search-cancel-button {
	position: absolute;
	left: 10px;
	cursor: pointer;
}

.headerTop input::-webkit-search-cancel-button {
	position: absolute;
	left: 10px;
	cursor: pointer;
}

.terms #searchForm {
	position: relative;


	font-size: 14px;
	background: #fff;
}

.terms #searchForm input[type="text"] {
	height: 34px;
	padding: 0;
	position: absolute;
	left: 10px;
	top: 0px;
	border: none;
	background: none;
}

.terms #searchForm input[type="text"]:focus {
	outline: 0;
}

.terms #searchForm input[type="submit"] {
	position: absolute;
	top: 7px;
	border: none;
	background-color: #fff;
	background-position: center;
	background-size: auto 100%;
	background-repeat: no-repeat;
	cursor: pointer;
}
.terms select,
.terms input {
	width: 220px;
}

.terms #searchForm {
	float: left;
}

.select span {
	font-size: 14px;
}

.select {
	font-size: 13px;
}
/* 一覧画面 */
.contentsBox {
	position: relative;
	padding: 20px;
	text-align: left;
	box-sizing: border-box;
	width: 100%;
}
.contentsBox h1 {
	font-size: 20px;
}
.contentsBox hr, .contentsArea hr, .edit_contents hr {
	border: 1px solid #d4d4d8;
}
.headerArea {
    position: sticky;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 300;
}
.output-group {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.button-group {
	display: flex;
	gap: 10px;
}
.button-group.right {
	justify-content: flex-end;
}
.recruitment-group {
	display: flex;
    flex-direction: column;
	min-width: 300px;
}
.recruitment-btn {
	display: flex;
	align-items: flex-end;
	margin-left: auto;
}
.notice-group {
	display: flex;
    flex-direction: column;
	min-width: 250px;
}
.notice-btn {
	display: flex;
	align-items: flex-end;
	margin-left: auto;
}
ul.edit {
	display: flex;
	margin: 10px 0;
	align-items: center;
	gap: 10px;
}
#summaryText {
    position: sticky;
    top: 60px;
    z-index: 290;
    font-size: 14px;
    font-weight: 500;
    padding-bottom: 10px;
    background: white;
    padding: 10px;
}
#summaryText .hit{
	color: red;
	font-size: 20px;
	font-weight: 700;
}
/* 検索ボックス */
.searchBox,
#searchForm {
	position: relative;
}
.search_form {
	position: sticky;
    top: 0;
    z-index: 10;
	background-color: #fff;
	zoom: 0.75;
}
.searchBox {
    padding: 20px;
    background-color: #f2f2f2;
    border-radius: 6px;
}
.search-group {
    display: flex;
    flex-direction: column;
    width: calc(20% - 10px); 
    min-width: 160px;
}
.search-group input.recruit-summary {
	width: 240px;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.search-radio {
	accent-color: rgb(70, 130, 180);
    transform: scale(1.5);
    margin: 0px;
}
.searchBox input,
.searchBox select {
	height: 30px;
	border-radius: 4px;
	border: 1px solid #d4d4d8;
	box-sizing: border-box;
}
.searchBox textarea {
	border-radius: 4px;
	border: 1px solid #d4d4d8;
}
.searchBox input#cancel {
	box-sizing: border-box;
	padding-left: 0.5rem;
	width: 100%;
	height: 40px;
}
.searchBox label{
	font-size: 14px;
	font-weight: 600;
	margin-right: 10px;
	margin-bottom: 8px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.dropdown-menu {
	position: absolute;
	background-color: white;
	border: 1px solid #ccc;
	box-sizing: border-box;
	max-height: 200px;
	overflow-y: auto;
	width: 100%;
	z-index: 999;
}
.dropdown-item {
	padding: 8px;
	cursor: pointer;
}
.dropdown-item:hover {
	background-color: #f1f1f1;
}
.multi-select-wrapper {
	position: relative;
	display: inline-block;
}
.search-input {
	padding: 0 5px;
}
.multi-select-input {
	width:100%;
	padding: 0 5px;
}
.multi-select-item {
	width:100%;
	margin-left: 10px;
	font-size:10px;
}
.search-toggle-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 20px 0;
}
.flex-divider {
    flex: 1;
    border: none;
    border-top: 1px solid #ccc;
}
.summary-actions {
	display: flex; 
	align-items: center;
	gap: 10px;
}

/* 一覧画面（テーブル） */
.contentsTable {
	overflow-x: scroll;
	position: relative;
	border-radius: 6px;
	width: 100%;
	border: 1px solid #d4d4d8;
}
.tableThead {
	display: flex;
	min-width: 100%;
	width: fit-content;
	align-items: flex-start;
}
.scrollWrap {
	width: 100%;
	z-index: 4;
}
.resultTable {
	border-collapse: separate;
	border-spacing: 0;
	width: 100%;
	font-size: 10px;
	table-layout: auto;
}
.resultTable th,
.resultTable td {
	padding: 0;
	margin: 0;
	height: 50px;
	padding: 8px 10px;
	white-space: nowrap;
	text-align: center;
	box-sizing: border-box;
	line-height: 1.4;
	vertical-align: middle;
}
.resultTable th.resizable {
	position: relative;
}
.resultTable th .resizer {
	position: absolute;
	top: 0;
	right: 0;
	width: 5px;
	height: 100%;
	cursor: col-resize;
	z-index: 1;
	background: transparent;
	transition: background-color 0.2s;
}
.resultTable th .resizer:hover {
	background-color: #007bff;
}
.resultTable th.sticky-col .resizer {
	display: none !important;
}
.resultTable th:last-child,
.resultTable td:last-child {
	min-width: 70px;
	word-break: break-word;
}
.resultTable thead th {
	background-color: #f2f2f2;
	border: none;
}
.resultTable td {
	border-left: 1px solid #ebebeb;
	border-bottom: 1px solid #ebebeb;
	background-color: #ffffff;
	position: relative;
}
/* 氏名 */
.resultTable .name {
	display: flex;
	width: 100%;
	text-align: center;
	justify-content: center;
    word-wrap: break-word;
    white-space: normal;
}
/*　全角3文字 */
.resultTable .txt3 {
    display: block;
    text-align: center;
    width: 45px;
    margin: 0 auto;
    word-wrap: break-word;
    word-break: break-all;
    overflow-wrap: break-word;
    white-space: normal;
}
/*　中学、大学など */
.resultTable .school {
	display: inline-block;
	width: 75px;
	text-align: center;
    word-wrap: break-word;
    white-space: normal;
}
/* 現在 */
.resultTable .gakunen {
	width: 70px;
	text-align: center;
    word-wrap: break-word;
    white-space: normal;
}
/* 在籍 */
.resultTable .zaiseki {
	width: 70px;
	margin: 0 auto;
	display: flex;
	text-align: center;
	justify-content: center;
    word-wrap: break-word;
    white-space: normal;
}
/* 早期 */
.resultTable .souki {
	width: 70px;
	display: flex;
	text-align: center;
    word-wrap: break-word;
    white-space: normal;
}
/* フォローアップ */
.resultTable .followup {
	display: flex;
	text-align: center;
	width: 70px;
	margin: 0 auto;
    word-wrap: break-word;
    white-space: normal;
}
/* 備考 */
.resultTable .comment {
	width: 60px;
	display: flex;
	flex-direction: column;
	max-height: 150px;
	text-align:left;
    word-wrap: break-word;
    white-space: normal;
    padding: 5px;
	overflow-y: auto;
	line-height: 1;
}
.resultTable .history {
	width: 100%;
	display: flex;
	max-height: 150px;
	text-align:left;
    word-wrap: break-word;
    white-space: normal;
    padding: 5px;
	overflow-y: auto;
}
.resultTable .status {
	font-size: 10px;
	justify-content: center;
	text-align: center;
	margin: 0 auto;
    white-space: normal;
    padding: 5px;
}
.resultTable .recruit{
	display: flex;
	justify-content: center;
    word-wrap: break-word;
    white-space: normal;
    padding: 5px;
}
/* コメント */
.resultTable .comment2 {
	display: flex;
	flex-direction: column;
	width: 350px;
	max-height: 150px;
    text-align: left;
    word-wrap: break-word;
    white-space: normal;
    padding: 5px;
	overflow-y: auto;
}
/* コメント（フォローアップコメント） */
.resultTable .comment3 {
	display: flex;
	flex-direction: column;
	width: 350px;
	max-height: 150px;
	line-height: 2;
    text-align: left;
    word-wrap: break-word;
    white-space: normal;
    padding: 5px;
	overflow-y: auto;
}
/* 顔写真 */
.resultTable .face_indication {
	display: flex;
	width: 100px;
	text-align: center;
	justify-content: center;
    word-wrap: break-word;
    white-space: normal;
	margin:0;
}
/* 各のコメントの間隔 */
.readonly_comment {
    padding-bottom: 5px;
}

/*　システム設定（テーブル）*/
.result_tbl {
	border-collapse: separate;
	border-spacing: 0px;
	width: 100%;
	font-size: 12px;
	table-layout: auto;
	zoom: 0.9;
}
.result_tbl th{
    background-color: #f2f2f2;
    height: 50px;
    text-align: center;
    border-bottom: 1px #999 solid;
}
.result_tbl td{
    height: 50px;
    padding: 5px;
    border-left: 1px #ebebeb solid;
    border-collapse: collapse;
    border-bottom: 1px #ebebeb solid;
    border-spacing: 0px;
	text-align: center;
}
.table-header {
	overflow-x: auto;
}
.result_tbl thead th {
    text-align: center;
    padding: 0 10px;
	border-right: none;
	border-left: none;
    border-bottom: 1px solid #ddd;
}
.result_tbl td, .result_tbl th {
    padding: 5px;
    white-space: nowrap;
	justify-items: center;
}

/*ページネーション */
.pagination-1 {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 20px 0;
	list-style-type: none;
	padding: 0;
}
.pagination-1 li.current a {
	background: #afbecd;
}
.pagination-1 a {
	box-sizing: border-box;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 2em;
	height: 2em;
	background-color: #191970;
	color: #fff;
	transition: background-color 0.3s;
}
.pagination-1 a:hover {
	background-color: #2A2AA0;
}
.pagination-1 a:not(:hover) {
	text-decoration: none;
}
.pagination-1 .current a {
	background-color: #12364f;
	color: #fff;
	pointer-events: none;
}
.pagination-1 .prev a,
.pagination-1 .next a {
	gap: 0 4px;
	width: auto;
	padding: .5em .8em;
	line-height: 1;
}
.pagination-1 .prev a::before,
.pagination-1 .next a::after {
	display: inline-block;
	transform: rotate(45deg);
	width: .3em;
	height: .3em;
	content: '';
}
.pagination-1 .prev a {
	border-radius: 4px 0 0 4px;
}

.pagination-1 .next a {
	border-radius: 0 4px 4px 0;
}

.error-message {
	display: none;
	font-size: 12px;
	color: red;
}
.select-group {
	display: flex;
}
.select-group .select {
	width: 100%;
	flex: 1;
}

#searchBox2 {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.searchBox input[type="submit"] {
	position: absolute;
	right: 10px;
	top: 30px;
	width: 15px;
	height: 15px;
	border: none;
	background-color: #fff;
	background-image: url("/admin/img/search.svg");
	background-position: center;
	background-size: auto 100%;
	background-repeat: no-repeat;
	cursor: pointer;
}

#searchForm input[type="submit"] {
	position: absolute;
	right: 10px;
	top: 7px;
	width: 15px;
	height: 15px;
	border: none;
	background-color: #fff;
	background-image: url("/admin/img/search.svg");
	background-position: center;
	background-size: auto 100%;
	background-repeat: no-repeat;
	cursor: pointer;
}

.headerBottom p {
	font-size: 12px;
	margin: 0;
	padding: 0 0 4px 0;
}

.headerTop ul {
	margin-left: 30px;
}

.headerTop ul li {
	width: 80px;
	font-size: 11px;
	padding: 6px 10px;
	text-align: center;
}

.headerTop ul li:first-child {
	font-size: 11px;
	background: #12364f;
	color: #fff;
	border-radius: 5px 0 0 5px;
}

.headerTop ul li:nth-child(2) {
	background: #cacaca;
	border-radius: 0 5px 5px 0;
}

.headerTop ul li a {
	color: #373737;
	text-decoration: none;
}

.active li {
	list-style-type: disc;
}

#sidemenu {
	background: #000;
	opacity: 0.75;
}

#sidemenu ul li a {
	display: block;
	padding: 15px;
	border-bottom: #333 solid 1px;
	color: #FFF;
	text-decoration: none;
}

#sidemenu ul li a:hover {
	background: #333;
}

#sidemenu_key {
	border-radius: 0 5px 5px 0;
	background: #000;
	opacity: 0.75;
	color: #FFF;
	padding: 30px 0;
	cursor: pointer;
	margin-top: 50px;
}

#sidemenu_key:hover {
	opacity: 0.5;
}


/*必要なCSS：ここから*/
#menu_wrap {
	display: block;
	position: fixed;
	top: 0;
	/* widthはメニュー幅+keyボタン幅 */
	width: 400px;
	/* メニュー幅に合わせる */
	left: -150px;
	z-index: -1;
}

#sidemenu {
	display: inline-block;
	width: 150px;
	/* float:left; */
}

#sidemenu_key {
	display: inline-block;
	width: 50px;
	/* float:left; */
}


/* buttonの統一 */
.button, .btn_noicon {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	height: 25px;
	padding: 5px 15px;
	vertical-align: middle;
	color: #fff;
	text-decoration: none;
	border-radius: 6px;
	border: none;
	cursor: pointer;
	transition: background-color 0.3s;
}

/* ボタンのサイズ */
.button.s {
	width: 120px;
	height: 35px;
}
.button.m {
	width: 150px;
	height: 40px;
}
/* 追加ボタン */
.add_button {
	display: inline-flex;
    align-items: center;
    justify-content: center;
	height: 35px;
	padding: 5px 15px;
	font-size: 14px;
	color: #fff;
	border-radius: 6px;
	border: none;
	cursor: pointer;
	transition: background-color 0.3s;
}
/*モーダルボタン（アイコン無し）*/
.modal_dtn {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
	padding: 10px 30px;
	vertical-align: middle;
	color: #fff;
	text-decoration: none;
	border-radius: 6px;
	border: none;
	cursor: pointer;
	transition: background-color 0.3s;
}
/* 詳細ボタン */
.detail_btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 5px 15px;
	font-size: 14px;
	color: #fff !important;
	border-radius: 6px;
	border: none;
	cursor: pointer;
	transition: background-color 0.3s;
}
/* 名寄せ待ちのボタン */
.marge_btn {
	font-size: 14px;
    font-weight: 600;
	padding: 8px 25px;
	border-radius: 4px;
	color: #fff;
    border: none;
    cursor: pointer;
	transition: background-color 0.3s;
}
/* ボタンの色 */
.button.navy, .btn_noicon.navy, .add_button.navy, .modal_dtn.navy, .detail_btn.navy, .marge_btn.navy { background-color: #191970; }
.button.navy:hover, .btn_noicon.navy:hover, .add_button.navy:hover, .modal_dtn.navy:hover, .detail_btn.navy:hover, .marge_btn.navy:hover { background-color: #2A2AA0; }
.button.gray, .btn_noicon.gray, .add_button.gray, .modal_dtn.gray, .detail_btn.gray, .marge_btn.gray { background-color: #A0A0A0; }
.button.gray:hover, .btn_noicon.gray:hover, .add_button.gray:hover, .modal_dtn.gray:hover, .detail_btn.gray:hover, .marge_btn.gray:hover { background-color: #777575; }
.button.red { background-color: #E32F2B; }
.button.red:hover { background-color: #FF6360; }
.button.preview {
    background-color: #C71585;
}
.button.preview:hover {
    background-color: #FB56DB;
}
.button.right, .modal_dtn.right {
	margin-left: auto;
	text-align: right;
	padding-right: 0px;
}
/* アイコンの統一 */
.button::before , .add_button::before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
	margin-right: 5px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

/*検索内容の開閉ボタン */
.search_toggle_btn {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
	height: 25px;
	padding: 5px 15px;
	vertical-align: middle;
	color: #000;
	text-decoration: none;
	border-radius: 6px;
	border: none;
	cursor: pointer;
	transition: background-color 0.3s;
}
/* アイコンの右 */
.search_toggle_btn::after {
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.search_toggle_btn.open::after {
    background-image: url(/admin/img/caret-up-fill.svg);
}
.search_toggle_btn.close::after {
    background-image: url(/admin/img/caret-down-fill.svg);
}

.button.search::before, .add_button.search::before { background-image: url(/admin/img/search_w.svg); }
.button.save::before, .add_button.save::before { background-image: url(/admin/img/ico_save.svg); }
.button.add::before {
    width: 15px;
    height: 15px;
    background-image: url(/admin/img/plus.png);
}
.button.clear::before, .add_button.clear::before {
    width: 15px;
    height: 15px;
    background-image: url(/admin/img/cancel_w.svg);
}
.button.output::before { background-image: url(/admin/img/output_icon_w.svg); }
.button.edit::before, .add_button.edit::before { background-image: url(/admin/img/icon_edit_w.svg); }
.button.import::before { background-image: url(/admin/img/ico_import_w.svg); }


input[type="file"] {
	padding: 10px;
	border-radius: 5px;
	cursor: pointer;
}
input[type="file"]::file-selector-button {
	background-color: #191970;
	padding: 10px 15px;
	border: none;
	color: #fff;
	font-weight: bold;
	border-radius: 5px;
	cursor: pointer;
}
input[type="file"]::file-selector-button:hover {
	background-color: #34495e;
}

ul.search {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	width: 100%;
	gap: 10px;
}

ul.button {
	width: 100%;
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

.edit-group {
	display: flex;
	margin: 10px 0;
	align-items: center;
}


.btn-flex {
	display: flex;
	gap: 10px;
}
.left-button {
	flex: 1;
}
.center-buttons {
	flex: 1;
	text-align: center;
	font-size: 14px;
	height: 25px;
	padding: 5px;
	padding-left:15px;
	padding-right:15px;
	vertical-align: middle;
	background: #191970;
	color: #fff;
	text-decoration: none;
	border-radius: 6px;
	margin-left:10px;
}

ul.button li a {
	font-size: 14px;
	height: 25px;
	padding: 5px;
	padding-left:15px;
	padding-right:15px;
	vertical-align: middle;
	background: #191970;
	color: #fff;
	text-decoration: none;
	border-radius: 6px;
	margin-left:10px;
}

ul.button li.gray a {
	height: 25px;
	color: #fff;
	background-color:#a0a0a0;
	font-size: 14px;
	font-weight: 500;
}
ul.button li.gray a:hover {
	background-color:#777575;
}
.edit.column.right-align {
	justify-content: flex-end;
}
.label.red {
    padding: 9px 30px;
    background-color: #E32F2B;
    color: #fff;
    border-radius: 5px;
    font-size: 14px;
    font-weight: 600;
}
.label.yellow {
	padding: 9px 30px;
    background-color: #FFF204;
    color: #000;
    border-radius: 5px;
    font-size: 14px;
    font-weight: 600;
}
/* ul.button li:first-child {
	margin-right: 12px;
} */

.noticeArea {
	border: 1px solid #d4d4d8;
	margin-bottom: 20px;
	padding: 10px;
	background-color: #595972;
	border-radius: 6px;
	zoom: 0.75;
}

.noticeArea p {
	border-bottom: 2px solid #d4d4d8;
	margin-bottom: 10px;
	padding: 0 0 6px 10px;
	font-weight:bold;
	color: #ffffff;
}

.noticeArea p span {
	width: 20px;
	height: 20px;
	background: #e32f2b;
	border-radius: 50%;
	padding: 4px 6px;
	color: #fff;
	font-size: 10px;
	margin-left: 10px;
	margin-top: -10px;
}

.noticeArea ul li {
	line-height: 2.4;
	padding-left: 10px;
	background-color:#fff;
	border-bottom: 1px solid #595972;
}

ul.samp02 {
	border-radius: 6px;
	overflow-x: auto;
	border: 1px solid #d4d4d8;
}

ul.samp02 li {
	clear: left;
	padding: 26px 0;
	overflow: hidden;
	border-bottom: 1px solid #d4d4d8;
}

ul.samp02 li:first-child {
	border-radius: 6px 6px 0 0;
	background: #f2f2f2;
	text-align: center;
	font-weight: bold;
}

ul.samp02 li dl dt,
ul.samp02 li dl dd.cap {
	float: left;
	display: inline;

}

ul.samp02 li dl dd.cap {
	font-size: 11px;
	text-align: center;
	padding: 0 3px;

}

ul.samp02 li dl dt {
	width: 160px;

}

ul.samp02 li dl dt {
	display: flex;
	align-items: center;

}

ul.samp02 li dl dt p span {
	display: block;
	font-size: 10px;
}

ul.samp02 li dl dt p {
	font-size: 12px;
}

ul.samp02 li dl dt span.name,
div.n_img {
	padding-left: 12px;
}

ul.samp02 li dl.active dt,
ul.samp02 li dl.active dd.cap {
	font-size: 13px;
}

ul.samp02 li dl dd {
	width: 78px;
	padding: 0 2px;
}
/* トップ画面 */
ul.samp01 {
	width: 100%;
	margin-top: 20px;
	zoom: 0.75;
}

ul.samp01 li:last-child {
	border-bottom: none;
	text-decoration: none;
}

ul.samp01 li dl dt,
ul.samp01 li dl dd.cap {
	float: left;
	display: inline;
}

ul.samp01 li dl dt {
	padding: 0 0 0 15px;
	width: 680px;
	font-weight: bold;
}

ul.samp01 li dl dd.cap,
ul.samp01 li dl dd.detail {
	font-weight: bold;
	font-size: 18px;
	line-height: 2;
}

ul.samp01 li dl.active dd.cap,
ul.samp01 li dl.active dd.detail {
	background: #949499;
	color: #fff;

}

ul.samp01 li dl dd.cap {
	width: 60px;
	background: #f6f7f9;
	text-align: center;
	padding: 14px 20px;
	margin-inline-start: 0px;

}

ul.samp01 li dl dd.detail {
	float: right;
	background: #f6f7f9;
	text-align: center;
	margin-right: 20px;
	padding: 14px 32px;
	margin-inline-start: 0px;
}

dl {
	display: block;
	margin-block-start: 0;
	margin-block-end: 0;
	margin-inline-start: 0px;
	margin-inline-end: 0px;
	unicode-bidi: isolate;
}

.samp01 .public {
	background: #e32f2b;
}

.samp01 .endn {
	background: #ddd;
}
.samp01 .before {
	background: #4caf56;
}
.samp01 .nopublic {
	background: #ffd700;
}

.samp01 .public,
.samp01 .nopublic,
.samp01 .endn,
.samp01 .before {
	font-weight: 100;
	padding: 6px 10px;
	color: #fff;
	font-size: 14px;
	border-radius: 6px;
	white-space: nowrap;
}
.samp01 li dt img{
	width:30px;
}
.recruit-box {
    display: flex;
	align-items: center;
    justify-content: space-between;
	border-radius: 8px;
    padding: 8px;
    background-color: #fff;
    margin: 10px 0;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    border: 1px solid #d4d4d8;
}
.recruit-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
	gap: 15px;
}
.recruit-status {
	width: 100px;
	display: flex;
    justify-content: center;
}
.recruit-title {
	flex: 2;
	font-size: 20px;
	font-weight: 600;
	justify-content: flex-start;
}
.recruit-period {
	flex: 1.5;
	min-width: 300px;
	font-size: 14px;
	font-weight: 600;
	color: #555;
	justify-content: left;
}
.recruit-actions {
	display: flex;
	min-width: 160px;
	justify-content: flex-end;
	gap: 10px;
}
.action {
	position: relative;
	align-content: center;
    text-align: center;
    padding: 10px;
    border-radius: 4px;
    font-size: 18px;
    background: #949499;
    cursor: pointer;
    width: 80px;
    height: 50px;
    font-weight: 600;
	text-decoration: none;
	color: #fff;
	transition: background-color 0.3s;
}
.action:hover {
    background-color: #bbb;
}

@media screen and (max-width: 960px) {
	.main_content {
		gap: 0;
		flex-direction: column;
		align-items: flex-start
	}
	.recruit-content {
		flex-direction: column;
		align-items: flex-start;
		margin: 8px;
		gap: 12px;
	}
	.recruit-status {
		font-size: 14px;
		justify-content: left;
	}
}
@media screen and (max-width: 768px) {
	.recruit-status {
		order: 1;
		font-size: 14px;
		justify-content: left;
	}
	.recruit-title {
		order: 2;
	}
	.recruit-period {
		order: 3;
		font-size: 14px;
	}
	.recruit-actions {
		order: 4;
		gap: 10px;
		display: flex;
		flex-direction: row;
		justify-content: flex-start;
	}
}

/* カラム管理 */
.column-title {
    margin: 20px auto;
    border-bottom: 2px solid #ddd;
}
.tab-menu {
    display: flex;
    gap: 20px;
    list-style: none;
    padding-left: 0;
}
.tab-menu li a {
    display: inline-block;
    padding: 10px 15px;
    text-decoration: none;
    font-weight: bold;
    color: #333;
    border-bottom: 3px solid transparent;
    transition: border-color 0.3s, color 0.3s;
}
.tab-menu li.active a {
    border-bottom: 3px solid #191970;
    color: #191970;
}
.box-wrap {
    border: 1px solid #ccc;
    border-radius: 6px;
    margin: 20px 20px 24px;
    background: #fff;
    max-width: 100%;
    overflow: hidden;
    padding: 20px;
}
.box-wrap hr {
	border: 1px solid #d4d4d8;
}
.columns-title {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 8px;
}
.scroll-box {
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 4px;
}
.item-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.item-list.nowrap {
    flex-wrap: nowrap;
    min-width: max-content;
}
.item {
    display: flex;
    align-items: center;
    padding: 6px 12px;
    background-color: #949499;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 13px;
    white-space: nowrap;
    cursor: grab;
    color: #fff;
    transition: background-color 0.3s;
    min-height: 32px;
    min-width: 100px;
}
.item:hover {
    background-color: #e1e1e1;
}
.item:active {
    cursor: grabbing;
}
.item-inner {
    display: flex;
    align-items: center;
    gap: 10px;
}
.column-icon {
	width: 16px;
	height: 16px;
	background-image: url('/admin/img/list.svg');
	background-repeat: no-repeat;
	display: inline-block;
	flex-shrink: 0;
}
.item-empty {
    background-color: #ebf3ff;
    border: 2px dashed #aaa;
    color: #888;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: 100%;
    margin-top: 5px;
}
.item.fixed{
    pointer-events: none;
    background-color: #333;
}
.placeholder {
    pointer-events: none;
    text-decoration: none;
}
.drag-ghost {
    opacity: 0.4;
    background: #cce5ff;
}
.column_btn {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 20px;
    gap: 8px;
}
.column_btn .btn_noicon {
	width: 150px;
    height: 40px;
}
.btn-left,
.btn-right {
    display: flex;
    gap: 10px;
}
.flip-list-move {
    transition: transform 0.3s ease;
}
.flip-list-enter-active,
.flip-list-leave-active {
    transition: all 0.3s ease;
}
.flip-list-enter-from,
.flip-list-leave-to {
	opacity: 0;
	transform: translateY(10px);
}
@media screen and (max-width: 768px) {
    .box-wrap {
        height: auto;
        padding: 12px;
    }
    .scroll-box {
        max-height: 280px;
        overflow-y: auto;
        overflow-x: hidden;
    }
    .item-list.nowrap {
        flex-direction: column;
        flex-wrap: nowrap;
        min-width: auto;
    }
    .item-list {
        gap: 0;
        flex-direction: column;
    }
    .item {
        white-space: normal;
        word-break: break-word;
    }
	.column_btn {
		flex-direction: column;
		align-items: center;
	}
	.btn-left,
    .btn-right {
        flex-direction: column;
        width: 100%;
        gap: 10px;
		align-items: center;
    }
	.column_btn .btn_noicon {
        width: 70%;
		margin: 0 auto;
    }
    .tab-menu li a {
        padding: 5px;
        font-size: 12px;
    }
	.item-empty {
		width: auto !important;
	}
}

/* 名寄せ待ちの画面 */
.merge-container {
	display: flex;
    flex-direction: column;
    gap: 20px;
}
.name-card {
	background: #f9f9f9;
    border-radius: 8px;
    border: 1px solid #ccc;
    padding: 15px;
    margin-bottom: 10px;
}
.name-row {
	display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 10px;
}
.name-row.justify-between {
    justify-content: space-between;
}
.name-left {
	display: flex;
    align-items: center;
    gap: 10px;
}
.merge-status {
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 14px;
    color: white;
    font-weight: bold;
    background: #1976d2;
}
.merge-status.gray {
    background: #888;
}

.merge-name a {
    font-weight: bold;
    text-decoration: underline;
    color: #333;
    display: inline-block;
}

.name-email {
    font-size: 13px;
    color: #555;
    margin-top: 4px;
}

.merge-btn {
    display: flex;
    gap: 10px;
}


.column_btn ul li button {
	cursor: pointer;
	width: 150px;
	height: 42px;
	color: #fff;
	border-radius: 6px;
	border: none;
}

.column_btn ul {
	display: flex;
	justify-content: center;
	margin: 20px 0;
	gap: 20px;
}

.column_btn ul li.ok_btn button {
	background: #3a4f63;
}

.column_btn ul li.can_btn button {
	background: #949499;
}

.radius-table {
	width: 100%;

	border-radius: 6px;
	border-spacing: 0;
	border: none;
	border-left: 1px solid #999;
	border-top: 1px solid #999;
	border-right: 1px solid #999;
	border-bottom: 1px solid #999;
}

.radius-table tr>* {
	padding: 5px 10px;
	border: none;
	border-bottom: 1px solid #999;
}

.radius-table tr:first-child>*:first-child {
	border-radius: 6px 0 0 0;
}

.radius-table tr:first-child>*:last-child {
	border-radius: 0 6px 0 0;
}

.radius-table tr:last-child>*:first-child {
	border-radius: 0 0 0 6px;
}

/* .radius-table tr:last-child>*:last-child {
	border-radius: 0 0 6px 0; 
} */

.radius-table tr.active th.bg,
.radius-table td.bg {
	text-align: center;
	border: none;

}

.radius-table tr.active th.bg {
	text-align: center;
	background: #000;
	color: #fff;
	border-left: 10px solid #fff;
	border-radius: 0px;
	padding: 20px 0;
}

.radius-table td.bg {
	text-align: center;
	background: #000;
	color: #fff;
	border-left: 10px solid #fff;

	border-radius: 0 0 0 0;
	padding: 20px 0;
}
/* エクセル出力の画面 */
.adv_search {
	margin: 0 auto;
	background: #f6f6f6;
	display: flex;
    flex-direction: column;
}
#adv_search .adv_search h1 {
	background: #3a4f63;
	text-align: left;
	padding: 10px 0 10px 10px;
	color: #fff;
	font-size:20px;
}
.exl_tbl {
    width: 100%;
    border-collapse: collapse;
}
.exl_tbl th, .exl_tbl td {
    border: 1px solid #d4d4d8;
    padding: 10px;
    text-align: left;
    vertical-align: middle;
}
.exl_tbl th {
    background-color: #f2f2f2;
    font-weight: bold;
    text-align: center;
}
.exl_tbl td label {
	display: inline-flex;
	align-items: normal;
    gap: 8px;
    padding: 5px 0;
}
.exl_tbl th,.exl_tbl td{
	text-align:left;
	padding:5px;
}
.exl_tbl th{
	background-color:#ddd;
}
.exl_tbl tr:last-child td {
    border-bottom: 2px solid #999;
}

.terms .searchBox span {
	padding-right: 6px;
	float: left;
	padding-top: 4px;
}
.divider {
	width: 2px;
	height: 50px;
	background-color: #ccc;
	align-self: center;
	margin: 0 20px;
}
@media screen and (max-width: 768px) {
	.divider {
		display: none;
	}
}
.terms {
	padding: 0;

}

.terms p {
	text-align: left;
	font-size: 13px;
}

.terms h2 {
	text-align: left;
	font-size: 17px;
	font-weight: bold;
	padding: 0px 0
}

.terms ul{
	padding-bottom:10px;
}

.add_btn {
	text-align: left;
	padding: 10px 0 0 30px;
}

.add_btn button {
	cursor: pointer;
	background: #4caf56;
	border: none;
	color: #fff;
	width: 100px;
	height: 30px;
	border-radius: 6px;

}

.add_btn2 {
	padding-top: 10px;
}

.add_btn2 ul li button {
	cursor: pointer;
	width: 100px;
	height: 30px;
	color: #fff;
	border-radius: 6px;
	border: none;
}

.add_btn2 ul {
	display: flex;
	padding: 24px 0;
	border-top: 1px solid #333;
	justify-content: flex-end;
	padding-right: 30px;
	padding-top:10px;
}

.add_btn2 ul li:first-child {
	margin-right: 20px;
}

.add_btn2 ul li.sear_btn button {
	background: #4caf56;
	width: 150px;
}

.add_btn2 ul li.sear_btn2 button {
	background: #c71585;
	width: 220px;
	margin-right:10px;
}


.add_btn2 ul li.can_btn button {
	background: #3a4f63;
}
.add_btn3 ul {
	justify-content: center;
}

.resume_Area {
	height: 355px;
	background: #e6e6e6;
	z-index: 100;
	clear: both;
}
/* プロフィールの画像 */
.resume_leftTxt {
	margin-top: 52px;
	background: #e6e6e6;
	text-align: center;
}

.resume_leftTxt img {
	width: 150px;
	height: 150px;
	padding: 10px;
	object-fit: contain;
}

.profile_container {
	width: 100%;
	display: flex;
	padding-top: 25px;
	flex-direction: column;
	justify-content: center;
	justify-self: center;
}
.profile_list, .visit_list {
    color: #fff;
    padding: 10px 15px;
    font-size: 14px;
	font-weight: 600;
	background-color: transparent;
	overflow: hidden;
	text-overflow: ellipsis;
}
.visit_title {
    color: #000;
    padding: 10px 15px;
    font-size: 14px;
	font-weight: 600;
}
.visit-table {
	padding: 10px 0;
	width: 100%;
	table-layout: fixed;
}
.visit-table tr {
	background-color: #D0D0D0 !important;
}
.visit-bg td {
	background-color: #FFFFFF !important;
}
.profile_list a, .visit_list a {
	text-decoration: none;
	color: #000;
	display: block;
	font-weight: 600;
	overflow: hidden;
	text-overflow: ellipsis;
	transition: background-color 0.3s ease, color 0.3s ease;
	width: 100%; /* 左寄せを確実にする */
}
.profile_list a:hover, .visit_list a:hover {
	color: #fff;
}
.profile_status {
	display: inline-block;
	vertical-align: middle;
	white-space: nowrap;
	color: #fff;
	border-radius: 5px;
	font-size: 11px;
	padding: 5px 10px;
	z-index: 10;
	font-weight: 300;
}

.resume_leftTxt p.name {

	font-size: 16px;
}

.resume_leftTxt p.name span {
	font-size: 14px;
}

.resume_Area2 .Inner {
	width: 94%;
	margin: 0 auto;
	padding: 50px 0;
}

.resume_Area2 .Inner_txt {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	border-bottom: 1px solid #000;
	padding-bottom: 10px;
}

.Inner {
	width: 420px;
	margin: 0 auto;
	padding: 50px 0;
}

.Inner_txt {
	display: flex;
	justify-content: flex-end;
	align-items: center;

}

.Inner_txt p {
	padding-left: 30px;
	text-align: left;
	color: #3a4f63;
	font-weight: bold;
}

.resume_Area2 .Inner_txt p {
	padding-left: 0px;
	text-align: left;
	color: #000;
	font-weight: bold;
}

ul.button.resume {
	width: 100%;
	display: flex;
	margin: 30px 0 0 0;
}

ul.button.resume li a {
	padding: 14px 39px;
	background: #3a4f63;
	color: #fff;
	text-decoration: none;
	border-radius: 6px;
}

ul.button.resume li:first-child {
	margin-right: 12px;
}


ul.samp04 {
	border: 1px solid #d4d4d8;
	border-radius: 6px;
	margin-bottom: 100px;
}

ul.samp04 li dt {
	border-bottom: 1px solid #d4d4d8;
	padding: 30px 20px;
	background: #f6f7f9;
	font-size: 18px;
	font-weight: bold;
}

ul.samp04 li:nth-child(n+2) dt {
	border-top: 1px solid #d4d4d8;
}


ul.samp04 li dl dd.cap {
	margin: 16px 20px;
}

.up_Area {
	width: 700px;
	margin: 0 auto;
	display: flex;
	padding-top: 100px
}

.up_Area_left {
	width: 400px;
	height: 300px;
	background: #ccdbe4;
	text-align: center;
	padding-top: 12px;
	border-radius: 4px;
	border: 2px dotted #0b9eea;
}

.up_Area_left img {
	width: 200px;
	display: block;
	margin: 0 auto;
}

.up_Area_left button {
	background: #000;
	color: #fff;
	width: 104px;
	height: 36px;
	border: none;
	border-radius: 20px;
	font-size: 12px;
	cursor: pointer;
}

.up_Area_left p {
	padding-top: 16px;
	font-size: 12px;
}

.up_Area_right {
	padding-left: 20px;
}

.up_Area_right p {
	padding-bottom: 30px;
}

.up_Area_right ul li {
	line-height: 2;
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 13px;
}

.up_Area_right ul li a {
	color: #000;
	text-decoration: none;

}

/* .up_Area_right ul li.trash a {} */

.up_Area_right .column_btn ul li.ok_btn button {
	background: #4caf56;
}

.up_Area_right .column_btn ul li.can_btn button {
	background: #000;
}

body#resume h2 {
	font-size: 30px;

	padding-bottom: 10px;
}

.footer {
	width: 100%;
	position: fixed;
	bottom: 0
}

.footer ul {
	display: flex;
	justify-content: space-between;
}

.footer ul li:nth-child(2) {
	float: right;
}

.footer ul li {
	font-size: 11px;
	color: #747474;
	padding: 0 20px 30px 20px;
}

.footer ul a {
	text-decoration: none;
	color: #747474;

}

.loginBox {
	width: 340px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	height: 700px;
}

/* .loginBoxInner {} */

.loginBoxInner p {
	font-size: 14px;
	font-weight: bold;
	padding-bottom: 16px;
	text-align: left;
}
.loginBoxInner label {
	font-size: 14px;
	font-weight: bold;
	padding-bottom:5px;
	text-align: left;
	display: block;
}

.loginBoxInner input {
	width: 340px;
	height: 30px;
	border: 1px solid #d4d4d8;
	border-radius: 4px;
	margin-bottom: 30px;
}

.login_btn button {
	width: 340px;
	height: 40px;
	background: #6a8dad;
	color: #fff;
	border: none;
	border-radius: 6px;
}

.login_btn p {
	text-align: center;
	padding-top: 50px;
	font-size: 12px;
	font-weight: 200;
	margin: 0;

}

.login_btn p a {
	color: #6a8dad;
	text-decoration: none;
}

.loginBoxInner h1 {
	font-size: 40px;
	font-weight: bold;
	color: #6a8dad;
	padding: 0;
	margin: 10px 0 30px 0;
}

.accordion {
	width: 100%;
}
/* お知らせ管理画面 */
.title_container {
	display: flex;
    align-items: center;
    justify-content: space-between;
}
.header_title {
	margin: 0;
	font-weight: 600;
}


/* inputのチェックボックスを非表示 */
.accordion-hidden {
	display: none;
}

/* 見出しボタン部分 */
.accordion-open {
	display: block;

	cursor: pointer;
	margin: 5px 0;
	position: relative;
}

/* ＋アイコン */
.accordion-open::before,
.accordion-open::after {
	content: '';


	position: absolute;
	top: 50%;
	right: 7%;
	transform: translateY(-50%);
}

/* アイコンのー */
.accordion-open::after {
	content: url(/admin/img/ico_s_arrow.svg);
	vertical-align: middle;
}

/* アコーディオンが開いたらーに */
.accordion-hidden:checked+.accordion-open:after {
	content: url(/admin/img/ico_s_arrow2.png);
	vertical-align: middle;
}

/* アコーディオン中身部分 */
.accordion-inner {
	display: block;
	height: 0;
	overflow: hidden;
	padding: 0;
	opacity: 0;
	transition: 0.5s;
	/* 表示速度の設定 */
	cursor: pointer;
}

/* チェックボックスにチェックが入ったら中身部分を表示する */
.accordion-hidden:checked+.accordion-open+.accordion-inner {
	height: auto;
	opacity: 1;
	padding: 10px;
}

/* ↑ここまで共通 */


/* Q&A追加 */
.accordion_qa .Q,
.accordion_qa .A {
	position: relative;
}

.accordion_qa .Q::before,
.accordion_qa .A::before {
	font-size: 1.5em;
	display: block;
	position: absolute;
	top: -.6em;
	left: -1.3em;
}

.accordion_qa .Q::before {
	content: 'Q.';
}

.accordion_qa .A::before {
	content: 'A.';
}

.accordion_qa .accordion-open {
	padding-left: 2.5em;
}

.accordion_qa .accordion-hidden:checked+.accordion-open+.accordion-inner {
	height: auto;
	opacity: 1;
	padding: 10px 10px 10px 2.5em;
}

/* Q&A追加ここまで */


/* 中にいろいろ入れたいとき */
.accordion-box {
	display: block;
	height: 0;
	overflow: hidden;
	padding: 0;
	opacity: 0;
	transition: 1s;
}

.accordion-hidden:checked+.accordion-open+.accordion-box {
	height: auto;
	opacity: 1;
	padding: 10px;
}

body#resume .contents_resumeBox {
	padding-left: 250px;
}

body#resume.inner .contentsTOP ul.left {
	float: left;
	margin-left: 3%;
}

body#resume.inner .resume_leftTxt {
	margin-top: 0;
	background: #b0c4de;
}





.button.column li {
	position: relative;
}

/*.button.column li.plus::before {
	content: "";
	position: absolute;
	top: 5px;
	left: 12px;
	background: url(/admin/img/plus.svg) no-repeat;
	width: 16px;
	height: 16px;
}
.button.column li.save::before {
	content: "";
	position: absolute;
	top: 5px;
	left: 12px;
	background:  url(/admin/img/down.svg) no-repeat;
	width: 16px;
	height: 16px;
}
.button.column li.save a{

	background-color:#191970;
	margin-right:10px;

}

.button.column li.down::before {
/*	content: "";
	position: absolute;
	top: 5px;
	left: 12px;
	background: url(/admin/img/down.svg) no-repeat;
	width: 16px;
	height: 16px;
}
.button.column li.cancel a{
	left:0;
	padding:13px;
	text-align:center;
	background-color:#ddd;
	color:#000;
}
*/

.contentsTOP:after,
.left:after,
.right:after {
	/* content: ""; */
	display: block;
	clear: both;
}



/*バッジ*/

.badge {
    position: relative;
}

.badge .num {
    display: inline-block;
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #D8201D;
    top: 3px;
    right: 3px;
}
.badge .new{
    display: inline-block;
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #D8201D;
    top: 3px;
    left: 3px;
}
.badge .edit{
    display: flex;
	justify-content: center;
    align-items: center;
	text-align:center;
    position: absolute;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #D8201D;
    top: -4px;
    left: 5px;
	color:#fff;
	font-size:12px;
	z-index: 1;
}
.badge .edit.past{
    background-color: #696969;
}
.badge_biko_wrap {
    display: flex;
	top: 10px;
}

/*ラジオボタン*/

.flex {
    display: flex;
}
.mr-50 {
    margin-right: 50px;
}
fieldset {
    border: none;
    padding: 0;
    margin: 0;
    text-align: left;
    display: flex;
    align-items: center;
}
fieldset .legend {
    font-size:14px;
    margin-right: 0.5rem;
}

.radio_input {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
}

.radio_label {
    font-size: 12px;
    cursor: pointer;
    display: inline-block;
    padding: 4px 9px;
    margin-right: 6px;
    border-radius: 40px;
    transition: all .2s;
}

.radio_input:checked+.radio_label {
    background: #4caf56;
    color: #fff;
    text-shadow: 0 0 1px rgba(0, 0, 0, .7);
}

.radio_input:focus+.radio_label {
    outline-color: #4caf56;
    outline-offset: -2px;
    outline-style: auto;
    outline-width: 5px;
}


/*アイコン*/

    #sidebar .icon {
        display: inline-block;
        width: 27px;
        height: 27px;
        margin-right: 10px;
        background-size: 24px;
        background-repeat: no-repeat;
        background-position: center;
    }

    #sidebar .icon.icon-home {
        background-image: url(/admin/img/ico_s01.svg);
    }
    #sidebar .current .icon.icon-home {
        background-image: url(/admin/img/ico_s01_w.svg);
    }

    #sidebar .icon.icon-entry {
        background-image: url(/admin/img/people.svg);
    }
    #sidebar .current .icon.icon-entry {
        background-image: url(/admin/img/people_w.svg);
    }

    #sidebar .icon.icon-join {
        background-image: url(/admin/img/ico_s03.svg);
    }
    #sidebar .current .icon.icon-join {
        background-image: url(/admin/img/ico_s03_w.svg);
    }

    #sidebar .icon.icon-naitei {
        background-image: url(/admin/img/search_01.svg);
    }
    #sidebar .current .icon.icon-naitei {
        background-image: url(/admin/img/search_w.svg);
    }

    #sidebar .icon.icon-personal {
        background-image: url(/admin/img/ico_s05.svg);
    }
    #sidebar .current .icon.icon-personal {
        background-image: url(/admin/img/ico_s05_w.svg);
    }

    #sidebar .icon.icon-setting {
        background-image: url(/admin/img/ico_s06.svg);
    }
    #sidebar .current .icon.icon-setting {
        background-image: url(/admin/img/ico_s06_w.svg);
    }

    #sidebar .icon.icon-int {
        background-image: url(/admin/img/icon_int.png);
    }
    #sidebar .current .icon.icon-int {
        background-image: url(/admin/img/icon_int_w.png);
    }

    #sidebar .icon.icon-rec {
        background-image: url(/admin/img/icon_rec.png);
    }
    #sidebar .current .icon.icon-rec {
        background-image: url(/admin/img/icon_rec_w.png);
    }

    #sidebar .icon.icon-person {
        background-image: url(/admin/img/icon_person.png);
    }
    #sidebar .current .icon.icon-person {
        background-image: url(/admin/img/icon_person_w.png);
    }
    #sidebar .icon.icon-logout {
        background-image: url(/admin/img/icon_logout.svg);
    }
	/* ドラッグ＆ドロップ */
	.upload_icon {
		width: 150px;
		height: 150px;
		background-image: url('/admin/img/icon_download.png');
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
		margin-bottom: 10px;
	}
	.drop_content {
		margin-top: 30px;
		display: flex;
		flex-direction: column;
		align-content: center;
		align-items: center;
		justify-content: center;
	}
	.drop_text {
		font-size: 16px;
	}
	.upload_detail {
		font-size: 14px;
    	display: flex;
    	align-content: center;
    	align-items: center;
	}
	.file_content {
		margin: 10px;
	}
	.upload_title {
    	font-size: 16px;
    	font-weight: bold;
    	padding-left: 10px;
	}
        
        /* モーダルと背景の指定 */
        .modal {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            text-align: center;
            background: rgba(0, 0, 0, 50%);
            padding: 40px 20px;
            overflow: hidden;
            opacity: 0;
            visibility: hidden;
            transition: .3s;
            box-sizing: border-box;
			z-index: 9999;
        }

        /* モーダルの擬似要素の指定 */
        .modal:before {
            content: "";
            display: inline-block;
            vertical-align: middle;
            height: 100%;
            margin-left: -0.2em;
        }

        /* クラスが追加された時の指定 */
        .modal.is-active {
            opacity: 1;
            visibility: visible;
        }

        /* モーダル内側の指定 */
        .modal-container {
            position: relative;
            display: inline-block;
            vertical-align: middle;
            max-width: 900px;
            width: 90%;
        }

		.exl-modal-container {
            position: relative;
            display: inline-block;
            vertical-align: middle;
            width: 90%;
        }

		/* モーダル内側の指定 */
        .export-modal-container {
            position: relative;
            display: inline-block;
            vertical-align: middle;
            width: 98%;
        }

		/* モーダルのコンテンツ部分の指定 */
        .export-modal-content {
            background: #fff;
            text-align: left;
            line-height: 1.8;
            padding: 20px;
    		overflow-y: auto;
			zoom: 0.6;
        }

        /* モーダルを閉じるボタンの指定 */
        .modal-close {
            position: absolute;
            display: flex;
            align-items: center;
            justify-content: center;
            top: -20px;
            right: -20px;
            width: 40px;
            height: 40px;
            color: #fff;
            background-color: #000;
            border-radius: 50%;
            cursor: pointer;
			transition: background-color 0.3s;
        }
		.modal-close:hover {
			background-color: #5D5D5D;
		}

        /* モーダルのコンテンツ部分の指定 */
        .modal-content {
            background: #fff;
            text-align: left;
            line-height: 1.8;
            padding: 20px;
		    max-height: 90vh;
    		overflow-y: auto;
			zoom: 0.9;
        }

        /* モーダルのコンテンツ部分のテキストの指定 */
        .modal-content p {
            margin: 1em 0;
        }
		.modal-content hr {
			border: 1px solid #d4d4d8;
		}
		/* データを削除する時のモーダル */
		.modal-message {
			font-size: 20px;
			text-align: center;
			font-weight: 600;
			padding-bottom: 10px;
		}
		.modal-warning {
			color: #E32F2B;
			font-size: 14px;
			margin-top: 5px;
			text-align: center;
		}
		.modal-actions {
			display: flex;
			justify-content: space-around;
			align-items: center;
		}

		/*バリデーションのテキスト */
		.message::before {
		content: "";
		display: block;
		margin-top: 0.5em; /* 上にスペースを追加 */
		}
		.message{
		display: none;
		color:#E32F2B;
		font-size: 12px;
		}

#toast {
        display: flex;
        visibility: hidden;
        height: 60px;
        width: 400px;
        border-radius: 5px;
        z-index: 9999;
        background-color: #191970;
        position: fixed;
        inset: 0;
        margin: auto;
}

#toast>p {
        margin: auto;
        font-size: 16px;
        font-weight: bold;
        vertical-align: center;
        color: #fff;
        line-height: 18px;
        text-align: center;
}


#adv_search,.adv_search{ background-color:#fff; padding-bottom:0; overflow:hidden; }
#adv_search{max-width:99%;text-align:center;margin:auto;max-height:95%;}

.samp02 table{
	width: 100%;
	font-size:12px;
	border-spacing: 0px;
}
.samp02 table th{
	background-color:#f2f2f2;
	height: 50px;
	padding: 0 20px;
	text-align: center;
}
/* .samp02 table td{
	min-width:150px;
	height:50px;
	border-bottom:1px #999 solid;
	border-spacing: 0px;
	text-align:center;
} */

.samp02 a{ 
	justify-content: center;
	text-decoration-line: none;
	padding: 5px;
}
.samp02 a:hover {
	color:#717171;
}
.name_link {
	text-decoration-line: underline !important;
}

.tbl_center {
	padding: 0 20px;
	text-align: center;
}

.tbl_left {
	padding: 0 20px;
	text-align: left;
}

.result_tbl input[type=checkbox],
.exl_tbl input[type=checkbox],
.resultTable input[type=checkbox] {
  accent-color: #4682b4;
  transform: scale(1.5);
  cursor: pointer;
}

.page_input:disabled {
  background-color: #f0f0f0;
  color: #888;
  cursor: not-allowed;
}

#loading{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  text-align: center;
  background: rgba(255,255,255,0.5);
  background-image: url(/img/loading.gif);
  background-repeat: no-repeat;
  background-position: center;
  padding: 40px 20px;
  overflow: auto;
  opacity: 1;
  display: none;
  transition: .3s;
  box-sizing: border-box;
}
#edit_iframe{
	border:none;
	width:100%;
	height: 100%;
}
#edit_content{
	margin-top:0;
	padding-top:0;
	max-height:900px;
	padding-bottom:0;
	margin-bottom:0;
}
.js-confirm-modal > .modal-container{
	width:300px;
}
.modal_confirm{
	text-align:center;
	height:150px;
	font-size:12px;
}
.modal_confirm span{
	color:#c71585;
	font-weight:bold;
	font-size:18px;
	margin-bottom:20px;
}
.noticeArea a{ color:#000; font-weight: 600; }
.js-confirm-modal .modal-container{
	width:300px;
}
.modal_confirm_btn{
	margin-top:50px;
}
.result_tbl .btn,
.resultTable .btn {
	font-size: 12px;
	background: #191970;
	color: #fff;
	text-decoration: none;
	border-radius: 6px;
	border:1px;
	cursor:pointer;
}
.sort_link {
	text-decoration: none;
	color: #000000;
	transition: color 0.3s;
}
.sort_link:hover {
	color: #555;
}
.comment .text-line {
    display: inline-block;
    margin-bottom: 5px;
	line-height: 2;
}
.input_tbl th,.input_tbl td{
	font-size:12px;
	height: auto;
	border:none;
	text-align:left;
}
/*テーブルの間 */
.hyoka_tbl {
	margin-bottom: 10px;
}
table .input_tbl {
	width: 100%;
	background-color: #C6C5CF;
}
.separator-line {
    border: none;
    border-top: 1px solid #ccc;
    margin: 10px 0;
}
/*編集モードのコメント */
.edit_input {
	box-sizing: border-box;
	padding: 0 10px;
	width: 100%;
	height: 30px;
	border-radius: 4px;
	border: 1px solid #d4d4d8;
}
textarea.edit_input {
	resize: none;
	height: 150px;
	line-height: 1.5;
	padding: 5px 10px;
	scrollbar-width: thin; 
  	overflow-y: scroll; 
}
.hyoka_block {
  display: block;
  padding: 6px 0;
  font-size: 12px;
}

.hyoka_label {
  display: block;
  font-weight: 600;
  color: #333;
}

.hyoka_input,
.hyoka_textarea {
  width: 100%;
  font-size: 12px;
  box-sizing: border-box;
  padding: 5px;
  margin-top: 2px;
  border: 1px solid #ccc;
  border-radius: 4px;
}

.hyoka_textarea {
  resize: none; 
  min-height: 60px;
  scrollbar-width: thin; 
  overflow-y: scroll; 
}
/*　編集モードの範囲 */
.resultTable .status.edit_mode {
	width: auto; 
}
.page_input {
	width: 93%;
	height: 34px;
	border-radius: 4px;
	border: 1px solid #d4d4d8;
}
.edit_gpa {
	width: 90%;
	text-align: center;
	height: 30px;
	border-radius: 4px;
	border: 1px solid #d4d4d8;
}
.edit_select {
	height: 34px;
	border-radius: 4px;
	border: 1px solid #d4d4d8;
}
.page_input.textarea {
	height: 50px;
	white-space: pre;
}
.edit_followup {
	height: 34px;
	border-radius: 4px;
	text-align: center;
	border: 1px solid #d4d4d8;
}
.edit_declined_party {
	height: 34px;
	border-radius: 4px;
	text-align: center;
	border: 1px solid #d4d4d8;
}
.edit_tantou {
	width: 90%;
	height: 34px;
	text-align: center;
	border-radius: 4px;
	border: 1px solid #d4d4d8;
}
textarea.edit_biko {
    resize: none;
    min-width: 75px;
	width: 95%;
    line-height: 1.5;
	padding: 5px;
	border-radius: 4px;
	border: 1px solid #d4d4d8;
	scrollbar-width: thin; 
	overflow-y: scroll; 
}
textarea:disabled {
    resize: none;
	cursor: not-allowed;
}
textarea.edit_comment {
	width: 98%;
	resize: none;
	line-height: 1.5;
	border-radius: 4px;
	border: 1px solid #d4d4d8;
	padding: 5px;
	scrollbar-width: thin; 
	overflow-y: scroll; 
}
.edit_input:disabled,
.edit_tantou:disabled,
.edit_select:disabled,
.edit_comment:disabled,
.edit_gpa:disabled,
.edit_followup:disabled {
	background-color: #f0f0f0;
	color: #888;
	cursor: not-allowed;
	resize: none;
}
.edit_declined_party:disabled {
	background-color: #f0f0f0;
	color: #888;
	cursor: not-allowed;
	resize: none;
}
/* 基本情報 */
.profile_edit {
	width: 30%;
    height: 32px;
    border-radius: 4px;
    border: 1px solid #d4d4d8;
}
.daigaku_tbl {
	outline: 4px solid #fff;
    outline-offset: -2px;
	font-weight: 600;
}
.daigaku_edit {
	padding: 0 10px;
	font-size: 14px;
	height: 30px;
    margin-left: 5px;
    border: 1px solid #d4d4d8;
    border-radius: 4px;
}
.flex_edit {
	display: flex;
	align-items: center;
}
.profile_edit[type="text"] {
	padding: 0 10px;
	width: calc(100% - 20px);
}

#edit_content{
	margin-top:0;
	padding-top:0;
	height:700px;
	padding-bottom:0;
	margin-bottom:0;
}
.button.column .navy a{
	font-size: 14px;
	font-weight: 600;
	height: 25px;
	color: #fff;
	background-color:#191970;
}
.button.column .navy a:hover {
	background-color: #1d1dc2;
}

.result_tbl .btn2, 
.resultTable .btn2 {
	font-size: 12px;
	background: #4caf56;
	color: #fff;
	text-decoration: none;
	border-radius: 6px;
	border:1px;
	cursor:pointer;
}

.result_tbl .btn ,.result_tbl .btn2,
.resultTable .btn ,.resultTable .btn2 {
	padding:5px;
	padding-left:15px;
	padding-right:15px;
}

.recruit-edit-wrapper {
	margin: 20px 0;
    border-top: 1px solid #333;
}
.recruit-edit-buttons {
	display: flex;
	gap: 10px;
    justify-content: center;
    margin: 20px 0;
}

/* タイムアウト 画面 */
.timeout-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 80vh;
    text-align: center;
    color: #333;
}
.timeout-wrapper h2 {
    font-size: 28px;
    margin-bottom: 32px;
    font-weight: 600;
}
.timeout-wrapper p {
    margin: 8px 0;
}
.timeout-wrapper a {
    color: #007bff;
    text-decoration: none;
    font-size: 14px;
    transition: color 0.3s;
}
.timeout-wrapper a:hover {
    color: #93c7ff;
}

@media screen and (max-width: 960px) {
	.contentsBox h1 {
		margin: 0;
	}
	.exl_tbl td label {
		display: flex;
		align-items: center;
	}
	.add_btn2 ul {
		display: flex;
		justify-content: center;
	}
}
@media screen and (max-width: 390px) { 
	.action {
        height: 75px;
    }
	.period {
		font-size: 11px;
	}
}

.toggle_input {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
  opacity: 0;
  cursor: pointer;
}

.toggle_label {
  width: 75px;
  height: 35px;
  background: #ccc;
  position: relative;
  display: inline-block;
  border-radius: 40px;
  transition: 0.4s;
  box-sizing: border-box;
}

.toggle_label:after {
  content: "";
  position: absolute;
  width: 35px;
  height: 35px;
  border-radius: 100%;
  left: 0;
  top: 0;
  z-index: 2;
  background: #fff;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
  transition: 0.4s;
}

.toggle_input:checked + .toggle_label {
  background-color: rgb(70, 130, 180);
}

.toggle_input:checked + .toggle_label:after {
  left: 40px;
}

.toggle_button {
  position: relative;
  width: 45px;
  height: 35px;
  transform: scale(0.6);
  margin-right: 100px;
}

.tooltip-container {
	position: relative;
	display: inline-block;
}
  
.tooltip-icon {
	display: inline-block;
	width: 18px;
	height: 18px;
	background-color: #3498db;
	color: white;
	border-radius: 50%;
	text-align: center;
	line-height: 18px;
	font-size: 12px;
	cursor: pointer;
}
  
.tooltip-text {
	visibility: hidden;
	width: 220px;
	background-color: #555;
	color: #fff;
	text-align: left;
	border-radius: 6px;
	padding: 8px;
	position: absolute;
	z-index: 10;
	bottom: 125%; /* 上に表示 */
	left: 50%;
	transform: translateX(-50%);
	opacity: 0;
	transition: opacity 0.3s;
	font-size: 12px;
}

.tooltip-container:hover .tooltip-text {
    visibility: visible;
    opacity: 1;
}

.help-container {
    position: relative;
    display: inline-block;
    z-index: 1500; /* ここを追加 */
}

.help-icon {
    display: inline-block;
    width: 18px;
    height: 18px;
    color: red;
    border-radius: 50%;
    text-align: center;
    line-height: 18px;
    font-size: 12px;
    cursor: pointer;
}

.help-text {
    position: absolute; 
    visibility: hidden;
    width: 400px;
    background-color: #555;
    color: #fff;
    text-align: left;
    border-radius: 6px;
    padding: 16px;
    z-index: 2000; 
    opacity: 0;
    transition: opacity 0.3s, transform 0.3s;
    font-size: 12px;
    top: 100%; 
    left: 50%;
    transform: translate(-50%, 10px);
}

.help-container:hover .help-text {
    visibility: visible;
    opacity: 1;
}

.edithelp-container {
    position: relative;
    display: inline-block;
}

.edithelp-icon {
    display: inline-block;
    height: 18px;
    color: red;
    border-radius: 50%;
    text-align: center;
    line-height: 18px;
    font-size: 12px;
    cursor: pointer;
}

.edithelp-text {
    position: fixed;
    visibility: hidden;
    width: 400px;
    background-color: #555;
    color: #fff;
    text-align: left;
    border-radius: 6px;
    padding: 16px;
    z-index: 1000;
    opacity: 0;
    transition: opacity 0.3s, transform 0.3s;
    font-size: 12px;
    top: 40%;
    left: 40%;
    transform: translate(-50%, -50%);
}

.edithelp-container:hover .edithelp-text {
    visibility: visible;
    opacity: 1;
}

.past-checkbox {
	transform: scale(1.5);
	width: auto !important;
}