@charset "UTF-8";
/* ボックスレイアウト
=========================================== */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Roboto:wght@400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Rubik:wght@400;500;700;900&display=swap");
.flex.col_1 > div, .flex.col_1 > li {
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .flex.col_1 > div, .flex.col_1 > li {
    width: 100%;
  }
}

.flex.flex-between.col_1 > div, .flex.flex-between.col_1 > li {
  width: 98.5%;
}
@media only screen and (max-width: 767px) {
  .flex.flex-between.col_1 > div, .flex.flex-between.col_1 > li {
    width: 100%;
  }
}

.flex.col_2 > div, .flex.col_2 > li {
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .flex.col_2 > div, .flex.col_2 > li {
    width: 100%;
  }
}

.flex.flex-between.col_2 > div, .flex.flex-between.col_2 > li {
  width: 48.5%;
}
@media only screen and (max-width: 767px) {
  .flex.flex-between.col_2 > div, .flex.flex-between.col_2 > li {
    width: 100%;
  }
}

.flex.col_3 > div, .flex.col_3 > li {
  width: 33.3333333333%;
}
@media only screen and (max-width: 767px) {
  .flex.col_3 > div, .flex.col_3 > li {
    width: 100%;
  }
}

.flex.flex-between.col_3 > div, .flex.flex-between.col_3 > li {
  width: 31.8333333333%;
}
@media only screen and (max-width: 767px) {
  .flex.flex-between.col_3 > div, .flex.flex-between.col_3 > li {
    width: 100%;
  }
}

.flex.col_4 > div, .flex.col_4 > li {
  width: 25%;
}
@media only screen and (max-width: 767px) {
  .flex.col_4 > div, .flex.col_4 > li {
    width: 100%;
  }
}

.flex.flex-between.col_4 > div, .flex.flex-between.col_4 > li {
  width: 23.5%;
}
@media only screen and (max-width: 767px) {
  .flex.flex-between.col_4 > div, .flex.flex-between.col_4 > li {
    width: 100%;
  }
}

.flex.col_5 > div, .flex.col_5 > li {
  width: 20%;
}
@media only screen and (max-width: 767px) {
  .flex.col_5 > div, .flex.col_5 > li {
    width: 100%;
  }
}

.flex.flex-between.col_5 > div, .flex.flex-between.col_5 > li {
  width: 18.5%;
}
@media only screen and (max-width: 767px) {
  .flex.flex-between.col_5 > div, .flex.flex-between.col_5 > li {
    width: 100%;
  }
}

.flex.col_6 > div, .flex.col_6 > li {
  width: 16.6666666667%;
}
@media only screen and (max-width: 767px) {
  .flex.col_6 > div, .flex.col_6 > li {
    width: 100%;
  }
}

.flex.flex-between.col_6 > div, .flex.flex-between.col_6 > li {
  width: 15.1666666667%;
}
@media only screen and (max-width: 767px) {
  .flex.flex-between.col_6 > div, .flex.flex-between.col_6 > li {
    width: 100%;
  }
}

.flex.col_7 > div, .flex.col_7 > li {
  width: 14.2857142857%;
}
@media only screen and (max-width: 767px) {
  .flex.col_7 > div, .flex.col_7 > li {
    width: 100%;
  }
}

.flex.flex-between.col_7 > div, .flex.flex-between.col_7 > li {
  width: 12.7857142857%;
}
@media only screen and (max-width: 767px) {
  .flex.flex-between.col_7 > div, .flex.flex-between.col_7 > li {
    width: 100%;
  }
}

.flex.col_8 > div, .flex.col_8 > li {
  width: 12.5%;
}
@media only screen and (max-width: 767px) {
  .flex.col_8 > div, .flex.col_8 > li {
    width: 100%;
  }
}

.flex.flex-between.col_8 > div, .flex.flex-between.col_8 > li {
  width: 11%;
}
@media only screen and (max-width: 767px) {
  .flex.flex-between.col_8 > div, .flex.flex-between.col_8 > li {
    width: 100%;
  }
}

.flex.col_9 > div, .flex.col_9 > li {
  width: 11.1111111111%;
}
@media only screen and (max-width: 767px) {
  .flex.col_9 > div, .flex.col_9 > li {
    width: 100%;
  }
}

.flex.flex-between.col_9 > div, .flex.flex-between.col_9 > li {
  width: 9.6111111111%;
}
@media only screen and (max-width: 767px) {
  .flex.flex-between.col_9 > div, .flex.flex-between.col_9 > li {
    width: 100%;
  }
}

.flex.col_10 > div, .flex.col_10 > li {
  width: 10%;
}
@media only screen and (max-width: 767px) {
  .flex.col_10 > div, .flex.col_10 > li {
    width: 100%;
  }
}

.flex.flex-between.col_10 > div, .flex.flex-between.col_10 > li {
  width: 8.5%;
}
@media only screen and (max-width: 767px) {
  .flex.flex-between.col_10 > div, .flex.flex-between.col_10 > li {
    width: 100%;
  }
}

.flex.col_11 > div, .flex.col_11 > li {
  width: 9.0909090909%;
}
@media only screen and (max-width: 767px) {
  .flex.col_11 > div, .flex.col_11 > li {
    width: 100%;
  }
}

.flex.flex-between.col_11 > div, .flex.flex-between.col_11 > li {
  width: 7.5909090909%;
}
@media only screen and (max-width: 767px) {
  .flex.flex-between.col_11 > div, .flex.flex-between.col_11 > li {
    width: 100%;
  }
}

.flex.col_12 > div, .flex.col_12 > li {
  width: 8.3333333333%;
}
@media only screen and (max-width: 767px) {
  .flex.col_12 > div, .flex.col_12 > li {
    width: 100%;
  }
}

.flex.flex-between.col_12 > div, .flex.flex-between.col_12 > li {
  width: 6.8333333333%;
}
@media only screen and (max-width: 767px) {
  .flex.flex-between.col_12 > div, .flex.flex-between.col_12 > li {
    width: 100%;
  }
}

/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

.selectbox-searcher {
  position: relative;
  display: inline-block;
}
.selectbox-searcher .ss-display-wrap {
  position: relative;
  display: inline-block;
}
.selectbox-searcher .ss-display-wrap input {
  cursor: pointer;
}
.selectbox-searcher .ss-display-wrap i {
  position: absolute;
  top: 23px;
  right: 10px;
}
.selectbox-searcher .ss-box {
  position: absolute;
  top: 0;
  left: -30px;
  padding: 6px;
  background: #bbbbbb;
  border-radius: 4px;
  z-index: 999;
}
.selectbox-searcher .ss-box .ss-word {
  background: #fff;
  width: 100%;
  margin: 0 0 10px 0;
  padding: 8px 18px;
  border: none;
}
.selectbox-searcher .ss-box .ss-list {
  background: #fff;
  padding: 10px 0;
  max-height: 500px;
  overflow: scroll;
}
.selectbox-searcher .ss-box .ss-list li {
  padding: 0;
  display: block;
}
.selectbox-searcher .ss-box .ss-list li a {
  display: block;
  white-space: nowrap;
  padding: 5px;
  cursor: pointer;
}
.selectbox-searcher .ss-box .ss-list li a:before {
  content: "";
  width: 0;
  heigth: 0;
}
.selectbox-searcher .ss-box i {
  position: absolute;
  top: 18px;
  right: 15px;
}
.selectbox-searcher .hidden {
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* ページ設定
============================================ */
* {
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

* {
  margin: 0;
  padding: 0;
}

html {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
  -webkit-text-size-adjust: 100%;
}

body {
  color: #5F5F5F;
  -webkit-text-size-adjust: 100%;
}

#columnR {
  width: 74%;
}
@media screen and (max-width: 1279px) {
  #columnR {
    max-width: none;
    width: 100%;
  }
}

#columnL {
  width: 22%;
}
@media screen and (max-width: 1279px) {
  #columnL {
    display: none;
  }
}
#columnL ul {
  width: 100%;
  border-top: 1px solid #5F5F5F;
  border-left: 1px solid #5F5F5F;
  border-right: 1px solid #5F5F5F;
}
#columnL ul li a, #columnL ul li button {
  width: 100%;
  text-align: left;
  padding: 20px;
  color: #5F5F5F;
  display: block;
  border-bottom: 1px solid #5F5F5F;
  border-top: none;
  border-left: none;
  border-right: none;
  background: #fff;
  font-weight: bold;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
  font-size: 1.6rem;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
#columnL ul li a:before, #columnL ul li a:after, #columnL ul li button:before, #columnL ul li button:after {
  display: none;
}
#columnL ul li a:hover, #columnL ul li button:hover {
  background: #00A67E;
  color: #fff;
}
#columnL ul li a.active {
  background: #00A67E;
  color: #fff;
}
#columnL ul li.menu_logout button {
  color: #bbb;
}

li.icon_list {
  position: relative;
}
li.icon_list span.icon_unread {
  position: absolute;
  top: 18px;
  right: 10px;
}

.globalMenu ul.navlist li.icon_list span.icon_unread {
  top: 32%;
}

.linkBox {
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  padding-bottom: 0;
}
.linkBox:before {
  display: none;
}
.linkBox:hover {
  color: #00A67E;
}

figure img {
  max-width: 100%;
  vertical-align: bottom;
}

.inner {
  text-align: center;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 100px;
}
@media screen and (max-width: 1279px) {
  .inner {
    max-width: none;
    width: 90%;
    margin-left: 5%;
    margin-right: 5%;
    margin-bottom: 60px;
  }
}
@media screen and (max-width: 767px) {
  .inner {
    margin-bottom: 50px;
  }
}
.inner .mbbtm {
  margin-bottom: 60px;
}
@media screen and (max-width: 767px) {
  .inner .mbbtm {
    margin-bottom: 50px;
  }
}

.sp {
  display: none;
}
@media only screen and (max-width: 767px) {
  .sp {
    display: inline;
  }
}

@media only screen and (max-width: 767px) {
  .pc {
    display: none;
  }
}
.fred {
  color: #ff0000;
}

.tleft {
  text-align: left;
}

.tright {
  text-align: right;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.mt0 {
  margin-top: 0 !important;
}

.mw200 {
  max-width: 200px !important;
}

.ws-normal {
  white-space: normal !important;
}

/* font size
=========================================== */
html {
  font-size: 62.5%;
}

body {
  width: 100%;
  font-size: 16px;
  font-size: 1.6rem; /* 16px*/
  line-height: 2;
}

@media screen and (max-width: 767px) {
  body {
    line-height: 1.7;
    font-size: 1.6rem;
  }
  p {
    font-size: 1.6rem;
  }
}
.en {
  font-family: "Roboto", sans-serif;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.8em;
  letter-spacing: 0.04em;
}

.rubik {
  font-family: "Rubik", sans-serif;
}

.font-grad {
  background: -webkit-gradient(linear, right top, left top, from(#97CB70), to(#00A67E));
  background: -webkit-linear-gradient(right, #97CB70 0%, #00A67E 100%);
  background: linear-gradient(270deg, #97CB70 0%, #00A67E 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* iOSでのデフォルトスタイルをリセット
=========================================== */
input[type=submit],
input[type=button] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
       appearance: button;
  border: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
}

input[type=submit]:-webkit-search-decoration,
input[type=button]:-webkit-search-decoration {
  display: none;
}

input[type=submit]:focus,
input[type=button]:focus {
  outline-offset: -2px;
}

/* clearfix
=========================================== */
.clearfix:before,
.clearfix:after {
  content: "";
  display: block;
  overflow: hidden;
}

.clearfix:after {
  clear: both;
}

.clearfix {
  zoom: 1;
}

.left {
  float: left;
}

.right {
  float: right;
}

/* link
=========================================== */
a {
  text-decoration: none;
  color: #00A67E;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  padding-bottom: 3px;
  line-height: 1.4;
  position: relative;
  display: inline-block;
}
a:before {
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: #00A67E;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  opacity: 1;
}
a:hover {
  color: #00A67E;
  opacity: 1;
}
a:hover:before {
  opacity: 0.8;
}

a.link:hover {
  opacity: 0.8;
}
a.link:hover:before {
  opacity: 0.8;
}

button {
  cursor: pointer !important;
}

/* flexbox
============================================ */
.flex {
  display: -webkit-box;
  display: -ms-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
  .flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.flex.flex-between {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.flex.reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media only screen and (max-width: 767px) {
  .flex.reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

@media only screen and (max-width: 767px) {
  .spFlexRow {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
  }
}
section img {
  max-width: 100%;
}
@media only screen and (max-width: 767px) {
  section br.pc {
    display: none;
  }
}
section br.sp {
  display: none;
}
@media only screen and (max-width: 767px) {
  section br.sp {
    display: block;
  }
}

/* header
=========================================== */
header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 80px;
  background: -webkit-gradient(linear, right top, left top, from(#97CB70), to(#00A67E));
  background: -webkit-linear-gradient(right, #97CB70 0%, #00A67E 100%);
  background: linear-gradient(270deg, #97CB70 0%, #00A67E 100%);
  z-index: 5000;
  -webkit-box-shadow: 0px 10px 18px 2px rgba(0, 32, 103, 0.05);
          box-shadow: 0px 10px 18px 2px rgba(0, 32, 103, 0.05);
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
header a {
  padding-bottom: 0;
}
header a:before {
  display: none;
}
header a:hover {
  text-decoration: none;
  color: #00A67E;
}
@media screen and (max-width: 767px) {
  header > .flex {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
header .inner {
  margin-bottom: 0;
}
header h1#logo, header p#logo {
  color: #fff;
  font-size: 3rem;
  font-weight: bold;
  margin-top: 8px;
}
header h1#logo a, header p#logo a {
  color: #fff;
}
@media only screen and (max-width: 767px) {
  header .inner h1#logo, header .inner p#logo {
    font-size: 1.6rem;
    width: 80%;
    line-height: 1.4;
    text-align: left;
    margin: 17px 0 0 0;
  }
}

main {
  margin-top: 80px;
}

/* Menu
=========================================== */
.hamburger {
  display: block;
  position: relative;
  right: 0;
  top: 18px;
  width: 39px;
  height: 39px;
  cursor: pointer;
  text-align: center;
  z-index: 300;
}
@media screen and (min-width: 1280px) {
  .hamburger {
    display: none;
  }
}

.hamburger span {
  display: block;
  position: absolute;
  width: 39px;
  height: 2px;
  left: 6px;
  background: #fff;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.hamburger span:nth-child(1) {
  top: 10px;
}

.hamburger span:nth-child(2) {
  top: 20px;
}

.hamburger span:nth-child(3) {
  top: 30px;
}

/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
  top: 18px;
  left: 6px;
  -webkit-transform: rotate(315deg);
  transform: rotate(315deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
  top: 18px;
  -webkit-transform: rotate(-315deg);
  transform: rotate(-315deg);
}

/* メニューが開いたときの黒い半透明の背景 */
.menu-bg {
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  width: 100vw;
  height: 100vh;
  z-index: 100;
  background: #00A67E;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.6s;
  transition: all 0.6s;
  cursor: pointer;
}

nav.globalMenu {
  position: fixed;
  right: -320px;
  top: 0;
  width: 300px;
  height: 100vh;
  padding-top: 80px;
  background: #00A67E;
  -webkit-transition: all 0.6s;
  transition: all 0.6s;
  z-index: 200;
  overflow-y: auto;
}

/* メニューが横から開く */
.nav-open nav.globalMenu {
  right: 0;
}

/* メニューが横から開いた時の背景 */
.nav-open .menu-bg {
  opacity: 0.8;
  visibility: visible;
}

nav.globalMenu ul.navlist {
  display: -webkit-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding: 0;
  background: #00A67E;
  max-width: 600px;
  text-align: center;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  nav.globalMenu ul.navlist {
    width: 100%;
    max-width: 767px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

nav.globalMenu ul.navlist li {
  list-style-type: none;
  color: #fff;
  width: 100%;
  text-align: left;
}
nav.globalMenu ul.navlist li a, nav.globalMenu ul.navlist li button {
  display: block;
  color: #fff;
  padding: 1.5em 0 1.5em 1em;
  text-decoration: none;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  font-size: 2rem;
  border-bottom: 1px solid #ccc;
  font-weight: bold;
  position: relative;
  margin: 0;
  background: transparent;
  border-top: none;
  border-right: none;
  border-left: none;
  cursor: pointer;
  width: 100%;
  text-align: left;
}
nav.globalMenu ul.navlist li a i, nav.globalMenu ul.navlist li button i {
  width: 1.5em;
}
nav.globalMenu ul.navlist li a:hover, nav.globalMenu ul.navlist li button:hover {
  opacity: 0.7;
}
@media screen and (max-width: 767px) {
  nav.globalMenu ul.navlist li a, nav.globalMenu ul.navlist li button {
    font-size: 1.7rem;
  }
}
nav.globalMenu ul.navlist li:first-child a {
  border-top: 1px solid #ccc;
}

/* breadcrumb
=========================================== */
.breadcrumb {
  padding-top: 5px;
  margin-bottom: 15px;
  text-align: left;
}
.breadcrumb li {
  display: inline;
  list-style: none;
  font-size: 1.2rem;
}
.breadcrumb li:after {
  content: ">";
  padding: 0 0.5em;
}
.breadcrumb li:last-child:after {
  content: "";
}
.breadcrumb li a:before {
  opacity: 0;
}
.breadcrumb li a:hover:before {
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .breadcrumb {
    margin-top: 20px;
    margin-bottom: 20px;
    line-height: 1;
  }
  .breadcrumb li {
    font-size: 1.1rem;
    white-space: nowrap;
  }
}

footer {
  margin-top: 100px;
  background: #F5F5F5;
  padding: 87px 0 60px;
}
@media (max-width: 768px) {
  footer {
    margin-top: 40px;
    padding: 60px 0 160px;
  }
}
footer a {
  color: #1D1D1D;
}
footer a:before {
  content: none;
}
footer a:hover {
  opacity: 1;
}
footer .inner {
  margin-bottom: 0;
}
footer .footer_top {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding-bottom: 60px;
  border-bottom: 1px solid #CCCCCC;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media (max-width: 768px) {
  footer .footer_top {
    border-bottom: none;
    padding-bottom: 40px;
  }
}
@media (max-width: 768px) {
  footer .footer_top.inner {
    max-width: 100%;
    width: 100%;
    margin: 0;
  }
}
footer .footer_list {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 47%;
}
@media (max-width: 993px) {
  footer .footer_list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media (max-width: 768px) {
  footer .footer_list {
    width: 100%;
    margin-bottom: 40px;
  }
}
footer .footer_list.service {
  width: unset;
  padding-top: 40px;
}
footer .footer_list.service:before {
  content: none;
}
@media (max-width: 768px) {
  footer .footer_list.service {
    margin-top: 0;
    margin-bottom: 0;
  }
}
footer .footer_list.service .navlist {
  width: 280px;
}
@media (max-width: 768px) {
  footer .footer_list.service .navlist {
    width: 100%;
  }
}
@media (max-width: 768px) {
  footer .footer_list.service dd {
    width: 100%;
  }
}
@media (max-width: 768px) {
  footer .footer_list.service dd:nth-of-type(2n-1) {
    border-right: none;
  }
}
@media (max-width: 768px) {
  footer .footer_list.service dd:nth-of-type(2) {
    border-top: none;
  }
}
@media (max-width: 768px) {
  footer .service.inner {
    max-width: 100%;
    width: 100%;
    margin: 0;
  }
}
footer .navlist {
  text-align: left;
  width: 50%;
}
@media (max-width: 768px) {
  footer .navlist {
    width: 100%;
  }
}
footer .navlist > dt {
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 10px;
}
@media (max-width: 768px) {
  footer .navlist > dt {
    padding-left: 20px;
  }
}
footer .navlist > dd {
  padding-bottom: 10px;
}
@media (max-width: 768px) {
  footer .navlist > dd {
    width: 50%;
    float: left;
    padding: 14px 0 14px 12px;
    border-bottom: 1px solid #CCCCCC;
  }
}
@media (max-width: 768px) {
  footer .navlist dd:nth-of-type(2n-1) {
    border-right: 1px solid #CCCCCC;
  }
}
@media (max-width: 768px) {
  footer .navlist dd:nth-of-type(1), footer .navlist dd:nth-of-type(2) {
    border-top: 1px solid #CCCCCC;
  }
}
footer .navlist > dd a {
  font-size: 1.4rem;
  position: relative;
  display: block;
  padding-bottom: 0;
  padding-left: 20px;
}
@media (max-width: 560px) {
  footer .navlist > dd a {
    font-size: 1.3rem;
    padding-left: 16px;
  }
}
footer .navlist > dd a:after {
  content: "";
  position: absolute;
  border-top: 2px solid #CCCCCC;
  border-right: 2px solid #CCCCCC;
  width: 6px;
  height: 6px;
  left: 0;
  top: 6px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
@media (max-width: 768px) {
  footer .navlist > dd a:after {
    right: 8px;
    top: 6px;
  }
}
footer .user, footer .company {
  padding-top: 20px;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
}
@media (max-width: 768px) {
  footer .user, footer .company {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 12px;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
  }
}
footer .user > p, footer .company > p {
  margin-bottom: 10px;
}
@media (max-width: 768px) {
  footer .user > p, footer .company > p {
    border: none;
    padding: 0;
    margin-bottom: 0;
    max-width: 160px;
    width: 100%;
  }
}
@media (max-width: 768px) {
  footer .user > p:after, footer .company > p:after {
    right: 9px;
    top: 23px;
  }
}
footer .user > p:last-child, footer .company > p:last-child {
  margin-bottom: 0;
}
footer .user > p a, footer .company > p a {
  border-radius: 24px;
  width: 180px;
  height: 42px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  padding-bottom: 0;
}
@media (max-width: 768px) {
  footer .user > p a, footer .company > p a {
    width: 100%;
    max-width: 100%;
  }
}
footer .user > p a:after, footer .company > p a:after {
  content: none;
}
footer .user > p a > span, footer .company > p a > span {
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  display: inline-block;
  position: relative;
}
footer .footer_middle .footer_logo {
  text-align: left;
}
@media (max-width: 768px) {
  footer .footer_middle .footer_logo {
    margin-bottom: 40px;
  }
}
footer .footer_middle .footer_logo > a {
  margin-bottom: 20px;
}
footer .footer_middle .footer_logo img {
  max-width: 160px;
  width: 100%;
}
footer .footer_middle .footer_logo > p {
  font-size: 1.4rem;
  text-align: left;
  margin-bottom: 10px;
}
footer .footer_middle .footer_logo > p:last-child {
  margin-bottom: 0;
}
footer .footer_middle .operate > ul li {
  margin-bottom: 10px;
  text-align: right;
}
@media (max-width: 768px) {
  footer .footer_middle .operate > ul li {
    text-align: left;
  }
}
footer .footer_middle .operate > ul li:last-child {
  margin-bottom: 0;
}
footer .footer_middle .operate a {
  font-size: 1.4rem;
  padding: 0;
}
footer .footer_under {
  padding-top: 40px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 768px) {
  footer .footer_under {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 20px;
  }
}
footer .footer_under .sns_wrapper {
  -webkit-box-pack: start;
  -webkit-justify-content: start;
      -ms-flex-pack: start;
          justify-content: start;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
}
@media (max-width: 768px) {
  footer .footer_under .sns_wrapper {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
footer .footer_under .copy {
  font-size: 1.4rem;
  text-align: right;
}
footer .ScrollTop {
  position: fixed;
  right: 20px;
  bottom: 20px;
  border-radius: 50%;
  background: #00A67E;
  -webkit-box-shadow: 0px 10px 18px 2px rgba(96, 118, 129, 0.15);
          box-shadow: 0px 10px 18px 2px rgba(96, 118, 129, 0.15);
  width: 48px;
  height: 48px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  text-decoration: none;
  opacity: 0;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  z-index: 100;
}
footer .ScrollTop:before {
  display: none;
}
@media only screen and (max-width: 768px) {
  footer .ScrollTop {
    right: 10px;
    bottom: 10px;
  }
}
footer .ScrollTop.isActive {
  opacity: 1;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
footer .ScrollTop span {
  width: 10px;
  height: 10px;
  border: 2px solid;
  border-color: #fff #fff transparent transparent;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  position: absolute;
  top: 22px;
}
footer .grecaptcha-badge {
  bottom: 80px !important;
}

.ScrollTop {
  position: fixed;
  right: 20px;
  bottom: 20px;
  border-radius: 50%;
  background: #00A67E;
  -webkit-box-shadow: 0px 10px 18px 2px rgba(96, 118, 129, 0.15);
          box-shadow: 0px 10px 18px 2px rgba(96, 118, 129, 0.15);
  width: 48px;
  height: 48px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  text-decoration: none;
  opacity: 0;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  z-index: 3000;
}
.ScrollTop:before {
  display: none;
}
@media only screen and (max-width: 767px) {
  .ScrollTop {
    right: 10px;
    bottom: 10px;
  }
}

.ScrollTop.isActive {
  opacity: 1;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.ScrollTop span {
  width: 10px;
  height: 10px;
  border: 2px solid;
  border-color: #fff #fff transparent transparent;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  position: absolute;
  top: 22px;
}

.grecaptcha-badge {
  bottom: 80px !important;
}

/* 見出し
=========================================== */
h1.ttl, h2.ttl {
  font-size: 3rem;
  font-weight: bold;
  padding-bottom: 0.6em;
  margin-bottom: 0.75em;
  line-height: 1.7;
  text-align: left;
  border-bottom: 2px solid #5F5F5F;
}
@media screen and (max-width: 767px) {
  h1.ttl, h2.ttl {
    font-size: 2.4rem;
  }
}

.ttl_bg {
  font-size: 2.4rem;
  font-weight: bold;
  color: #fff;
  background: #00A67E;
  padding: 0.6em 30px;
  margin-bottom: 1.25em;
  text-align: left;
  margin-top: 1.66em;
}
@media screen and (max-width: 767px) {
  .ttl_bg {
    font-size: 2.1rem;
  }
}

/* messeage
=========================================== */
.msglist {
  width: 100%;
}
.msglist > li {
  background: #fff;
  width: 100%;
  border-bottom: 1px solid #ccc;
  padding: 10px 0;
}
.msglist > li a {
  display: block;
  color: #5F5F5F;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  cursor: pointer;
}
.msglist > li a:before {
  display: none;
}
.msglist > li a:hover {
  opacity: 0.8;
}
.msglist > li span {
  font-weight: bold;
  display: inline-block;
  text-align: left;
  vertical-align: middle;
}
.msglist > li span.from {
  width: 24%;
  margin-left: 2%;
}
.msglist > li span.subject {
  width: 48%;
  margin-left: 2%;
  margin-right: 2%;
}
.msglist > li span.date {
  width: 19%;
  margin-right: 2%;
}
@media screen and (max-width: 767px) {
  .msglist > li span.from {
    width: 94%;
    margin-left: 3%;
    margin-right: 3%;
  }
  .msglist > li span.subject {
    width: 94%;
    margin: 5px 3%;
    font-size: 1.2rem;
  }
  .msglist > li span.date {
    width: 94%;
    margin-left: 3%;
    margin-right: 3%;
    font-size: 1.2rem;
  }
}
.msglist > li .modal-content a {
  color: #00A67E;
  text-decoration: underline;
  padding-top: 10px;
}
.msglist li.read {
  background: #f5f7f7;
}
.msglist li.read span {
  font-weight: normal;
}
@media screen and (max-width: 767px) {
  .msglist li.msglisttop {
    display: none;
  }
}

/* table
=========================================== */
.tbl01 {
  border-collapse: collapse;
  width: 100%;
}
.tbl01 th {
  color: #5F5F5F;
  background: #f5f7f7;
  font-weight: bold;
  text-align: left;
  vertical-align: middle;
  padding-left: 30px;
  padding-right: 30px;
  line-height: 1.8;
  white-space: nowrap;
  border: 1px solid #dddddd;
  font-size: 1.6rem;
  position: relative;
}
.tbl01 td {
  padding: 30px;
  line-height: 1.8;
  border: 1px solid #dddddd;
  text-align: left;
  font-size: 1.6rem;
  position: relative;
}
.tbl01 td .flow_ttl {
  margin-top: 2rem;
}
.tbl01 td p, .tbl01 td li {
  font-size: 1.6rem;
}
.tbl01 td .small {
  font-size: 1.5rem;
}
.tbl01 td .template_ttl {
  margin-top: 10px;
  margin-bottom: -10px;
  font-size: 1.5rem;
  font-weight: bold;
}
.tbl01 td ul.note li {
  display: block;
  padding-left: 15px;
  font-size: 1.5rem;
}
.tbl01 td ul.note li:before {
  content: "※";
  margin-right: 0.3rem;
  margin-left: -16px;
}
.tbl01 td span.year {
  display: inline-block;
  margin-right: 10px;
  padding: 3px 10px;
  background: #eee;
}
.tbl01 td .image-container {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}
@media screen and (max-width: 767px) {
  .tbl01 td .image-container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.tbl01 td .image-container > div {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  text-align: center;
}
.tbl01 td .image-container > div .thumbnail-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 140px;
  background: #ccc;
  margin-bottom: 15px;
}
.tbl01 td .image-container > div .thumbnail-wrap img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
@media only screen and (max-width: 959px) {
  .tbl01 {
    width: 98%;
    border-top: 1px solid #ddd;
  }
  .tbl01 th {
    display: block;
    width: 100%;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 15px;
    padding-right: 15px;
    font-size: 1.6rem;
    border-top: none;
    border-bottom: none;
  }
  .tbl01 td {
    padding: 15px;
    display: block;
    width: 100%;
    font-size: 1.6rem;
  }
  .tbl01 td p, .tbl01 td li {
    font-size: 1.6rem;
  }
}

/* form
=========================================== */
.form01 table span.must, .form01 table span.nini {
  width: 45px;
  padding: 4px;
  color: #fff;
  line-height: 1.6;
  text-align: center;
  vertical-align: middle;
  font-size: 1.4rem;
  position: absolute;
  top: calc(50% - 10px);
  right: 30px;
}
@media screen and (max-width: 767px) {
  .form01 table span.must, .form01 table span.nini {
    top: 6px;
  }
}
.form01 table span.must {
  background: #FF9544;
}
.form01 table span.nini {
  background: #aaaaaa;
}
.form01 table ul li {
  display: inline-block;
  padding-left: 12px;
}
.form01 table ul li label {
  display: block;
}
.form01 table ul li label input[type=checkbox],
.form01 table ul li label [type=radio] {
  visibility: hidden;
  position: absolute;
}
.form01 table ul li label input[type=checkbox]:checked + span:before,
.form01 table ul li label [type=radio]:checked + span:before {
  background-color: #fff;
}
.form01 table ul li label input[type=checkbox]:checked + span:after,
.form01 table ul li label [type=radio]:checked + span:after {
  opacity: 1;
}
.form01 table input[type=text],
.form01 table input[type=tel],
.form01 table input[type=email],
.form01 table input[type=number],
.form01 table input[type=password],
.form01 table input[type=date],
.form01 table input[type=datetime-local] {
  width: 100%;
  padding: 1em 0.6em;
  border: 1px solid #aaaaaa;
  font-size: 1.6rem;
  -webkit-transition: -webkit-box-shadow 0.2s;
  transition: -webkit-box-shadow 0.2s;
  transition: box-shadow 0.2s;
  transition: box-shadow 0.2s, -webkit-box-shadow 0.2s;
  border-radius: 5px;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .form01 table input[type=text],
  .form01 table input[type=tel],
  .form01 table input[type=email],
  .form01 table input[type=number],
  .form01 table input[type=password],
  .form01 table input[type=date],
  .form01 table input[type=datetime-local] {
    width: 100%;
    padding: 10px 8px;
    font-size: 1.5rem;
  }
}
.form01 table input[type=password] {
  margin-bottom: 8px;
}
.form01 table textarea {
  width: 100%;
  font-size: 1.6rem;
  padding: 1em 0.6em;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
  border: 1px solid #aaaaaa;
  margin-bottom: 2px;
  resize: vertical;
  display: block;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .form01 table textarea {
    font-size: 1.5rem;
  }
}
.form01 table textarea.wysiwyg {
  display: block !important;
  height: 0;
  width: 0;
  margin: 0;
  padding: 0;
}
.form01 table .ck-editor__editable p {
  margin-bottom: 1.5em;
}
.form01 table ::-webkit-input-placeholder {
  color: #ccc;
}
.form01 table ::-moz-placeholder {
  color: #ccc;
}
.form01 table :-ms-input-placeholder {
  color: #ccc;
}
.form01 table ::-ms-input-placeholder {
  color: #ccc;
}
.form01 table ::placeholder {
  color: #ccc;
}
.form01 table .ck-editor__editable_inline {
  min-height: 200px;
}
.form01 table .ck-editor__editable_inline h2 {
  font-size: 2rem;
  margin-bottom: 10px;
}
.form01 table .ck-editor__editable_inline h3 {
  margin-bottom: 10px;
}
.form01 table .ck-editor__editable_inline ol, .form01 table .ck-editor__editable_inline ul {
  list-style-type: disc;
  padding-left: 40px;
}
.form01 table .ck-editor__editable_inline ol li, .form01 table .ck-editor__editable_inline ul li {
  padding-left: 0;
  display: list-item;
}
.form01 table .ck-editor__editable_inline ol {
  list-style-type: desc;
}
.form01 table select {
  padding: 1em 35px 1em 1em;
  border: 1px solid #aaaaaa;
  -webkit-transition: -webkit-box-shadow 0.2s;
  transition: -webkit-box-shadow 0.2s;
  transition: box-shadow 0.2s;
  transition: box-shadow 0.2s, -webkit-box-shadow 0.2s;
  color: #333;
  font-size: 1.6rem;
  background: #fff url(/assets/img/admin/icon_arrow_down.png) right 7px center no-repeat;
  background-size: 10px auto;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
}
@media screen and (max-width: 767px) {
  .form01 table select {
    font-size: 1.5rem;
    padding: 9px 20px 9px 9px;
  }
}
@media screen and (max-width: 767px) {
  .form01 table ul.list_radio li {
    margin-bottom: 15px;
  }
}
.form01 table ul.list_radio li label {
  cursor: pointer;
}
.form01 table ul.list_radio li span {
  line-height: 22px;
  position: relative;
  padding-left: 23px;
  padding-right: 26px;
  display: block;
}
@media screen and (max-width: 767px) {
  .form01 table ul.list_radio li span {
    line-height: 29px;
  }
}
.form01 table ul.list_radio li span:before {
  content: "";
  position: absolute;
  left: -12px;
  top: 0;
  width: 22px;
  height: 22px;
  background-color: #fff;
  border-radius: 100%;
  border: 1px solid #aaaaaa;
}
@media screen and (max-width: 767px) {
  .form01 table ul.list_radio li span:before {
    top: 3px;
  }
}
.form01 table ul.list_radio li span:after {
  content: "";
  position: absolute;
  left: -6px;
  top: 6px;
  width: 12px;
  height: 12px;
  background-color: #212836;
  opacity: 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  border-radius: 100%;
}
@media screen and (max-width: 767px) {
  .form01 table ul.list_radio li span:after {
    top: 9px;
  }
}
.form01 table ul.list_radio li input:disabled + span:before {
  background-color: #ccc;
}
.form01 table ul.list_check li {
  margin-bottom: 25px;
}
.form01 table ul.list_check li label {
  cursor: pointer;
}
.form01 table ul.list_check li span {
  line-height: 23px;
  position: relative;
  padding-left: 26px;
  display: block;
}
@media screen and (max-width: 767px) {
  .form01 table ul.list_check li span {
    line-height: 30px;
  }
}
.form01 table ul.list_check li span:before {
  content: "";
  position: absolute;
  left: -12px;
  top: 0;
  width: 25px;
  height: 25px;
  background-color: #fff;
  border: 1px solid #aaaaaa;
}
@media screen and (max-width: 767px) {
  .form01 table ul.list_check li span:before {
    top: 3px;
  }
}
.form01 table ul.list_check li span:after {
  content: "";
  position: absolute;
  left: -6px;
  top: 6px;
  width: 13px;
  height: 7px;
  background: #fff;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  border-bottom: 3px solid;
  border-left: 3px solid;
  opacity: 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
@media screen and (max-width: 767px) {
  .form01 table ul.list_check li span:after {
    top: 9px;
  }
}
.form01 table ul.list_check li input:disabled + span:before {
  background-color: #ccc;
}
.form01 table ul.list_check li.flex {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.form01 table ul.list_check li.flex p {
  width: calc(100% - 90px);
  font-size: 1.6rem;
}
@media screen and (max-width: 767px) {
  .form01 table ul.list_check li.flex p {
    font-size: 1.4rem;
  }
}
.form01 table ul.list_check li.flex div {
  width: 60px;
}
.form01 table .sizemax {
  width: 100% !important;
}
.form01 table .sizehalf {
  width: 250px !important;
}
@media screen and (max-width: 500px) {
  .form01 table .sizehalf {
    width: 100% !important;
  }
}
.form01 table .sizem120 {
  width: calc(100% - 65px) !important;
}
.form01 table input[type=text].radio_text {
  width: 250px !important;
  padding: 5px 9px;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
}
@media screen and (max-width: 500px) {
  .form01 table input[type=text].radio_text {
    width: 120px !important;
  }
}
.form01 table ul.highlist li {
  line-height: 50px;
}
.form01 table ul.highlist li select, .form01 table ul.highlist li input[type=text] {
  margin-left: 5px;
  margin-right: 5px;
}
.form01 table ul.highlist li span {
  line-height: 42px;
}
@media screen and (max-width: 767px) {
  .form01 table ul.highlist li span {
    font-size: 1.4rem;
  }
}
.form01 table ul.highlist li span:before {
  top: 10px;
}
.form01 table ul.highlist li span:after {
  top: 16px;
}
.form01 table .line {
  margin-top: 20px;
  margin-bottom: 20px;
  padding-bottom: 10px;
  padding-top: 25px;
  border-top: 1px dotted #ccc;
  border-bottom: 1px dotted #ccc;
}
@media only screen and (max-width: 767px) {
  .form01 table div.box.alert {
    font-size: 1.4rem;
    text-align: left;
  }
}
.form01 table div.box.alert .ttl {
  text-align: left;
  font-weight: bold;
  color: #FF0000;
  margin-bottom: 5px;
  font-size: 1.5rem;
}
.form01 table div.box.alert .ttl i {
  margin-right: 10px;
}
.form01 table div.box.alert .disc li {
  list-style-type: disc;
  margin-left: 2em;
  font-size: 1.5rem;
}
.form01 table .exemple {
  padding: 15px;
  font-size: 1.4rem;
  background: #f5f7f7;
  margin-top: 25px;
}
.form01 table .exemple dt {
  font-weight: bold;
  margin-bottom: 10px;
}
.form01 table .exemple dd {
  margin-bottom: 5px;
}
.form01 table .mbtm50 {
  margin-bottom: 50px;
}
.form01 table .mbtm25 {
  margin-bottom: 25px;
}
.form01 table .mbtm10 {
  margin-bottom: 10px;
  margin-top: 20px;
}
.form01 table .mt0 {
  margin-top: 0px;
}
.form01 table .mt20 {
  margin-top: 20px;
}
.form01 table .mr10 {
  margin-right: 10px;
}
.form01 table .thumbnail-wrap {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin-bottom: 20px;
}
.form01 table .delete-img {
  border: none;
  background: #a3a3a3;
  font-size: 26px;
  width: 40px;
  height: 40px;
  border-radius: 20px;
  color: #fff;
  position: absolute;
  top: 10px;
  right: 10px;
  cursor: pointer;
}
.form01 table .delete-img.delete-file {
  top: -5px;
  right: -52px;
}
.form01 table .imgbtn {
  display: inline-block;
  min-width: 161px;
  color: #fff;
  background: #00A67E;
  border: 2px solid #00A67E;
  text-align: center;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
  font-size: 1.6rem;
  border-radius: 30px;
  font-weight: bold;
  padding: 15px 0px;
  position: relative;
  outline: none;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.form01 table .imgbtn:hover {
  opacity: 0.8;
}
@media only screen and (max-width: 767px) {
  .form01 table .imgbtn {
    margin: 15px 0 30px 19px;
  }
}
.form01 table .employment-type-td ul.list_radio {
  margin-bottom: -20px;
}
.form01 table .employment-type-td ul.list_radio li {
  margin-bottom: 20px;
}
.form01 table .occupation-td ul.list_radio li span {
  padding-left: 20px;
  padding-right: 20px;
}
.form01 table .occupation-detail-wrap {
  margin-top: 20px;
  padding-top: 25px;
  border-top: 1px dotted #ccc;
}
.form01 table .occupation-detail-wrap ul li:last-of-type {
  margin-bottom: 0;
}
.form01 table .template-wrap {
  margin: 10px 0 20px;
}
.form01 table .template-wrap li {
  padding: 0;
}
.form01 table .template-wrap li button {
  padding: 2px 10px;
  background: #fff;
  border-radius: 5px;
  border: 1px solid #000;
}
.form01 table .template-wrap li button:hover {
  background: #eee;
}
.form01 table .station-wrap {
  margin-bottom: 30px;
}
.form01 table .station-wrap li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0;
  margin-bottom: 7px;
  white-space: nowrap;
}
.form01 table .station-wrap li input[type=text] {
  margin: 0;
  padding: 9px;
  margin-left: 5px;
  margin-right: 5px;
  margin-bottom: 3px;
}
.form01 table .station-wrap li input[type=text]:nth-of-type(1) {
  max-width: calc(100% - 140px);
}
.form01 table .station-wrap li input[type=text]:nth-of-type(2) {
  max-width: 50px;
}
.form01 table .station-wrap-confirm li {
  padding: 0;
  display: block;
}
.form01 table .salary-wrap > .list_radio {
  margin-bottom: 20px;
}
.form01 table .salary-wrap .salary-tab {
  margin-bottom: 40px;
}
.company-job-confirm .form01 table .salary-wrap .salary-tab, .admin-job-confirm .form01 table .salary-wrap .salary-tab {
  margin-bottom: 0;
}
.form01 table .salary-wrap .salary-tab > li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0;
  margin-bottom: 8px;
}
@media only screen and (max-width: 767px) {
  .form01 table .salary-wrap .salary-tab > li {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}
.form01 table .salary-wrap .salary-tab > li.minashi-detail {
  display: none;
}
.form01 table .salary-wrap .salary-tab > li:last-of-type {
  margin-bottom: 0;
}
.form01 table .salary-wrap .salary-tab > li p {
  padding: 0px;
  margin-bottom: 3px;
  margin-right: 10px;
  width: 104px;
}
@media only screen and (max-width: 767px) {
  .form01 table .salary-wrap .salary-tab > li p {
    width: 100%;
  }
}
.form01 table .salary-wrap .salary-tab > li p span {
  background: #00A67E;
  color: #fff;
  font-size: 1.5rem;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .form01 table .salary-wrap .salary-tab > li p span {
    width: 104px;
  }
}
.form01 table .salary-wrap .salary-tab > li input, .form01 table .salary-wrap .salary-tab > li select {
  padding: 5px 9px;
  margin-right: 3px;
  margin-bottom: 3px;
  max-width: 150px;
}
.form01 table .salary-wrap .salary-tab > li select {
  padding-right: 30px;
}
.form01 table .salary-wrap .salary-tab > li span {
  display: block;
  margin-bottom: 3px;
}
.form01 table .salary-wrap .salary-tab > li > ul {
  margin-bottom: 3px;
}
.form01 table .salary-wrap .salary-tab > li.salary-example {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.form01 table .salary-wrap .salary-tab > li.salary-example ul {
  margin-top: 10px;
}
.form01 table .salary-wrap .salary-tab > li.salary-example ul li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  white-space: nowrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0;
}
@media only screen and (max-width: 767px) {
  .form01 table .salary-wrap .salary-tab > li.salary-example ul li {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}
.form01 table .salary-wrap .salary-tab > li.salary-example ul li p {
  margin-bottom: 10px;
}
.form01 table .salary-wrap .salary-tab > li.salary-example ul li span {
  font-size: 1.4rem;
}
.form01 table .salary-wrap .salary-tab > li.salary-example ul li input:last-child {
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
}
.form01 table .thanks .btn {
  margin: 85px auto 0 auto;
}
@media only screen and (max-width: 767px) {
  .form01 table .thanks .btn {
    margin-top: 40px;
  }
}

.toggle-password-wrap {
  position: relative;
  max-width: 420px;
}
.toggle-password-wrap input[type=text] {
  margin-bottom: 8px;
}
.toggle-password-wrap .toggle-password-display {
  position: absolute;
  width: 30px;
  height: 30px;
  right: 10px;
  top: 16px;
  border: none;
  background-color: inherit;
}
.toggle-password-wrap .toggle-password-display.eye {
  background-image: url("/assets/img/common/icon_eye.svg");
  background-repeat: no-repeat;
}
.toggle-password-wrap .toggle-password-display.eye-slash {
  background-image: url("/assets/img/common/icon_eye_slash.svg");
  background-repeat: no-repeat;
}

form.colored input[type=text],
form.colored input[type=tel],
form.colored input[type=email],
form.colored input[type=number],
form.colored input[type=password] {
  background-color: #efefef;
}
form.colored ul.list_check li span:before {
  background-color: #efefef;
}
form.colored textarea {
  background-color: #efefef;
}
form.colored select {
  background-color: #efefef;
}

table.cktbl {
  margin-top: 20px;
}
@media only screen and (max-width: 767px) {
  table.cktbl {
    margin-bottom: 40px;
  }
}
table.cktbl th {
  padding-top: 20px;
  padding-bottom: 20px;
}
@media only screen and (max-width: 767px) {
  table.cktbl th {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}
table.cktbl td ul.list_check li.flex {
  border-bottom: 1px dashed #ccc;
  margin-bottom: 15px;
  padding-bottom: 15px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
table.cktbl td ul.list_check li.flex:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}
table.cktbl td ul.list_check li span {
  padding-right: 32px;
  padding-left: 0;
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  table.cktbl td ul.list_check li span {
    line-height: 21px;
  }
}
table.cktbl td ul.list_check li span:before {
  left: auto;
  right: 0;
  top: 0;
  width: 21px;
  height: 21px;
}
table.cktbl td ul.list_check li span:after {
  left: auto;
  right: 4px;
  top: 6px;
  width: 11px;
  height: 5px;
}

.btn_orangeG {
  color: #fff;
  background: -webkit-gradient(linear, right top, left top, from(#FD904D), to(#FC686E));
  background: -webkit-linear-gradient(right, #FD904D 0%, #FC686E 100%);
  background: linear-gradient(270deg, #FD904D 0%, #FC686E 100%);
  border-radius: 40px;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
@media (hover: hover) {
  .btn_orangeG:hover {
    color: #fff;
    background: -webkit-gradient(linear, left top, right top, from(#E64917), to(#E68E44));
    background: -webkit-linear-gradient(left, #E64917, #E68E44);
    background: linear-gradient(90deg, #E64917, #E68E44);
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
  }
  .btn_orangeG:hover a {
    opacity: 1;
  }
}

.flex_btn {
  width: 77%;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  margin: 0 auto;
}
@media screen and (max-width: 980px) and (min-width: 768px) {
  .flex_btn {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .flex_btn {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 100%;
  }
  .flex_btn .btn_return {
    margin-bottom: 30px;
  }
}

.btn_submit, .btn_set {
  text-align: center;
  margin: 60px auto 0 auto;
}
.company-job-confirm .btn_submit, .company-job-confirm .btn_set {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  .btn_submit, .btn_set {
    margin-top: 15px;
  }
}
.btn_submit [type=submit], .btn_submit .btn01, .btn_set [type=submit], .btn_set .btn01 {
  display: inline-block;
  min-width: 320px;
  color: #fff;
  border: 2px solid #00A67E;
  background: #00A67E;
  border-radius: 40px;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  padding: 18px 0px;
  position: relative;
  outline: none;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.btn_submit [type=submit]:hover, .btn_submit .btn01:hover, .btn_set [type=submit]:hover, .btn_set .btn01:hover {
  background-color: #fff;
  border-color: #00A67E;
  color: #00A67E;
}
.btn_submit [type=submit]:before, .btn_submit .btn01:before, .btn_set [type=submit]:before, .btn_set .btn01:before {
  display: none;
}
.company-job-confirm .btn_submit [type=submit], .company-job-confirm .btn_submit .btn01, .company-job-confirm .btn_set [type=submit], .company-job-confirm .btn_set .btn01 {
  min-width: 32%;
  margin-right: 0;
  margin-left: 0;
}
@media only screen and (max-width: 767px) {
  .btn_submit [type=submit], .btn_submit .btn01, .btn_set [type=submit], .btn_set .btn01 {
    width: 100%;
    min-width: 240px;
    max-width: 260px;
    font-size: 1.6rem;
  }
}
.btn_submit input.back-btn, .btn_submit button.back-btn, .btn_submit a.back-btn, .btn_submit .btn00, .btn_set input.back-btn, .btn_set button.back-btn, .btn_set a.back-btn, .btn_set .btn00 {
  display: inline-block;
  min-width: 320px;
  color: #5F5F5F;
  border: 2px solid #ececec;
  background: #ececec;
  border-radius: 40px;
  text-align: center;
  font-weight: bold;
  font-size: 2rem;
  padding: 18px 0px;
  position: relative;
  outline: none;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  opacity: 1;
  margin-right: 10px;
  cursor: pointer;
}
.btn_submit input.back-btn:hover, .btn_submit button.back-btn:hover, .btn_submit a.back-btn:hover, .btn_submit .btn00:hover, .btn_set input.back-btn:hover, .btn_set button.back-btn:hover, .btn_set a.back-btn:hover, .btn_set .btn00:hover {
  opacity: 0.7;
  background-color: #ececec;
  border-color: #ececec;
  color: #5F5F5F;
}
.btn_submit input.back-btn:before, .btn_submit button.back-btn:before, .btn_submit a.back-btn:before, .btn_submit .btn00:before, .btn_set input.back-btn:before, .btn_set button.back-btn:before, .btn_set a.back-btn:before, .btn_set .btn00:before {
  display: none;
}
.company-job-confirm .btn_submit input.back-btn, .company-job-confirm .btn_submit button.back-btn, .company-job-confirm .btn_submit a.back-btn, .company-job-confirm .btn_submit .btn00, .company-job-confirm .btn_set input.back-btn, .company-job-confirm .btn_set button.back-btn, .company-job-confirm .btn_set a.back-btn, .company-job-confirm .btn_set .btn00 {
  min-width: 32%;
  margin-right: 0;
  margin-left: 0;
}
@media only screen and (max-width: 768px) {
  .btn_submit input.back-btn, .btn_submit button.back-btn, .btn_submit a.back-btn, .btn_submit .btn00, .btn_set input.back-btn, .btn_set button.back-btn, .btn_set a.back-btn, .btn_set .btn00 {
    width: 100%;
    min-width: 240px;
    max-width: 260px;
    margin-bottom: 20px;
    font-size: 1.6rem;
  }
}
.btn_submit .preview-btn, .btn_set .preview-btn {
  display: inline-block;
  min-width: 320px;
  color: #5F5F5F;
  border: 2px solid #ececec;
  background: #ececec;
  border-radius: 40px;
  text-align: center;
  font-weight: bold;
  font-size: 2rem;
  padding: 18px 0px;
  position: relative;
  outline: none;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  opacity: 1;
  margin-right: 10px;
  cursor: pointer;
}
.btn_submit .preview-btn:hover, .btn_set .preview-btn:hover {
  opacity: 0.7;
}
.btn_submit .preview-btn:before, .btn_set .preview-btn:before {
  display: none;
}
.btn_submit .preview-btn:after, .btn_set .preview-btn:after {
  content: "\f390";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-left: 15px;
}
@media only screen and (max-width: 768px) {
  .btn_submit .preview-btn, .btn_set .preview-btn {
    width: 100%;
    min-width: 240px;
    max-width: 260px;
    margin-bottom: 20px;
    font-size: 1.6rem;
  }
}

.btn_set {
  margin: 30px auto 15px auto;
}
@media only screen and (max-width: 767px) {
  .btn_set {
    margin: 15px auto 10px auto;
  }
}
.btn_set .back-btn {
  color: #fff;
  background: #999;
  border: none;
}

.btn_set.bulk.flex {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.btn_set.bulk.flex i {
  display: block;
  margin-bottom: 10px;
}
.btn_set.bulk.flex .up-btn {
  display: inline-block;
  min-width: 320px;
  color: #fff;
  background: #00A67E;
  border-radius: 10px;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
  padding: 25px 0px;
  position: relative;
  outline: none;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  margin: 0 10px;
  border: none;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
}
.btn_set.bulk.flex .up-btn:hover {
  opacity: 0.7;
}
.btn_set.bulk.flex .up-btn:before {
  display: none;
}
@media only screen and (max-width: 767px) {
  .btn_set.bulk.flex .up-btn {
    width: 100%;
    min-width: 260px;
    max-width: 260px;
    font-size: 1.6rem;
    margin: 0;
  }
}
.btn_set.bulk.flex .down-btn {
  display: inline-block;
  min-width: 320px;
  color: #5F5F5F;
  background: #ececec;
  border-radius: 10px;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
  padding: 25px 0px;
  position: relative;
  outline: none;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  opacity: 1;
  margin: 0 10px;
  cursor: pointer;
}
.btn_set.bulk.flex .down-btn:hover {
  opacity: 0.7;
}
.btn_set.bulk.flex .down-btn:before {
  display: none;
}
@media only screen and (max-width: 768px) {
  .btn_set.bulk.flex .down-btn {
    width: 100%;
    min-width: 260px;
    max-width: 260px;
    margin: 0 0 20px 0;
    font-size: 1.6rem;
  }
}

span.errMsg {
  display: block;
  color: #ff0000;
}

.company-job-create .form01 table div.box.alert .ttl i {
  display: none;
}

.company-company-edit .bill_info_check,
.company-company-confirm .bill_info_check,
.admin-company-edit .bill_info_check,
.admin-company-confirm .bill_info_check,
.admin-company-show .bill_info_check {
  display: block;
  text-align: left;
  padding: 20px 20px 20px 32px;
  background: #f5f7f7;
  margin-bottom: 1.66em;
}

.company-company-edit .sns_table td > p,
.admin-company-edit .sns_table td > p,
.admin-company-show .sns_table td > p {
  background: #00A67E;
  display: inline-block;
  font-size: 1.4rem;
  color: #fff;
  padding: 0px 10px 0px 26px;
  position: relative;
  margin-bottom: 5px;
}
.company-company-edit .sns_table td > p:before,
.admin-company-edit .sns_table td > p:before,
.admin-company-show .sns_table td > p:before {
  content: "";
  position: absolute;
  top: 8px;
  left: 9px;
  display: block;
  width: 10px;
  height: 5px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.company-company-edit .sns_table td div,
.admin-company-edit .sns_table td div,
.admin-company-show .sns_table td div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
}
.company-company-edit .bill_info_check,
.admin-company-edit .bill_info_check,
.admin-company-show .bill_info_check {
  cursor: pointer;
}
.company-company-edit .bill_info_check input[type=checkbox],
.admin-company-edit .bill_info_check input[type=checkbox],
.admin-company-show .bill_info_check input[type=checkbox] {
  visibility: hidden;
  position: absolute;
}
.company-company-edit .bill_info_check input[type=checkbox]:checked + span:after,
.admin-company-edit .bill_info_check input[type=checkbox]:checked + span:after,
.admin-company-show .bill_info_check input[type=checkbox]:checked + span:after {
  opacity: 1;
}
.company-company-edit .bill_info_check span,
.admin-company-edit .bill_info_check span,
.admin-company-show .bill_info_check span {
  line-height: 23px;
  position: relative;
  padding-left: 26px;
  display: block;
}
@media screen and (max-width: 767px) {
  .company-company-edit .bill_info_check span,
  .admin-company-edit .bill_info_check span,
  .admin-company-show .bill_info_check span {
    line-height: 30px;
  }
}
.company-company-edit .bill_info_check span:before,
.admin-company-edit .bill_info_check span:before,
.admin-company-show .bill_info_check span:before {
  content: "";
  position: absolute;
  left: -12px;
  top: 0;
  width: 25px;
  height: 25px;
  background-color: #fff;
  border: 1px solid #aaaaaa;
}
@media screen and (max-width: 767px) {
  .company-company-edit .bill_info_check span:before,
  .admin-company-edit .bill_info_check span:before,
  .admin-company-show .bill_info_check span:before {
    top: 3px;
  }
}
.company-company-edit .bill_info_check span:after,
.admin-company-edit .bill_info_check span:after,
.admin-company-show .bill_info_check span:after {
  content: "";
  position: absolute;
  left: -6px;
  top: 6px;
  width: 13px;
  height: 7px;
  background: #fff;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  border-bottom: 3px solid;
  border-left: 3px solid;
  opacity: 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
@media screen and (max-width: 767px) {
  .company-company-edit .bill_info_check span:after,
  .admin-company-edit .bill_info_check span:after,
  .admin-company-show .bill_info_check span:after {
    top: 9px;
  }
}

/* list
=========================================== */
ul {
  list-style: none;
}

.def dd {
  margin-bottom: 2rem;
}

.square {
  margin-bottom: 2rem;
}
.square dt {
  position: relative;
  padding-left: 1em;
}
.square dt::before {
  background: #00A67E;
  content: "";
  height: 10px;
  width: 10px;
  left: 0;
  position: absolute;
  top: 10px;
}
.square dd {
  margin-bottom: 0.8rem;
}

.maru {
  text-align: left;
}
.maru dt {
  font-weight: bold;
  margin-bottom: 10px;
}
.maru li, .maru dd {
  display: list-item;
  margin-left: 1.5em;
  list-style-type: disc;
  font-size: 1.6rem;
  color: #5F5F5F;
  margin-bottom: 0.8em;
}
.maru li span, .maru dd span {
  color: #5F5F5F;
}
@media only screen and (max-width: 767px) {
  .maru li, .maru dd {
    font-size: 1.4rem;
  }
}
.maru li:last-child, .maru dd:last-child {
  margin-bottom: 0;
}

.num {
  counter-reset: li;
}
.num li {
  position: relative;
  padding-left: 1.8rem;
}
.num li::before {
  position: absolute;
  top: 0px;
  left: 0;
  color: #5F5F5F;
  font-weight: 700;
  counter-increment: li; /* li の数を一つずつ増加 */
  content: counter(li) ". "; /* 数を表示 */
}

/* .listbox
=========================================== */
.listbox.flex.flex-between.col_1 > div.box {
  width: 100%;
  margin-bottom: 25px;
}
.listbox.flex.flex-between.col_1 > div.box p {
  margin-bottom: 0;
}
.listbox div.box {
  border: 1px solid #333333;
  padding: 25px 25px 25px 25px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media only screen and (max-width: 767px) {
  .listbox div.box {
    margin-bottom: 25px;
    padding: 25px 25px 25px 25px;
  }
}
.listbox div.box h3 {
  font-size: 2.3rem;
  font-weight: bold;
  line-height: 1.4;
  color: #5F5F5F;
  text-align: left;
  margin-bottom: 25px;
  text-align: left;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .listbox div.box h3 {
    font-size: 2.2rem;
  }
}
.listbox div.box h3 span.unread {
  position: absolute;
  top: 2px;
  background: #FF9544;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  color: #fff;
  font-weight: bold;
  display: inline-block;
  margin-left: 5px;
  font-size: 1.4rem;
  line-height: 30px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .listbox div.box h3 span.unread {
    top: 0;
  }
}
.listbox div.box p {
  text-align: left;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  margin-bottom: 30px;
}
.listbox div.box a.btn {
  display: block;
  width: 84.6%;
  margin: auto auto 0 auto;
  border: 1px solid #00A67E;
  background: #00A67E;
  border-radius: 20px;
  color: #fff;
  font-size: 1.6rem;
  line-height: 1;
  padding: 10px 0 12px 0;
  text-align: center;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media only screen and (max-width: 1100px) {
  .listbox div.box a.btn {
    width: 90%;
  }
}
.listbox div.box a.btn:before {
  display: none;
}
.listbox div.box a.btn:hover {
  color: #00A67E;
  background: #fff;
  border: 1px solid #00A67E;
}
.listbox div.box.alert {
  border: 1px solid #FF0101;
}
@media only screen and (max-width: 767px) {
  .listbox div.box.alert {
    font-size: 1.4rem;
    text-align: left;
  }
}
.listbox div.box.alert .maru dt {
  color: #FF0101;
  font-size: 2rem;
}
.listbox div.box.alert .maru dt i {
  margin-right: 10px;
}

/* .joblist .applylist .apply_detail flow_select
=========================================== */
span.icon_unread {
  display: inline-block;
  border-radius: 50%;
  background: #FF9544;
  color: #fff !important;
  font-weight: bold;
  line-height: 23px;
  text-align: center;
  width: 25px;
  height: 25px;
  font-size: 12px;
  margin: 0 3px;
}

.icon_btn {
  position: relative;
}
.icon_btn span.icon_unread {
  position: absolute;
  top: -7px;
  right: 10px;
}
@media only screen and (max-width: 1100px) {
  .icon_btn span.icon_unread {
    top: -6px;
    right: 5px;
  }
}

@media only screen and (max-width: 1100px) {
  .detail_btn .icon_btn span.icon_unread {
    top: 5px;
  }
}

.joblist > li, .applylist > li {
  border: 1px solid #ccc;
  margin-bottom: 25px;
}
.joblist > li .listhead, .applylist > li .listhead {
  background: #f5f7f7;
  padding: 0 20px 0 20px;
  border-bottom: 1px solid #ccc;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width: 767px) {
  .joblist > li .listhead, .applylist > li .listhead {
    padding: 10px 5px 5px 10px;
  }
}
@media only screen and (max-width: 767px) {
  .joblist > li .listhead > div, .applylist > li .listhead > div {
    width: 100%;
    text-align: left;
  }
}
.joblist > li .listhead div .status, .applylist > li .listhead div .status {
  background: #fde53b;
  color: #fff;
  display: inline-block;
  padding: 5px 10px 7px 10px;
  line-height: 1;
  font-weight: bold;
}
.joblist > li .listhead div .status.status2, .applylist > li .listhead div .status.status2 {
  background: #ed2121;
}
.joblist > li .listhead div .status.status3, .applylist > li .listhead div .status.status3 {
  background: #000;
}
.joblist > li .listhead div .status.status4, .applylist > li .listhead div .status.status4 {
  background: #000;
}
.joblist > li .listhead div .number, .applylist > li .listhead div .number {
  font-weight: bold;
  margin-left: 10px;
}
.joblist > li .listhead div .closing, .applylist > li .listhead div .closing {
  margin-right: 15px;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .joblist > li .listhead div .closing, .applylist > li .listhead div .closing {
    font-size: 1.4rem;
    margin-right: 8px;
  }
}
.joblist > li .listhead div .closing strong, .applylist > li .listhead div .closing strong {
  font-size: 1.8em;
}
@media only screen and (max-width: 767px) {
  .joblist > li .listhead div .closing strong, .applylist > li .listhead div .closing strong {
    font-size: 1.6rem;
  }
}
.joblist > li .listhead div .date, .applylist > li .listhead div .date {
  padding: 10px 0;
  display: inline-block;
}
@media only screen and (max-width: 767px) {
  .joblist > li .listhead div .date, .applylist > li .listhead div .date {
    font-size: 1.4rem;
  }
}

@media only screen and (max-width: 767px) {
  .applylist li .listhead.flex {
    padding: 5px 10px 3px 15px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .applylist li .listhead.flex > div {
    width: auto;
  }
}
.listbtm {
  padding: 20px 20px 15px 20px;
}
@media only screen and (max-width: 767px) {
  .listbtm {
    padding: 15px;
  }
}
.listbtm .photo {
  width: 21%;
}
@media only screen and (max-width: 767px) {
  .listbtm .photo {
    width: 80%;
    text-align: center;
    margin: 5px auto;
  }
}
.listbtm table.outline {
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .listbtm table.outline {
    width: 100%;
    margin-bottom: 10px;
  }
}
.listbtm ul, .listbtm div.detail_btn {
  width: 23%;
}
@media only screen and (max-width: 767px) {
  .listbtm ul, .listbtm div.detail_btn {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

@media only screen and (max-width: 767px) {
  .listbtm ul li, div.detail_btn li {
    width: 50%;
  }
}
.listbtm ul > div, div.detail_btn > div {
  width: 100%;
}
.listbtm ul li a, .listbtm ul div a, .listbtm ul li button, .listbtm ul div button, div.detail_btn li a, div.detail_btn div a, div.detail_btn li button, div.detail_btn div button {
  width: 100%;
  display: block;
  background: #fff;
  color: #00A67E;
  border: 1px solid #00A67E;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
  font-weight: bold;
  text-align: center;
  line-height: 1;
  padding: 15px 0;
  border-radius: 26px;
  margin-bottom: 15px;
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .listbtm ul li a, .listbtm ul div a, .listbtm ul li button, .listbtm ul div button, div.detail_btn li a, div.detail_btn div a, div.detail_btn li button, div.detail_btn div button {
    font-size: 1.4rem;
    padding: 15px 5px;
    margin: 10px 10px 5px 0;
  }
}
.listbtm ul li a i, .listbtm ul div a i, .listbtm ul li button i, .listbtm ul div button i, div.detail_btn li a i, div.detail_btn div a i, div.detail_btn li button i, div.detail_btn div button i {
  margin-right: 10px;
}
.listbtm ul li a:before, .listbtm ul div a:before, .listbtm ul li button:before, .listbtm ul div button:before, div.detail_btn li a:before, div.detail_btn div a:before, div.detail_btn li button:before, div.detail_btn div button:before {
  display: none;
}
.listbtm ul li a:hover, .listbtm ul li a:disabled, .listbtm ul div a:hover, .listbtm ul div a:disabled, .listbtm ul li button:hover, .listbtm ul li button:disabled, .listbtm ul div button:hover, .listbtm ul div button:disabled, div.detail_btn li a:hover, div.detail_btn li a:disabled, div.detail_btn div a:hover, div.detail_btn div a:disabled, div.detail_btn li button:hover, div.detail_btn li button:disabled, div.detail_btn div button:hover, div.detail_btn div button:disabled {
  opacity: 0.8;
}

.applylist .listbtm table.outline {
  width: 70%;
}
@media only screen and (max-width: 767px) {
  .applylist .listbtm table.outline {
    width: 100%;
  }
}
.applylist .listbtm table.outline thead span {
  display: inline-block;
  margin-right: 15px;
}
.applylist .listbtm table.outline thead span.a_name {
  font-weight: bold;
  font-size: 1.8rem;
  margin-bottom: 10px;
}

table.outline {
  text-align: left;
}
@media only screen and (max-width: 767px) {
  table.outline {
    width: 100%;
  }
}
table.outline th {
  text-align: left;
  font-weight: normal;
  font-size: 1.5rem;
  width: 80px;
}
@media only screen and (max-width: 767px) {
  table.outline th {
    width: 70px;
    font-size: 1.4rem;
  }
}
table.outline td {
  text-align: left;
  font-size: 1.5rem;
  padding-bottom: 0.3em;
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  table.outline td {
    font-size: 1.4rem;
  }
}

.joblist > li.stopping, .applylist > li.stopping {
  background: #f5f7f7;
}
.joblist > li.stopping .listhead .number, .joblist > li.stopping .listhead .date, .applylist > li.stopping .listhead .number, .applylist > li.stopping .listhead .date {
  color: #c8c8c8;
}
.joblist > li.stopping .listbtm, .applylist > li.stopping .listbtm {
  background: #f5f7f7;
}

#logo-thumbnail {
  max-width: 200px;
  height: auto;
}

@media only screen and (max-width: 767px) {
  ul.flex.stopbtnset {
    width: 100%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
@media only screen and (max-width: 767px) {
  ul.flex.stopbtnset li {
    width: 50%;
  }
}
ul.flex.stopbtnset li a, ul.flex.stopbtnset li button, ul.flex.stopbtnset .stop {
  display: block;
  background: #00A67E;
  color: #fff;
  font-weight: bold;
  text-align: center;
  line-height: 1;
  padding: 15px 30px;
  border-radius: 26px;
  margin: 10px 0 10px 10px;
  border: none;
  cursor: pointer;
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  ul.flex.stopbtnset li a, ul.flex.stopbtnset li button, ul.flex.stopbtnset .stop {
    font-size: 1.4rem;
    padding: 15px 5px;
    margin: 10px 10px 5px 0;
  }
}
ul.flex.stopbtnset li a:before, ul.flex.stopbtnset li button:before, ul.flex.stopbtnset .stop:before {
  display: none;
}
ul.flex.stopbtnset li a:hover, ul.flex.stopbtnset li button:hover, ul.flex.stopbtnset .stop:hover {
  opacity: 0.8;
}
ul.flex.stopbtnset .stop, ul.flex.stopbtnset li a.modalbtn1 {
  background: #999;
}

.apply_detail {
  border: 1px solid #ccc;
  margin-top: -1px;
  font-size: 1.5rem;
}
.apply_detail > div {
  padding: 15px 0 10px 0;
}
.apply_detail > div:nth-child(1) {
  width: 15%;
  background: #f5f7f7;
  border-right: 1px solid #ccc;
  font-size: 1.5rem;
  font-weight: bold;
}
.apply_detail > div:nth-child(2) {
  width: 58%;
  padding-left: 2%;
  padding-right: 2%;
}
.apply_detail > div:nth-child(2).step_wrap {
  width: 85%;
}
.apply_detail > div:nth-child(3) {
  width: 22.5%;
}
.apply_detail textarea {
  width: 100%;
  height: 200px;
  font-size: 1.6rem;
  padding: 1em 0.6em;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
  border: 1px solid #aaaaaa;
  margin-bottom: 2px;
}
@media screen and (max-width: 767px) {
  .apply_detail textarea {
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  .apply_detail {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .apply_detail > div:nth-child(1) {
    width: 100%;
    border-bottom: 1px solid #ccc;
    border-right: none;
  }
  .apply_detail > div:nth-child(2), .apply_detail > div:nth-child(3) {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
  .apply_detail > div:nth-child(3) {
    padding-bottom: 20px;
    padding-top: 0;
  }
}
.apply_detail .listbtm .photo {
  width: 34%;
}
@media only screen and (max-width: 768px) {
  .apply_detail .listbtm .photo {
    width: 80%;
    text-align: center;
    margin: 5px auto;
  }
}
.apply_detail .listbtm .photo img {
  aspect-ratio: 17/9;
  -o-object-fit: cover;
     object-fit: cover;
  height: auto;
}
.apply_detail .listbtm table.outline {
  width: 63%;
  font-weight: normal;
}
@media only screen and (max-width: 768px) {
  .apply_detail .listbtm table.outline {
    width: 94%;
    margin: 10px 3%;
  }
}

.msg_btn_set {
  text-align: center;
  margin: 50px auto 0 auto;
}
@media only screen and (max-width: 767px) {
  .msg_btn_set {
    margin: 30px auto 0 auto;
  }
}
.msg_btn_set .flex {
  text-align: center;
  margin: 40px auto 60px auto;
  width: 95%;
}
@media only screen and (max-width: 767px) {
  .msg_btn_set .flex {
    width: 100%;
    margin: 20px auto 40px auto;
  }
}
.msg_btn_set .btn_q, .msg_btn_set .btn_pass, .msg_btn_set .btn_fail {
  display: inline-block;
  min-width: 320px;
  color: #00A67E;
  border: 2px solid #00A67E;
  background: #fff;
  border-radius: 40px;
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  padding: 18px 0px;
  position: relative;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.msg_btn_set .btn_q:hover, .msg_btn_set .btn_pass:hover, .msg_btn_set .btn_fail:hover {
  background-color: #00A67E;
  border-color: #00A67E;
  color: #fff;
}
.msg_btn_set .btn_q:before, .msg_btn_set .btn_pass:before, .msg_btn_set .btn_fail:before {
  display: none;
}
@media only screen and (max-width: 767px) {
  .msg_btn_set .btn_q, .msg_btn_set .btn_pass, .msg_btn_set .btn_fail {
    width: 100%;
    min-width: 240px;
    font-size: 1.6rem;
  }
}
.msg_btn_set .btn_pass, .msg_btn_set .btn_fail {
  min-width: 49%;
  color: #fff;
  border: 2px solid #00A67E;
  background: #00A67E;
  border-radius: 30px;
  font-size: 2.4rem;
  padding: 30px 0px;
}
.msg_btn_set .btn_pass:hover, .msg_btn_set .btn_fail:hover {
  background-color: #fff;
  border-color: #00A67E;
  color: #00A67E;
}
@media only screen and (max-width: 767px) {
  .msg_btn_set .btn_pass, .msg_btn_set .btn_fail {
    width: 100%;
    min-width: 240px;
    font-size: 1.6rem;
  }
}
.msg_btn_set .btn_fail {
  background: #999;
  border: 2px solid #999;
}
@media only screen and (max-width: 767px) {
  .msg_btn_set .btn_fail {
    margin-top: 20px;
  }
}

.flow_select {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  .flow_select {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.flow_select > select {
  padding: 9px 35px 9px 9px;
  border: 1px solid #aaaaaa;
  color: #333;
  font-size: 1.6rem;
  background: #fff url(/assets/img/admin/icon_arrow_down.png) right 7px center no-repeat;
  background-size: 10px auto;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
}

.notfound {
  background: #eeeeee;
  padding: 50px 0;
}

/*STEP****************************/
.step_wrap {
  overflow: scroll;
}
@media only screen and (max-width: 768px) {
  .step_wrap {
    width: calc(100vw - 80px);
  }
}
.step_wrap > div {
  min-width: 600px;
  text-align: left;
}
.step_wrap > div .status {
  background: #fde53b;
  color: #fff;
  display: inline-block;
  padding: 5px 10px 7px 10px;
  line-height: 1;
  font-weight: bold;
  margin-bottom: 10px;
}
.step_wrap > div .status.status2 {
  background: #ed2121;
}
.step_wrap > div .status.status3 {
  background: #000;
}
.step_wrap > div .status.status4 {
  background: #000;
}
.step_wrap > div > div > p {
  font-size: 1.2rem;
  background: #eaeaea;
  width: 100%;
  padding: 5px 13px;
  border-bottom: 1px solid #fff;
}
.step_wrap > div > div > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.step_wrap > div > div > div .step {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  width: 80%;
  padding-top: 24px;
  text-align: center;
  background: #eaeaea;
}
.step_wrap > div > div > div .step.step2 {
  width: 20%;
  border-left: 1px solid #fff;
}
.step_wrap > div > div > div .step.border:before {
  content: "";
  width: 90%;
  height: 9px;
  background: #ccc;
  position: absolute;
  top: 31px;
  left: 5%;
}
.step_wrap > div > div > div .step.step2 label {
  width: 50%;
}
.step_wrap > div > div > div .step label {
  position: relative;
  display: block;
  width: 12.5%;
  height: 60px;
}
.company-applicant-show .step_wrap > div > div > div .step label {
  cursor: pointer;
}
.step_wrap > div > div > div .step label:has(input:checked):before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 0 10px 17.3px;
  border-color: transparent transparent transparent #FF9544;
  position: absolute;
  top: -22px;
  right: calc(50% - 16px);
}
.step_wrap > div > div > div .step label:has(input:checked):after {
  content: "";
  display: block;
  width: 2px;
  height: 15px;
  background: #FF9544;
  position: absolute;
  top: -4px;
  left: calc(50% - 1px);
}
.step_wrap > div > div > div .step label input {
  display: none;
}
.step_wrap > div > div > div .step label input:disabled + span:before {
  background: #ccc;
}
.step_wrap > div > div > div .step label input:checked + span:after {
  content: "";
  display: block;
  width: 14px;
  height: 14px;
  background: #00A67E;
  border-radius: 10px;
  position: absolute;
  top: 4px;
  left: calc(50% - 7px);
}
.step_wrap > div > div > div .step label span {
  display: block;
  font-size: 1.2rem;
  padding-top: 22px;
}
.step_wrap > div > div > div .step label span:before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border: 1px solid #666;
  border-radius: 10px;
  position: absolute;
  top: 0;
  left: calc(50% - 11px);
  background: #fff;
}
.step_wrap > div > div > div .step label span.completed:after {
  content: "";
  display: block;
  width: 14px;
  height: 14px;
  background: #00A67E;
  border-radius: 10px;
  position: absolute;
  top: 4px;
  left: calc(50% - 7px);
}

.company-applicant-message-index .step_wrap {
  margin-top: 60px;
}
.company-applicant-message-index .step_modal .modal-body {
  max-width: 660px;
}
.company-applicant-message-index .step_modal .modal-body .modal-content > p {
  margin-bottom: 10px;
  text-align: center;
  font-weight: bold;
}
.company-applicant-message-index .step_modal .modal-body .modal-content .step_wrap {
  margin-top: 0;
}
.company-applicant-message-index .step_modal .modal-body .modal-content .attention {
  margin-top: 30px;
  font-weight: normal;
  font-size: 0.85em;
  color: #00204c;
  white-space: pre-wrap;
  text-align: left;
  padding: 10px 20px;
  background: #e7f5ff;
}
.company-applicant-message-index .step_modal .modal-body .modal-content .btn_submit {
  margin-top: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (max-width: 768px) {
  .company-applicant-message-index .step_modal .modal-body .modal-content .btn_submit {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.company-applicant-message-index .step_modal .modal-body .modal-content .btn_submit button {
  width: 46%;
  max-width: 220px;
  min-width: 0;
  margin: 0px 1%;
  padding: 0;
  height: 60px;
  border-radius: 30px;
}
@media only screen and (max-width: 768px) {
  .company-applicant-message-index .step_modal .modal-body .modal-content .btn_submit button {
    width: 100%;
    margin-bottom: 10px;
  }
}
.company-applicant-message-index .step_modal .modal-body .modal-content .btn_submit .btn01:disabled {
  opacity: 0.3;
  cursor: default !important;
}
.company-applicant-message-index .step_modal .modal-body .modal-content .btn_submit .btn01:disabled:hover {
  color: #fff;
  border: 2px solid #00A67E;
  background: #00A67E;
}

/*msgBox****************************/
.msgBox {
  max-height: 700px;
  overflow: scroll;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  padding: 20px 40px 20px 20px;
}
@media only screen and (max-width: 768px) {
  .msgBox {
    padding: 15px 15px 10px 15px;
  }
}
.msgBox > li.flex {
  margin-bottom: 25px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width: 768px) {
  .msgBox > li.flex {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.msgBox > li.flex > figure {
  width: 82px;
  height: 82px;
  background: #E6E6E6;
  border-radius: 50%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width: 768px) {
  .msgBox > li.flex > figure {
    width: 52px;
    height: 52px;
  }
}
.msgBox > li.flex > figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: 41px;
}
.msgBox > li.flex > figure span {
  font-size: 30px;
  padding-bottom: 4px;
}
.msgBox > li.flex > div {
  width: calc(100% - 100px);
}
@media only screen and (max-width: 768px) {
  .msgBox > li.flex > div {
    width: calc(100% - 70px);
  }
}
.msgBox > li.flex > div > div.flex {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.msgBox > li.flex > div > div.flex > dl {
  font-weight: bold;
  width: 100%;
  text-align: left;
}
@media only screen and (max-width: 768px) {
  .msgBox > li.flex > div > div.flex > dl {
    width: 100%;
  }
}
.msgBox > li.flex > div > div.flex > dl > dt {
  font-size: 1.6rem;
  margin-bottom: 0px;
}
@media only screen and (max-width: 768px) {
  .msgBox > li.flex > div > div.flex > dl > dt {
    font-size: 1.6rem;
  }
}
.msgBox > li.flex > div > div.flex > dl > dt span {
  background: #FF9544;
  color: #fff;
  font-weight: bold;
  font-size: 1.5rem;
  line-height: 1;
  padding: 1px 5px;
  margin-left: 10px;
}
.msgBox > li.flex > div > div.flex > dl > dd {
  font-size: 1.4rem;
}
.msgBox > li.flex > div > div.flex p {
  text-align: right;
  width: 100%;
  font-size: 1.4rem;
}
@media only screen and (max-width: 768px) {
  .msgBox > li.flex > div > div.flex p {
    margin-top: 5px;
  }
}

.msgBox > li.flex > div.balloon {
  position: relative;
  padding: 20px;
  background: #EDF1F2;
  text-align: left;
  margin-top: 15px;
  margin-bottom: 5px;
  border-radius: 10px;
}
@media only screen and (max-width: 768px) {
  .msgBox > li.flex > div.balloon {
    width: calc(100% - 30px);
  }
}
.msgBox > li.flex > div.balloon p {
  margin-bottom: 15px;
}
.msgBox > li.flex > div.balloon p.read {
  text-align: right;
  font-size: 1.4rem;
  font-weight: bold;
  margin-bottom: 0;
}

.msgBox > li.flex > div.balloon::before {
  content: "";
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  left: -12px;
  top: 20px;
  border-right: 15px solid #EDF1F2;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
}

.msgBox > li.flex.admin > div.balloon {
  background: #cfe2f3;
}
.msgBox > li.flex.admin > div.balloon:before {
  left: -12px;
  border-right: 15px solid #cfe2f3;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
}

.msgBox > li.flex.company > div.balloon {
  background: #d0e0e3;
}
.msgBox > li.flex.company > div.balloon:before {
  left: auto;
  right: -12px;
  border-right: none;
  border-left: 15px solid #d0e0e3;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
}

.msgBox > li.flex.user > div.balloon {
  background: #fce5cd;
}
.msgBox > li.flex.user > div.balloon:before {
  left: -12px;
  border-right: 15px solid #fce5cd;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
}

.msgBox > li.admin.flex > figure {
  background: #002067;
}
.msgBox > li.admin.flex > figure span {
  color: #fff;
}

.msgBox > li.user.flex > figure {
  background: #e69138;
}
.msgBox > li.user.flex > figure span {
  color: #fff;
}

.msgBox > li.company.flex {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media only screen and (max-width: 768px) {
  .msgBox > li.company.flex {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
.msgBox > li.company.flex > figure {
  background: #45818e;
}
.msgBox > li.company.flex > figure span {
  color: #fff;
}
.msgBox > li.company.flex > div > div.flex > dl {
  text-align: right;
}

/*send_msg****************************/
.send_msg {
  margin-top: 60px;
}
.send_msg .template-box {
  margin: 0 -40px;
  padding: 10px 40px;
  border-bottom: 2px solid #fff;
}
.send_msg .template-box:after {
  content: "";
  display: block;
  clear: both;
}
.send_msg .template-box select {
  float: left;
  width: 240px;
  height: 40px;
}
@media only screen and (max-width: 767px) {
  .send_msg .template-box select {
    width: 200px;
  }
}
.send_msg .template-box button {
  float: left;
  height: 40px;
  margin-left: 10px;
  border: 1px solid #00A67E;
  color: #00A67E;
  background-color: #fff;
  padding: 0 10px;
}
@media only screen and (max-width: 767px) {
  .send_msg .template-box button span {
    display: none;
  }
}
.send_msg .template-box a {
  float: right;
  padding-top: 8px;
  font-size: 1.3rem;
}
.send_msg .bg_gray {
  background: #EDF1F2;
  padding: 0 40px 30px;
  margin: 20px 0 50px 0;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .send_msg .bg_gray {
    padding: 10px 20px;
  }
}
.send_msg .bg_gray.thanks {
  padding: 30px 40px 30px;
}
.send_msg .bg_gray .form01 {
  width: 100%;
}
.send_msg .bg_gray .form01 table {
  width: 100%;
}
.send_msg .bg_gray .form01 table th {
  padding-top: 20px;
}
.send_msg .bg_gray .form01 table th a {
  float: right;
  font-size: 1.4rem;
}
.send_msg .bg_gray .form01 table textarea {
  height: 400px;
}
.send_msg .bg_gray .form01 .btn_submit {
  margin: 30px auto 50px auto;
}
.send_msg .bg_gray .form01 .btn_submit input[type=submit],
.send_msg .bg_gray .form01 .btn_submit button {
  padding: 25px 0;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
  border-radius: 50px;
}
@media only screen and (max-width: 767px) {
  .send_msg .bg_gray .form01 .btn_submit input[type=submit],
  .send_msg .bg_gray .form01 .btn_submit button {
    min-width: 100%;
  }
}
.send_msg .bg_gray .form01 .btn_submit button.w400 {
  min-width: 400px;
}
@media only screen and (max-width: 767px) {
  .send_msg .bg_gray .form01 .btn_submit button.w400 {
    min-width: 100%;
  }
}
.send_msg .bg_gray .form01 .btn_submit button.back-btn {
  background-color: #fff;
}

/*pagenation****************************/
.pager {
  text-align: center;
  margin: 0 auto;
  width: 100%;
}

.pager .pagenation {
  text-align: center;
  margin: 0 auto;
  width: 100%;
}

.pagenation li {
  margin: 0 auto;
  text-align: center;
  display: inline-block;
}

.pagenation li a {
  background: #00A67E;
  display: inline-block;
  border-radius: 50%;
  color: #fff;
  line-height: 45px;
  width: 48px;
  height: 48px;
  text-align: center;
  text-decoration: none;
  border: 2px solid #00A67E;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  float: left;
  margin-left: 10px;
  margin-right: 10px;
  font-size: 1.4rem;
}
.pagenation li a:before {
  display: none;
}

.pagenation li a.active,
.pagenation li a:hover {
  color: #00A67E;
  border: 2px solid #00A67E;
  background: #fff;
  text-decoration: none;
}

@media screen and (max-width: 767px) {
  .pagenation li a {
    margin-left: 3px;
    margin-right: 3px;
  }
}
/* modal
=========================================== */
/*モーダル本体の指定 + モーダル外側の背景の指定*/
.modal-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  text-align: center;
  background: rgba(0, 0, 0, 0.7);
  padding: 40px 20px;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 2;
}

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

/*モーダル本体に「active」クラス付与した時のスタイル*/
.modal-container.active {
  opacity: 1;
  visibility: visible;
}

/*モーダル枠の指定*/
.modal-body {
  position: relative;
  display: inline-block !important;
  vertical-align: middle;
  max-width: 500px;
  width: 90%;
  max-height: 70vh;
  overflow: scroll;
}
.modal-body .stopbtnset {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.modal-body .stopbtnset button {
  width: calc(100% - 10px);
}

/*モーダルを閉じるボタンの指定*/
.modal-close {
  height: 65px;
  font-size: 40px;
  text-align: right;
  color: #fff;
  cursor: pointer;
}

/*モーダル内のコンテンツの指定*/
.modal-content {
  background: #fff;
  text-align: left;
  padding: 30px;
}

.company-register .modal-body {
  max-width: 800px;
}
/* notification
=========================================== */
.notification {
  border: 3px solid #ff7700;
  padding: 10px;
  margin-bottom: 30px;
  font-weight: bold;
  color: #ff7700;
  background-color: #f5f7f7;
}

.notification-for-js {
  position: fixed;
  top: 90px;
  right: 0;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  z-index: 3;
}
.notification-for-js div {
  padding: 10px 20px;
  background-color: #b7b7b7;
  color: #000;
}
.notification-for-js div a {
  color: #000;
  text-decoration: none;
  margin-left: 50px;
  cursor: pointer;
}
.notification-for-js div a:before {
  content: none;
}

/* loginpage
=========================================== */
.listlogo {
  margin-bottom: 30px;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 30px;
}
@media only screen and (max-width: 767px) {
  .listlogo {
    margin-top: 20px;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 10px;
  }
}
.listlogo li a {
  display: block;
}
.listlogo li a:before {
  display: none;
}
.listlogo li:first-child {
  margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
  .listlogo li:first-child {
    margin-bottom: 0;
  }
}
.listlogo li:first-child a img {
  height: 22px;
  width: auto;
}
@media only screen and (max-width: 767px) {
  .listlogo li:first-child a img {
    height: 18px;
  }
}
.listlogo li:last-child a img {
  height: 24px;
  width: auto;
}
@media only screen and (max-width: 767px) {
  .listlogo li:last-child a img {
    height: 19px;
  }
}

body.loginpage {
  background: #EDF1F2;
  text-align: center;
  margin: 0 auto;
}
body.loginpage .loginlogo {
  width: 351px;
  margin: 70px auto 40px auto;
}
@media only screen and (max-width: 767px) {
  body.loginpage .loginlogo {
    width: 300px;
    height: auto;
    margin: 20px auto 15px auto;
  }
}
body.loginpage a.onecollogo:before {
  display: none;
}
body.loginpage .notification {
  border: none;
  background-color: transparent;
}
body.loginpage .in {
  width: 90%;
  max-width: 520px;
  background: #fff;
  padding: 33px 0 60px 0;
  text-align: center;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  body.loginpage .in {
    padding: 20px 0 40px 0;
  }
}
body.loginpage .in div.pass {
  margin-top: 22px;
}
@media only screen and (max-width: 767px) {
  body.loginpage .in div.pass {
    margin-top: 15px;
  }
}
body.loginpage .in div.autologin {
  margin-top: 40px;
  margin-bottom: 20px;
  margin-left: 12px;
  text-align: left;
}
body.loginpage .in h1 {
  font-size: 2rem;
  margin: 0 auto 39px auto;
}
@media only screen and (max-width: 767px) {
  body.loginpage .in h1 {
    font-size: 1.6rem;
    margin: 0 auto 15px auto;
  }
}
body.loginpage .in span {
  font-size: 2rem;
}
@media (max-width: 768px) {
  body.loginpage .in span {
    font-size: 1.4rem;
    margin-bottom: 6px;
  }
}
body.loginpage .in p {
  text-align: left;
  margin-bottom: 5px;
}
body.loginpage .in p.exposition {
  margin-bottom: 20px;
}
body.loginpage .in p.kome {
  margin-top: 5px;
  padding-bottom: 10px;
  font-size: 1.4rem;
}

.loginform {
  width: 82%;
  text-align: center;
  margin: 0 auto;
}
.loginform input[type=text],
.loginform input[type=email],
.loginform input[type=password] {
  width: 100%;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
  padding: 10px 8px;
  font-size: 16px;
  border: 1px solid #707070;
}
.loginform .autologin label {
  display: block;
  cursor: pointer;
}
.loginform .autologin label input[type=checkbox] {
  visibility: hidden;
  position: absolute;
}
.loginform .autologin label input[type=checkbox]:checked + span:after {
  opacity: 1;
}
.loginform .autologin span {
  line-height: 23px;
  position: relative;
  padding-left: 26px;
  display: block;
}
@media screen and (max-width: 767px) {
  .loginform .autologin span {
    line-height: 30px;
  }
}
.loginform .autologin span:before {
  content: "";
  position: absolute;
  left: -12px;
  top: 0;
  width: 25px;
  height: 25px;
  background-color: #fff;
  border: 1px solid #707070;
}
@media screen and (max-width: 767px) {
  .loginform .autologin span:before {
    top: 3px;
  }
}
.loginform .autologin span:after {
  content: "";
  position: absolute;
  left: -6px;
  top: 6px;
  width: 13px;
  height: 7px;
  background: #fff;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  border-bottom: 3px solid;
  border-left: 3px solid;
  opacity: 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
@media screen and (max-width: 767px) {
  .loginform .autologin span:after {
    top: 9px;
  }
}
.loginform .btn_submit {
  text-align: center;
  margin: 30px auto 0 auto;
}
@media only screen and (max-width: 767px) {
  .loginform .btn_submit {
    margin-top: 15px;
  }
}
.loginform .btn_submit input[type=submit], .loginform .btn_submit button.loginbtn {
  display: inline-block;
  min-width: 320px;
  color: #fff;
  line-height: 1.6;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
  border: 2px solid #00A67E;
  background: #00A67E;
  border-radius: 30px;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
  padding: 12px 0px;
  position: relative;
  outline: none;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.loginform .btn_submit input[type=submit]:hover, .loginform .btn_submit button.loginbtn:hover {
  background-color: #fff;
  border-color: #00A67E;
  color: #00A67E;
}
@media only screen and (max-width: 767px) {
  .loginform .btn_submit input[type=submit], .loginform .btn_submit button.loginbtn {
    width: 100%;
    min-width: 240px;
    max-width: 260px;
    font-size: 1.6rem;
  }
}
.loginform .btn_submit .registerbtn {
  display: inline-block;
  min-width: 320px;
  line-height: 1.8;
  color: #fff;
  background: -webkit-gradient(linear, right top, left top, from(#FD904D), to(#FC686E));
  background: -webkit-linear-gradient(right, #FD904D 0%, #FC686E 100%);
  background: linear-gradient(270deg, #FD904D 0%, #FC686E 100%);
  border-radius: 30px;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
  padding: 12px 0px;
  position: relative;
  outline: none;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.loginform .btn_submit .registerbtn:hover {
  opacity: 0.7;
}
.loginform .btn_submit .registerbtn:before {
  display: none;
}
@media only screen and (max-width: 767px) {
  .loginform .btn_submit .registerbtn {
    width: 100%;
    min-width: 240px;
    max-width: 260px;
    font-size: 1.6rem;
  }
}
.loginform .btn_submit .btn_bluebord {
  display: inline-block;
  min-width: 320px;
  color: #fff;
  background: #00A67E;
  line-height: 1.6;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
  border: none;
  border-radius: 30px;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
  padding: 12px 0px;
  position: relative;
  outline: none;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.loginform .btn_submit .btn_bluebord:hover {
  background-color: #00A67E;
  color: #fff;
  opacity: 0.7;
}
@media only screen and (max-width: 767px) {
  .loginform .btn_submit .btn_bluebord {
    width: 100%;
    min-width: 240px;
    max-width: 260px;
    font-size: 1.6rem;
  }
}
.loginform .link {
  text-align: center;
  margin: 25px auto 0 auto;
  font-size: 1.4rem;
}
.loginform .pass .link {
  text-align: left;
  margin: 10px 0 0 0;
}

.cost {
  display: block;
  margin-top: 10px;
  font-weight: bold;
}
@media only screen and (max-width: 400px) {
  .cost {
    font-size: 1.4rem;
  }
}
.cost span {
  font-size: 1.2rem;
}

.flex-textarea {
  position: relative;
  font-size: 1.4rem;
  line-height: 1.8;
}
.flex-textarea .flex-textarea-dummy {
  overflow: hidden;
  visibility: hidden;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 5px 15px;
  min-height: 120px;
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow-wrap: break-word;
  border: 1px solid;
}
.flex-textarea .flex-textarea-textarea {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  overflow: hidden;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 5px 15px;
  width: 100%;
  height: 100%;
  background-color: transparent;
  border: 1px solid #b6c3c6;
  border-radius: 4px;
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
  resize: none;
}
.flex-textarea .flex-textarea-textarea:focus {
  -webkit-box-shadow: 0 0 0 4px rgba(35, 167, 195, 0.3);
          box-shadow: 0 0 0 4px rgba(35, 167, 195, 0.3);
  outline: 0;
}

/* 入社日申請
=========================================== */
.company-applicant-request-create .apply_detail > div:nth-child(1) {
  width: 100%;
  background: #fff;
}
.company-applicant-request-create .apply_detail .resultBox {
  padding: 0 20px 40px 20px;
}

.apply_text {
  font-size: 1.4rem;
  text-align: left;
  margin-bottom: 30px;
}
.apply_text > p:first-child {
  margin-bottom: 5px;
}
.apply_text > a {
  color: #00A67E;
}
.apply_text .ttl {
  margin-bottom: 0.6em;
}

/* 求人票一括登録確認画面
=========================================== */
.company-job-bulk-regist-confirm .table-wrap {
  overflow: scroll;
}
.company-job-bulk-regist-confirm .table-wrap table {
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
}
.company-job-bulk-regist-confirm .table-wrap table th {
  word-break: keep-all;
  font-size: 1.2rem;
}
.company-job-bulk-regist-confirm .table-wrap table th, .company-job-bulk-regist-confirm .table-wrap table td {
  word-wrap: normal;
  padding: 10px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  font-size: 1.3rem;
}
.company-job-bulk-regist-confirm .table-wrap table th.nowrap, .company-job-bulk-regist-confirm .table-wrap table td.nowrap {
  white-space: nowrap;
}
.company-job-bulk-regist-confirm .table-wrap table th.w300, .company-job-bulk-regist-confirm .table-wrap table td.w300 {
  min-width: 300px;
  max-width: 300px;
}
.company-job-bulk-regist-confirm .table-wrap table th.w500, .company-job-bulk-regist-confirm .table-wrap table td.w500 {
  min-width: 500px;
  max-width: 500px;
}
.company-job-bulk-regist-confirm .table-wrap table th.ta-left, .company-job-bulk-regist-confirm .table-wrap table td.ta-left {
  text-align: left;
}
.company-job-bulk-regist-confirm .table-wrap table th .error, .company-job-bulk-regist-confirm .table-wrap table td .error {
  border: 2px solid #f00;
  background: rgba(255, 0, 0, 0.1098039216);
  text-align: center;
  color: #f00;
  padding: 0 5px;
}

/* 求人掲載までの流れ
=========================================== */
.register_flo.flex.flex-between.col_3 > div {
  background: #EDF1F2;
  padding: 15px 0 20px 0;
}
.register_flo.flex.flex-between.col_3 > div a:before {
  display: none;
}
.register_flo.flex.flex-between.col_3 > div a:hover {
  opacity: 0.7;
}
@media only screen and (max-width: 767px) {
  .register_flo.flex.flex-between.col_3 > div {
    padding: 10px 0;
    margin-bottom: 20px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.register_flo.flex.flex-between.col_3 > div.arrow {
  position: relative;
}
.register_flo.flex.flex-between.col_3 > div.arrow:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  margin-top: -15px;
  border: 15px solid transparent;
  border-left: 15px solid #EDF1F2;
}
@media only screen and (max-width: 767px) {
  .register_flo.flex.flex-between.col_3 > div.arrow:before {
    display: none;
  }
  .register_flo.flex.flex-between.col_3 > div.arrow:after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #EDF1F2;
  }
}
.register_flo.flex.flex-between.col_3 dt {
  color: #aaa;
  font-weight: bold;
  font-size: 1.6rem;
  vertical-align: bottom;
}
@media only screen and (max-width: 960px) {
  .register_flo.flex.flex-between.col_3 dt {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .register_flo.flex.flex-between.col_3 dt {
    font-size: 1.4rem;
    text-align: left;
    padding: 0 20px;
  }
}
@media (max-width: 767px) {
  .register_flo.flex.flex-between.col_3 dt span {
    display: none;
  }
}
.register_flo.flex.flex-between.col_3 dd {
  text-align: center;
  color: #aaa;
}
@media (max-width: 767px) {
  .register_flo.flex.flex-between.col_3 dd {
    text-align: left;
  }
}
.register_flo.flex.flex-between.col_3 dd p {
  position: relative;
  margin-bottom: 30px;
}
@media (max-width: 767px) {
  .register_flo.flex.flex-between.col_3 dd p {
    margin-bottom: 5px;
  }
}
.register_flo.flex.flex-between.col_3 dd p:after {
  content: "";
  width: 1px;
  height: 15px;
  position: absolute;
  bottom: -20px;
  left: 0;
  right: 0;
  margin: 0 auto;
  background: #aaa;
}
@media (max-width: 767px) {
  .register_flo.flex.flex-between.col_3 dd p:after {
    display: none;
  }
}
.register_flo.flex.flex-between.col_3 dd span {
  display: block;
  font-size: 1.3rem;
  padding: 0 10px;
  margin-top: 5px;
  line-height: 1.6;
}
@media only screen and (max-width: 1100px) {
  .register_flo.flex.flex-between.col_3 dd span {
    text-align: left;
  }
  .register_flo.flex.flex-between.col_3 dd span br {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .register_flo.flex.flex-between.col_3 dd span {
    padding: 0 10px 0 0;
  }
}
.register_flo.flex.flex-between.col_3 > div.now {
  background: #EDF1F2;
}
.register_flo.flex.flex-between.col_3 > div.now dt {
  color: #00A67E;
}
.register_flo.flex.flex-between.col_3 > div.now dd {
  color: #5F5F5F;
}
.register_flo.flex.flex-between.col_3 > div.now dd p {
  font-weight: 600;
}
.register_flo.flex.flex-between.col_3 > div:nth-of-type(2) a {
  color: #FF0000;
}
.register_flo.flex.flex-between.col_3 > div:nth-of-type(2) a .underline {
  font-size: 1.6rem;
  position: relative;
  display: inline-block;
  margin-top: 15px;
}
.register_flo.flex.flex-between.col_3 > div:nth-of-type(2) a .underline:before {
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: #FF0000;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  opacity: 1;
}

/* 求人掲載までの流れ
=========================================== */
.company-template-index .h1-wrap {
  position: relative;
}
.company-template-index .h1-wrap a.btn {
  position: absolute;
  top: 8px;
  right: 0;
  display: block;
  width: 210px;
  margin: auto auto 0 auto;
  border: 1px solid #00A67E;
  background: #00A67E;
  border-radius: 20px;
  color: #fff;
  font-size: 1.6rem;
  line-height: 1;
  padding: 10px 0 12px 0;
  text-align: center;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media only screen and (max-width: 767px) {
  .company-template-index .h1-wrap a.btn {
    width: 100px;
  }
  .company-template-index .h1-wrap a.btn > span {
    display: none;
  }
}
.company-template-index .h1-wrap a.btn:before {
  display: none;
}
.company-template-index .h1-wrap a.btn:hover {
  color: #00A67E;
  background: #fff;
  border: 1px solid #00A67E;
}
.company-template-index table.listtbl01 {
  width: 100%;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
}
.company-template-index table.listtbl01 tr.stop td {
  background-color: #f5f5f5;
}
.company-template-index table.listtbl01 tr th, .company-template-index table.listtbl01 tr td {
  padding: 15px 15px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  vertical-align: middle;
  white-space: nowrap;
}
.company-template-index table.listtbl01 tr th:last-child, .company-template-index table.listtbl01 tr th.br-none, .company-template-index table.listtbl01 tr td:last-child, .company-template-index table.listtbl01 tr td.br-none {
  border-right: none;
}
.company-template-index table.listtbl01 tr th.ta-left, .company-template-index table.listtbl01 tr td.ta-left {
  text-align: left;
}
.company-template-index table.listtbl01 tr th.ws-normal, .company-template-index table.listtbl01 tr td.ws-normal {
  white-space: normal;
}
.company-template-index table.listtbl01 tr th p, .company-template-index table.listtbl01 tr th a, .company-template-index table.listtbl01 tr td p, .company-template-index table.listtbl01 tr td a {
  white-space: nowrap;
}
.company-template-index table.listtbl01 tr th p.small, .company-template-index table.listtbl01 tr td p.small {
  font-size: 1.2rem;
  margin-bottom: -8px;
}
.company-template-index table.listtbl01 tr th p + p.small, .company-template-index table.listtbl01 tr td p + p.small {
  margin-top: -8px;
  margin-bottom: 0;
}
.company-template-index table.listtbl01 tr th .btn, .company-template-index table.listtbl01 tr td .btn {
  display: inline-block;
  color: #00A67E;
  background: #fff;
  border: 1px solid #00A67E;
  font-weight: bold;
  text-align: center;
  line-height: 1;
  padding: 7px 20px;
  border-radius: 26px;
  font-size: 1.6rem;
  cursor: pointer;
}
.company-template-index table.listtbl01 tr th .btn:before, .company-template-index table.listtbl01 tr td .btn:before {
  content: none;
}
.company-template-index table.listtbl01 tr th .btn:hover, .company-template-index table.listtbl01 tr td .btn:hover {
  opacity: 0.8;
}
.company-template-index table.listtbl01 tr th .btn2, .company-template-index table.listtbl01 tr td .btn2 {
  color: #999;
  border: 1px solid #999;
  margin-left: 10px;
}
.company-template-index table.listtbl01 tr th .flex, .company-template-index table.listtbl01 tr td .flex {
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
}

.company-template-create p.small,
.company-template-edit p.small {
  text-align: right;
}
.company-template-create p.small span,
.company-template-edit p.small span {
  font-weight: bold;
}

/* タイトル (sec_title)
================================= */
.sec_title {
  margin-bottom: 50px;
  text-align: center;
}
@media (max-width: 768px) {
  .sec_title {
    margin-bottom: 40px;
  }
}
.sec_title h1, .sec_title h2, .sec_title h3 {
  font-size: 3.2rem;
  font-weight: bold;
  color: #333333;
  line-height: 1.5;
  display: block;
}
@media (max-width: 768px) {
  .sec_title h1, .sec_title h2, .sec_title h3 {
    font-size: 2.4rem;
  }
}
.sec_title span {
  display: block;
  font-size: 2.4rem;
  font-weight: bold;
  display: inline-block;
  text-transform: uppercase;
  line-height: 1;
  margin-bottom: 12px;
}
@media (max-width: 768px) {
  .sec_title span {
    font-size: 1.8rem;
  }
}

/* スキルシート
=========================================== */
.admin-charge-edit .skill-head,
.admin-applicant-show .skill-head,
.company-applicant-show .skill-head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-left: 215px;
  margin-bottom: 10px;
}
.admin-charge-edit .skill-head p,
.admin-applicant-show .skill-head p,
.company-applicant-show .skill-head p {
  color: #999;
  width: 20%;
  margin-right: 5px;
  font-size: 1.4rem;
  text-align: center;
  position: relative;
}
.admin-charge-edit .skill-head p:before,
.admin-applicant-show .skill-head p:before,
.company-applicant-show .skill-head p:before {
  content: "";
  display: block;
  width: 100%;
  height: 3px;
  background-color: #999;
  position: absolute;
  bottom: -3px;
}
.admin-charge-edit .skill-head p:after,
.admin-applicant-show .skill-head p:after,
.company-applicant-show .skill-head p:after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 5px;
  background: #999;
  position: absolute;
  bottom: -6px;
  right: 0;
}
.admin-charge-edit .skill-and-level li,
.admin-applicant-show .skill-and-level li,
.company-applicant-show .skill-and-level li {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.admin-charge-edit .skill-and-level li.skill-and-level-template,
.admin-applicant-show .skill-and-level li.skill-and-level-template,
.company-applicant-show .skill-and-level li.skill-and-level-template {
  display: none;
}
.admin-charge-edit .skill-and-level li p,
.admin-applicant-show .skill-and-level li p,
.company-applicant-show .skill-and-level li p {
  width: 200px;
}
.admin-charge-edit .skill-and-level li div,
.admin-applicant-show .skill-and-level li div,
.company-applicant-show .skill-and-level li div {
  width: calc(100% - 200px);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 10px 0;
}
.admin-charge-edit .skill-and-level li div button,
.admin-applicant-show .skill-and-level li div button,
.company-applicant-show .skill-and-level li div button {
  border: none;
  position: relative;
  background-color: #ccc;
  color: #fff;
  font-size: 18px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
  height: 24px;
  width: calc(20% - 11px);
  margin-right: 12px;
}
.admin-charge-edit .skill-and-level li div button::before,
.admin-applicant-show .skill-and-level li div button::before,
.company-applicant-show .skill-and-level li div button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  border-top: solid 12px transparent;
  border-bottom: solid 12px transparent;
  border-left: solid 12px #fff;
}
.admin-charge-edit .skill-and-level li div button::after,
.admin-applicant-show .skill-and-level li div button::after,
.company-applicant-show .skill-and-level li div button::after {
  content: "";
  position: absolute;
  top: 0;
  right: -11px;
  border-top: solid 12px transparent;
  border-bottom: solid 12px transparent;
  border-left: solid 12px #ccc;
}
.admin-charge-edit .skill-and-level li div button.active,
.admin-applicant-show .skill-and-level li div button.active,
.company-applicant-show .skill-and-level li div button.active {
  background-color: #00A67E;
}
.admin-charge-edit .skill-and-level li div button.active::after,
.admin-applicant-show .skill-and-level li div button.active::after,
.company-applicant-show .skill-and-level li div button.active::after {
  border-left: solid 12px #00A67E;
}

/* メッセージ
=========================================== */
.company-notification-show .attachment {
  text-align: left;
  padding: 20px;
  border: 1px solid #888;
}/*# sourceMappingURL=common.css.map */