@charset "UTF-8";
@import url(../resources/~block-editor/style.css);
/* http://meyerweb.com/eric/tools/css/reset/
    v2.0 | 20110126
    License: none (public domain)
    */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block; }

body {
  line-height: 1; }

ol,
ul {
  list-style: none; }

blockquote,
q {
  quotes: none; }

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

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

html {
  font-size: 16px; }

body {
  font-family: 'Noto Sans JP', sans-serif;
  background: #f0f0f0;
  color: #000;
  min-width: 800px; }
  body * {
    position: relative;
    box-sizing: border-box; }

a,
button {
  transition-duration: .2s; }

a:link,
a:visited {
  color: #003E9F;
  text-decoration: none; }

a:hover,
a:active {
  text-decoration: underline; }

header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: white;
  padding: 20px 50px;
  border-bottom: 1px solid #003E9F; }
  header h1 {
    flex: 1 1 auto;
    color: #003E9F;
    font-weight: 700;
    font-size: 1.4rem;
    background: transparent url(../assets/logo.svg) no-repeat center left;
    background-size: 30px auto;
    padding: 3px 0 3px 40px; }
    body.en header h1 {
      font-size: 1.3rem;
      letter-spacing: -.5px; }
    header h1 a:hover, header h1 a:active {
      text-decoration: none; }
    header h1 a:visited {
      color: #003E9F; }
  header nav {
    flex: 0 0 230px;
    text-align: right;
    color: #666; }
    header nav .login a {
      padding: 2px 6px 3px;
      color: #333;
      font-size: .8rem;
      border: 1px solid #666; }
      header nav .login a:hover, header nav .login a:active {
        background-color: #eee;
        border-color: #aaa;
        color: #666;
        text-decoration: none; }
    header nav .lang {
      display: inline-block;
      margin-left: 15px; }
      header nav .lang::before {
        content: "";
        font-family: FontAwesome;
        padding-left: 0px;
        padding-right: 0px; }
      header nav .lang a,
      header nav .lang .a {
        font-size: .85rem; }
      header nav .lang a:link,
      header nav .lang a:visited {
        color: #003E9F;
        font-weight: 800; }
      header nav .lang .slash {
        display: inline-block;
        margin-left: 5px;
        margin-right: 5px; }

main {
  background-color: white;
  padding: 20px 50px;
  line-height: 1.4; }

footer {
  border-top: 1px solid #003E9F;
  background-color: white;
  padding: 20px 50px 30px; }
  footer nav {
    text-align: center; }
    footer nav a {
      font-size: .8rem; }
      footer nav a::after {
        content: "";
        font-family: FontAwesome;
        padding-left: 5px;
        padding-right: 0px; }
    footer nav div {
      margin-top: 10px;
      font-size: .8rem;
      color: #666; }

#main.jobs p {
  padding: 50px 0; }

#main.jobs ul.jobs {
  margin: 50px auto;
  max-width: 800px; }
  #main.jobs ul.jobs li {
    margin: 20px 0; }
    #main.jobs ul.jobs li a {
      display: inline-block;
      font-size: 1.2rem;
      font-weight: 700;
      width: 100%;
      line-height: 40px;
      color: #003E9F;
      text-align: center;
      border: 1px solid #003E9F;
      text-decoration: none;
      padding: 20px 0;
      cursor: pointer; }
      #main.jobs ul.jobs li a:hover {
        background-color: #003E9F;
        color: white; }
      #main.jobs ul.jobs li a::after {
        content: "";
        font-family: FontAwesome;
        padding-left: 0px;
        padding-right: 0px;
        position: absolute;
        top: 50%;
        right: 20px;
        transform: translateY(-50%);
        font-size: 1.3rem; }
      #main.jobs ul.jobs li a[disabled] {
        background-color: #eee;
        border-color: #ccc;
        color: #999;
        cursor: not-allowed; }

#main h2.job {
  margin: 30px 0;
  padding: 0 0 50px;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 700;
  color: #003E9F;
  border-bottom: 1px solid #003E9F; }
  #main h2.job span {
    display: block;
    font-size: 1.2rem; }

#main.job {
  padding: 0 0 100px; }
  #main.job .block-editor-main {
    max-width: 800px;
    margin: 50px auto; }
    #main.job .block-editor-main .block.section {
      border: none;
      padding: 0; }
    #main.job .block-editor-main .block.h3 {
      font-size: 1.05rem;
      font-weight: 700;
      margin-top: 20px; }
    #main.job .block-editor-main .block.div {
      font-size: .9rem;
      line-height: 1.6;
      margin: 5px 0 10px 1rem; }
    #main.job .block-editor-main .block.list.disc {
      margin: 5px 0 10px 1rem; }
      #main.job .block-editor-main .block.list.disc ul {
        list-style: disc; }
        #main.job .block-editor-main .block.list.disc ul li {
          margin: .5rem 2rem;
          font-size: .85rem; }
    #main.job .block-editor-main .block.list.decimal {
      margin: 5px 0 10px 1rem; }
      #main.job .block-editor-main .block.list.decimal ol {
        list-style: decimal; }
        #main.job .block-editor-main .block.list.decimal ol li {
          margin: .5rem 2rem;
          font-size: .9rem; }
  #main.job .submit {
    text-align: center; }
    #main.job .submit a {
      display: inline-block;
      font-size: 1.2rem;
      font-weight: 700;
      width: 100%;
      line-height: 40px;
      color: #003E9F;
      text-align: center;
      border: 1px solid #003E9F;
      text-decoration: none;
      padding: 20px 0;
      cursor: pointer;
      max-width: 800px; }
      #main.job .submit a:hover {
        background-color: #003E9F;
        color: white; }
      #main.job .submit a::after {
        content: "";
        font-family: FontAwesome;
        padding-left: 0px;
        padding-right: 0px;
        position: absolute;
        top: 50%;
        right: 20px;
        transform: translateY(-50%);
        font-size: 1.3rem; }
      #main.job .submit a[disabled] {
        background-color: #eee;
        border-color: #ccc;
        color: #999;
        cursor: not-allowed; }

#main.entry > section {
  max-width: 800px;
  margin: 40px auto 60px; }
  #main.entry > section.large {
    max-width: 1000px; }
    #main.entry > section.large form {
      max-width: 1000px; }
  #main.entry > section > h3 {
    color: #003E9F;
    font-weight: 700;
    font-size: 1.4rem; }
    #main.entry > section .items h4 {
        border-left: 7px solid #e5e5e5;
        padding-left: 10px;
        font-weight: 700;
        font-size: 1.1rem;
        margin: 35px 0; }
    #main.entry > section.flow ol {
        margin: 40px 0 0; }
    #main.entry > section.flow ol li {
      display: flex;
      align-items: center;
      margin: 10px 0 30px;
      padding: 0; }
      #main.entry > section.flow ol li::after {
        content: "";
        font-family: FontAwesome;
        padding-left: 0px;
        padding-right: 0px;
        position: absolute;
        bottom: -25px;
        left: 115px;
        transform: translateX(-50%); }
      #main.entry > section.flow ol li h4 {
        flex: 0 0 230px;
        border: 1px solid #999;
        margin: 0 20px 0 0;
        padding: 15px 0;
        text-align: center; }
      #main.entry > section.flow ol li.complete::after {
        display: none; }
  #main.entry > section.privacy article {
    margin: 10px; }
  #main.entry > section .to-mypage,
  #main.entry > section .to-login,
  #main.entry > section .back {
    text-align: center; }
    #main.entry > section .to-mypage a,
    #main.entry > section .to-login a,
    #main.entry > section .back a {
      display: inline-block;
      font-size: 1.2rem;
      font-weight: 700;
      width: 100%;
      line-height: 40px;
      color: #003E9F;
      text-align: center;
      border: 1px solid #003E9F;
      text-decoration: none;
      padding: 20px 0;
      cursor: pointer;
      max-width: 400px;
      padding: 10px; }
      #main.entry > section .to-mypage a:hover,
      #main.entry > section .to-login a:hover,
      #main.entry > section .back a:hover {
        background-color: #003E9F;
        color: white; }
      #main.entry > section .to-mypage a::after,
      #main.entry > section .to-login a::after,
      #main.entry > section .back a::after {
        content: "";
        font-family: FontAwesome;
        padding-left: 0px;
        padding-right: 0px;
        position: absolute;
        top: 50%;
        right: 20px;
        transform: translateY(-50%);
        font-size: 1.3rem; }
      #main.entry > section .to-mypage a[disabled],
      #main.entry > section .to-login a[disabled],
      #main.entry > section .back a[disabled] {
        background-color: #eee;
        border-color: #ccc;
        color: #999;
        cursor: not-allowed; }
  #main.entry > section .back a {
    max-width: 300px; }
    #main.entry > section .back a::before {
      content: "";
      font-family: FontAwesome;
      padding-left: 0px;
      padding-right: 0px;
      position: absolute;
      top: 50%;
      left: 20px;
      transform: translateY(-50%);
      font-size: 1.3rem; }
    #main.entry > section .back a::after {
      display: none; }

#main form {
  max-width: 800px;
  margin: 40px auto; }
  #main form .errors div {
    margin: 20px 0;
    color: #c00;
    font-weight: 700; }
    #main form .errors div + div {
      margin-top: -15px; }
  #main form .items {
    margin: 40px 0; }
    #main form .items .item {
      display: flex;
      margin: 10px 0;
      gap: 0 10px; }
      #main form .items .item > label {
        flex: 0 0 290px;
        margin-top: 6px;
        line-height: 1.5;
        font-weight: 700; }
        #main form .items .item > label.short {
          flex-basis: 150px; }
      #main form .items .item.required > label::before {
        display: inline-block;
        content: "必須";
        background: #c73636;
        color: white;
        font-weight: 700;
        font-size: .9rem;
        margin-right: 10px;
        border-radius: 3px;
        padding: 0 5px; }
        [lang=en] #main form .items .item.required > label::before {
          content: 'Required'; }
      #main form .items .item.as_leader > label {
        flex: 0 0 350px; }
      body.en #main form .items .item.as_leader {
        display: block;
        margin-bottom: 20px; }
        body.en #main form .items .item.as_leader > div {
          margin-left: 250px; }
      #main form .items .item > div {
        flex: 1 1 auto; }
        #main form .items .item > div.multi {
          display: flex; }
          #main form .items .item > div.multi > div {
            width: 200px; }
            #main form .items .item > div.multi > div:first-child {
              margin-right: 10px; }
        #main form .items .item > div.portrait .notes {
          font-size: .85rem;
          margin: 5px 0 10px; }
        #main form .items .item > div.portrait button {
          display: inline-block;
          border: none;
          border-radius: 3px;
          background: #003E9F;
          color: white;
          padding: 7px 10px;
          cursor: pointer;
          line-height: 1;
          font-size: .85rem; }
          #main form .items .item > div.portrait button:hover {
            opacity: .8;
            text-decoration: none; }
          #main form .items .item > div.portrait button::before {
            content: "";
            font-family: FontAwesome;
            padding-left: 0px;
            padding-right: 0px;
            padding-right: 5px; }
          #main form .items .item > div.portrait button:active {
            opacity: .6; }
          #main form .items .item > div.portrait button[disabled] {
            background: #999; }
        #main form .items .item > div.portrait .picture {
          margin: 15px 0; }
          #main form .items .item > div.portrait .picture img {
            padding: 5px;
            box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
            max-width: 200px; }
        #main form .items .item > div.rows {
          padding-top: 8px; }
          #main form .items .item > div.rows .input {
            display: flex; }
            #main form .items .item > div.rows .input .label {
              flex: 0 0 100px; }
            #main form .items .item > div.rows .input .input {
              flex: 1 1 auto; }
    #main form .items .notes {
      margin: 15px 0; }
      #main form .items .notes ol {
        margin: 0 0 0 20px;
        list-style: decimal; }
        #main form .items .notes ol li {
          margin: 3px 0;
          font-size: .85rem; }
          #main form .items .notes ol li strong {
            font-weight: 700;
            color: #900; }
    #main form .items .input {
      margin: 0 0 5px; }
      #main form .items .input input[type=text],
      #main form .items .input input[type=email],
      #main form .items .input input[type=password],
      #main form .items .input input[type=date],
      #main form .items .input select,
      #main form .items .input textarea {
        font-size: 1rem;
        line-height: 1.5;
        padding: 5px 10px;
        width: 100%;
        border: 1px solid #999;
        background-color: #f9f9f9;
        border-radius: 3px;
        appearance: none;
        -webkit-appearance: none; }
        #main form .items .input input[type=text]:focus,
        #main form .items .input input[type=email]:focus,
        #main form .items .input input[type=password]:focus,
        #main form .items .input input[type=date]:focus,
        #main form .items .input select:focus,
        #main form .items .input textarea:focus {
          background-color: white; }
        #main form .items .input input[type=text].has-error,
        #main form .items .input input[type=email].has-error,
        #main form .items .input input[type=password].has-error,
        #main form .items .input input[type=date].has-error,
        #main form .items .input select.has-error,
        #main form .items .input textarea.has-error {
          background-color: #ffe6ee; }
      #main form .items .input input[type=date] {
        width: auto; }
      #main form .items .input select {
        width: auto; }
      #main form .items .input.half input[type=text],
      #main form .items .input.half input[type=email],
      #main form .items .input.half input[type=password] {
        width: 50%; }
      #main form .items .input.radio {
        display: flex;
        padding-top: 6px; }
        #main form .items .input.radio label {
          display: block;
          margin-right: 20px;
          cursor: pointer; }
          #main form .items .input.radio label input {
            transform: translateY(-1px); }
      #main form .items .input table input[type="text"],
      #main form .items .input table select {
        font-size: .87rem; }
      #main form .items .input table .degree_options {
        padding-top: 5px; }
        #main form .items .input table .degree_options select {
          width: 100%;
          padding: 2px 4px;
          font-size: .8rem; }
    #main form .items .help {
      font-size: .95rem;
      color: #555; }
    #main form .items label.has-error {
      position: absolute;
      background: rgba(204, 0, 0, 0.9);
      color: white;
      padding: 5px;
      z-index: 10;
      font-size: .85rem;
      line-height: 1.2;
      border-radius: 3px;
      white-space: nowrap;
      pointer-events: none; }
      #main form .items label.has-error::before {
        content: "";
        font-family: FontAwesome;
        padding-left: 0px;
        padding-right: 0px;
        position: absolute;
        top: -11px;
        left: 10px;
        color: rgba(204, 0, 0, 0.9); }
  #main form .submit {
    text-align: center; }
    #main form .submit p {
      margin: 10px 0; }
    #main form .submit button {
      display: inline-block;
      font-size: 1.2rem;
      font-weight: 700;
      width: 100%;
      line-height: 40px;
      color: #003E9F;
      text-align: center;
      border: 1px solid #003E9F;
      text-decoration: none;
      padding: 20px 0;
      cursor: pointer;
      padding: 15px 0;
      max-width: 400px; }
      #main form .submit button:hover {
        background-color: #003E9F;
        color: white; }
      #main form .submit button::after {
        content: "";
        font-family: FontAwesome;
        padding-left: 0px;
        padding-right: 0px;
        position: absolute;
        top: 50%;
        right: 20px;
        transform: translateY(-50%);
        font-size: 1.3rem; }
      #main form .submit button[disabled] {
        background-color: #eee;
        border-color: #ccc;
        color: #999;
        cursor: not-allowed; }
  #main form .draft {
    margin: 20px 0 0;
    display: flex;
    justify-content: center; }
    #main form .draft button {
      display: inline-block;
      border: none;
      border-radius: 3px;
      background: #003E9F;
      color: white;
      padding: 7px 10px;
      cursor: pointer;
      line-height: 1;
      font-size: .85rem;
      padding: 10px 20px;
      background: #666; }
      #main form .draft button:hover {
        opacity: .8;
        text-decoration: none; }
      #main form .draft button::before {
        content: "";
        font-family: FontAwesome;
        padding-left: 0px;
        padding-right: 0px;
        padding-right: 5px; }
      #main form .draft button:active {
        opacity: .6; }
      #main form .draft button[disabled] {
        background: #999; }
  #main form .save_as_draft {
    padding-top: 10px;
    text-align: center;
    font-size: .85rem;
    color: #003E9F; }

#main .success,
#main .failed {
  margin: 40px 0;
  padding: 20px;
  border: 1px solid #A7D69C;
  background: #E8F5E5;
  color: #198800;
  text-align: center; }
  #main .success h4,
  #main .failed h4 {
    margin: 0 0 15px;
    font-size: 1.2rem;
    font-weight: 700; }
  #main .success p,
  #main .failed p {
    font-size: .95rem; }

#main .failed {
  background: #eee;
  border-color: #aaa;
  color: #666; }

#main .warning {
  margin: 40px 0;
  padding: 20px;
  border: 1px solid #d6cd9c;
  background: #fff6cf;
  color: #573800;
  text-align: center; }
  #main .warning h4 {
    margin: 0 0 15px;
    font-size: 1.2rem;
    font-weight: 700; }
  #main .warning p {
    font-size: .95rem; }

#main .complete {
  padding: 100px 0;
  font-size: .95rem;
  text-align: center; }
  #main .complete .modify {
    margin-top: 10px; }
    #main .complete .modify a {
      font-size: .8rem;
      color: #444;
      cursor: pointer; }
      #main .complete .modify a:hover {
        color: #999; }
  #main .complete .pdf {
    margin-top: 50px; }
    #main .complete .pdf a {
      display: inline-block;
      border: none;
      border-radius: 3px;
      background: #003E9F;
      color: white;
      padding: 7px 10px;
      cursor: pointer;
      line-height: 1;
      font-size: .85rem; }
      #main .complete .pdf a:hover {
        opacity: .8;
        text-decoration: none; }
      #main .complete .pdf a:not(.no_content)::before {
        content: "";
        font-family: FontAwesome;
        padding-left: 0px;
        padding-right: 0px;
        padding-right: 5px; }
      #main .complete .pdf a:active {
        opacity: .6; }
      #main .complete .pdf a[disabled] {
        background: #999; }

#main ul.notes {
  margin: 30px 0;
  color: #444;
  font-size: .85rem; }
  #main ul.notes li {
    text-align: center;
    margin: 5px; }
    #main ul.notes li::before {
      content: "*";
      font-family: monospace;
      padding-right: 10px; }
    #main ul.notes li strong {
      color: #c00;
      font-weight: 700; }

#main.mypage nav.local {
  margin-top: -20px; }
  #main.mypage nav.local ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end; }
    #main.mypage nav.local ul li {
      margin-left: 10px; }
      #main.mypage nav.local ul li a {
        font-size: .85rem;
        background-color: #f0f0f0;
        border-radius: 3px;
        padding: 1px 9px 3px;
        border: 1px solid #f0f0f0; }
        #main.mypage nav.local ul li a:link, #main.mypage nav.local ul li a:visited {
          color: #003E9F; }
        #main.mypage nav.local ul li a:hover, #main.mypage nav.local ul li a:active {
          text-decoration: none;
          background-color: #ffff8c; }
      #main.mypage nav.local ul li.home a::before {
        content: "";
        font-family: FontAwesome;
        padding-left: 0;
        padding-right: 5px; }
      #main.mypage nav.local ul li.details a::before {
        content: "";
        font-family: FontAwesome;
        padding-left: 0;
        padding-right: 5px; }
      #main.mypage nav.local ul li.modify a::before {
        content: "";
        font-family: FontAwesome;
        padding-left: 0;
        padding-right: 5px; }
      #main.mypage nav.local ul li.password a::before {
        content: "";
        font-family: FontAwesome;
        padding-left: 0;
        padding-right: 5px; }
      #main.mypage nav.local ul li.logout a::before {
        content: "";
        font-family: FontAwesome;
        padding-left: 0;
        padding-right: 5px; }
      #main.mypage nav.local ul li.active a:link,
      #main.mypage nav.local ul li.active a:visited,
      #main.mypage nav.local ul li.active a:hover,
      #main.mypage nav.local ul li.active a:active {
        color: #444;
        background-color: #fafafa;
        border: 1px solid #ddd; }

#main.mypage > section.templates ul {
  display: flex;
  justify-content: center;
  padding: 20px 0 0; }
  #main.mypage > section.templates ul li {
    margin: 0 10px; }
    #main.mypage > section.templates ul li a {
      display: block;
      padding: 3px 6px 4px;
      border: 1px solid #f0f0f0;
      background-color: #f4f4f4;
      border-radius: 3px; }
      #main.mypage > section.templates ul li a:hover, #main.mypage > section.templates ul li a:active {
        text-decoration: none;
        background-color: #ffff8c;
        border-color: #ccd180; }

#main.mypage > section.application ul {
  padding: 20px 0 0; }
  #main.mypage > section.application ul li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 10px;
    border-bottom: 1px solid #003E9F; }
    #main.mypage > section.application ul li .text {
      flex: 1 1 auto;
      margin-right: 20px; }
      #main.mypage > section.application ul li .text .title {
        margin-bottom: 10px;
        font-size: 1.1rem;
        color: #003E9F;
        font-weight: 700; }
        #main.mypage > section.application ul li .text .title span {
          display: inline-block;
          margin-left: 10px;
          padding: 1px 4px;
          transform: translateY(-1px);
          background: #c00;
          border-radius: 3px;
          color: white;
          font-size: .85rem; }
      #main.mypage > section.application ul li .text p {
        font-size: .85rem; }
      #main.mypage > section.application ul li .text .template {
        display: flex;
        margin-top: 5px; }
        #main.mypage > section.application ul li .text .template span {
          display: block;
          padding: 4px 8px;
          border-radius: 3px;
          background: #f0f0f0;
          font-size: .8rem; }
          #main.mypage > section.application ul li .text .template span a {
            display: inline-block;
            margin-left: 5px; }
    #main.mypage > section.application ul li .buttons {
      flex: 0 0 210px;
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-end;
      align-items: center; }
      body.en #main.mypage > section.application ul li .buttons {
        flex: 0 0 220px; }
      #main.mypage > section.application ul li .buttons .status span {
        display: inline-block;
        padding: 5px 10px;
        background: #eee;
        color: #555;
        border-radius: 3px;
        font-size: .9rem;
        width: 100px;
        text-align: center; }
        body.en #main.mypage > section.application ul li .buttons .status span {
          width: 120px; }
        #main.mypage > section.application ul li .buttons .status span.unregistered::before {
          content: "";
          font-family: FontAwesome;
          padding-left: 0;
          padding-right: 5px; }
        #main.mypage > section.application ul li .buttons .status span.unregistered.required {
          color: #333;
          background-color: #ffe293; }
        #main.mypage > section.application ul li .buttons .status span.registered::before {
          content: "";
          font-family: FontAwesome;
          padding-left: 0;
          padding-right: 5px; }
        #main.mypage > section.application ul li .buttons .status span.registered {
          color: #234e33;
          background-color: #96e6b5; }
      #main.mypage > section.application ul li .buttons .button {
        margin-left: 15px; }
        #main.mypage > section.application ul li .buttons .button a {
          display: inline-block;
          background-color: #003E9F;
          border-radius: 3px;
          color: white;
          font-size: .9rem;
          font-weight: 700;
          padding: 5px 10px; }
          #main.mypage > section.application ul li .buttons .button a::after {
            content: "";
            font-family: FontAwesome;
            padding-left: 5px;
            padding-right: 0px; }
          #main.mypage > section.application ul li .buttons .button a:hover, #main.mypage > section.application ul li .buttons .button a:active {
            text-decoration: none;
            opacity: .9;
            color: #ffff8c; }
      #main.mypage > section.application ul li .buttons .upload {
        margin-top: 10px; }
        #main.mypage > section.application ul li .buttons .upload a {
          display: inline-block;
          font-size: .75rem;
          border: 1px solid #ccc;
          border-radius: 3px;
          padding: 4px 8px; }
          #main.mypage > section.application ul li .buttons .upload a:link, #main.mypage > section.application ul li .buttons .upload a:visited, #main.mypage > section.application ul li .buttons .upload a:hover, #main.mypage > section.application ul li .buttons .upload a:active {
            text-decoration: none; }
          #main.mypage > section.application ul li .buttons .upload a:hover {
            background: #eee; }

#main.mypage section.application .warning {
  margin-bottom: 20px; }

#main.mypage section.application .apply {
  margin: 50px 0 20px; }
  #main.mypage section.application .apply p {
    margin: 20px 0;
    text-align: center;
    color: #666;
    font-size: .9rem; }
  #main.mypage section.application .apply a,
  #main.mypage section.application .apply span {
    display: inline-block;
    font-size: 1.2rem;
    font-weight: 700;
    width: 100%;
    line-height: 40px;
    color: #003E9F;
    text-align: center;
    border: 1px solid #003E9F;
    text-decoration: none;
    padding: 20px 0;
    cursor: pointer; }
    #main.mypage section.application .apply a:hover,
    #main.mypage section.application .apply span:hover {
      background-color: #003E9F;
      color: white; }
    #main.mypage section.application .apply a::after,
    #main.mypage section.application .apply span::after {
      content: "";
      font-family: FontAwesome;
      padding-left: 0px;
      padding-right: 0px;
      position: absolute;
      top: 50%;
      right: 20px;
      transform: translateY(-50%);
      font-size: 1.3rem; }
    #main.mypage section.application .apply a[disabled],
    #main.mypage section.application .apply span[disabled] {
      background-color: #eee;
      border-color: #ccc;
      color: #999;
      cursor: not-allowed; }
  #main.mypage section.application .apply span {
    background-color: #eee;
    color: #999;
    border-color: #ccc;
    cursor: not-allowed; }
    #main.mypage section.application .apply span:hover {
      background-color: #eee;
      color: #999; }

#main.mypage section.recommendation h3 + h4 {
  margin-top: 20px;
  font-weight: 700; }

#main.mypage section.recommendation ul {
  list-style: disc;
  margin: 40px; }

#main.mypage section.recommendation .url {
  margin: 20px 0; }
  #main.mypage section.recommendation .url h6 {
    font-weight: 700;
    margin: 0 0 10px; }
  #main.mypage section.recommendation .url input {
    width: 100%;
    padding: 8px;
    font-size: .82rem;
    border: 1px solid #bbb;
    border-radius: 4px; }

#main.mypage section.recommender h3 + p {
  margin-top: 30px; }

#main.mypage section.recommender .confirm {
  margin: 60px 0; }
  #main.mypage section.recommender .confirm .submit {
    margin-top: 40px;
    text-align: center; }
    #main.mypage section.recommender .confirm .submit button {
      display: inline-block;
      border: none;
      border-radius: 3px;
      background: #003E9F;
      color: white;
      padding: 7px 10px;
      cursor: pointer;
      line-height: 1;
      font-size: .85rem; }
      #main.mypage section.recommender .confirm .submit button:hover {
        opacity: .8;
        text-decoration: none; }
      #main.mypage section.recommender .confirm .submit button::before {
        content: "";
        font-family: FontAwesome;
        padding-left: 0px;
        padding-right: 0px;
        padding-right: 5px; }
      #main.mypage section.recommender .confirm .submit button:active {
        opacity: .6; }
      #main.mypage section.recommender .confirm .submit button[disabled] {
        background: #999; }

#main.mypage section.recommender .complete {
  text-align: center; }
  #main.mypage section.recommender .complete p {
    margin-top: 30px;
    font-size: .85rem; }

#main.mypage section.recommender .completed {
  margin: 40px 0;
  padding: 10px;
  border: 1px solid #35b168;
  border-radius: 3px;
  background: #e2f3e9; }

#main.login form {
  max-width: 500px; }
  #main.login form .items .item > label {
    flex: 0 0 200px; }
  #main.login form .submit button {
    max-width: 300px;
    padding: 10px; }

#main.mypage.job > section {
  max-width: 800px;
  margin: 50px auto; }
  #main.mypage.job > section > h3 {
    color: #003E9F;
    font-weight: 700;
    font-size: 1.4rem; }

#main.password form {
  max-width: 600px; }
  #main.password form .items .item > label {
    flex: 0 0 300px; }
  #main.password form .submit button {
    max-width: 300px;
    padding: 10px; }

#main.remind form {
  max-width: 700px; }
  #main.remind form .items .item > label {
    flex: 0 0 200px; }
  #main.remind form .submit button {
    max-width: 300px;
    padding: 10px; }

#main .hide {
  display: none; }

#main.upload > section p.description {
  margin: 40px 0; }

#main.upload > section form {
  max-width: 400px;
  margin: 0 auto; }
  #main.upload > section form [type=file] {
    display: block;
    font-size: 1rem; }

#main.upload > section .complete {
  padding: 50px 0 90px; }

table.table {
  width: 100%; }
  table.table th,
  table.table td {
    padding: 5px;
    font-size: .9rem;
    font-feature-settings: "palt"; }
  table.table thead {
    background: #eee; }
    table.table thead th {
      border-bottom: 2px solid #333;
      white-space: nowrap;
      vertical-align: middle; }
  table.table tbody tr td {
    white-space: nowrap; }
    table.table tbody tr td.term {
      width: 100px; }
    table.table tbody tr td.switch, table.table tbody tr td.remove {
      width: 10px;
      padding-right: 7px;
      padding-left: 7px;
      white-space: nowrap; }
      table.table tbody tr td.switch span, table.table tbody tr td.remove span {
        display: inline-block;
        cursor: pointer;
        color: #888; }
        table.table tbody tr td.switch span:hover, table.table tbody tr td.remove span:hover {
          color: #003E9F; }
  table.table tbody tr:first-child .up {
    visibility: hidden; }
  table.table tbody tr:last-child .down {
    visibility: hidden; }
  table.table tfoot td {
    text-align: right; }
    table.table tfoot td button {
      display: inline-block;
      border: none;
      border-radius: 3px;
      background: #003E9F;
      color: white;
      padding: 7px 10px;
      cursor: pointer;
      line-height: 1;
      font-size: .85rem; }
      table.table tfoot td button:hover {
        opacity: .8;
        text-decoration: none; }
      table.table tfoot td button::before {
        content: "";
        font-family: FontAwesome;
        padding-left: 0px;
        padding-right: 0px;
        padding-right: 5px; }
      table.table tfoot td button:active {
        opacity: .6; }
      table.table tfoot td button[disabled] {
        background: #999; }

/*# sourceMappingURL=common.css.map */
