@charset "UTF-8";
/*
html5doctor.com Reset Stylesheet
v1.4
2009-07-27
Author: Richard Clark - http://richclarkdesign.com
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, h7, 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, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  outline: 0;
  border: 0;
  background: transparent;
  vertical-align: baseline;
  font: inherit;
  font-size: 100%;
}

article, aside, dialog, figure, footer, header,
hgroup, nav, section {
  display: block;
}

a,
.link {
  margin: 0;
  padding: 0;
  border: 0;
          /*
background: transparent;
vertical-align: baseline;
font: inherit;
font-size: 100%;*/
  text-decoration: underline;
  cursor: pointer;
  color: #0b51a6;
}

a:link,
.link:link,
a:visited,
.link:visited {
  color: #0b51a6;
  text-decoration: underline;
}

a:active,
.link:active,
a:hover,
.link:hover {
  color: #2B73C9;
  text-decoration: underline;
}

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

button,
input,
optgroup,
select,
textarea {
  margin: 0;
  color: inherit;
  font: inherit;
}

::-moz-focus-inner,
::-moz-focus-inner {
  padding: 0;
  border: 0;
}

li {
  list-style: none;
}

.editable {
  border: none;
  font-weight: bold;
}

@media only screen and (max-width: 767px) {
  .contents_inner > p {
    margin: 1rem;
  }
}
#contents form,
#contents .contents_exec {
  padding: 0 1rem;
}

#contents form .form_inner,
#contents .form_inner {
  width: 96%;
  margin: 12px 2% 36px;
}

#contents form .form_inner_input {
  margin: 6px auto 18px;
}

input[name='prm_ins_qst'] {
  visibility: hidden;
}

form section,
.exec_section {
  margin: 20px auto;
}

.form_inner p {
  margin: 2px;
}

.form_inner p.input_addtext {
  margin: 24px 0 6px;
}

.form_inner_input > span {
  font-size: 0.875rem;
  margin: 6px 4px;
  display: inline-block;
}

.insider_checks input[type='checkbox'] {
  visibility: hidden;
}

.checkbox_checks input[type='checkbox'] {
  visibility: hidden;
}

.important {
  color: #e60000;
}

table, tbody, tr, th, td {
  margin: 0;
  padding: 0;
  outline: 0;
  border: 0;
  background: transparent;
  vertical-align: baseline;
  font: inherit;
  font-size: 100%;
}

table {
  width: 100%;
  border: solid 1px #c7c7c7;
}

table.style01 {
  table-layout: fixed;
}

th,
td {
  padding: 15px;
  border-top: solid 1px #c7c7c7;
  border-right: solid 1px #c7c7c7;
  text-align: left;
  font-weight: normal;
}

table.style01 th {
  background-color: #ece9d8;
  text-align: center;
  border-right: white;
}

table.style01 td {
  text-align: center;
}

.center {
  text-align: center !important;
}

.contents_top {
  border-top: #E60000 4px solid;
  padding: 0 1rem;
  margin: 0 auto;
  background: none;
}

/*  .btn
---------------------------------------------------------- */
.btn {
  display: inline-block;
  margin: 10px 0;
  padding: 10px 30px;
  border: 1px solid #ccc;
  border-radius: 2px;
  background: #5a5a5a;
  box-shadow: 0px 3px 0.5px 0 rgba(0, 0, 0, 0.2);
  color: #fff;
  vertical-align: middle;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.btn:hover {
  opacity: 0.8;
}

@media only screen and (max-width: 880px) {
  .progress_typeB li::before {
    border: 4px solid;
    border-color: #fff #fff transparent transparent;
    right: -7.5%;
  }

  .progress_typeB li::after {
    right: -7.5%;
  }

  .progress_typeB li span {
    font-size: 0.75rem;
  }
}
@media only screen and (max-width: 880px) {
  .progress_typeB.progress_1 {
    background: linear-gradient(90deg, #e60000 19.5%, #cdd6dd 19.5%);
  }

  .progress_typeB.progress_2 {
    background: linear-gradient(90deg, #e60000 39.5%, #cdd6dd 39.5%);
  }

  .progress_typeB.progress_3 {
    background: linear-gradient(90deg, #e60000 59.5%, #cdd6dd 59.5%);
  }

  .progress_typeB.progress_4 {
    background: linear-gradient(90deg, #e60000 79.5%, #cdd6dd 79.5%);
  }
}
/*  .notes
---------------------------------------------------------- */
.notes {
  margin: 10px 0;
}

.notes.notes_dot li::before {
  content: '\30fb ';
}

.notes.notes_blank li::before {
  display: none;
}

.notes li {
  padding-left: 1.3em;
  position: relative;
  font-size: 0.875rem;
  line-height: 1rem;
  margin: 6px 0;
}

.notes li::before {
  content: "\203b ";
  font-size: 0.875rem;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto 0;
  display: inline-block;
}

/*  .done
---------------------------------------------------------- */
.contents_inner > .done {
  position: relative;
  text-align: center;
  margin: 4rem auto;
  z-index: 0;
}

.contents_inner > .done::before {
  position: relative;
  content: '';
  background: url(../images/icn_done.png) no-repeat 0 0;
  width: 105px;
  height: 102px;
  top: 0;
  right: 0;
  left: 0;
  margin: 0 auto 2rem;
  display: block;
  z-index: 1;
}

.contents_inner > .done > h1 {
  color: #0ba885;
  font-size: 1.5rem;
  margin: 0 auto 1rem;
}

.contents_inner > .done > a {
  margin: 1rem auto 0;
  display: inline-block;
}

/*  .input_confirm
---------------------------------------------------------- */
.input_confirm {
  display: flex;
  flex-flow: wrap;
  align-items: center;
}

/*  .sec_confirm_list
---------------------------------------------------------- */
.sec_confirm_list h3 {
  text-decoration: underline;
}

/* .agreement
-------------------------------------------------------------------------------------------------- */
.agreement > section {
  margin-bottom: 36px;
}

.agreement article {
  margin: 36px 0;
}

.agreement article h3 {
  font-size: 1.125rem;
}

.agreement article .link_pdf {
  text-align: right;
  margin: 6px 2px 24px;
  display: flex;
  flex-flow: row-reverse wrap;
  align-items: center;
}

.agreement article .link_pdf > a {
  position: relative;
  font-size: 0.75rem;
  display: inline-block;
  z-index: 0;
}

.agreement article .link_pdf > a::before {
  position: absolute;
  content: '';
  background: url(../images/icn_file_pdf.png) no-repeat center center;
  width: 20px;
  height: 20px;
  display: inline-block;
  top: -4px;
  left: -24px;
  z-index: 0;
}

/*  .agreement article > section.iframe
---------------------------------------------------------- */
.iframe {
  font-size: 0.875rem;
  border: #999 2px solid;
  padding: 1rem 0.5rem 1rem 1rem;
  max-height: 440px;
  overflow-y: scroll;
}

.iframe h5 {
  float: left;
}

.iframe p {
  margin: 0 0 12px;
}

.iframe::after {
  content: '';
  display: block;
  clear: both;
}

iframe {
  border: 1px solid #999;
  padding: 1em;
  width: 99%;
  display: block;
  margin: 0 auto;
}

@media only screen and (max-width: 767px) {
  iframe {
    border: 1px solid #999;
    padding: 1em;
    width: 90%;
    display: block;
    margin: 0 auto;
  }
}
/* readonly */
@media only screen and (max-width: 359px) {
  .input_confirm input[readonly].input.must {
    min-width: 160px;
  }
}
/*  .input_radio/.input_check
---------------------------------------------------------- */
@supports (-ms-ime-align: auto) {
  .input_radio input[type='radio']:disabled + label {
    background-color: rgba(255, 255, 255, 0.8);
    background-blend-mode: lighten;
  }
}
@media all and (-ms-high-contrast: none) {
  .input_radio input[type='radio']:disabled + label {
    background-color: rgba(255, 255, 255, 0.8);
    background-blend-mode: lighten;
  }
}
@media only screen and (max-width: 365px) {
  .input_check.check_large li {
    width: 100%;
    margin: 0 0 10px;
  }
}
/*  .check_banner
------------------------------------------------ */
.input_check.check_banner li {
  width: 100%;
  margin: 12px 0;
}

.check_banner input:not(.ac)[type='checkbox'] + label {
  background: #ebeced url(../images/icn_check_pc.png) no-repeat 2em 50%;
  padding: 2em 2em 2em 5em;
  width: 100%;
  display: block;
}

.input_check.check_banner li:hover label {
  background: #cdd6dd url(../images/icn_check_pc.png) no-repeat 2em 50%;
}

.check_banner input[type='checkbox']:checked + label {
  background: #ebeced url(../images/icn_check_pc_checked.png) no-repeat 2em 50%;
  cursor: default;
}

/*  .choice_other
------------------------------------------------ */
.choice_other {
  position: relative;
}

@media only screen and (min-width: 768px) {
  .choice_other input[type='text'] {
    position: absolute;
    top: 0;
    left: 90px;
    bottom: 0;
    margin: auto 0;
    width: 66%;
    z-index: 1;
  }
}
@media only screen and (max-width: 767px) {
  .input_check.check_large li.choice_other {
    margin-top: 8px;
    width: 100%;
    display: flex;
    flex-flow: nowrap;
  }

  .input_check.check_large li.choice_other > label {
    min-width: 80px;
    margin: 0 10px 0 0;
  }

  .choice_other input[type='text'] {
    margin: 16px 0 0;
  }

  .input_check.check_large li.choice_other > input[type='text'] {
    position: relative;
    top: -6px;
    right: 0;
    left: 0;
    margin: 0 0 0 auto;
    max-width: 80%;
  }
}
/*  ._half
---------------------------------------------------------- */
.input_half .input.must,
.select_half {
  max-width: 360px;
}

@media only screen and (max-width: 359px) {
  .input_half .input.must,
  .select_half {
    max-width: 100%;
  }
}
/*  .input_unit_search
------------------------------------------------ */
@media only screen and (max-width: 359px) {
  .input_unit li:nth-child(2) .button {
    max-width: 100px;
    padding-right: 10px;
    padding-left: 10px;
    font-size: 0.875rem;
  }
}
@media only screen and (max-width: 320px) {
  .input_unit_search li:nth-child(1) {
    max-width: 160px;
  }
}
/*  header / contact
---------------------------------------------------------- */
.contact {
  position: relative;
  width: 40px;
  height: 55px;
  border-radius: 4px;
  border: 0;
  margin: 0 0 0 30px;
  background-image: url(../images/header-phone_sp.png);
  background-repeat: no-repeat;
  background-size: 40px;
}

.contact:hover {
  opacity: 0.5;
}

.contact > p {
  position: absolute;
  color: #E60000;
  min-width: 41px;
  font-size: 10px;
  font-weight: bold;
  right: auto;
  bottom: -10px;
  left: auto;
  display: block;
  z-index: 0;
}

/*  textarea / pre
---------------------------------------------------------- */
textarea {
  background: #fbfbee;
  border: #cdd6dd 1px solid;
  border-radius: 6px;
  width: 100%;
  min-height: 200px;
  padding: 0.5rem;
  resize: vertical;
  overflow: auto;
  box-shadow: none;
  box-sizing: border-box;
}

textarea:hover,
textarea:focus {
  background: #ffffeb;
  border: #92957d 1px solid;
  outline: none;
}

pre {
  padding: 1rem;
  width: 100%;
  display: inline-block;
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow: visible;
  box-sizing: border-box;
}

/* error
-------------------------------------------------------------------------------------------------- */
@media only screen and (min-width: 458px) {
  .input_unit_search.is-errorParent-input_unit > li:nth-child(3) {
    margin: -18px 0 18px;
  }
}
.resignation_flex select option {
  overflow: hidden;
  width: 100%;
}

.input:-moz-placeholder,
.error:hover:-moz-placeholder {
  color: #929292;
  opacity: 1;
}

.input:-ms-input-placeholder,
.error:hover:-ms-input-placeholder {
  color: #929292;
}

.input:-webkit-input-placeholder,
.error:hover:-webkit-input-placeholder {
  color: #929292;
}

/*  .errorInfo
---------------------------------------------------------- */
.errorInfo {
  margin-top: 60px;
}

.errorInfo p {
  margin-bottom: 10px;
  color: #d6453f;
  font-weight: bold;
}

.errorInfo ul li {
  padding-left: 18px;
  background: url(../images/icon_error.png) no-repeat 0 0.3em;
  color: #d6453f;
}

.errorInfo ul li a {
  color: #d6453f;
}

.inp-err-msgcds {
  display: none;
}

/*  .errorInfoArea
---------------------------------------------------------- */
.errorInfoArea {
  margin-top: 60px;
}

.errorInfoArea pre {
  margin-bottom: 10px;
  color: #d6453f;
}

ul.resignation_flex li select {
  border-radius: 3px;
  width: 100%;
}

/* .service_choice
------------------------------------------------------------------------------ */
.service_choice {
  margin: 40px auto 20px;
}

/* ol
---------------------------------------------------------- */
.service_choice ol {
  margin: 0 auto;
  display: flex;
  flex-flow: nowrap;
  align-items: stretch;
}

.service_choice ol li {
  position: relative;
  text-align: center;
  width: 100%;
  flex-grow: 1;
  display: inline-block;
  z-index: 0;
}

.service_choice ol li:not(:last-child) {
  margin: 0 2rem 0 0;
}

@media only screen and (max-width: 767px) {
  .service_choice ol li.sp_hidden {
    width: 0;
  }

  .service_choice ol li:not(:last-child).sp_hidden {
    margin: 00;
  }
}
.service_choice ol.reinput_radio label {
  opacity: 0.5;
  filter: alpha(opacity=50);
  -ms-filter: "alpha( opacity=50 )";
  pointer-events: none;
}

@media only screen and (max-width: 767px) {
  .service_choice ol li:not(:last-child) {
    margin: 0 0.6rem 0 0;
  }
}
.service_choice ol li em {
  position: absolute;
  background: #CCAB47;
  color: #FFF;
  font-weight: bold;
  border-radius: 4px;
  max-width: 160px;
  padding: 0.4rem 0;
  top: -1.2rem;
  right: 0;
  left: 0;
  margin: 0 auto;
  display: inline-block;
  z-index: 1;
  box-shadow: 0px 2px 2px 0 rgba(0, 0, 0, 0.1);
}

.service_choice ol li em > i {
  position: absolute;
  background: url(../../images/icon_recom.png) no-repeat center center;
  background-size: 100%;
  width: 10px;
  height: 16px;
  top: 0;
  bottom: 0;
  left: 24%;
  margin: auto 0;
  display: inline-block;
}

@media only screen and (max-width: 767px) {
  .service_choice ol li em > i {
    left: 18%;
  }
}
@media only screen and (max-width: 480px) {
  .service_choice ol li em > i {
    width: 7px;
    height: 11px;
    left: 8%;
  }
}
.service_choice ol li em:before {
  position: absolute;
  content: '';
  background: #CCAB47;
  width: 8px;
  height: 8px;
  transform: rotate(45deg);
  right: 0;
  bottom: -4px;
  left: 0;
  margin: 0 auto;
  z-index: 2;
  display: block;
}

@media only screen and (max-width: 767px) {
  .service_choice ol li em {
    max-width: 110px;
    font-size: 0.75rem;
  }
}
@media only screen and (max-width: 480px) {
  .service_choice ol li em {
    max-width: 80px;
    font-size: 0.75rem;
  }
}
.service_choice ol input[type='radio'] {
  /*display: none;*/
  visibility: hidden;
}

.service_choice ol label {
  position: relative;
  background: #FFF;
  color: #333;
  border: #CDD6DD 2px solid;
  border-radius: 2px;
  display: flex;
  flex-flow: wrap;
  align-items: center;
  justify-content: center;
  min-height: 170px;
  height: 170px;
  padding: 3rem 1rem;
  transition: 0.2s;
  cursor: pointer;
}

.service_choice ol label > p {
  display: block;
  width: 100%;
}

.service_choice ol label > p > span {
  font-size: 1.25rem;
  font-weight: bold;
  display: block;
}

.service_choice ol label > span {
  margin: auto 0;
  display: inline-block;
}

@media only screen and (max-width: 767px) {
  .service_choice ol label {
    min-height: 160px;
    padding: 2rem 1rem;
  }

  .service_choice ol label > p > span {
    font-size: 1.0rem;
    display: block;
    width: 100%;
  }

  .service_choice ol label > span {
    font-size: 0.85rem;
    width: 100%;
    margin: 0;
  }

  label p {
    margin: 0;
    padding: 0;
  }
}
@media only screen and (max-width: 480px) {
  .service_choice ol label {
    min-height: 146px;
    padding: 2.6rem 0.0rem;
  }

  .service_choice ol label > span {
    font-size: 0.8rem;
    /*0.625rem;*/
  }
}
.service_choice ol label:hover {
  background: #FFF;
  border: #E60000 2px solid;
  color: #E60000;
  opacity: 1;
}

.service_choice ol label:active {
  top: 1px;
  box-shadow: none;
}

.service_choice ol input[type='radio']:checked + label {
  background: #FCE5E5 !important;
  /* Overwrite > common_v2.css >  */
  color: #E60000;
  border: #E60000 2px solid;
  opacity: 1;
}

/* ul
---------------------------------------------------------- */
@media only screen and (max-width: 767px) {
  .service_choice ul {
    margin: 20px auto 0;
  }
}
.service_choice ul li {
  display: none;
}

.service_choice ul li.checked {
  display: block;
}

.service_choice ul li section {
  position: relative;
  border: #494E62 2px solid;
  padding: 2.4rem 4.8rem;
  z-index: 0;
}

@media only screen and (max-width: 767px) {
  .service_choice ul li section {
    padding: 0.8rem;
  }
}
.service_choice ul li section::before {
  position: absolute;
  content: '';
  background: #fff;
  width: 10px;
  height: 10px;
  border: 2px solid;
  border-color: #494E62 #494E62 transparent transparent;
  transform: rotate(-45deg);
  top: -7px;
  margin: 0;
  z-index: 1;
  display: block;
}

.service_choice.col_2 ul li:nth-child(1) section::before {
  left: 25%;
}

.service_choice.col_2 ul li:nth-child(2) section::before {
  left: 75%;
}

.service_choice.col_3 ul li:nth-child(1) section::before {
  left: 15%;
}

.service_choice.col_3 ul li:nth-child(2) section::before {
  left: 49%;
}

.service_choice.col_3 ul li:nth-child(3) section::before {
  left: 84%;
}

/* ul section
-------------------------------------- */
ul section > h3 {
  background: #494E62;
  color: #FFF;
  font-weight: bold;
  text-align: center;
  padding: 0.6rem 0;
  margin: 0 auto 0.6rem;
}

ul section > p {
  padding: 0.4rem 0.6rem;
}

@media only screen and (min-width: 560px) {
  .detail_figure {
    height: 100px;
  }

  #detail_choice_taxpayment_0 .detail_figure {
    background: url(../images/figure_taxpayment_0_pc.png) no-repeat center center;
  }

  #detail_choice_taxpayment_1 .detail_figure {
    background: url(../images/figure_taxpayment_1_pc.png) no-repeat center center;
  }

  #detail_choice_taxpayment_2 .detail_figure {
    background: url(../images/figure_taxpayment_2_pc.png) no-repeat center center;
  }
}
@media only screen and (max-width: 559px) {
  .detail_figure {
    height: 100px;
  }

  #detail_choice_taxpayment_0 .detail_figure {
    background: url(../../images/figure_taxpayment_0_sp.png) no-repeat center center;
    background-size: contain;
  }

  #detail_choice_taxpayment_1 .detail_figure {
    background: url(../../images/figure_taxpayment_1_sp.png) no-repeat center center;
    background-size: contain;
  }

  #detail_choice_taxpayment_2 .detail_figure {
    background: url(../../images/figure_taxpayment_2_sp.png) no-repeat center center;
    background-size: contain;
  }
}
.company_and_role {
  display: none;
}

.section_other_relationship {
  display: none;
}

#other_country_list {
  display: none;
}

#section_01,
#section_02 {
  display: none;
}

.popup-white:after {
  content: "";
  display: inline-block;
  margin-left: 7px;
  width: 12px;
  height: 10px;
  background: url(../images/icon_blank_02.png) no-repeat;
  background-size: 100% 100%;
  vertical-align: middle;
}

.emphasize {
  font-size: 1.2rem;
  font-weight: bold;
}

.mb12 {
  margin-bottom: 12px !important;
}

.procArea {
  display: flex;
}

.procArea .procTitle {
  display: flex;
  margin: 0;
  padding: 0;
  width: 50px;
  height: 30px;
  color: #FFF;
  border: none;
  border-radius: 2px;
  background: #000;
  font-weight: bold;
  align-items: center;
  justify-content: center;
}

.procArea .procContent {
  width: 50%;
  flex-grow: 1;
  margin-left: 10px;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.content {
  margin: 0;
  padding: 40px;
}

.modal {
  display: none;
  height: 100vh;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 9999;
}

.modal_bg {
  background: black;
  height: 100vh;
  position: absolute;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.5);
}

.modal_content {
  max-height: 90%;
  overflow-y: auto;
  background: #fff;
  left: 50%;
  padding: 40px;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 60%;
}

.address-list li a {
  text-decoration: none;
}

.modal_content button {
  margin: 20px;
  display: inline-block;
}

@media print, (min-width: 768px) {
  html {
    overflow-y: scroll;
    background-color: #FFF;
    color: #2c241f;
    font-size: 14px;
    font-family: "UD\65b0 \30b4 NT M";
    font-family: "\30d2 \30e9 \30ae \30ce \89d2 \30b4  Pro", "Hiragino Kaku Gothic Pro", "\30e1 \30a4 \30ea \30aa ", "Meiryo", "sans-serif";
    line-height: 1.6;
    -webkit-text-size-adjust: none;
  }

  body {
    position: relative;
    margin: 0 auto;
    background-color: #fff;
    z-index: 0;
  }

  img {
    max-width: 100%;
    height: auto;
    border: 0;
    vertical-align: top;
  }

  h1, h2, h3, h4 {
    font-weight: bold;
  }

  h1 {
    font-size: 28px;
  }

  h2 {
    color: #333;
    font-size: 1.125rem;
    margin: 50px 0 20px;
    padding: 0.25em 0.5em;
    border-left: solid 5px #71777E;
  }

  ul,
  li,
  input,
  label {
    box-sizing: border-box;
  }

  .step_inactive button,
  .step_inactive button:hover {
    background: #e60000;
    box-shadow: 0px 3px 0.5px 0 rgba(0, 0, 0, 0.2);
  }

  .step_inactive > p {
    box-shadow: 0px 3px 0.5px 0 rgba(0, 0, 0, 0.2);
  }

  #birthday_input_section {
    display: flex;
  }

  #birthday {
    min-width: 240px;
  }

  .app_bg {
    width: 100%;
    background-color: #fce5e5;
  }

  .app_area {
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
  }

  .title_txt {
    font-weight: bold;
    font-size: 1.5em;
    padding: 1.5em;
  }

  .app_area p {
    text-align: center;
    padding: 1em;
  }

  ul.tsk {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  }

  ul.tsk li {
    text-align: center;
    padding: 1.5em 0 1rem 0;
    margin: 0.3em;
    min-height: 200px;
    justify-content: space-between;
  }

  ul.tsk li div {
    height: 70px;
  }

  ul.tsk li:not(.progress_day) {
    width: 20%;
    background-color: #fff;
  }

  ul.tsk li p {
    display: inline-block;
    margin-top: 0.2em;
    padding: 0.5em;
    white-space: nowrap;
  }

  ul.tsk li img {
    margin-top: 1em;
    display: block;
    margin: 1rem auto 0 auto;
  }

  .progress_day {
    flex: 1;
    margin: auto 2em;
    min-width: 80px;
    text-align: center;
  }

  .progress_day p {
    display: block;
    color: #e60000;
    font-size: 16px;
    margin-bottom: 0.5em;
  }

  .progress_day img {
    width: 58px;
    height: 16px;
  }

  .app_area02 {
    max-width: 980px;
    margin: 0 auto;
    margin-top: 2em;
    margin-bottom: 64px;
    padding: 0 1rem;
  }

  .app_area02 ol {
    margin-bottom: 2em;
  }

  .agree_box {
    text-align: center;
    margin: 1.5em 0 2em;
  }

  #prm_agreement-error {
    text-align: left;
  }

  .agree_box label,
  #prm_agreement_error {
    margin: 0 auto;
  }

  #prm_agreement_error {
    width: 300px;
    padding-left: 2rem;
  }

  html.basic_information * {
    box-sizing: border-box;
  }

  html.basic_information * {
    box-sizing: border-box;
  }

  html.basic_information input {
    height: auto;
  }

  html.basic_information section {
    margin-bottom: 40px;
  }

  html.basic_information h3 {
    margin-bottom: 10px;
  }

  .inp_p,
  .mt20,
  #m20 {
    padding: .5rem 0;
  }

  #workinf {
    display: none;
  }

  .pc_none {
    display: none;
  }

  .holding_stock {
    background: #71777E;
    color: #fff;
    border: none;
    padding: .5rem 1rem;
  }

  .column2 {
    display: flex;
    flex-wrap: wrap;
  }

  .column2 li {
    margin-bottom: 20px;
    width: calc((100% - 20px) / 2);
  }

  .column2 li:nth-of-type(odd) {
    margin-right: 20px;
  }

  .column2 li input[type='text'] {
    width: 100%;
  }

  #prm_holdings_cd,
  #prm_member_cd {
    background-color: white;
  }

  .inform_box1 {
    background: #eee;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 30px 20px 20px;
  }

  .inform_box1 .file_icon {
    width: 24px;
    height: auto;
  }

  .inform_box2 {
    background: #eee;
    margin-bottom: 40px;
    padding: 15px 40px 20px 40px;
  }

  .inform_box2 > p {
    font-weight: bold;
  }
 
  .inform_box3 {
    background: #fbfbee;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 30px 20px 20px;
    border-radius: 10px;
    margin-left: 2%;
    border: solid;
    border-color: #ddd;
  }

  .inform_box3 .file_icon {
    width: 24px;
    height: auto;
  }

  .sec_pass input {
    display: block;
    width: 400px;
  }

  #inp input {
    width: 100%;
  }

  #login input,
  #login input {
    box-shadow: none;
    border-radius: 6px;
    padding: 10px;
    width: 400px;
  }

  #prm_market_info_error,
  #prm_event_info_error {
    height: auto;
    padding-top: 0px;
    padding-bottom: 20px;
  }

  .campaign_code #prm_campaign_code {
    width: 400px;
    margin-bottom: 2rem;
    background-color: white;
  }

  .mb5 {
    margin-bottom: 5px;
  }

  .mb10 {
    margin-bottom: 10px;
  }

  .mb20 {
    margin-bottom: 10px;
  }

  .mt20 {
    margin-top: 20px;
  }

  .ml2p {
    margin-left: 2%;
  }

  .mt24 {
    margin-top: 24px;
  }

  .mb50 {
    margin-bottom: 50px;
  }

  .warn {
    padding-top: .5rem;
  }

  .login_error {
    width: 100%;
    background-color: #fce5e5;
    color: #e60000;
    border: 1px solid #e60000;
    padding: 1em;
    display: none;
  }

  .sec_mail .error,
  .sec_pass .error {
    display: block;
  }

  #entry_comp {
    margin: 0 0 40px;
    padding: 0 1rem;
  }

  .translation {
    position: relative;
    background: #FFEBEE;
    text-align: center;
    padding: 12em 2em 2em;
    margin: 12px auto 12px;
    z-index: 0;
  }

  .translation {
    position: relative;
    background: #FFEBEE;
    text-align: center;
    padding: 12em 2em 2em;
    margin: 12px auto 12px;
    z-index: 0;
  }

  .translation::before {
    position: absolute;
    content: "";
    background: url(../images/icn_mail_open.png) no-repeat 0 0;
    width: 105px;
    height: 102px;
    top: 2em;
    right: 0;
    left: 0;
    margin: 0 auto;
    display: block;
    z-index: 1;
  }

  #entry_comp > p {
    margin: 0 0 8px;
    font-size: 0.875rem;
  }

  .contents_inner_li {
    position: relative;
    font-size: 0.875rem;
    line-height: 1.4rem;
    margin: 0 0 10px;
    z-index: 0;
  }

  #entry_comp > ul li > em {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
  }

  #entry_comp > ul li > p {
    padding-left: 2.6em;
  }

  #entry_comp > ul li > dl {
    padding-left: 2.6em;
  }

  #entry_comp > ul li > a {
    margin: 1.2em 0.8em;
    display: inline-block;
  }

  .mail_list {
    margin-bottom: 1rem;
  }

  #prm_trd_motv_other {
    display: none;
    width: 300px;
  }

  #prm_invest_policy_other {
    display: none;
  }

  #prm_trd_typ_other {
    display: none;
  }

  #prm_income_other {
    display: none;
  }

  .choice_other input[type='text'] {
    position: relative;
    top: 0;
    left: 1rem;
    bottom: 0;
    margin: auto 0;
    width: 66%;
    z-index: 1;
  }

  .confirm_text p {
    font-weight: normal;
  }

  #exec > div {
    width: 80%;
    margin: 0 auto;
  }

  #exec .button {
    padding: 1.2rem 0;
  }

  .sec_confirm_list > section {
    margin-left: 1rem;
  }

  #prm_hearing_answer_input {
    display: inline-block;
    padding: 10px;
    height: 18px;
    border: #cdd6dd 1px solid;
    border-radius: 6px;
    background-color: #fff;
    box-shadow: none;
  }

  #househldname > h4 {
    font-weight: normal;
  }

  .address_note {
    font-weight: bold;
    color: #d64541;
    padding: .5rem;
  }

  .job_second {
    display: none;
  }

  .info_container {
    display: none;
  }

  .search_pcode {
    margin-left: 10px;
  }

  .error_screen {
    padding: 0 1rem;
    margin: 0 auto;
  }

  .error_message {
    color: #e60000;
  }

  body.popup {
    min-width: 600px;
    max-width: 700px;
    width: auto;
  }

  .id_form {
    display: none;
  }

  .description {
    margin-left: 2rem;
  }

  .mw_55 {
    width: 55px;
  }

  .insider_checks h3 {
    margin-bottom: 1rem;
  }

  .insider_checks {
    margin-top: 1rem;
  }

  .insider_checks input[name^=prm_][name$=_inf_qst] {
    width: 0;
  }

  .insider_checks input[name^=prm_][name$=_inf_qst]:disabled + label {
    opacity: 0.5;
  }

  .insider_checks label[name^=prm_][name$=_inf_qst] {
    width: auto;
    margin-top: 1rem;
  }

  .checkbox_checks h3 {
    margin-bottom: 1rem;
  }

  .checkbox_checks {
    margin-top: 1rem;
  }

  .checkbox_checks input[name^=prm_][name$=_inf_qst] {
    width: 0;
  }

  .checkbox_checks input[name^=prm_][name$=_inf_qst]:disabled + label {
    opacity: 0.5;
  }

  .checkbox_checks label[name^=prm_][name$=_inf_qst] {
    width: auto;
    margin-top: 1rem;
  }

  .for_copy {
    margin-top: 1rem;
  }

  .input_check input[type='checkbox'] {
    display: block;
    width: 0px;
  }

  .editable {
    border: none;
    font-weight: bold;
  }

  .form_inner h4 {
    display: inline-block;
  }

  p.mb24 {
    margin-bottom: 24px;
  }

  .mb24 {
    margin-bottom: 24px;
  }

  .mb40 {
    margin-bottom: 40px;
  }

  .mb64 {
    margin-bottom: 64px;
  }

  ul.list_sty li {
    list-style: disc;
    list-style-position: inside;
  }

  p.center_txt {
    text-align: center;
  }
  p.center_txt span {
    margin: 0 30px;
  }

  .ins_ulst {
    margin: 6px auto 0;
    background-color: #fbfbee;
    padding: 2em;
  }

  .ins_ulst_form {
    background-color: #fff;
    padding: 1.5em;
  }

  .morearea {
    background-color: #fbfbee;
    padding: 2em;
    border-radius: 6px;
  }

  .more_form {
    background-color: #fff;
    padding: 1rem 1.5rem 1rem 1.5rem;
  }

  .input_check li.check_full {
    width: 100%;
    display: none;
  }

  .mini {
    font-size: 0.8em;
  }

  ul.resignation_flex {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
  }

  ul.resignation_flex li {
    margin-right: 2.5em;
  }

  ul.holding_flex {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
  }

  ul.holding_flex li {
    width: 7em;
    margin-right: 0.5em;
  }

  ul.holding_flex li:nth-child(2n) {
    width: 2em;
    margin: 0;
  }

  .input_unit_text_ritu {
    margin: 0;
  }

  .morearea,
  .sec_morearea_01_detail,
  .sec_morearea_02_detail {
    display: none;
  }

  .text_container {
    margin: 0 20px;
  }

  .error_col {
    width: 423px;
  }

  /* #btnArea
  ---------------------------------------------------------- */
  #btnArea ul {
    width: 100%;
    margin: 0 0 0 0;
    margin: 0 0 0 auto;
  }

  #btnArea li:first-child .button {
    margin: 0 auto 0 0;
  }

  #btnArea li:last-child .button {
    margin: 0 0 0 auto;
  }

  /*  #contents
   ---------------------------------------------------------- */
  #contents {
    background-color: #fff;
    /*width: 980px;*/
    max-width: 980px;
    width: 100%;
    margin: 0 auto;
  }

  /* .header
  ---------------------------------------------------------- */
  .header {
    border-top: #E60000 4px solid;
    padding: 0 1rem;
    margin: 0 auto;
    background: none;
  }

  .header_container {
    /*width: 980px;*/
    max-width: 980px;
    width: 100%;
    margin: 6px auto;
    display: flex;
    align-items: center;
  }

  .header_container h1 {
    width: 80%;
    min-width: 413px;
    margin: 0;
    font-size: 1px;
    display: inline-block;
  }

  .header_container h1 img {
    width: 450px;
  }

  .header_container > ul {
    width: 20%;
    min-width: 200px;
    margin: auto 30px auto auto;
    padding: 6px 0 0;
  }

  .header_container > ul > li {
    font-size: 0.625rem;
    font-weight: bold;
    text-align: right;
  }

  .header_container > ul > li:nth-child(2) {
    position: relative;
    color: #0E0D6A;
    font-size: 1.5rem;
    margin: 0 0;
    z-index: 0;
  }

  #free::before {
    position: absolute;
    content: "";
    background: url(../images/txt_free_dial.png) no-repeat 0 0;
    width: 40px;
    height: 31px;
    top: 0;
    bottom: 0;
    left: -6px;
    margin: auto 0;
    z-index: 0;
  }

  .contact {
    display: none;
  }

  .contact_dialog {
    display: none;
  }

  /* .header-logout
---------------------------------------------------------- */
  .header-logout {
    position: relative;
    right: 0;
    margin-top: 0px;
    margin-right: 50px;
    width: 20px;
  }

  .header-logoutBtn:hover {
    opacity: 0.5;
  }

  .icon_logout {
    display: inline-block;
    position: absolute;
    left: 12px;
    top: 7px;
    width: 30px;
    height: 40px;
    background-size: 100% 100%;
  }

  /* .maintitle
---------------------------------------------------------- */
  .maintitle {
    padding: 1rem;
    font-size: 1.5rem;
    background-color: #e60000;
    color: #fff;
    margin: 0 auto;
  }

  .maintitle p {
    /* width: 960px;  */
    margin: 0 auto;
    max-width: 960px;
    width: 100%;
  }

  /* footer
  ---------------------------------------------------------- */
  .footer {
    border-top: solid 10px #5e5e5e;
  }

  #foot {
    position: relative;
    margin: 0 auto;
    /* width: 980px; */
    max-width: 980px;
    width: 100%;
    min-height: 140px;
  }

  #foot ul li a,
  #foot ul li a:link,
  #foot ul li a:visited {
    color: #5a5a5a;
  }

  #foot p {
    position: relative;
    top: 0;
    left: 0;
    background-color: #fff;
    font-size: 85.7%;
    margin: 10px auto;
    padding: 0 2.3%;
  }

  #foot p#copyright {
    position: relative;
    top: 0;
    left: 0;
    text-align: left;
    font-size: 85.7%;
  }

  #foot ul {
    position: relative;
    margin: 25px 0;
    border-bottom: none;
    background-color: #fff;
    display: flex;
    flex-wrap: wrap;
    padding: 0 1rem;
  }

  #foot ul li {
    position: relative;
    font-size: 0.875rem;
    text-align: center;
    z-index: 1;
    padding: 0 1rem;
  }

  #foot ul li:not(:last-child)::after {
    position: absolute;
    content: "";
    background: #333;
    width: 1px;
    height: 100%;
    top: 0;
    /* right: -24px; */
    right: 0;
    z-index: 0;
  }

  #foot ul li a {
    display: inline-block;
  }

  /* pageTop
  ---------------------------------------------------------- */
  #pageTop {
    background: url(../images/btn_pagetop.svg) no-repeat 0 0;
    width: 55px;
    height: 55px;
    opacity: 0.8;
  }

  #pageTop {
    position: fixed;
    right: 20px;
    bottom: 20px;
    cursor: pointer;
  }

  #pageTop a {
    display: block;
  }

  #pageTop span {
    display: none;
  }

  /* checkbox
---------------------------------------------------------- */
  input:not(.ac)[type='checkbox']:checked + label {
    background-image: url(../images/icn_check_pc_checked.png);
  }

  input:not(.ac)[type='checkbox'] + label {
    display: inline-block;
    padding: 6px 0 6px 36px;
    background: url(../images/icn_check_pc.png) no-repeat 0 0;
    cursor: pointer;
  }

  .inform_box1 input[type='checkbox'] + label {
    background-position-y: 50%;
    padding: 8px 10px 8px 56px;
  }

  .inform_box3 input[type='checkbox'] + label {
    background-position-y: 50%;
    padding: 8px 10px 8px 56px;
  }

  input[type="checkbox"], input[type="radio"], select {
    cursor: pointer;
  }

  input[type='checkbox']:disabled + label {
    opacity: 0.4;
  }

  div > input:not(.ac)[type='checkbox'] {
    position: relative;
    left: 0;
    height: 0;
    display: none;
  }

  /* label
---------------------------------------------------------- */
  label.error {
    color: #d64541;
    display: block;
    margin: 0 auto;
    margin-top: 0;
    background: none;
    border: none;
    font-weight: bold;
    padding: 10px;
  }

  .input_mynumber label {
    font-weight: bold;
    margin: 6px 0;
    display: block;
  }

  .section_mynumber .input_mynumber label {
    display: none;
  }

  .upload_error label.button_cardbox::before {
    content: '\3082 \3046 \4e00 \5ea6 ';
  }

  .upload_running label {
    opacity: 0.5;
  }

  .input_radio label.error {
    background: none;
    padding-left: 0;
  }

  .input_radio label,
  .input_check label {
    position: relative;
    padding: 6px 0 6px 36px;
    transition: 0.2s;
    cursor: pointer;
    display: inline-block;
  }

  .input_radio label {
    background: url(../images/icn_radio.png) no-repeat 0 0;
  }

  .input_radio input[type='radio']:checked + label {
    background: url(../images/icn_radio_checked.png) no-repeat 0 0;
    cursor: pointer;
  }

  .input_radio input[type='radio']:disabled + label {
    background: url(../images/icn_radio.png) no-repeat 0 0;
    cursor: default;
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha( opacity=50 )";
    pointer-events: none;
  }

  .input_radio label:hover {
    background-color: #fff;
    color: #333;
    opacity: 1;
  }

  .input_radio.reinput_radio label {
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha( opacity=50 )";
    pointer-events: none;
  }

  .input_radio label:active {
    top: 1px;
    box-shadow: none;
  }

  .input_check label {
    background: url(../images/icn_check_pc.png) no-repeat 0 0;
  }

  .input_check input[type='checkbox']:checked + label {
    background: url(../images/icn_check_pc_checked.png) no-repeat 0 0;
    cursor: pointer;
  }

  .input_check input[type='checkbox']:disabled + label {
    background: url(../images/icn_check_pc.png) no-repeat 0 0;
    cursor: default;
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha( opacity=50 )";
  }

  .input_check.reinput_check label {
    cursor: default;
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha( opacity=50 )";
    pointer-events: none;
  }

  input.valid {
    background-color: #fff;
  }

  .is-errorParent-input_unit {
    align-items: top;
  }

  .input_unit_search.is-errorParent-input_unit > li:nth-child(2) {
    margin: -22px 10px 22px 0;
  }

  .is-errorParent-input_box label {
    color: #e60000;
  }

 /* inputstep
---------------------------------------------------------- */
  .inputstep {
    position: fixed;
    background: #ffebee;
    top: 40%;
    right: 0;
    margin: 0;
    padding: 10px;
    border-radius: 0 0 0 4px;
    text-align: center;
    display: block;
    box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.2), 0 2px 2px rgba(0, 0, 0, 0.19);
    z-index: 9997;
  }

  .inputstep p {
    color: #e60000;
    font-weight: bold;
  }

  .inputstep span {
    font-size: 1.625rem;
    line-height: 1em;
    margin: 0 auto;
    display: block;
  }

  /* input
  ---------------------------------------------------------- */
  .input:-moz-placeholder {
    color: #929292;
    opacity: 1;
  }

  .input:-ms-input-placeholder {
    color: #929292;
  }

  .input:-webkit-input-placeholder {
    color: #929292;
  }

  input:disabled,
  select:disabled {
    opacity: 0.5;
  }

  .input {
    display: inline-block;
    height: 18px;
    border: #cdd6dd 1px solid;
    border-radius: 6px;
    background-color: #fbfbee;
    box-shadow: none;
    border-radius: 6px;
    transition: 0.2s;
    padding: 10px;
    width: 100%;
  }

  input[type='text'],
  input[type='email'],
  input[type='password'],
  input[type='number'],
  input[type='tel'],
  input[readonly] {
    width: 100%;
    height: auto;
  }

  .input.must:hover,
  .input.must:focus {
    background: #ffffeb;
    border: #92957d 1px solid;
  }

  .input.must:disabled:hover,
  .input.must:disabled:focus {
    background: #fff;
    border: #cdd6dd 1px solid;
  }

  .input.error,
  .input.error:hover,
  .is-errorParent .form_inner_select {
    background: #fce5e5;
    border: #e60000 1px solid;
    color: #e60000;
  }

  input.error {
    display: inline-block;
    box-shadow: inset 2px 2px 4px #e2e2e2;
  }

  input[readonly].input.must {
    background: #ebeced;
    border: #cdd6dd 1px solid;
    pointer-events: none;
  }

  .input_confirm input[readonly].input.must {
    background: none;
    border: none;
    font-weight: bold;
    display: inline-block;
    width: auto;
  }

  .reinput_text input {
    background: #ebeced !important;
    border: #cdd6dd 1px solid !important;
    pointer-events: none;
  }

  .input_any .input.must {
    background: #fff;
  }

  .input_any > p > span,
  .input_any .nini {
    position: relative;
    background: #999;
    color: #fff;
    font-size: 0.75rem;
    font-weight: bold;
    border-radius: 4px;
    padding: 2px 8px;
    margin: 0 0 0 8px;
    top: -2px;
    display: inline-block;
  }

  .input_radio,
  .input_check {
    margin: 0 auto;
    display: flex;
    flex-flow: wrap;
  }

  .input_radio {
    flex-direction: row;
  }

  .input_radio li {
    margin: 8px 24px 8px 0;
  }

  .input_check li {
    margin: 8px 0;
    width: 25%;
  }

  .input_radio.radio_large li {
    margin: 0 0 12px;
    width: 50%;
    padding-right: 1rem;
    position: relative;
  }

  .input_radio input[type='radio'] {
    display: block;
    visibility: hidden;
    height: 0px;
  }

  .input_check.check_large li {
    margin: 0 0 12px;
    width: 50%;
  }

  /* select
  ---------------------------------------------------------- */
  select {
    padding: 8px;
    cuesor: pointer;
    width: 100%;
    background-color: #fbfbee;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    position: relative;
    font-size: 1rem;
    z-index: 0;
    transition: 0.2s;
    vertical-align: middle;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }

  .select {
    position: relative;
    font-size: 1rem;
    background: #fbfbee;
    border: #cdd6dd 1px solid;
    border-radius: 6px;
    margin: 6px 0;
    z-index: 0;
    transition: 0.2s;
    width: 100%;
  }

  .select select {
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    border: none;
    outline: none;
    border-radius: 6px;
    background: transparent;
    background-image: none;
    box-shadow: none;
    font-weight: normal;
    color: #000;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    color: #000;
  }

  .select select::-ms-expand {
    display: none;
  }

  select.error {
    color: #000;
  }

  .select:hover {
    background: #ffffeb;
    border: #92957d 1px solid;
  }

  .select:hover::before {
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "alpha( opacity=100 )";
  }

  .select select.valid {
    background-color: #fff;
  }

  .input_unit_select .select {
    margin: 0;
  }

  .select::before {
    position: absolute;
    content: '';
    background: url(../images/icn_arrow_select.png) no-repeat 0 0;
    width: 10px;
    height: 6px;
    top: 0;
    right: 10px;
    bottom: 0;
    margin: auto 0;
    display: block;
    z-index: 1;
    opacity: 0.8;
    filter: alpha(opacity=80);
    -ms-filter: "alpha( opacity=80 )";
  }

  .reselect {
    background: #ebeced !important;
    border: #cdd6dd 1px solid !important;
    pointer-events: none;
  }

  /* button
  ---------------------------------------------------------- */
  button {
    display: block;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }

  .button,
  button.button,
  input.button,
  a.button {
    width: 50%;
    padding: 1em 0;
    margin: 0 25%;
    color: #FFF;
    display: block;
    position: relative;
    text-align: center;
    text-decoration: none;
    border: none;
    border-radius: 2px;
    box-shadow: 0px 3px 0.5px 0 rgba(0, 0, 0, 0.2);
    background: #2a2d38;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }

  .form_inner .button {
    background: #2a2d38;
    color: #fff;
    font-size: 0.875rem;
    border-radius: 4px;
    width: auto;
    padding: 8px 14px;
    margin: 0;
    box-shadow: 0px 3px 0.5px 0 rgba(0, 0, 0, 0.3);
    display: block;
  }

  .form_inner .button:active {
    box-shadow: none;
  }

  .form_inner .button_inactive .button,
  .form_inner .button_inactive .button:active {
    opacity: 0.3;
    filter: alpha(opacity=30);
    -ms-filter: "alpha( opacity=30 )";
    top: 1;
    cursor: default;
    box-shadow: none;
  }

  .stepArea .disable_button,
  .stepArea .disable_button:hover,
  .stepArea .disable_button:active {
    opacity: 0.4;
    filter: alpha(opacity=30);
    -ms-filter: "alpha( opacity=30 )";
    top: 1px;
    cursor: default;
    box-shadow: none;
  }

  .button:hover {
    opacity: 0.8;
  }

  .button:active {
    top: 3px;
    box-shadow: none;
  }

  .p_next {
    opacity: 0.3;
    background: #e60000;
    box-shadow: 0px 3px 0.5px 0 rgba(0, 0, 0, 0.2);
    width: 50%;
    padding: 1em 0;
    margin: 0 25%;
    color: #FFF;
    display: block;
    position: relative;
    text-align: center;
    text-decoration: none;
    border: none;
    border-radius: 2px;
    box-shadow: 0px 3px 0.5px 0 rgba(0, 0, 0, 0.2);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }

  /* stepArea
  ---------------------------------------------------------- */
  .stepArea {
    position: relative;
    margin: 40px 0 60px;
    z-index: 0;
  }

  .stepArea ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 96%;
    margin: 0 auto;
    z-index: 1;
  }

  .stepArea li {
    width: 50%;
  }

  .stepArea li:last-child .button,
  .stepArea li:last-child .p_next {
    margin: 0 0 0 auto;
  }

  .stepArea li:first-child .button {
    margin: 0 auto 0 0;
  }

  .stepArea.withNotes ul {
    align-items: center;
  }

  .Area_third {
    justify-content: space-between;
  }

  .Area_third li {
    width: 33%;
  }

  .Area_third li .button,
  .Area_third li .p_next,
  .Area_third li button.button,
  .Area_third li a.button {
    width: 80%;
    margin: 0 auto;
  }

  /*  .progress
  ---------------------------------------------------------- */
  /*  .progress_typeA (default)
  -------------------------------------- */
  .progress {
    width: 100%;
    padding: 20px 30px 0px 30px;
  }

  .progress ul {
    position: relative;
    display: flex;
    flex-flow: nowrap;
    align-items: center;
    justify-content: space-between;
    z-index: 0;
  }

  .progress ul::after {
    background: #cdd6dd;
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0px;
    width: 100%;
    height: 2px;
    margin: auto 0;
    z-index: 0;
  }

  .progress li {
    position: relative;
    width: 100%;
    z-index: 1;
  }

  .progress li:last-child {
    width: auto;
  }

  .progress li::before {
    position: relative;
    content: '';
    background: #cdd6dd;
    border: #cdd6dd 2px solid;
    border-radius: 50%;
    color: #fff;
    display: block;
    height: 30px;
    width: 30px;
    z-index: 2;
  }

  .progress li.progress_done::before {
    background: #e60000;
    border: #e60000 2px solid;
  }

  .progress li.progress_passing::before {
    background: #fff;
    border: #e60000 2px solid;
  }

  .progress li.progress_done::after {
    background: #e60000;
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0px;
    width: 100%;
    height: 2px;
    margin: auto 0;
    z-index: 1;
  }

  .progress-text {
    width: 100%;
    padding: 3px 5px 15px 5px;
  }

  .progress-text ul {
    position: relative;
    display: flex;
    flex-flow: nowrap;
    align-items: flex-start;
    justify-content: space-between;
    z-index: 0;
  }

  .progress-text li {
    position: relative;
    width: 80px;
    z-index: 1;
    font-size: 10.5px;
    text-align: center;
    line-height: 1.3;
  }

  .progress-text li.text-narrow {
    letter-spacing: -0.05rem;
  }

  /*  .progress_typeB
  -------------------------------------- */
  .progress_typeB {
    background: #cdd6dd;
    display: flex;
    flex-flow: wrap;
    width: 98%;
    min-height: 50px;
    margin: 20px auto;
  }

  .progress_typeB {
    position: relative;
    flex-flow: nowrap;
    border-radius: 3px;
    min-height: 16px;
    max-height: 16px;
    width: 96%;
    margin: -8px auto 20px;
    z-index: 0;
  }

  .progress_typeB li {
    position: relative;
    display: flex;
    flex-flow: nowrap;
    align-items: center;
    /*	width: 16.5%; 6\500b \4e26 \3073 \306b \3059 \308b \5834 \5408 \306e \8a2d \5b9a  */
    width: 20%;
    min-height: 50px;
    padding: 0 9px 0 26px;
    margin: 0;
  }

  .progress_typeB li:first-child {
    /*	width: 17.5%; 6\500b \4e26 \3073 \306b \3059 \308b \5834 \5408 \306e \8a2d \5b9a  */
    padding: 0 0 0 8px;
  }

  .progress_typeB li::before,
  .progress_typeB li::after {
    content: '';
    position: absolute;
    display: block;
  }

  .progress_typeB li:last-child::before,
  .progress_typeB li:last-child::after {
    display: none;
  }

  .progress_typeB li::before {
    background: none;
    width: 36px;
    height: 36px;
    border: 4px solid;
    border-color: #fff #fff transparent transparent;
    transform: rotate(45deg);
    top: 0;
    bottom: 0;
    right: -7.5%;
    margin: auto 0;
    z-index: 2;
  }

  .progress_typeB li::after {
    background: #cdd6dd;
    width: 36px;
    height: 36px;
    transform: rotate(45deg);
    top: 0;
    bottom: 0;
    right: -7.5%;
    margin: auto 0;
    z-index: 1;
  }

  .progress_typeB.progress_1 li:nth-child(1)::after,
  .progress_typeB.progress_2 li:nth-child(-n + 2)::after,
  .progress_typeB.progress_3 li:nth-child(-n + 3)::after,
  .progress_typeB.progress_4 li:nth-child(-n + 4)::after,
  .progress_typeB.progress_5 li:nth-child(-n + 5)::after,
  .progress_typeB.progress_6 li:nth-child(-n + 6)::after {
    background: #e60000;
  }

  .progress_typeB li span {
    position: relative;
    color: #fff;
    font-size: 0.75rem;
    display: block;
    width: 100%;
    z-index: 2;
  }

  .progress_typeB {
    background: #cdd6dd;
  }

  .progress_typeB.progress_1 {
    background: linear-gradient(90deg, #e60000 20.5%, #cdd6dd 20.5%);
  }

  .progress_typeB.progress_2 {
    background: linear-gradient(90deg, #e60000 40%, #cdd6dd 40%);
  }

  .progress_typeB.progress_3 {
    background: linear-gradient(90deg, #e60000 60%, #cdd6dd 60%);
  }

  .progress_typeB.progress_4 {
    background: linear-gradient(90deg, #e60000 80%, #cdd6dd 80%);
  }

  .progress_typeB.progress_5 {
    background: #e60000;
  }

 /*  .dialog .dialogbox
-------------------------------------- */
  .dialog {
    position: fixed;
    background: rgba(0, 0, 0, 0.5);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: none;
    z-index: 9998;
  }

  .dialog_button_close,
  button.dialog_button_close,
  a.dialog_button_close {
    margin: 0;
  }

  .dialogbox {
    position: fixed;
    border-top: #DDD 1px solid;
    border-right: #DDD 1px solid;
    border-bottom: none;
    border-left: #DDD 1px solid;
    border-radius: 4px;
    text-align: center;
    width: 400px;
    min-height: 280px;
    top: 80px;
    right: 0;
    left: 0;
    margin: 0 auto;
    padding: 0;
    background: #FFF;
    box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.5), 0 2px 2px rgba(0, 0, 0, 0.3);
    z-index: 9999;
  }

  .dialogbox section {
    position: relative;
    padding: 16px;
  }

  .dialogbox section > h1 {
    color: #7F7F7F;
    font-size: 1.5rem;
    margin: 1.5rem auto;
  }

  .dialogbox section > ul {
    margin: 20px auto 0;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
  }

  .dialogbox section > ul li {
    min-width: 120px;
    margin: 0 auto;
  }

  .dialogbox section > ul li > .button {
    width: 100%;
  }

  .dialogbox > i {
    position: absolute;
    font-size: 2rem;
    color: #8A8A8C;
    top: 1%;
    right: 3%;
    z-index: 9999;
    cursor: pointer;
  }

  .dialog_active {
    display: block;
  }

  .dialogbox .description {
    padding: 0 .5rem;
  }

 /*  .toggle_check
-------------------------------------- */
  .toggle_check {
    position: relative;
    padding: 5px 0 0 10px;
    margin: 12px 0 0;
    cursor: pointer;
    display: inline-block;
    z-index: 0;
  }

  .toggle_check::before {
    position: absolute;
    background: url(../images/icn_check_pc.png) no-repeat 0 0;
    left: 0;
    top: 0;
    content: '';
    height: 30px;
    width: 30px;
    z-index: 0;
  }

  .toggle_check.check_on::before {
    background: url(../images/icn_check_pc_checked.png) no-repeat 0 0;
  }

  .toggle_check i {
    position: relative;
    padding: 0 0 0 30px;
    z-index: 1;
    display: inline-block;
  }

    /*  name
-------------------------------------- */
  .input_unit {
    display: flex;
    flex-flow: wrap;
    margin: 0 auto;
  }

  .input_unit li {
    position: relative;
    margin: 0 12px 0 0;
    z-index: 0;
  }

  .input_unit_text {
    flex-flow: nowrap;
    justify-content: space-between;
    margin: 0 0 12px;
  }

  .input_unit_text li {
    width: 48%;
    margin: 0 1% 0 0;
  }

  .input_unit_text li:last-child {
    margin: 0 0 0 1%;
  }

  /*  .sec_birthday
-------------------------------------- */
  .sec_birthday ul {
    display: flex;
  }

  .sec_birthday ul li {
    width: 240px;
  }

  .sec_birthday ul li + li {
    margin-left: 20px;
  }

  .sec_birthday ul li select {
    border-radius: 3px;
  }

  /*  .sec_birthday_2
-------------------------------------- */
  .sec_birthday_2 ul {
    display: flex;
  }

  .sec_birthday_2 ul li {
    width: 270px;
  }

  .sec_birthday_2 ul li + li {
    margin-left: 10px;
  }

  .sec_birthday_2 ul li select {
    border-radius: 3px;
  }

  .select_birthday li:nth-child(1),
  .select_birthday li:nth-child(2),
  .select_birthday li:nth-child(3) {
    width: 30%;
  }

  .select_day li:nth-child(1),
  .select_day li:nth-child(2),
  .select_day li:nth-child(3) {
    width: 27%;
  }

  .prechange {
    background-color: #fbfbee;
  }

  /*  password
-------------------------------------- */
  .sec_pass input {
    display: block;
    width: 400px;
  }

  /*  tel
-------------------------------------- */
  .input_unit_tel {
    align-items: flex-end;
    justify-content: space-between;
  }

  .form_inner_input .input_unit_tel:first-child {
    margin: 0 0 12px;
  }

  .input_unit_tel li {
    width: 32%;
    margin: 0 1% 0 0;
  }

  .input_unit_tel li:last-child {
    margin: 0 0 0 0;
  }

  .input_unit_tel li:not(:first-child)::before {
    position: absolute;
    content: '-';
    color: #333;
    display: inline-block;
    top: 25%;
    left: -12px;
    bottom: 0;
    margin: auto 0;
    z-index: 0;
  }

  /*  adresscode
-------------------------------------- */
  .warp,
  .warp_button {
    position: relative;
    z-index: 0;
  }

  .warp_button.button_inactive::before {
    position: absolute;
    content: '';
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "alpha( opacity=100 )";
    display: block;
    z-index: 1;
  }

  .input_unit_search {
    align-items: center;
  }

  .input_unit_search li:nth-child(1) {
    max-width: 213px;
  }

  .input_unit_search {
    position: relative;
    z-index: 0;
  }

  /*  long textbox
-------------------------------------- */
  #contents form .form_inner_input {
    margin: 6px auto 18px;
  }

  .sec_apply_doc h2 {
    margin: 20px auto 20px;
  }

  /*  back button
-------------------------------------- */
  .button_back,
  button.button_back,
  a.button_back,
  .button_cancel,
  button.button_cancel,
  a.button_cancel,
  .dialog_button_close,
  button.dialog_button_close,
  a.dialog_button_close {
    background: #5a5a5a;
  }

  /*  next button
-------------------------------------- */
  .button_next,
  button.button_next,
  a.button_next {
    background: #e60000;
  }

  /*  login button
-------------------------------------- */
  .button_login,
  button.button_login,
  a.button_login {
    background: #e60000;
    margin: 0 auto !important;
  }

  /*  .edit button
  ---------------------------------------------------------- */
  .input_confirm {
    display: flex;
    flex-flow: wrap;
    align-items: center;
  }

  .confirm_edit {
    background: #fff url(../images/icn_pencil2.png) no-repeat center/contain;
    width: 32px;
    height: 32px;
    border: #fff 1px solid;
    border-radius: 4px;
    cursor: pointer;
    margin: -10px 0;
  }

  .confirm_edit:hover {
    border: #999 1px solid;
    opacity: 0.8;
    filter: alpha(opacity=80);
    -ms-filter: "alpha( opacity=80 )";
  }

  .confirm_edit span {
    display: none;
  }

  .display_account_pw {
    width: 50% !important;
  }

  .guidance_edit {
    background: #fff url(../images/icn_pencil2.png) no-repeat center/contain;
    width: 30px;
    height: 30px;
    margin: -10px 4px;
    display: inline-block;
  }

  .checkPDFBtn {
    display: block;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }

  .checkPDFBtn a {
    width: 50%;
    padding: 1em 0;
    margin: 0 auto 0 0;
    color: #FFF;
    display: block;
    position: relative;
    text-align: center;
    text-decoration: none;
    border: none;
    border-radius: 2px;
    box-shadow: 0px 3px 0.5px 0 rgba(0, 0, 0, 0.2);
    background: #5a5a5a;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    text-decoration: none;
  }

  .checkPDFBtn a:hover {
    opacity: 0.8;
    text-decoration: none;
  }

  .checkPDFBtn a:active {
    top: 3px;
    box-shadow: none;
  }

  .stronger {
    color: #ff0000;
    font-weight: bold;
  }
}
.right {
  text-align: right !important;
  clear: both;
}

@media print, (min-width: 768px) and (max-width: 901px) {
  .header-logoutBtn {
    width: 43px;
    height: 52px;
    border-radius: 4px;
    border: 0;
    margin: 15px 0 0 0;
    padding: 0 0 0 11px;
    background-image: url(../images/header-logoutBtn_pc.png);
    background-repeat: no-repeat;
    background-size: 43px;
    cursor: pointer;
  }
}
@media print, (min-width: 901px) and (max-width: 994px) {
  .header-logoutBtn {
    width: 43px;
    height: 52px;
    border-radius: 4px;
    border: 0;
    margin: 15px 0 0 0;
    padding: 0 0 0 11px;
    background-image: url(../images/header-logoutBtn_pc.png);
    background-repeat: no-repeat;
    background-size: 43px;
    cursor: pointer;
  }
}
@media print, (min-width: 994px) {
  .header-logoutBtn {
    width: 43px;
    height: 52px;
    border-radius: 4px;
    border: 0;
    margin: 15px 0 0 0;
    padding: 0 0 0 11px;
    background-image: url(../images/header-logoutBtn_pc.png);
    background-repeat: no-repeat;
    background-size: 43px;
    cursor: pointer;
  }
}
@media print, (max-width: 767px) {
  html {
    overflow-y: scroll;
    background-color: #FFF;
    color: #2c241f;
    font-size: 14px;
    font-family: "UD\65b0 \30b4 NT M";
    font-family: "\30d2 \30e9 \30ae \30ce \89d2 \30b4  Pro", "Hiragino Kaku Gothic Pro", "\30e1 \30a4 \30ea \30aa ", "Meiryo", "sans-serif";
    line-height: 1.6;
    -webkit-text-size-adjust: none;
  }

  body {
    position: relative;
    margin: 0 auto;
    background-color: #fff;
    z-index: 0;
    width: auto;
  }

  img {
    max-width: 100%;
    height: auto;
    border: 0;
    vertical-align: top;
  }

  h1, h2, h3, h4 {
    font-weight: bold;
  }

  h1 {
    font-size: 28px;
    text-align: center;
  }

  h2 {
    color: #333;
    font-size: 1.125rem;
    margin: 50px 0 20px;
    padding: 0.25em 0.5em;
    border-left: solid 5px #71777E;
  }

  h3 {
    font-size: 1.125rem;
  }

  ul,
  li,
  input,
  label {
    box-sizing: border-box;
  }

  .step_inactive button,
  .step_inactive button:hover {
    background: #e60000;
    box-shadow: 0px 3px 0.5px 0 rgba(0, 0, 0, 0.2);
  }

  .step_inactive > p {
    box-shadow: 0px 3px 0.5px 0 rgba(0, 0, 0, 0.2);
  }

  #birthday_input_section {
    display: flex;
  }

  #birthday {
    min-width: 240px;
  }

  #prm_cstmr_addr_kj1 {
    pointer-events: none;
  }

  .flex_bet {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }

  .app_bg {
    width: 100%;
    background-color: #fce5e5;
  }

  .app_area {
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
  }

  .title_txt {
    font-weight: bold;
    font-size: 1.5em;
    padding: 1.5em;
  }

  .app_area p {
    text-align: center;
    padding: 1em;
  }

  ul.tsk {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }

  ul.tsk li {
    text-align: center;
    padding: 0.5em 0.2em;
    margin: 0.3em auto;
    min-height: 80px;
    display: inline-flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: center;
    min-width: 0;
  }

  ul.tsk li div {
    height: 40px;
    width: 40%;
    min-width: 0;
  }

  ul.tsk li:not(.progress_day) {
    width: 80%;
    background-color: #fff;
    padding: 0 1rem;
  }

  ul.tsk li img {
    max-width: 80px;
    max-height: 40px;
    margin-top: 0;
    min-width: 0;
  }

  ul.tsk li p {
    display: inline-block;
    margin-top: 0.2em;
    margin-left: 1em;
    padding: 0.5em;
    white-space: nowrap;
    width: 60%;
    min-width: 0;
  }

  ul.tsk li.progress_day {
    margin: 0.5em auto;
    text-align: center;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 100px;
    flex: 1;
    min-width: 80px;
  }

  .progress_day p {
    display: block;
    color: #e60000;
    font-size: 16px;
    margin-bottom: 0.5em;
  }

  ul.tsk li.progress_day img {
    transform: rotate(90deg);
    height: 16px;
    width: 58px;
    margin-top: 1.2em;
  }

  .app_area02 {
    width: 80%;
    margin: 0 auto;
    margin-top: 2em;
    margin-bottom: 64px;
    padding: 0 1rem;
  }

  .app_area02 ol {
    margin-bottom: 2em;
  }

  .agree_box {
    text-align: center;
    margin: 1.5em 0 2em;
  }

  #prm_agreement-error {
    text-align: left;
  }

  .agree_box label, #prm_agreement_error {
    margin: 0 auto;
  }

  #prm_agreement_error {
    width: 300px;
    padding-left: 2rem;
  }

  html.basic_information * {
    box-sizing: border-box;
  }

  html.basic_information input {
    height: auto;
  }

  html.basic_information section {
    margin-bottom: 40px;
  }

  html.basic_information h3 {
    margin-bottom: 10px;
  }

  .holding_stock {
    background: #71777E;
    color: #fff;
    border: none;
    padding: .5rem 1rem;
  }

  select {
    font-size: 16px;
  }

  .contact > p {
    bottom: -15px;
  }

  #prm_market_info,
  #prm_event_info {
    display: none;
  }

  .inp_p,
  .mt20,
  #m20 {
    padding: .5rem 0;
  }

  #workinf {
    display: none;
  }

  .sp_none {
    display: none;
  }

  .pc_none {
    display: block;
  }

  .column2 {
    display: flex;
    flex-wrap: wrap;
  }

  .column2 li {
    margin-bottom: 20px;
    width: 100%;
  }

  .column2 li:nth-of-type(odd) {
    margin-right: 0;
  }

  .mb5 {
    margin-bottom: 5px;
  }

  .mb10 {
    margin-bottom: 10px;
  }

  .mt20 {
    margin-top: 20px;
  }

  .ml2p {
    margin-left: 2%;
  }

  .mt24 {
    margin-top: 24px;
  }

  .mb50 {
    margin-bottom: 50px;
  }

  #prm_holdings_cd,
  #prm_member_cd {
    background-color: white;
  }

  .inform_box1 {
    background: #eee;
    padding: 20px 30px 20px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .inform_box1 .file_icon {
    width: 24px;
    height: auto;
    min-width: 16px;
  }

  .inform_box2 {
    background: #eee;
    margin-bottom: 40px;
    padding: 15px 40px 20px 40px;
  }

  .inform_box2 > p {
    font-weight: bold;
  }
  
  .inform_box3 {
    background: #fbfbee;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 30px 20px 20px;
    border-radius: 10px;
    margin-left: 2%;
    border: solid;
    border-color: #ddd;
  }

  .inform_box3 .file_icon {
    width: 24px;
    height: auto;
  }

  .campaign_code #prm_campaign_code {
    width: 100%;
    margin-bottom: 2rem;
    background-color: #fff;
  }

  .sec_pass input {
    display: block;
    width: 100%;
  }

  #inp input {
    width: 100%;
  }

  .is-mail:before {
    content: '\A';
    white-space: pre;
  }

  #prm_market_info_error,
  #prm_event_info_error {
    height: auto;
    padding-top: 0px;
    padding-bottom: 20px;
  }

  .warn {
    padding-top: .5rem;
  }

  .sec_mail .error {
    display: inline-block;
  }

  .sec_mail input {
    width: 100%;
  }

  #login input,
  #login input {
    box-shadow: none;
    border-radius: 6px;
    padding: 10px;
  }

  .login_error {
    width: 100%;
    background-color: #fce5e5;
    color: #e60000;
    border: 1px solid #e60000;
    padding: 1em;
    display: none;
  }

  .sec_mail .error,
  .sec_pass .error {
    display: block;
  }

  #entry_comp {
    width: 96%;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 0 1rem;
  }

  .translation {
    position: relative;
    background: #FFEBEE;
    text-align: center;
    padding: 12em 2em 2em;
    margin: 12px auto 12px;
    z-index: 0;
  }

  .translation {
    position: relative;
    background: #FFEBEE;
    text-align: center;
    padding: 12em 2em 2em;
    margin: 12px auto 12px;
    z-index: 0;
  }

  .translation::before {
    position: absolute;
    content: "";
    background: url(../images/icn_mail_open.png) no-repeat 0 0;
    width: 105px;
    height: 102px;
    top: 2em;
    right: 0;
    left: 0;
    margin: 0 auto;
    display: block;
    z-index: 1;
  }

  #entry_comp > p {
    margin: 0 0 8px;
    font-size: 0.875rem;
  }

  .contents_inner_li {
    position: relative;
    font-size: 0.875rem;
    line-height: 1.4rem;
    margin: 0 0 10px;
    z-index: 0;
  }

  #entry_comp > ul li > em {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
  }

  #entry_comp > ul li > p {
    padding-left: 2.6em;
  }

  #entry_comp > ul li > dl {
    padding-left: 2.6em;
  }

  #entry_comp > ul li > a {
    margin: 1.2em 0.8em;
    display: inline-block;
  }

  .mail_list {
    margin-bottom: 1rem;
  }

  #entry_comp {
    width: 96%;
    margin: 0 auto;
    box-sizing: border-box;
  }

  #prm_trd_motv_other {
    display: none;
    width: 100%;
  }

  #prm_invest_policy_other {
    display: none;
  }

  #prm_trd_typ_other {
    display: none;
  }

  #prm_income_other {
    display: none;
  }

  .choice_other input[type='text'] {
    position: relative;
    top: 16px;
    left: 0;
    bottom: auto;
    margin: 0 auto;
    width: 100%;
    z-index: 1;
  }

  #prm_invest_policy_other-error,
  #prm_trd_typ_other-error {
    background: none;
    border: none;
    color: #d64541;
    border-radius: 0;
    width: 100%;
    padding: 12px;
    margin-top: 0.5rem;
    display: block;
    opacity: 1;
    box-shadow: none;
  }

  #contents .contents_inner .contents_exec .input_confirm form {
    padding: 0 0 0 1rem;
  }

  .confirm_text {
    word-break: break-all;
    max-width: calc(90% - 35px);
  }

  .confirm_text p {
    font-weight: normal;
  }

  #exec > div {
    width: 80%;
    margin: 0 auto;
  }

  #exec .button {
    padding: 1.2rem 0;
  }

  .sec_confirm_list > section {
    margin-left: 1rem;
  }

  #prm_hearing_answer_input {
    display: inline-block;
    padding: 10px;
    height: 18px;
    border: #cdd6dd 1px solid;
    border-radius: 6px;
    background-color: #fff;
    box-shadow: none;
  }

  #househldname h4 {
    font-weight: normal;
  }

  .address_note {
    font-weight: bold;
    color: #d64541;
    padding: .5rem;
  }

  .job_second {
    display: none;
  }

  .info_container {
    display: none;
  }

  .search_pcode {
    display: block;
    margin-left: 10px;
  }

  .error_screen {
    padding: 0 1rem;
  }

  .error_message {
    color: #e60000;
  }

  .id_form {
    display: none;
  }

  .description {
    margin-left: 2rem;
  }

  .mw_55 {
    width: 100%;
  }

  .insider_checks h3 {
    margin-bottom: 1rem;
  }

  .insider_checks {
    margin-top: 1rem;
  }

  .insider_checks input[name^=insider_0] {
    width: 0;
  }

  .insider_checks input[name^=insider_0]:disabled + label {
    opacity: 0.5;
  }

  .insider_checks label[for^=insider_0] {
    width: auto;
    margin-top: 1rem;
  }

  .checkbox_checks h3 {
    margin-bottom: 1rem;
  }

  .checkbox_checks {
    margin-top: 1rem;
  }

  .checkbox_checks input[name^=insider_0] {
    width: 0;
  }

  .checkbox_checks input[name^=insider_0]:disabled + label {
    opacity: 0.5;
  }

  .checkbox_checks label[for^=insider_0] {
    width: auto;
    margin-top: 1rem;
  }

  .for_copy {
    margin-top: 1rem;
  }

  .input_check input[type='checkbox'] {
    display: block;
    width: 0px;
  }

  .editable {
    border: none;
    font-weight: bold;
  }

  .form_inner h4 {
    display: inline-block;
  }

  p.mb24 {
    margin-bottom: 24px;
  }

  .mb20 {
    margin-bottom: 10px;
  }

  .mb24 {
    margin-bottom: 24px;
  }

  .mb40 {
    margin-bottom: 40px;
  }

  .mb64 {
    margin-bottom: 64px;
  }

  ul.list_sty li {
    list-style: disc;
    list-style-position: inside;
  }

  p.center_txt {
    text-align: center;
    margin-top: 1.2em;
  }
  p.center_txt span {
    margin: 0 10px;
    white-space: nowrap;
  }

  .ins_ulst {
    margin: 6px auto 0;
    background-color: #fbfbee;
    padding: 1em;
  }

  .ins_ulst_form {
    background-color: #fff;
    padding: 1em;
  }

  .morearea {
    background-color: #fbfbee;
    padding: 1em;
    border-radius: 6px;
  }

  .more_form {
    background-color: #fff;
    padding: 1em;
  }

  .input_check li.check_full {
    width: 100%;
    display: none;
  }

  .mini {
    font-size: 0.8em;
  }

  ul.resignation_flex {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
  }

  ul.resignation_flex li {
    display: inline-block;
    width: 50%;
    margin-right: 0;
  }

  ul.resignation_flex li:first-child {
    display: inline-block;
    width: 100%;
  }

  ul.resignation_flex li:nth-child(2) {
    padding-right: 1rem;
  }

  ul.holding_flex {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
  }

  ul.holding_flex li {
    width: 30%;
    margin-right: 0.5em;
  }

  ul.holding_flex li:nth-child(2n) {
    width: 2em;
    margin: 0;
  }

  .input_unit_text_ritu {
    margin: 0;
  }

  .morearea,
  .sec_morearea_01_detail,
  .sec_morearea_02_detail {
    display: none;
  }

  .text_container {
    margin: 0 0;
    padding: 1em;
  }

  /* #btnArea
  ---------------------------------------------------------- */
  #btnArea li:first-child .button {
    margin: 0 auto 0 0;
  }

  #btnArea li:last-child .button {
    margin: 0 0 0 auto;
  }

  /*  #contents
   ---------------------------------------------------------- */
  #contents {
    background-color: #fff;
    padding-right: 0;
    padding-left: 0;
  }

  /* .header
  ---------------------------------------------------------- */
  .header {
    border-top: #e60000 4px solid;
    padding: 4px 0 6px;
    margin: 0 auto;
    background: none;
    min-height: 50px;
  }

  .header_container {
    display: flex;
    align-items: center;
  }

  #logo {
    padding: 0;
  }

  header h1 {
    width: 80%;
    min-width: 240px;
    margin: 10px 0 0;
    font-size: 1px;
    display: inline-block;
    text-align: center;
  }

  header h1 img {
    width: 100%;
  }

  /*
    .header_container > ul {
      width: 18%;
      margin: auto 0 auto auto;
    }
  */
  .header_container > ul {
    margin: 10px 0 10px -10px;
  }

  .header_container > ul > li {
    text-align: center;
  }

  .header_container > ul > li:nth-child(-n + 3) {
    display: none;
  }

  .contact > p {
    color: #595a5a;
    bottom: -10px;
  }

  .contact_dialog {
    position: absolute;
    border: #fff 1px solid;
    border-radius: 4px;
    text-align: center;
    width: 90%;
    top: 80px;
    right: 0;
    left: 0;
    margin: 0 auto;
    padding: 10px;
    background: #fff;
    display: none;
    box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.5), 0 2px 2px rgba(0, 0, 0, 0.3);
    z-index: 1000;
  }

  .contact_dialog a {
    text-decoration: none;
  }

  .contact_dialog > p {
    position: relative;
    z-index: 2000;
  }

  .contact_dialog > i {
    position: absolute;
    font-size: 1.25rem;
    line-height: 1.45rem;
    color: #8a8a8c;
    top: 6px;
    right: 6px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    margin: 0;
    z-index: 2001;
  }

  .contact_dialog > .tell_num a,
  .contact_dialog > .tell_num p {
    position: relative;
    font-size: 1.5rem;
    color: #0e0d6a;
    margin: 6px auto 6px 44px;
    display: inline-block;
    z-index: 1;
  }

  #telfree a::before,
  #telfree p::before {
    position: absolute;
    content: '';
    background: url(../images/txt_free_dial.png) no-repeat 0 0;
    width: 40px;
    height: 31px;
    top: 0;
    bottom: 0;
    left: -44px;
    margin: auto 0;
    display: block;
    z-index: 0;
  }

  .header_container .contact_dialog > .tell_num li {
    display: none;
  }

  .contact_dialog > #free1 li:nth-child(1),
  .contact_dialog > #free2 li:nth-child(2),
  .contact_dialog > #unfree li:nth-child(3) {
    display: block;
  }

  .contact_dialog > span {
    font-size: 0.875rem;
    display: block;
  }

  /* .header-logout
---------------------------------------------------------- */
  .header-logout {
    position: relative;
    right: 0;
    margin-top: 0px;
    margin-left: 10px;
    width: 60px;
  }

  .header-logoutBtn {
    position: relative;
    width: 40px;
    height: 55px;
    border-radius: 4px;
    border: 0;
    margin: 0 0 0 0;
    background-image: url(../images/header-logoutBtn_sp.png);
    background-repeat: no-repeat;
    background-size: 40px;
  }

  .header-logoutBtn:hover {
    opacity: 0.5;
  }

  .icon_logout {
    display: inline-block;
    position: absolute;
    left: 12px;
    top: 7px;
    width: 30px;
    height: 30px;
    background-size: 100% 100%;
  }

  /* .maintitle
---------------------------------------------------------- */
  .maintitle {
    padding: 1rem 0;
    font-size: 1.125rem;
    text-align: center;
    background-color: #e60000;
    color: #fff;
    margin: 0 auto;
  }

  /* footer
  ---------------------------------------------------------- */
  .footer {
    border-top: solid 1px #d3d3d3;
  }

  #foot {
    margin: 0 auto;
    padding-bottom: 20px;
    width: 100%;
    background-color: #5a5a5a;
    color: #fff;
  }

  #foot ul {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    border-bottom: solid 1px #8a8a8c;
  }

  #foot ul li {
    width: 50%;
    border-top: none;
    border-bottom: solid 1px #8a8a8c;
    padding: 0;
    float: none;
    box-sizing: border-box;
    text-align: center;
    font-size: 85.7%;
  }

  #foot ul li:nth-child(odd) {
    clear: both;
    border-right: solid 1px #8a8a8c;
  }

  #foot ul li:nth-child(5) {
    border-top: solid 1px #8a8a8c;
    border-bottom: none;
    width: 100%;
    order: 6;
  }

  #foot ul li:nth-child(6) {
    margin: 0 50% 0 0;
    border-right: solid 1px #8a8a8c;
    border-bottom: none;
  }

  #foot ul li:nth-child(5) a {
    font-size: 0.875rem;
  }

  #foot ul li a,
  #foot ul li a:link,
  #foot ul li a:visited {
    color: #fff;
    text-decoration: none;
  }

  #foot ul li a {
    font-size: 1rem;
    padding: 10px 0;
    display: block;
  }

  #foot p {
    padding: 5% 8%;
    font-size: 0.75rem;
    text-align: center;
  }

  #foot p#copyright {
    padding-top: 0;
    font-size: 85.7%;
  }

  /* pageTop
  ---------------------------------------------------------- */
  #pageTop {
    background: url(../images/btn_pagetop.svg) no-repeat 0 0;
    width: 55px;
    height: 55px;
    opacity: 0.8;
    position: fixed;
    right: 20px;
    bottom: 20px;
    cursor: pointer;
  }

  #pageTop span {
    display: none;
  }

  /* checkbox
---------------------------------------------------------- */
  input:not(.ac)[type='checkbox']:checked + label {
    background-image: url(../images/icn_check_pc_checked.png);
  }

  input:not(.ac)[type='checkbox'] + label {
    display: inline-block;
    padding: 6px 0 6px 36px;
    background: url(../images/icn_check_pc.png) no-repeat 0 0;
    cursor: pointer;
  }

  .inform_box1 input[type='checkbox'] + label {
    background-position-y: 50%;
    padding: 8px 10px 8px 46px;
  }

  .inform_box3 input[type='checkbox'] + label {
    background-position-y: 50%;
    padding: 8px 10px 8px 46px;
  }

  input[type="checkbox"], input[type="radio"], select {
    cursor: pointer;
  }

  input[type='checkbox']:disabled + label {
    opacity: 0.4;
  }

  div > input:not(.ac)[type='checkbox'] {
    position: relative;
    left: 0;
    height: 0;
    display: none;
  }

  /* label
---------------------------------------------------------- */
  label.error {
    color: #d64541;
    display: block;
    background: none;
    border: none;
    font-weight: bold;
    padding: 10px;
  }

  .input_mynumber label {
    font-weight: bold;
    margin: 6px 0;
    display: block;
  }

  .upload_error label.button_cardbox::before {
    content: '\3082 \3046 \4e00 \5ea6 ';
  }

  .upload_running label {
    opacity: 0.5;
  }

  .input_radio label,
  .input_check label {
    position: relative;
    padding: 6px 0 6px 36px;
    transition: 0.2s;
    cursor: pointer;
    display: inline-block;
  }

  .input_radio label {
    font-weight: bold;
    background: #FFF;
    border: #CDD6DD 2px solid;
    color: #333;
    border-radius: 2px;
    opacity: 1;
    width: 100%;
    padding: 12px;
    display: block;
    filter: alpha(opacity=50);
    -ms-filter: "alpha( opacity=50 )";
    box-shadow: none;
  }

  .input_radio label:hover {
    background: #fff;
    color: #E60000;
    border: #E60000 2px solid;
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "alpha( opacity=100 )";
  }

  .input_radio label.error {
    background: none;
    padding-left: 0;
  }

  .input_radio input[type='radio']:checked + label {
    color: #E60000;
    background: #FCE5E5;
    border: #E60000 2px solid;
    opacity: 1;
    cursor: pointer;
    filter: alpha(opacity=100);
    -ms-filter: "alpha( opacity=100 )";
  }

  .input_radio label:active {
    top: 1px;
    box-shadow: none;
  }

  .input_radio input[type='radio']:disabled + label {
    cursor: default;
    color: #fff;
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "alpha( opacity=100 )";
  }

  .input_radio input[type='radio']:disabled + label,
  .input_radio input[type='radio']:disabled + label:active {
    color: #fff;
    background: #2a2d38;
    border: #2a2d38 1px solid;
    box-shadow: none;
    opacity: 0.4;
    filter: alpha(opacity=40);
    -ms-filter: "alpha( opacity=40 )";
    font-weight: normal;
    top: 0;
  }

  .input_radio.reinput_radio label {
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha( opacity=50 )";
    pointer-events: none;
  }

  .input_check label {
    background: url(../images/icn_check_pc.png) no-repeat 0 0;
  }

  .input_check input[type='checkbox']:checked + label {
    background: url(../images/icn_check_pc_checked.png) no-repeat 0 0;
    cursor: pointer;
  }

  .input_check input[type='checkbox']:disabled + label {
    background: url(../images/icn_check_pc.png) no-repeat 0 0;
    cursor: default;
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha( opacity=50 )";
  }

  .input_check.reinput_check label {
    cursor: default;
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha( opacity=50 )";
    pointer-events: none;
  }

  input.valid {
    background-color: #fff;
  }

  .is-errorParent-input_unit {
    align-items: top;
  }

  .input_unit_search.is-errorParent-input_unit > li:nth-child(2) {
    margin: -22px 10px 22px 0;
  }

  .is-errorParent-input_box label {
    color: #e60000;
  }

  .input_radio.is-errorParent-input_box label {
    background: #fff;
    border: #e60000 2px solid;
    color: #e60000;
    font-weight: bold;
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "alpha( opacity=100 )";
  }

 /* inputstep
---------------------------------------------------------- */
  .inputstep {
    position: -webkit-sticky;
    position: sticky;
    background: #ffebee;
    margin: 0 auto 20px;
    padding: 10px 0;
    text-align: center;
    box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.2), 0 2px 2px rgba(0, 0, 0, 0.19);
    top: 0;
    z-index: 999;
  }

  .inputstep p {
    color: #e60000;
    font-weight: bold;
  }

  .inputstep span {
    font-size: 1.625rem;
    line-height: 1em;
    margin: 0 0 0 6px;
  }

  /* input
  ---------------------------------------------------------- */
  .input:-moz-placeholder {
    color: #929292;
    opacity: 1;
  }

  .input:-ms-input-placeholder {
    color: #929292;
  }

  .input:-webkit-input-placeholder {
    color: #929292;
  }

  .input.must {
    background-color: #fbfbee;
  }

  input:disabled,
  select:disabled {
    opacity: 0.5;
  }

  .input {
    display: inline-block;
    padding: 10px;
    height: auto;
    border: #cdd6dd 1px solid;
    border-radius: 6px;
    background-color: #fff;
    box-shadow: none;
    margin-left: 0;
    transition: 0.2s;
    width: 100%;
  }

  input[type='text'],
  input[type='password'],
  select {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    height: auto;
  }

  .input.must:hover,
  .input.must:focus {
    background: #ffffeb;
    border: #92957d 1px solid;
  }

  .input.must:disabled:hover,
  .input.must:disabled:focus {
    background: #fff;
    border: #cdd6dd 1px solid;
  }

  .input.error,
  .input.error:hover,
  .is-errorParent .form_inner_select {
    background: #fce5e5;
    border: #e60000 1px solid;
    color: #e60000;
  }

  input.error {
    display: inline-block;
    box-shadow: inset 2px 2px 4px #e2e2e2;
  }

  input[readonly].input.must {
    background: #ebeced;
    border: #cdd6dd 1px solid;
    pointer-events: none;
  }

  .input_confirm input[readonly].input.must {
    background: none;
    border: none;
    font-weight: bold;
    display: inline-block;
    width: auto;
  }

  .reinput_text input {
    background: #ebeced !important;
    border: #cdd6dd 1px solid !important;
    pointer-events: none;
  }

  .input_any .input.must {
    background: #fff;
  }

  .input_any > p > span,
  .input_any .nini {
    position: relative;
    background: #999;
    color: #fff;
    font-size: 0.75rem;
    font-weight: bold;
    border-radius: 4px;
    padding: 2px 8px;
    margin: 0 0 0 8px;
    top: -2px;
    display: inline-block;
  }

  .input_radio,
  .input_check {
    margin: 0 auto;
    display: flex;
    flex-flow: wrap;
  }

  .input_radio li,
  .input_check li {
    margin: 8px 12px 8px 0;
  }

  .input_radio.radio_large {
    margin: 12px 0;
    display: flex;
    flex-flow: wrap column;
  }

  .input_radio li {
    width: 46%;
    margin: 2%;
  }

  .input_radio.radio_large li {
    width: 100%;
    margin: 0 0 10px;
    padding-right: 1rem;
    position: relative;
  }

  .input_radio input[type='radio'] {
    display: block;
    visibility: hidden;
    height: 0px;
  }

  .input_radio.radio_large {
    margin: 12px 0;
    display: flex;
    flex-flow: wrap column;
  }

  .input_check.check_large li {
    margin: 0 0 12px;
    width: 100%;
  }

  /* select
  ---------------------------------------------------------- */
  select {
    padding: 8px;
    cuesor: pointer;
    background-color: #fbfbee;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    position: relative;
    font-size: 1rem;
    z-index: 0;
    transition: 0.2s;
    vertical-align: middle;
    appearance: none;
  }

  .select {
    position: relative;
    font-size: 1rem;
    background: #fbfbee;
    border: #cdd6dd 1px solid;
    border-radius: 6px;
    margin: 6px 0;
    z-index: 0;
    transition: 0.2s;
    width: 100%;
  }

  .select::before {
    position: absolute;
    content: '';
    background: url(../images/icn_arrow_select.png) no-repeat 0 0;
    width: 10px;
    height: 6px;
    top: 0;
    right: 10px;
    bottom: 0;
    margin: auto 0;
    display: block;
    z-index: 1;
    opacity: 0.8;
    filter: alpha(opacity=80);
    -ms-filter: "alpha( opacity=80 )";
  }

  .select select {
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    border: none;
    outline: none;
    background: transparent;
    background-image: none;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    color: #000;
  }

  .select select.valid {
    background-color: #fff;
  }

  .select select::-ms-expand {
    display: none;
  }

  select.error {
    color: #000;
  }

  .input_unit_select .select {
    margin: 0;
  }

  .select:hover {
    background: #ffffeb;
    border: #92957d 1px solid;
  }

  .select:hover::before {
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "alpha( opacity=100 )";
  }

  .reselect {
    background: #ebeced !important;
    border: #cdd6dd 1px solid !important;
    pointer-events: none;
  }

  /* button
  ---------------------------------------------------------- */
  button {
    display: block;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }

  .button,
  button.button,
  a.button {
    position: relative;
    width: 100%;
    padding: 0.6em 0;
    text-align: center;
    text-decoration: none;
    color: #FFF;
    border: none;
    border-radius: 2px;
    box-shadow: 0px 3px 0.5px 0 rgba(0, 0, 0, 0.2);
    background: #2a2d38;
    display: block;
    cursor: pointer;
  }

  .p_next {
    position: relative;
    width: 100%;
    padding: 0.6em 0;
    text-align: center;
    text-decoration: none;
    color: #FFF;
    border: none;
    border-radius: 2px;
    box-shadow: 0px 3px 0.5px 0 rgba(0, 0, 0, 0.2);
    opacity: 0.3;
    background: #e60000;
    display: block;
  }

  .form_inner .button {
    background: #2a2d38;
    color: #fff;
    font-size: 0.875rem;
    border-radius: 4px;
    width: auto;
    padding: 8px 14px;
    margin: 0;
    box-shadow: 0px 3px 0.5px 0 rgba(0, 0, 0, 0.3);
    display: block;
  }

  .form_inner .button:active {
    box-shadow: none;
  }

  .form_inner .button_inactive .button,
  .form_inner .button_inactive .button:active {
    opacity: 0.3;
    filter: alpha(opacity=30);
    -ms-filter: "alpha( opacity=30 )";
    top: 1;
    cursor: default;
    box-shadow: none;
  }

  .button:hover {
    opacity: 0.8;
  }

  .button:active {
    top: 3px;
    box-shadow: none;
  }

  /* stepArea
  ---------------------------------------------------------- */
  #stepArea {
    padding: 30px 0 0 0;
    width: 100%;
    border-top: solid 1px #d3d3d3;
    background-color: #fff;
  }

  #stepArea .back {
    margin: auto 0;
    width: 100%;
    text-align: center;
  }

  #stepArea .back:first-child {
    margin-bottom: 20px;
  }

  .stepArea {
    margin: 40px auto;
  }

  #btnArea {
    margin: 40px;
  }

  .stepArea ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

  .stepArea li {
    width: 44%;
  }

  .stepArea li:first-child {
    margin: 0 6% 0 0;
  }

  .Area_third {
    justify-content: space-between;
  }

  .Area_third li:nth-child(1) {
    order: 2;
  }

  .Area_third li:nth-child(2) {
    order: 3;
  }

  .Area_third li:nth-child(3) {
    width: 94%;
    margin: 0 0 36px;
    order: 1;
  }

  .Area_third li:nth-child(3) .button,
  .Area_third li:nth-child(3) .p_next {
    padding: 1.2em 0;
  }

  /*  .progress
  ---------------------------------------------------------- */
  /*  .progress_typeA (default)
  -------------------------------------- */
  .progress {
    width: 94%;
    margin: 20px auto;
  }

  .progress ul {
    position: relative;
    display: flex;
    flex-flow: nowrap;
    align-items: center;
    justify-content: space-between;
    z-index: 0;
  }

  .progress ul::after {
    background: #cdd6dd;
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0px;
    width: 100%;
    height: 2px;
    margin: auto 0;
    z-index: 0;
  }

  .progress li {
    position: relative;
    width: 100%;
    z-index: 1;
  }

  .progress li:last-child {
    width: auto;
  }

  .progress li::before {
    position: relative;
    content: '';
    background: #cdd6dd;
    border: #cdd6dd 2px solid;
    border-radius: 50%;
    color: #fff;
    display: block;
    height: 30px;
    width: 30px;
    z-index: 2;
  }

  .progress li.progress_done::before {
    background: #e60000;
    border: #e60000 2px solid;
  }

  .progress li.progress_passing::before {
    background: #fff;
    border: #e60000 2px solid;
  }

  .progress li.progress_done::after {
    background: #e60000;
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0px;
    width: 100%;
    height: 2px;
    margin: auto 0;
    z-index: 1;
  }

  .progress li::before {
    height: 16px;
    width: 16px;
  }

  .progress-text {
    display: none;
  }

  /*  .progress_typeB
  -------------------------------------- */
  .progress_typeB {
    background: #cdd6dd;
    display: flex;
    position: relative;
    flex-flow: nowrap;
    border-radius: 3px;
    min-height: 16px;
    max-height: 16px;
    width: 98%;
    margin: -8px auto 20px;
    z-index: 0;
  }

  .progress_typeB li {
    padding: 0 9px 0 26px;
    min-height: 16px;
  }

  .progress_typeB li::before,
  .progress_typeB li::after {
    content: '';
    position: absolute;
    display: block;
  }

  .progress_typeB li:last-child::before,
  .progress_typeB li:last-child::after {
    display: none;
  }

  .progress_typeB li::before {
    background: none;
    width: 10px;
    height: 10px;
    border: 4px solid;
    border-color: #fff #fff transparent transparent;
    transform: rotate(45deg);
    top: 0;
    bottom: 0;
    right: -6.5%;
    margin: auto 0;
    z-index: 2;
  }

  .progress_typeB li::after {
    background: #cdd6dd;
    width: 10px;
    height: 10px;
    transform: rotate(45deg);
    top: 0;
    bottom: 0;
    right: -4.5%;
    margin: auto 0;
    z-index: 1;
  }

  .progress_typeB li:first-child::after {
    right: -6.5%;
  }

  .progress_typeB.progress_1 li:nth-child(1)::after,
  .progress_typeB.progress_2 li:nth-child(-n + 2)::after,
  .progress_typeB.progress_3 li:nth-child(-n + 3)::after,
  .progress_typeB.progress_4 li:nth-child(-n + 4)::after,
  .progress_typeB.progress_5 li:nth-child(-n + 5)::after,
  .progress_typeB.progress_6 li:nth-child(-n + 6)::after {
    background: #e60000;
  }

  .progress_typeB li span {
    position: absolute;
    color: #333;
    font-size: 0.875rem;
    min-width: 320px;
    bottom: -40px;
    display: none;
    width: 100%;
    z-index: 1;
  }

  .progress_typeB {
    background: #cdd6dd;
  }

 /*  .dialog .dialogbox
-------------------------------------- */
  .dialog {
    position: fixed;
    background: rgba(0, 0, 0, 0.5);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: none;
    z-index: 9998;
  }

  .dialogbox {
    position: fixed;
    border-top: #DDD 1px solid;
    border-right: #DDD 1px solid;
    border-bottom: none;
    border-left: #DDD 1px solid;
    border-radius: 4px;
    text-align: center;
    width: 300px;
    min-height: auto;
    margin: 0 auto;
    top: 80px;
    right: 0;
    left: 0;
    margin: 0 auto;
    padding: 0;
    background: #FFF;
    box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.5), 0 2px 2px rgba(0, 0, 0, 0.3);
    z-index: 9999;
  }

  .dialogbox section > p {
    font-size: 0.875rem;
    line-height: 1.6rem;
  }

  .contact_dialog i {
    cursor: pointer;
    cursor: hand;
  }

  .dialogbox section {
    position: relative;
    padding: 16px;
    margin: 0 0 20px;
  }

  .dialogbox section > p {
    font-size: 0.875rem;
    line-height: 1.6rem;
  }

  .dialogbox section > h1 {
    color: #7F7F7F;
    font-size: 1.5rem;
    margin: 1.5rem auto;
  }

  .dialogbox section > ul {
    margin: 20px auto 0;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
  }

  .dialogbox section > ul li {
    min-width: 120px;
    margin: 0 auto;
  }

  .dialogbox section > ul li > .button {
    width: 100%;
  }

  .dialogbox > i {
    position: absolute;
    font-size: 2rem;
    color: #8A8A8C;
    top: 1%;
    right: 3%;
    z-index: 9999;
    cursor: pointer;
  }

  .dialog_active {
    display: block;
  }

  .dialogbox .description {
    padding: 0 .5rem;
    font-size: 0.8rem;
  }

 /*  .toggle_check
-------------------------------------- */
  .toggle_check {
    position: relative;
    padding: 5px 0 0 10px;
    margin: 12px 0 0;
    z-index: 0;
    width: 180px;
  }

  .toggle_check::before {
    position: absolute;
    background: url(../images/check_off.svg) no-repeat 0 0;
    left: 0;
    top: 0;
    content: '';
    height: 30px;
    width: 30px;
    z-index: 0;
  }

  .toggle_check.check_on::before {
    background: url(../images/check_on.svg) no-repeat 0 0;
  }

  .toggle_check i {
    position: relative;
    padding: 0 0 0 30px;
    z-index: 1;
  }

    /*  name
-------------------------------------- */
  .input_unit {
    display: flex;
    flex-flow: wrap;
    margin: 0 auto;
  }

  .input_unit li {
    position: relative;
    margin: 0 12px 0 0;
    z-index: 0;
  }

  .input_unit_text {
    flex-flow: nowrap;
    justify-content: space-between;
    flex-direction: column;
    margin: 0 0 12px;
  }

  .input_unit_text li:nth-child(1) .input.must {
    max-width: 100%;
  }

  .input_unit_text li {
    width: 100%;
    margin: 0 auto 12px;
  }

  /*  .sec_birthday
-------------------------------------- */
  section h3 {
    margin: 20px 0 10px;
  }

  .sec_birthday ul {
    display: block;
    font-size: 0;
  }

  .sec_birthday ul li {
    display: inline-block;
    font-size: 14px;
    margin-bottom: 20px;
    width: calc((100% - 20px) / 2);
  }

  .sec_birthday ul li:first-of-type {
    display: block;
    width: 100%;
  }

  .sec_birthday ul li:last-of-type {
    margin-left: 20px;
  }

  .sec_birthday ul li select {
    border-radius: 3px;
    width: 100%;
  }

  .sec_birthday ul li + li {
    margin-left: 0;
  }

  .select_birthday li:nth-child(1) {
    width: 97%;
    padding: 0 0 0 0;
    margin: 0 0 6px;
  }

  .select_birthday li:nth-child(2),
  .select_birthday li:nth-child(3) {
    width: 48%;
  }

  .prechange {
    background-color: #fbfbee;
  }

  /*  .sec_birthday_2
-------------------------------------- */
  section h3 {
    margin: 20px 0 10px;
  }

  .sec_birthday ul {
    display: block;
    font-size: 0;
  }

  .sec_birthday ul li {
    display: inline-block;
    font-size: 14px;
    margin-bottom: 20px;
    width: calc((100% - 20px) / 2);
  }

  .sec_birthday ul li:first-of-type {
    display: block;
    width: 100%;
  }

  .sec_birthday ul li:last-of-type {
    margin-left: 20px;
  }

  .sec_birthday ul li select {
    border-radius: 3px;
    width: 100%;
  }

  .sec_birthday ul li + li {
    margin-left: 0;
  }

    /*  tel
-------------------------------------- */
  .input_unit_tel {
    justify-content: space-between;
  }

  .form_inner_input .input_unit_tel:first-child {
    margin: 0 0 12px;
  }

  .input_unit_tel li {
    width: 36%;
    margin: 0 4% 0 0;
  }

  .input_unit_tel li:first-child {
    width: 20%;
  }

  .input_unit_tel li:last-child {
    margin: 0 0 0 0;
  }

  .input_unit_tel li:not(:first-child)::before {
    position: absolute;
    content: '-';
    color: #333;
    display: inline-block;
    top: 25%;
    left: -7%;
    bottom: 0;
    margin: auto 0;
    z-index: 0;
  }

  /*  adresscode
-------------------------------------- */
  .warp,
  .warp_button {
    position: relative;
    z-index: 0;
  }

  .warp_button.button_inactive::before {
    position: absolute;
    content: '';
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "alpha( opacity=100 )";
    display: block;
    z-index: 1;
  }

  .input_unit_search {
    align-items: center;
  }

  .input_unit_search li:nth-child(1) {
    max-width: 180px;
  }

  .input_unit_search {
    position: relative;
    z-index: 0;
  }

  .input_unit li {
    margin: 0 6px .5rem 0;
  }

  .input_unit li.unit_sub {
    margin: 16px 0;
  }

  .sec_apply_doc h2 {
    margin: 20px auto 20px;
  }

  /*  back button
-------------------------------------- */
  .button_back,
  button.button_back,
  a.button_back,
  .button_cancel,
  button.button_cancel,
  a.button_cancel,
  .dialog_button_close,
  button.dialog_button_close,
  a.dialog_button_close {
    background: #5a5a5a;
  }

  /*  next button
-------------------------------------- */
  .button_next,
  button.button_next,
  a.button_next {
    background: #e60000;
  }

  /*  login button
-------------------------------------- */
  .button_login,
  button.button_login,
  a.button_login {
    background: #e60000;
  }

  /*  .edit button
  ---------------------------------------------------------- */
  .input_confirm {
    display: flex;
    flex-flow: wrap;
    align-items: center;
  }

  .confirm_edit {
    background: #fff url(../images/icn_pencil2.png) no-repeat center/contain;
    width: 32px;
    height: 32px;
    border: #fff 1px solid;
    border-radius: 4px;
    cursor: pointer;
    margin: -10px 0;
  }

  .confirm_edit:hover {
    border: #999 1px solid;
    opacity: 0.8;
    filter: alpha(opacity=80);
    -ms-filter: "alpha( opacity=80 )";
  }

  .confirm_edit span {
    display: none;
  }

  .guidance_edit {
    background: #fff url(../images/icn_pencil2.png) no-repeat center/contain;
    width: 30px;
    height: 30px;
    margin: -10px 4px;
    display: inline-block;
  }

  .checkPDFBtn {
    display: block;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }

  .checkPDFBtn a {
    position: relative;
    width: 100%;
    padding: 0.6em 0;
    text-align: center;
    text-decoration: none;
    color: #FFF;
    border: none;
    border-radius: 2px;
    box-shadow: 0px 3px 0.5px 0 rgba(0, 0, 0, 0.2);
    background: #5a5a5a;
    display: block;
    cursor: pointer;
  }

  .checkPDFBtn a:hover {
    opacity: 0.8;
    text-decoration: none;
  }

  .checkPDFBtn a:active {
    top: 3px;
    box-shadow: none;
  }

  .stronger {
    color: #ff0000;
    font-weight: bold;
  }

  .right {
    text-align: right !important;
    clear: both;
  }
}
