@charset "Shift_JIS";

/* ----------------------------------------------------------------
    body
----------------------------------------------------------------- */

body {
  display: flex;
}

/* ----------------------------------------------------------------
    Header
----------------------------------------------------------------- */
/* #header
----------------------------------------------- */
#header {
  width: 100%;
  border-bottom: 1px solid #b2b2b2;
}

#header .h-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 25px 10px;
}

#header .h-inner._login {
  display: block;
}

#header .h-inner .h-logo {
  margin-bottom: 0;
}

#header .h-inner .h-logo a {
  display: inline-block;
}

#header .h-inner .h-logo img {
  vertical-align: middle;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

#header .h-inner .h-nav {
  display: flex;
  margin-bottom: 0;
  text-align: right;
}

#header .h-inner .h-nav > li {
  padding-left: 10px;
}

#header .h-inner .h-nav > li:first-child {
  padding-left: 0;
}

#header .item-login {
  display: none;
}

.body-wrap._login #header .item-login {
  display: block;
}

@media only screen and (max-width: 600px) {
  #header .h-inner {
    display: block;
  }

#header .h-inner .h-logo img {
  width: 97px;
}

  #header .h-inner .h-nav {
    justify-content: flex-end;
    margin-top: 15px;
  }

  #header .h-inner .h-nav > li {
    margin-top: 10px;
    font-size: 1.2rem;
  }
}

/* ----------------------------------------------------------------
    Content
----------------------------------------------------------------- */

/* .body-wrap
----------------------------------------------- */
.body-wrap {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 100vh;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

/* #main
----------------------------------------------- */
#main {
  flex-grow: 1;
  overflow-x:hidden;
}

#main > .main-inner {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 52px 10px 0 10px;
}

#main > .main-inner:last-child {
  margin-bottom: 0;
}

#main > .main-inner > :first-child {
  margin-top: 0;
}

@media only screen and (max-width: 375px) {
  #main > .main-inner {
    padding-top: 24px;
  }
}
/* ----------------------------------------------------------------
    Footer
----------------------------------------------------------------- */
/* #footer
----------------------------------------------- */
#footer {
  bottom: 0;
  width: 100%;
  margin-top: 50px;
  padding: 18px 0;
  background-color: #000;
  color: #fff;
}

#footer .f-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding-left: 16px;
}

#footer .f-inner._login {
  display: block;
}

#footer .f-inner_txt {
  margin-bottom: 0;
}

#footer .f-inner_txt small {
  font-size: 1.2rem;
}

#footer .f-inner_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: -6px 0 0 0;
}

#footer .f-inner_list > li {
  position: relative;
  margin: 6px 8px 0 0;
  padding-right: 8px;
}

#footer .f-inner_list > li a {
  color: #fff;
  font-size: 1.2rem;
}

#footer .f-inner_list > li a .icon-blank {
  padding: 0 5px 5px 4px;
}

#footer .f-inner_list > li a span:lang(en) {
  display: block;
  padding-left: 25px;
}

@media only screen and (max-width: 600px) {

  #footer .f-inner {
    flex-direction: column-reverse;
  }

  #footer .f-inner._login {
    display: block;
    text-align: center;
    padding: 0;
  }

  #footer .f-inner_txt {
    text-align: center;
  }

  #footer .f-inner._login .f-inner_txt {
    margin: 18px 10px 0;
  }

  #footer .f-inner_list {
    display: block;
    margin-bottom: 20px;
    text-align: center;
  }

  #footer .f-inner_list > li a span:lang(en) {
    display: inline-block;
    /*padding-left: 0;*/
  }
}

/* #footer
----------------------------------------------- */
.page-top {
  display: none;
}

@media only screen and (max-width: 600px) {
  .page-top {
    display: block;
    margin-bottom: 0;
    padding: 0 10px 18px;
    border-bottom: solid 1px #fff;
    font-size: 1.4rem;
    font-weight: bold;
  }

  .page-top a {
    position: relative;
    color: #fff;
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
  }

  .page-top a::before,
  .page-top a::after {
    position: absolute;
    display: block;
    content: "";
  }

  .page-top a::before {
    top: 4px;
    left: -26px;
    width: 14px;
    height: 1px;
    background: #fff;
  }

  .page-top a::after {
    bottom: -5px;
    left: -24px;
    width: 10px;
    height: 10px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    transform: rotate(-45deg);
  }

  .page-top a:hover, .page-top a:focus {
    opacity: .8;
}
}

/* ----------------------------------------------------------------
    Heading
----------------------------------------------------------------- */
/* .hdg-l1
----------------------------------------------- */
.hdg-l1 {
  margin: 48px 0 15px;
}

.hdg-l1 > :last-child {
  margin-bottom: 0;
}

.hdg-l1_txt {
  font-weight: normal;
  font-size: 2.8rem;
}

@media only screen and (max-width: 375px) {
  .hdg-l1 {
    margin: 24px 0 20px;
  }

  .hdg-l1_txt {
    font-size: 2rem;
    line-height: 1.3;
    font-weight: normal;
  }
}

/* .hdg-l2
----------------------------------------------- */
.hdg-l2 {
  margin: 48px 0 32px;
}

.hdg-l2_txt {
  padding: 3px 0 0 16px;
  border-left: 4px solid #2a344b;
  color: #333;
  font-weight: normal;
  font-size: 2.4rem;
  line-height: 1;
  flex-basis: 0;
  flex-grow: 1;

  flex-shrink: 0;
}

.hdg-l2_txt span:lang(en) {
  margin-top: 10px;
}

.panel-attention + .hdg-l2 {
  margin-top: 50px;
}

@media only screen and (max-width: 375px) {
  .hdg-l2 {
    margin: 50px 0 22px;
  }

  .hdg-l2_txt {
    padding: 2px 0 0 11px;
    font-size: 1.8rem;
    line-height: 1.22222;
  }
}

/* .hdg-guide
----------------------------------------------- */
.hdg-guide {
  position: relative;
  margin: 60px 0 15px;
  width: 100%;
  border-bottom: 3px solid #ccc;
  color: #333;
}

.hdg-guide::before {
  position: absolute;
  bottom: -3px;
  width: 40px;
  height: 3px;
  content: "";
  display: block;
  background-color: #c00;
}

.hdg-guide .hdg-guide_txt {
  padding: 0 0 10px 14px;
  font-weight: bold;
  font-size: 1.8rem;
}

.hdg-guide > :last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 375px) {
  .hdg-guide {
    margin: 50px 0 13px;
    border-bottom: 2px solid #ccc;
  }

  .hdg-guide .hdg-guide_txt {
    padding: 0 0 3px 8px;
    line-height: 1.33333;
  }

  .hdg-guide::before {
    bottom: -2px;
    width: 100px;
    height: 2px;
  }
}

/* .hdg-sub
----------------------------------------------- */
.hdg-sub {
  margin-bottom: 10px;
  font-size: 1.6rem;
}

/* ----------------------------------------------------------------
    Text
----------------------------------------------------------------- */
/* .text-noscript
----------------------------------------------- */
.text-noscript {
  margin-bottom: 0;
  padding: 15px 15px 0;
  width: 100%;
}

/* text-strong
----------------------------------------------- */
.text-strong {
  color: #c00;
  font-weight: bold;
}

/* ----------------------------------------------------------------
    Icon
----------------------------------------------------------------- */
/* .icon-blank
----------------------------------------------- */
.icon-blank {
  padding: 0 5px 0 4px;
  width: 20px;
  vertical-align: middle;
}

/* .icon-label
----------------------------------------------- */
.icon-label {
  display: inline-block;
  margin-right: 10px;
  padding: 2px 5px;
  border-radius: 3px;
  color: #fff;
  vertical-align: top;
  font-size: 1.1rem;
}

.icon-label._em {
  text-align: center;
  background: #b22430;
}

.icon-label._optional {
  color: #000;
  background: #e9eaed;
  text-align: center;
}

/* .icon-label_before
----------------------------------------------- */
.icon-label_before {
  display: inline-block;
  vertical-align: middle;
}

/* .icon-modal
----------------------------------------------- */
.icon-modal {
  position: absolute;
  top: 28px;
  right: 20px;
}

.btn-05._modal .icon-modal {
  top: .3em;
  right: 0;
}

/* ----------------------------------------------------------------
    List
----------------------------------------------------------------- */
/* .list
----------------------------------------------- */
.list {
  margin: 0 0 20px 0;
}

.list > li {
  position: relative;
  margin-bottom: 5px;
  padding-left: 22px;
  font-size: 1.4rem;
  line-height: 1.5;
}

.list > li::before {
  position: absolute;
  top: 7px;
  left: 10px;
  width: 4px;
  height: 4px;
  display: block;
  content: "";
  border-radius: 4px;
  background-color: #9e9e9e;
}

.list > li:last-child,
.list > li > :last-child {
  margin-bottom: 0;
}

/* .link-list
----------------------------------------------- */
.link-list ul > li {
  margin-bottom: 10px;
}

.link-list ul > li:last-child {
  margin-bottom: 0;
}

.link-list ul > li > ul, .link-list ul > li > ol {
  margin: 10px 0;
}

.link-list ul > li > .link-list ul {
  margin-left: 18px;
}

.link-list ul > li a {
  position: relative;
  display: inline-block;
  color: #0f0f69;
  text-decoration: none;
  font-size: 1.4rem;
  transition: color .3s cubic-bezier(.39, .575, .565, 1);
}

.link-list ul > li a .icon-blank {
  top: -6px;
}

.link-list ul > li a:hover, .link-list ul > li a:active, .link-list ul > li a:focus {
  color: #ca0000;
  text-decoration: underline;
}

.link-list ul > li a.link-list_blank {
  padding-left: 0;
}

.link-list ul > li a.link-list_blank::before {
  display: none;
}

.link-list._right {
  text-align: right;
}

.link-list._right ul {
  display: inline-block;
  text-align: left;
}

.link-list._inline ul {
  display: flex;
  margin-bottom: 0;
  flex-wrap: wrap;
}

.link-list._inline ul > li {
  margin: 0 18px 24px 0;
}

.link-list-wrap .link-list._inline ul {
  margin-top: -24px;
}

.link-list-wrap .link-list._inline ul > li {
  margin-top: 24px;
  margin-bottom: 0;
}

/* .link-list-wrap
----------------------------------------------- */
.link-list-wrap {
  margin: 32px 0;
}

.link-list-wrap > :last-child {
  margin-bottom: 0;
}

/* .list-note
----------------------------------------------- */
.list-note > li {
  display: table;
  box-sizing: border-box;
  margin-bottom: 5px;
  color: #616161;
  font-size: 1.4rem;
  line-height: 1.5;
}

.list-note > li:last-child {
  margin-bottom: 0;
}

.list-note > li > .list-note_mark {
  display: inline-block;
  padding: 0 2px 0 1px;
  white-space: nowrap;
}

.list-note > li > .list-note_body {
  display: table-cell;
  padding-left: 0;
}

.list-note > li > .list-note_body > :last-child {
  margin-bottom: 0 !important;
}

.list-note > li > .list-note_body > ul, .list-note > li > .list-note_body > ol {
  margin: 8px 0;
}

.list-note > li > .list-note_body .link-txt {
  padding-right: 5px;
}

.list-note._right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}


@media only screen and (max-width: 600px) {
  .list-note > li {
    font-size: 1.1rem;
  }
  .list-note > li > .list-note_mark {
    display: inline-block;
    padding-right: 2px;
  }
}

/* .list-def
----------------------------------------------- */
.list-def {
  margin-top: 20px;
}

.list-def .list-def_inner {
  display: flex;
  margin-top: 10px;
}

@media only screen and (max-width: 600px) {
  .list-def .list-def_inner {
    display: block;
    margin-top: 15px;
  }

  .list-def .list-def_inner > dd {
    margin-top: 5px;
  }
}
/* ----------------------------------------------------------------
    Link
----------------------------------------------------------------- */
/* .link
----------------------------------------------- */
.link {
  position: relative;
  display: inline-block;
  padding-left: 14px;
  text-align-last: left;
}

.link::before {
  position: absolute;
  top: 5px;
  left: 0;
  width: 6px;
  height: 6px;
  display: block;
  content: "";
  border: 2px solid #d11b1b;
  border-bottom: transparent;
  border-left: transparent;
  transform: rotate(45deg);
}

.link a {
  transition: color .3s cubic-bezier(.39, .575, .565, 1);
}

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

.link_en._blank {
  margin-left: 20px;
}

.link._simple {
  padding-left: 0;
}
.link._simple::before {
  display: none;
}

/* .link-txt
----------------------------------------------- */
.link-txt {
  transition: color .3s cubic-bezier(.39, .575, .565, 1);
}

.link-txt:hover, .link-txt:active, .link-txt:focus {
  color: #ca0000;
  text-decoration: underline;
}

p .link-txt {
  margin-left: 5px;
}

.link-txt._line {
  padding-right: 5px;
  text-decoration: underline;
}

/* ----------------------------------------------------------------
    Button
----------------------------------------------------------------- */
/* .btn
----------------------------------------------- */
.btn {
  position: relative;
  display: inline-block;
  padding: 19px 30px;
  min-width: 240px;
  background-color: #c00;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .25);
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 1.6rem;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.btn._small {
  min-width: 120px;
}

.btn._thin {
  padding: 17px 32px;
}

.btn::before {
  position: absolute;
  top: 50%;
  right: 16px;
  margin-top: -5px;
  width: 8px;
  height: 8px;
  display: block;
  content: "";
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg) translate3d(0, 0, 0);
}

.btn:hover, .btn:active, .btn:focus {
  opacity: .8;
}

.btn span:lang(en) {
  margin-left: 0;
  font-weight: normal;
}

/* .btn-next
----------------------------------------------- */
.btn-next {
  position: relative;
  display: inline-block;
  padding: 19px 36px 19px 22px;
  min-width: 240px;
  border: 1px solid #ccc;
  background-color: #fff;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .1);
  color: #333;
  text-align: center;
  font-weight: bold;
  font-size: 1.6rem;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.btn-next span:lang(en) {
  margin-left: 0;
  font-weight: normal;
}

.btn-next._small {
  min-width: 120px;
}

.btn-next._thin {
  padding: 17px 36px 17px 18px;
}

.btn-next::before {
  position: absolute;
  top: 50%;
  right: 20px;
  margin-top: -5px;
  width: 10px;
  height: 10px;
  display: block;
  content: "";
  border-top: 2px solid #c00;
  border-right: 2px solid #c00;
  transform: rotate(45deg) translate3d(0, 0, 0);
}

.btn-next._code {
  padding: 7px 46px 7px 32px;
}

.btn-next._code ._main {
  position: relative;
  display: block;
  padding-left: 30px;
}

.btn-next._code ._main::before {
  position: absolute;
  top: -1px;
  left: 4px;
  width: 18px;
  height: 18px;
  display: block;
  content: "";
  background-position: -143px -177px;
  background-size: 274px auto;
}

.btn-next._code ._sup {
  font-weight: normal;
  font-size: 1.2rem;
}

.btn-next._blank::before {
  display: none;
}

.btn-next._blank .icon-blank {
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -6px;
}

.btn-next:hover, .btn-next:active, .btn-next:focus {
  opacity: .8;
}


/* .btn-back
----------------------------------------------- */
.btn-back {
  position: relative;
  display: inline-block;
  padding: 19px 22px 19px 36px;
  min-width: 240px;
  border: 1px solid #ccc;
  background-color: #fff;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .1);
  color: #333;
  text-align: center;
  font-weight: bold;
  font-size: 1.6rem;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.btn-back span:lang(en) {
  margin-left: 0;
  font-weight: normal;
}

.btn-back._small {
  min-width: 120px;
}

.btn-back._thin {
  padding: 17px 22px 17px 36px;
}

.btn-back._no-arrow::before {
  content: none;
}

.btn-back::before {
  position: absolute;
  top: 50%;
  left: 20px;
  margin-top: -5px;
  width: 10px;
  height: 10px;
  display: block;
  content: "";
  border-top: 2px solid #c00;
  border-right: 2px solid #c00;
  transform: rotate(-135deg) translate3d(0, 0, 0);
}

.btn-back:hover, .btn-back:active, .btn-back:focus {
  opacity: .8;
}

@media only screen and (max-width: 600px) {
  .btn-back_wrapper {
    text-align: center;
  }
}

/* .btn-wrap
----------------------------------------------- */
.btn-wrap,
.btn-back_wrapper {
  margin-top: 60px;
  margin-bottom: 30px;
}

/* .btn-wrap-02
----------------------------------------------- */
.btn-wrap-02 {
  margin-top: 32px;
  margin-bottom: 32px;
}

.btn-wrap-02 > :last-child {
  margin-bottom: 0;
}

/* ----------------------------------------------------------------
    Panel
----------------------------------------------------------------- */
/* .panel-attention
----------------------------------------------- */
.panel-attention {
  margin: 30px 0 48px;
  padding: 18px;
  border: 2px solid #c00;
  background-color: #fdf5f5;
}

.panel-attention > :first-child {
  margin-top: 0;
}

.panel-attention > :last-child {
  margin-bottom: 0;
}

.panel-attention_hdg {
  position: relative;
  margin-bottom: 10px;
  padding-left: 34px;
  color: #c00;
  font-weight: bold;
  font-size: 2rem;
}

.panel-attention_hdg::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  content: "";
  width: 24px;
  height: 24px;
  background-image: url(../img/icon_attention.png) ;
}

/* ----------------------------------------------------------------
    Layout
----------------------------------------------------------------- */
/* .lyt-btn
----------------------------------------------- */
.lyt-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 30px;
}

.lyt-btn .lyt-btn-item {
  margin: 0 10px;
}



@media only screen and (max-width: 600px) {
  .lyt-btn {
    display: block;
    text-align: center;
  }

  .lyt-btn .lyt-btn-item {
    margin-top: 20px;
  }

  .lyt-btn .lyt-btn-item:first-child {
    margin-top: 0;
  }
}

/* .lyt-btn-inline
----------------------------------------------- */
.lyt-btn-line {
  margin-top: 55px;
}

.lyt-btn-line_sup {
  margin-bottom: 24px;
  color: #616161;
  text-align: center;
}

.lyt-btn-line_sup + .lyt-btn-line_sup {
  margin-top: -12px;
}

.lyt-btn-line_inner {
  position: relative;
  display: flex;
  justify-content: center;
  min-height: 120px;
}

.lyt-btn-line_inner .lyt-btn-line_inner_item + .lyt-btn-line_inner_item {
  margin-left: 20px;
}

.lyt-btn-line_inner .lyt-btn-line_inner_left {
  position: absolute;
  left: 0;
}

.lyt-btn-line_inner .lyt-btn-line_inner_right {
  position: absolute;
  right: 0;
}

.lyt-btn-line + .form-list-02 {
  margin-top: -40px;
}

@media only screen and (max-width: 900px) {
  .lyt-btn-line_inner {
    display: block;
    text-align: center;
  }

  .lyt-btn-line_inner .lyt-btn-line_inner_left {
    position: static;
  }

  .lyt-btn-line_inner .lyt-btn-line_inner_left:not(:first-child) {
    margin-top: 20px;
  }
}

/* lyt-column
----------------------------------------------- */
.lyt-column {
  display: flex;
  flex-wrap: wrap;
}

.lyt-column._col-02 > .col:nth-of-type(n+3),
.lyt-column._col-03 > .col:nth-of-type(n+4),
.lyt-column._col-04 > .col:nth-of-type(n+5) {
  margin-top: 40px;
}

@media only screen and (max-width: 750px) {
  .lyt-column:not(._col-04) {
    flex-direction: column;
  }
  .lyt-column._col-02 > .col:nth-of-type(n+2),
  .lyt-column._col-03 > .col:nth-of-type(n+2),
  .lyt-column._col-04 > .col:nth-of-type(n+3) {
    margin-top: 30px;
  }
}

/* .lyt-column._col-02 */
.lyt-column._col-02 {
  margin-left: -4%;
}

.lyt-column._col-02 > .col {
  margin-left: 4%;
  width: 46%;
}

 /* .lyt-column._col-03 */
.lyt-column._col-03 {
  margin-left: -2.3%;
}

.lyt-column._col-03 > .col {
  margin-left: 2.3%;
  width: 31%;
}

 /* .lyt-column._col-04 */
.lyt-column._col-04 {
  margin-left: -2%;
}

.lyt-column._col-04 > .col {
  margin-left: 2%;
  width: 22%;
}

@media only screen and (max-width: 750px) {
  .lyt-column._col-02,
  .lyt-column._col-03,
  .lyt-column._col-02 > .col,
  .lyt-column._col-03 > .col {
    margin-left: 0;
  }

  .lyt-column._col-02 > .col,
  .lyt-column._col-03 > .col {
    width: 100%;
  }

  .lyt-column._col-04 > .col {
    width: 48%;
  }
}

/* ----------------------------------------------------------------
    Form
----------------------------------------------------------------- */
/* form-list
----------------------------------------------- */
.form-list > li {
  margin-bottom: 10px;
}

.form-list > li:last-child {
  margin-bottom: 0 !important;
  margin-right: 0 !important;
}

.form-list > li > :last-child {
  margin-bottom: 0;
}

.form-list._inline > li {
  display: inline-block;
  margin-right: 40px;
}

.form-list._inline ._inline_sup {
  margin-right: 14px;
}

.form-list._inline_date {
  display: flex;
  flex-wrap: wrap;
}

.form-list._inline_date > li {
  position: relative;
  display: inline-flex;
  margin-right: 35px;
  margin-bottom: 0;
  align-items: center;
}

.form-list._inline_date > li .form-list_item {
  padding-left: 15px;
  color: #333;
  white-space: nowrap;
}

.form-list._inline_date > li:before {
  position: absolute;
  top: 14px;
  right: -16px;
  width: 1px;
  height: 15px;
  display: block;
  content: "";
  background-color: #6c6c6c;
  transform: rotate(20deg);
}

.form-list._inline_date > li:last-child:before {
  display: none;
}

.form-list._inline_date ._inline_sup {
  margin-right: 10px;
}

.form-table-02 .form-list._inline, .form-table-04 .form-list._inline {
  margin-top: -15px;
}

.form-table-02 .form-list._inline > li, .form-table-04 .form-list._inline > li {
  margin: 15px 15px 0 0;
}

.form-table-02 .form-list._inline > li label + div[role=alert] .form-error_wrap, .form-table-04 .form-list._inline > li label + div[role=alert] .form-error_wrap {
  left: 28px;
}

.form-list_inner {
  padding: 10px 0 0 26px;
}

.form-list_inner > :last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 750px) {
  .form-list._inline_date {
    flex-wrap: nowrap;
    align-items: center;
  }

  .form-list._inline_date > li {
    margin-right: 32px;
  }
}
@media only screen and (max-width: 374px) {
  .form-list._inline_date {
    flex-wrap: wrap;
    align-items: center;
  }

  .form-list._inline_date > li + li {
    margin-top: 10px;
  }

  .form-list._inline_date > li + li::after {
    display: none;
  }
}

/* .form-list-02
----------------------------------------------- */
.form-list-02 > li {
  margin: 0 0 16px;
  padding: 16px 14px;
  border: 1px solid #ccc;
  border-radius: 3px;
  background: #fff;
}

.form-list-02 > li:last-child {
  margin-bottom: 0;
}

.form-list-02 > li > .form-table-wrap {
  padding: 16px 30px;
}

.form-list-02 > li > .form-table {
  margin-top: 10px;
}

.form-list-02 > li > .form-table + .btn-wrap {
  margin-top: 0;
  margin-bottom: 30px;
  text-align: center;
}

.form-list-02 > li > :last-child {
  margin-bottom: 0;
}

.form-list-02 > li._all {
  padding: 0;
}

.form-list-02 > li._all .form-checkbox {
  width: 100%;
}

.form-list-02 > li._all .form-checkbox .form-checkbox_item {
  padding: 16px 14px 16px 48px;
}

.form-list-02 > li._all .form-checkbox .form-checkbox_item::before {
  top: 15px;
  left: 17px;
}

.form-list-02 > li._all .form-checkbox .form-checkbox_item::after {
  top: 19px;
  left: 20px;
}

.form-list-02 > li .lyt-checkbox_right {
  display: block;
  margin-right: 32px;
  margin-bottom: 0;
  text-align: right;
}

/* .form-list-03
----------------------------------------------- */
/* .form-list-03 {
  padding: 0 15px;
} */

.form-list-03 .form-list-03_inner {
  margin-bottom: 20px;
}

.form-list-03._inline .form-list-03_inner {
  display: inline-block;
  margin-right: 15px;
}

.form-list-03 dt {
  display: inline-block;
  margin-right: 15px;
  vertical-align: middle;
}

.form-list-03 dd {
  display: inline;
}

.form-list-03 .form-error {
  display: inline-block;
}

.form-list-03 .form-lyt-label_txt {
  display: inline-block;
  margin-top: 0;
}

@media only screen and (max-width: 600px) {
  .form-list-03._inline .form-list-03_inner {
    display: block;
    margin-right: 0;
  }

  .form-list-03 dt {
    display: block;
    width: auto !important;
    margin-bottom: 5px;
  }
}

/* .form-list-04
----------------------------------------------- */
.form-list-04 {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.form-list-04_inner {
  position: relative;
  margin-bottom: 20px;
}

.form-list-04_inner:last-child {
  margin-bottom: 0;
}

.form-list-04_inner > dt {
  position: absolute;
  left: -20px;
  top: 50%;
  transform: translateY(-50%) rotate(-180deg);
  transform-origin: left center;
}

.form-list-04_title {
  transform: rotate(180deg);
  text-align: right;
}

.form-list-04_title strong,
.form-list-04_title label {
  vertical-align: middle;
}

.form-list-04_title label {
  display: inline-block;
}

.form-list-04_inner > dd {
  margin: 0;
}

@media only screen and (max-width: 600px) {
  .form-list-04_inner > dt {
    position: static;
    left: auto;
    top: auto;
    transform: none;
    transform-origin: none;
  }

  .form-list-04_title {
    margin-bottom: 10px;
    transform: none;
    text-align: left;
  }
}

/* .form-wrap
----------------------------------------------- */
.form-wrap {
  margin-top: 48px;
}


/* .form-table
----------------------------------------------- */
.form-table {
  margin-bottom: 20px;
  width: 100%;
}

.form-table tr th, .form-table tr td {
  vertical-align: top;
  text-align: left;
}

.form-table tr th > :first-child, .form-table tr td > :first-child {
  margin-top: 0;
}

.form-table tr th > :last-child, .form-table tr td > :last-child {
  margin-bottom: 0;
}

.form-table tr th {
  padding: 10px 0;
  color: #333;
  font-weight: bold;
  font-size: 1.6rem;
  white-space: nowrap;
}

.form-table tr th.form-table_label {
  padding-top: 24px;
}

.form-table tr td {
  padding: 10px 0 10px 15px;
  font-size: 1.4rem;
}

.form-table tr td .form-table th {
  font-size: 1.4rem;
}

.form-table tr .form-table tr td {
  padding: 10px 0 10px 10px;
}

.form-table tr.form-table-thin td {
  padding-top: 0;
}

.form-table tr.form-table-thin th.form-table_label {
  padding-top: 15px;
}

.form-table .form-table_txt {
  margin-bottom: 8px;
}

.form-table .form-table_txt + .form-table {
  margin-top: -8px;
}

.form-table .form-txt + .form-table_txt, .form-table .form-select + .form-table_txt, .form-table .form-table + .form-table_txt, .form-table .form-error_wrap + .form-table_txt, .form-table div[role='alert'] + .form-table_txt {
  margin-top: 6px;
}

.form-table .form-txt + .form-table_txt._sup, .form-table .form-select + .form-table_txt._sup, .form-table .form-table + .form-table_txt._sup, .form-table .form-error_wrap + .form-table_txt._sup, .form-table div[role='alert'] + .form-table_txt._sup {
  margin-left: 14px;
}

.form-table._headcount {
  margin-bottom: 10px;
}

.form-table._headcount .form-table_label {
  font-weight: normal;
}

@media only screen and (max-width: 750px) {
  .form-table tbody,
  .form-table tr,
  .form-table tr th,
  .form-table tr td {
    display: block;
    width: 100%;
  }

  .form-table {
    display: block;
  }
}
/* form-txt
----------------------------------------------- */
.form-txt {
  box-sizing: border-box;
  padding: 12px;
  max-width: 240px;
  width: 100%;
  height: 46px;
  border: 1px solid #ccc;
  border-radius: 3px;
  background: #fff;
  font-size: 1.6rem;
  /* IE */
  /* Edge */
}

.form-txt[disabled] {
  border: 1px solid #e0e0e0;
  background: #eee;
}

.form-txt[disabled]::-webkit-input-placeholder {
  color: #555;
  opacity: 1;
}

.form-txt[disabled]::placeholder {
  color: #555;
  opacity: 1;
}

.form-txt[disabled]:-ms-input-placeholder {
  color: #555;
}

.form-txt[disabled]::-ms-input-placeholder {
  color: #555;
}

.form-txt.must {
  background-color: #fdf5f5;
}

.form-txt.is-error {
  border: 2px solid #c00;
}

.form-txt._full {
  max-width: none;
}

.form-txt._card {
  max-width: 278px;
}

.form-txt._name {
  max-width: 195px;
}

.form-txt._yen {
  max-width: 158px;
}

.form-txt._small {
  max-width: 120px;
}

.form-txt._small-02 {
  max-width: 150px;
}

.form-txt._age {
  max-width: 62px;
}

.form-txt._mail {
  max-width: 340px;
}

.form-txt._tel {
  max-width: 210px;
}

@media only screen and (max-width: 600px) {
.form-txt._card._small {
  padding: 8px;
}
}

/* .form-txt-multi
----------------------------------------------- */
.form-txt-multi {
  display: flex;
  align-items: center;
}

.form-txt-multi input {
  min-width: 0;
}

.form-txt-multi .form-txt-multi_mark {
  margin: 0 8px;
}

/* .form-radio
----------------------------------------------- */
.form-radio {
  position: relative;
  display: inline-block;
}

.form-radio.is-error .form-radio_item::before {
  border: 2px solid #c00;
}

.form-radio.must .form-radio_item::before {
  background-color: #fdf5f5;
}

.form-radio .is-checked {
  display: inline;
  background-color: #ccc;
}

.form-radio input[type='radio'] {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

.form-radio .form-radio_item {
  position: relative;
  display: block;
  margin-left: 2px;
  padding: 0 0 0 26px;
  font-size: 1.6rem;
  cursor: pointer;
}

.form-radio .form-radio_item::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  display: block;
  content: "";
  border: 1px solid #9aa3b3;
  border-radius: 20px;
  background-color: #fff;
  box-shadow: 0 1px 1px #ccc inset;
}

.form-radio .form-radio_item::after {
  position: absolute;
  top: 5px;
  left: 5px;
  z-index: 1;
  width: 10px;
  height: 10px;
  display: block;
  content: "";
  border-radius: 10px;
  background-color: #555;
  opacity: 0;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.form-radio input[type='radio']:focus + label {
  outline: 2px solid #a6c8ff;
}

.form-radio input[type='radio']:checked + .form-radio_item::after {
  opacity: 1;
}

.form-radio input[type='radio']:disabled + .form-radio_item {
  color: #bfbfbf;
}

.form-radio input[type='radio']:checked:disabled + .form-radio_item::after {
  opacity: .3;
}

.form-radio input[type='radio'].must + .form-radio_item::before {
  background-color: #fdf5f5;
}

.form-radio input[type='radio'].is-must:checked + .form-radio_item::before {
  background-color: #fff;
}

/* .form-checkbox
----------------------------------------------- */
.form-checkbox {
  position: relative;
  display: inline-block;
}

.form-checkbox .is-checked {
  display: inline;
  background-color: #ccc;
}

.form-checkbox input[type='checkbox'] {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

.modal-refine .form-checkbox {
  margin: 12px 0 0;
  color: #000;
}

.form-checkbox .form-checkbox_item {
  position: relative;
  display: block;
  margin-left: 2px;
  padding: 0 0 0 28px;
  font-size: 1.6rem;
  cursor: pointer;
}

.form-checkbox .form-checkbox_item::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  display: block;
  content: "";
  border: 1px solid #9aa3b3;
  border-radius: 3px;
  background-color: #fff;
  box-shadow: 0 1px 1px #ccc inset;
}

.form-checkbox .form-checkbox_item::after {
  position: absolute;
  top: 4px;
  left: 3px;
  z-index: 1;
  width: 14px;
  height: 12px;
  display: block;
  content: "";
  opacity: 0;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
  background-image: url(../img/icon_check.png);
}

.form-checkbox .form-checkbox_item.must::before {
  background-color: #fdf5f5;
}

.form-checkbox .form-checkbox_item.is-error::before {
  border: 2px solid #c00;
}

.form-checkbox input[type='checkbox']:focus + label {
  outline: 2px solid #a6c8ff;
}

.form-checkbox input[type='checkbox']:checked + .form-checkbox_item::after {
  opacity: 1;
}

.form-checkbox input[type='checkbox'].must:checked + .form-checkbox_item::before {
  background-color: #fff;
}

.form-checkbox input[type='checkbox']:disabled + .form-checkbox_item {
  color: #bfbfbf;
}

.form-checkbox input[type='checkbox']:checked:disabled + .form-checkbox_item::after {
  opacity: .3;
}

.form-checkbox_item-inner {
  font-size: 1.4rem;
}

/* .form-select
----------------------------------------------- */
.form-select {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  max-width: 240px;
  width: 100%;
  border-radius: 3px;
  font-size: 1.6rem;
  line-height: 1.3;
}

.form-select::before {
  position: absolute;
  right: 16px;
  bottom: 20px;
  z-index: 1;
  width: 8px;
  height: 8px;
  display: block;
  content: "";
  border-top: 2px solid #c00;
  border-right: 2px solid #c00;
  transform: rotate(135deg) translate3d(0, 0, 0);
  pointer-events: none;
}
.js_is-pc .form-select::before {
  content: none;
}

.form-select select {
  position: relative;
  display: block;
  padding: 10px 30px 10px 12px;
  width: 100%;
  height: 46px;
  border: 1px solid #ccc;
  border-radius: 3px;
  background: #fff;
  font-size: 1.6rem;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

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

.form-select.must select {
  background-color: #fdf5f5;
}

.form-select.is-error select {
  border: 2px solid #c00;
}

.form-select._date {
  max-width: 70px;
}

.form-select._date::before {
  right: 12px;
}

.form-select._age {
  max-width: 62px;
}

.form-select._age select {
  padding-right: 20px;
}

.form-select._age::before {
  right: 12px;
}

.form-select._selectarea select {
 height: auto;
 padding-right: 30px;
}

.form-select._full {
  max-width: none;
}

.form-select._small {
  max-width: 120px;
}

.form-select._bank {
  min-width: 100px;
}

.form-select._sector {
  max-width: none;
}

@media only screen and (min-width: 768px) {
.form-select._selectarea select {
 padding-right: 12px;
}
.form-select._selectarea::before {
  content: none;
}
}

/* .form-error
----------------------------------------------- */
.form-error_wrap {
  position: relative;
  z-index: 1;
  width: 100%;
}

.form-error_wrap::before {
  position: absolute;
  top: -3px;
  left: 20px;
  z-index: 1;
  width: 8px;
  height: 8px;
  display: block;
  content: "";
  border-right: 5px solid rgba(0, 0, 0, 0);
  border-bottom: 5px solid rgba(204, 0, 0, .8);
  border-left: 5px solid rgba(0, 0, 0, 0);
}

.form-error_wrap .form-error_txt {
  position: absolute;
  top: 4px;
  margin-bottom: 0;
  padding: 6px 8px;
  border-radius: 3px;
  background-color: rgba(204, 0, 0, .8);
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .25);
  color: #fff;
  text-align: left;
  font-size: 1.2rem;
}

/* .form-link-calendar
----------------------------------------------- */
.form-link-calendar {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 12px 44px 12px 12px;
  min-height: 46px;
  max-width: 240px;
  width: 100%;
  border: 1px solid #ccc;
  border-radius: 3px;
  background: #fff;
  font-size: 1.6rem;
}

.form-link-calendar._full {
  max-width: none;
}
.form-link-calendar.must {
  background-color: #fdf5f5;
}

.form-link-calendar .form-link-calendar_data {
  margin-bottom: 0;
  color: #000;
}

.form-link-calendar .icon-modal {
  top: 15px;
}

.form-link-calendar.is-error {
  padding: 11px 44px 11px 12px;
  border: 2px solid #c00;
}

/* .lyt-radio-info
----------------------------------------------- */
.lyt-radio-info {
  display: inline-block;
  margin-bottom: 10px;
  line-height: 1.4;
}


.lyt-radio-info .form-radio {
  vertical-align: top;
}

.lyt-radio-info_sup {
  margin: 0 0 10px 15px;
  color: #000;
  vertical-align: top;
}

.lyt-radio-info_sup > .item {
  color: #616161;
}

.lyt-radio-info > .btn-update {
  margin-left: 20px;
}

.lyt-radio-info + .lyt-securitycode {
  position: relative;
  padding-left: 30px;
}

.lyt-radio-info + .form-table-wrap {
  padding-top: 15px;
}

/* .lyt-securitycode
----------------------------------------------- */
.lyt-securitycode {
  display: flex;
  margin-bottom: 20px;
}

.lyt-securitycode > .lyt-securitycode_item {
  margin-bottom: 0;
}

.lyt-securitycode > .lyt-securitycode_item:first-child {
  flex-shrink: 0;
}

.lyt-securitycode > .lyt-securitycode_item + .lyt-securitycode_item {
  margin-left: 28px;
}

.lyt-securitycode > .lyt-securitycode_item > .media-lyt {
  margin-bottom: 0;
}

.lyt-securitycode > .lyt-securitycode_item > :last-child {
  margin-bottom: 0;
}

.lyt-securitycode._between {
  justify-content: space-between;
}

.lyt-securitycode._middle {
  align-items: center;
}

@media only screen and (max-width: 750px) {
  .lyt-securitycode {
    display: block;
  }

  .lyt-securitycode > .lyt-securitycode_item + .lyt-securitycode_item {
    margin: 28px 0 0 0;
  }
}

/* .form-table._middle
----------------------------------------------- */
.form-table._middle tr th,
.form-table._middle tr td,
.form-table._middle .icon-label {
  vertical-align: middle;
}

/* .form-table-02
----------------------------------------------- */
.form-table-02 {
  table-layout: fixed;
  margin: 30px 0 20px;
  border: 1px solid #ccc;
  width: 100%;
}

.form-table-02 th,
.form-table-02 td {
  padding: 20px;
}

.form-table-02 th {
  background: #fafafa;
  text-align: left;
}

.form-table-02 td {
  background: #fff;
  color: #333;
}

.form-table-02 td p {
  font-size: 1.6rem;
}

.form-table-02 tbody th,
.form-table-02 tbody td {
  border-bottom: 1px dashed #ccc;
}

.form-table-02 tbody th .form-table,
.form-table-02 tbody td .form-table {
  margin-bottom: 0;
}

.form-table-02 tbody th .form-table th,
.form-table-02 tbody th .form-table td,
.form-table-02 tbody td .form-table th,
.form-table-02 tbody td .form-table td {
  border-bottom: 0;
}

.form-table-02 tbody th .form-table th,
.form-table-02 tbody td .form-table th {
  background: #fff;
}

.form-table-02 tbody th .form-table-02_sup,
.form-table-02 tbody td .form-table-02_sup {
  margin-bottom: 10px;
  color: #616161;
  font-size: 1.4rem;
  line-height: 1.5;
}

.form-table-02 tbody th .form-lyt-label + .form-table-02_sup,
.form-table-02 tbody td .form-lyt-label + .form-table-02_sup {
  margin-top: 20px;
}

.form-table-02 tbody th .icon-label._em,
.form-table-02 tbody td .icon-label._em {
  padding: 1px 8px 0;
  vertical-align: middle;
}

.form-table-02 tbody th p + div[role=alert],
.form-table-02 tbody td p + div[role=alert] {
  margin-top: -20px;
}

.form-table-02 tbody th > :last-child,
.form-table-02 tbody td > :last-child {
  margin-bottom: 0;
}

.form-table-02 tbody th > .toggle:last-child > p,
.form-table-02 tbody td > .toggle:last-child > p {
  margin-bottom: 0;
}

.form-table-02 tbody th > .toggle:last-child > p + .toggle_content,
.form-table-02 tbody td > .toggle:last-child > p + .toggle_content {
  margin-top: 10px;
}

.form-table-02 tbody th {
  color: #333;
}

.form-table-02 tbody tr:last-child td {
  border-bottom: none;
}

.form-table-02_inner_txt {
  display: inline-block;
  padding: 0 0 5px;
  vertical-align: middle;
}

.form-table-02_txt {
  margin-top: 20px;
}

.form-table-02_inner-02 {
  margin: 0 0 20px 20px;
}

.form-table-02_inner-02 > :last-child {
  margin-bottom: 0;
}

.form-table-02_txt-02 {
  font-size: 1.6rem;
}

.form-table-02 + .panel-info {
  margin-top: 60px;
}

@media only screen and (max-width: 750px) {
  .form-table-02 tbody,
  .form-table-02 tr,
  .form-table-02 tr th,
  .form-table-02 tr td {
    display: block;
    width: 100%;
  }

  .form-table-02 {
    table-layout: auto;
    display: block;
  }
}

/* .scroll-box
----------------------------------------------- */
.scroll-box {
  max-height: 270px;
  overflow-y: scroll;
}

.scroll-box .form-radio {
  display: block;
}

/* .form-table-login
----------------------------------------------- */
.form-table-login {
  max-width: 1000px;
  margin: 0 auto;
}

.form-table-login tr th {
  padding-right: 40px;
  text-align: left;
}

.form-table-login tr:not(:first-child) th,
.form-table-login tr:not(:first-child) td {
  padding-top: 20px;
}

.form-table-login td > *:last-child {
  margin-bottom: 0;
  vertical-align: middle;
}

.form-table-login td .form-list._inline > li {
  margin-bottom: 0;
}

.form-table-login .icon-label,
.form-table-login .icon-label_before,
.form-table-login input {
  vertical-align: middle;
}

.form-table-login .icon-label_before {
  padding-bottom: 0;
}

  .form-txt._login {
    min-width: 300px;
  }

@media only screen and (max-width: 600px) {
  .form-table-login,
  .form-table-login tbody,
  .form-table-login tr,
  .form-table-login th {
    display: block;
  }

  .form-table-login tr th {
    display: block;
    margin: 20px 0 0;
    text-align: left;
  }

  .form-table-login tr td {
    display: block;
    margin-top: 10px;
  }

  .form-table-login tr:not(:first-child) th,
  .form-table-login tr:not(:first-child) td {
    padding-top: 0;
  }

  .form-txt._login {
    max-width: none;
  }
}


/* .form-lyt-label
----------------------------------------------- */
.form-lyt-label {
  display: flex;
}

.form-lyt-label_item > :last-child {
  margin-bottom: 0;
}

.form-lyt-label_item + .form-lyt-label_item {
  margin-left: 15px;
}

.form-lyt-label_txt {
  display: inline-block;
  margin-top: 14px;
}

/* .form-search
----------------------------------------------- */
.form-search {
  margin-top: 30px;
  padding: 20px;
  background: #f8f8f8;
}

.form-search_inner {
  display: flex;
  justify-content: space-between;
  padding: 0 10px;
}

.form-search_inner._center {
  justify-content: center;
}

.form-search_inner._right {
  justify-content: flex-end;
}

.form-search_input {
  width: 70%;
}

.form-search_txtarea,
.form-search_btn {
  display: inline-block;
  letter-spacing: normal;
  vertical-align: middle;
}

.form-search_txtarea {
  width: 100%;
  margin: 0 10px 0 0;
}

.form-search_txt {
  margin: 10px 0 0;
}

.form-search_txtarea input[type=text] {
  width: 100%;
  height: 40px;
  border: 1px solid #a0a0a0;
  background: #fff;
  padding: 2px 5px 2px 5px;
  margin: 0;
}

.form-search_btn {
  display: flex;
  align-items: center;
  margin-left: 15px;
  padding: 10px 10px 10px 20px;
  color: #fff;
  background: #c00;
}

.form-search_title {
  margin: 0;
  font-weight: bold;
  font-size: 1.6rem;
}

.form-search_title span:lang(en) {
  font-weight: normal;
  font-size: 1.4rem;
}


.form-search_btn img {
  margin-left: 10px;
}

@media only screen and (max-width: 600px) {
  .form-search_inner {
    display: block;
  }

  .form-search_input,
  .form-search_btn {
    margin: 0 auto;
  }

  .form-search_input {
    width: 100%;
  }

  .form-search_btn {
    margin-top: 15px;
  }
}



/* ----------------------------------------------------------------
    Media
----------------------------------------------------------------- */
/* .media-lyt
----------------------------------------------- */
.media-lyt {
  display: flex;
  margin-bottom: 20px;
}

.media-lyt_item {
  flex-shrink: 0;
}

.media-lyt > .media-lyt_item > :last-child {
  margin-bottom: 0;
}

.media-lyt figure {
  margin: 0;
}

.media-lyt .media-lyt_col {
  margin-left: 15px;
}

.media-lyt .media-lyt_col > p, .media-lyt .media-lyt_col > ul, .media-lyt .media-lyt_col > ol, .media-lyt .media-lyt_col > dl {
  margin-bottom: 16px;
}

.media-lyt .media-lyt_col > div, .media-lyt .media-lyt_col > p, .media-lyt .media-lyt_col > ul, .media-lyt .media-lyt_col > ol, .media-lyt .media-lyt_col > dl {
  overflow: hidden;
}

.media-lyt .media-lyt_col > :first-child {
  margin-top: 0;
}

.media-lyt .media-lyt_col > :last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 750px) {
  .media-lyt {
    display: block;
  }

  .media-lyt .media-lyt_col {
    margin: 10px 0 0 0;
  }
}

/* ----------------------------------------------------------------
    modal
----------------------------------------------------------------- */
/* modal
----------------------------------------------- */
.modal {
  position: relative;
  display: block;
  max-width: 648px;
  width: 100%;
  min-height: 70px;
  margin: 0 auto;
  padding: 80px 20px 64px;
  background: #fff;
  box-shadow: 0 4px 15px rgba(0, 0, 0, .2);
  cursor: auto;
  border-radius: 6px;
}

.modal-inner {
  text-align: center;
}

.modal_title {
  font-size: 2.02rem;
  color: #282828;
}

.modal_close span {
  position: absolute;
  top: 20px;
  right: 20px;
  color: transparent;
}

.modal_close span::before,
.modal_close span::after {
  position: absolute;
  display: block;
  content: "";
  top: 5px;
  right: 20px;
  width: 2px;
  height: 22px;
  background: #c00;
}

.modal_close span::before {
  transform: rotate(45deg);
}

.modal_close span::after {
  transform: rotate(-45deg);
}


@media only screen and (max-width: 600px) {
  .modal_close span::before,
  .modal_close span::after {
    top: -5px;
    right: 3px;
  }
}

/* :lang
----------------------------------------------- */
span:lang(en) {
  margin-left: 10px;
}

br + span:lang(en) {
  margin-left: 0;
}

/* ----------------------------------------------------------------
    Helpers
----------------------------------------------------------------- */
/* Control Align
----------------------------------------------- */
.top {
  vertical-align: top !important;
}

.middle {
  vertical-align: middle !important;
}

.middle th, .middle td {
  vertical-align: middle !important;
}

.bottom {
  vertical-align: bottom !important;
}

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

.center {
  margin-right: auto !important;
  margin-left: auto !important;
  text-align: center !important;
}

.center br + span:lang(en) {
  margin-left: 20px;
}


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

/* Control Width
----------------------------------------------- */
.w-5 {
  width: 5% !important;
}

.w-10 {
  width: 10% !important;
}

.w-15 {
  width: 15% !important;
}

.w-20 {
  width: 20% !important;
}

.w-25 {
  width: 25% !important;
}

.w-30 {
  width: 30% !important;
}

.w-35 {
  width: 35% !important;
}

.w-40 {
  width: 40% !important;
}

.w-45 {
  width: 45% !important;
}

.w-50 {
  width: 50% !important;
}

.w-55 {
  width: 55% !important;
}

.w-60 {
  width: 60% !important;
}

.w-65 {
  width: 65% !important;
}

.w-70 {
  width: 70% !important;
}

.w-75 {
  width: 75% !important;
}

.w-80 {
  width: 80% !important;
}

.w-85 {
  width: 85% !important;
}

.w-90 {
  width: 90% !important;
}

.w-95 {
  width: 95% !important;
}

.w-100 {
  width: 100% !important;
}

.w-6 {
  width: 6% !important;
}

.w-8 {
  width: 8% !important;
}

.w-9 {
  width: 9% !important;
}

.w-11 {
  width: 11% !important;
}

.w-12 {
  width: 12% !important;
}

.w-13 {
  width: 13% !important;
}

.w-14 {
  width: 14% !important;
}

.w-16 {
  width: 16% !important;
}

.w-17 {
  width: 17% !important;
}

.w-18 {
  width: 18% !important;
}

.w-19 {
  width: 19% !important;
}

.w-21 {
  width: 21% !important;
}

.w-22 {
  width: 22% !important;
}

.w-23 {
  width: 23% !important;
}

.w-24 {
  width: 24% !important;
}

.w-28 {
  width: 28% !important;
}

.w-29 {
  width: 29% !important;
}

.w-31 {
  width: 31% !important;
}

.w-33 {
  width: 33% !important;
}

.w-34 {
  width: 34% !important;
}

.w-37 {
  width: 37% !important;
}

.w-48 {
  width: 48% !important;
}

/* Control Margin and Padding
----------------------------------------------- */
.pt-0 {
  padding-top: 0 !important;
}

.pr-0 {
  padding-right: 0 !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}

.pl-0 {
  padding-left: 0 !important;
}

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

.mr-0 {
  margin-right: 0 !important;
}

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

.ml-0 {
  margin-left: 0 !important;
}

.pt-5 {
  padding-top: 5px !important;
}

.pr-5 {
  padding-right: 5px !important;
}

.pb-5 {
  padding-bottom: 5px !important;
}

.pl-5 {
  padding-left: 5px !important;
}

.mt-5 {
  margin-top: 5px !important;
}

.mr-5 {
  margin-right: 5px !important;
}

.mb-5 {
  margin-bottom: 5px !important;
}

.ml-5 {
  margin-left: 5px !important;
}

.pt-10 {
  padding-top: 10px !important;
}

.pr-10 {
  padding-right: 10px !important;
}

.pb-10 {
  padding-bottom: 10px !important;
}

.pl-10 {
  padding-left: 10px !important;
}

.mt-10 {
  margin-top: 10px !important;
}

.mr-10 {
  margin-right: 10px !important;
}

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

.ml-10 {
  margin-left: 10px !important;
}

.pt-15 {
  padding-top: 15px !important;
}

.pr-15 {
  padding-right: 15px !important;
}

.pb-15 {
  padding-bottom: 15px !important;
}

.pl-15 {
  padding-left: 15px !important;
}

.mt-15 {
  margin-top: 15px !important;
}

.mr-15 {
  margin-right: 15px !important;
}

.mb-15 {
  margin-bottom: 15px !important;
}

.ml-15 {
  margin-left: 15px !important;
}

.pt-20 {
  padding-top: 20px !important;
}

.pr-20 {
  padding-right: 20px !important;
}

.pb-20 {
  padding-bottom: 20px !important;
}

.pl-20 {
  padding-left: 20px !important;
}

.mt-20 {
  margin-top: 20px !important;
}

.mr-20 {
  margin-right: 20px !important;
}

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

.ml-20 {
  margin-left: 20px !important;
}

.pt-25 {
  padding-top: 25px !important;
}

.pr-25 {
  padding-right: 25px !important;
}

.pb-25 {
  padding-bottom: 25px !important;
}

.pl-25 {
  padding-left: 25px !important;
}

.mt-25 {
  margin-top: 25px !important;
}

.mr-25 {
  margin-right: 25px !important;
}

.mb-25 {
  margin-bottom: 25px !important;
}

.ml-25 {
  margin-left: 25px !important;
}

.pt-30 {
  padding-top: 30px !important;
}

.pr-30 {
  padding-right: 30px !important;
}

.pb-30 {
  padding-bottom: 30px !important;
}

.pl-30 {
  padding-left: 30px !important;
}

.mt-30 {
  margin-top: 30px !important;
}

.mr-30 {
  margin-right: 30px !important;
}

.mb-30 {
  margin-bottom: 30px !important;
}

.ml-30 {
  margin-left: 30px !important;
}

.pt-35 {
  padding-top: 35px !important;
}

.pr-35 {
  padding-right: 35px !important;
}

.pb-35 {
  padding-bottom: 35px !important;
}

.pl-35 {
  padding-left: 35px !important;
}

.mt-35 {
  margin-top: 35px !important;
}

.mr-35 {
  margin-right: 35px !important;
}

.mb-35 {
  margin-bottom: 35px !important;
}

.ml-35 {
  margin-left: 35px !important;
}

.pt-40 {
  padding-top: 40px !important;
}

.pr-40 {
  padding-right: 40px !important;
}

.pb-40 {
  padding-bottom: 40px !important;
}

.pl-40 {
  padding-left: 40px !important;
}

.mt-40 {
  margin-top: 40px !important;
}

.mr-40 {
  margin-right: 40px !important;
}

.mb-40 {
  margin-bottom: 40px !important;
}

.ml-40 {
  margin-left: 40px !important;
}

.pt-45 {
  padding-top: 45px !important;
}

.pr-45 {
  padding-right: 45px !important;
}

.pb-45 {
  padding-bottom: 45px !important;
}

.pl-45 {
  padding-left: 45px !important;
}

.mt-45 {
  margin-top: 45px !important;
}

.mr-45 {
  margin-right: 45px !important;
}

.mb-45 {
  margin-bottom: 45px !important;
}

.ml-45 {
  margin-left: 45px !important;
}

.pt-50 {
  padding-top: 50px !important;
}

.pr-50 {
  padding-right: 50px !important;
}

.pb-50 {
  padding-bottom: 50px !important;
}

.pl-50 {
  padding-left: 50px !important;
}

.mt-50 {
  margin-top: 50px !important;
}

.mr-50 {
  margin-right: 50px !important;
}

.mb-50 {
  margin-bottom: 50px !important;
}

.ml-50 {
  margin-left: 50px !important;
}


.boarding-information-block {
  text-align: center;
  margin-bottom: 30px;
}

.boarding-information-block > .center {
  margin-bottom: 0;
  background-color: #F4F5F6;
  padding: 16px 24px;
  display: inline-flex;
}


.hdg-overwrap{
padding: 50px 10px
}
.hdg-overwrap.gry{
background-color:#F4F5F6;
}
.hdg-overwrap.blue{
background-color:#ECF2F9;
}
.hdg-overwrap.green{
background-color:#EBF6F5;
}
.hdg-overwrap > .hdg-l1{
margin: 0 auto;
width:980px;
}
#main > .hdg-overwrap + .main-inner{
padding-top: 10px;
}
@media all and (max-width:600px){
.hdg-overwrap{
padding: 22px 10px
}
.hdg-overwrap > .hdg-l1{
width:100%;
}
}
@media only screen and (min-width: 600px) {
  .br-pcmode {
    display: none;
  }
}




/* ----------------------------------------------------------------
    infrastructure
----------------------------------------------------------------- */

.fc-rd {
  color: #CC0000;
}

/* .disNon
----------------------------------------------- */
.disNon {
  display: none !important;
}

/* .consent-update
----------------------------------------------- */
.main-inner > .consent-update p {
  margin-top: 48px;	
}

/* .list-decimal
----------------------------------------------- */
.list-decimal > li {
  list-style-type:decimal;
  margin-left: 22px;
}

/* .list-parentheses
----------------------------------------------- */
.list-parentheses > li {
  margin-left: 22px;
  text-indent: -22px;
}

/* .list-circle
----------------------------------------------- */
.list-circle {
  margin-bottom: 0;
}
.list-circle > li {
  margin-left: 22px;
  text-indent: -22px;
}

/* form-txt
----------------------------------------------- */
.form-txt {
  box-sizing: border-box;
  padding: 12px;
  max-width: 240px;
  width: 100%;
  height: 46px;
  border: 1px solid #ccc;
  border-radius: 3px;
  background: #fff;
  font-size: 1.6rem;
  /* IE */
  /* Edge */
}

.form-txt[disabled] {
  border: 1px solid #e0e0e0;
  background: #eee;
}

.form-txt[disabled]::-webkit-input-placeholder {
  color: #555;
  opacity: 1;
}

.form-txt[disabled]::placeholder {
  color: #555;
  opacity: 1;
}

.form-txt[disabled]:-ms-input-placeholder {
  color: #555;
}

.form-txt[disabled]::-ms-input-placeholder {
  color: #555;
}

.form-txt.must {
  background-color: #fdf5f5;
}

.form-txt.is-error {
  border: 2px solid #c00;
}

.form-txt._full {
  max-width: none;
}

.form-txt._card {
  max-width: 278px;
}

.form-txt._name {
  max-width: 195px;
}

.form-txt._yen {
  max-width: 158px;
}

.form-txt._small {
  max-width: 120px;
}

.form-txt._small-02 {
  max-width: 150px;
}

.form-txt._age {
  max-width: 62px;
}

.form-txt._mail {
  max-width: 340px;
}

.form-txt._tel {
  max-width: 210px;
}

.form-txt._company {
  max-width: 340px;
}

/* .form-table-02
----------------------------------------------- */

.form-table-02_inner_txt {
  display: inline-block;
  padding: 0px;
  vertical-align: middle;
}


/* .name-note
----------------------------------------------- */
.name-note {
  margin-top: -20px
}

@media only screen and (max-width: 600px) {
.name-note {
  margin-top: -15px
}
}

/* .form-list-03
----------------------------------------------- */
/* .form-list-03 {
  padding: 0 15px;
} */

/*.form-list-03 .form-list-03_inner {
  margin-bottom: 0px;
}

.form-list-03._inline .form-list-03_inner {
  display: inline-block;
  margin-right: 15px;
}

.form-list-03 dt {
  display: inline-block;
  margin-right: 15px;
  vertical-align: middle;
}

.form-list-03 dd {
  display: inline;
}

.form-list-03 .form-error {
  display: inline-block;
}

.form-list-03 .form-lyt-label_txt {
  display: inline-block;
  margin-top: 0;
}

@media only screen and (max-width: 600px) {
  .form-list-03._inline .form-list-03_inner {
    display: block;
    margin-right: 0;
  }

  .form-list-03 dt {
    display: block;
    width: auto !important;
    margin: 10px 0 5px;
  }
}*/

/* .consent-form
----------------------------------------------- */
.consent-form {
  border: 1px solid #ccc;
  padding: 0 20px 20px;
  max-height: 270px;
  overflow-y: scroll;
  line-height: 1.6;
}

#main > .main-inner > .consent-form {
  margin: 48px auto 0;
}

.consent-form > dl > dd > ol {
  margin-left: 22px;
  margin-bottom: 0;
}

.consent-form > dl > dt {
  font-weight: 700;
}


/* .companylogo
----------------------------------------------- */
.companylogo img {
  padding-right: 15px;
  vertical-align: middle;
}

@media only screen and (max-width: 600px) {
.companylogo img {
  display: block;
  margin: 0 auto 15px;
}
}



.btn._no-arrow::before {
  content: none;
}
.link._no-arrow::before {
  content: none;
}

/* .hdg-l1
----------------------------------------------- */
.hdg-l1_txt span {
  font-size: 1.5rem;
}

/* .selflogin-wrap
----------------------------------------------- */
#main > .main-inner > .selflogin-wrap {
  margin-top: 48px !important;
}

/* notmember
----------------------------------------------- */
.notmember {
  margin-top: 15px;
}

/* .joinjmb
----------------------------------------------- */
.joinjmb {
  background-color: #F4F5F6;
  display: block;
  width: fit-content;
  margin: 30px auto;
  padding: 16px 24px;
}

.joinjmb-inner {
  display: flex;
}

.joinjmb-inner p {
  font-weight: 700;
  margin-left: 20px;
  margin-bottom: 0;
  line-height: 1.5;
}

.joinjmb-inner p span {
  font-weight: normal;
}

/* .companyname
----------------------------------------------- */
.companyname {
  text-align: left;
}

.companyname th {
  font-weight: normal;
}

/* .multiple-select
----------------------------------------------- */
.multiple-select {
  box-sizing: border-box;
  padding: 12px;
  max-width: 340px;
  width: 100%;
  height: 100px;
  border: 1px solid #ccc;
  border-radius: 3px;
  background: #fff;
  font-size: 1.6rem;
}

/* .form-table-login
----------------------------------------------- */
.form-table-login._ja {
  max-width: 500px;
  margin: 0 auto;
}


/* ----------------------------------------------------------------
    panel-form
----------------------------------------------------------------- */

.panel-form .panel-form-inner > .panel-form-inner_item {
  width: 100%;	
}

@media screen and (min-width: 768px) {
.panel-form .panel-form-inner > .panel-form-inner_item {
  width: 460px;
  margin: 0 auto;
}
}

@media screen and (min-width: 768px) {
.panel-form-inner_parts:not(:first-child) {
  margin-top: 40px;
}
}

.panel-form .panel-form-inner > .panel-form-inner_item > form > .panel-form-inner_parts .form-txt {
  max-width: 100%;
}

.form-label {
  font-weight: 700;
  font-size: 1.5rem;
  margin-bottom: 10px;
}

.panel-form .form-label, .panel-form .mb-form-label {
    margin-bottom: 10px;
}

/* ----------------------------------------------------------------
    membership
----------------------------------------------------------------- */
.list._membership > li {
  margin-bottom: 10px;
}

.list-note._membership > li {
  margin-bottom: 10px;
}

.hdg-l1 .membership-h1{
  font-size: 2.8rem;
}

.hdg-l1 .membership-h1._DC {
  margin-left: 65px;
}

.hdg-l1 .membership-h1._UC {
  margin-left: 55px;
}

.hdg-l1 .membership-h1._SMBC {
  margin-left: 95px;
}

.hdg-l1 .membership-h1._DINERS {
  margin-left: 125px;
}

@media only screen and (max-width: 600px) {
.hdg-l1 .membership-h1._DC,.hdg-l1 .membership-h1._UC,.hdg-l1 .membership-h1._SMBC,.hdg-l1 .membership-h1._DINERS {
  margin-left: 0;
}
}