html {
  font-size: 100%;
  height: 100%;
}
dl,ul,ol,li,dt,dd {
	margin: 0;
	padding: 0;
}
p {
	margin: 0;
	padding: 0;
}
/*フォームの部品*/
fieldset {
	padding: 0;
	display: block;
	margin: 0 auto;
	border: none;
}
select {
	padding: 5px 0;
    font-size: 16px;
    margin: 0;
}
select option.bg-sel{
	background-color: rgb(132, 188, 244);
}
textarea {
    max-width: 98%;
}
.head-navi {
    position: relative;
	z-index: 1;
}
.user textarea{
	max-width: 380px;
}
.clearfix:after {
    content: "";
    display: block;
    clear: both;
}
.small {
	font-size: small;
}
.bold {
	font-weight: bold;
}
/*link*/
a:link,
a:visited {
	color: #3973C9;
	text-decoration: underline;
}
a:hover {
	color: #da0101;
}
.red {
	color: #da0101;
}
.gray {
	color: #aaa;
}
.bg-gray {
	background-color: #aaa;
}
/*幅*/

.w-90 {
    width: 90%;
    margin: 0 auto;
}
.w-80 {
    width: 80%;
    margin: 0 auto;
}
.w-70 {
    width: 70%;
    margin: 0 auto;
}
.bd-solid {
	border: 1px solid #aaa;
}
/*求職者ページでPCで表示しスマホは非表示*/
.user .sp {
	display: none;
}
.user .ps {
	display: block;
}
.nav-unshown {
		display:none;
	}

/*Table幅がスクロールするページ*/
.sc_inner {
	max-width: 95%;
	margin: 0 auto;
    /*flex: 1;*/
	flex: 1 1 auto;
}
.scroll20 {
	max-width: 200px;
	min-width: 200px;
}
.scroll80 {
	overflow-x: scroll;
}
.scroll80 table.userlist {
    min-width: 900px;
}
.scroll80ap table.userlist {
    min-width: 900px;
}

/*margin*/
.mt10 {
	margin-top: 10px;
}
.mt20 {
	margin-top: 20px;
}
.mt30 {
	margin-top: 30px;
}
.mt40 {
	margin-top: 40px;
}
.mt50 {
	margin-top: 50px;
}
.mb10 {
	margin-bottom: 10px;
}
.mb20 {
	margin-bottom: 20px;
}
.mb30 {
	margin-bottom: 30px;
}
.mb40 {
	margin-bottom: 40px;
}
.mb50 {
	margin-bottom: 50px;
}
.mg10 {
	margin: 10px;
}
.mg20 {
	margin: 20px;
}
.mg30 {
	margin: 30px;
}
.mtb100 {
	margin: 100px auto;
}

/*padding*/
.pt10 {
	padding-top: 10px;
}
.pt20 {
	padding-top: 20px;
}
.pt40 {
	padding-top: 40px;
}
.pb10 {
	padding-bottom: 10px;
}
.pb20 {
	padding-bottom: 20px;
}
.pb40 {
	padding-bottom: 40px;
}
.pd10 {
	padding: 10px;
}
.pd20 {
	padding: 20px;
}
.pd30 {
	padding: 30px;
}
.pd40 {
	padding: 40px;
}

/*flexbox*/
.box {
	box-sizing: border-box;
    width: 80%;
    margin: 2em auto;
}
.box80 {
	box-sizing: border-box;
    width: 80%;
    margin: 0 auto 2em;
}
.flex-box {
	display: flex;
    justify-content: space-between;
	box-sizing: border-box;

display: -ms-flexbox;
-ms-flex-pack: justify;
-ms-flex-line-pack: center;
}
.flex-100 {
    justify-content: center;
    align-items: center;
    flex: 1;
}
.flex-admin {
    margin: 0 auto;
    width: 90%;
    padding: 0 20px;
    position: relative;
}
.flex-50 {
    position: relative;
    display: -webkit-flex;
    -webkit-box-pack: center;
     -ms-flex-pack: center;
   justify-content: center;
}
.flex-80 {
	flex: 4;
	margin: 0 0 0 2em;
}
.flex-20 {
	flex: 1;
}
/*通常の画面幅*/
.w_inner {
	max-width: 1024px;
	margin: 0 auto;
	/*flex: 1;*/
	flex: 1 1 auto;
}
.school .w_inner,.school .sc_inner{
	min-width:980px;
}
.admin .w_inner,.admin .sc_inner{
	min-width:980px;
}
.association .w_inner,.association .sc_inner{
	min-width:980px;
}
/*横に長いテーブルがあるときの幅*/
.w_scroll {
    width: 90%;
    margin: 0 auto;
    /*flex: 1;*/
	flex: 1 1 auto;
}
body {
	-webkit-text-size-adjust: 100%;
	margin: 0 auto;
	width: 100%;
	padding: 0;
	border: 0;
	font-size: 16px;
	line-height: 1.8;
	font: inherit;
	vertical-align: baseline;
	font-family: "Helvetica Neue", Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Arial, sans-serif;
	color: #333;
	background-color: #F6F5F2;
  display: flex;
  flex-direction: column;
}
#wrapper {
	margin: 0 auto;
	width: 100%;
	line-height: 1.8;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}
#wrapper-st {
	margin: 0 auto;
	width: 90%;
	line-height: 1.8;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}
header {
	margin: 0 auto;
	width: 100%;
	text-align: center;
	background-color: #fff;
}
.user header {
	border-top: 8px solid #3973C9;
}
.school header {
	border-top: 8px solid #439248;
	min-width: 980px;
}
.admin header {
	border-top: 8px solid #785b4b;
	min-width: 980px;
}
.association header {
	border-top: 8px solid #7030A0;
	min-width: 980px;
}
header h1 {
	text-align: left;
	font-size: 1.8em;
	line-height: 1.4;
    margin: 0;
    font-weight: normal;
}
header h1 span {
	font-size: 0.5em;
    font-weight: normal;
}
nav.g-navi {
	/*margin: 0 auto 40px;
    background-color: #ddd;
    padding: 5px 0;
    width: 100%;*/
}
nav ul {
	text-align: center;
	margin: 0;
	padding: 0;
}
nav ul li {
	display: inline-block;
	list-style-type: none;
	/*padding: 0 20px;*/
}
main {
	margin: 0 auto;
	width: 100%;
	display: block;
flex: 1 1 auto;
}
footer {
	margin: 0 auto;
	width: 100%;
	text-align: center;
	/*margin-top: 70px;*/
	margin-top: 40px;
	color: #fff;
	font-size: small;
}
.user footer {
	background-color: #3973C9;
}
.school footer {
	background-color: #439248;
	min-width: 980px;
}
.admin footer {
	background-color: #785b4b;
	min-width: 980px;
}
.association footer {
	background-color: #7030A0;
	min-width: 980px;
}

/*求職者ログイントップ*/
.login-flex-box {
	display: flex;
	box-sizing: border-box;
	justify-content: center;
	align-items: center;
}
.login-flex-50 {
    position: relative;
    display: -webkit-flex;
    -webkit-box-pack: center;
     -ms-flex-pack: center;
   justify-content: center;
   flex: 1;
}
.loginid-box {
	position: relative;
	margin: 0 auto;
	background-color: #fff;
	text-align: center;
	height: 350px;
	margin: 0 3%;
	box-sizing: border-box;
	display: inline-block;
	padding: 20px;
}
.loginid-box .member-login {
	display: flex;
}
.loginid-box .member-login dt {
	display: inline-flex;
    width: 200px;
}
.loginid-box .member-login dd {
	display: inline-flex;
    margin: 0;
}

.eclipse {
	display: -webkit-box;
    -webkit-box-orient: vertical;
	-webkit-line-clamp: 1;


	overflow: hidden;
    /* text-overflow: ellipsis;
    white-space: nowrap;
	max-width: 100%; */
}

.send-box {
    margin: 0 auto;
    /* background-color: #fff; */
    /* text-align: center; */
    box-sizing: border-box;
}
.send-box textarea {
	border: 1px #000 solid;
	border-radius: 10px;
	min-height: 150px;
	max-height: 150px;
	width: 45vw;
	max-width: 45vw;
	background-color: #eee;
	padding: 10px;
}
.send-box div.d-flex {
	display: flex;
	justify-content: space-between;
}

.send-box input[type=button] {
	padding: 10px 15px;
    background: #ddd;
}

.item-chat {
	max-height: 300px;
	overflow-y: auto;
	margin-top: 30px;
}

input[type="text"],
input[type="password"] {
    border: solid 1px #aaa;
    border-radius: 3px;
    padding: 6px;
    font-size: 1.1em;
    box-sizing: border-box;
    margin: 0 0 10px;
}
.user input[type="text"],
.user input[type="password"] {
	max-width: 380px;
}

h1 {
	font-size: 1.8em;
	text-align: center;
	margin: 0.6em auto;
}
h2 {
	text-align: center;
}
h2.mypage {
	text-align: left;
	padding-left: 10px;
	font-weight: normal;
	line-height: 1.4;
	font-size: 26px;
}
.user h2.mypage {
	border-left: 4px solid #3973C9;
}
.school h2.mypage {
	border-left: 4px solid #439248;
}
.admin h2.mypage {
	border-left: 4px solid #785b4b;
}
.association h2.mypage {
	border-left: 4px solid #7030A0;
}


h3 {

}
.t-left {
	text-align: left;
}
.t-right {
	text-align: right;
}
.t-center {
	text-align: center;
}
.f-left {
	float: left;
}
.f-right {
	float: right;
}


/*ボタン*/
.lgnbtn-box {
    width: 90%;
    margin: 0 auto;
    text-align: center;
}
.lgnbtn-box .btn {
    height: 50px;
    width: 100%;
    border: none;
    padding: 0;
    font-weight: bold;
    color: #fff;
    cursor: pointer;
}
.lgnbtn-box a {
	display: block;
	font-weight: bold;
    height: 50px;
    line-height: 50px;
    box-sizing: border-box;
	text-decoration: none;
	color: #fff;
}
.btn-box .btn {
    height: 50px;
    width: 100%;
    border: none;
    padding: 0;
    font-weight: bold;
    color: #fff;
    cursor: pointer;
}
.linkbtn-box {
    text-align: center;
}
.linkbtn-box a {
	display: block;
    height: 50px;
    line-height: 50px;
    box-sizing: border-box;
	text-decoration: none;
	font-weight: bold;
	color: #fff;
}
/*ボタン色替え*/
.user .lgnbtn-box .btn,
.user .btn-box .btn,
.user .lgnbtn-box a,
.user .linkbtn-box a {
   background-color: #3973C9;
}
.user .lgnbtn-box .btn:hover,
.user .btn-box .btn:hover,
.user .lgnbtn-box a:hover,
.user .linkbtn-box a:hover {
   background-color: #5c85c1;
}
.school .lgnbtn-box .btn,
.school .btn-box .btn,
.school .lgnbtn-box a,
.school .linkbtn-box a {
   background-color: #439248;
}
.school .lgnbtn-box .btn:hover,
.school .btn-box .btn:hover,
.school .linkbtn-box .backlink-r a:hover {
   background-color: #6ea572;
}

.admin .lgnbtn-box .btn,
.admin .btn-box .btn,
.admin .lgnbtn-box a,
.admin .linkbtn-box a {
   background-color: #785b4b;
}
.admin .lgnbtn-box .btn:hover,
.admin .btn-box .btn:hover,
.admin .linkbtn-box .backlink-r a:hover {
   background-color: #785b4b;
}

.association .lgnbtn-box .btn,
.association .btn-box .btn,
.association .lgnbtn-box a,
.association .linkbtn-box a {
   background-color: #7030A0;
}
.association .lgnbtn-box .btn:hover,
.association .btn-box .btn:hover,
.association .linkbtn-box .backlink-r a:hover {
   background-color: #7030A0;
}

.lgnbtn-box .backlink-l {
    float: left;
    margin: 0 auto;
    width: 49%;
    height: 50px;
}
.lgnbtn-box .backlink-l a{
    display: block;
    background-color: #ddd;
    height: 50px;
    font-weight: normal;
    line-height: 50px;
    color: #000;
}
.lgnbtn-box .backlink-r {
	float: right;
    margin: 0 auto;
    width: 49%;
    height: 50px;
}
.lgnbtn-box .backlink-r a{
    display: block;
    height: 50px;
    font-weight: normal;
    line-height: 50px;
}

.lgnbtn-box .backlink-r a:hover,
.lgnbtn-box .backlink-l a:hover {
    opacity: .9;
}

.btn-box-50 {
    position: absolute;
    width: 90%;
    bottom: 30px;
    margin: 0 auto;
    text-align: center;
}

.u_hover {
	cursor: pointer;
}
dl.pw-check {
	margin: 0 auto;
	width: 80%;
}
.pw-check dt {
	display: block;
	width: 30%;
	text-align: left;
	float: left;
}
.pw-check dd {
	margin: 0 0 0 30%;
	width: 68%;
}
dl.apmail-box {
	padding: 20px 30px;
	position: relative;
    background: #fff;
}
dl.status {
	position: relative;
    border: 1px solid #3973C9;
    background: #fff;
}
dl.status dt {
	display: inline-block;
    font-weight: bold;
    width: 200px;
    background: #3973C9;
    color: #fff;
    text-align: center;
    padding: 10px 0;
}

dl.status dd.left {
	display: inline-block;
    padding: 0 0 0 30px;
}

dd ul li {
	display: inline-block;
	padding: 0 2em 10px 0;
}
.af-radio {
	display: inline-block;
}
table {
	margin: 0 auto 30px;
}
caption {
    text-align: left;
    font-size: 16px;
    width: 100%;
    margin: 0 auto 1em;
}
/*マイページ*/
p.user {
	text-align: left;
	font-size: 16px;
	padding-right: 1em;
}
table.mypage,
table.mypage td,
table.mypage th {
	width: 100%;
	border: 1px solid #aaa;
	border-collapse: collapse;
}
table.mypage td,
table.mypage th {
	padding: 5px 20px;
	width: 30px;
	height: 25px;
	background-color: #fff;
}
table.mypage td p,
table.mypage th p {
	padding: 0;
	margin: 0;
}
table.mypage th {
	background: #eee;
}
table.mypage th:nth-child(1) {
	width: 20%;
}
table.mypage th:nth-child(2) {
	width: 20%;
}
table.mypage2,
table.mypage2 td,
table.mypage2 th {
	width: 100%;
	border: 1px solid #aaa;
	border-collapse: collapse;
}
table.mypage2 td,
table.mypage2 th {
	padding: 0px 20px;
	width: 30px;
	height: 25px;
	background-color: #fff;
}
table.mypage2 td p,
table.mypage2 th p {
	padding: 0;
	margin: 0;
}
table.mypage2 th {
	background: #eee;
}
table.mypage2 th:nth-child(1) {
	width: 20%;
}
table.mypage2 th:nth-child(2) {
	width: 20%;
}

/**/
table.userlist {
	width: 100%;
	font-size: 14px;
	line-height: 1.4;
	margin: 0 auto 40px;
	border: 1px solid #aaa;
	background: #fff;
	border-collapse: collapse;
}
table.userlist.w-40 {
	width: 40%;
}
table.userlist.w-40 th,
table.userlist.w-40 td {
	padding: 10px 14px;
	width: 50%;
	text-align: center;
}
table.userlist.w-60 {
	width: 60%;
}
table.userlist.w-60 th,
table.userlist.w-60 td {
	padding: 10px 14px;
	width: 50%;
	text-align: center;
}
table.userlist td,
table.userlist th {
	border: 1px solid #aaa;
	border-collapse: collapse;
}
table.userlist th {
	padding: 4px 14px;
	background: #eee;
}
table.userlist td {
	padding: 10px 14px;
}
table.userlist td p,
table.userlist th p {
	padding: 0;
	margin: 0;
}
table.userlist2 {
	width: 100%;
	font-size: 14px;
	line-height: 1.4;
	margin: 0 auto 40px;
	border: 1px solid #aaa;
	background: #fff;
	border-collapse: collapse;
}
table.userlist2.w-40 {
	width: 40%;
}
table.userlist2.w-40 th,
table.userlist2.w-40 td {
	padding: 0px 14px;
	width: 50%;
	text-align: center;
}
table.userlist2 td,
table.userlist2 th {
	border: 1px solid #aaa;
	border-collapse: collapse;
}
table.userlist2 th {
	padding: 0px 14px;
	background: #eee;
}
table.userlist2 td {
	padding: 0px 14px;
}
table.userlist2 td p,
table.userlist2 th p {
	padding: 0;
	margin: 0;
}

.th-name {
	width: 90px;
}

/**/
.inner-box {
	margin: 0 auto;
	padding: 20px 30px;
	background: #fff;
}
.inner-box.mb40 {
	margin: 0 auto 40px;
}
.ap-mail {
	margin: 0 auto 2em;
}
.ap-mail dt {
	font-weight: bold;
}
.ap-mail dd {
	margin: 0 0 1em 200px;
}
.ap-mail dd:last-child {
	margin-bottom: 0;
}
/**/
.submit input,
.submit-sublink input {
    width: 100%;
    height: 50px;
    color: #fff;
    border: none;
    font-size: 1.0em;
    cursor: pointer;
}

.submit .nobtn input,
.submit .back input,
.submit-sublink
.nobtn input,
.back input {
    width: 100%;
    height: 50px;
    color: #000;
    text-align: center;
    cursor: pointer;
}
.submit .nobtn,
.submit .back,
.submit .submitbtn {
    text-align: center;
    display: inline-block;
    width: 42%;
    padding: 0 5px;
}
.user .submit .user .nobtn,
.user .submit .user .back,
.user .submit .user .submitbtn {
    text-align: center;
    width: unset;
    flex: 0 0 48%;
}
.submitbtn-one {
	text-align: center;
    display: inline-block;
    padding: 0 5px;
    width: 100%;
}
.submit .back input {
    background-color: #999;
    color: #fff;
}
.backbtn{
	width: 100%;
    height: 50px;
    color: #000;
    text-align: center;
    cursor: pointer;
}
.backbtn a{
	background-color: #999;
    color: #fff;
 	display: block;
 	text-decoration: none;
 	padding:10px 0;
}

.backbtn p{
    text-align: center;
    display: inline-block;
    width: 42%;
    padding: 0 5px;
}

.user .submit .submitbtn input,
.user .submit .submitbtn-one input {
	background-color: #3973C9;
}
.school .submit .submitbtn input,
.school .submit .submitbtn-one input {
	background-color: #439248;
}
.admin .submit .submitbtn input,
.admin .submit .submitbtn-one input {
	background-color: #785b4b;
}
.association .submit .submitbtn input,
.association .submit .submitbtn-one input {
	background-color: #7030A0;
}
/*.user .submit .submitbtn input#btnLeave {
	background-color: #ddd;
}*/

.user .submit .submitbtn input:hover,
.user .submit .submitbtn-one input:hover {
	background-color: #5c85c1;
}
.school .submit .submitbtn input:hover,
.school .submit .submitbtn-one input:hover  {
	background-color: #6ea572;
}
.admin .submit .submitbtn input:hover,
.admin .submit .submitbtn-one input:hover  {
	background-color: #785b4b;
}
.association .submit .submitbtn input:hover,
.association .submit .submitbtn-one input:hover  {
	background-color: #7030A0;
}
.submit{
    display: inline-block;
    text-align: center;
    width: 100%;
}
/*.user .submit{
	display: flex;
	flex-wrap: wrap;
}*/
.submit input:hover,
.submit-sublink input:hover,
.submit .nobtn input:hover,
.submit .back input:hover,
.submit-sublink .nobtn input:hover,
.submit-sublink .back input:hover {
    opacity: .9;
}
/**/


dl.entry-form {
	/* clear: both; */
	/* border: 1px solid #aaa; */
    border-top: 0;
    background: #fff;
    line-height: 1.4;
}
dl.entry-form .checkgroup label {
	display: inline-block;
}
dl.entry-form .pref-name {
	min-width: 110px;
}
dl.entry-form dt {
	display: block;
    float: left;
    width: 20%;
    padding: 10px 0 0 20px;
	position: relative;
}
dl.entry-form dt.no-dot:before {
	position: absolute;
	content: "■";
	left: 5px
}
dl.entry-form dt:not(.no-dot):before {
	position: absolute;
	content: "・";
	left: 5px
}
dl.entry-form dt:not(.no-dot):after {
	content: ":";
	position: absolute;
	right: 10px;
}
dl.entry-form dt.empty:before,
dl.entry-form dt.empty:after {
	display: none;
}
dl.entry-form dd {
    margin-left: 20%;
    padding: 10px 10px;
    background: #fff;
}
dl.entry-form .border-t2 {
    border-top: 2px solid #000;
}

ul.chkgroup {
	display: flex;
	flex-wrap: wrap;
	margin-top: 20px;
	list-style: none;
}
ul.chkgroup li {
	width: 19%;
	padding: 0;
}

.div_cd {
	display: none;
	padding-left: 5%;
}

.div_area {
	display: none;
}

.pref-select {
	margin: 0;
}

.googlemap {
	width: 100%;
	height: 400px;
	margin-bottom: 40px;
}
.googlemap iframe {
	width: 100%;
	height: 100%;
}
.user dl.entry-form {
	clear: both;
	display: flex;
	flex-wrap: wrap;
    border-right: 0;
    border-bottom: 0;
    background: unset;
}
.user dl.entry-form dt {
	float: none;
	width: unset;
    background: #f9f9f9;
    flex: 0 0 25%;
}
.user dl.entry-form dd {
	margin-left: unset;
    flex: 0 0 69%;
    /* border-right: 1px solid #aaa; */
}
.user dl.entry-form dt:last-of-type{
	/* border-bottom: 1px solid #aaa; */
	}
.user dl.entry-form dd:last-of-type{
	/* border-bottom: 1px solid #aaa; */
	}
dl.entry-form span {
	font-size: 14px;
	display: inline-block;
}
dl.entry-form .dl-head {
	background: #f9f9f9;
	text-align: center;
	font-weight: bold;
}
dl.entry-form .photo {
	padding: 20px 20px 0;
	display: flex;
	align-items: flex-end;
}
dl.entry-form .photo span {
	padding: 58px 50px;
    background: #eee;
    border: 1px #000 solid;
}
dl.entry-form .photo img {
	height: 140px;
    border: 1px #000 solid;
}
dl.entry-form .photo input.photo-btn {
	padding: 10px 20px;
	border-radius: 3px;
    border: 1px #000 solid;
	margin-left: 30px;
}
dl.entry-form dt.dl-head {
	display: block;
    float: left;
    width: 25%;
    border-top: 1px solid #aaa;
    padding: 10px 0;
}
dl.entry-form dd.dl-head {
	margin-left: 25%;
    padding: 10px 0;
    border-top: 1px solid #aaa;
    border-left: 1px solid #aaa;
}

dl.entry-form2 {
	clear: both;
	border: 1px solid #aaa;
    border-top: 0;
    background: #f9f9f9;
    line-height: 1.4;
}
dl.entry-form2 span {
	font-size: 14px;
	display: inline-block;
}
dl.entry-form2 .dl-head {
	background: #f9f9f9;
	text-align: center;
	font-weight: bold;
}
dl.entry-form2 dt.dl-head {
	display: block;
    float: left;
    width: 25%;
    border-top: 1px solid #aaa;
    padding: 0 0;
}
dl.entry-form2 dd.dl-head {
	margin-left: 25%;
    padding: 0 0;
    border-top: 1px solid #aaa;
    border-left: 1px solid #aaa;
}
dl.entry-form2 dt {
	display: block;
    float: left;
    width: 25%;
    border-top: 1px solid #aaa;
    padding: 0 0 0 10px;
}
dl.entry-form2 dd {
    margin-left: 25%;
    padding: 0 10px;
    border-top: 1px solid #aaa;
    border-left: 1px solid #aaa;
    background: #fff;
    /*min-height: 2em;*/
}

.remodal .modal-title {
	padding: 20px 0;
}

.remodal .modal-footer {
	display: flex;
	margin-top: 50px;
	justify-content: center;
}

.remodal .modal-footer .btn{
	padding: 10px 20px;
	color: #fff;
	border: 1px #000 solid;
	background: #785b4b;
}

.remodal .modal-footer .btn:first-child{
	background: #999;
	margin-right: 10px;
}

.remodal input[type=file] {
	padding: 20px 0;
}

legend {
	font-size: 1.17em;
    margin: 0;
    font-weight: bold;
	padding-left: 20px;;
	position: relative;
}
legend:before {
	position: absolute;
	left: 5px;
	content: "■";
}
h2.admin {
	margin: 0 auto 2em;
	text-align: left;
	border-bottom: 1px solid #785b4b;
	font-size: 18px;
	padding: 3px 13px;
}
h2.association {
	margin: 0 auto 2em;
	text-align: left;
	border-bottom: 1px solid #7030A0;
	font-size: 18px;
	padding: 3px 13px;
}
ul.icon {
	list-style-type: none;
	margin: 0 13px 2em;
}
ul.icon li {
	display: inline-block;
	padding-right: 50px;
    text-align: center;
}
ul.icon li a{
	display: inline-block;
}
ul.icon li a img {
	width: 50px;
	height: 50px;
}
/*sidebar*/

.side {
	font-size: 14px;
}
.user .side {
	background: #3973C9;
}
.school .side {
	background: #439248;
}
.admin .side {
	background: #785b4b;
}
.association .side {
	background: #7030A0;
}

nav.side-menu {
	padding: 0;
}
.user nav.side-menu {
	background: #3973C9;
}
.school nav.side-menu {
	background: #439248;
}
.admin nav.side-menu {
	background: #785b4b;
}
.association nav.side-menu {
	background: #7030A0;
}
nav.side-menu ul li {
	display: block;
    border-bottom: 1px dashed #F6F5F2;
}
nav.side-menu ul li a {
	display: block;
	padding: 10px;
	color: #fff;
	text-decoration: none;
}
nav.side-menu ul li.current {
	/* display: block; */
	/*padding: 10px;要確認*/
	color: #fff;
	text-decoration: none;
	background: #779fda;
}
.user nav.side-menu ul li.current {
	background: #779fda;
}
.school nav.side-menu ul li.current {
	background: #6ea572;
}
.admin nav.side-menu ul li.current {
	background: #785b4b;
}
.association nav.side-menu ul li.current {
	background: #7030A0;
}


/*schoolにはcurrentにもリンクが貼ってあるので*/
.school nav.side-menu ul li.current {
	padding: 0;
	color: #fff;
}

nav.side-menu ul li a:hover {
	text-decoration: underline;
}
nav.side-menu li.user-icon {
	color: #fff;
}
nav.side-menu li.user-icon p {
	padding: 10px 0 0 10px;
}
nav.side-menu li.user-icon ul li {
	color: #fff;
	border-top: 1px dashed #F6F5F2;
	border-bottom: none;
}
nav.side-menu li.user-icon ul{
	margin-top: 10px;
}
nav.side-menu li.user-icon ul li a img {
	width: 16px;
	padding: 0 5px 0 0;
	vertical-align: middle;
}
nav.side-menu ul {
	list-style-type: none;
	text-align: left;
}

/*support画面の調整*/
#contents_list li {
    list-style: none;
    margin: 0;
    padding: 0;
}

#contents_list li:before{
    content: "";
    display: inline-block;
    width: 22px;
    height: 23px;
    background: url(/share/images/adobe_reader_icon_small.png) no-repeat;
    vertical-align: text-top;
    margin-right: 14px;
	
}
#contents_list.xlsx-icon li:before{
    content: "";
    display: inline-block;
    width: 22px;
    height: 23px;
    background: url(/share/images/xlsx-icon_small.png) no-repeat;
    vertical-align: text-top;
    margin-right: 14px;
	
}
.cf:after{  
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0;
}

dl.support-form {
	clear: both;
    border-top: 0;
    background: #f9f9f9;
    margin: 0 0 20px;
    line-height: 1.4;
}

dl.support-form dt.dl {
	display: block;
    float: left;
    width: 25%;
    border-top: 1px solid #ccc;
    padding: 10px 0;
}
dl.support-form dd.dl {
	margin-left: 25%;
    padding: 10px 0;
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
}
dl.support-form dt {
	display: block;
    float: left;
    width: 25%;
    padding: 15px 0 0 10px;
}
dl.support-form dd {
    margin-left: 25%;
    padding: 15px 10px;
   /* border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
    background: #fff;
    /*min-height: 2em;*/
}

.support-text {
	width: 100%;
	height:125px;}


/********************************タブレットCSS（求職者のみ）*******************************/
@media screen and (max-width: 1024px) {
	.user .w_inner {
	    max-width: 98%;
	}
}

/********************************スマホCSS（求職者のみ）*******************************/
@media screen and (max-width: 768px) {
	/*PCで表示しスマホは非表示*/
	table.mypage2 {
		width: 200%
	}
	.eclipse {
		width: auto;
	}
	.send-box textarea {
		width: 85vw;
		max-width: 85vw;
		margin-bottom: 10px;
	}
	.user .sp {
		display: block;
	}
	.user .sp li{
		display: flex;
		padding-left: 10px;
	}
	.user .sp li .svg{
		background-color: white;
		width: 24px;
	}
	.user .sp li .svg.mypage{
		-webkit-mask: url(../icons/mypage.svg) no-repeat center;
		mask: url(../icons/mypage.svg) no-repeat center;
	}
	.user .sp li .svg.history{
		-webkit-mask: url(../icons/history.svg) no-repeat center;
		mask: url(../icons/history.svg) no-repeat center;
	}
	.user .sp li .svg.calendar{
		-webkit-mask: url(../icons/calendar.svg) no-repeat center;
		mask: url(../icons/calendar.svg) no-repeat center;
	}
	.user .sp li .svg.chat{
		-webkit-mask: url(../icons/chat.svg) no-repeat center;
		mask: url(../icons/chat.svg) no-repeat center;
	}
	.user .sp li .svg.profile{
		-webkit-mask: url(../icons/profile.svg) no-repeat center;
		mask: url(../icons/profile.svg) no-repeat center;
	}
	.user .pc {
		display: none;
	}
	.user #wrapper {
	    margin: 0 auto;
	    width: 100%;
	    max-width: 100%;
	    /*display: block;
	    flex-direction: none;
	    min-height: auto;*/
	}
	.user .w_inner {
	    max-width: 100%;
	    margin: 0 auto;
	    flex: 1;
	}
	.user .flex-20 {
    	flex: 1;
	}
	.user .flex-80 {
	    flex: 4;
	    margin: 0 0 0 2em;
	}
/*ヘッダー*/
	.user header {
	border-top: 4px solid #3973C9;
	height: 50px;
	}
	.user header h1 {
	    font-size: 1.3em;
	}
	.user .site_title.flex-50 {
		display: block;
	}
	.user .site_title.flex-50.pt10.pb10 {
		padding: 5px 0 5px 10px
	}
	.user nav.g-navi ul.pt10 {
		margin: 0 auto 10px;
		padding: 0;
	}
	.user nav.g-navi ul.pt10 li.mg10 {
		margin: 0 10px;
	}
	.user .flex-box {
	    display: block;
	    justify-content: space-between;
	    box-sizing: border-box;
	}
	.user .login-flex-box {
	    display: block;
	}
	.user .loginid-box .member-login dt {
	    display: inline-block;
	}
	.user .mtb100 {
    	margin: 40px 4%;
	}
	.user .loginid-box {
	    position: relative;
	    background-color: #fff;
	    text-align: center;
	    height: auto;
	    margin: 0 3% 30px;
	    box-sizing: border-box;
	    padding-bottom: 30px;
	}
	.user .member-login {
		width: 80%;
		margin: 0 auto 20px;
	}
	.login-flex-50 {
	    display: block;
	}
	.user footer {
	    font-size: x-small;
	}
	.send-box.pd40 {
	    padding: 40px 20px;
	}
	/*フォーム*/

	.user dl.entry-form {
		flex-direction: column;
	    border: 1px solid #aaa;
	    border-top: 0;
	    border-right: 0;
	    text-align: center;
	}

	.user dl.entry-form dt {
	    float: none;
	    width: auto;
	    font-weight: bold;
	    border-top: 1px solid #aaa;
	    border-right: 1px solid #aaa;
	    padding: 10px;
	}
	.user dl.entry-form dd {
	    margin: 0;
	    padding: 15px 10px;
	    border-top: 1px solid #aaa;
	    border-right: 1px solid #aaa;
	    border-left: none;
	    text-align: left;
	}
	.user dl.entry-form dt:last-of-type{
		border-bottom: none;
	}
	.user dl.entry-form dd:last-of-type{
		border-bottom: none;
	}
	.user dl.entry-form textarea{
	    width: 98%;
	    max-width: unset;
	}
	input[type="text"] {
		max-width: unset;
		width: 100%;
	}
	
	.user .btn-box.w-70 {
		width: 100%;
	}
	input[type="password"] {
		width: 100%;
	}

	.user .linkbtn-box.w-70 {
	    width: 100%;
	}
	.user dl.status dt {
	    width: 160px;
	}
	.user dl.status dd.left {
	    padding: 0 0 0 1em;
	}
	.user .ap-mail dt {
	    margin-right: 1em;
	}
	.user .ap-mail dd {
	    margin: 0 0 1em 0;
	}
	/*ボタンの幅*/
	.user .submit .nobtn,
	.user .submit .back,
	.user .submit .submitbtn {
	    margin-bottom: 10px;
	    width: 100%;
	    padding: 0;
	}
	.submit{
		flex-direction: column;
	}
/*マイページサイドバーメニュー*/
	#sp-menu {
		position: fixed;
		top: 0;
		right: 0;
		width: 55px;
    	height: 55px;
    	z-index: 9999;
	}
	/*チェックボックス等は非表示に*/
	.nav-unshown {
		display:none;
	}
	#nav-open {
		display: block;
	    width: 55px;
	    text-align: center;
	    vertical-align: middle;
	    padding: 16px 0 0;
	}
	#nav-open span, #nav-open span {
		font-size: 13px;
	    font-weight: bold;
	    color: #fff;
	}
	/*閉じる用の薄黒カバー*/
	#nav-close {
		display: none;/*はじめは隠しておく*/
		position: fixed;
		z-index: 99;
		top: 0;/*全体に広がるように*/
		right: 0;
		width: 100%;
		height: 100%;
		background: black;
		opacity: 0;
		transition: .3s ease-in-out;
	}
	/*中身*/
	#nav-content {
		overflow: auto;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 9999;/*最前面に*/
		width: 90%;/*右側に隙間を作る（閉じるカバーを表示）*/
		max-width: 330px;/*最大幅（調整してください）*/
		height: 100%;
		background: #3973C9;
		transition: .3s ease-in-out;/*滑らかに表示*/
		-webkit-transform: translateX(-105%);
		transform: translateX(-105%);/*左に隠しておく*/
	}
	/*チェックが入ったらもろもろ表示*/
	#nav-input:checked ~ #nav-close {
		display: block;/*カバーを表示*/
		opacity: .5;
	}
	#nav-input:checked ~ #nav-content {
		-webkit-transform: translateX(0%);
		transform: translateX(0%);/*中身を表示（右へスライド）*/
		box-shadow: 6px 0 25px rgba(0,0,0,.15);
	}
/*コンテンツの中*/
	.user .flex-80 {
		max-width: 100%;
	    margin: 0 4%;
	}
	.user h2.mypage.flex-50 {
		display: block;
		font-size: 20px;
	}
	.user .f-right.flex-50 {
		float: none;
		font-size: 16px;
	}
	.user .f-right.flex-50 {
		display: block;
    	text-align: left;
    	padding: 0 0 0 1em;
	}
	.user main h3 {
		font-size: 18px;
	}

/*Table*/
.user table.mypage {
  border-collapse: collapse;
  vertical-align: middle;
  width: 100%;
  background-color: #fff;
  border-bottom: none;
}
.user table.mypage td {
   /* padding:0;
    width: 50%;
    height: 25px;
    border: none;*/
    display: flex;
    justify-content: space-between;
    text-align: right;
    border: none;
    border-bottom: solid 1px #aaa;
}
.user table.mypage th {
	padding:0;
}
.user table.mypage label {
  margin: 0;
}
  .user table.mypage thead {
    display: none;
  }
  .user table.mypage td {
    width: auto;
    line-height: 2em;
    height: 40px;
    padding: 10px 10px 0;
  }
  .user table.mypage tr {
    width: auto;
    line-height: 2em;
    height: 40px;
    padding: 10px 10px 0;
  }
  .user table.mypage td::before {
    content: attr(aria-label);
    display: inline-block;
    font-weight: bold;
    float: left;
    text-align: left;
    padding-right: 20px;
    white-space: nowrap;
    /*width: 40%;*/
  }
  
 /*support画面の調整*/

dl.support-form dt.dl {
	float:none;
    width: 100%;
}
dl.support-form dd.dl {
	margin-left: 25%;
    padding: 10px 0;
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
}
dl.support-form dt {
    float:none;
    width: 100%;
}
dl.support-form dd {
    margin-left: auto;
	margin-right: auto;
    padding: 15px 10px;
   /* border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
    background: #fff;
    /*min-height: 2em;*/
}
}

/*topページ作成20210831********************************/
.mainimg-box {
	margin: 2em auto;
	position: relative;
}
.mainimg-box img {
	max-width: 100%;
}
/**/
.btn-area {
	position: absolute;
  top: 63%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;
  padding:0;

}
.btn-orange {
  font-size: 1rem;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 0.5rem 1.2rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  border-radius: 20px;
}
a.btn-orange {
  color: #fff;
  text-decoration: none;
  background-color: #c33c45;
}
a.btn-orange:hover {
  color: #fff;
  background-color: #ab333b;
}
.btn-user {
	font-size: 1rem;
	line-height: 1.5;
	position: relative;
	display: block;
	padding: 0.5rem 1.5rem;
	user-select: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
}
a.btn-user {
	display: block;
	color: #fff;
	text-decoration: none;
	background-color: #3973C4;
	border-radius: 3px;
}
a.btn-user:hover {
  color: #fff;
  background-color:	#3461a5;
}

.top-content {
	margin: 0 auto;
	padding: 0 1em;
}
.top-content .block {
	margin: 0 auto 4em;
}
.top-content .block.top {
    margin: 0 auto 2em;
    padding: 1.5em 1.5em 2em;
    background-color: #fff;
    border: 1px solid #3973C4;
}
.top-content h3 {
	text-align: center;
	margin: 0 auto 1em;
	font-size: 1.5rem;
}
.top-content h2 {
	color: #3973C4;
	font-size: 1.6rem;
	margin: 0 auto 1em;
}
.top-content p {
	margin-bottom: 1em;
}
.top-content ul {
	list-style: none;
}
.info-area {
	margin: 0 auto 4em;
}
.info-area li {
	width: 100%;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	padding: 1rem 0.5rem;
	border-bottom: 1px solid #ccc;
}
.info-area li span {
	padding-right: 1em;
}
.info-area li:first-child {
	border-top: 1px solid #ccc;
}
.right-area li {
	background-color: #fff;
	text-align: center;
}
.right-area li a {
	text-decoration: none;
	display: block;
	padding: 20px 10px;
	margin: 0 auto 10px;
	border: 1px solid #779fda;
	border-radius: 3px;
}
.right-area li a:hover {
	color:#3973C9;
	background-color: #eff6ff;
}
.footer-area {
	font-size: 1.1em;
	margin: 4em auto 0;
	padding:  0;
	text-align: center;
}
.footer-area ul {
	list-style: none;
	display: flex;
	flex-direction: column;
	border-top: 1px dashed #ccc;
}
.footer-area ul li a {
	text-decoration: none;
	display: block;
	padding: 10px 0;
	border-bottom: 1px dashed #ccc;
}
.footer-area ul li a:hover {
	border-bottom: 1px solid #fff;
	background-color: #3973C9;
	color: #fff;
}
@media screen and (min-width: 601px) {
	.btn-orange {
	  font-size: 1.6rem;
	  line-height: 1.5;
	  padding: 1rem 2rem;
	  border-radius: 40px;
	}
}
@media screen and (min-width: 782px) {
	.top-content {
		display: flex;
	}
	.top-content .block.top {
	    margin: 0 auto 2em;
	    padding: 2em 2em 0;
	}
	.left-area {
		flex-basis: 70%;
		margin-right: 5%;
	}
	.right-area {
		flex-basis: 25%;
	}
	.right-area li a {
		line-height: 1.4;
	    padding: 20px 20px;
	    margin: 0 auto 10px;
	}
	.right-area li a span {
		padding-top: 0.3em;
		display: block;
	}
	a.btn-user {
		font-size: 1.1em;
	    max-width: 300px;
	    margin: 3em auto;
	    padding: 1rem;
	}
	.footer-area {
	    font-size: 1em;
	    margin: 1em auto 0;
	    padding: 0;
	}
	.footer-area ul {
	    list-style: none;
	    border-top: none;
	    flex-direction: initial;
	}
	.footer-area ul li a {
	    text-decoration: underline;
	    display: inline;
	    padding: 0 2em 0 0;
	    border-bottom: none;
	}
	.footer-area ul li:before {
		content: "»";
		padding-right: 8px;
	}
	.footer-area ul li a:hover {
	    background-color: transparent;
	    color: #da0101;
	}
}

.top_menu_top {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.top_menu {
	width: 300px;
	margin: 0 auto;
}
.top_menu li {
	width: 260px;
	display: flex;
	list-style-type: none;
	padding: 10px 20px;
	background-color: #ddd;
	border: 1px solid #ddd;
	border-radius: 10px;
	margin: 10px 0;

}
.top_menu li .svg {
    background-color: #000;
    width: 24px;
}
.top_menu li a {
    display: block;
    padding: 10px;
    color: #000;
    text-decoration: none;
}


.top_menu li .svg.mypage{
	-webkit-mask: url(../icons/mypage.svg) no-repeat center;
	mask: url(../icons/mypage.svg) no-repeat center;
}
.top_menu li .svg.history{
	-webkit-mask: url(../icons/history.svg) no-repeat center;
	mask: url(../icons/history.svg) no-repeat center;
}
.top_menu li .svg.calendar{
	-webkit-mask: url(../icons/calendar.svg) no-repeat center;
	mask: url(../icons/calendar.svg) no-repeat center;
}
.top_menu li .svg.chat{
	-webkit-mask: url(../icons/chat.svg) no-repeat center;
	mask: url(../icons/chat.svg) no-repeat center;
}
.top_menu li .svg.profile{
	-webkit-mask: url(../icons/profile.svg) no-repeat center;
	mask: url(../icons/profile.svg) no-repeat center;
}