@charset "utf-8";
/* CSS Document */

/*--------------------------------------
ヘッダー
--------------------------------------*/
.header_wrap {
  z-index: 999;
  background-color: #fff;
}
header {
  width: 1440px;
  margin: 0 auto;
  padding: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
header a:hover {
  text-decoration: underline;
}
/*-------------------
ロゴ、お気に入り園、返信・連絡
-------------------*/
.header_left h1 img {
  width: 260px;
}

.header_left ul {
  margin-top: 20px;
  margin-left: 30px;
  font-size: 14px;
}
.header_left li {
  display: inline-block;
  height: 15px;
  line-height: 1.2;
  margin-bottom: 10px;
  letter-spacing: 0.1em;
}
/*ログイン お気に入り園、返信・連絡、ユーザー名*/
.header_left .login_user {
  margin-top: 12px;
  margin-left: 20px;
  font-size: 14px;
  color: aqua;
  letter-spacing: 0.2em;
}

.header_left li a {
  color: #1baab7;
}

.header_left li:first-child {
  background-image: url(../img/heart_icon.png);
  background-repeat: no-repeat;
  padding-left: 25px;
}
.header_left li:nth-child(2) {
  background-image: url(../img/mail_icon.png);
  background-repeat: no-repeat;
  padding-left: 30px;
  margin-left: 20px;
}
/*ログイン メール件数*/
.header_left .mail {
  margin-left: 5px;
  width: 20px;
  height: 20px;
  border-radius: 20px;
  background-color: #ff4a59;
  text-align: center;
  line-height: 1.4;
}
.header_left .mail a {
  text-decoration: none;
}
.header_left .mail span {
  color: #fff;
  font-size: 13px;
}
/*ログイン ユーザー名*/
.header_left .user_name {
  float: left;
  margin-top: 18px;
  margin-left: 46px;
  font-size: 14px;
}

.header_left .user_name span {
  margin-left: 20px;
  font-weight: bold;
}

.header_left strong {
  font-weight: 800;
}

.header_left .log_out {
  margin-left: 15px;
}

.header_left .log_out img {
  margin-right: 5px;
}

/*返信・連絡バッジ*/
.header_left .badge {
  width: 20px;
  height: 20px;
  color: #fff;
  background-color: #fe4958;
  border-radius: 20px;
  font-size: 12px;
  padding: 0 5px;
  letter-spacing: 0.01em;
  margin: 0;
  text-align: center;
  position: relative;
  left: 0px;
  bottom: 4px;
}

.badge span {
  position: relative;
  left: 0px;
  top: 2px;
}

/*-------------------
採用をお考えの方、お問い合わせ、ヘルプ、会員登録、ヘルプ
-------------------*/
/*ログイン マージン調整*/
.login_change_wrap {
  margin-top: 15px;
}

.login-btn {
  display: flex;
}

.login-btn a {
  height: 40px;
  border-radius: 3px;
  display: block;
  line-height: 40px;
  font-size: 15px;
  font-weight: bold;
  text-align: center;
}

.login-btn li:first-of-type a {
  width: 210px;
  background-color: #fe4958;
  color: #fff;
  margin-right: 13px;
}

.login-btn li:nth-of-type(2) a {
  width: 200px;
  background-color: #5bbcc9;
  color: #fff;
}

.login-btn .login-label {
  margin-right: 8px;
  padding: 0 8px;
  font-size: 15px;
  color: #fe4958;
  background-color: white;
  border-radius: 3px;
}

.login-btn li a:hover {
  text-decoration: none !important;
}

.header_right ul {
  text-align: right;
  font-size: 14px;
}

.header_right .line {
  width: 320px;
  margin: 0 0 10px 90px;
}

.header_right .line li {
  padding-left: 12px;
  margin-left: 10px;
  display: -moz-inline-box;
  display: inline-block;
  *display: inline;
  *zoom: 1;
}
.header_right .line li + li {
  border-left: 1px solid #000;
}
.header_right .btn li {
  display: inline-block;
  margin-top: 10px;
  padding-right: 10px;
}
.header_right .btn li:last-child {
  padding-right: 0;
}
.header_logined {
  display: flex;
}
.header_logined .login-menu {
  margin-right: 20px;
  text-align: right;
}
.header_logined .login-menu .user_name {
  font-size: 13px;
  display: flex;
  align-items: center;
}
.header_logined .login-menu .user_name b {
  font-weight: bold;
}
.header_logined .login-menu a {
  display: inline-block;
  margin-top: 8px;
  font-size: 13px;
  text-decoration: underline;
}
.header_logined .login-menu span.icon-user {
  margin-right: 4px;
  display: inline-block;
	mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 18px;
  height: 18px;
	mask-image: url(../img/renewal/icon-user.svg);
  background: #000;
}

.header_logined .login-btn li {
  border: 1px solid #000;
  border-radius: 6px;
}

.header_logined .login-btn li a {
  border-radius: 6px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.header_logined .login-btn li:first-of-type {
  margin-right: 12px;
}

.header_logined .login-btn li:first-of-type a {
  background-color: #fff;
  color: #000;
  margin-right: 13px;
}

.header_logined .login-btn li:nth-of-type(2) a {
  background-color: #fff;
  color: #000;
  position: relative;
}

.header_logined .login-btn li .icon {
  width: 20px;
  height: 20px;
  margin: 0;
  margin-right: 6px;
	mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  display: inline-block;
  background: #000;
}

.header_logined .login-btn li:first-of-type span {
  mask-image: url(../img/renewal/icon-heart.svg);
}

.header_logined .login-btn li:nth-of-type(2) span {
  mask-image: url(../img/renewal/icon-message.svg);
}

.header_logined .badge{
  position: absolute;
  top: -8px;
  right: 16px;
  width: 24px;
  height: 24px;
  color: #fff;
  background-color:#fe4958;
  border-radius: 12px;
  letter-spacing: 0.01em;
  margin: 0;
  font-size: 14px;
  line-height: 24px;
  text-align: center;
  z-index:5;
}

/*--------------------------------------
ナビゲーション
--------------------------------------*/
nav.header_navi {
  border-top: 1px solid black;
  border-bottom: 1px solid black;
}
nav.header_navi ul {
  width: 1440px;
  height: 54px;
  font-size: 14px;
  font-weight: bold;
  display: flex;
  align-items: center;
  margin: 0 auto;
}
nav.header_navi li {
  width: calc(100% / 6);
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
  position: relative;
}

nav.header_navi li a {
  padding: 12px 0;
  color: #333333;
  line-height: 24px;
  font-size: 15px;
  text-decoration: none;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

nav.header_navi li a::after {
  content: "";
  position: absolute;
  right: 0;
  top: 12px;
  width: 1px;
  height: 28px;
  background-color: #ccc;
}

nav.header_navi li:last-child a::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
}

nav.header_navi li a:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha(opacity=70)";
}
nav.header_navi li:last-child {
  border-right-style: none;
}
/*採用試験情報、バイト探し(採用試験、バイトのページ完成すれば下記を削除)*/
nav.header_navi li.nolink {
  display: block;
  width: 185px;
  height: 40px;
  color: #bebebe;
  font-size: 15px;
}
nav.header_navi li.hot a::after {
  position: absolute;
  content: "";
  top: 100px;
  background: url(../img/hot.svg) no-repeat 0 0;
  background-size: 33px;
  width: 33px;
  height: 33px;
}

nav.header_navi li.new a::after {
  position: absolute;
  content: "";
  top: 100px;
  background: url(../img/new.svg) no-repeat 0 0;
  background-size: 33px;
  width: 33px;
  height: 33px;
}

nav.header_navi li span.navi-icon {
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-right: 4px;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
}

nav.header_navi li.navi-search span.navi-icon {
  mask-image: url(../img/renewal/icon-search.svg);
  background: #fe4958;
}
nav.header_navi li.navi-enlist span.navi-icon {
  mask-image: url(../img/renewal/icon-child_face.svg);
  background: #5bbcc9;
}
nav.header_navi li.navi-elder span.navi-icon {
  mask-image: url(../img/renewal/icon-bullhorn.svg);
  background: #fe4958;
}
nav.header_navi li.navi-volunteer span.navi-icon {
  mask-image: url(../img/renewal/icon-sprout.svg);
  background: #5bbcc9;
}
nav.header_navi li.navi-jissyu span.navi-icon {
  mask-image: url(../img/renewal/icon-map.svg);
  background: #fe4958;
}
nav.header_navi li.navi-event span.navi-icon {
  mask-image: url(../img/renewal/icon-calendar.svg);
  background: #5bbcc9;
}

/*--------------------------------------
サイドバー
--------------------------------------*/
.top_sidebar {
  width: 260px;
  float: right;
  margin: 40px 0 0 0;
}

/*ほいコレムービー*/

.movie_wrap {
  width: 260px;
  height: 315px;
  background-image: url(../img/side_movie.png);
  background-repeat: no-repeat;
  margin-bottom: 20px;
}

.movie_wrap .media {
  position: relative;
  top: 140px;
}

/*サイドバー*/
.sidebar {
  width: 300px;
  position: sticky;
  top: 40px;
}

.sidebar h3 {
  width: 260px;
  height: 55px;
  line-height: 55px;
  background-color: #fde79b;
  border-top: 5px solid #ffc800;
  border-radius: 3px 3px 0 0 / 3px 3px 0 0;
  color: #3e3a39;
  display: block;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}
.sidebar_contents {
  padding-bottom: 10px;
  background-color: #fff2c4;
}

.hoicolle_banner li {
  margin-top: 16px;
}

.hoicolle_banner li:first-child {
  margin-top: 0;
}

.hoicolle_banner li img {
  width: 100%;
}

.new-entry-wrap {
  background-color: #fff2c4;
  margin-top: 20px;
}

.new-entry-wrap strong {
  width: 260px;
  height: 55px;
  line-height: 55px;
  background-color: #fde79b;
  border-top: 5px solid #ffc800;
  border-radius: 3px 3px 0 0 / 3px 3px 0 0;
  color: #3e3a39;
  display: block;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}

.new-entry-wrap a {
  display: flex;
  justify-content: space-between;
  padding: 25px;
}

.new-entry-wrap a .num {
  color: #19acb4;
  font-weight: bold;
}

.sidebar_contents h4 {
  padding: 20px 0 10px 0;
  font-size: 14px;
}
.sidebar_contents .entry,
.sidebar_contents .login {
  padding: 0 14px;
}

.sidebar_contents .entry a,
.sidebar_contents .login a {
  width: 230px;
  height: 55px;
  line-height: 55px;
  border-radius: 5px;
  display: block;
  font-weight: bold;
  text-align: center;
}

.sidebar_contents .entry a {
  background-color: #fe4958;
  color: #fff;
}

.sidebar_contents .login {
  margin-top: 20px;
  border-top: dashed 1px #d2d2d2;
}

.sidebar_contents .login a {
  background-color: #4cd8e5;
  color: #3e3a39;
}

.sidebar_contents .side_column {
  padding: 0 14px;
  font-size: 14px;
  line-height: 1.5;
  margin-bottom: 10px;
}

/*ログイン 会員情報*/
.login_info h4 {
  padding-bottom: 10px;
}
.login_info .mt {
  margin-top: 5px;
}
.login_info li:first-child {
  float: left;
}
.login_info li:last-child {
  float: right;
}
.login_info li span {
  color: #fe4855;
}
.login_info .side_banner {
  margin-top: 15px;
}

/* ログイン後の項目表示 */
ul.login_list {
  font-size: 14px;
  width: 240px;
  display: flex;
  justify-content: space-between;
  list-style: none;
  padding: 0;
}
ul.login_list li:nth-child(odd) {
  width: 160px;
  height: 20px;
  line-height: 20px;
  padding: 5px;
}
ul.login_list li:nth-child(even) {
  width: 40px;
  height: 30px;
  line-height: 31px;
  padding: 0;
}
.login_list_count {
  color: #fe4958;
  font-size: 15px;
  font-weight: 800;
  margin-right: 5px;
}

.side_column .side-bookmark {
  height: 25px;
  line-height: 25px;
  background-image: url(/navi/2022/img/bookmark-icon.png);
  background-repeat: no-repeat;
  background-position: 0 12px;
  font-weight: bold;
  font-size: 16px;
  text-indent: 50px;
  margin-bottom: 15px;
}

.side_column .side-mail {
  height: 25px;
  line-height: 25px;
  background-image: url(/navi/2022/img/mail-icon.png);
  background-repeat: no-repeat;
  background-position: 0 12px;
  font-weight: bold;
  font-size: 16px;
  text-indent: 50px;
  margin-bottom: 15px;
}

/*--------------------------------------
サイドバー
--------------------------------------*/
.top_sidebar_in {
  width: 260px;
  float: right;
  margin-right: 20px;
  margin-top: 70px;
  position: static;
}
.sidebar_in {
  background-color: #fff;
}
.sidebar_in h3 {
  width: 260px;
  height: 55px;
}
.sidebar_contents_in {
  border-left: solid 1px #d5d3d4;
  border-right: solid 1px #d5d3d4;
  border-bottom: solid 1px #d5d3d4;
  padding-bottom: 65px;
  background-color: #fff2c4;
  /*padding:0 14px;*/
}
.sidebar_contents_in h4 {
  padding: 20px 0;
  font-size: 14px;
}
.sidebar_contents_in .entry_in,
.sidebar_contents_in .login_in {
  padding: 0 14px;
}
.sidebar_contents_in .login_in {
  margin-top: 20px;
  border-top: dashed 1px #d2d2d2;
}
.sidebar_contents_in .side_column_in {
  padding: 0 14px;
  font-size: 14px;
  line-height: 1.5;
}
.sidebar_in .hoicolle_banner_in li {
  margin-top: 20px;
}

.side_column_txt {
  display: block;
  padding-bottom: 20px;
}

.btn_area {
  margin-bottom: 15px;
}

/* ログイン後の項目表示 */
ul.login_list_in {
  font-size: 14px;
  width: 240px;
  overflow: hidden;
  list-style: none;
  padding: 0;
}
ul.login_list_in li:nth-child(odd) {
  width: 160px;
  padding: 5px;
  float: left;
}
ul.login_list_in li:nth-child(even) {
  width: 40px;
  padding: 5px;
  float: right;
}

.login_list .side-mail-txt {
  font-size: 14px;
}

.login_list_count_in {
  color: #fe4958;
  font-weight: 800;
}

/*--------------------------------------
サイドバー_マイページ
--------------------------------------*/
.top_sidebar_in_my {
  width: 260px;
  float: right;
  margin-right: 20px;
  margin-top: 40px;
  position: static;
  /*width:260px;
	float:right;
	position:absolute;
	top:-140px;
	right:20px;*/
}
.sidebar_in_my {
  background-color: #fff;
}
.sidebar_in_my h3 {
  width: 260px;
  height: 55px;
}

/*--------------------------------------
フッターバナー一覧
--------------------------------------*/
.footer-banner {
  background-color: #eafbfa;
  margin: 100px auto 0 auto;
  padding: 50px 0;
}

.footer-banner .footer-in {
  width: 1120px;
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
}

.footer-in .catch-in {
  width: 90%;
  background-image: url(../img/footer/diagonal-line1.png),
    url(../img/footer/diagonal-line2.png);
  background-position: left, right;
  background-repeat: no-repeat, no-repeat;
  background-size: 3%, 3%;
  margin: 0 auto 20px auto;
}

.footer-in .catch-in p {
  width: 90%;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
  margin: 0 auto;
}

/*--------------------------------------
フッター
--------------------------------------*/
#footer_wrap {
  background-color: #333333;
  padding: 100px 170px 40px;
  font-family: "Noto Sans JP", sans-serif;
}
footer {
  width: 1100px;
  margin: 0 auto;
  color: #fff;
  display: flex;
  justify-content: space-between;
}
footer a:hover {
  text-decoration: underline;
}
footer img.logo {
  width: 300px;
  height: auto;
  object-fit: contain;
  filter: brightness(0) invert(1);
}
footer h4 {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
}
footer ul {
  font-size: 12px;
}
footer ul li {
  margin-top: 16px;
  font-size: 12px;
}

footer ul li:nth-child(1),
footer ul li:nth-child(2) {
  margin-top: 0;
}

/* SNSリスト */
footer .column ul.sns-list {
  margin-top: 32px;
}

footer .column ul.sns-list li:nth-child(2) {
  margin-top: 16px;
}

footer .column ul.sns-list a {
  display: flex;
  font-weight: bold;
  line-height: 28px;
  color: #fff;
}

footer .column ul.sns-list span {
  display: inline-block;
  width: 28px;
  height: 28px;
  margin-right: 8px;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
}

footer .column ul.sns-list span.sns-icon-ig {
  mask-image: url(../img/renewal/icon_ig.svg);
  background: #fff;
}

footer .column ul.sns-list span.sns-icon-x {
  mask-image: url(../img/renewal/icon_x.svg);
  background: #fff;
}

footer .column a.p_mark img {
  width: 54px;
  height: 54px;
  margin-top: 24px;
}

/* 就活コンテンツ */
footer .column ul.content-list {
  width: 306px;
  margin-top: 24px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

footer .column ul.content-list li {
  width: calc(50% - 20px);
  padding-left: 13px;
  position: relative;
}

footer .column ul.content-list li::before {
  content: "";
  position: absolute;
  top: 2px;
  left: 0;
  width: 8px;
  height: 8px;
  background-image: url(../img/renewal/footer_circle_red.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

footer .column ul.content-list a {
  color: #fff;
}

/* 運営情報 */
footer .column .btn-customer {
  display: block;
  margin-top: 24px;
  width: 340px;
  height: 36px;
  font-size: 12px;
  font-weight: normal;
  line-height: 36px;
  text-align: center;
  border: 1px solid #fff;
  border-radius: 4px;
  color: #fff;
  position: relative;
}

footer .column .btn-customer::after {
  content: "";
  position: absolute;
  top: 9px;
  right: 8px;
  width: 18px;
  height: 18px;
  background-image: url(../img/renewal/btn-customer.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

footer .column ul.company-list {
  width: 340px;
  margin-top: 24px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

footer .column ul.company-list li {
  width: calc(50% - 20px);
  height: 12px;
  padding-left: 13px;
  position: relative;
}

footer .column ul.company-list li::before {
  content: "";
  position: absolute;
  top: 2px;
  left: 0;
  width: 8px;
  height: 8px;
  background-image: url(../img/renewal/footer_circle_blue.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

footer .column ul.company-list a {
  color: #fff;
}

footer .column ul.company-list li a.line-height {
  display: block;
  margin-top: -3px;
  line-height: 1.5;
}

.column_copyright p {
  margin-top: 80px;
  font-size: 12px;
  text-align: center;
  color: #888;
}

/* TOPに戻る */
body {
  position: relative;
}

.pagetop {
  position: fixed;
  bottom: -60px;
  right: 65px;
}

.pagetop a {
  display: block;
  width: 50px;
  height: 50px;
  border-radius: 6px;
  background-color: #fe4958;
  position: relative;
}

.pagetop span {
  display: inline-block;
  position: absolute;
  width: 18px;
  height: 18px;
  top: 16px;
  left: 16px;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  mask-image: url(../img/renewal/pagetop.svg);
  background: #fff;
}

/*--------------------------------------
ホバーエフェアクト
--------------------------------------*/

.alpha:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha(opacity=70)";
}

.alpha_img:hover {
  background: rgba(255, 0, 0, 0.3);
}

body.visitor .policy_box {
  width: 867px;
  margin: 30px auto 50px auto;
}
