@charset "UTF-8";

/* html */
html {
    font-size: initial !important;
}

.grid-row.grid-footer {
   width: 100%;
}

@media screen and (max-width: 964px){
    .grid-row.for-header {
        padding-top: 62px;
    }
    .grid-row.for-header.tmp-user{
        padding-top: 91px;
    }
}
@media screen and (min-width: 965px){
    .grid-row.for-header {
        padding-top: 65px;
    }
}
.header {
    border-bottom: 3px solid #f5f5f5;
}

/* header */
.header {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 10;
  width: 100%;
  background-color: #fff;
}
.header .header_inner {
  position: relative;
  min-height: 46px;
  padding: 0 15px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.header .header_inner .sp_drawer {
  width: 24px;
  height: 24px;
  background-image: url(../../img/v2/svg/icon_drawer.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
.header .header_inner .sp_drawer.open {
  background-image: url(../../img/v2/svg/icon_close.svg);
}
.header .header_inner .sp_drawer img {
  width: 100%;
  max-width: 24px;
  height: auto;
}
.header .header_inner .logo {
  margin: 0 auto;
}
@media screen and (max-width: 964px){
  .header .header_inner .logo {
    margin: 10px auto 5px auto !important;
  }
}
.header .header_inner .logo img {
  /*width: 100%;
  height: auto;*/
}
.header .header_inner .icon_user {
  cursor: pointer;
  width: 24px;
  height: 24px;
  background-image: url(../../img/v2/svg/icon_user.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
.header .header_inner .icon_user.open {
  background-image: url(../../img/v2/svg/icon_close.svg);
}
.header .header_inner .icon_user img {
  width: 100%;
  max-width: 24px;
  height: auto;
}
.header {
    border-bottom:3px solid #f5f5f5;
}
.user_info .user_info_inner {
    box-shadow: none;
}
.user_info .user_info_inner {
    box-shadow: 0 1px 3px rgb(0 0 0 / 16%) inset;
    padding: 20px 0 0;
    background-color: #fff;
}
.user_info .user_info_inner .user_info_contents {
    padding: 0 15px;
}
.user_info .user_info_inner .btns a {
    text-align:center !important;
}
.user_info_table th, .user_info_table td {
    padding: 12px 0;
    text-align: left;
    font-weight: normal;
}
.table_type_2col .table_tr th.table_th, table th {
    font-weight: bold !important;
}
.user_info_table td {
    display: flex;
    align-items: center;
    padding-left: 20px;
}
header .table_type_2col .table_tr .table_td, table td {
    font-weight: normal !important;
}
header table td {
    font-size: 0.875rem !important;
}
header .user_info .user_info_inner .btns {
    display: flex;
    gap: 15px;
    margin-top: 20px;
}
header .user_info .user_info_inner .btns a {
    text-align: center !important;
}
header .user_info .user_info_inner .btns a {
    font-size: 0.875rem;
    text-align: left;
    padding-left: 10px;
}
header .button_middle {
    color: #EB5505;
    background-color: #fff;
    padding: 13px 0;
    text-align: center;
    border: 1px solid #ccc;
}
header .button_middle::after {
    content: url(../../img/v2/svg/icon_gray_arrow.svg);
    position: absolute;
    top: 46%;
    right: 9px;
    transform: translateY(-50%);
    margin-top: 4px;
}
header .button_strong, .button_middle, .button_weak, .button_different, .button_explanation, .button_back, .button_reset, .button_type01, .button_more, .button_pdf, .button_csv, .button_detail, .button_sub_lv1, .button_sub_lv2, .button_sub_lv3 {
    position: relative;
    display: block;
    text-decoration: none;
    position: relative;
    font-weight: bold;
    line-height: 1.3;
    transition: color 0.3s ease, background-color 0.3s ease;
    border-radius: 4px;
    width: 100%;
    cursor: pointer;
    font-size: 1rem;
}
header .mb20 {
    margin-bottom: 20px !important;
}


.point span {margin-right:5px;}


@media screen and (min-width: 960px){
  .header {
    box-shadow: none;
  }
  .header .header_inner {
    max-width: 960px;
    height: 60px;
    margin: 0 auto;
    padding: 0;
    justify-content: flex-start;
  }
  .header .header_inner .sp_drawer {
    display: none;
  }
  .header .header_inner .logo {
    margin: 0 auto 0 0;
  }
  .header .header_inner .logo img {
    width: 175px;
  }
}
.header h1 {
  font-weight: normal !important;
}
.header h1 #msg {
    font-size: 0.875rem !important;
}
header a:link, header a:visited, header a:hover, header a:active {
    text-decoration: none;
}

@media screen and (max-width: 639px) {
    header img {
        width: initial;
        height: initial;
    }
}
.user_info.open {
    visibility: visible;
    opacity: 1;
}
@media screen and (min-width: 960px) {
    .user_info {
        max-width: 375px;
    }
}
.user_info {
    visibility: hidden;
    opacity: 0;
    position: absolute;
    right: 0;
    top: 100%;
    z-index: 2;
    width: 100%;
    box-shadow: 0 2px 4px rgb(0 0 0 / 16%);
    background-color: #fff;
    transition: visibility 0.25s, opacity 0.25s;
}
a.button_middle {
    color: #EB5505;
    background-color: #fff;
    padding: 13px 0;
    text-align: center;
    border: 1px solid #ccc;
}


/* nav */
.nav {
  visibility: hidden;
  opacity: 0;
  position: fixed;
  top: 48px;
  left: 0;
  z-index: 9;
  width: 100%;
  height: calc(100vh - 48px);
  overflow: scroll;
  font-size: 0.875rem;
  background-color: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.16) inset;
  transition: visibility 0.25s, opacity 0.25s;
}
.main.tmp-user .nav {
  top: 76px;
}
.nav.open {
  visibility: visible;
  opacity: 1;
}
.nav .globalnav {
  font-size: 0.875rem;
  line-height: 1.4;
  display: flex;
  flex-wrap: wrap;
}
.nav .globalnav .has_child {
  cursor: pointer;
}
.nav .globalnav > li {
  width: 100%;
}
.nav .globalnav > li:first-child {
  width: 50%;
}
.nav .globalnav > li:nth-child(2) {
  width: 50%;
  border-top: none;
  border-left: solid 1px #ccc;
}
.nav .globalnav > li + li {
  border-top: solid 1px #ccc;
}
.nav .globalnav > li > a, .nav .globalnav > li > span {
  padding: 8px;
}
.nav .globalnav > li a,
.nav .globalnav > li span {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #333;
  font-weight: bold;
}
.nav .globalnav > li a .menu_icon,
.nav .globalnav > li span .menu_icon {
  margin-right: 10px;
}
.nav .globalnav > li a .menu_icon img,
.nav .globalnav > li span .menu_icon img {
  width: 30px;
  height: 30px;
  -o-object-fit: contain;
     object-fit: contain;
}
.nav .globalnav > li a::after,
.nav .globalnav > li span::after {
  content: "";
  width: 16px;
  min-width: 16px;
  height: 16px;
  margin-left: auto;
  background-image: url(../../img/v2/svg/icon_menu_arrow.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}
.nav .globalnav > li span::after {
  background-image: url(../../img/v2/svg/icon_menu_plus.svg);
}
.nav .globalnav > li span.open::after {
  background-image: url(../../img/v2/svg/icon_menu_minus.svg);
}
.nav .globalnav > li ul {
  display: none;
  background-color: #F5F5F5;
}
.nav .globalnav > li ul li {
  padding: 12px 0 12px calc(55px + 1em);
}
.nav .globalnav > li ul li.list_top {
  padding-left: 55px;
}
.nav .logout {
  background-color: #F5F5F5;
  border-top: solid 1px #CCC;
  padding: 30px 15px;
}
.nav .logout .btn_logout {
  max-width: 345px;
  margin: 0 auto;
}
.nav .logout .btn_logout a,
.nav .logout .btn_logout input[type=submit],
.nav .logout .btn_logout button {
  display: grid;
  place-content: center;
  width: 100%;
  height: 48px;
  text-decoration: none;
  border: solid 1px #767676;
  border-radius: 4px;
  font-size: 1rem;
  color: #333;
  font-weight: bold;
  background-color: #fff;
  background-image: url(../../img/v2/svg/icon_logout.svg);
  background-repeat: no-repeat;
  background-position: right 10px center;
}

@media screen and (min-width: 960px){
  .nav {
    visibility: visible;
    opacity: 1;
    position: static;
    border-top: solid 1px #ccc;
    height: auto;
  }
  .nav .globalnav > li:first-child {
    width: 100%;
  }
  .nav .globalnav > li:nth-child(2) {
    width: 100%;
    border-top: solid 1px #ccc;
    border-left: none;
  }
  .nav .globalnav > li ul li {
    font-size: 0.75rem;
  }
  .nav .globalnav > li ul li.list_top {
    font-size: 0.875rem;
  }
  .user_info {
    max-width: 375px;
  }
  .user_info .user_info_inner {
    box-shadow: none;
  }
  .l-container {
    padding-left: 0;
    padding-right: 0;
  }
}
.nav .globalnav > li:first-child,
.nav .globalnav > li:nth-child(2) {
    width: 100% !important;
}
@media screen and (max-width: 639px){
    #nav {
        margin-top:-2px;
    }
    .nav .globalnav > li:first-child,
    .nav .globalnav > li:nth-child(2) {
        width: 100% !important;
    }
    .nav .globalnav > li:nth-child(2) {
      border-top: solid 1px #ccc !important;
      border-left: none !important;
    }
    body.fixed {
        position: fixed;
        width: 100%;
        height: 100%
    }
}
@media screen and (min-width: 430px){
    .nav {
        overflow: auto;
        box-shadow: none;
        font-size: .875rem
    }
}
.nav .globalnav > li.gray_out a,
.nav .globalnav > li.gray_out span {
    background-color:#f5f5f5 !important;
    color:#999 !important;
}
.nav .globalnav > li span::after {
  background-image: url(../../img/v2/svg/icon_menu_arrow.svg) !important;
}

/* footer */
.footer {
  margin-top: 30px;
}
.footer .pagetop {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 15px 20px;
}
.footer .pagetop p {
  font-size: 1rem;
  font-weight: bold;
}
.footer .pagetop p a {
  display: flex;
  justify-content: flex-end;
  color: #767676;
  text-decoration: none;
}
.footer .pagetop p a::after {
  display: block;
  content: "";
  width: 16px;
  height: 16px;
  margin-left: 8px;
  background-image: url(../../img/v2/svg/icon_arrow_up.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}
.footer.logout .footer_contents {
    padding-top: 30px;
}
.footer_contents {
  background-color: #F5F5F5;
}
.footer_contents .footer_inner {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 14px 30px;
}
.footer_contents .footer_inner .logout {
  padding: 30px 15px;
}
.footer_contents .footer_inner .logout .btn_logout a,
.footer_contents .footer_inner .logout .btn_logout input[type=submit],
.footer_contents .footer_inner .logout .btn_logout button {
  display: grid;
  place-content: center;
  width: 100%;
  max-width: 300px;
  height: 48px;
  margin: 0 auto;
  text-decoration: none;
  border: solid 1px #ccc;
  border-radius: 4px;
  font-size: 1rem;
  color: #333;
  font-weight: bold;
  background-color: #fff;
  background-image: url(../../img/v2/svg/icon_logout.svg);
  background-repeat: no-repeat;
  background-position: right 10px center;
}
.footer_contents .footer_nav {
  font-size: 0.875rem;
}
.footer_contents .footer_nav ul {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}
.footer_contents .footer_nav ul li + li {
  border-left: solid 1px #ccc;
  padding-left: 16px;
}
.footer_contents .footer_nav ul li a {
  color: #333;
  text-decoration: none;
}
.footer_contents .footer_nav ul li a[target=_blank] {
  display: flex;
  align-items: center;
}
.footer_contents .footer_nav ul li a[target=_blank]::after {
  display: block;
  width: 20px;
  height: 20px;
  margin-left: 10px;
  content: "";
  background-image: url(../../img/v2/svg/icon_external.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
.footer_contents .copy {
  margin-top: 16px;
  margin-bottom: 0px;
  text-align: center;
  font-size: 0.625rem;
}
@media screen and (min-width: 960px){
  .footer .pagetop {
    padding: 0 0 30px;
  }
  .footer_contents .footer_inner {
    padding: 0 0 30px 0;
  }
  .footer_contents .footer_nav ul {
    justify-content: center;
  }
}
footer#logout .footer_contents .footer_inner {
  padding: 30px 14px 30px !important;
}

/* パンくず */
@media screen and (min-width: 965px) {
    #header #crumbs div.wrapper {
        padding: 6px 10px 7px 0;
    }
}

/* main/contents */
@media screen and (min-width: 965px) {
    .default div#content {
        margin-left: 0px !important;
    }
}
@media screen and (min-width: 965px){
    /* TODO 以下がリニューアル後のCSSだが取り込めるものがないかあとで確認 */
	/*
	div.main {
        max-width: 960px;
        margin: 0 auto;
        display: grid;
        grid-template-columns: minmax(0, 1fr) 285px;
        gap: 40px;
    } */
}

@media screen and (min-width: 960px){
  /* TODO  .main {
    padding-top: 60px;
  }*/
  .contents {
    max-width: 960px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 285px;
    gap: 40px;
  }
  .ponta_point .ponta_point_inner {
    max-width: 960px;
    margin: 0 auto;
    padding: 3px 0;
  }
}


@media screen and (min-width: 960px){
    #logout .contents {
        grid-template-columns: minmax(0, 1fr) 0 !important;
        gap: 0px !important;
        max-width:675px !important;
        text-align:center;
    }
    #logout .contents .contents_inner {
        width:675px !important;
        margin:0 auto;
        text-align:left !important;
    }
    #logout .header .header_inner .logo {
        margin-left: 143px;
    }
}

/* ボタン */
/* 以下、カスタム */
#content .control.narrowOrderBydesc.v2-button, #content .control.narrowOrderByasc.v2-button {
    /*width: 345px !important;*/
    max-width: 312px !important;
    width: initial !important;
    padding: 0;
    clear: both;
    position: relative;
}
#content .control.v2-button div.buttonWrapper {
    width: 100% !important;
}
#content div.control.v2-button div.buttonWrapper button {
/*    max-width: 345px !important;*/
    max-width: 312px !important;
    width: 100% !important;
    padding: 13px 0;
}
.button_strong.blank::after {
    content: url(../../img/v2/icon_external_blank.png) !important;
}
.button_middle.blank::after {
    content: url(../../img/v2/svg/icon_external.svg) !important;
}
@media screen and (min-width: 640px){
    #content .control.v2-button.narrowOrderBydesc.two-vertical-button {
        height: 125px;
        margin-top: 30px;
    }
    #content .control.v2-button.narrowOrderBydesc div.buttonWrapper {
        display: block;
    }
    #content .control.v2-button.narrowOrderBydesc.two-vertical-button div.buttonWrapper:nth-last-child(4) {
        top: 60px;
        padding-top: 12px;
    }
    #content .control.v2-button div.buttonWrapper {
        margin: 0;
    }
}
@media screen and (max-width: 639px){
    #content .control.narrowOrderBydesc.two-vertical-button div.buttonWrapper:nth-last-child(4) {
        top: 60px;
        padding-top: 6px;
    }
}
#content .control.v2-button.two-vertical-button.narrowOrderBydesc div.pillar:nth-last-child(1) {
  height: 55px;
}
#content .control.v2-button.narrowOrderBydesc div.buttonWrapper {
  position: absolute;

}
#content .control.v2-button.narrowOrderBydesc div.buttonWrapper:nth-of-type(1) {
  position: relative;
}
#content .control.v2-button.narrowOrderBydesc div.buttonWrapper:nth-last-child(2) {
  top: 0;
}
#content .control.v2-button.narrowOrderBydesc div.buttonWrapper:nth-last-child(4) {
  top: 60px;
}
#content .control.v2-button.narrowOrderBydesc div.buttonWrapper:nth-last-child(6) {
  top: 120px;
}
#content .control.v2-button.narrowOrderBydesc div.buttonWrapper:nth-last-child(8) {
  top: 180px;
}
#content .control.v2-button.narrowOrderBydesc div.buttonWrapper:nth-last-child(10) {
  top: 240px;
}
#content .control.v2-button.narrowOrderBydesc div.buttonWrapper:nth-last-child(12) {
  top: 300px;
}
#content .control.v2-button.narrowOrderBydesc div.buttonWrapper:nth-last-child(14) {
  top: 360px;
}
#content .control.v2-button.narrowOrderBydesc div.buttonWrapper:nth-last-child(16) {
  top: 420px;
}
#content .control.v2-button.narrowOrderBydesc div.buttonWrapper:nth-last-child(18) {
  top: 480px;
}
#content .control.v2-button.narrowOrderBydesc div.buttonWrapper:nth-last-child(6):nth-of-type(1) {
  height: 80px;
}
#content .control.v2-button.narrowOrderBydesc div.buttonWrapper:nth-last-child(8):nth-of-type(1) {
  height: 125px;
}
#content .control.v2-button.narrowOrderBydesc div.buttonWrapper:nth-last-child(10):nth-of-type(1) {
  height: 170px;
}
#content .control.v2-button.narrowOrderBydesc div.buttonWrapper:nth-last-child(12):nth-of-type(1) {
  height: 215px;
}
#content .control.v2-button.narrowOrderBydesc div.buttonWrapper:nth-last-child(14):nth-of-type(1) {
  height: 260px;
}
#content .control.v2-button.narrowOrderBydesc div.buttonWrapper:nth-last-child(16):nth-of-type(1) {
  height: 305px;
}
#content .control.v2-button.narrowOrderBydesc div.buttonWrapper:nth-last-child(18):nth-of-type(1) {
  height: 350px;
}
#content .control.v2-button.narrowOrderByasc div.buttonWrapper {
  position: relative;
}
#content .control.v2-button.narrowOrderByasc div.pillar:nth-last-child(1) {
  height: 0px;
}
.btn_w345 {
/*    width: 345px !important;*/
    width: 312px !important;
    margin: 0 auto;
}
.button_strong {
    border: none;
}
.button_weak.blank::after {
    content: url(../../img/v2/svg/icon_external.svg) !important;
}
.btn_item.disable {
  opacity: 40%;
  cursor: default;
  pointer-events: none;
}

#content .control div.buttonWrapper button.button_strong,
#content .control div.buttonWrapper button.button_middle,
#content .control div.buttonWrapper button.button_weak,
#content .control div.buttonWrapper button.button_different,
#content .control div.buttonWrapper button.button_explanation,
#content .control div.buttonWrapper button.button_back,
#content .control div.buttonWrapper button.button_reset,
#content .control div.buttonWrapper button.button_type01,
#content .control div.buttonWrapper button.button_more,
#content .control div.buttonWrapper button.button_pdf,
#content .control div.buttonWrapper button.button_csv,
#content .control div.buttonWrapper button.button_detail,
#content .control div.buttonWrapper button.button_sub_lv1,
#content .control div.buttonWrapper button.button_sub_lv2,
#content .control div.buttonWrapper button.button_sub_lv3 {
  padding: 13px 0;
}

/* 以下、v2そのまま */
.button_strong,
.button_middle,
.button_weak,
.button_different,
.button_explanation,
.button_back,
.button_reset,
.button_type01,
.button_more,
.button_pdf,
.button_csv,
.button_detail,
.button_sub_lv1,
.button_sub_lv2,
.button_sub_lv3 {
  position: relative;
  display: block;
  text-decoration: none;
  position: relative;
  font-weight: bold;
  line-height: 1.3;
  transition: color 0.3s ease, background-color 0.3s ease;
  border-radius: 4px;
  width: 100%;
  cursor: pointer;
  font-size: 1rem;
/*  width: 345px !important;*/
  width: 312px;
  margin: 0 auto;
}
.button_strong {
  color: #fff;
  background-color: #EB551B;
  padding: 13px 0;
  text-align: center;
}
.button_strong::after {
  content: url(../../img/v2/svg/icon_white_arrow.svg);
  position: absolute;
  top: 46%;
  right: 9px;
  transform: translateY(-50%);
  /*margin-top: 4px;*/
  margin-top: 1px;
}
.button_strong:hover {
  background-color: #DF5119;
}
.button_strong:disabled {
  opacity: 40%;
  cursor: default;
  pointer-events: none;
}
.button_middle:disabled {
  opacity: 40%;
  cursor: default;
  pointer-events: none;
}
.button_middle.disabled {
  opacity: 40%;
  cursor: default;
  pointer-events: none;
}
.button_middle.submit-link div {
    color: #EB5505;
}

.button_middle {
  color: #EB5505;
  background-color: #fff;
  padding: 13px 0;
  text-align: center;
  border: 1px solid #ccc;
}
.button_middle::after {
  content: url(../../img/v2/svg/icon_gray_arrow.svg);
  position: absolute;
  top: 46%;
  right: 9px;
  transform: translateY(-50%);
    /*margin-top: 4px;*/
    margin-top: 1px;
}
.button_middle:hover {
  color: #DF5119;
  background-color: #F2F2F2;
  border: 1px solid #C2C2C2;
}

.button_weak {
  color: #333;
  background-color: #fff;
  padding: 13px 0;
  text-align: center;
  border: 1px solid #ccc;
}
.button_weak::after {
  content: url(../../img/v2/svg/icon_gray_arrow.svg);
  position: absolute;
  top: 53% !important;
  right: 9px;
  transform: translateY(-50%);
  margin-top: -1px;
}
.button_weak:hover {
  color: #303030;
  background-color: #F2F2F2;
  border: 1px solid #C2C2C2;
}

.button_different {
  color: #EB5505;
  background-color: #fff;
  padding: 13px 0;
  text-align: center;
  border: 1px solid #ccc;
}
.button_different::after {
  content: url(../../img/v2/svg/icon_external.svg);
  position: absolute;
  top: 46%;
  right: 9px;
  transform: translateY(-50%);
  margin-top: 2px;
}
.button_different:hover {
  color: #DF5119;
  background-color: #F2F2F2;
  border: 1px solid #C2C2C2;
}

.button_explanation {
  color: #333;
  background-color: #fff;
  padding: 13px 0;
  text-align: center;
  border: 1px solid #ccc;
}
.button_explanation img {
  position: absolute;
  top: 50%;
  left: 13px;
  transform: translateY(-50%);
  margin-top: 2px;
}
.button_explanation::after {
  content: url(../../img/v2/svg/icon_gray_arrow.svg);
  position: absolute;
  top: 46%;
  right: 13px;
  transform: translateY(-50%);
  margin-top: 4px;
}
.button_explanation:hover {
  color: #303030;
  background-color: #F2F2F2;
  border: 1px solid #C2C2C2;
}

.button_back,
.button_reset {
  color: #333;
  background-color: #fff;
  padding: 13px 0;
  text-align: center;
  border: 1px solid #ccc;
}
.button_back::before {
  content: url(../../img/v2/svg/icon_gray_arrow_back.svg);
  position: absolute;
  top: 46%;
  left: 9px;
  transform: translateY(-50%);
  /*margin-top: 4px;*/
  margin-top: 1px;
}
.button_back:hover,
.button_reset:hover {
  color: #303030;
  background-color: #F2F2F2;
  border: 1px solid #C2C2C2;
}

.button_type01 {
  color: #fff;
  background-color: #F6BA9A;
  padding: 13px 0;
  text-align: center;
}
.button_type01::after {
  content: url(../../img/v2/svg/icon_white_arrow.svg);
  position: absolute;
  top: 50%;
  right: 9px;
  transform: translateY(-50%);
  margin-top: 4px;
}

.button_more,
.button_sub_lv1,
.button_sub_lv2 {
  color: #333;
  background-color: #fff;
  padding: 5px 0;
  text-align: center;
  line-height: 1.5;
  border: 1px solid #ccc;
  font-size: 0.875rem;
}
.button_more:hover,
.button_sub_lv1:hover,
.button_sub_lv2:hover {
  color: #303030;
  background-color: #F2F2F2;
  border: 1px solid #C2C2C2;
}

.button_more::after {
  content: url(../../img/v2/svg/icon_gray_arrow_bottom.svg);
  position: absolute;
  top: 50%;
  right: 9px;
  transform: translateY(-45%);
  margin-top: 4px;
}

.button_sub_lv1::after {
  content: url(../../img/v2/svg/icon_gray_arrow.svg);
  position: absolute;
  top: 50%;
  right: 9px;
  transform: translateY(-50%);
  margin-top: 4px;
}

.button_sub_lv2::after {
  content: url(../../img/v2/svg/icon_external.svg);
  position: absolute;
  top: 50%;
  right: 9px;
  transform: translateY(-50%);
  margin-top: 4px;
}

.button_sub_lv3 {
  color: #333;
  background-color: #fff;
  padding: 5px 0;
  text-align: center;
  line-height: 1.5;
  border: 1px solid #ccc;
  font-size: 0.875rem;
}
.button_sub_lv3:hover {
  color: #303030;
  background-color: #F2F2F2;
  border: 1px solid #C2C2C2;
}

.button_sub_lv3::after {
  content: url(../../img/v2/svg/icon_gray_arrow.svg);
  position: absolute;
  top: 50%;
  right: 9px;
  transform: translateY(-50%);
  margin-top: 4px;
}

.button_pdf {
  color: #EB5505;
  background-color: #fff;
  padding: 13px 0;
  text-align: center;
  border: 1px solid #ccc;
}
.button_pdf::after {
  content: url(../../img/v2/svg/icon_pdf.svg);
  position: absolute;
  top: 50%;
  right: 9px;
  transform: translateY(-50%);
/*  margin-top: 4px;*/
  margin-top: 0px;
}
.button_pdf:hover {
  color: #DF5119;
  background-color: #F2F2F2;
  border: 1px solid #C2C2C2;
}

.button_csv {
  color: #EB5505;
  background-color: #fff;
  padding: 13px 0;
  text-align: center;
  border: 1px solid #ccc;
}
.button_csv::after {
  content: url(../../img/v2/svg/icon_csv.svg);
  position: absolute;
  top: 50%;
  right: 9px;
  transform: translateY(-50%);
/*  margin-top: 4px;*/
  margin-top: 0px;
}
.button_csv:hover {
  color: #DF5119;
  background-color: #F2F2F2;
  border: 1px solid #C2C2C2;
}

.button_detail {
  color: #333;
  background-color: #fff;
  padding: 13px 0;
  text-align: center;
  border: 1px solid #ccc;
}
.button_detail::after {
  content: url(../../img/v2/svg/icon_extension.svg);
  position: absolute;
  top: 50%;
  right: 9px;
  transform: translateY(-50%);
  margin-top: 4px;
}
.button_detail:hover {
  color: #303030;
  background-color: #F2F2F2;
  border: 1px solid #C2C2C2;
}

.button_col_weak {
  display: flex;
  margin-left: -15px;
}
.button_col_weak li {
  list-style-type: none;
  display: block;
  width: 50%;
  padding-left: 15px;
}
.button_col_weak .button_weak {
  padding: 5px 0;
  font-size: 0.875rem;
}
.button_col_weak .button_middle {
  padding: 5px 0;
  font-size: 0.875rem;
}
.button_col_weak .button_weak::after,
.button_col_weak .button_middle::after {
  content: url(../../img/v2/svg/icon_gray_arrow.svg);
  position: absolute;
  top: 46%;
  right: 9px;
  transform: translateY(-50%);
  margin-top: 2px;
}

.button_center {
  max-width: 345px;
  margin-left: auto;
  margin-right: auto;
}
.button_center.button_explanation.button_f12 {
    font-size: 0.75rem;
}
@media screen and (min-width: 640px){
  .button_center.button_explanation.button_f12 {
    font-size: 0.85rem;
  }
}

/* その他共通系*/
.sp_br {
    display:none;
}
@media screen and (min-width: 960px){
    #msg_sp {display:none !important;}
    #msg_pc {
        width:750px !important;
        text-align:left;
        display:block !important;
        font-size: 0.875rem !important;
    }
}
@media screen and (max-width: 959px){
    .sp_br {
        display:block !important;
    }
    .header h1 #msg_sp {
        margin:5px 0;
        font-size: 0.675rem !important;
        line-height:130%;
    }
    .header h1 {
        text-align:center !important;
    }
    .header .header_inner .logo img {
        margin-top:5px !important;
    }
    #msg_pc {display:none !important;}
    #msg_sp {display:block !important;}
    .breadcrumbs ul {
        margin-top:20px !important;
    }
    .nav .globalnav {
      margin-top:30px;
    }
}

.input_gray {
  background-color:#f5f5f5 !important;
}

/* UIFのCSSを無効にする */
header, nav, footer {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}
header h1 {
    padding: initial;
    border-left: initial;
    background: initial;
    font-size: initial;
}

footer ul {
    list-style: initial;
}

@media screen and (min-width: 965px) {
    blockquote, ul, ol, dl {
        margin: initial;
    }
    .agreement blockquote, .agreement ul, .agreement ol, .agreement dl {
        margin: 0.9em;
        margin-left: 2em;
    }
}

nav ul {
    list-style: none;
}

header, nav, footer {
    font-family: Meiryo, sans-serif;
    font-size: initial;
    line-height: 1;
}

div#aside {
    float: left;
    width: 285px;
    margin: 0;
    padding-left: 32px;
}
div#aside a {
    font-size: initial;
	font-size: 100% !important;
}
@media screen and (min-width: 960px){
    #msg_pc {
        margin-bottom: initial; /* disable ui css */
    }
}

header th, header td {
    color: initial;
    font-size: initial;
    font-weight: initial;
    font-style: normal;
    text-align: initial;
    background-color: initial;
    margin: 0;
    padding: 0;
    border: 0;
}

.v2_design #content .title h2 {
    font-size: 1.25rem;
    border-left: 3px solid #EB5505;
    padding: 0.1em 0 0 10px;
    line-height: 1.3;
    background: unset;
}


@media screen and (min-width: 640px){
    .v2_design #content .title h2 {
        font-size: 1.375rem !important;
    }
    .v2_design #content h2 {
        font-size: 1.375rem !important;
    }

    .v2_design #content h1 {
        font-size: 1.625rem !important;
        margin-top: 12px;
    }
}

@media screen and (max-width: 639px){
    .v2_design #content h1 {
        margin-top: 30px;
    }
}

.v2_design #content h1 {
    font-size: 1.375rem;
    line-height: 1.3;
    padding: unset;
    border-left: unset;
    background: unset;
    margin-bottom: 15px;
}

.v2_design #content .title.agreement h2.nablarch_Collapsible {
    border-left: none;
    font-size: 14px !important;
    padding: 4px 0 4px 0;
    color: #ffffff;
    margin-bottom: 0px;
    width: 100% !important;
    background-color: #d34500;
    background-image: none;
    position: initial;
    display: table;
}

.acco_border .acco_border_head {
  border-bottom: 1px solid #ccc;
  padding-top: 10px;
  padding-bottom: 10px;
  position: relative;
  cursor: pointer;
}
.acco_border .acco_border_head::after {
  display: block;
  content: "";
  right: 15px;
  top: 50%;
  width: 14px;
  height: 14px;
  position: absolute;
  background-image: url("../../img/v2/svg/icon_menu_plus.svg");
  background-repeat: no-repeat;
  background-size: 100%;
  transform: translateY(-50%);
}
.acco_border .acco_border_head.is-active::after {
  background-image: url("../../img/v2/svg/icon_menu_minus.svg");
}
.acco_border .acco_border_required {
  color: #555;
  font-size: 0.875rem;
  margin-left: 20px;
}
.acco_border .acco_border_content {
  display: none;
  padding-top: 15px;
}
.acco_border .acco_border_content.is-open {
  display: block;
  line-height: normal;
  height: auto;
  opacity: 1;
}
.acco_border.open .acco_border_head::after {
  width: 20px;
  height: 20px;
  background-image: url("../../img/v2/svg/icon_menu_minus.svg");
}
.acco_border .acco_border_head::after,
.acco_btn .acco_btn_head::after {
  top: 50% !important;
}

ul.nablarch_errors {
  list-style-type: none;
}


.step {
    overflow: hidden;
    padding-left: -26px;
    margin-top: 20px !important;
}
.step_list {
    display: flex;
    flex-wrap: nowrap;
    padding-right: 21px;
    font-size: initial;
}
.step_list .step_item.active {
    color: #fff;
    background-color: #EB5505;
}
.step_list .step_item {
    white-space: nowrap;
    flex: 1;
    /*height: 42px;*/
    list-style-type: none;
    position: relative;
    text-align: center;
    align-items: center;
    padding: 11px 0;
    background: #F5F5F5;
    font-weight: bold;
    text-indent: 10px;
}
.step_list li.step_item::before {
    border: 21px solid transparent;
    border-left: 21px solid #fff;
    left: 100%;
    margin-left: 4px;
}
.step_list .step_item::before, .step_list .step_item::after {
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    content: "";
    margin: auto;
}
.step_list .step_item.active::after {
    border-left: 21px solid #EB5505;
}
.step_list .step_item::after {
    border: 21px solid transparent;
    border-left: 21px solid #F5F5F5;
    left: calc(100%);
}
@media screen and (min-width: 640px){
    .step_list .step_item:nth-of-type(n + 2) {
        text-indent: 15px;
    }
}
.step_list .step_item:nth-of-type(n + 2) {
    text-indent: 21px;
}
.step_list .step_item:nth-child(n + 2) {
    margin-left: 4px;
}
ul.step_list {
    margin: 0;
    margin-bottom: 20px;
}
.step_list .step_item.fixed {
    background-color: #FDEDE5;
}
.step_list .step_item.fixed::after {
    border-left: 21px solid #FDEDE5;
}
