@charset "utf-8";
/* CSS Document */
html { margin: 0; padding: 0;}

*{margin:0;padding:0;}
html.wf-active,
html.loading-delay {visibility:visible;}

body { font-family:"NotoSansJP","Helvetica Neue","Hiragino Kaku Gothic ProN", "Hiragino Sans","BIZ UDPGothic", sans-serif; font-weight:400;margin:0;padding:0;-webkit-text-size-adjust:100%; text-size-adjust: 100%; color: #000; line-height: 2.2rem; font-size: 1.2rem;}

nav ul li { list-style:none;}
ul li { list-style:none;}
a { color:#514B4B; text-decoration: none;}
a:focus, *:focus { outline:none;}

p { max-height: 100%; line-height: 3rem;}
.u-linenone { text-decoration: none!important; color: #000;}
.u-linenone a { text-decoration: none!important; color: #000;}
.txcenter { text-align: center;}
.txright {text-align: right;}

/*reset*/
footer, header,h1,h2,h3,h4,h5,h6,p,img,ul,li,dl,dt,dd,table,tr,td{margin:0;padding:0;}
img{max-width:100%;height:auto;}

a:hover { opacity:0.7;
  filter:alpha(opacity=70);
  -ms-filter:"alpha(opacity=70)";}

@media print{
html{margin:20px 0 20px 0;padding:0;zoom:0.55;}#wrapper{margin:0;padding:0;height:auto;font-size:120%;}
nav.pcN{display:none;} header,aside { display: none;}}

@media all and (-ms-high-contrast:none){
html{page-break-before:auto;size:A4;zoom:0.55;}}


/*** 解像度の幅が1050px以上 ***************************/
@media all and (min-width:1050px), print{
.pcnone {display: none;}
#wrapper { width: 100%; height: auto; font-weight: normal; margin: 0; padding: 0;}

.pagetop { text-align:right; z-index: 100; position: fixed;	bottom: 40px; right: 20px; margin: 0; padding: 0;}
.pagetop img { width: 32%;}

button.drawer-toggle { display: none;}
.drawer-nav {display: none;}

/*footer-------------------*/
footer { background: #e5e7e8; margin:200px 0 0 0; padding: 0; width: 100%; height: auto; border-bottom: solid 1px #e5e7e8;}
footer h4 {font-weight: 900; color: #1C8EA7; font-family:"MPLUS2", sans-serif; font-size: 1.8rem;}
.footer-link { width: 80%; height: auto; margin: 0 auto; padding: 50px 0 0 0;}
.footer-link ul { display: flex; flex-wrap:wrap; justify-content: start; margin: 10px 0 50px 0; gap:1em;}
.footer-link ul li { width: fit-content;　padding:20px 0 0 0; margin: 0 4px 0 4px; font-size: 1rem; line-height: 2rem;}
.footer-link ul li a { color:#000; text-decoration: none; font-weight: normal;}
.footer-link ul li a:hover { color:#000; text-decoration: none;}
footer p { font-size: 0.9rem; line-height: 1.9rem; clear: both; text-align: left; color: #1C8EA7; padding: 0 10px 20px 3px; font-weight: 400; font-family:"MPLUS2", sans-serif;}
address { clear: both; font-style: normal; text-align: center; font-size:0.9rem; margin: 0; padding: 0;}

/*header-------------------*/
header { width: 100%; max-width: 100%; height: 120px; margin: 0 auto; font-family:"MPLUS2", sans-serif; position: fixed; background: #fff; top:0; left: 0; z-index: 1000;}
.pcheader { width: 80%; margin: 0 auto; display: flex; justify-content:space-between;}
.logo { padding: 0 0 10px 0; width: 64%;}
.logo img {width: 540px; height: auto; padding:0; margin: 0;}
.logo p { font-size: 0.8rem; padding: 0 0 0 10px; margin: 0; line-height: 1.6rem;}

/*ログイン*/
.login-area { width: 35%; text-align: center; margin: 10px 0 5px 0; letter-spacing: 0; font-size: 0.9vw; line-height: 1.5vw;}
.btn-company ul { width: 100%; display: flex; justify-content:space-between; }
.btn-company li { width: 48%; padding: 4px 1px 4px 1px; border: solid 1px #1C8EA7; border-radius: 10px; color: #1C8EA7; margin-bottom: 10px; background: #fff;}
.btn-company li a { color: #1C8EA7;}
.btn-user ul { width: 100%; display: flex; justify-content:space-between; }
.btn-user li  { width: fit-content;  padding: 4px 10px 4px 10px; background: #1C8EA7; color: #fff; border-radius: 10px; white-space: nowrap;}
.btn-user li  a { color: #fff;}

/*ユーザーログイン後*/
.login-area02 { width: 45%; text-align: center; margin: 10px 0 5px 0; letter-spacing: 0; font-size: calc(0.2vw + 0.7rem); line-height: 1.5vw;}
.login-area02 .btn-user ul { width: 100%; display: flex; justify-content:space-between; margin: 20px 0 0 0;}
.login-area02 .btn-user li  { width: fit-content;  padding: 4px 10px 4px 10px; background: #1C8EA7; color: #fff; border-radius: 10px; white-space: nowrap;}
.login-area02 .btn-user li  a { color: #fff;}

/*企業用ログイン後*/
.login-area03 { width: 45%; text-align: center; margin: 10px 0 5px 0; letter-spacing: 0; font-size: calc(0.2vw + 0.7rem); line-height: 1.5vw;}
.login-area03 .btn-company ul { width: 100%; display: flex; justify-content:space-between; margin: 20px 0 0 0;}
.login-area03 .btn-company li { width: 48%; padding: 4px 1px 4px 1px; border: solid 1px #1C8EA7; border-radius: 10px; color: #1C8EA7; margin-bottom: 10px; background: #fff;}
.login-area03 .btn-company li a { color: #1C8EA7;}


article h1 { font-size: 2vw; font-weight: 800; line-height: 3vw; text-align: center; padding: 20px 0 10px 0; font-family:"MPLUS2", sans-serif;}
article h1 span { color: #1C8EA7; padding: 0 10px 0 10px;}
article p { padding: 20px 0 40px 0; text-align: center; font-weight: 400; font-size: 1.5vw; font-family:"MPLUS2", sans-serif; margin: 0;}

.page-nav {margin: 20px 0 0 0; padding: 0;}
.page-nav ul { width: 100%; font-size: 0.8rem; display: flex; flex-wrap: wrap; justify-content:flex-end; }
.page-nav li:not(:last-of-type)::after { content: "\f054"; margin: 0 .6em;  color: #1C8EA7; font-family: FontAwesome;}

/*container----------------*/
.container {width: 80%; max-width: 80%; margin: 0 auto; padding: 0;}

/*業種から探す*/
.bt-job01a { width: 100%; height: auto; background: #1C8EA7; margin: 50px 0 100px 0; font-family:"MPLUS2", sans-serif;}
.bt-job01b { width: 90%; height: auto; margin: 0 auto; padding: 20px 0 50px 0;}
h2.dr-i01 { color: #fff!important; font-size: 1.7vw; font-family:"MPLUS2", sans-serif; font-weight: 700;}
.bt-job01b ul { display: flex; flex-wrap: wrap; width: 100%; justify-content: space-between;}
.bt-job01b li { background: #fff; color: #1C8EA7; padding: 25px 20px 25px 20px; font-size: 1.4vw; border-radius: 15px; font-weight: 600; width:18%; text-align: center; box-shadow: 4px 4px 0 0 #ccc; display: inline-block; transition: .3s;}
.bt-job01b li a { color: #1C8EA7; display: block;}
.bt-job01b li:hover { box-shadow: unset; transform: translateY(3px);}


/*アイコン付き見出し*/
.dr-i01 { position: relative; vertical-align: middle; line-height: 3.2rem; padding: 20px 0 30px 70px;}
.dr-i01:before { content:url("../img/common/icon02.png")!important; position: absolute; top:0px; left:-20px; transform: scale(0.6); z-index: 10;}
.dr-i02 { position: relative; vertical-align: middle; line-height: 3.2rem; padding: 20px 0 30px 70px; color: #000; font-family:"MPLUS2", sans-serif; font-weight: 700;}
.dr-i02:before { content:url("../img/common/icon01.png")!important; position: absolute; top:0; left:-20px; transform: scale(0.6);}
.dr-i03 { position: relative; padding: 0.4rem 1rem 0.6rem 2.5rem; border-bottom: 2px solid #1C8EA7; background-image:linear-gradient(90deg, transparent 0 20px, #fff 20px),repeating-linear-gradient(135deg, #1C8EA7 0 3px, transparent 3px 6px);}


/*こだわり検索*/
.bt-job02a { width: 100%; height: auto; margin: 0 0 70px 0; border: solid 1px #1C8EA7; border-radius: 10px; box-sizing: content-box;}
.bt-job02b { width: 90%; max-width: 90%; height: auto; margin: 0 auto; padding: 40px 0 40px 0; }
.bt-job02b h2 { color: #000; font-size: 2vw; font-family:"MPLUS2", sans-serif; font-weight: 700;}
.bt-job02b p { padding: 20px 0 20px 0;}


/*検索ボタン*/
.seach-btn { width: 60%; height: auto; padding: 40px; margin: 0 auto; display: flex; text-align: center; flex-wrap: wrap; justify-content: space-between; font-size: 1.3vw;}
.seach-reset { width: 30%; padding: 10px; border-radius: 15px; border:  solid 1px #1C8EA7; color: #1C8EA7; box-shadow: 3px 3px 0 0 #ccc;}
.seach-reset a {color: #1C8EA7; display: block;}
.seach-submit { width: 50%; padding: 10px; border-radius: 15px; border:  solid 1px #1C8EA7; color: #fff; background: #1C8EA7; color: #fff; box-shadow: 3px 3px 0 0 #ccc;}
.seach-submit a {color: #fff; display: block;}

/*contents----------------*/
.contents { display: flex; width: 100%; max-width: 100%; margin: 0; padding: 0;}

/*side-------------------*/
aside{ flex: 1.7; margin: 20px 0 0 0; padding: 0;}
.side { width: 100%; max-width: 100%; height: auto; border-radius:10px; background: #0267bc; padding: 0 0 10px 0; box-sizing: content-box;  flex-shrink: 0;}
.side .h-title { width: 100%; max-width: 100%; height: auto; background: #0267bc; color: #fff; margin-bottom: 10px; border-radius:10px 10px 0 0;}
.side .h-title h3 { padding: 10px; font-size: 1.3rem; text-align: center; font-family:"MPLUS2", sans-serif;}
.side-link01 { width: 92%; height: auto; margin: 0 auto; background: #fff; padding: 5px; box-sizing:content-box; border-radius:10px;}
.side-link01 ul {font-family:"MPLUS2", sans-serif;}
.side-link01 ul li { padding: 20px 0 3px 0; font-size: 1rem; line-height: 1.1rem;}
.side-link01 ul li span { padding-left: 5px;}
.side-link01 ul li img { width: 96%; padding: 5px; height: auto; margin: 0 auto; text-align: center; border-radius:10px; align-items: center; box-sizing: content-box;}
.side-link01 ul li a { color: #000;}
.side-link01 ul li a.active { color: #0267bc;}

/*サイドバナー--s-bnr-area-------------------*/
.s-bnr-area { margin: 50px 0 0 0;}
.s-bnr-area img { }

.main-contents{ width: 100%; max-width: 100%; flex: 7.3; margin-left: 50px;}

main { margin: 80px 0 0 0; flex-shrink: 1;}/*こだわり検索無しページに適用*/

.main-photo {margin: 0 0 30px 0; padding: 120px 0 0 0; width: 100%; max-width: 100%; height: auto;}
.main-photo img { width: 100%; height: auto;}

/*TOP-------------------*/
/*TOP 新着情報*/

.new-job-area { display: grid; grid-template-columns: repeat(auto-fill, minmax(455px, 1fr)); gap: 30px; margin: 0 0 80px 0;}
.new-job { border: solid 1px #1C8EA7; padding: 20px; border-radius: 10px; margin-bottom: 80px; vertical-align: top;}
.new-job h3 { font-size: 1.6rem; line-height: 2.6rem; color: #1C8EA7; vertical-align: top; border-radius: 10px; padding: 12px 0 0 0; font-weight: 700; margin: 0 0 20px 0;}
.new-job h3 a { color: #fff;}
.new-job h4 { padding: 0; color: #000; font-size: 1.1rem; line-height: 2.1rem; vertical-align: top; margin: 0 0 20px 0;}
.new-job h5 { color: #fff; background: #1C8EA7; border-radius: 10px; vertical-align: middle; font-size: 1.2vw; width: 100%; padding: 15px 0 15px 0; align-self: center; justify-self: center; text-align: center; box-shadow: 3px 3px 0 0 #ccc; margin: 30px 0 0 0;}
.new-job h5 a { color: #fff; display: block;}
.new-job-photo  { border-radius: 10px; position: relative; overflow: hidden; padding-top: 60%;}
.new-job-photo img { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 100%; height: 100%; object-fit: cover;}

.new-job-photo p { position: absolute; top: 0; left: 0; background: #1C8EA7; color: #fff; border-radius: 10px 0 10px 0; text-align: center; z-index: 2; width: fit-content; padding: 5px 15px 5px 15px; font-size: 1rem; line-height: 2rem;}
.new-job-photo p a {color: #fff;}

.new-job dl { display: flex; flex-wrap:wrap; justify-content: space-between; margin: 0 0 20px 0; padding: 0; width: 100%;}
.new-job dt { width: 18%; height: auto; background: #1C8EA7; color: #fff; padding: 4px; border-radius: 5px; margin: 0 0 7px 0; text-align: center; vertical-align: middle; font-size: 1rem; line-height:2rem; font-weight: normal; align-items: center;}
.new-job dd { width: 80%; height: auto; margin: 0 0 7px 0; padding: 0; font-size: 1rem; line-height:2.5rem; display: flex; justify-content: start; letter-spacing: 0px; flex-wrap: wrap;}
.new-job dd span { vertical-align: middle; padding: 0 2px 0 2px; }
.new-job dd.works01 span { vertical-align: middle; align-items: center; display: flex; padding: 0 2px 0 2px;  justify-content: center; flex-wrap: nowrap;}
.new-job dd.works01 span::after {transform: rotate(20deg); background-color:#1C8EA7; height: 14px; width: 1px; content: ""; margin-left: 5px;}
.new-job ul.conditions01 { width: 100%; height: auto; display: flex; flex-wrap: wrap; overflow: hidden; margin: 0 0 20px 0;}
.new-job ul.conditions01 li {border: solid 1px #1C8EA7; border-radius: 5px; font-size: 0.8rem; line-height: 1.8rem; padding: 1px 4px 1px 3px; width: fit-content; overflow: hidden; color: #1C8EA7; margin: 2px; white-space: nowrap; align-items: center;}
.new-job ul.conditions01 li.conditions-none,.new-job ul.conditions02 li.conditions-none { border: none;}

.new-job ul.conditions02 { width: 100%; height: auto; display: flex; flex-wrap: wrap; overflow: hidden; margin: 0 0 20px 0;}
.new-job ul.conditions02 li { border: solid 1px #1085d0; border-radius: 5px; font-size: 0.8rem; line-height: 1.8rem; padding: 1px 4px 1px 3px; width: fit-content; overflow: hidden; color: #1085d0; margin: 2px; white-space: nowrap; align-items: center;}
.new-job ul li.bor-none { border: none;}


/*search-------------------*/
/*検索結果*/
.search-recruit-area { margin: 20px 0 80px 0;}
.recruit-job { display: grid; grid-row: span 7; grid-template-rows: subgrid; row-gap: 20px; border: solid 1px #1C8EA7; padding: 20px; border-radius: 10px; margin-bottom: 80px;}
.recruit-job h3 { font-size: 1.6rem; line-height: 2.6rem; color: #1C8EA7; vertical-align: top; border-radius: 10px; padding: 12px 0 0 0; font-weight: 700;}
.recruit-job h3 a { color: #fff;}
.recruit-job h4 { padding: 0; color: #000; font-size: 1.4rem; line-height: 2.4rem; vertical-align: top; margin: 0 0 10px 0}

.recruit-job .recruit-job-photo { position: relative;}
.recruit-job .recruit-job-photo img { border-radius: 10px; width: 600px; height: 400px; object-fit: cover; }
.recruit-job-photo p { position: absolute; top: 0; left: 0; background: #1C8EA7; color: #fff; border-radius: 10px 0 10px 0; text-align: center; z-index: 2; width: fit-content; padding: 5px 20px 5px 20px; font-size: 1rem; line-height: 2rem;}
.recruit-job-photo p a {color: #fff;}

.recruit-job dl { display: flex; flex-wrap:wrap; justify-content: space-between; margin: 0; padding: 0; width: 100%; letter-spacing: 0.2rem; font-weight: normal;}
.recruit-job dt { width: 20%; height: auto; background: #1C8EA7; color: #fff; padding: 4px; border-radius: 5px; margin-bottom: 7px; text-align: center; align-items: center; font-size: 1.1rem; line-height:2rem; font-weight: normal;}
.recruit-job dd { width: 77%; height: auto; margin-bottom: 7px; padding: 4px; font-size: 1.1rem; line-height:1.7rem; display: flex; justify-content: start; letter-spacing: 0px; flex-wrap: wrap;}
.recruit-job dd span { vertical-align: middle; padding: 0 5px 0 5px;}
.recruit-job dd.works01 span { vertical-align: middle; align-items: center; display: flex; padding: 0 5px 0 5px;  justify-content: center; flex-wrap: nowrap;}
.recruit-job dd.works01 span::after {transform: rotate(20deg); background-color:#1C8EA7; height: 20px; width: 2px; content: ""; margin-left: 10px;}
.recruit-job ul.conditions01 { width: 100%; height: auto; display: flex; flex-wrap: wrap; justify-content: start;}
.recruit-job ul.conditions01 li {border: solid 1px #1C8EA7; border-radius: 5px; font-size: 0.8rem; line-height: 1.8rem; padding: 1px 5px 1px 5px; width: fit-content; overflow: hidden; color: #1C8EA7; margin: 5px 5px 5px 5px; white-space: nowrap; align-items: center;}
.recruit-job ul.conditions02 { width: 100%; height: auto; display: flex; flex-wrap: wrap; justify-content: start;}
.recruit-job ul.conditions02 li {border: solid 1px #1085d0; border-radius: 5px; font-size: 0.8rem; line-height: 1.8rem; padding: 1px 5px 1px 5px; width: fit-content; overflow: hidden; color: #1085d0; margin: 5px 5px 5px 5px; white-space: nowrap; align-items: center; }
.recruit-job .btn-area { width: 80%; height: auto; padding: 20px 0 20px 0; margin: 0 auto; display: flex; text-align: center; flex-wrap: wrap; justify-content: space-between; font-size: 1.2vw;}
.recruit-job .keep-btn { width: 30%; padding: 10px; border-radius: 15px; border:  solid 1px #1C8EA7; color: #1C8EA7; box-shadow: 3px 3px 0 0 #ccc;}
.recruit-job .keep-btn a {color: #1C8EA7; display: block;}
.recruit-job .submit-btn { width: 50%; padding: 10px; border-radius: 15px; border:  solid 1px #1C8EA7; color: #fff; background: #1C8EA7; box-shadow: 3px 3px 0 0 #ccc;}
.recruit-job .submit-btn a {color: #fff; display: block;}


/*recruit-------------------*/
/*求人詳細*/
.recruit-detail-area { width: 100%; max-width: 100%; border:solid 1px #1C8EA7; margin: 0 auto; padding: 0 0 50px 0; border-radius: 10px; }
.recruit-detail01,.recruit-detail02,.recruit-detail03,.recruit-detail04,.recruit-detail-company { width: 94%; height: auto; margin: 0 auto; padding: 40px 0 20px 0;}
.recruit-detail-area h5,.recruit-detail-company h3 { font-size: 1.6rem; color: #333; padding: 0 0 0 20px; align-items: center;border-left: solid 5px #1C8EA7;}
.recruit-detail01 { display: grid; grid-row: span 5; row-gap: 40px;}
.recruit-detail01 h3 { font-size: 1.6rem; line-height: 2.6rem; color: #1C8EA7; vertical-align: top; border-radius: 10px; padding:0; font-weight: 700; justify-content:space-between;}
.recruit-detail01 h4  {font-size: 1.4rem; line-height: 2.4rem;}
.detail01-photo { width: 60%; height: auto;}
.detail01-photo img { border-radius: 10px; width: 50vw; height: auto; object-fit: cover;}
.detail01-txarea { font-size: 1.2rem; line-height: 2.2rem;}
.detail01-movie {}

.recruit-detail02 { display: grid; grid-row: span 2; row-gap: 40px;}
.recruit-detail02 dl,.recruit-detail03 dl,.recruit-detail04 dl { display: flex; flex-wrap:wrap; justify-content: space-between; margin: 0; padding: 0; width: 100%; letter-spacing: 0.2rem; font-weight: normal; }
.recruit-detail02 dt,.recruit-detail02 dd,.recruit-detail03 dt,.recruit-detail03 dd,.recruit-detail04 dt,.recruit-detail04 dd {box-sizing: border-box;display: flex; align-items: center;}
.recruit-detail02 dt,.recruit-detail03 dt,.recruit-detail04 dt { width: 20%; height: auto; color: #1C8EA7; padding: 4px 10px 10px 10px; border-bottom: 3px solid #1C8EA7; font-size: 1.1rem; line-height:2rem; font-weight: 500; margin-bottom: 20px;}
.recruit-detail02 dd,.recruit-detail03 dd,.recruit-detail04 dd { width: 79%; height: auto; padding: 4px 10px 10px 20px; font-size: 1.1rem; line-height:2rem; display: flex; justify-content: start; letter-spacing: 0px; flex-wrap: wrap; margin-bottom: 20px; border-bottom: dotted 1px #1C8EA7;}
.recruit-detail02 dd span,.recruit-detail03 dd span,.recruit-detail04 dd span { vertical-align: middle; padding: 0 5px 0 5px;}
.recruit-detail02 dd.works01 span { vertical-align: middle; align-items: center; display: flex; padding: 0 5px 0 5px;  justify-content: center; flex-wrap: nowrap;}
.recruit-detail02 dd.works01 span::after {transform: rotate(20deg); background-color:#1C8EA7; height: 20px; width: 2px; content: ""; margin-left: 10px;}
.recruit-detail03 { display: grid; grid-row: span 2; row-gap: 20px;}
.recruit-detail03 ul.conditions01 { width: 100%; height: auto; display: flex; flex-wrap: wrap; justify-content: start;}
.recruit-detail03 ul.conditions01 li {border: solid 1px #1C8EA7; border-radius: 5px; font-size: 0.9rem; line-height: 1.9rem; padding: 1px 5px 1px 5px; width: fit-content; overflow: hidden; color: #1C8EA7; margin: 5px 5px 5px 5px; white-space: nowrap; align-items: center;}
.recruit-detail03 ul.conditions02 { width: 100%; height: auto; display: flex; flex-wrap: wrap; justify-content: start;}
.recruit-detail03 ul.conditions02 li { border: solid 1px #1085d0; border-radius: 5px; font-size: 0.9rem; line-height: 1.9rem; padding: 1px 5px 1px 5px; width: fit-content; overflow: hidden; color: #1085d0; margin: 5px 5px 5px 5px; white-space: nowrap; align-items: center; }

.recruit-detail04 { display: grid; grid-row: span 2; row-gap: 20px;}
.recruit-detail04 ul.conditions03 { width: 100%; height: auto; display: flex; flex-wrap: wrap; justify-content: start;}
.recruit-detail04 ul.conditions03 li { border: solid 1px #064d9e; border-radius: 5px; font-size: 0.9rem; line-height: 1.9rem; padding: 1px 5px 1px 5px; width: fit-content; overflow: hidden; color: #064d9e; margin: 5px 5px 5px 5px; white-space: nowrap; align-items: center; }

.recruit-detail-company { display: grid; grid-row: span 4; row-gap: 20px;}

.recruit-company-area01 { display: flex; flex-wrap:wrap; justify-content: space-between; box-sizing: content-box;}
.recruit-company-photo { width: 40%; height: auto;}
.recruit-company-area02 { width: 100%; height: auto;}
.recruit-company-photo img { border-radius: 10px; width: 50vw; height: auto; object-fit: cover;}
.recruit-company-area02 h4 { font-size: 1.3rem; line-height: 2.3rem; color: #1085d0; padding: 20px 0 0 0;}
.recruit-company-txarea { font-size: 1.1rem; line-height: 2rem;}

.recruit-detail-company dl { display: flex; flex-wrap:wrap; justify-content: space-between; margin: 40px 0 0 0; padding: 0; width: 100%; letter-spacing: 0.2rem; font-weight: normal;}
.recruit-detail-company dt,.recruit-detail-company dd {box-sizing: border-box;display: flex; align-items: center;}
.recruit-detail-company dt { width: 20%; height: auto; color: #1C8EA7; padding: 4px 10px 10px 10px; border-bottom: 3px solid #1C8EA7; font-size: 1.1rem; line-height:2rem; font-weight: 500; margin-bottom: 20px;}
.recruit-detail-company dd { width: 79%; height: auto; padding: 4px 10px 10px 20px; font-size: 1.1rem; line-height:2rem; display: flex; justify-content: start; letter-spacing: 0px; flex-wrap: wrap; margin-bottom: 20px; border-bottom: dotted 1px #1C8EA7;}
.recruit-detail-company dd span { vertical-align: middle; padding: 0 5px 0 5px;}

.recruit-detail-area .btn-area { width: 80%; height: auto; padding: 20px 0 20px 0; margin: 0 auto; display: flex; text-align: center; flex-wrap: wrap; justify-content: space-between; font-size: 1.2vw;}
.recruit-detail-area .keep-btn { width: 30%; padding: 10px; border-radius: 15px; border:  solid 1px #1C8EA7; color: #1C8EA7; box-shadow: 3px 3px 0 0 #ccc;}
.recruit-detail-area .keep-btn a {color: #1C8EA7; display: block;}
.recruit-detail-area .submit-btn { width: 50%; padding: 10px; border-radius: 15px; border:  solid 1px #d53873; color: #fff; background: #d53873; box-shadow: 3px 3px 0 0 #ccc;}
.recruit-detail-area .submit-btn a {color: #fff; display: block;}

/*キープリスト-------------------*/
.keeplist-area01 { width: 100%; max-width: 100%; margin: 0 auto; padding: 0 0 50px 0; }
.keeplist-area02 { display: grid; grid-row: span 7; grid-template-rows: subgrid; row-gap: 20px; border: solid 1px #1C8EA7; padding: 20px; border-radius: 10px; margin-bottom: 80px;}
.keeplist-area02 h3 { font-size: 1.6rem; line-height: 2.6rem; color: #1C8EA7; vertical-align: top; border-radius: 10px; padding: 12px 0 0 0; font-weight: 700;}
.keeplist-area02 h3 a { color: #fff;}
.keeplist-area02 dl { display: flex; flex-wrap:wrap; justify-content: space-between; margin: 0; padding: 0; width: 100%; letter-spacing: 0.2rem; font-weight: normal;}
.keeplist-area02 dt { width: 20%; height: auto; background: #1C8EA7; color: #fff; padding: 4px; border-radius: 5px; margin-bottom: 7px; text-align: center; align-items: center; font-size: 1.1rem; line-height:2rem; font-weight: normal;}
.keeplist-area02 dd { width: 77%; height: auto; margin-bottom: 7px; padding: 4px; font-size: 1.1rem; line-height:1.7rem; display: flex; justify-content: start; letter-spacing: 0px; flex-wrap: wrap;}
.keeplist-area02 dd span { vertical-align: middle; padding: 0 5px 0 5px;}
.keeplist-area02 dd.works01 span { vertical-align: middle; align-items: center; display: flex; padding: 0 5px 0 5px;  justify-content: center; flex-wrap: nowrap;}
.keeplist-area02 dd.works01 span::after {transform: rotate(20deg); background-color:#1C8EA7; height: 20px; width: 2px; content: ""; margin-left: 10px;}

.keeplist-area02 .btn-area { width: 100%; height: auto; padding: 20px 0 20px 0; margin: 0 auto; display: flex; text-align: center; flex-wrap: wrap; justify-content: space-between; font-size: 1.2vw;}
.keeplist-area02 .keep-btn { width: 29%; padding: 10px; border-radius: 15px; border:  solid 1px #1C8EA7; color: #1C8EA7; box-shadow: 3px 3px 0 0 #ccc;}
.keeplist-area02 .keep-btn a {color: #1C8EA7; display: block;}
.keeplist-area02 .detail-btn { width: 29%; padding: 10px; border-radius: 15px; border:  solid 1px #1C8EA7; color: #fff; background: #1C8EA7; box-shadow: 3px 3px 0 0 #ccc;}
.keeplist-area02 .detail-btn a {color: #fff; display: block;}
.keeplist-area02 .submit-btn { width: 29%; padding: 10px; border-radius: 15px; border:  solid 1px #d53873; color: #fff; background: #d53873; box-shadow: 3px 3px 0 0 #ccc;}
.keeplist-area02 .submit-btn a {color: #fff; display: block;}

/*contact-------------------*/
.form-area01 { width: 100%; max-width: 100%; border:solid 1px #1C8EA7; margin: 0 auto; padding: 20px 0 20px 0; border-radius: 10px; }
.form-area02 { width: 90%; height: auto; margin: 0 auto; padding: 40px 0 20px 0;}
.formtx01 {font-size: 1.2rem; line-height: 2.1rem; margin: 10px 0 60px 0;}
.formtx02 {font-size: 1.2rem; line-height: 2.1rem; margin: 10px 0 60px 0;}
.formtx03 { margin: 10px 0 60px 0;}
.formtx03 p  { font-size: 1.1rem; line-height: 2rem;}
.formtx03 h3,.formtx03 h4 { margin: 10px 0 10px 0; font-size: 1.2rem; border: solid 1px #1085d0; border-radius: 10px; padding: 10px; width: fit-content; color: #1085d0;}
.formtx03 h3 a,.formtx03 h4 a { color: #1085d0;}
.formtx04 p {font-size: 1rem; line-height: 2rem; margin: 10px 0 30px 0; text-align: center;}

.form-area02 dl { margin: 20px 0 40px 0;}
.form-area02 dt { font-weight: 500; margin: 0 0 20px 0; color: #000; border-left:solid 6px #1C8EA7; padding: 0 0 0 10px;}
.form-area02 dt span { margin-left: 20px; display: inline-block; background: #ec3a64; color: #fff; border-radius: 12px; font-size:0.9rem; line-height: 1.2rem; padding: 2px 5px 3px 5px; letter-spacing: 0.2rem; text-align: center; vertical-align: middle;}
.form-area02 dl dd p { font-size: 1.1rem; line-height: 2rem; padding: 10px 0 10px 0;}
.form-area02 input { border: solid 1px #333;}
.form-area02 input.name,.form-area02 input.kana {width:50%;}
.form-area02 input.company {width:60%;}
.form-area02 input.mail {width:60%;}
.form-area02 input.tel {width:30%;}
.form-area02 input.other {width:50%;}
.form-area02 input.pass {width:30%;}
.form-area02 textarea { border: solid 1px #333;}

input[type="radio"] { position: relative; width: 16px; height: 16px; border: 1px solid #1C8EA7; border-radius: 50%; vertical-align: -2px; -webkit-appearance: none; -moz-appearance: none; appearance: none;}
input[type="radio"]:checked:before { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 9px; height: 9px; border-radius: 50%; background: #1C8EA7; content: '';}
dl.radio-btn ul li { display:inline-block; white-space: nowrap; line-height: 3rem; margin-right:40px;}

.form-area02 .submit-btn { width: 50%; padding:0; border-radius: 15px; border:  solid 1px #1C8EA7; color: #fff; background: #1C8EA7; box-shadow: 3px 3px 0 0 #ccc; margin: 0 auto;}
.form-area02 .submit-btn p {text-align: center; font-size: 1.5rem; padding: 10px;}
.form-area02 .submit-btn a {color: #fff; display: block;}

/*contact-biz-------------------*/
select{  -webkit-appearance: none; -moz-appearance: none;  appearance: none; margin: 0; height: 40px; background: transparent; position: relative; z-index: 1; padding: 0 40px 0 10px; border: 1px solid #333;line-height:40px;	font-size: 1.2rem; width:100%; border-radius: 6px;}
select::-ms-expand { display: none;}
.selectWrap{ position: relative; display: inline-block;}
.selectWrap::before{ content: ''; position: absolute; z-index: 0; top: 0; right: 0; height: 100%; width: 30px;}
.selectWrap::after{ content: '\f0d7'; position: absolute; z-index: 0; top: -30px; bottom: 0; margin: auto 0; right: 20px; width: 0; height: 0;  font-family: FontAwesome;  color: #1C8EA7;}

.select-contact-kinds .selecttx04 { width: 100%;}


/*パスワード再設定-------------------*/
.select-resetting dd.selecttx {display: flex; flex-wrap: wrap; width:460px; justify-content: start; align-items: center; text-align: left;}
.select-resetting .selecttx01 { width: 24%;}
.select-resetting .selecttx01b { width: 5%; margin: 0 5px 0 0;}
.select-resetting .selecttx02 { width: 22%;}
.select-resetting .selecttx02b { width: 5%; margin: 0 5px 0 0;}
.select-resetting .selecttx03 { width: 22%;}
.select-resetting .selecttx03b { width: 5%;}


/*運営会社-------------------*/
.company-area01 { width: 100%; max-width: 100%; border:solid 1px #1C8EA7; margin: 0 auto; padding: 0; border-radius: 10px;}
.company-area02 { width: 90%; height: auto; margin: 0 auto; padding: 60px 0 60px 0;}
.company-area02 dl { display: flex; display: flex; flex-wrap:wrap; justify-content: space-between; margin: 0; padding: 0; width: 80%; font-size: 1.1rem; line-height: 2.1rem;}
.company-area02 dl dt { width: 15%; padding: 10px; box-sizing: content-box; background: #1C8EA7; color: #fff; font-weight: 500; border-bottom: solid 1px #fff;}
.company-area02 dl dd { width: 78%; padding: 10px; box-sizing: content-box; border-bottom: solid 1px #1C8EA7;}

/*プライバシーポリシー-------------------*/
.privacy-area01 { width: 100%; max-width: 100%; border:solid 1px #1C8EA7; margin: 0 auto; padding: 0; border-radius: 10px;}
.privacy-area02 { width: 90%; height: auto; margin: 0 auto; padding: 60px 0 60px 0;}
.privacy-area02 h3 { font-size: 1.1rem; line-height: 2.1rem; padding: 15px 0 0 0;}
.privacy-area02 p { font-size: 0.9rem; line-height: 1.8rem;}
.privacy-area02 ol { font-size: 0.9rem; line-height: 1.8rem;}
.privacy-area03 { margin: 40px 0 0 0;}

/*利用規約-------------------*/
.terms-area01 { width: 100%; max-width: 100%; border:solid 1px #1C8EA7; margin: 0 auto; padding: 0; border-radius: 10px;}
.terms-area02 { width: 90%; height: auto; margin: 0 auto; padding: 60px 0 60px 0;}
.terms-area02 h3 { font-size: 1.1rem; line-height: 2.1rem; padding: 15px 0 0 0;}
.terms-area02 p { font-size: 0.9rem; line-height: 1.8rem;}
.terms-area02 ul { padding: 10px 0 0 0;}
.terms-area02 ul li { font-size: 0.9rem; line-height: 1.8rem; list-style: inside; padding-inline-start: 10px; list-style-position: inside;}

/*ログイン-------------------*/
.loginalert {background: #cce7ed; padding: 10px 10px 10px 20px; margin: 0 0 40px 0;}


/*転職お役立ちツール-------------------*/
.resume-area01 { width: 100%; max-width: 100%; border:solid 1px #1C8EA7; margin: 0 auto; padding: 0; border-radius: 10px;}
.resume-area02 { width: 90%; height: auto; margin: 0 auto; padding: 60px 0 60px 0;}
.resume-area02 img { width: 50%;}
.job-tool-box { margin: 50px 0 0 0; width: 100%; height: auto;}
.job-tool-box  h3 { border-left:solid 6px #1C8EA7; padding: 0 0 0 10px; font-size: 1.4rem; line-height: 2rem; font-weight: 700; margin: 0 0 20px 0;}
.job-tool-box p { font-size: 1.2rem; line-height: 2.3rem;}
.job-tool-box h4 { padding: 20px 0 0 0; font-size: 1.2rem; line-height: 2.2rem; font-weight: 500;}
.job-tool-box02 { border: solid 2px #1C8EA7; padding: 40px; box-sizing: content-box; margin: 50px 0 0 0;}
.job-tool-box02 h4 { color: #1C8EA7;}
.job-tool-box02 p { padding: 30px 0 0 0; font-size: 1.2rem; line-height: 2.2rem;}


/*特別料金-------------------*/
.special-offer01 { width: 100%; max-width: 100%; border-top:solid 1px #1C8EA7; margin: 0 auto; padding: 0;}
.special-offer02 {width: 100%; max-width: 900px; height: auto; padding: 30px 0 0 0; margin: 40px auto; box-sizing: border-box; background-color: #fff;
  background-image: url("../img/biz-service/special-offer/img02.png"), url("../img/biz-service/special-offer/img03.png");
  background-position: left 0 center, right 0 center;background-repeat: no-repeat, no-repeat; background-size: 130px;}

.special-offer02 h3 { font-size: 3.5rem; font-weight: 700; text-align: center; line-height: 5.7rem}
.special-offer02 h3 span { color: #F60E7A; font-family: "ZenKakuGothicNew-Black", "ヒラギノ角ゴ ProN", "Arial","メイリオ", sans-serif; font-weight: normal;}

.special-offer03a { width: 100%; height: auto; margin: -40px auto; padding: 50px 0 0 0; background: url("../img/biz-service/special-offer/bg01.jpg") no-repeat top;}

.special-offer03 {width: fit-content; margin: 50px auto; padding: 50px; border-radius: 30px; text-align: center; background-color: rgba(255,255,255,0.8);}

.special-offer03 h4 { font-size: 10rem; font-weight: normal; color: #F60E7A; padding: 10px 0 50px 50px; background: url("../img/biz-service/special-offer/img04.png") no-repeat center bottom; background-size: 100%; font-family: "ZenKakuGothicNew-Black", "ヒラギノ角ゴ ProN", "Arial","メイリオ", sans-serif;}

.special-offer04 { width: 100%; margin: 50px auto; height: 280px; background: url("../img/biz-service/special-offer/img05.png") no-repeat right top; background-size: 16%; text-align: center;}

.special-offer04 dl { width: 80%; height: auto; margin: 120px auto; text-align: center; font-weight: 700;}
.special-offer04 dl dt { font-size: 4rem; padding: 0 0 30px 0; line-height: 5rem; color: #0365a6;}
.special-offer04 dl dd { padding: 0 0 20px 0; font-size: 2.5rem; line-height: 3.5rem;}

.special-offer05a { width: 100%; height: auto; margin: -40px auto; padding: 20px 10px 100px 30px; background: url("../img/biz-service/special-offer/bg02.jpg") no-repeat top; border-radius: 0 0 10px 10px;}

.special-offer05 { font-size:10rem; color: #F60E7A; text-align: center; margin: 0 auto; padding: 0;}
.special-offer05b { font-size:10rem; color: #0365a6; text-align: center; margin: 0 auto; padding: 0;}

.special-offer06 dl { width: 100%; margin: 50px auto; padding: 0 0 30px 0; text-align: center; font-weight: 700; background: url("../img/biz-service/special-offer/img07.png") no-repeat left top; background-size: 16%;}
.special-offer06 dl dt { font-size: 5rem; padding: 0; line-height: 5.5rem; color: #F60E7A; font-family: "ZenKakuGothicNew-Black", "ヒラギノ角ゴ ProN", "Arial","メイリオ", sans-serif; font-weight: normal;}

.special-offer06 dl dd { padding: 20px 0 30px 0; font-size: 4vw;line-height: 5vw;}
.special-offer06 dl dd span { padding: 20px 0 0 20px; color: #F60E7A; font-size: 9vw;line-height: 8vw;}


.special-offer07 { width: 70%; border-radius: 30px; background: #0365a6; text-align: center; margin: 0 auto; padding: 30px;}
.special-offer07 h3 { font-weight: 700; color: #fff; font-size: 3vw;}
.special-offer07 a {display: block; width: 100%; height: auto; color: #fff;}

/*footer-バナー------------*/
.site-bnr-area { margin:50px auto; padding:50px 0 0 0; width:80%; height:auto;}
.site-bnr-area p { padding: 0 0 10px 0; color: #000;}
.site-bnr-area ul { display:flex; flex-wrap: wrap; justify-content:space-between; margin: 0 auto; width: 100%;}
.site-bnr-area ul li { width:30%; height:auto;}
.site-bnr-area ul li img { width:100%;}

}
