
@charset "UTF-8";
/* =================================
Products
================================= */
.nav-products-header {
  position: fixed;
  top: 50px;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: 70px;
  padding-left: 35px;
  padding-right: 7px;
  background: #2b447c;
  z-index: 10;
}

.nav-products-header-title {
  font-weight: bold;
  color: #fff;
  display: none;
}

.nav-products-header-list {
  display: flex;
  margin-left: auto;
  margin-right: auto;
}

.btn-products-header {
  display: none;
}

.nav-products-header-list-item {
  font-size: 1.55rem;
  list-style: none;
}

.nav-products-header-list-link {
  display: inline-block;
  padding-left: 13px;
  padding-right: 13px;
  text-decoration: none;
  line-height: 50px;
  font-weight: bold;
  color: #fff;
}

@media (max-width: 767px) {
  .nav-products-header {
    height: 35px;
    padding-left: 20px;
    padding-right: 12px;
  }
  .nav-products-header-title {
    display: block;
  }
  .nav-products-header-list {
    position: absolute;
    width: 100%;
    top: 35px;
    left: 0;
    padding-left: 20px;
    padding-right: 20px;
    flex-direction: column;
    background: #fff;
    border-bottom: 1px solid #a8a8a8;
    display: none;
  }
  .nav-products-header-active .nav-products-header-list {
    display: block;
  }
  .nav-products-header-list-item:not(:first-child) {
    border-top: 1px solid #a8a8a8;
  }
  .nav-products-header-list-link {
    display: block;
    padding-left: 0;
    padding-right: 0;
    line-height: 35px;
    font-weight: normal;
    color: #061536;
    background: url(/image/jp2/products/ico_arrow_header_nav_01.png) no-repeat right center;
    background-size: 7px 10px;
  }
  .btn-products-header {
    position: relative;
    display: flex;
    align-items: center;
    height: 35px;
    width: 40px;
    cursor: pointer;
  }
  .btn-products-header::after {
    position: absolute;
    right: 0;
    top: 15px;
    content: '';
    display: inline-block;
    width: 5px;
    height: 4px;
    background: url(/image/jp2/products/ico_arrow_header_title_01.png) no-repeat;
    background-size: cover;
  }
  .btn-products-header-active::after {
    transform: rotateZ(180deg);
  }
}

/* Detail
--------------------------------- */
.title-products {
  margin-bottom: 40px;
}

.title-products-main {
  font-size: 3rem;
  font-weight: bold;
  color: #3d60af;
}

.title-products-sub {
  font-size: 2.7rem;
  font-weight: bold;
  color: #3d60af;
}

.title-products-text {
  margin-top: 30px;
  font-size: 1.8rem;
}

@media (max-width: 767px) {
  .title-products {
    margin-top: 90px;
  }
  .title-products-main,
  .title-products-sub {
    font-size: 2.3rem;
  }
  .title-products-text {
    font-size: 1.3rem;
  }
}

.products-detail-main-image {
  margin-bottom: 30px;
  text-align: center;
}
.products-detail-main-image.only-pc img{
    width: 960px;
    height: auto;
}
.products-detail-main-row {
  display: flex;
}

.products-detail-main-col01 {
  width: 500px;
  margin-right: 66px;
  text-align: right;
}

.products-detail-main-col02 {
  width: 634px;
}

.products-detail-main-col02 .area-notices{
  font-size:0.8em;
  line-height:2;
}

.products-detail-main .title-products-main {
  line-height: 1.55;
}

.products-detail-main .list-square {
  margin-top: 0;
}

.products-detail-main .list-square-item:not(:first-child) {
  margin-top: 6px;
}

.ico-academic-price {
  display: inline-block;
  padding: 2px 12px;
  background: #3d60af;
  font-weight: bold;
  font-size: 1.4rem;
  color: #fff;
  text-decoration: none;
}
.ico-plan-abolish{
  display: inline-block;
  padding: 2px 12px;
  background:#666;
  font-weight:bold;
  font-size:1.4rem;
  color:#fff;
  text-decoration:none;
  margin-bottom:10px;

}

.list-products-icon {
  display: flex;
  margin-top: 20px;
}

.list-products-icon-item {
  width: 60px;
  margin-left: 40px;
  list-style: none;
  line-height: 1.38461553;
  font-size: 1.3rem;
}

.list-products-icon-item img {
  margin-bottom: 5px;
}

.list-products-icon-item:first-child {
  margin-left: 0;
}

.list-products-app {
  display: flex;
  margin-top: 30px;
}

.list-products-app-item {
  width: 207px;
  margin-right: 45px;
  list-style: none;
}

@media (max-width: 767px) {
  .products-detail-main-image {
    margin-bottom: 20px;
    text-align: center;
  }
  .products-detail-main-row {
    flex-direction: column;
  }
  .products-detail-main-col01 {
    width: 100%;
    margin-right: 0;
    text-align: left;
  }
  .products-detail-main-col02 {
    width: 100%;
  }
  .products-detail-main .title-products {
    margin-top: 20px;
  }
  .products-detail-main .title-products-main,
  .products-detail-main .title-products-sub {
    line-height: 1.2;
  }
  .ico-academic-price {
    font-size: 1.2rem;
  }
  .list-products-icon {
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 20px;
  }
  .list-products-icon-item:first-child,
  .list-products-icon-item {
    width: 47px;
    margin: 20px 10px 0;
    font-size: 11px;
  }
  .list-products-app {
    flex-direction: column;
  }
  .list-products-app-item {
    width: 157px;
    margin-right: auto;
    margin-left: auto;
  }
  .list-products-app-item:not(:first-child) {
    margin-top: 22px;
  }
}

.list-cmn-review {
  margin-top: 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid #ccc;
}

.list-cmn-review-title {
  margin-bottom: 8px;
  letter-spacing: 0.1em;
  font-weight: bold;
  font-size: 2rem;
  color: #3d60af;
}

@media (max-width: 767px) {
  .list-cmn-review-title {
    font-size: 1.3rem;
  }
}

.table-products-price {
  width: 100%;
  margin-bottom: 10px;
  border: 2px solid #3d60af;
}

.table-products-price thead {
  background: #d8ecf0;
}

.table-products-price thead th {
  padding-top: 8px;
  padding-bottom: 8px;
  border-right: 2px solid #3d60af;
  font-size: 1.8rem;
  color: #3d60af;
}

.table-products-price tbody th {
  padding: 12px;
  border-right: 2px solid #3d60af;
  border-bottom: 1px solid #3d60af;
  text-align: left;
  line-height: 1.5;
}

.table-products-price tbody td {
  padding: 12px;
  border-right: 2px solid #3d60af;
  border-bottom: 1px solid #3d60af;
  line-height: 1.5;
}

.table-products-price tbody td:nth-of-type(1) {
  width: 434px;
}

.table-products-price tbody td:nth-of-type(2) {
  width: 224px;
  text-align: right;
}

.table-products-price tbody td:nth-of-type(3) {
  width: 224px;
}

.price-wrap {
  white-space:nowrap;
  padding-left:1em;
}

.btn-table-products-price {
  position: relative;
  display: block;
  padding: 5px 0 5px 22px;
  background: linear-gradient(to right, #ee8c00, #fdba1a 50%, #fdba1a 100%) left top;
  background-size: 200%;
  text-decoration: none;
  font-weight: bold;
  color: #fff;
}

.btn-table-products-price:hover {
  background-position: right;
}

.btn-table-products-price::before {
  position: absolute;
  top: 13px;
  right: 12px;
  content: '';
  display: inline-block;
  width: 6px;
  height: 9px;
  background: url(/image/jp2/common/ico_arrow_01.svg) no-repeat;
  background-size: cover;
  transition: 0.3s transform;
}

.btn-table-products-price:hover::before {
  transform: translateX(5px);
}

.table-products-price-note {
  padding-left: 0.5em;
  text-indent: 0em;
}

.table-products-price-banner {
  margin-top: 80px;
}

@media (max-width: 767px) {
  .table-products-price,
  .table-products-price thead,
  .table-products-price tbody,
  .table-products-price tr,
  .table-products-price th,
  .table-products-price td,
  .table-products-price {
    display: block;
    width: 100%;
  }
  .table-products-price tbody td:nth-of-type(1),
  .table-products-price tbody td:nth-of-type(2),
  .table-products-price tbody td:nth-of-type(3) {
    width: 100%;
    text-align: left;
  }
  .table-products-price {
    border: none;
  }
  .table-products-price thead {
    display: none;
  }
  .table-products-price tbody th {
    margin-top: 30px;
    margin-bottom: 20px;
    padding: 9px 10px;
    border-bottom: none;
    border-right: none;
    border-left: 3px solid #3d60af;
    background: #d8ecf0;
    font-size: 1.4rem;
    color: #3d60af;
  }
  .table-products-price tbody td {
    padding: 0;
    border-bottom: none;
    border-right: none;
  }
  .btn-table-products-price {
    margin-top: 20px;
    padding: 12px 0;
    text-align: center;
  }
  .table-products-price-note {
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px solid #a8a8a8;
    font-size: 1rem;
  }
  .btn-table-products-price::before {
    top: 17px;
  }
  .table-products-price-banner {
    margin-top: 15px;
  }
}

.text-products-option01 {
  margin-top: 30px;
}

.text-products-option02 {
  margin-top: 30px;
  padding-top: 20px;
  padding-bottom: 20px;
  border-top: 1px solid #a8a8a8;
  border-bottom: 1px solid #a8a8a8;
}

.list-products-option {
  margin-top: 40px;
}

.list-products-option-item {
  display: flex;
  flex-wrap: wrap;
  padding: 15px 25px 25px;
}

.list-products-option-item:nth-of-type(even) {
  background: #edf5f5;
}

.list-products-option-title {
  width: 100%;
  margin-bottom: 15px;
  font-weight: bold;
  font-size: 2rem;
}
.ico-option-plan-abolish{
  color:#fff;
  background: #666;
  padding: 2px 4px;
  font-size: 1.4rem;
  margin-right: 10px;
}


.list-products-option-image {
  width: 100px;
  margin-right: 25px;
}

.list-products-option-price {
  width: 300px;
  margin-right: 15px;
}

.list-products-option-data {
  width: 425px;
}

.list-products-option-button {
  width: 220px;
}

@media (max-width: 767px) {
  .list-products-option {
    position: relative;
    margin-left: -20px;
    margin-right: -20px;
  }
  .list-products-option-title {
    margin-bottom: 0;
    font-size: 1.3rem;
  }
  .list-products-option-price {
    width: 100%;
    margin-right: 0;
    margin-bottom: 5px;
  }
  .list-products-option-image {
    order: 1;
    width: 50px;
    margin-right: 15px;
  }
  .list-products-option-data {
    order: 2;
    width: calc(100% - 65px);
  }
  .list-products-option-button {
    order: 3;
    width: 100%;
    margin-top: 20px;
  }
}

.list-products-download {
  border-top: 1px solid #778fc7;
}

.list-products-download-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 6px;
  padding-bottom: 6px;
  border-bottom: 1px solid #778fc7;
}

.list-products-download-time::before {
  content: '';
  display: inline-block;
  width: 17px;
  height: 17px;
  margin-right: 8px;
  background: url(/image/jp2/common/ico_link_time_01.svg) no-repeat;
  vertical-align: -2px;
}

.list-products-download-time {
  color: #3d60af;
}

.list-products-download-text01,
.list-products-download-text04,
.list-products-download-text05,
.list-products-download-text06,
.list-products-download-text08,
.list-products-download-text09 {
  font-size: 1.3rem;
  color: #666;
}

.list-products-download-text01 {
  width: 200px;
  text-align: right;
}

.list-products-download-text02 {
  width: 860px;
}

.list-products-download-text03 {
  width: 700px;
}

.list-products-download-text04 {
  width: 200px;
  text-align: right;
}

.list-products-download-text05 {
  width: 150px;
  text-align: center;
}

.list-products-download-text06 {
  width: 80px;
  text-align: right;
}

.list-products-download-text07 {
  width: 790px;
}

.list-products-download-text08 {
  width: 250px;
  text-align: right;
}

.list-products-download-text09 {
  width: 130px;
  text-align: right;
}

@media (max-width: 767px) {
  .ttl-level-02 + .list-products-download {
    height: 0;
    margin-top: -21px;
    margin-bottom: -30px;
    overflow: hidden;
    opacity: 0;
    transition: 0.3s margin, 0.3s opacity;
  }
  .ttl-level-02--close,
  .ttl-level-02--open {
    position: relative;
  }
  .ttl-level-02--close::before {
    position: absolute;
    top: 50%;
    right: 30px;
    display: block;
    content: '';
    width: 18px;
    height: 18px;
    margin-top: -9px;
    background: #fff;
  }
  .ttl-level-02--close::after {
    position: absolute;
    top: 50%;
    right: 30px;
    display: block;
    content: '+';
    width: 18px;
    height: 18px;
    text-align: center;
    margin-top: -10px;
    z-index: 1;
    font-size: 15px;
    color: #3d60af;
    font-weight: normal;
  }
  .ttl-level-02--open + .list-products-download {
    height: auto;
    margin-top: 0;
    margin-bottom: 0;
    opacity: 1;

  }
  .ttl-level-02--open::before {
    position: absolute;
    top: 50%;
    right: 30px;
    display: block;
    content: '';
    width: 18px;
    height: 18px;
    margin-top: -9px;
    background: #fff;
  }
  .ttl-level-02--open::after {
    position: absolute;
    top: 50%;
    right: 30px;
    display: block;
    content: '-';
    width: 18px;
    height: 18px;
    text-align: center;
    margin-top: -10px;
    z-index: 1;
    font-size: 15px;
    color: #3d60af;
    font-weight: normal;
  }
  .list-products-download-item {
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  .list-products-download-text01 {
    width: 100%;
    padding-left: 20px;
    text-align: left;
  }
  .list-products-download-text02 {
    width: calc(100% - 55px);
    padding-left: 10px;
  }
  .list-products-download-text04,
  .list-products-download-text05,
  .list-products-download-text06 {
    width: auto;
    text-align: left;
  }
  .list-products-download-text04 {
    margin-left: 20px;
  }
  .list-products-download-text05,
  .list-products-download-text06 {
    margin-left: 10px;
  }
  .list-products-download-text07 {
    width: 100%;
  }
  .list-products-download-text08 {
    width: auto;
    text-align: left;
  }
  .list-products-download-text09 {
    width: auto;
    margin-left: 15px;
    text-align: left;
  }
  .list-products-download-time {
    width: 100%;
    padding-left: 20px;
  }
}

.list-cmn-products-related {
  display: flex;
  flex-wrap: wrap;
}

.list-cmn-products-related-item {
  width: 25%;
  text-align: center;
}

.list-cmn-products-related-link {
  text-decoration: none;
}

.list-cmn-products-related-image {
  display: flex;
  height: 140px;
  align-items: center;
  justify-content: center;
}

.list-cmn-products-related-title {
  font-weight: bold;
  line-height: 1.6;
  color: #3d60af;
}

.list-cmn-products-related-text {
  font-size: 1.4rem;
  line-height: 1.5;
  color: #666;
}

@media (max-width: 767px) {
  .list-cmn-products-related-item {
    width: 100%;
    text-align: left;
  }
  .list-cmn-products-related-item:not(:first-child) {
    margin-top: 20px;
  }
  .list-cmn-products-related-item::after {
    content: '';
    display: block;
    clear: both;
  }
  .list-cmn-products-related-title {
    padding-top: 14px;
  }
  .list-cmn-products-related-image {
    width: 75px;
    height: 75px;
    float: left;
    margin-right: 28px;
  }
}

.products-cmn-contact {
  width: 470px;
  margin: 60px auto 0;
}

@media (max-width: 767px) {
  .products-cmn-contact {
    width: 100%;
    margin: 25px auto 0;
  }
}

/* heading */
.ttl-level-01 {
  margin-bottom: 25px;
  font-weight: bold;
  font-size: 3.6rem;
  line-height: 1.3;
  color: #3d60af;
}

@media (max-width: 767px) {
  .ttl-level-01 {
    margin-top: 0;
    font-size: 1.8rem;
  }
}

.ttl-level-02 {
/*  margin-top: 140px; */
  margin-bottom: 40px;
  padding: 18px 20px;
  background: #3d60af;
  font-weight: bold;
  font-size: 2.0rem;
  line-height: 1.3;
  color: #fff;
}

@media (max-width: 767px) {
  .ttl-level-02 {
    position: relative;
/*    margin: 50px -20px 20px; */
    margin: 0px -20px 20px;
    padding-left: 20px;
    padding-right: 20px;
    font-size: 1.6rem;
  }
}

.ttl-level-03 {
/*  display: flex; */
/*  margin-top: 80px; */
  margin-bottom: 40px;
  padding: 10px 10px 10px 10px;
  background: #eefafa;
  font-weight: bold;
  font-size: 2.0rem;
  line-height: 1.3;
  color: #3d60af;
  border-left: 6px solid #3d60af;
}

@media (max-width: 767px) {
  .ttl-level-03 {
/*    margin-top: 50px; */
    margin-bottom: 20px;
    padding: 6px 10px 6px 10px;
    background: #eefafa;
    border-left: 3px solid #3d60af;
    font-weight: bold;
    font-size: 1.4rem;
  }
  .ttl-level-03::before {
    content: none;
  }
}

.ttl-level-04 {
  display: flex;
  align-items: center;
/*  margin-top: 80px; */
  margin-bottom: 40px;
  padding: 5px 0 5px 20px;
  border-left: 6px solid #20a09c;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.3;
  color: #20a09c;
}

@media (max-width: 767px) {
  .ttl-level-04 {
/*    margin-top: 50px; */
    margin-bottom: 20px;
    padding: 5px 0 5px 10px;
    border-left: 3px solid #20a09c;
    font-size: 1.4rem;
  }
}

.ttl-level-05 {
/*  margin-top: 60px; */
  margin-bottom: 20px;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.3;
  color: #20a09c;
}

.ttl-level-05::after {
  content: '';
  display: block;
  width: 100%;
  height: 2px;
  margin-top: 14px;
  background: #20a09c;
}

@media (max-width: 767px) {
  .ttl-level-05 {
/*    margin-top: 35px; */
    margin-bottom: 20px;
    font-size: 1.3rem;
  }
}

/* column */
.grid-cmn-image::after {
  content: '';
  display: block;
  clear: both;
}

.grid-cmn-image-right {
  float: right;
  margin-left: 40px;
}

.grid-cmn-image-left {
  float: left;
  margin-right: 40px;
}

.grid-cmn-image-body {
  overflow: hidden;
}

@media (max-width: 767px) {
  .grid-cmn-image {
    display: flex;
    flex-direction: column-reverse;
  }
  .grid-cmn-image-right {
    float: none;
    margin-left: 0;
    margin-top: 20px;
  }
  .grid-cmn-image-left {
    float: none;
    margin-right: 0;
    margin-top: 20px;
  }
}

/* Text */
.txt-notice {
  font-size: 1.4rem;
  color: #c61f1f;
}

.txt-note {
  font-size: 1.4rem;
  color: #646c7f;
}

.txt-note-narrow {
  padding: 18px 25px;
  background: #f2f6f6;
  line-height: 1.8571428;
  font-size: 1.4rem;
  color: #646c7f;
}
.txt-small{font-size:70%;}

/* icon */
.icon-cmn-status-enabled,
.icon-cmn-status-capacity,
.icon-cmn-status-disabled {
  display: inline-block;
  width: 90px;
  text-align: center;
  font-weight: bold;
  font-size: 1.4rem;
  color: #fff;
  line-height: 2.125 !important;
  white-space: nowrap;
  border-radius: 4px;
}



.icon-cmn-status-enabled{
  color: #ffffff;
  background-color: #20a09c;
  border: 2px solid #20a09c;
}
.icon-cmn-status-capacity{
  color: #c61f1f;
  background-color: #ffffff;
  border: 2px solid #c61f1f;
}
.icon-cmn-status-disabled {
  color: #ffffff;
  background-color: #999999;
  border: 2px solid #999999;
}


@media (max-width: 767px) {
  .icon-cmn-status-enabled,
  .icon-cmn-status-capacity,
  .icon-cmn-status-disabled {
    width: 55px;
    font-size: 1.1rem;
  }
}

/* button */

.btn-cmn-large-wrap,
.btn-cmn-middle-wrap,
.btn-cmn-small-wrap {
  margin-top: 15px;
  margin-bottom: 15px;
}

.btn-cmn-small01 {
  position: relative;
  display: inline-block;
  width: 100%;
  padding-top: 9px;
  padding-bottom: 9px;
  border: none;
  background: #3d60af;
  background-size: 200%;
  text-decoration: none;
  text-align: center;
  line-height: 1;
  font-weight: bold;
  color: #fff;
  transition: 0.3s background;
  cursor: pointer;
}

.btn-cmn-small01:hover {
  background: #446cc8;
}

.btn-cmn-small01::before {
  position: absolute;
  top: 12px;
  right: 20px;
  content: '';
  display: inline-block;
  width: 7px;
  height: 10px;
  background: url(/image/jp2/common/ico_arrow_01.svg) no-repeat;
  background-size: cover;
  transition: 0.3s transform;
}

.btn-cmn-small01:hover::before {
  transform: translateX(5px);
}

.btn-cmn-large-wrap {
  max-width: 100%;
  width:420px;
  margin-top: 15px;
  margin-bottom: 15px;
  margin-left: auto;
  margin-right: auto;
}


.btn-cmn-middle-wrap {
  max-width: 340px;
  margin-top: 15px;
  margin-bottom: 15px;
}


.btn-cmn-small-wrap {
  max-width: 220px;
  margin-top: 15px;
  margin-bottom: 15px;
}

.btn-cmn-small02 {
  position: relative;
  display: inline-block;
  width: 100%;
  padding-top: 7px;
  padding-bottom: 7px;
  border: none;
  background: #fff;
  border: 2px solid #3d60af;
  text-decoration: none;
  text-align: center;
  line-height: 1;
  font-weight: bold;
  color: #3d60af;
  transition: 0.3s background;
  cursor: pointer;
}

.btn-cmn-small02:hover {
  background: #edf5f5;
}

.btn-cmn-small02::before {
  position: absolute;
  top: 10px;
  right: 18px;
  content: '';
  display: inline-block;
  width: 7px;
  height: 10px;
  background: url(/image/jp2/common/ico_arrow_04.svg) no-repeat;
  background-size: cover;
  transition: 0.3s transform;
}

.btn-cmn-small02:hover::before {
  transform: translateX(5px);
}

.btn-cmn-large02 {
    position: relative;
    display: inline-block;
    width: 100%;
    padding-top: 20px;
    padding-bottom: 20px;
    border: none;
    background: #fff;
    border: 2px solid #3d60af;
    text-decoration: none;
    text-align: center;
    line-height: 1;
    font-weight: bold;
    color: #3d60af;
    transition: 0.3s background;
    cursor: pointer;
}

.btn-cmn-large02:hover {
  background: #edf5f5;
}

.btn-cmn-large02::before {
    position: absolute;
    top: 22px;
    right: 18px;
    content: '';
    display: inline-block;
    width: 7px;
    height: 10px;
    background: url(/image/jp2/common/ico_arrow_04.svg) no-repeat;
        background-size: auto;
    background-size: cover;
    transition: 0.3s transform;
}

.btn-cmn-large02:hover::before {
  transform: translateX(5px);
}



/* link */
.link-cmn-icon-wrap {
  margin-top: 6px;
}

.link-cmn-icon-document,
.link-cmn-icon-pdf,
.link-cmn-icon-external,
.link-cmn-icon-movie {
/*  position: relative; */
/*  display: block; */
/*  padding-left: 20px; */
  text-decoration: underline;
  color: #1e9bcf;
}

.link-cmn-icon-document:hover,
.link-cmn-icon-pdf:hover,
.link-cmn-icon-external:hover,
.link-cmn-icon-movie:hover {
  text-decoration: none;
}

.link-cmn-icon-document::before,
.link-cmn-icon-pdf::before,
.link-cmn-icon-external::before,
.link-cmn-icon-movie::before {
/*  position: absolute; */
/*  top: 7px; */
/*  left: 0; */
  content: '';
  display: inline-block;
  width: 17px;
  height: 17px;
  margin-right: 5px;
  background-repeat: no-repeat;
  background-size: cover;
  vertical-align: -3px;
  margin-left:10px;
}

.link-cmn-icon-document::before {
  background-image: url(/image/jp2/common/ico_link_document_01.svg);
}

.link-cmn-icon-pdf::before {
  background-image: url(/image/jp2/common/ico_link_pdf_01.svg);
}

.link-cmn-icon-external::before {
  background-image: url(/image/jp2/common/ico_link_external_01.svg);
}

.link-cmn-icon-movie::before {
  background-image: url(/image/jp2/common/ico_link_movie_01.svg);
}

span.link-cmn-icon-pdf{
  color: #666 !important;
  text-decoration: none !important;
}

/* list */
.list-hyphen {
/*  margin-top: 60px; */
}
.list-hyphen li {
  position: relative;
  padding-left: 25px;
  list-style: none;
  font-size: 1.6rem;
  line-height: 1.5;
  color: #3d60af;
}
.list-hyphen li:not(:first-child) {
  margin-top: 13px;
}
.list-hyphen li::before {
  position: absolute;
  top: 12px;
  left: 5px;
  display: block;
  content: '';
  width: 11px;
  height: 3px;
  background: #3d60af;
}

@media (max-width: 767px) {
  .list-hyphen {
/*    margin-top: 40px; */
  }
  .list-hyphen li {
    font-size: 1.3rem;
  }
  .list-hyphen li::before {
    top: 8px;
    height: 2px;
  }
}

.list-square {}

.list-square li{
  position: relative;
  padding-left: 25px;
  list-style: none;
  line-height: 1.5;
}

.list-square li:not(:first-child) {
  margin-top: 13px;
}

.list-square li::before {
  position: absolute;
  top: 7px;
  left: 7px;
  display: block;
  content: '';
  width: 9px;
  height: 9px;
  background: #3d60af;
}


ol.list-std > li{
  margin-left:1.0em;
}



.list-number {
/*  margin-top: 60px; */
  counter-reset: item;
}
.list-number li {
  position: relative;
  padding-left: 40px;
  list-style: none;
  font-size: 1.7rem;
  line-height: 1.5;
  color: #3d60af;
}
.list-number li:not(:first-child) {
  margin-top: 13px;
}
.list-number li::before {
  position: absolute;
  top: 0;
  left: 5px;
  counter-increment: item;
  content: counter(item);
  font-weight: bold;
}
.list-number li::after {
  position: absolute;
  top: 13px;
  left: 22px;
  display: block;
  content: '';
  width: 9px;
  height: 1px;
  background: #3d60af;
}

@media (max-width: 767px) {
  .list-number {
    margin-top: 40px;
  }
  .list-number li {
    font-size: 1.3rem;
  }
  .list-number li::after {
    top: 8px;
  }
}

.list-dotted-manually {
  margin-top: 60px;
}

.list-dotted-manually li {
  padding-left: 1em;
  text-indent: -1em;
  list-style: none;
  line-height: 1.5;
}

.list-dotted-manually li:not(:first-child) {
  margin-top: 13px;
}

@media (max-width: 767px) {
  .list-dotted-manually {
    margin-top: 40px;
  }
}

.list-definition {
  display: flex;
  flex-wrap: wrap;
/*  margin-top: 80px; */
  border-top: 1px solid #778fc7;
}
.list-definition dt {
  width: 130px;
  padding: 10px 20px 10px 10px;
  border-bottom: 1px solid #778fc7;
  font-weight: bold;
  color: #3d60af;
}
.list-definition dd {
  width: calc(100% - 130px);
  padding: 6px 10px 6px 0;
  border-bottom: 1px solid #778fc7;
}
/*
.list-definition dt:nth-of-type(even),
.list-definition dd:nth-of-type(even) {
  background: #eefafa;
}
*/
@media (max-width: 767px) {
  .list-definition {
/*    margin-top: 40px; */
  }
  .list-definition dt {
    width: 100%;
    padding: 6px 0 0;
    border-bottom: none;
    font-size: 1.5rem;
  }
  .list-definition dd {
    width: 100%;
    padding: 0 0 6px;
    border-bottom: 1px solid #778fc7;
  }
}

/* table */
.table-cmn-basic01 {
  width: 100%;
/*  margin-top: 80px; */
  border: 2px solid #3d60af;
  line-height: 1.6875;
}

.table-cmn-basic01 thead th {
  padding: 6px;
  background: #3d60af;
  text-align: left;
/*  font-size: 1.8rem; */
  font-weight: bold;
  color: #fff;
}

.table-cmn-basic01 thead th:not(:first-child) {
  border-left: 2px solid #fff;
}

.table-cmn-basic01 tbody th,
.table-cmn-basic01 tbody td {
  padding: 6px;
  border: 1px solid #3d60af;
  text-align: left;
  vertical-align:top;
}

.table-cmn-basic01 tbody th {
  border-right: 2px solid #3d60af;
/*  font-size: 1.8rem; */
}

@media (min-width: 768px) {
.table-cmn-basic01 {
  max-width: 100%;
}
}

@media (max-width: 767px) {
  .table-cmn-wrap {
    margin-top: 40px;
    overflow-x: scroll;
  }
  .table-cmn-basic01 {
/*    width: 1170px; */
    width:850px;
    margin-top: 0;
  }
  .table-cmn-basic01 thead th {
    padding: 6px;
/*    font-size: 1.3rem; */
  }
  .table-cmn-basic01 tbody th,
  .table-cmn-basic01 tbody td {
    padding: 6px;
  }
  .table-cmn-basic01 tbody th {
/*    font-size: 1.3rem; */
  }
}

.table-cmn-basic01.v-width th,
.table-cmn-basic01.v-width td{
  padding:10px 6px;
}

.table-cmn-basic02 {
  width: 100%;
  margin-top: 20px;
  border: 2px solid #3d60af;
  line-height: 1.6875;
}

.table-cmn-basic02 thead th {
  padding: 12px;
  background: #d8ecf0;
  text-align: left;
  font-size: 1.8rem;
  font-weight: bold;
  color: #fff;
}

.table-cmn-basic02 thead th:not(:first-child) {
  border-left: 2px solid #fff;
}

.table-cmn-basic02 tbody th,
.table-cmn-basic02 tbody td {
  padding: 12px;
  border-bottom: 2px solid #3d60af;
  text-align: left;
}

.table-cmn-basic02 tbody td {
  border-right: 1px solid #3d60af;
}

.table-cmn-basic02 tbody th {
  border-right: none;
  background: #d8ecf0;
  font-size: 1.8rem;
  color: #3d60af;
}

@media (max-width: 767px) {
  .table-cmn-basic02 {
    width: 1170px;
    margin-top: 0;
  }
  .table-cmn-basic02 thead th {
    padding: 6px;
    font-size: 1.3rem;
  }
  .table-cmn-basic02 tbody th,
  .table-cmn-basic02 tbody td {
    padding: 6px;
  }
  .table-cmn-basic02 tbody th {
    font-size: 1.3rem;
  }
}

.lnk-inner-table{
  word-wrap: break-word;
  text-decoration:none;
  color: #1e9bcf;
}
.lnk-inner-table:hover{
text-decoration:underline;
}


/* form */
.form-cmn-item {
  margin-top: 70px;
}

.form-cmn-item-title {
  font-weight: bold;
  font-size: 2rem;
  color: #3d60af;
}

.form-cmn-error {
  color: #c61f1f;
}

.form-cmn-input-text {
  width: 100%;
  padding: 12px 15px;
  border: 1px solid #3d60af;
}

.form-cmn-input-text.read-only{
  background-color: #efefef;
  color:#666;
}

.form-cmn-input-text-error {
  background: #fee7ea;
}

.form-cmn-textarea {
  width: 100%;
  height: 200px;
  padding: 20px;
  border: 1px solid #3d60af;
  line-height: 1.75;
}

.form-cmn-input-check,
.form-cmn-input-radio {
  display: none;
}

.form-cmn-input-check-label,
.form-cmn-input-radio-label {
  margin-right: 30px;
}
.form-cmn-input-check-text,
.form-cmn-input-radio-text {}
.form-cmn-input-radio-text::before {
  content: '';
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-right: 8px;
  border: 2px solid #3d60ac;
  border-radius: 9px;
  transition: 0.15s border;
  vertical-align: -2px;
}

.form-cmn-input-radio:checked + .form-cmn-input-radio-text::before {
  border: 6px solid #3d60ac;
}

.form-cmn-input-check-text::before {
  content: '✓';
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-right: 8px;
  border: 2px solid #3d60ac;
  border-radius: 1px;
  transition: 0.15s color;
  vertical-align: 0px;
  color: #fff;
  line-height: 1;
  font-weight: bold;
}

.form-cmn-input-check:checked + .form-cmn-input-check-text::before {
  color: #3d60ac;
}

.form-cmn-select {
  width: 100%;
  padding: 10px 9px;
  border: 1px solid #3d60af;
}
.form-cmn-select.awareness:hover{
  cursor:pointer;
  background-color:#f0f0f0;
}
.form-cmn-select.awareness:hover option{
  background-color:#fff;
}


/* Add DSN 20190917 for GaihiHantei Form */
.form-cmn-select-gaihi {
  width: 100%;
  padding: 10px 9px;
  border: 1px solid #3d60af;
}

.form-cmn-select-gaihi.awareness:hover{
  cursor:pointer;
  background-color:#f0f0f0;
}
.form-cmn-select-gaihi.awareness:hover option{
  background-color:#fff;
}

.input-control-modelname{
  width:400px;
}
.btn-select-modelname{
  display:inline-block;
  border:1px solid #2d4f99;
  margin-left:10px;
  padding: 12px 15px;
  line-height: 1.15;
  color:#fff;
  text-decoration: none;
  background:#3157ad;
}
@media (max-width: 767px) {
  .input-control-modelname{
    width:100%;
  }
  .btn-select-modelname{
    display:block;
    border:1px solid #2d4f99;
    margin:10px 0;
    padding: 12px 15px;
    line-height: 1.15;
    color:#fff;
    text-decoration: none;
    background:#3157ad;
    text-align: center;
    font-weight:bold;
  }
}
/* End DSN 20190917 for GaihiHantei Form */


.form-cmn-submit {
  display: flex;
  justify-content: center;
}

.form-cmn-submit-back {
  width: 220px;
  margin-left: 25px;
  margin-right: 25px;
}

.form-cmn-submit-submit {
  width: 470px;
  margin-left: 25px;
  margin-right: 25px;
}
.box-agree-message{
  background-color:#fff;
  font-size: 1.6rem;
  padding: 10px 12px;
  color: initial;
  height: 100px;
  overflow-y: scroll;
}
.box-agree-controler{
  text-align: center;
  padding: 10px 0px 0px;
  color: initial;
}



@media (max-width: 767px) {
  .form-cmn-item {
    margin-top: 30px;
  }
  .form-cmn-item-title {
    font-size: 1.5rem;
  }
  .form-cmn-input-check-label,
  .form-cmn-input-radio-label {
    display: inline-block;
    margin-right: 15px;
  }
  .form-cmn-submit {
    flex-direction: column;
  }
  .form-cmn-submit-back,
  .form-cmn-submit-submit {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    margin-top: 17px;
  }
  .form-cmn-input-radio-text::before {
    vertical-align: -4px;
  }
  .form-cmn-input-check-text::before {
    vertical-align: 1px;
  }
  .box-agree-message{
    font-size: 100%;
  }
}

/* width */
.s-w10 {
  width: 10%;
}

.s-w20 {
  width: 20%;
}

.s-w30 {
  width: 30%;
}

.s-w40 {
  width: 40%;
}

.s-w50 {
  width: 50%;
}

.s-w60 {
  width: 60%;
}

.s-w70 {
  width: 70%;
}

.s-w80 {
  width: 80%;
}

.s-w90 {
  width: 90%;
}

.s-w100 {
  width: 100%;
}

/* other */
@media (min-width: 768px) {
  .only-sp {
    display: none;
  }
}

@media (max-width: 767px) {
  .only-pc {
    display: none;
  }
}

/* PCで1200px以下表示 */
@media screen and (max-width: 1119px) and (min-width: 768px){
  .only-pc-under1200{
    display:none;
  }
}


.cmn-frame-wrapper {
  position: relative;
  width: 540px;
  height: 0;
  padding-top: 56.25%;
}

.cmn-frame-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media (max-width: 767px) {
  .cmn-frame-wrapper {
    width: 100%;
  }
}

.txt-margin-01 {
  margin-bottom: 48px;
}

.grid-link-list-01 {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  width: 100%;
}

.grid-link-list-01 li {
  width: calc(50% - 12px);
  list-style: none;
  margin-bottom: 28PX;
}


.grid-link-list-01 li:nth-child(odd) {
  margin-right: 24px;
}

.grid-link-list-01 li a {
  display: block;
  width: 100%;
  height: 100%;
  z-index: 0;
  position: relative;
  text-decoration: none;
  color: #3d60af;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-01 li a span {
  font-size: 2.6rem;
  font-weight: bold;
  letter-spacing: 0.01em;
  border: solid 1px #3d60af;
  width: 100%;
  display: block;
  line-height: 1.4;
  position: relative;
  padding: 19px 0 19px 37px;
  box-sizing: border-box;
  background-color: #fff;
  vertical-align: middle;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-01 li a:before {
  display: block;
  content: "";
  background-color: #3d60af;
  width: 6px;
  height: 35px;
  position: absolute;
  left: 10px;
  top: calc(50% - 17px);
  z-index: 1;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-01 li a:after {
  display: block;
  content: "";
  background-color: #3d60af;
  width: calc(100% + 3px);
  height: 100%;
  position: absolute;
  left: 0px;
  top: 3px;
  z-index: -1;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-01 li a:hover span, .grid-link-list-01 li a:hover:before {
  transform: translate(-2px, -2px);
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-01 li a:hover:after {
  top: 5px;
  left: 2px;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

@media only screen and (max-width: 767px) {
  .txt-margin-01 {
    margin-bottom: 30px;
  }
  .grid-link-list-01 li {
    width: 100%;
    margin-bottom: 28PX;
  }
  .grid-link-list-01 li:nth-child(odd) {
    margin-right: 0px;
  }
  .grid-link-list-01 li a span {
    font-size: 1.5rem;
    letter-spacing: 0.01em;
    border: solid 1px #3d60af;
    width: 100%;
    display: block;
    position: relative;
    padding: 16px 0 16px 19px;
    box-sizing: border-box;
    background-color: #fff;
  }
  .grid-link-list-01 li a:before {
    width: 3px;
    height: 18px;
    top: calc(50% - 9px);
  }
}

.grid-link-list-02 {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  width: 100%;
  margin-bottom: 40px;
}

.grid-link-list-02 li {
  width: calc(50% - 12px);
  list-style: none;
  margin-bottom: 28PX;
}

.grid-link-list-02 li:nth-child(odd) {
  margin-right: 24px;
}

.grid-link-list-02 li a {
  display: block;
  width: 100%;
  height: 100%;
  z-index: 0;
  position: relative;
  text-decoration: none;
  color: #3d60af;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-02 li a span {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.01em;
  border: solid 1px #3d60af;
  width: 100%;
  display: block;
  line-height: 1.4;
  position: relative;
  padding: 19px 15px 19px 37px;
  box-sizing: border-box;
  background-color: #fff;
  vertical-align: middle;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  color: #3d60af;
  transform: translate(0px, 0px) rotate(0deg);
}

.grid-link-list-02 li a:before {
  display: block;
  content: "";
  background-color: #3d60af;
  width: 6px;
  height: 35px;
  position: absolute;
  left: 10px;
  top: calc(50% - 17px);
  z-index: 1;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  transform: translate(0px, 0px) rotate(0deg);
}

.grid-link-list-02 li a:after {
  display: block;
  content: "";
  background-color: #3d60af;
  width: calc(100% + 3px);
  height: 100%;
  position: absolute;
  left: 0px;
  top: 3px;
  z-index: -1;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-02 li a:hover {
  color: #3d60af;
}

.grid-link-list-02 li a:hover span, .grid-link-list-02 li a:hover:before {
  transform: translate(-2px, -2px) rotate(0deg);
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -webkit-backface-visibility: hidden;
}

.grid-link-list-02 li a:hover:after {
  top: 5px;
  left: 2px;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

@media only screen and (max-width: 767px) {
  .txt-margin-01 {
    margin-bottom: 30px;
  }
  .grid-link-list-02 li {
    width: 100%;
    margin-bottom: 28PX;
  }
  .grid-link-list-02 li:nth-child(odd) {
    margin-right: 0px;
  }
  .grid-link-list-02 li a span {
    font-size: 1.5rem;
    letter-spacing: 0.01em;
    border: solid 1px #3d60af;
    width: 100%;
    display: block;
    position: relative;
    padding: 16px 15px 16px 19px;
    box-sizing: border-box;
    background-color: #fff;
  }
  .grid-link-list-02 li a:before {
    width: 3px;
    height: 18px;
    top: calc(50% - 9px);
  }
}

.grid-bnr-list-01 {
  list-style: none;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
}

.grid-bnr-list-01 li {
  width: calc(33.33333% - 20px);
}

.grid-bnr-list-01 li:first-child, .grid-bnr-list-01 li:nth-child(2) {
  margin-right: 30px;
}

.grid-bnr-list-01 li a {
  display: block;
}

.grid-bnr-list-01 li a img {
  width: 100%;
  height: auto;
}

@media only screen and (max-width: 767px) {
  .grid-bnr-list-01 {
    display: block;
  }
  .grid-bnr-list-01 li {
    width: 100%;
    margin-bottom: 30px;
  }
  .grid-bnr-list-01 li:first-child, .grid-bnr-list-01 li:nth-child(2) {
    margin-right: 0;
  }
}

.tab-contact-01 {
  overflow: hidden;
  display: flex;
}

.tab-contact-01 div {
  width: 50%;
  border: solid 1px #eceded;
  position: relative;
  font-weight: bold;
  color: #3d60af;
  text-align: center;
  line-height: 80px;
  height: 80px;
  box-sizing: border-box;
  background-color: #fff;
}

@media only screen and (max-width: 767px) {
  .tab-contact-01 div {
    height: auto;
    line-height: 1.4;
    text-align: left;
    padding: 25px 0 25px 0;
  }
}

.tab-contact-01 div p {
  font-size: 3rem;
}

@media only screen and (max-width: 767px) {
  .tab-contact-01 div p {
    padding-left: 45px;
    font-size: 1.3rem;
  }
}

.tab-contact-01 div p br {
  display: none;
}

@media only screen and (max-width: 767px) {
  .tab-contact-01 div p br {
    display: block;
  }
}

.tab-contact-01 div .ico-contact-01 {
  position: absolute;
  top: 30px;
  right: 39px;
}

@media only screen and (max-width: 767px) {
  .tab-contact-01 div .ico-contact-01 {
    right: auto;
    left: 15px;
  }
}

.tab-contact-01 div:hover {
  background: #3d60af;
  color: #fff;
  border: solid 1px #3d60af;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  cursor: pointer;
}

.tab-contact-01 div:hover .ico-contact-01 {
  background-color: #fff;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.tab-contact-01 div:hover .ico-contact-01 p {
  color: #3d60af;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.tab-contact-01 .grid-tab-01-select {
  background: #3d60af;
  color: #fff;
  border: solid 1px #3d60af;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.tab-contact-01 .grid-tab-01-select i {
  background-color: #fff;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.tab-contact-01 .grid-tab-01-select i span {
  color: #3d60af;
  transform: rotate(90deg);
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  padding-left: 0;
  padding-top: 0;
}

.ico-contact-01 {
  width: 20px;
  height: 20px;
  background-color: #3d60af;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.ico-contact-01 p {
  display:inline;
  color: #fff;
  display: block;
  font-size: 11px !important;
  text-align: center;
  vertical-align: middle;
  padding-left: 2px !important;
  padding-top: 1px;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.ico-contact-01 p i {
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.box-contact-01 .box-contact-02 {
  padding: 80px 70px;
  box-sizing: border-box;
  display: none;
}

@media only screen and (max-width: 767px) {
  .box-contact-01 .box-contact-02 {
    padding: 50px 15px;
  }
}

.box-contact-01 .box-contact-02:first-child {
  display: block;
  background: #f1f4f4;
}

.box-contact-01 .box-contact-02:nth-child(2) {
  padding: 80px 0;
}

.box-contact-01
.grid-tab-02-hide {
  display: none;
}

@font-face {
  font-family: 'icomoon';
  src: url("/jp2/fonts/icomoon.eot?ddicca");
  src: url("/jp2/fonts/icomoon.eot?ddicca#iefix") format("embedded-opentype"), url("/jp2/fonts/icomoon.ttf?ddicca") format("truetype"), url("/jp2/fonts/icomoon.woff?ddicca") format("woff"), url("/jp2/fonts/icomoon.svg?ddicca#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-arrow:before {
  content: "\e900";
}

.grid-contact-list-01 {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  width: 100%;
  margin-bottom: 40px;
}

.grid-contact-list-01 li {
  width: calc(50% - 12px);
  list-style: none;
  margin-bottom: 28PX;
}

@media only screen and (max-width: 767px) {
  .grid-contact-list-01 li {
    width: 100%;
  }
}

.grid-contact-list-01 li:nth-child(odd) {
  margin-right: 24px;
}

@media only screen and (max-width: 767px) {
  .grid-contact-list-01 li:nth-child(odd) {
    margin-right: 0;
  }
}

.grid-contact-list-01 li a {
  display: block;
  width: 100%;
  height: 100%;
  z-index: 0;
  position: relative;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-contact-list-01 li a .bnr-contact-01 {
  letter-spacing: 0.01em;
  border: solid 1px #3d60af;
  width: 100%;
  height: 100%;
  display: block;
  line-height: 1.4;
  position: relative;
  padding: 30px 26px 60px 26px;
  box-sizing: border-box;
  background-color: #fff;
  vertical-align: middle;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  color: #3d60af;
  transform: translate(0px, 0px) rotate(0deg);
  transform-origin: 0% 0;
  -webkit-font-smoothing: antialiased;
  text-transform: none;
  -webkit-backface-visibility: hidden;
}

@media only screen and (max-width: 767px) {
  .grid-contact-list-01 li a .bnr-contact-01 {
    padding: 20px 15px;
  }
}

.grid-contact-list-01 li a .bnr-contact-01 .txt-contact-01 {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  font-size: 1.8rem;
  border-bottom: solid 1px #3d60af;
  padding-bottom: 12px;
  margin-bottom: 16px;
}

.grid-contact-list-01 li a .bnr-contact-01 .txt-contact-01 .ico-contact-01 {
  margin-right: 12px;
  width: 20px;
}

.grid-contact-list-01 li a .bnr-contact-01 .txt-contact-01 p {
  display: inline-block;
  font-size: 1.8rem;
  font-weight: bold;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  width: calc(100% - 33px);
  margin-left:-8px;
}

.grid-contact-list-01 li a .bnr-contact-01 .txt-contact-02 {
  color: #061536;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
}

@media only screen and (max-width: 767px) {
  .grid-contact-list-01 li a .bnr-contact-01 .txt-contact-02 {
    font-size: 1.3rem;
  }
}

.grid-contact-list-01 li a:after {
  display: block;
  content: "";
  background-color: #3d60af;
  width: calc(100% + 3px);
  height: 100%;
  position: absolute;
  left: 0px;
  top: 3px;
  z-index: -1;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-contact-list-01 li a:hover {
  color: #3d60af;
}

.grid-contact-list-01 li a:hover .bnr-contact-01 {
  transform: translate(-2px, -2px) rotate(0deg);
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -webkit-backface-visibility: hidden;
}

.grid-contact-list-01 li a:hover:after {
  top: 5px;
  left: 2px;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

@media only screen and (max-width: 767px) {
  .box-contact-03 {
    text-align: center;
  }
}

.box-contact-03 .ttl-level-02 {
  margin: 0 0 40px 0;
}

.box-contact-03 .box-contact-04 {
  background-color: #f1f4f4;
  padding: 30px;
  margin-bottom: 40px;
  line-height: 1.4;
}

.box-contact-03 .box-contact-04 h3 {
  font-size: 2.5rem;
  line-height: 1.4;
  color: #3d60af;
  border-bottom: solid 1px #3d60af;
  padding-bottom: 11px;
  margin-bottom: 24px;
}

@media only screen and (max-width: 767px) {
  .box-contact-03 .box-contact-04 h3 {
    font-size: 1.8rem;
    margin-bottom: 10px;
  }
}

.box-contact-03 .box-contact-04 h3 span {
  font-size: 1.8rem;
}

@media only screen and (max-width: 767px) {
  .box-contact-03 .box-contact-04 h3 span {
    display: block;
    font-size: 1.4rem;
  }
}

.box-contact-03 .box-contact-04 .ttl-contact-03 {
  font-size: 1.8rem;
}

.box-contact-03 .box-contact-04 .ttl-contact-03 span {
  font-size: 1.8rem;
}

@media only screen and (max-width: 767px) {
  .box-contact-03 .box-contact-04 .ttl-contact-03 span {
    display: block;
    font-size: 1.4rem;
  }
}

@media only screen and (max-width: 767px) {
  .box-contact-03 .box-contact-04 .ttl-contact-03 {
    font-size: 1.8rem;
  }
}

.box-contact-03 .box-contact-04 .txt-contact-02 {
  font-size: 2rem;
  color: #5b5b5b;
  font-weight: bold;
  margin-bottom: 12px;
}

@media only screen and (max-width: 767px) {
  .box-contact-03 .box-contact-04 .txt-contact-02 {
    font-size: 1.5rem;
    margin-bottom: 5px;
  }
}

.box-contact-03 .box-contact-04 .txt-contact-03 {
  font-size: 3.2rem;
  color: #3d60af;
  font-weight: bold;
  margin-bottom: 6px;
}

@media only screen and (max-width: 767px) {
  .box-contact-03 .box-contact-04 .txt-contact-03 {
    font-size: 2.1rem;
    display: block;
  }
}

.box-contact-03 .box-contact-04 .txt-contact-04 {
  font-size: 1.4rem;
  color: #5b5b5b;
  display: block;
}

.box-contact-03 .box-contact-04 .txt-contact-04 br {
  display: none;
}

@media only screen and (max-width: 767px) {
  .box-contact-03 .box-contact-04 .txt-contact-04 br {
    display: block;
  }
}

@media only screen and (max-width: 767px) {
  .box-contact-03 .box-contact-04 .box-contact-05 {
    padding-top: 11px;
  }
}

.box-contact-03 .box-contact-04 .box-contact-05 a {
  display: block;
  position: relative;
  padding-left: 12px;
  margin-bottom: 10px;
}
/*
.box-contact-03 .box-contact-04 .box-contact-05 a:before {
  position: absolute;
  background-image: url(/jp2/image/SVG/ico_arrow_05.svg);
  width: 6px;
  height: 9px;
  background-size: 6px 9px;
  content: "";
  top: 6px;
  left: 0;
}
*/

@media only screen and (max-width: 767px) {
  .box-contact-03 .box-contact-04 .box-contact-05 a {
    background-color: #2c4d98;
    width: 100%;
    color: #fff;
    text-decoration: none;
    font-size: 1.3rem;
    line-height: 42px;
    height: 42px;
    margin-bottom: 15px;
  }
  .box-contact-03 .box-contact-04 .box-contact-05 a:before {
    background: url(/image/jp2/common/ico_arrow_01.svg) no-repeat;
    left: auto;
    right: 15px;
    top: 16px;
  }
}

/* =================================
???
================================= */
.grid-product-form-01 {
  padding-top: 12px;
}

.grid-product-form-01 li {
  list-style: none;
  padding-left: 1em;
  text-indent: -1em;
}

.grid-product-form-02 .form-cmn-item {
  margin-top: 40px;
}

.grid-product-form-02 .grid-product-form-03 label {
  display: block;
}

.grid-product-form-02 .form-cmn-item-02 {
  margin-top: 20px;
}

.grid-product-form-04 {
  margin-bottom: 35px;
}

@media only screen and (max-width: 767px) {
  .grid-product-form-04 {
    margin-bottom: 25px;
  }
}

.grid-product-form-radio-01 {
  display: flex;
  align-items: center;
}

@media only screen and (max-width: 767px) {
  .grid-product-form-radio-01 {
    display: block;
  }
}

.grid-product-form-radio-01 label {
  width: 125px;
}

@media only screen and (max-width: 767px) {
  .grid-product-form-radio-01 label {
    width: 100%;
    margin-bottom: 12px;
  }
}

.grid-product-form-radio-01 p {
  width: calc(100% - 125px);
}

@media only screen and (max-width: 767px) {
  .grid-product-form-radio-01 p {
    width: 100%;
  }
}

.grid-product-form-05 {
  margin-bottom: 35px;
}

.grid-product-form-05 .grid-product-form-radio-02 label {
  width: 100%;
}

.grid-product-form-radio-03 {
  display: flex;
  align-items: center;
}

@media only screen and (max-width: 767px) {
  .grid-product-form-radio-03 {
    display: block;
  }
}

.grid-product-form-radio-03 label {
  width: 245px;
}

@media only screen and (max-width: 767px) {
  .grid-product-form-radio-03 label {
    width: 100%;
    margin-bottom: 12px;
  }
}

.grid-product-form-radio-03 p {
  width: calc(100% - 245px);
}

@media only screen and (max-width: 767px) {
  .grid-product-form-radio-03 p {
    width: 100%;
  }
}

.grid-product-form-06 {
  border-top: solid 1px #3d60af;
  margin-top: 45px;
  padding-top: 20px;
}

@media only screen and (max-width: 767px) {
  .grid-product-form-06 {
    padding-top: 32px;
  }
}

.grid-product-form-07 {
  padding-top: 50px;
}

@media only screen and (max-width: 767px) {
  .grid-product-form-07 {
    padding-top: 0;
  }
}


/* edit_dsn.css */
/* =================================
common
================================= */
/*
Margin
---------------------------------*/
.mt-01{margin-top:100px;}
.mt-02{margin-top:80px;}
.mt-03{margin-top:60px;}
.mt-04{margin-top:40px;}
.mt-05{margin-top:20px;}
@media (max-width: 767px) {
.mt-01{margin-top:70px;}
.mt-02{margin-top:50px;}
.mt-03{margin-top:35px;}
.mt-04{margin-top:20px;}
.mt-05{margin-top:10px;}
}

.mb-01{margin-bottom:100px;}
.mb-02{margin-bottom:80px;}
.mb-03{margin-bottom:60px;}
.mb-04{margin-bottom:40px;}
.mb-05{margin-bottom:20px;}
@media (max-width: 767px) {
.mb-01{margin-bottom:70px;}
.mb-02{margin-bottom:50px;}
.mb-03{margin-bottom:35px;}
.mb-04{margin-bottom:20px;}
.mb-05{margin-bottom:10px;}
}

/*
Align
---------------------------------*/
.align-left{margin-left: 0px; margin-right: auto; text-align: left !important;}
.align-center{margin-left:auto; margin-right: auto; text-align: center !important;}
.align-right{margin-left: auto;margin-right: 0px; text-align: right !important;}

/*
Vertical-align
---------------------------------*/
.v-align-middle{vertical-align: middle;}

/*
Display
---------------------------------*/
.d-block{display:block;}
.d-inlineblock{display:inline-block;}


/*
Text 
---------------------------------*/
.txt-bold{font-weight:bold;}
.txt-bold{font-weight:bold;}
.txt-lead{font-size: 1.8em;color: #333;}
@media (max-width: 767px) {
.txt-lead{font-size: 1.4em;}
}


/*
Title  Subspecies
---------------------------------*/
.ttl-sub{font-size: 0.70em;}




/*
---------------------------------*/
.list-horizon{
  list-style: none;
}
.list-horizon li{
  display:inline-block;
  white-space: nowrap;
  font-size:1.8rem;
  margin:5px 10px;
}


/*
List Normal
---------------------------------*/
ul.list-basic,
ol.list-basic{
  padding-left:20px;
}


/*
List Internal Anchor
---------------------------------*/
.link-in-page{
  background-color:#efefef;
  text-align: center;
  padding:5px 10px;
  border-radius: 10px;
}
.link-in-page a {
    white-space: nowrap;
    display: inline-block;
    margin: 0px 10px;
    font-size: 1.6rem;
    text-decoration: none;
    color:#333;
}
.link-in-page a:hover {
    text-decoration: underline;
}

.link-in-page .my-custom{
  color:#3d60af;
  margin-right:5px;
}



/*
1 Image
---------------------------------*/
.img-catch-in-content-01{
  display: block;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  margin-bottom:40px;
}


/*
Images Horizon
---------------------------------*/
/* 2 Horizon */
.box-img-2col{
  letter-spacing: -4em;
}
.box-img-2col li{
  display: inline-block;
  letter-spacing: normal;
  width:50%;
  padding:10px;
  text-align: center;
}
.box-img-2col-child-v-middle li{
  vertical-align: middle;
}

@media (max-width: 767px) {
.box-img-2col{}
.box-img-2col li{
  display: block;
  width:100%;
  padding:15px 0px;
  text-align: center;
}
}


/* 3 Horizon */
.box-img-3col{
  letter-spacing: -4em;
}
.box-img-3col li{
  display: inline-block;
  letter-spacing: normal;
  width:33%;
  padding:10px;
  text-align: center;
}
.box-img-2col-child-v-middle li{
  vertical-align: middle;
}
.box-img-3col-child-v-middle li{
  vertical-align: middle;
}

@media (max-width: 767px) {
.box-img-3col{}
.box-img-3col li{
  display: block;
  width:100%;
  padding:15px 0px;
  text-align: center;
}
}

/*
FAQ Accordion
--------------------------------- */
.box-list-details-01{border-bottom: 1px solid #778fc7;}
.box-list-details-01 dt{
  display:block;
  cursor:pointer;
  border-top: 1px solid #778fc7;
  color:#3d60af;
  font-weight:bold;
}
.box-list-details-01 dd{display:none; border-top:1px dashed #6e6e6e;}
.box-list-details-01 dt{padding:8px 20px;}
.box-list-details-01 dd{padding:8px 20px calc( 8px + 1em );}
.box-list-details-01 dd.initial-open{display:block;}


/*
.list-definition Subspecies
--------------------------------- */
@media (min-width: 767px) {
.list-definition.only-pc-w240 dt{ width:240px;}
.list-definition.only-pc-w240 dd{ width:calc(100% - 240px);}

.list-definition.only-pc-w320 dt{ width:320px;}
.list-definition.only-pc-w320 dd{ width:calc(100% - 320px);}
}


/*
Search Box in Contents
--------------------------------- */
.form-list-definition-01{
  border:2px solid #ececec;
  padding:20px 40px 40px;
}
.form-list-definition-01 dl{
  letter-spacing: -.4em;
  width:100%;
}
.form-list-definition-01 dl dt,
.form-list-definition-01 dl dd{
  display: inline-block;
  letter-spacing: normal;
  vertical-align: top;
  margin:10px 0px;
}
.form-list-definition-01 dl dt{
  width:150px;
  color:#3d60af;
  font-size:2.0rem;
  font-weight:bold;
}
.form-list-definition-01 dl dd{
  width:calc(100% - 150px);
  
}

@media (max-width: 767px) {
.form-list-definition-01{
  border:2px solid #ececec;
  padding:10px;
}
.form-list-definition-01 dl{width:100%;}
.form-list-definition-01 dl dt,
.form-list-definition-01 dl dd{
  display: block;
  margin:0px;
}
.form-list-definition-01 dl dt{
  width:100%;
  color:#3d60af;
  font-size:1.5rem;
  font-weight:bold;
}
.form-list-definition-01 dl dd{width:100%;}
}


/* =================================
Afterservice
================================= */
.grid-service-bnr-list-03 {
  list-style: none;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
}

.grid-service-bnr-list-03 li {
  width: calc(33.33333% - 20px);
}

.grid-service-bnr-list-03 li:first-child, .grid-service-bnr-list-03 li:nth-child(2) {
  margin-right: 30px;
}

.grid-service-bnr-list-03 li a {
  display: block;
}

.grid-service-bnr-list-03 li a img {
  width: 100%;
  height: auto;
}

@media only screen and (max-width: 767px) {
  .grid-service-bnr-list-03 {
    display: block;
  }
  .grid-service-bnr-list-03 li {
    width: 100%;
    margin-bottom: 30px;
  }
  .grid-service-bnr-list-03 li:first-child, .grid-service-bnr-list-03 li:nth-child(2) {
    margin-right: 0;
  }
}

/*
Fees
---------------------------------*/
.list-fees-01{
  display:table;
  width:840px;
  margin:20px 5px;
}
.list-fees-01 li{
  display:table-cell;
  vertical-align: middle;
  text-align: center;
}
.list-fees-01 li.item{
  width: 180px;
  background: #3d60af;
  color:#fff;
  padding-top:20px;
  padding-bottom:20px;
}
.list-fees-01 li.plus{
  width: 40px;
  font-size:2.6rem;
}

@media (max-width: 767px) {
.list-fees-01{
  display:block;
  width:100%;
  margin:20px 0px;
}
.list-fees-01 li{
  display:block;
  width:100% !important;
  font-size:1.4rem !important;
}
.list-fees-01 li.item{
  padding-top:10px;
  padding-bottom:10px;
}
.list-fees-01 li.plus{
  padding-top:0px;
  padding-bottom:0px;
  font-weight:bold;
}
}


/* =================================
Corporate
================================= */
/*
Executive images
---------------------------------*/
.ul-executive-images{
  letter-spacing:-4em;
}
.ul-executive-images li{
  letter-spacing:normal;
  display: inline-block;
  list-style: none;
  text-align: center;
  padding:0px 10px 30px;
  width:25%;
}
.ul-executive-images li img{
  display:block;
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 767px) {
.ul-executive-images li{
  padding:0px 10px 30px;
  width:50%;
}
}


/*
Business 4 products images
---------------------------------*/
.box-business-four-products{
  letter-spacing: -4em;
  margin-bottom:40px;
}
.box-business-four-products p{
  display:inline-block;
  letter-spacing: normal;
  width:690px;
  padding-right:20px;
}
.box-business-four-products img{display: inline-block;}

@media (max-width: 767px) {
.box-business-four-products p{
  display:block;
  letter-spacing: normal;
  width:100%;
  padding-right:0px;
}
.box-business-four-products img{
  display: block;
  margin:20px auto;
  text-align: center;
}
}


/*
Style Innovation center
---------------------------------*/
.box-experimental-facility{
  letter-spacing: -4em;
}
.box-experimental-facility li{
  width:25%;
  display:inline-block;
  letter-spacing: normal;
  text-align: center;
}

@media (max-width: 767px) {
.box-experimental-facility li{
  width:50%;
  padding:10px;
}
}



/* =================================
Csr
================================= */
/*
Community List
--------------------------------- */
.list-csr-contents-link-01{
  list-style: none;
  letter-spacing: -4em;
  margin-left:25px;
  margin-top:20px;
}
.list-csr-contents-link-01 li{
  display: inline-block;
  letter-spacing: normal;
}
.list-csr-contents-link-01 li a{
  display:block;
  width:250px;
  margin-right:25px;
  margin-bottom:25px;
  border:1px solid #ddd;
  text-decoration: none;
  color:#2f3b55;
}
.list-csr-contents-link-01 li a:hover{
  text-decoration: underline;
}

.list-csr-contents-link-01 li a p{
text-align: center;
margin:20px auto;
}

@media (max-width: 767px) {
.list-csr-contents-link-01{
  list-style: none;
  letter-spacing: -4em;
  margin-left:0px;
  margin-top:20px;
}
.list-csr-contents-link-01 li{
  display: block;
  letter-spacing: normal;
}
.list-csr-contents-link-01 li a{
  display:block;
  width:100%;
  margin-right:0px;
  margin-bottom:20px;
  font-size:2.0rem;
}
}



/* =================================
Contact
================================= */
/*
Contact
--------------------------------- */
.tab-contact-01>div>a{
  text-decoration: none;
  color: #3d60af;
}
.tab-contact-01>div>a:hover{
  text-decoration: none;
  color: #fff;
}


/*
Tel
--------------------------------- */
.box-contact-tel{
  padding:30px 26px 30px 26px;
  background-color: #fff;
  border:1px solid #3d60af;
}

.box-contact-tel .desc{
  margin-left:20px;
}
@media (max-width: 767px) {
.box-contact-tel .desc{
  margin-left:0px;
}
}


.ttl-contact-tel {
  margin-bottom: 16px;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.3;
  color: #3d60af;
}


.ttl-contact-tel::after {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  margin-top: 14px;
  background: #3d60af;
}
@media (max-width: 767px) {
  .ttl-contact-tel {
    margin-bottom: 20px;
  }
}

.list-definition-tel {
  display: flex;
  flex-wrap: wrap;
}
.list-definition-tel dt {
  width: 240px;
  padding: 6px 10px 6px 20px;
}
.list-definition-tel dd {
  width: calc(100% - 240px);
  padding: 6px 10px 6px 0;
}
@media (max-width: 767px) {
  .list-definition-tel {
  }
  .list-definition-tel dt {
    width: 100%;
    padding: 6px 0 0;
    font-size: 1.5rem;
  }
  .list-definition-tel dd {
    width: 100%;
    padding: 0 0 6px;
  }
}

.txt-tel-number{
  font-weight:bold;
  font-size:1.4em;
}
@media (max-width: 767px) {
.txt-tel-number{
  font-weight:bold;
  font-size:1.6em;
  text-align:center;
}
}



/* edit_prart_contact.css */
.tab-contact-01 {
  overflow: hidden;
  display: flex;
}

.tab-contact-01 div {
  width: 50%;
  border: solid 1px #eceded;
  position: relative;
  font-weight: bold;
  color: #3d60af;
  text-align: center;
  line-height: 80px;
  height: 80px;
  box-sizing: border-box;
  background-color: #fff;
}

@media only screen and (max-width: 767px) {
  .tab-contact-01 div {
    height: auto;
    line-height: 1.4;
    text-align: left;
    padding: 25px 0 25px 0;
  }
}

.tab-contact-01 div p {
  font-size: 3rem;
}

@media only screen and (max-width: 767px) {
  .tab-contact-01 div p {
    padding-left: 45px;
    font-size: 1.3rem;
  }
}

.tab-contact-01 div p br {
  display: none;
}

@media only screen and (max-width: 767px) {
  .tab-contact-01 div p br {
    display: block;
  }
}

.tab-contact-01 div .ico-contact-01 {
  position: absolute;
  top: 30px;
  right: 39px;
}

@media only screen and (max-width: 767px) {
  .tab-contact-01 div .ico-contact-01 {
    right: auto;
    left: 15px;
  }
}

.tab-contact-01 div:hover {
  background: #3d60af;
  color: #fff;
  border: solid 1px #3d60af;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  cursor: pointer;
}

.tab-contact-01 div:hover .ico-contact-01 {
  background-color: #fff;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.tab-contact-01 div:hover .ico-contact-01 p {
  color: #3d60af;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.tab-contact-01 .grid-tab-01-select {
  background: #3d60af;
  color: #fff;
  border: solid 1px #3d60af;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.tab-contact-01 .grid-tab-01-select i {
  background-color: #fff;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.tab-contact-01 .grid-tab-01-select i span {
  color: #3d60af;
  transform: rotate(90deg);
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  padding-left: 0;
  padding-top: 0;
}

.ico-contact-01 {
  width: 20px;
  height: 20px;
  background-color: #3d60af;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.ico-contact-01 p {
  display:inline;
  color: #fff;
  display: block;
  font-size: 11px;
  text-align: center;
  vertical-align: middle;
  padding-left: 2px;
  padding-top: 1px;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.ico-contact-01 p i {
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.box-contact-01 .box-contact-02 {
  padding: 80px 70px;
  box-sizing: border-box;
  display: none;
}

@media only screen and (max-width: 767px) {
  .box-contact-01 .box-contact-02 {
    padding: 50px 15px;
  }
}

.box-contact-01 .box-contact-02:first-child {
  display: block;
  background: #f1f4f4;
}

.box-contact-01 .box-contact-02:nth-child(2) {
  padding: 80px 0;
}

.box-contact-01
.grid-tab-02-hide {
  display: none;
}

@font-face {
  font-family: 'icomoon';
  src: url("/fonts/icomoon.eot?ddicca");
  src: url("/fonts/icomoon.eot?ddicca#iefix") format("embedded-opentype"), url("/fonts/icomoon.ttf?ddicca") format("truetype"), url("/fonts/icomoon.woff?ddicca") format("woff"), url("/fonts/icomoon.svg?ddicca#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-arrow:before {
  content: "\e900";
}

.grid-contact-list-01 {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  width: 100%;
  margin-bottom: 40px;
}

.grid-contact-list-01 li {
  width: calc(50% - 12px);
  list-style: none;
  margin-bottom: 28PX;
}

@media only screen and (max-width: 767px) {
  .grid-contact-list-01 li {
    width: 100%;
  }
}

.grid-contact-list-01 li:nth-child(odd) {
  margin-right: 24px;
}

@media only screen and (max-width: 767px) {
  .grid-contact-list-01 li:nth-child(odd) {
    margin-right: 0;
  }
}

.grid-contact-list-01 li a {
  display: block;
  width: 100%;
  height: 100%;
  z-index: 0;
  position: relative;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-contact-list-01 li a .bnr-contact-01 {
  letter-spacing: 0.01em;
  border: solid 1px #3d60af;
  width: 100%;
  display: block;
  line-height: 1.4;
  position: relative;
  padding: 30px 26px 60px 26px;
  box-sizing: border-box;
  background-color: #fff;
  vertical-align: middle;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  color: #3d60af;
  transform: translate(0px, 0px) rotate(0deg);
  transform-origin: 0% 0;
  -webkit-font-smoothing: antialiased;
  text-transform: none;
  -webkit-backface-visibility: hidden;
}

@media only screen and (max-width: 767px) {
  .grid-contact-list-01 li a .bnr-contact-01 {
    padding: 20px 15px;
  }
}

.grid-contact-list-01 li a .bnr-contact-01 .txt-contact-01 {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  font-size: 1.8rem;
  border-bottom: solid 1px #3d60af;
  padding-bottom: 12px;
  margin-bottom: 16px;
}

.grid-contact-list-01 li a .bnr-contact-01 .txt-contact-01 .ico-contact-01 {
  margin-right: 12px;
  width: 20px;
}

.grid-contact-list-01 li a .bnr-contact-01 .txt-contact-01 p {
  display: inline-block;
  font-size: 1.8rem;
  font-weight: bold;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  width: calc(100% - 33px);
}

.grid-contact-list-01 li a .bnr-contact-01 .txt-contact-02 {
  color: #061536;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
}

@media only screen and (max-width: 767px) {
  .grid-contact-list-01 li a .bnr-contact-01 .txt-contact-02 {
    font-size: 1.3rem;
  }
}

.grid-contact-list-01 li a:after {
  display: block;
  content: "";
  background-color: #3d60af;
  width: calc(100% + 3px);
  height: 100%;
  position: absolute;
  left: 0px;
  top: 3px;
  z-index: -1;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-contact-list-01 li a:hover {
  color: #3d60af;
}

.grid-contact-list-01 li a:hover .bnr-contact-01 {
  transform: translate(-2px, -2px) rotate(0deg);
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -webkit-backface-visibility: hidden;
}

.grid-contact-list-01 li a:hover:after {
  top: 5px;
  left: 2px;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

@media only screen and (max-width: 767px) {
  .box-contact-03 {
    text-align: center;
  }
}

.box-contact-03 .ttl-level-02 {
  margin: 0 0 40px 0;
}

.box-contact-03 .box-contact-04 {
  background-color: #f1f4f4;
  padding: 30px;
  margin-bottom: 40px;
  line-height: 1.4;
}

.box-contact-03 .box-contact-04 h3 {
  font-size: 2.5rem;
  line-height: 1.4;
  color: #3d60af;
  border-bottom: solid 1px #3d60af;
  padding-bottom: 11px;
  margin-bottom: 24px;
}

@media only screen and (max-width: 767px) {
  .box-contact-03 .box-contact-04 h3 {
    font-size: 1.8rem;
    margin-bottom: 10px;
  }
}

.box-contact-03 .box-contact-04 h3 span {
  font-size: 1.8rem;
}

@media only screen and (max-width: 767px) {
  .box-contact-03 .box-contact-04 h3 span {
    display: block;
    font-size: 1.4rem;
  }
}

.box-contact-03 .box-contact-04 .ttl-contact-03 {
  font-size: 1.8rem;
}

.box-contact-03 .box-contact-04 .ttl-contact-03 span {
  font-size: 1.8rem;
}

@media only screen and (max-width: 767px) {
  .box-contact-03 .box-contact-04 .ttl-contact-03 span {
    display: block;
    font-size: 1.4rem;
  }
}

@media only screen and (max-width: 767px) {
  .box-contact-03 .box-contact-04 .ttl-contact-03 {
    font-size: 1.8rem;
  }
}

.box-contact-03 .box-contact-04 .txt-contact-02 {
  font-size: 2rem;
  color: #5b5b5b;
  font-weight: bold;
  margin-bottom: 12px;
}

@media only screen and (max-width: 767px) {
  .box-contact-03 .box-contact-04 .txt-contact-02 {
    font-size: 1.5rem;
    margin-bottom: 5px;
  }
}

.box-contact-03 .box-contact-04 .txt-contact-03 {
  font-size: 3.2rem;
  color: #3d60af;
  font-weight: bold;
  margin-bottom: 6px;
}

@media only screen and (max-width: 767px) {
  .box-contact-03 .box-contact-04 .txt-contact-03 {
    font-size: 2.1rem;
    display: block;
  }
}

.box-contact-03 .box-contact-04 .txt-contact-04 {
  font-size: 1.4rem;
  color: #5b5b5b;
  display: block;
}

.box-contact-03 .box-contact-04 .txt-contact-04 br {
  display: none;
}

@media only screen and (max-width: 767px) {
  .box-contact-03 .box-contact-04 .txt-contact-04 br {
    display: block;
  }
}

@media only screen and (max-width: 767px) {
  .box-contact-03 .box-contact-04 .box-contact-05 {
    padding-top: 11px;
  }
}

.box-contact-03 .box-contact-04 .box-contact-05 a {
  display: block;
  position: relative;
  padding-left: 12px;
  margin-bottom: 10px;
}
/*
.box-contact-03 .box-contact-04 .box-contact-05 a:before {
  position: absolute;
  background-image: url(/image/jp2/SVG/ico_arrow_05.svg);
  width: 6px;
  height: 9px;
  background-size: 6px 9px;
  content: "";
  top: 6px;
  left: 0;
}
*/
@media only screen and (max-width: 767px) {
  .box-contact-03 .box-contact-04 .box-contact-05 a {
    background-color: #2c4d98;
    width: 100%;
    color: #fff;
    text-decoration: none;
    font-size: 1.3rem;
    line-height: 42px;
    height: 42px;
    margin-bottom: 15px;
  }
  .box-contact-03 .box-contact-04 .box-contact-05 a:before {
    background: url(/image/jp2/common/ico_arrow_01.svg) no-repeat;
    left: auto;
    right: 15px;
    top: 16px;
  }
}

/* =================================
製品に関するお問い合わせ（入力）
================================= */
.grid-product-form-01 {
  padding-top: 12px;
}

.grid-product-form-01 li {
  list-style: none;
  padding-left: 1em;
  text-indent: -1em;
}

.grid-product-form-02 .form-cmn-item {
  margin-top: 40px;
}

.grid-product-form-02 .grid-product-form-03 label {
  display: block;
}

.grid-product-form-02 .form-cmn-item-02 {
  margin-top: 20px;
}

.grid-product-form-04 {
  margin-bottom: 35px;
}

@media only screen and (max-width: 767px) {
  .grid-product-form-04 {
    margin-bottom: 25px;
  }
}

.grid-product-form-radio-01 {
  display: flex;
  align-items: center;
}

@media only screen and (max-width: 767px) {
  .grid-product-form-radio-01 {
    display: block;
  }
}

.grid-product-form-radio-01 label {
  width: 125px;
}

@media only screen and (max-width: 767px) {
  .grid-product-form-radio-01 label {
    width: 100%;
    margin-bottom: 12px;
  }
}

.grid-product-form-radio-01 p {
  width: calc(100% - 125px);
}

@media only screen and (max-width: 767px) {
  .grid-product-form-radio-01 p {
    width: 100%;
  }
}

.grid-product-form-05 {
  margin-bottom: 35px;
}

.grid-product-form-05 .grid-product-form-radio-02 label {
  width: 100%;
}

.grid-product-form-radio-03 {
  display: flex;
  align-items: center;
}

@media only screen and (max-width: 767px) {
  .grid-product-form-radio-03 {
    display: block;
  }
}

.grid-product-form-radio-03 label {
  width: 245px;
}

@media only screen and (max-width: 767px) {
  .grid-product-form-radio-03 label {
    width: 100%;
    margin-bottom: 12px;
  }
}

.grid-product-form-radio-03 p {
  width: calc(100% - 245px);
}

@media only screen and (max-width: 767px) {
  .grid-product-form-radio-03 p {
    width: 100%;
  }
}

.grid-product-form-06 {
  border-top: solid 1px #3d60af;
  margin-top: 45px;
  padding-top: 20px;
}

@media only screen and (max-width: 767px) {
  .grid-product-form-06 {
    padding-top: 32px;
  }
}

.grid-product-form-07 {
  padding-top: 50px;
}

@media only screen and (max-width: 767px) {
  .grid-product-form-07 {
    padding-top: 0;
  }
}

/* =================================
製品に関するお問い合わせ（確認）
================================= */
.table-cmn-basic03 {
  width: 100%;
  border: 2px solid #3d60af;
  line-height: 1.6875;
}

@media only screen and (max-width: 767px) {
  .table-cmn-basic03 {
    display: block;
    width: 100%;
    border: none;
  }
}

@media only screen and (max-width: 767px) {
  .table-cmn-basic03 tbody {
    display: block;
    width: 100%;
  }
}

@media only screen and (max-width: 767px) {
  .table-cmn-basic03 tbody tr {
    display: block;
    width: 100%;
  }
  .table-cmn-basic03 tbody tr:first-child th {
    border-top: solid 1px #778fc7;
  }
/*
  .table-cmn-basic03 tbody tr:nth-child(even) {
    background-color: #eefafa;
  }
*/
}

.table-cmn-basic03 tbody tr th, .table-cmn-basic03 tbody tr td {
  letter-spacing: 0.02em;
  padding: 12px;
}

@media only screen and (max-width: 767px) {
  .table-cmn-basic03 tbody tr th, .table-cmn-basic03 tbody tr td {
    display: block;
  }
}

.table-cmn-basic03 tbody tr th {
  background: #3d60af;
  text-align: left;
  font-size: 1.8rem;
  font-weight: bold;
  color: #fff;
  border-bottom: solid 1px #fff;
  box-sizing: border-box;
  width: 200px;
}

@media only screen and (max-width: 767px) {
  .table-cmn-basic03 tbody tr th {
    width: 100%;
    background-color: transparent;
    color: #3d60af;
    font-size: 1.5rem;
    border-bottom: none;
    padding: 12px 0 0 0;
  }
}

.table-cmn-basic03 tbody tr td {
  border: 1px solid #3d60af;
  text-align: left;
  box-sizing: border-box;
  width: calc(100% -200px);
}

@media only screen and (max-width: 767px) {
  .table-cmn-basic03 tbody tr td {
    width: 100%;
    background-color: transparent;
    border: none;
    border-bottom: solid 1px #778fc7;
    font-size: 1.3rem;
    padding: 0 0 12px 0;
  }
}

.txt-margin-02 {
  padding-top: 77px;
  margin-bottom: 80px;
}

@media only screen and (max-width: 767px) {
  .txt-margin-02 {
    padding-top: 0;
    margin-bottom: 25px;
  }
}

.txt-product-form-check-01 {
  line-height: 2.1;
  padding-top: 80px;
}

@media only screen and (max-width: 767px) {
  .txt-product-form-check-01 {
    padding-top: 40px;
  }
}

.txt-margin-03 {
  line-height: 2.1;
}

.body-contact .box-contact,
.body-product-form .box-contact,
.body-product-form-completion .box-contact,
.body-product-form-check .box-contact {
  display: none;
}

.body-contact .footer,
.body-product-form .footer,
.body-product-form-completion .footer,
.body-product-form-check .footer {
  margin-top: 60px;
}

.body-contact .footer .footer-sitemap,
.body-product-form .footer .footer-sitemap,
.body-product-form-completion .footer .footer-sitemap,
.body-product-form-check .footer .footer-sitemap {
  padding-top: 40px;
}

/* edit_prart_bgroup.css */

/* =================================
Windows対応状況
================================= */
.txt-margin-01 {
  margin-bottom: 48px;
}

.grid-link-list-01 {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  width: 100%;
}

.grid-link-list-01 li {
  width: calc(50% - 12px);
  list-style: none;
  margin-bottom: 28PX;
}

.grid-link-list-01 li:nth-child(odd) {
  margin-right: 24px;
}

.grid-link-list-01 li a {
  display: block;
  width: 100%;
  height: 100%;
  z-index: 0;
  position: relative;
  text-decoration: none;
  color: #3d60af;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-01 li a span {
  font-size: 2.6rem;
  font-weight: bold;
  letter-spacing: 0.01em;
  border: solid 1px #3d60af;
  width: 100%;
  display: block;
  line-height: 1.4;
  position: relative;
  padding: 19px 0 19px 37px;
  box-sizing: border-box;
  background-color: #fff;
  vertical-align: middle;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-01 li a:before {
  display: block;
  content: "";
  background-color: #3d60af;
  width: 6px;
  height: 35px;
  position: absolute;
  left: 10px;
  top: calc(50% - 17px);
  z-index: 1;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-01 li a:after {
  display: block;
  content: "";
  background-color: #3d60af;
  width: calc(100% + 3px);
  height: 100%;
  position: absolute;
  left: 0px;
  top: 3px;
  z-index: -1;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-01 li a:hover span, .grid-link-list-01 li a:hover:before {
  transform: translate(-2px, -2px);
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-01 li a:hover:after {
  top: 5px;
  left: 2px;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

@media only screen and (max-width: 767px) {
  .txt-margin-01 {
    margin-bottom: 30px;
  }
  .grid-link-list-01 li {
    width: 100%;
    margin-bottom: 28PX;
  }
  .grid-link-list-01 li:nth-child(odd) {
    margin-right: 0px;
  }
  .grid-link-list-01 li a span {
    font-size: 1.5rem;
    letter-spacing: 0.01em;
    border: solid 1px #3d60af;
    width: 100%;
    display: block;
    position: relative;
    padding: 16px 0 16px 19px;
    box-sizing: border-box;
    background-color: #fff;
  }
  .grid-link-list-01 li a:before {
    width: 3px;
    height: 18px;
    top: calc(50% - 9px);
  }
}

.grid-link-list-02 {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  width: 100%;
  margin-bottom: 40px;
}

.grid-link-list-02 li {
  width: calc(50% - 12px);
  list-style: none;
  margin-bottom: 28PX;
}

.grid-link-list-02 li:nth-child(odd) {
  margin-right: 24px;
}

.grid-link-list-02 li a {
  display: block;
  width: 100%;
  height: 100%;
  z-index: 0;
  position: relative;
  text-decoration: none;
  color: #3d60af;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-02 li a span {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.01em;
  border: solid 1px #3d60af;
  width: 100%;
  display: block;
  line-height: 1.4;
  position: relative;
  padding: 19px 15px 19px 37px;
  box-sizing: border-box;
  background-color: #fff;
  vertical-align: middle;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  color: #3d60af;
  transform: translate(0px, 0px) rotate(0deg);
}

.grid-link-list-02 li a:before {
  display: block;
  content: "";
  background-color: #3d60af;
  width: 6px;
  height: 35px;
  position: absolute;
  left: 10px;
  top: calc(50% - 17px);
  z-index: 1;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  transform: translate(0px, 0px) rotate(0deg);
}

.grid-link-list-02 li a:after {
  display: block;
  content: "";
  background-color: #3d60af;
  width: calc(100% + 3px);
  height: 100%;
  position: absolute;
  left: 0px;
  top: 3px;
  z-index: -1;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-02 li a:hover {
  color: #3d60af;
}

.grid-link-list-02 li a:hover span, .grid-link-list-02 li a:hover:before {
  transform: translate(-2px, -2px) rotate(0deg);
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -webkit-backface-visibility: hidden;
}

.grid-link-list-02 li a:hover:after {
  top: 5px;
  left: 2px;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

@media only screen and (max-width: 767px) {
  .txt-margin-01 {
    margin-bottom: 30px;
  }
  .grid-link-list-02 li {
    width: 100%;
    margin-bottom: 28PX;
  }
  .grid-link-list-02 li:nth-child(odd) {
    margin-right: 0px;
  }
  .grid-link-list-02 li a span {
    font-size: 1.5rem;
    letter-spacing: 0.01em;
    border: solid 1px #3d60af;
    width: 100%;
    display: block;
    position: relative;
    padding: 16px 15px 16px 19px;
    box-sizing: border-box;
    background-color: #fff;
  }
  .grid-link-list-02 li a:before {
    width: 3px;
    height: 18px;
    top: calc(50% - 9px);
  }
}

.grid-bnr-list-01 {
  list-style: none;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
}

.grid-bnr-list-01 li {
  width: calc(33.33333% - 20px);
}

.grid-bnr-list-01 li:first-child, .grid-bnr-list-01 li:nth-child(2) {
  margin-right: 30px;
}

.grid-bnr-list-01 li a {
  display: block;
}

.grid-bnr-list-01 li a img {
  width: 100%;
  height: auto;
}

@media only screen and (max-width: 767px) {
  .grid-bnr-list-01 {
    display: block;
  }
  .grid-bnr-list-01 li {
    width: 100%;
    margin-bottom: 30px;
  }
  .grid-bnr-list-01 li:first-child, .grid-bnr-list-01 li:nth-child(2) {
    margin-right: 0;
  }
}

/* =================================
製品情報
================================= */
.ttl-products-level-02 {
  margin: 0px 0 50px 0;
  padding: 11px 20px;
  background: #3d60af;
  font-weight: bold;
  font-size: 3rem;
  line-height: 1.3;
  color: #fff;
}

@media only screen and (max-width: 767px) {
  .ttl-products-level-02 {
    margin-bottom: 30px;
    margin: 0px -20px 20px;
    padding-left: 20px;
    padding-right: 20px;
    font-size: 1.6rem;
  }
}

.grid-products-01 {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 110px;
}

@media only screen and (max-width: 767px) {
  .grid-products-01 {
    margin-bottom: 78px;
  }
}

.grid-products-01 .box-products-01 {
  width: 50%;
  box-sizing: border-box;
  margin-bottom: 80px;
}

@media only screen and (max-width: 767px) {
  .grid-products-01 .box-products-01 {
    width: 100%;
    margin-bottom: 0px;
  }
  .grid-products-01 .box-products-01:last-child {
    border-bottom: solid 1px #3d60af;
  }
}

.grid-products-01 .box-products-01 dt {
  font-size: 2.0rem;
  line-height: 1.5;
  font-weight: bold;
  color: #3d60af;
  position: relative;
  padding-left: 21px;
  box-sizing: border-box;
  margin-bottom: 10px;
}

.grid-products-01 .box-products-01 dt .ico-products-01 {
  display: none;
}

@media only screen and (max-width: 767px) {
  .grid-products-01 .box-products-01 dt .ico-products-01 {
    position: absolute;
    width: 18px;
    height: 18px;
    content: "";
    display: block;
    top: calc(50% - 9px);
    right: 20px;
    margin-bottom: 0;
  }
  .grid-products-01 .box-products-01 dt .ico-products-01 i {
    position: relative;
    width: 100%;
    height: 100%;
    background-color: #3d60af;
    content: "";
    display: block;
    text-indent: -99999999px;
  }
  .grid-products-01 .box-products-01 dt .ico-products-01 i:before {
    position: absolute;
    width: 10px;
    height: 2px;
    background-color: #fff;
    content: "";
    display: block;
    top: 8px;
    left: 0;
    right: 0;
    margin: auto;
  }
  .grid-products-01 .box-products-01 dt .ico-products-01 i:after {
    position: absolute;
    width: 2px;
    height: 10px;
    background-color: #fff;
    content: "";
    display: block;
    top: 4px;
    left: 0;
    right: 0;
    margin: auto;
  }
}

.grid-products-01 .box-products-01 dt:before {
  position: absolute;
  left: 0;
  top: 0;
  content: "";
  display: block;
  width: 6px;
  height: 29px;
  background-color: #3d60af;
}

@media only screen and (max-width: 767px) {
  .grid-products-01 .box-products-01 dt {
    border-top: solid 1px #3d60af;
    padding: 17px 0;
    box-sizing: border-box;
    font-size: 1.5rem;
    margin-bottom: 0;
  }
  .grid-products-01 .box-products-01 dt:before {
    display: none;
  }
}

.grid-products-01 .box-products-01 .active-product-01 {
  border-bottom: solid 1px #3d60af;
}

.grid-products-01 .box-products-01 .active-product-01 .ico-products-01 i:after {
  display: none;
}

@media only screen and (max-width: 767px) {
  .grid-products-01 .box-products-01 dd .link-products-01:last-child {
    border-bottom: none;
  }
}

.grid-products-01 .box-products-01 dd .link-products-01 {
  display: flex;
  align-items: center;
  margin-bottom: 4px;
}

@media only screen and (max-width: 767px) {
  .grid-products-01 .box-products-01 dd .link-products-01 {
    display: block;
    position: relative;
    box-sizing: border-box;
    line-height: 1.5;
    padding: 21px 15px;
    border-bottom: solid 1px #3d60af;
    margin-bottom: 0;
  }
}

.grid-products-01 .box-products-01 dd .link-products-01 .icon-arrow {
  color: #3d60af;
  font-size: 10px;
  margin-right: 15px;
}

@media only screen and (max-width: 767px) {
  .grid-products-01 .box-products-01 dd .link-products-01 .icon-arrow {
    position: absolute;
    left: 0;
    top: 26px;
  }
}

.grid-products-01 .box-products-01 dd .link-products-01 a {
  font-size: 1.8rem;
  text-decoration: none;
}

.grid-products-01 .box-products-01 dd .link-products-01 a:hover {
  text-decoration: underline;
}

@media only screen and (max-width: 767px) {
  .grid-products-01 .box-products-01 dd .link-products-01 a {
    font-size: 1.5rem;
  }
}

.grid-products-02 {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 190px;
}

@media only screen and (max-width: 767px) {
  .grid-products-02 {
    display: block;
    margin-bottom: 78px;
  }
}

.grid-products-02 li {
  display: flex;
  align-items: center;
  margin-bottom: 4px;
  width: 33.3333333%;
}

@media only screen and (max-width: 767px) {
  .grid-products-02 li {
    border-bottom: solid 1px #3d60af;
    margin-bottom: 0;
    width: 100%;
  }
  .grid-products-02 li:first-child {
    border-top: solid 1px #3d60af;
  }
}

.grid-products-02 li .icon-arrow {
  color: #3d60af;
  font-size: 10px;
  margin-right: 15px;
}

.grid-products-02 li a {
  font-size: 1.8rem;
  text-decoration:none;
}
.grid-products-02 li a:hover {
  text-decoration:underline;
}


@media only screen and (max-width: 767px) {
  .grid-products-02 li a {
    font-size: 1.5rem;
    padding: 13px 0;
  }
}

.grid-products-listbox-01 {
  border-bottom: solid 1px #e0e5f2;
  text-decoration:none;
  padding: 35px;
  box-sizing: border-box;
  position: relative;
  display: block;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

@media only screen and (max-width: 767px) {
  .grid-products-listbox-01 {
    border: none;
    padding: 25px 0;
  }
}

.grid-products-listbox-01:hover {
  cursor: pointer;
  background-color: #eefafa;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

@media only screen and (max-width: 767px) {
  .grid-products-listbox-01:hover {
    background-color: #fff;
  }
}

.grid-products-listbox-01:hover .icon-arrow {
  transform: translateX(20px);
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-products-listbox-01:first-child {
  border-top: solid 1px #e0e5f2;
}

@media only screen and (max-width: 767px) {
  .grid-products-listbox-01:first-child {
    border: none;
  }
}

.grid-products-listbox-01 .box-products-listbox-inner-01 {
  display: flex;
  align-items: center;
  margin-bottom: 26px;
}

@media only screen and (max-width: 767px) {
  .grid-products-listbox-01 .box-products-listbox-inner-01 {
    display: block;
    margin-bottom: 13px;
  }
}

.grid-products-listbox-01 .box-products-listbox-inner-01 .tag-products-listbox-01 {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.5;
  color: #d52a2a;
  margin-right: 10px;
}

@media only screen and (max-width: 767px) {
  .grid-products-listbox-01 .box-products-listbox-inner-01 .tag-products-listbox-01 {
    margin-left: 0;
    font-size: 1.5rem;
  }
}


.grid-products-listbox-01 .box-products-listbox-inner-01 .tag-products-listbox-02 {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.5;
  color: #666666;
  margin-right: 10px;
}

@media only screen and (max-width: 767px) {
  .grid-products-listbox-01 .box-products-listbox-inner-01 .tag-products-listbox-02 {
    margin-left: 0;
    font-size: 1.5rem;
  }
}


.grid-products-listbox-01 .box-products-listbox-inner-01 .ttl-products-listbox-01 {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.5;
  color: #3d60af;
  margin-right: 10px;
}

@media only screen and (max-width: 767px) {
  .grid-products-listbox-01 .box-products-listbox-inner-01 .ttl-products-listbox-01 {
    margin-left: 0;
    font-size: 1.5rem;
  }
}

.grid-products-listbox-01 .box-products-listbox-inner-01 .txt-products-listbox-01 {
  font-size: 1.4rem;
  background-color: #3d60af;
  color: #fff;
  line-height: 1.5;
  line-height: 28px;
  height: 28px;
  padding: 0 12px 0 12px;
  box-sizing: border-box;
}

@media only screen and (max-width: 767px) {
  .grid-products-listbox-01 .box-products-listbox-inner-01 .txt-products-listbox-01 {
    display: inline-block;
    font-size: 1rem;
  }
}

.grid-products-listbox-01 .box-products-listbox-inner-02 {
  display: flex;
}

@media only screen and (max-width: 767px) {
  .grid-products-listbox-01 .box-products-listbox-inner-02 {
    display: block;
    position: relative;
    min-height: 90px;
  }
}

.grid-products-listbox-01 .box-products-listbox-inner-02 .box-products-listbox-inner-03 {
  width: 240px;
  margin-right: 30px;
}

@media only screen and (max-width: 767px) {
  .grid-products-listbox-01 .box-products-listbox-inner-02 .box-products-listbox-inner-03 {
    width: 90px;
    margin-right: 10px;
    position: absolute;
    top: 0;
    left: 0;
  }
}

.grid-products-listbox-01 .box-products-listbox-inner-02 .box-products-listbox-inner-03 img {
  width: 100%;
  height: auto;
}

.grid-products-listbox-01 .box-products-listbox-inner-02 .box-products-listbox-inner-04 {
  width: 370px;
  margin-right: 90px;
  padding-top: 20px;
}

@media only screen and (max-width: 767px) {
  .grid-products-listbox-01 .box-products-listbox-inner-02 .box-products-listbox-inner-04 {
    width: calc(100% - 100px);
    padding: 0;
    margin: 0 0 0 100px;
  }
}

.grid-products-listbox-01 .box-products-listbox-inner-02 .box-products-listbox-inner-04 dl dt {
  color: #8f9093;
  margin-bottom: 2px;
}

@media only screen and (max-width: 767px) {
  .grid-products-listbox-01 .box-products-listbox-inner-02 .box-products-listbox-inner-04 dl dt {
    display: none;
  }
}

.grid-products-listbox-01 .box-products-listbox-inner-02 .box-products-listbox-inner-04 dl dd {
  line-height: 1.5;
  color:#000000;
}

.grid-products-listbox-01 .box-products-listbox-inner-02 .box-products-listbox-inner-05 {
  width: 120px;
  margin-right: 70px;
  padding-top: 20px;
}

@media only screen and (max-width: 767px) {
  .grid-products-listbox-01 .box-products-listbox-inner-02 .box-products-listbox-inner-05 {
    width: calc(100% - 100px);
    padding: 0;
    margin: 0 0 0 100px;
  }
}

.grid-products-listbox-01 .box-products-listbox-inner-02 .box-products-listbox-inner-05 dl dt {
  color: #8f9093;
  margin-bottom: 2px;
}

@media only screen and (max-width: 767px) {
  .grid-products-listbox-01 .box-products-listbox-inner-02 .box-products-listbox-inner-05 dl dt {
    display: none;
  }
}

.grid-products-listbox-01 .box-products-listbox-inner-02 .box-products-listbox-inner-05 dl dd {
  line-height: 1.5;
  font-weight: bold;
  color:#000000;
}

.grid-products-listbox-01 .box-products-listbox-inner-02 .icon-arrow {
  position: absolute;
  right: 50px;
  top: calc(50% - 10px);
  font-size: 13px;
  color: #3d60af;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  line-height: 1.5;
}

@media only screen and (max-width: 767px) {
  .grid-products-listbox-01 .box-products-listbox-inner-02 .icon-arrow {
    display: none;
  }
}

.grid-products-04 {
  margin: 80px 0 246px 0;
}

@media only screen and (max-width: 767px) {
  .grid-products-04 {
    margin: 40px 0 123px 0;
  }
}

.price-wrap-for-products-listboxt {
  width: 300px;
  display: block;
}

/* =================================
市場カテゴリ別製品一覧
================================= */
.img-product-list-01 {
  padding: 27px 0 30px 0;
}

@media only screen and (max-width: 767px) {
  .img-product-list-01 {
    padding: 0 0 12px 0;
  }
}

.txt-productlist-01 {
  margin-bottom: 57px;
}

@media only screen and (max-width: 767px) {
  .txt-productlist-01 {
    margin-bottom: 10px;
  }
}

.grid-products-list-01 {
  margin-bottom: 250px;
}

@media only screen and (max-width: 767px) {
  .grid-products-list-01 {
    margin-bottom: 125px;
  }
}

/* =================================
製品カテゴリ一覧
================================= */
.contents-products-list {
  width: 100%;
  padding: 0;
  box-sizing: border-box;
  overflow: hidden;
}

.contents-products-list .contents-main-wide {
  width: 100%;
  min-height: 0%;
  box-sizing: border-box;
}

.contents-products-list .contents-products-list-inner01 {
  width: 1200px;
  padding: 0 15px;
  box-sizing: border-box;
  margin: 0 auto;
}

@media only screen and (max-width: 767px) {
  .contents-products-list .contents-products-list-inner01 {
    width: 100%;
  }
  .contents-products-list .contents-products-list-inner01 .box-contact {
    box-sizing: border-box;
  }
}

/* 製品カテゴリ一覧スライダー*/
.hero-product-list {
  position: relative;
  height: 800px;
  overflow: hidden;
}

.hero-product-list .hero-product-list-slider {
  position: absolute;
  width: 1920px;
  height: 800px;
  left: 50%;
  top: 0;
  margin-left: -960px;
  z-index: 0;
}

.hero-product-list-main {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 600px;
  height: 360px;
  color: #fff;
}

.hero-product-list-text {
  margin: 58px 15px 73px;
  text-align: justify;
  font-size: 1.7rem;
}

.hero-product-list-button {
  width: 427px;
  margin-left: auto;
  margin-right: auto;
}

.hero-product-list-link {
  position: relative;
  display: block;
  padding-top: 16px;
  padding-bottom: 16px;
  border: 2px solid #fff;
  text-decoration: none;
  text-align: center;
  font-size: 1.8rem;
  color: #fff;
  transition: 0.3s background, 0.3s border;
}

.hero-product-list-link:hover {
  background: #3d60af;
  border-color: #3d60af;
}

.hero-product-list-link::after {
  position: absolute;
  top: 29px;
  right: 29px;
  content: '';
  display: inline-block;
  width: 9px;
  height: 14px;
  background: url(/image/jp2/common/ico_arrow_01.svg) no-repeat;
  background-size: cover;
  transition: 0.3s transform;
}

.hero-product-list-link:hover::after {
  transform: translateX(5px);
}

.hiro-product-list-controller {
  position: absolute;
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%);
}

.hiro-product-list-controller li {
  display: inline-block;
  width: 12px;
  height: 12px;
  margin: 0 9px;
  overflow: hidden;
  background: #fff;
  border-radius: 6px;
  font-size: 0;
  line-height: 100;
  transition: 0.3s background;
  cursor: pointer;
}

.hiro-product-list-controller li.hiro-product-list-controller-item-active {
  background: #3d60af;
}

.hiro-product-list-prev,
.hiro-product-list-next {
  position: absolute;
  top: calc(50% - 17px);
  width: 18px;
  height: 34px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 18px 34px;
  color: transparent;
  cursor: pointer;
  user-select: none;
  transition: 0.3s background;
}

.hiro-product-list-prev {
  left: 25px;
  background-image: url(/image/jp2/products/ico_product_list_01.png);
}

.hiro-product-list-next {
  right: 25px;
  background-image: url(/image/jp2/products/ico_product_list_02.png);
}

.hiro-product-list-prev:hover,
.hiro-product-list-next:hover {
  opacity: 1;
}

@media (max-width: 767px) {
  .hero-product-list {
    z-index: 0;
    width: 100%;
    height: auto;
  }
  .hero-product-list .hero-product-list-slider {
    position: static !important;
    width: 100%;
    margin-left: 0;
    left: 0;
    height: auto;
  }
  .hero-product-list .hero-product-list-slider .cycle-slide {
    min-height: 0%;
  }
  .hero-product-list .hero-product-list-slider .cycle-slide a img {
    width: 100%;
    height: auto;
  }
  .hiro-product-list-prev {
    left: 15px;
    z-index: 100;
  }
  .hiro-product-list-next {
    right: 15px;
    z-index: 100;
  }
  .hiro-product-list-controller {
    bottom: 5px;
    z-index: 100;
  }
  .hiro-product-list-controller li {
    display: inline-block;
    width: 6px;
    height: 6px;
    margin: 0 4px;
    overflow: hidden;
    background: #fff;
    border-radius: 3px;
    font-size: 0;
    line-height: 100;
    transition: 0.3s background;
    cursor: pointer;
  }
}

.grid-products-list-01 {
  margin-bottom: 120px;
}

@media only screen and (max-width: 767px) {
  .grid-products-list-01 {
    margin-bottom: 60px;
  }
}

.grid-products-list-02 {
  margin-bottom: 70px;
}

@media only screen and (max-width: 767px) {
  .grid-products-list-02 {
    margin-bottom: 35px;
  }
}

/* =================================
アカデミックプライス | 製品情報
================================= */
.gird-academic-01 .ttl-level-01 {
  margin-bottom: 35px;
}

@media only screen and (max-width: 767px) {
  .gird-academic-01 .ttl-level-01 {
    margin-bottom: 25px;
  }
}

.gird-academic-01 .img-academic-01 {
  margin-bottom: 80px;
}

@media only screen and (max-width: 767px) {
  .gird-academic-01 .img-academic-01 {
    margin-bottom: 42px;
  }
}

.gird-academic-01 .ttl-level-02 {
  margin-bottom: 48px;
}

@media only screen and (max-width: 767px) {
  .gird-academic-01 .ttl-level-02 {
    margin-bottom: 28;
  }
}

.gird-academic-01 .ttl-academic-h3-01 {
  margin-bottom: 18px;
}

@media only screen and (max-width: 767px) {
  .gird-academic-01 .ttl-academic-h3-01 {
    margin-bottom: 6px;
  }
}

.gird-academic-01 .grid-product-form-01 {
  margin-bottom: 148px;
}

@media only screen and (max-width: 767px) {
  .gird-academic-01 .grid-product-form-01 {
    margin-bottom: 60px;
  }
}

.gird-academic-01 .list-number {
  margin-bottom: 33px;
}

@media only screen and (max-width: 767px) {
  .gird-academic-01 .list-number {
    margin-bottom: 30px;
  }
  .gird-academic-01 .list-number li {
    color: #000;
  }
}

.gird-academic-01 .txt-academic-02 {
  margin-bottom: 15px;
}

.gird-academic-01 .link-cmn-icon-wrap {
  margin-bottom: 18px;
}

@media only screen and (max-width: 767px) {
  .gird-academic-01 .link-cmn-icon-wrap {
    margin-bottom: 10px;
  }
}

.gird-academic-01 .txt-academic-03 {
  margin-bottom: 130px;
}

@media only screen and (max-width: 767px) {
  .gird-academic-01 .txt-academic-03 {
    margin-bottom: 70px;
  }
}

.gird-academic-01 .txt-academic-right-01 {
  text-align: right;
}

.gird-academic-01 .table-cmn-wrap table thead tr th:first-child {
  min-width: 284px;
}

.ttl-academic-h3-01 {
  font-size: 1.8rem;
  line-height: 1.4;
  color: #3d60af;
  position: relative;
  padding-left: 20px;
  box-sizing: border-box;
  padding-right: 15px;
  text-align: left;
  padding-top: 3px;
}

.ttl-academic-h3-01:before {
  content: "";
  display: block;
  position: absolute;
  background-color: #3d60af;
  left: 0;
  top: 0;
  width: 6px;
  height: 29px;
}

.txt-academic-01 {
  color: #646c7f;
  font-size: 1.4rem;
}

.table-academic-cmn-wrap table thead tr th, .table-academic-cmn-wrap table thead tr td {
  text-align: center;
}

.icon-arrow {
  text-rendering: optimizeLegibility;
}



/* =================================
20190530追加
================================= */
@media (min-width: 768px) {
    .ttl-level-03 {
        font-size: 2rem;
    }
    
    #products body{
        width: 100%;
        min-width: 100%;
    }
    #products .contents{
        max-width: 1200px;
        width: 100%;
    }
    .contents.contents-products-list{
        width: 100%;
    }
    .contents-main.contents-main-wide{
        width: 100%;
        max-width: 1200px;
        margin-left: auto;
        margin-right: auto;
    }
    .contents-products-list-inner01{
        width: 100%;
    }
    .contents-products-list .contents-products-list-inner01{
        width: 100%;
        padding: 0 15px;
        box-sizing: border-box;
        margin: 0 auto;
    }
    .ttl-level-01{
        font-size: 3.0rem
    }
    #products .contents .form-cmn-item {
        margin-top: 60px;
    }
    #products .contents .btn-cmn-basic02 {
        font-size: 1.8rem;
        font-weight: bold;
        color: #fff;
        transition: 0.3s background;
        cursor: pointer;
    }
    .grid-products-listbox-01 .box-products-listbox-inner-02 .box-products-listbox-inner-03 {
        width: 150px;
        margin-right: 60px;
    }
    .grid-products-listbox-01 {
        padding: 20px 10px 10px 40px;
    }
    .grid-products-listbox-01 .box-products-listbox-inner-01 {
        margin-bottom: 10px;
    }
    .grid-products-list-01 {
        margin-bottom: 20px;
    }
    .grid-products-listbox-01 .box-products-listbox-inner-01 .tag-products-listbox-01 {
        font-size: 1.8rem;
    }
    .grid-products-listbox-01 .box-products-listbox-inner-01 .ttl-products-listbox-01 {
        font-size: 1.8rem;
    }
    .grid-products-listbox-01 .box-products-listbox-inner-01 .txt-products-listbox-01 {
        font-size: 1.3rem;
        line-height: 1.3;
        line-height: 26px;
        height: 26px;
        padding: 0 10px 0 10px;
        box-sizing: border-box;
    }

    
    
    .products-detail-main .title-products-main {
        line-height: 1.3;
    }
    .products-detail-main-image {
        margin-top: -10px;
        margin-bottom: 10px;
    }
    .title-products {
        margin-bottom: 0px;
    }
    .title-products-main {
        font-size: 3.0rem;
    }
    .title-products-text {
        margin-top: 30px;
        font-size: 1.6rem;
    }
    .list-products-icon-item {
        margin-left: 25px;
        font-size: 1.2rem;
    }
    
    
    
    .table-cmn-basic02 tbody th {
        font-size: 1.6rem;
        line-height: 1.6;
    }
    .table-products-price thead th {
        font-size: 1.6rem;
        line-height: 1.6;
    }
/*20190820 hioki*/
    .products-tabs-wrap .form-cmn-select {
        width: 90%;
        margin-right: auto;
        margin-left: auto;
        display: block;
        padding: 10px 9px;
        height: 50px;
        background: #eee;
    }


    .list-products-option {
        margin-top: 0px;
    }
    .list-products-option-item {
        display: flex;
        flex-wrap: wrap;
        padding: 10px 30px 10px;
    }
    .list-products-option-title {
        margin-bottom: 0px;
        font-size: 1.6rem;
    }
    
    /* 製品詳細 */
    #products body {
       overflow-x: hidden;
       /* IE6対策 */
       position: relative;
    }
    #nav-products-wrapper {
        position: relative;
        margin-right: -100%;
        margin-left: -100%;
        padding-right: 100%;
        padding-left: 100%;
        background: #eee;
        border-top: 5px solid #eee;
    }
    .nav-products-header {
        position: relative;
        top: 0px;
        left: 0;
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        height: 50px;
        padding-left: 35px;
        padding-right: 7px;
        background: #eee;
        z-index: 10;
        margin-top: 0px;
        margin-bottom: 40px;
        transition: 0.3s;
    }

    .nav-products-header a{
        color: #333;
    }
    .nav-products-header-title{
        display: none;
    }
    .nav-products-header.fix {
        position: fixed;
        top: 50px;
        max-width: 100vw;
        background: #2b447c;
        margin-top: 0px;
        border-top: 3px solid #2a467b;
    }
    .nav-products-header.fix a{
        color: #fff;
    }
    .nav-products-header.fix .nav-products-header-title a{
        color: #fff!important;
    }
    .ui-state-active{
        background: #fff;
    }
    .ui-state-active a{
        color: #333;
    }
    .nav-products-header.fix .ui-state-active{
        background: #fff;
    }
    .nav-products-header.fix .ui-state-active a{
        color: #2a467b;
    }
}

@media (max-width: 1048px) and (min-width: 768px) {
    .title-products-main {
        font-size: 3.0rem;
    }
    .title-products-text {
        margin-top: 30px;
        font-size: 1.6rem;
        line-height: 1.7;
    }
    .products-detail-main-col02 {
        font-size: 1.5rem;
        line-height: 1.7;
    }
    .cmn-frame-wrapper {
        position: relative;
        width: 384px;
        height: 0;
        padding-top: 56.25%;
    }
    .grid-cmn-image-right p img{
        width: 384px;
        height: auto;
    }
}

/*20230720 hioki*/
.contents-main p+p{
  margin-top: 40px;
}
.contents-main small{
  display: block;
}


/* =================================
お知らせ
================================= */
.gird-infomation-list-01 .article-information-list-01 {
  border-bottom: solid 1px #778fc7;
  padding: 15px 0;
}

.gird-infomation-list-01 .article-information-list-01:first-child {
  border-top: solid 1px #778fc7;
}

.gird-infomation-list-01 .article-information-list-01 .box-information-list-02 {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 16px;
}

.gird-infomation-list-01 .article-information-list-01 .box-information-list-02 p:first-child {
  font-size: 1.1rem;
  color: #686161;
  margin-right: 30px;
}

@media only screen and (max-width: 767px) {
  .gird-infomation-list-01 .article-information-list-01 .box-information-list-02 p:first-child {
    margin-right: 22px;
  }
}

.gird-infomation-list-01 .article-information-list-01 .box-information-list-02 p:nth-child(2) {
  font-size: 1.3rem;
  background-color: #3d60af;
  color: #fff;
  height: 26px;
  line-height: 26px;
  min-width: 130px;
  padding: 0 30px;
  box-sizing: border-box;
}

.gird-infomation-list-01 .article-information-list-01 a {
  display: block;
  line-height: 1.6;
  color: #061536;
  text-decoration: none;
}

.gird-infomation-list-01 .article-information-list-01 a:hover {
  text-decoration:underline;
}

.gird-infomation-list-01 .box-information-list-03 {
  margin-top: 55px;
}

.box-information-list-03 {
  display: flex;
  justify-content: center;
}

.box-information-list-03 .pager-infomation-list-01 {
  display: flex;
  align-items: center;
}

.box-information-list-03 .pager-infomation-list-01 li {
  list-style: none;
}

.box-information-list-03 .pager-infomation-list-01 li a, .box-information-list-03 .pager-infomation-list-01 li span {
  font-size: 2rem;
  text-decoration: none;
  padding-left: 10px;
  padding-right: 10px;
  display: block;
  margin-bottom: 12px;
}

@media only screen and (max-width: 767px) {
  .box-information-list-03 .pager-infomation-list-01 li a, .box-information-list-03 .pager-infomation-list-01 li span {
    font-size: 1.6rem;
  }
}

.box-information-list-03 .pager-infomation-list-01 li a:hover, .box-information-list-03 .pager-infomation-list-01 li span:hover {
  opacity: 0.6;
}

.box-information-list-03 .pager-infomation-list-01 li a img, .box-information-list-03 .pager-infomation-list-01 li span img {
  display: block;
  width: 11px;
  height: auto;
}

.box-information-list-03 .pager-infomation-list-01 .active a, .box-information-list-03 .pager-infomation-list-01 .active span {
  color: #000;
  position: relative;
}

.box-information-list-03 .pager-infomation-list-01 .active a:after, .box-information-list-03 .pager-infomation-list-01 .active span:after {
  content: "";
  display: block;
  width: 13px;
  height: 2px;
  background-color: #3d60af;
  bottom: 0px;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
}

.box-information-list-03 .pager-infomation-list-01 .active a:hover, .box-information-list-03 .pager-infomation-list-01 .active span:hover {
  opacity: 1;
}

.grid-contents-sub-information {
  display: none;
}

@media only screen and (max-width: 767px) {
  .grid-contents-sub-information {
    display: block;
    padding-top: 60px;
  }
  .grid-contents-sub-information .contents-sub-information .nav-local-list .nav-local-list-item {
    width: 100%;
    border: solid 1px #c0e0e0;
    border-bottom: none;
  }
  .grid-contents-sub-information .contents-sub-information .nav-local-list .nav-local-list-item:last-child {
    border-bottom: solid 1px #c0e0e0;
  }
}

/* =================================
サポート情報
================================= */
.grid-support-list-01 .txt-support-list-01 {
  margin-bottom: 90px;
}

@media only screen and (max-width: 767px) {
  .grid-support-list-01 .txt-support-list-01 {
    margin-bottom: 45px;
  }
}

.grid-support-list-01 .grid-contact-list-01 li a .bnr-contact-01 {
  /*background-color: #f1f4f4;*/
}

/* =================================
e-友マイページ（ログイン）
================================= */
@media (min-width: 768px) {
  .grid-mypage-login-01{
    display:flex;
    justify-content:space-between;
  }
}


.grid-mypage-login-01 .ttl-level-01 {
  margin-bottom: 70px;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-login-01 .ttl-level-01 {
    margin-bottom: 27px;
  }
}

.grid-mypage-login-01 .box-mypage-login-01 {
  background-color: #edf5f5;
  padding: 28px 40px;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  margin-bottom: 46px;
  width:calc( 50% - 10px );
}

@media only screen and (max-width: 767px) {
  .grid-mypage-login-01 .box-mypage-login-01 {
    padding: 30px;
    width:100%;
  }
}

.grid-mypage-login-01 .box-mypage-login-01 .box-mypage-login-inner-01 {
  max-width: 660px;
  width: 100%;
}

.grid-mypage-login-01 .box-mypage-login-01 .box-mypage-login-inner-01 .box-mypage-login-04 {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-bottom: 20px;
}

.box-mypage-login-05 {
  display: flex;
  flex-direction: row;
  justify-content: center;
}

.box-mypage-login-05 .box-mypage-login-inner-05 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}

.box-mypage-login-05 .box-mypage-login-inner-05 a {
  position: relative;
  display: block;
  position: relative;
  padding-left: 12px;
  margin-bottom: 5px;
  line-height: 1.4;
  font-size: 1.4rem;
}
/*
.box-mypage-login-05 .box-mypage-login-inner-05 a:before {
  position: absolute;
  background-image: url(/image/jp2/SVG/ico_arrow_05.svg);
  width: 6px;
  height: 9px;
  background-size: 6px 9px;
  content: "";
  top: 4px;
  left: 0;
}
*/
.box-mypage-login-03 {
  display: block;
  align-items: center;
  padding: 0px;
  box-sizing: border-box;
}

.box-mypage-login-03:first-child {
  margin-bottom: 10px;
}

@media only screen and (max-width: 767px) {
  .box-mypage-login-03:first-child {
    margin-bottom: 0;
  }
  .box-mypage-login-03:first-child .form-cmn-input-text {
    border-bottom: none;
  }
}

.box-mypage-login-03:nth-child(2) {
  margin-bottom: 10px;
}

.box-mypage-login-03 .form-cmn-item-title {
  font-size: 1.8rem;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .box-mypage-login-03 .form-cmn-item-title {
    display: none;
  }
}

.box-mypage-login-03 .form-mypage-login-01 {
  width: 100%;
}



.box-mypage-login-03 .txt-mypage-login-01 {
  width: initial;
  margin-left: 0px;
  color: initial;
  font-weight: initial;
  font-size: 1.4rem;
}

@media only screen and (max-width: 767px) {
  .box-mypage-login-03 .txt-mypage-login-01 {
    display: none;
  }
}

.txt-mypage-login-02 {
  text-align: left;
  margin-bottom: 20px;
  font-size: 1.4rem;
  color: #666;
}

@media only screen and (max-width: 767px) {
  .txt-mypage-login-02 {
    margin-bottom: 0;
  }
}

.txt-mypage-login-03 {
  text-align: left;
  margin-bottom: 20px;
}

@media only screen and (max-width: 767px) {
  .txt-mypage-login-03 {
    margin-bottom: 0;
  }
}

.ttl-mypage-login-levek-02 {
  font-size: 2.2rem;
  line-height: 1.4;
  color: #3d60af;
  text-align: center;
  font-weight: bold;
  margin-bottom:10px;
}

@media only screen and (max-width: 767px) {
  .ttl-mypage-login-levek-02 {
    font-size: 1.5rem;
    margin-bottom: 20px;
  }
}

.grid-mypage-login-02 {
  margin-bottom: 56px;
}

.grid-mypage-login-02 .ttl-level-02 {
  margin-bottom: 20px;
}

.grid-mypage-login-02 .box-mypage-login-06 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-login-02 .box-mypage-login-06 {
    display: block;
  }
}

.grid-mypage-login-02 .box-mypage-login-06 .box-mypage-login-07 {
  width: calc(50% - 10px);
  background-color: #edf5f5;
  padding: 28px 50px;
  box-sizing: border-box;
  margin-bottom: 20px;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-login-02 .box-mypage-login-06 .box-mypage-login-07 {
    padding: 18px 15px;
    width: 100%;
  }
}

.grid-mypage-login-02 .box-mypage-login-06 .box-mypage-login-07 h3 {
  font-size: 2.2rem;
  line-height: 1.4;
  color: #3d60af;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-login-02 .box-mypage-login-06 .box-mypage-login-07 h3 {
    font-size: 1.3rem;
  }
}

.grid-mypage-login-02 .box-mypage-login-06 .box-mypage-login-07 .grid-product-form-01 {
  padding-top: 2px;
}

.grid-mypage-login-02 .box-mypage-login-06 .box-mypage-login-07 a {
  color: #000;
}

.grid-mypage-login-03 h4 {
  margin-bottom: 10px;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.3;
  color: #3d60af;
  text-align: left;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-login-03 h4 {
    font-size: 1.5rem;
  }
}

.grid-mypage-login-03 h4:after {
  content: '';
  display: block;
  width: 100%;
  height: 2px;
  margin-top: 14px;
  background: #3d60af;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-login-03 h4:after {
    display: none;
  }
}

/* =================================
e-友マイページ 本登録
================================= */
.grid-main-registration-01 .box-main-registration-01 {
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    margin-bottom: 46px;  
}
.grid-main-registration-01 .box-main-registration-01 .box-main-registration-inner-01 {
    max-width: 660px;
    width: 100%;
}




@media only screen and (max-width: 767px) {
.grid-main-registration-01 .box-main-registration-01 {
    padding: 30px;
}
}


/* =================================
e-友マイページ
================================= */
.grid-mypage-01 {
  margin-bottom: 137px;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-01 {
    margin-bottom: 75px;
  }
}

.grid-mypage-01 .ttl-level-02 {
  margin-bottom: 50px;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-01 .ttl-level-02 {
    margin-bottom: 30px;
    background: none;
    color: #3d60af;
    font-size: 1.8rem;
  }
}

.grid-mypage-01 .box-information-list-03 {
  margin-top: 57px;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-01 .box-information-list-03 {
    margin-top: 40px;
  }
}

.grid-mypage-02 .article-mypage-01 {
  border-bottom: solid 1px #778fc7;
  padding: 20px 0;
  display: flex;
  align-items: center;
}

.grid-mypage-02 .article-mypage-01:first-child {
  border-top: solid 1px #778fc7;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-02 .article-mypage-01 {
    display: block;
  }
}

.grid-mypage-02 .article-mypage-01 .box-mypage-02 {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 220px;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-02 .article-mypage-01 .box-mypage-02 {
    width: 100%;
    margin-bottom: 15px;
  }
}

.grid-mypage-02 .article-mypage-01 .box-mypage-02 p:first-child {
  font-size: 1.1rem;
  color: #686161;
  margin-right: 30px;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-02 .article-mypage-01 .box-mypage-02 p:first-child {
    margin-right: 22px;
  }
}

.grid-mypage-02 .article-mypage-01 .box-mypage-02 p:nth-child(2) {
  font-size: 1.3rem;
  background-color: #3d60af;
  color: #fff;
  height: 26px;
  line-height: 26px;
  min-width: 130px;
  padding: 0 30px;
  box-sizing: border-box;
}

.grid-mypage-02 .article-mypage-01 a {
  display: block;
  line-height: 1.6;
  text-decoration: none;
  width: calc(100% - 220px);
  padding: 0 15px 0 40px;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-02 .article-mypage-01 a {
    padding: 0 15px 0 0px;
    width: 100%;
  }
}

.grid-mypage-02 .article-mypage-01 a:hover {
  opacity: 0.8;
}

.grid-mypage-02 .box-mypage-03 {
  margin-top: 55px;
}

.width-mypage-01 {
  min-width: 393px;
}

.grid-mypage-03 {
  padding-bottom: 100px;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-03 {
    padding-bottom: 50px;
  }
}

.grid-mypage-03 .ttl-level-02 {
  margin-bottom: 50px;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-03 .ttl-level-02 {
    margin-bottom: 35px;
  }
}

.grid-mypage-03 .ttl-mypage-level-03 {
  font-size: 2.2rem;
  color: #3d60af;
  line-height: 1.4;
  padding-left: 26px;
  position: relative;
  margin-bottom: 30px;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-03 .ttl-mypage-level-03 {
    font-size: 1.4rem;
    padding-left: 15px;
    margin-bottom: 16px;
  }
}

.grid-mypage-03 .ttl-mypage-level-03:before {
  position: absolute;
  width: 6px;
  height: 35px;
  content: "";
  display: block;
  background-color: #3d60af;
  top: -4px;
  left: 0;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-03 .ttl-mypage-level-03:before {
    width: 3px;
    height: 17px;
    top: 0;
  }
}

.grid-mypage-03 .table-cmn-wrap {
  margin-bottom: 50px;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-03 .table-cmn-wrap {
    margin-top: 0;
    margin-bottom: 0;
  }
}

.grid-mypage-03 .table-cmn-wrap table thead tr th, .grid-mypage-03 .table-cmn-wrap table thead tr td {
  text-align: center;
}

.grid-mypage-03 .table-cmn-wrap table tbody tr td {
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-04 .ttl-level-02 {
    margin-bottom: 30px;
    background: none;
    color: #3d60af;
    font-size: 1.8rem;
  }
}

.grid-mypage-04 .box-mypage-03 .box-mypage-04 {
  display: flex;
  align-items: center;
  border-bottom: solid 1px #3d60af;
  padding: 25px 0;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-04 .box-mypage-03 .box-mypage-04 {
    display: block;
    padding: 15px 0;
  }
}

.grid-mypage-04 .box-mypage-03 .box-mypage-04:first-child {
  border-top: solid 1px #3d60af;
}

.grid-mypage-04 .box-mypage-03 .box-mypage-04 .box-mypage-06 {
  width: 210px;
  padding-left: 40px;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-04 .box-mypage-03 .box-mypage-04 .box-mypage-06 {
    width: 100%;
    padding-left: 0;
    margin-bottom: 15px;
  }
}

.grid-mypage-04 .box-mypage-03 .box-mypage-04 .box-mypage-05 {
  width: calc(100% - 210px);
  line-height: 1.4;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-04 .box-mypage-03 .box-mypage-04 .box-mypage-05 {
    width: 100%;
  }
}

.grid-mypage-04 .box-mypage-03 .box-mypage-04 .box-mypage-05 dt a {
  margin-bottom: 5px;
  color: #061536;
  text-decoration: none;
}

.grid-mypage-04 .box-mypage-03 .box-mypage-04 .box-mypage-05 dt a:hover {
  text-decoration: underline;
}

.grid-mypage-04 .box-mypage-03 .box-mypage-04 .box-mypage-05 dd {
  font-size: 1.1rem;
  color: #686161;
}

.grid-mypage-04 .box-information-list-03 {
  margin-top: 55px;
}

@media only screen and (max-width: 767px) {
  .grid-mypage-04 .box-information-list-03 {
    margin-top: 40px;
  }
}

.tag-mypage-01 {
  width: 130px;
  height: 26px;
  background-color: #d52a2a;
  color: #fff;
  text-align: center;
  line-height: 26px;
  font-size: 1.3rem;
}

.tag-mypage-02 {
  width: 130px;
  height: 26px;
  background-color: #20a09c;
  color: #fff;
  text-align: center;
  line-height: 26px;
  font-size: 1.3rem;
}

.tag-mypage-03 {
  width: 130px;
  height: 26px;
  background-color: #bababa;
  color: #fff;
  text-align: center;
  line-height: 26px;
  font-size: 1.3rem;
}

.ico_swipe_01 {
  display: none;
}

@media only screen and (max-width: 767px) {
  .ico_swipe_01 {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 50px;
    margin-top: 10px;
  }
}

.ico_swipe_01 p {
  width: 34px;
}

.ico_swipe_01 p img {
  width: 100%;
  height: auto;
}

/* =================================
e-友マイページ 製品ユーザ登録・登録製品リスト
================================= */
.girid-mypage-registration-01 {
  margin-bottom: 77px;
}

@media only screen and (max-width: 767px) {
  .girid-mypage-registration-01 {
    margin-bottom: 60px;
  }
}

@media only screen and (max-width: 767px) {
  .girid-mypage-registration-01 .ttl-level-02 {
    font-size: 1.8rem;
    color: #3d60af;
    background-color: #fff;
    margin-bottom: 17px;
    padding: 0 20px;
  }
}

.girid-mypage-registration-01 p {
  margin-bottom: 11px;
}

@media only screen and (max-width: 767px) {
  .girid-mypage-registration-01 p {
    margin-bottom: 6px;
  }
}

.girid-mypage-registration-01 ul {
  margin-bottom: 20px;
}

@media only screen and (max-width: 767px) {
  .girid-mypage-registration-01 ul {
    margin-bottom: 10px;
  }
}

.girid-mypage-registration-02 {
  margin-bottom: 150px;
}

@media only screen and (max-width: 767px) {
  .girid-mypage-registration-02 {
    margin-bottom: 75px;
  }
}

.girid-mypage-registration-02 .box-mypage-registration-01 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-top: solid 2px #3d60af;
  border-bottom: solid 2px #3d60af;
  padding-bottom: 6px;
}

@media only screen and (max-width: 767px) {
  .girid-mypage-registration-02 .box-mypage-registration-01 {
    border-top: solid 1px #3d60af;
  }
}

.girid-mypage-registration-02 .box-mypage-registration-01 h2 {
  color: #3d60af;
  font-size: 3rem;
  line-height: 1.4;
  padding-left: 15px;
  padding-top: 9px;
}

@media only screen and (max-width: 767px) {
  .girid-mypage-registration-02 .box-mypage-registration-01 h2 {
    font-size: 1.5rem;
  }
}

.girid-mypage-registration-02 .box-mypage-registration-01 p {
  width: 36px;
  height: 36px;
  background-color: #3d60af;
  text-indent: -9999px;
  position: relative;
  margin: 3px 10px 0 0;
}

@media only screen and (max-width: 767px) {
  .girid-mypage-registration-02 .box-mypage-registration-01 p {
    width: 18px;
    height: 18px;
  }
}

.girid-mypage-registration-02 .box-mypage-registration-01 p:before {
  content: "";
  display: block;
  background-color: #fff;
  width: 16px;
  height: 4px;
  position: absolute;
  top: calc(50% - 2px);
  left: 0;
  right: 0;
  margin: auto;
}

@media only screen and (max-width: 767px) {
  .girid-mypage-registration-02 .box-mypage-registration-01 p:before {
    width: 8px;
    height: 2px;
    top: calc(50% - 1px);
  }
}

.girid-mypage-registration-02 .box-mypage-registration-01 p:after {
  content: "";
  display: block;
  background-color: #fff;
  width: 4px;
  height: 16px;
  position: absolute;
  top: calc(50% - 8px);
  left: 0;
  right: 0;
  margin: auto;
}

@media only screen and (max-width: 767px) {
  .girid-mypage-registration-02 .box-mypage-registration-01 p:after {
    width: 2px;
    height: 8px;
    top: calc(50% - 4px);
  }
}

.girid-mypage-registration-02 .box-mypage-registration-01 p:hover {
  cursor: pointer;
}

.girid-mypage-registration-02 .box-mypage-registration-01 .active-toggle-mypage-registration-01:after {
  display: none;
}

.girid-mypage-registration-02 .box-mypage-registration-submit {
  padding-top: 40px;
  display: flex;
  justify-content: center;
}

@media only screen and (max-width: 767px) {
  .girid-mypage-registration-02 .box-mypage-registration-submit {
    padding-top: 13px;
  }
}

.box-mypage-registration-02 {
  margin-bottom: 40px;
}

@media only screen and (max-width: 767px) {
  .box-mypage-registration-02 .table-cmn-basic03 tr th, .box-mypage-registration-02 .table-cmn-basic03 tr td {
    border: solid 1px #3d60af;
  }
}

@media only screen and (max-width: 767px) {
  .box-mypage-registration-02 .table-cmn-basic03 tr th {
    background-color: #3d60af;
    color: #fff;
    font-size: 1.3rem;
    padding: 6px 10px;
    box-sizing: border-box;
  }
}

.box-mypage-registration-02 .table-cmn-basic03 tr td .box-mypage-registration-03 .txt-mypage-registration-01 {
  margin-bottom: 5px;
}

.box-mypage-registration-02 .table-cmn-basic03 tr td .box-mypage-registration-03 .box-mypage-registration-04 {
  display: flex;
  justify-content: flex-start;
  margin-bottom: 5px;
}

@media only screen and (max-width: 767px) {
  .box-mypage-registration-02 .table-cmn-basic03 tr td .box-mypage-registration-03 .box-mypage-registration-04 {
    display: block;
  }
}

.box-mypage-registration-02 .table-cmn-basic03 tr td .box-mypage-registration-03 .box-mypage-registration-04 .form-cmn-input-text {
  max-width: 400px;
  margin-right: 20px;
  padding: 8px 15px;
}

@media only screen and (max-width: 767px) {
  .box-mypage-registration-02 .table-cmn-basic03 tr td .box-mypage-registration-03 .box-mypage-registration-04 .form-cmn-input-text {
    width: 100%;
    max-width: 100%;
    margin-bottom: 10px;
  }
}

.box-mypage-registration-02 .table-cmn-basic03 tr td .box-mypage-registration-03 .box-mypage-registration-04 .btn-mypage-registration-01 {
  width: 80px;
  height: 38px;
  font-size: 1.6rem;
  color: #fff;
  background-color: #3d60af;
  border: none;
}

.box-mypage-registration-02 .table-cmn-basic03 tr td .box-mypage-registration-03 .box-mypage-registration-04 .btn-mypage-registration-01:hover {
  background: #446cc8;
}

@media only screen and (max-width: 767px) {
  .box-mypage-registration-02 .table-cmn-basic03 tr td .box-mypage-registration-03 .box-mypage-registration-04 .btn-mypage-registration-01 {
    width: 100%;
  }
}

@media only screen and (max-width: 767px) {
  .box-mypage-registration-02 .table-cmn-basic03 tr td {
    padding: 15px 10px;
    box-sizing: border-box;
    background-color: #fff;
  }
}

.table-mypage-registration-basic03 {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  box-sizing: border-box;
}

.table-mypage-registration-basic03 thead {
  box-sizing: border-box;
}

.table-mypage-registration-basic03 thead tr {
  box-sizing: border-box;
}

.table-mypage-registration-basic03 thead tr th, .table-mypage-registration-basic03 thead tr td {
  border: solid 2px #3d60af;
  padding: 10px 12px;
  box-sizing: border-box;
  line-height: 1.4;
  vertical-align: middle;
}

.table-mypage-registration-basic03 thead tr th {
  background-color: #d8ecf0;
  border-bottom: none;
  color: #3d60af;
}

.table-mypage-registration-basic03 tbody tr {
  box-sizing: border-box;
}

.table-mypage-registration-basic03 tbody tr th, .table-mypage-registration-basic03 tbody tr td {
  border: solid 2px #3d60af;
  box-sizing: border-box;
  padding: 10px 12px;
  line-height: 1.4;
  vertical-align: middle;
}

.table-mypage-registration-basic03 tbody tr:first-child th, .table-mypage-registration-basic03 tbody tr:first-child td {
  border-top: none;
}

.table-mypage-registration-basic03 tbody tr th {
  text-align: left;
}

.table-mypage-registration-basic03 tbody tr td {
  text-align: center;
}

.table-mypage-registration-basic03 tbody .toggle-open-mypage-registration-01 .box-mypage-registration-04 {
  padding: 0;
}

.table-mypage-registration-basic03 tbody .toggle-open-mypage-registration-01 .box-mypage-registration-04 .table-mypage-registration-basic04 {
  width: 100%;
}

.table-mypage-registration-basic03 tbody .toggle-open-mypage-registration-01 .box-mypage-registration-04 .table-mypage-registration-basic04 tbody tr th {
  border-left: none;
  background-color: #d8ecf0;
  border-right: none;
  color: #3d60af;
}

.table-mypage-registration-basic03 tbody .toggle-open-mypage-registration-01 .box-mypage-registration-04 .table-mypage-registration-basic04 tbody tr td {
  border-right: none;
  border-left: none;
  text-align: left;
}

.table-mypage-registration-basic03 tbody .toggle-open-mypage-registration-01 .box-mypage-registration-04 .table-mypage-registration-basic04 tbody tr td input[type="text"] {
  max-width: 400px;
  padding: 8px 15px;
}

.table-mypage-registration-basic03 tbody .toggle-open-mypage-registration-01 .box-mypage-registration-04 .table-mypage-registration-basic04 tbody .td-mypage-registration-01 td {
  border-bottom: none;
}

.table-mypage-registration-basic03 tbody .toggle-open-mypage-registration-01 .box-mypage-registration-04 .table-mypage-registration-basic04 tbody .td-mypage-registration-01 td .form-cmn-submit p {
  width: 260px;
  margin: 0 20px;
}

.table-mypage-registration-basic03 tbody .toggle-open-mypage-registration-01 .box-mypage-registration-04 .table-mypage-registration-basic04 tbody .td-mypage-registration-01 td .form-cmn-submit p button {
  font-size: 1.6rem;
  padding: 11px 0;
}

@media only screen and (max-width: 767px) {
  .table-mypage-registration-basic03 tbody .toggle-open-mypage-registration-01 .box-mypage-registration-04 .table-mypage-registration-basic04 tbody .td-mypage-registration-01 td .form-cmn-submit p button {
    margin-bottom: 10px;
  }
}

.table-mypage-registration-basic03 tbody .toggle-open-mypage-registration-01 .box-mypage-registration-04 .table-mypage-registration-basic04 tbody .td-mypage-registration-01 td .form-cmn-submit p button:before {
  top: calc(50% - 7px);
}

@media only screen and (max-width: 767px) {
  .table-mypage-registration-basic03 tbody .toggle-open-mypage-registration-01 .box-mypage-registration-04 .table-mypage-registration-basic04 tbody .td-mypage-registration-01 td .form-cmn-submit p .btn-cmn-basic01:before {
    position: absolute;
    top: 13px;
    right: 30px;
    content: '';
    display: inline-block;
    width: 9px;
    height: 14px;
    background: url(/image/jp2/common/ico_arrow_01.svg) no-repeat;
    background-size: cover;
    transition: 0.3s transform;
  }
}

.toggle-btn_mypage-registration-01 {
  text-decoration: underline;
  color: #1e9bcf;
}

.toggle-btn_mypage-registration-01 i {
  font-style: normal;
}

.toggle-btn_mypage-registration-01 .toggle-btn_mypage-registration-plus {
  display: inline;
}

.toggle-btn_mypage-registration-01 .toggle-btn_mypage-registration-mainasu {
  display: none;
}

.toggle-btn_mypage-registration-01:hover {
  cursor: pointer;
  text-decoration: none;
}

.toggle-open-mypage-registration-01 {
  display: none;
}

@media only screen and (max-width: 767px) {
  .box-mypage-registration-05 {
    overflow-x: scroll;
  }
  .box-mypage-registration-05 table {
    width: 850px;
  }
}

.active-toggle-mypage-registration-02 i {
  font-style: normal;
}

.active-toggle-mypage-registration-02 .toggle-btn_mypage-registration-plus {
  display: none;
}

.active-toggle-mypage-registration-02 .toggle-btn_mypage-registration-mainasu {
  display: inline;
}

/* add 2019/11/22 */
.form-mypage-registration-edit-item-title{
  margin:20px auto 5px;
  color: #3d60af;
  font-weight:bolder;
}
/* end 2019/11/22 */ 

/* =================================
資料ダウンロード
================================= */
.grid-link-list-03 {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  width: 100%;
}

.grid-link-list-03 li {
  width: calc(50% - 12px);
  list-style: none;
  margin-bottom: 28PX;
  position: relative;
}

.grid-link-list-03 li:nth-child(odd) {
  margin-right: 24px;
}

.grid-link-list-03 li a {
  display: block;
  width: 100%;
  height: 100%;
  z-index: 0;
  position: relative;
  text-decoration: none;
  background-color: #fff;
  padding: 20px;
  border: solid 1px #3d60af;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-03 li a .ttl-support-library-01 {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.01em;
  color: #3d60af;
  width: 100%;
  display: block;
  line-height: 1.4;
  position: relative;
  padding: 0px 0 0px 20px;
  box-sizing: border-box;
  background-color: #fff;
  vertical-align: middle;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-03 li a .ttl-support-library-01:before {
  display: block;
  content: "";
  background-color: #3d60af;
  width: 6px;
  height: 35px;
  position: absolute;
  left: 0px;
  top: calc(50% - 17px);
  z-index: 1;
}

.grid-link-list-03 li a p {
  position: relative;
  color: #000;
  padding-left: 20px;
  box-sizing: border-box;
  line-height: 1.5;
  margin-top: 10px;
}

.grid-link-list-03 li:after {
  display: block;
  content: "";
  background-color: #3d60af;
  width: calc(100% + 3px);
  height: 100%;
  position: absolute;
  left: 0px;
  top: 3px;
  z-index: -1;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-03 li:hover a {
  transform: translate(-2px, -2px);
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-03 li:hover:after {
  top: 5px;
  left: 2px;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

@media only screen and (max-width: 767px) {
  .grid-link-list-03 li {
    width: 100%;
    margin-bottom: 28PX;
  }
  .grid-link-list-03 li:nth-child(odd) {
    margin-right: 0px;
  }
  .grid-link-list-03 li a .ttl-support-library-01 {
    font-size: 1.5rem;
    letter-spacing: 0.01em;
    width: 100%;
    display: block;
    position: relative;
    padding: 0px 10px 0px 10px;
    box-sizing: border-box;
    background-color: #fff;
  }
  .grid-link-list-03 li a .ttl-support-library-01:before {
    width: 3px;
    height: 18px;
    top: calc(50% - 9px);
  }
  .grid-link-list-03 li a p {
    padding-left: 10px;
    margin-top: 5px;
  }
}

/* =================================
アプリケーション・用途
================================= */
.grid-products-introduction-01 .ttl-level-01 {
  margin-bottom: 60px;
}

@media only screen and (max-width: 767px) {
  .grid-products-introduction-01 .ttl-level-01 {
    margin-bottom: 30px;
  }
}

.grid-products-introduction-02 {
  margin-bottom: 98px;
}

@media only screen and (max-width: 767px) {
  .grid-products-introduction-02 {
    margin-bottom: 70px;
  }
}

.grid-products-introduction-02 p {
  color: #3d60af;
  font-weight: bold;
  font-size: 1.8rem;
  margin-bottom: 8px;
}

@media only screen and (max-width: 767px) {
  .grid-products-introduction-02 p {
    font-size: 1.3rem;
    margin-bottom: 4px;
  }
}

.grid-products-introduction-02 .box-grid-products-introduction-01 {
  display: flex;
  justify-content: center;
}

@media only screen and (max-width: 767px) {
  .grid-products-introduction-02 .box-grid-products-introduction-01 {
    display: block;
  }
}

.grid-products-introduction-02 .box-grid-products-introduction-01 .form-cmn-input-text {
  width: calc(100% - 120px);
  box-sizing: border-box;
  height: 45px;
  line-height: 45px;
  padding: 0 15px;
}

@media only screen and (max-width: 767px) {
  .grid-products-introduction-02 .box-grid-products-introduction-01 .form-cmn-input-text {
    width: 100%;
    font-size: 1.6rem;
    margin-bottom: 30px;
  }
}

.grid-products-introduction-02 .box-grid-products-introduction-01 .submit-products-introduction-01 {
  width: 120px;
  height: 45px;
  background-color: #3d60af;
  color: #fff;
  line-height: 45px;
  letter-spacing: 0.2em;
  border: none;
  box-sizing: border-box;
}

@media only screen and (max-width: 767px) {
  .grid-products-introduction-02 .box-grid-products-introduction-01 .submit-products-introduction-01 {
    width: 100%;
  }
}

.grid-products-introduction-02 .box-grid-products-introduction-01 .submit-products-introduction-01:hover {
  background: #3157ad;
  cursor: pointer;
}

.grid-products-introduction-03 .box-grid-products-introduction-02 {
  display: flex;
  justify-content: space-between;
}

@media only screen and (max-width: 767px) {
  .grid-products-introduction-03 .box-grid-products-introduction-02 {
    flex-wrap: wrap;
  }
}

.grid-products-introduction-03 .box-grid-products-introduction-02 li {
  width: calc(25% - 12px);
  list-style: none;
  background-color: #3d60af;
  padding: 27px 18px;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

@media only screen and (max-width: 767px) {
  .grid-products-introduction-03 .box-grid-products-introduction-02 li {
    width: calc(50% - 5px);
    margin-bottom: 10px;
  }
}

.grid-products-introduction-03 .box-grid-products-introduction-02 li:hover {
  background: #3157ad;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  cursor: pointer;
}

.grid-products-introduction-03 .box-grid-products-introduction-02 li a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-decoration: none;
}

.grid-products-introduction-03 .box-grid-products-introduction-02 li a p {
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
}

@media only screen and (max-width: 767px) {
  .grid-products-introduction-03 .box-grid-products-introduction-02 li a p {
    font-size: 1.3rem;
  }
}

.grid-products-introduction-03 .box-grid-products-introduction-02 li a i {
  width: 14px;
  font-style: normal;
  display: block;
}

.grid-products-introduction-03 .box-grid-products-introduction-02 li a i img {
  width: 100%;
  height: auto;
  display: block;
}

.grid-products-introduction-04 {
  padding-top: 50px;
}

.grid-products-introduction-04 .ttl-level-02 {
  margin-bottom: 20px;
}

.grid-products-introduction-04 .box-grid-products-introduction-03 {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.grid-products-introduction-04 .box-grid-products-introduction-03 li {
  width: calc(50% - 10px);
  list-style: none;
  margin-bottom: 20px;
}

@media only screen and (max-width: 767px) {
  .grid-products-introduction-04 .box-grid-products-introduction-03 li {
    width: 100%;
    margin-bottom: 15px;
  }
}

.grid-products-introduction-04 .box-grid-products-introduction-03 li:nth-child(odd) {
  margin-right: 20px;
}

@media only screen and (max-width: 767px) {
  .grid-products-introduction-04 .box-grid-products-introduction-03 li:nth-child(odd) {
    margin-right: 0;
  }
}

.grid-products-introduction-04 .box-grid-products-introduction-03 li a {
  display: flex;
  align-items: center;
  background-color: #edf5f5;
  text-decoration: none;
  height: 100%;
  min-height: 122px;
  padding: 30px;
  box-sizing: border-box;
}

@media only screen and (max-width: 767px) {
  .grid-products-introduction-04 .box-grid-products-introduction-03 li a {
    min-height: auto;
    padding: 15px;
    font-size: 1.3rem;
  }
}

.grid-products-introduction-04 .box-grid-products-introduction-03 li a:hover {
  background-color: #e1efef;
}

.grid-products-introduction-04 .box-grid-products-introduction-03 li a p {
  color: #3d60af;
  line-height: 1.3;
  font-size: 2.2rem;
  font-weight: bold;
}

@media only screen and (max-width: 767px) {
  .grid-products-introduction-04 .box-grid-products-introduction-03 li a p {
    font-size: 1.3rem;
  }
}

.grid-products-introduction-05 {
  padding-top: 120px;
}

@media only screen and (max-width: 767px) {
  .grid-products-introduction-05 {
    padding-top: 60px;
  }
}

.grid-products-introduction-05 .ttl-level-02 {
  margin-bottom: 50px;
}

@media only screen and (max-width: 767px) {
  .grid-products-introduction-05 .ttl-level-02 {
    margin-bottom: 30px;
  }
}

.grid-products-introduction-05 .box-grid-products-introduction-04 {
  display: flex;
  flex-wrap: wrap;
}

.grid-products-introduction-05 .box-grid-products-introduction-04 .box-grid-products-introduction-05 {
  width: 50%;
  padding-right: 30px;
  box-sizing: border-box;
  margin-bottom: 45px;
}

@media only screen and (max-width: 767px) {
  .grid-products-introduction-05 .box-grid-products-introduction-04 .box-grid-products-introduction-05 {
    width: 100%;
    margin-bottom: 0;
  }
}

.grid-products-introduction-05 .box-grid-products-introduction-04 .box-grid-products-introduction-05 .link-products-introduction-02 {
  display: none;
}

@media only screen and (max-width: 767px) {
  .grid-products-introduction-05 .box-grid-products-introduction-04 .box-grid-products-introduction-05 .link-products-introduction-02 {
    display: flex;
    align-items: flex-start;
    border-bottom: solid 1px #3d60af;
    padding-bottom: 15px;
    margin-bottom: 15px;
  }
  .grid-products-introduction-05 .box-grid-products-introduction-04 .box-grid-products-introduction-05 .link-products-introduction-02 a {
    font-size: 1.5rem;
    text-decoration: none;
    line-height: 1.4;
    width: calc(100% - 17px);
  }
  .grid-products-introduction-05 .box-grid-products-introduction-04 .box-grid-products-introduction-05 .link-products-introduction-02 i {
    display: block;
    font-style: normal;
    width: 6px;
    margin-right: 11px;
    padding-top: 5px;
  }
  .grid-products-introduction-05 .box-grid-products-introduction-04 .box-grid-products-introduction-05 .link-products-introduction-02 i img {
    display: block;
    width: 100%;
    height: auto;
  }
}

.grid-products-introduction-05 .box-grid-products-introduction-04 .box-grid-products-introduction-05 .ttl-products-introduction-01 {
  font-size: 1.8rem;
  color: #3d60af;
  line-height: 1.4;
  position: relative;
  padding-left: 21px;
  margin-bottom: 32px;
}

@media only screen and (max-width: 767px) {
  .grid-products-introduction-05 .box-grid-products-introduction-04 .box-grid-products-introduction-05 .ttl-products-introduction-01 {
    display: none;
  }
}

.grid-products-introduction-05 .box-grid-products-introduction-04 .box-grid-products-introduction-05 .ttl-products-introduction-01:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #3d60af;
  width: 6px;
  height: 29px;
}

.grid-products-introduction-05 .box-grid-products-introduction-04 .box-grid-products-introduction-05 .link-products-introduction-01 {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}

@media only screen and (max-width: 767px) {
  .grid-products-introduction-05 .box-grid-products-introduction-04 .box-grid-products-introduction-05 .link-products-introduction-01 {
    display: none;
  }
}

.grid-products-introduction-05 .box-grid-products-introduction-04 .box-grid-products-introduction-05 .link-products-introduction-01 i {
  display: block;
  font-style: normal;
  width: 6px;
  margin-right: 11px;
  padding-top: 11px;
}

.grid-products-introduction-05 .box-grid-products-introduction-04 .box-grid-products-introduction-05 .link-products-introduction-01 i img {
  display: block;
  width: 100%;
  height: auto;
}

.grid-products-introduction-05 .box-grid-products-introduction-04 .box-grid-products-introduction-05 .link-products-introduction-01 a {
  text-decoration: none;
  width: calc(100% - 17px);
}

.grid-products-introduction-05 .box-grid-products-introduction-04 .box-grid-products-introduction-05 .link-products-introduction-01 a:hover {
  text-decoration: underline;
}

/* =================================
製品カタログ
================================= */

.tab-catalog-01 {
  overflow: hidden;
  display: flex;
}

.tab-catalog-01 div {
  width: 50%;
  border: solid 1px #eceded;
  position: relative;
  font-weight: bold;
  color: #3d60af;
  text-align: center;
  line-height: 80px;
  height: 80px;
  box-sizing: border-box;
  background-color: #fff;
}

@media only screen and (max-width: 767px) {
  .tab-catalog-01 div {
    height: auto;
    line-height: 1.4;
    text-align: left;
    padding: 25px 0 25px 0;
  }
}

.tab-catalog-01 div p {
  font-size: 2rem;
  padding-right: 60px;
}

@media only screen and (max-width: 767px) {
  .tab-catalog-01 div p {
    padding-left: 45px;
    padding-right:0px;
    font-size: 1.3rem;
  }
}

.tab-catalog-01 div .ico-catalog-01 {
  position: absolute;
  top: 30px;
  right: 39px;
  color:#ffffff;
}

@media only screen and (max-width: 767px) {
  .tab-catalog-01 div .ico-catalog-01 {
    right: auto;
    left: 15px;
  }
}

.tab-catalog-01 div.grid-tab-01-select {
  background: #3d60af;
  color: #fff;
  border: solid 1px #3d60af;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.tab-catalog-01 div.grid-tab-01-select i {
  background-color: #fff;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.tab-catalog-01 div.grid-tab-01-select i span {
  color: #3d60af;
  transform: rotate(90deg);
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  padding-left: 0;
  padding-top: 0;
}

.tab-catalog-01 div a{
  text-decoration: none;
  color:#3d60af;
}

.tab-catalog-01 div:hover {
  background: #3d60af;
  color: #fff;
  border: solid 1px #3d60af;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  cursor: pointer;
}

.tab-catalog-01 div:hover .ico-catalog-01 {
  background-color: #fff;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.tab-catalog-01 div:hover .ico-catalog-01 span {
  color: #3d60af;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}


.tab-catalog-01 div:hover a{
  color:#ffffff;
}

.ico-catalog-01 {
  width: 20px;
  height: 20px;
  background-color: #3d60af;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  color:#ffffff;
}

.ico-catalog-01 span {
  display:inline;
  color: #fff;
  display: block;
  font-size: 11px !important;
  text-align: center;
  vertical-align: middle;
  padding-left: 2px !important;
  padding-top: 1px;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.ico-catalog-01 span i {
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.box-catalog-01 .box-catalog-02 {
  padding: 60px 40px;
  box-sizing: border-box;
  display: none;
}

@media only screen and (max-width: 767px) {
  .box-catalog-01 .box-catalog-02 {
    padding: 50px 15px;
  }
}

.box-catalog-01 .box-catalog-02:first-child {
  display: block;
  background: #f1f4f4;
}

.box-catalog-01 .box-catalog-02:nth-child(2) {
  padding: 80px 0;
}

.box-catalog-01
.grid-tab-02-hide {
  display: none;
}



.grid-products-catalogs-01 .ttl-level-01 {
  margin-bottom: 40px;
}

@media only screen and (max-width: 767px) {
  .grid-products-catalogs-01 .ttl-level-01 {
    margin-bottom: 30px;
  }
}

.grid-products-catalogs-01 .txt-products-catalogs-01 {
  line-height: 1.68;
  margin-bottom: 80px;
}

@media only screen and (max-width: 767px) {
  .grid-products-catalogs-01 .txt-products-catalogs-01 {
    margin-bottom: 60px;
  }
}

.grid-products-catalogs-02 .box-products-catalogs-01 {
  display: flex;
  align-items: center;
  padding: 30px 0px;
  box-sizing: border-box;
  border-bottom: solid 1px #778fc7;
}

@media only screen and (max-width: 767px) {
  .grid-products-catalogs-02 .box-products-catalogs-01 {
    display: block;
  }
}

.grid-products-catalogs-02 .box-products-catalogs-01:first-child {
  border-top: solid 1px #778fc7;
}

.grid-products-catalogs-02 .box-products-catalogs-01 .box-products-catalogs-left-01 {
  width: calc(100% - 200px);
  padding-right: 40px;
  box-sizing: border-box;
}

.grid-products-catalogs-02 .box-products-catalogs-01 .box-products-catalogs-left-01.with-img{
  display: flex;
}
.grid-products-catalogs-02 .box-products-catalogs-01 .box-products-catalogs-left-01.with-img .wrap-img {
  width:120px; 
  margin-right:20px;
}

.grid-products-catalogs-02 .box-products-catalogs-01 .box-products-catalogs-left-01.with-img .wrap-text {
  width:410px; 
}


@media only screen and (max-width: 767px) {
  .grid-products-catalogs-02 .box-products-catalogs-01 .box-products-catalogs-left-01 {
    width: 100%;
    padding-left: 0;
    padding-right: 0px;
  }
}

.grid-products-catalogs-02 .box-products-catalogs-01 .box-products-catalogs-left-01 a {
  margin-bottom: 30px;
  display: block;
  line-height: 1.625;
}

@media only screen and (max-width: 767px) {
  .grid-products-catalogs-02 .box-products-catalogs-01 .box-products-catalogs-left-01 a {
    margin-bottom: 15px;
  }
}

.grid-products-catalogs-02 .box-products-catalogs-01 .box-products-catalogs-left-01 .txt-products-catalogs-02 {
  margin-bottom: 20px;
  line-height: 1.625;
  word-wrap: break-word;
}

@media only screen and (max-width: 767px) {
  .grid-products-catalogs-02 .box-products-catalogs-01 .box-products-catalogs-left-01 .txt-products-catalogs-02 {
    margin-bottom: 15px;
    word-wrap: break-word;
  }
}

.grid-products-catalogs-02 .box-products-catalogs-01 .box-products-catalogs-left-01 p {
  color: #666;
}

.grid-products-catalogs-02 .box-products-catalogs-01 .box-products-catalogs-left-01 p.txt-products-catalogs-title {
  margin-bottom: 20px;
  font-weight:bold;
}



.grid-products-catalogs-02 .box-products-catalogs-01 .box-products-catalogs-left-01 .txt-products-catalogs-03 {
  font-size: 1.3rem;
}

.grid-products-catalogs-02 .box-products-catalogs-01 .box-products-catalogs-right-01 {
  width: 200px;
}

@media only screen and (max-width: 767px) {
  .grid-products-catalogs-02 .box-products-catalogs-01 .box-products-catalogs-right-01 {
    width: 100%;
  }
}

.btn-products-catalogs-01 {
  margin: 12px 0;
  position: relative;
  display: inline-block;
  width: 100%;
  border: none;
  background: linear-gradient(to right, #ee8c00, #fdba1a 50%, #fdba1a 100%) left top;
  background-size: 200%;
  text-decoration: none;
  text-align: center;
  line-height: 1;
  font-size: 1.6rem;
  font-weight: bold;
  color: #fff;
  transition: 0.3s background;
  text-align: left;
  padding: 22px 0px 22px 55px;
  box-sizing: border-box;
  cursor: pointer;
}

@media only screen and (max-width: 767px) {
  .btn-products-catalogs-01 {
    text-align: center;
    padding-left: 0;
    font-size: 1.3rem;
  }
}

.btn-products-catalogs-01:after {
  background-image: url(/image/jp2/support/catalogs/ico_download_01.png);
  background-size: 14px 19px;
  width: 14px;
  height: 19px;
  background-repeat: no-repeat;
  content: "";
  display: block;
  position: absolute;
  top: calc(50% - 9px);
  left: 26px;
}

.btn-products-catalogs-01:hover {
  background-position: right;
}

.btn-products-catalogs-02 {
  margin: 12px 0;
  position: relative;
  display: inline-block;
  width: 100%;
  border: none;
  background: linear-gradient(to right, #ee8c00, #fdba1a 50%, #fdba1a 100%) left top;
  background-size: 200%;
  text-decoration: none;
  text-align: center;
  line-height: 1;
  font-size: 2rem;
  font-weight: bold;
  color: #fff;
  transition: 0.3s background;
  text-align: left;
  padding: 22px 0px 22px 55px;
  box-sizing: border-box;
  cursor: pointer;
}

@media only screen and (max-width: 767px) {
  .btn-products-catalogs-02 {
    text-align: center;
    padding-left: 0;
    font-size: 1.3rem;
  }
}

.btn-products-catalogs-02:after {
  background-image: url(/image/jp2/support/catalogs/ico_book_01.png);
  background-size: 27px 21px;
  width: 27px;
  height: 21px;
  background-repeat: no-repeat;
  content: "";
  display: block;
  position: absolute;
  top: calc(50% - 10px);
  left: 20px;
}

.btn-products-catalogs-02:hover {
  background-position: right;
}

.grid-products-catalogs-03 {
  padding-top: 54px;
}

@media only screen and (max-width: 767px) {
  .grid-products-catalogs-03 {
    padding-top: 35px;
  }
}

/* =================================
Windows10対応状況
================================= */
.grid-soft-windows-01 .ttl-level-01 {
  margin-bottom: 30px;
}

.grid-soft-windows-01 .txt-soft-windows-01 {
  display: flex;
  justify-content: flex-end;
}

.grid-soft-windows-01 .txt-soft-windows-01 p {
  color: #061536;
}

.grid-soft-windows-01 .txt-soft-windows-02 {
  margin-bottom: 44px;
}

@media only screen and (max-width: 767px) {
  .grid-soft-windows-01 .ico_swipe_01 {
    margin-bottom: 30px;
  }
}

.grid-soft-windows-01 .table-cmn-wrap {
  margin-bottom: 45px;
}

@media only screen and (max-width: 767px) {
  .grid-soft-windows-01 .table-cmn-wrap {
    margin-top: 0;
  }
}

@media only screen and (max-width: 767px) {
  .grid-soft-windows-01 .table-cmn-wrap {
    margin-bottom: 0;
  }
}

.grid-soft-windows-01 .table-cmn-wrap .table-cmn-basic01 {
  box-sizing: border-box;
  table-layout: fixed;
}

.grid-soft-windows-01 .table-cmn-wrap .table-cmn-basic01 thead {
  box-sizing: border-box;
}

.grid-soft-windows-01 .table-cmn-wrap .table-cmn-basic01 thead tr {
  box-sizing: border-box;
}

.grid-soft-windows-01 .table-cmn-wrap .table-cmn-basic01 thead tr th {
  text-align: center;
}

.grid-soft-windows-01 .table-cmn-wrap .table-cmn-basic01 thead tr th, .grid-soft-windows-01 .table-cmn-wrap .table-cmn-basic01 thead tr td {
  box-sizing: border-box;
  padding: 15px;
  box-sizing: border-box;
}

.grid-soft-windows-01 .table-cmn-wrap .table-cmn-basic01 thead tr .th-soft-windows-01 {
  width: 78px;
}

.grid-soft-windows-01 .table-cmn-wrap .table-cmn-basic01 thead tr .th-soft-windows-02 {
  width: 132px;
}

.grid-soft-windows-01 .table-cmn-wrap .table-cmn-basic01 thead tr .th-soft-windows-03 {
  width: 83px;
}

.grid-soft-windows-01 .table-cmn-wrap .table-cmn-basic01 tbody tr th, .grid-soft-windows-01 .table-cmn-wrap .table-cmn-basic01 tbody tr td {
  vertical-align: middle;
  padding: 15px;
  box-sizing: border-box;
  word-wrap: break-word;
}

.grid-soft-windows-01 .table-cmn-wrap .table-cmn-basic01 tbody tr th p, .grid-soft-windows-01 .table-cmn-wrap .table-cmn-basic01 tbody tr td p {
  color: #061536;
  font-weight: normal;
}

.grid-soft-windows-01 .table-cmn-wrap .table-cmn-basic01 tbody tr th a {
  text-decoration: none;
}

.grid-soft-windows-01 .table-cmn-wrap .table-cmn-basic01 tbody tr th a:hover {
  text-decoration: underline;
}

.grid-soft-windows-01 .table-cmn-wrap .table-cmn-basic01 tbody tr td {
  text-align: center;
}

.grid-soft-windows-01 .table-cmn-wrap .table-cmn-basic01 tbody tr .txt-soft-windows-03 {
  font-size: 1.4rem;
}

.grid-soft-windows-01 .table-cmn-wrap .table-cmn-basic01 tbody tr:first-child {
  text-align: left;
}

.ttl-soft-windows-level-02 {
  font-size: 2.6rem;
  color: #3d60af;
  line-height: 1.4;
  padding-left: 28px;
  position: relative;
  font-weight: bold;
  margin-bottom: 15px;
}

@media only screen and (max-width: 767px) {
  .ttl-soft-windows-level-02 {
    font-size: 1.4rem;
    padding-left: 14px;
  }
}

.ttl-soft-windows-level-02:before {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  left: 0;
  width: 6px;
  height: 35px;
  background-color: #3d60af;
}

@media only screen and (max-width: 767px) {
  .ttl-soft-windows-level-02:before {
    width: 3px;
    height: 17px;
    margin-bottom: 7px;
  }
}

/* =================================
資料ダウンロード認証ページ
================================= */
.grid-authentication-01 {
  padding-top: 95px;
}

.grid-authentication-01 .ttl-level-01 {
  margin-bottom: 36px;
}

@media only screen and (max-width: 767px) {
  .grid-authentication-01 .ttl-level-01 {
    margin-bottom: 20px;
  }
}

.grid-authentication-01 .txt-authentication-01 {
  margin-bottom: 90px;
}

@media only screen and (max-width: 767px) {
  .grid-authentication-01 .txt-authentication-01 {
    margin-bottom: 72px;
  }
}

.grid-authentication-01 .ttl-level-02 {
  margin-bottom: 0;
}

.box-authentication-01 {
  background-color: #edf5f5;
  padding: 30px 60px;
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  margin-bottom: 150px;
}

@media only screen and (max-width: 767px) {
  .box-authentication-01 {
    display: block;
    padding: 30px 20px;
    margin: 0px -20px 70px;
  }
}

.box-authentication-01 .form-cmn-item, .box-authentication-01 .form-cmn-submit-submit {
  width: 33.33333333%;
}

@media only screen and (max-width: 767px) {
  .box-authentication-01 .form-cmn-item, .box-authentication-01 .form-cmn-submit-submit {
    width: 100%;
  }
}

.box-authentication-01 .box-authentication-02,
.box-authentication-01 .box-authentication-03 {
  margin-top: 0;
  display: flex;
  flex-direction: row;
  align-items: center;
  margin-right: 33px;
}

@media only screen and (max-width: 767px) {
  .box-authentication-01 .box-authentication-02,
  .box-authentication-01 .box-authentication-03 {
    margin-right: 0;
    width: 100%;
  }
}

.box-authentication-01 .box-authentication-02 p,
.box-authentication-01 .box-authentication-03 p {
  font-size: 1.8rem;
  line-height: 1.4;
  letter-spacing: 0;
}

.box-authentication-01 .box-authentication-02 p:first-child,
.box-authentication-01 .box-authentication-03 p:first-child {
  margin-right: 14px;
}

@media only screen and (max-width: 767px) {
  .box-authentication-01 .box-authentication-02 p,
  .box-authentication-01 .box-authentication-03 p {
    width: 100%;
  }
}

@media only screen and (max-width: 767px) {
  .box-authentication-01 .box-authentication-02 .form-cmn-item-title,
  .box-authentication-01 .box-authentication-03 .form-cmn-item-title {
    display: none;
  }
}

.box-authentication-01 .box-authentication-02 input,
.box-authentication-01 .box-authentication-03 input {
  width: 240px;
}

@media only screen and (max-width: 767px) {
  .box-authentication-01 .box-authentication-02 input,
  .box-authentication-01 .box-authentication-03 input {
    width: 100%;
    font-size: 1.6rem;
  }
}

@media only screen and (max-width: 767px) {
  .box-authentication-01 .box-authentication-02 input {
    border-bottom: none !important;
  }
}

.box-authentication-01 .form-cmn-submit-submit {
  width: 320px;
  margin-left: 13px;
}

@media only screen and (max-width: 767px) {
  .box-authentication-01 .form-cmn-submit-submit {
    width: 100%;
    margin-left: 0;
  }
}

.box-authentication-01 .form-cmn-submit-submit .btn-cmn-basic01:before {
  right: 15px;
}

.box-authentication-04 {
  background-color: #edf5f5;
  padding: 30px 60px;
  box-sizing: border-box;
  margin-bottom: 150px;
}

@media only screen and (max-width: 767px) {
  .box-authentication-04 {
    display: block;
    padding: 30px 20px;
    margin: 0px -20px 70px;
  }
}

.box-authentication-04 .form-cmn-submit-submit {
  display: flex;
  justify-content: center;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .box-authentication-04 .form-cmn-submit-submit {
    margin-top: 0;
  }
}

.box-authentication-04 .form-cmn-submit-submit .btn-cmn-basic01 {
  max-width: 600px;
}

.box-authentication-04 .txt-authentication-02 {
  text-align: left;
  margin-top: 19px;
}

.box-authentication-04 .form-cmn-item {
  margin-top: 0;
}

.box-authentication-04 .form-cmn-item p input {
  font-size: 1.4rem;
  color: #646c7f;
}

.box-authentication-05 {
  margin-bottom: 100px;
}

@media only screen and (max-width: 767px) {
  .box-authentication-05 {
    margin-bottom: 50px;
  }
}

.box-authentication-05 .ttl-level-02 {
  margin-bottom: 60px;
}

@media only screen and (max-width: 767px) {
  .box-authentication-05 .ttl-level-02 {
    margin-bottom: 30px;
  }
}

.box-authentication-05 .ttl-authentication-level-02 {
  color: #3d60af;
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 50px;
}

@media only screen and (max-width: 767px) {
  .box-authentication-05 .ttl-authentication-level-02 {
    font-size: 1.6rem;
    margin-bottom: 25px;
  }
}

.box-authentication-05 .box-authentication-06 {
  display: flex;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .box-authentication-05 .box-authentication-06 {
    display: block;
  }
}

.box-authentication-05 .box-authentication-06 .box-authentication-left-01 {
  width: calc(100% - 271px);
}

@media only screen and (max-width: 767px) {
  .box-authentication-05 .box-authentication-06 .box-authentication-left-01 {
    width: 100%;
  }
}

.box-authentication-05 .box-authentication-06 .box-authentication-right-01 {
  width: 173px;
  margin: 0 28px 0 70px;
}

@media only screen and (max-width: 767px) {
  .box-authentication-05 .box-authentication-06 .box-authentication-right-01 {
    width: 100%;
    margin: 0;
    padding-top: 35px;
  }
}

.box-authentication-05 .box-authentication-06 .box-authentication-right-01 img {
  width: 100%;
  height: auto;
  display: block;
}

@media only screen and (max-width: 767px) {
  .box-authentication-05 .box-authentication-06 .box-authentication-right-01 .img-authentication-pc-01 {
    display: none;
  }
}

.box-authentication-05 .box-authentication-06 .box-authentication-right-01 .img-authentication-sp-01 {
  display: none;
}

@media only screen and (max-width: 767px) {
  .box-authentication-05 .box-authentication-06 .box-authentication-right-01 .img-authentication-sp-01 {
    display: block;
  }
}

.box-authentication-07 {
  margin-bottom: 100px;
}

@media only screen and (max-width: 767px) {
  .box-authentication-07 {
    margin-bottom: 50px;
  }
}

.box-authentication-07 .box-authentication-06 {
  display: flex;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .box-authentication-07 .box-authentication-06 {
    display: block;
  }
}

.box-authentication-07 .box-authentication-06 .box-authentication-left-01 {
  width: calc(100% - 545px);
}

@media only screen and (max-width: 767px) {
  .box-authentication-07 .box-authentication-06 .box-authentication-left-01 {
    width: 100%;
  }
}

.box-authentication-07 .box-authentication-06 .box-authentication-right-01 {
  width: 495px;
  margin: 0 0px 0 50px;
}

@media only screen and (max-width: 767px) {
  .box-authentication-07 .box-authentication-06 .box-authentication-right-01 {
    width: 100%;
    margin: 0;
    padding-top: 20px;
  }
}

.box-authentication-07 .box-authentication-06 .box-authentication-right-01 img {
  width: 100%;
  height: auto;
  display: block;
}

.box-authentication-08 {
  margin-bottom: 120px;
}

@media only screen and (max-width: 767px) {
  .box-authentication-08 {
    margin-bottom: 60px;
  }
}

.box-authentication-08 .txt-authentication-03 {
  margin-bottom: 50px;
}

@media only screen and (max-width: 767px) {
  .box-authentication-08 .txt-authentication-03 {
    margin-bottom: 25px;
  }
}

.box-authentication-08 .box-authentication-09 {
  display: flex;
  justify-content: space-between;
}

@media only screen and (max-width: 767px) {
  .box-authentication-08 .box-authentication-09 {
    display: block;
  }
}

.box-authentication-08 .box-authentication-09 .card-authentication-01 {
  width: calc(33.33333333% - 18px);
  text-align: center;
  color: #fff;
  display: flex;
  flex-direction: column;
  padding: 98px 0 136px 0;
  align-items: center;
  background-size: cover;
}

@media only screen and (max-width: 767px) {
  .box-authentication-08 .box-authentication-09 .card-authentication-01 {
    width: 100%;
    padding: 45px 30px 50px;
    margin-bottom: 35px;
  }
}

.box-authentication-08 .box-authentication-09 .card-authentication-01:nth-child(1) {
  background-image: url(/image/jp2/authentication/back-authentication-01.jpg);
}

.box-authentication-08 .box-authentication-09 .card-authentication-01:nth-child(2) {
  background-image: url(/image/jp2/authentication/back-authentication-02.jpg);
}

.box-authentication-08 .box-authentication-09 .card-authentication-01:nth-child(3) {
  background-image: url(/image/jp2/authentication/back-authentication-03.jpg);
}

.box-authentication-08 .box-authentication-09 .card-authentication-01 h4 {
  min-height: 0%;
  font-size: 2.6rem;
  letter-spacing: 0.1em;
  line-height: 1.4;
  font-weight: normal;
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 117px;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .box-authentication-08 .box-authentication-09 .card-authentication-01 h4 {
    font-size: 18px;
    margin-bottom: 65px;
  }
}

.box-authentication-08 .box-authentication-09 .card-authentication-01 h4:before {
  width: 95px;
  height: 1px;
  background-color: #fff;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  position: absolute;
  content: "";
  display: block;
}

@media only screen and (max-width: 767px) {
  .box-authentication-08 .box-authentication-09 .card-authentication-01 h4:before {
    width: 47px;
  }
}

.box-authentication-08 .box-authentication-09 .card-authentication-01 p {
  min-height: 0%;
  line-height: 1.9;
  text-align: left;
  max-width: 265px;
}

.box-authentication-10 {
  background-color: #edf5f5;
  text-align: center;
  padding: 65px 0 42px;
}

@media only screen and (max-width: 767px) {
  .box-authentication-10 {
    margin: 0px -20px 0px;
    padding: 30px;
    box-sizing: border-box;
  }
}

.box-authentication-10 h3 {
  color: #3d60af;
  font-size: 3rem;
  line-height: 1.7;
  font-weight: bold;
  margin-bottom: 27px;
}

@media only screen and (max-width: 767px) {
  .box-authentication-10 h3 {
    font-size: 1.3rem;
  }
}

.box-authentication-10 .box-contact-nav {
  padding: 0;
}

.box-authentication-10 .box-contact-nav .box-contact-nav-item {
  font-size: 1.8rem;
}

.box-authentication-10 .box-contact-nav .box-contact-nav-item a:before {
  right: 15px;
}

.sp_dn {
  display: inline;
}

@media only screen and (max-width: 767px) {
  .sp_dn {
    display: none;
  }
}

.sp_dn02 {
  display: none;
}

@media only screen and (max-width: 767px) {
  .sp_dn02 {
    display: block;
  }
}

/* ADD 201903 重要なお知らせ改修 */
/* =================================
重要なお知らせ一覧用
================================= */
.grid-link-list-info-important {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  width: 100%;
  margin-bottom: 40px;
}

.grid-link-list-info-important li {
  width: 100%;
  list-style: none;
  margin-bottom: 28px;
}

.grid-link-list-info-important li a {
  display: block;
  width: 100%;
  height: 100%;
  z-index: 0;
  position: relative;
  text-decoration: none;
  color: #3d60af;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-info-important li a span {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.01em;
  border: solid 1px #3d60af;
  width: 100%;
  display: block;
  line-height: 1.4;
  position: relative;
  padding: 19px 15px 19px 37px;
  box-sizing: border-box;
  background-color: #fff;
  vertical-align: middle;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  color: #3d60af;
  transform: translate(0px, 0px) rotate(0deg);
}

.grid-link-list-info-important li a:before {
  display: block;
  content: "";
  background-color: #3d60af;
  width: 6px;
  height: 35px;
  position: absolute;
  left: 10px;
  top: calc(50% - 17px);
  z-index: 1;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  transform: translate(0px, 0px) rotate(0deg);
}

.grid-link-list-info-important li a:after {
  display: block;
  content: "";
  background-color: #3d60af;
  width: calc(100% + 3px);
  height: 100%;
  position: absolute;
  left: 0px;
  top: 3px;
  z-index: -1;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.grid-link-list-info-important li a:hover {
  color: #3d60af;
}

.grid-link-list-info-important li a:hover span, .grid-link-list-info-important li a:hover:before {
  transform: translate(-2px, -2px) rotate(0deg);
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -webkit-backface-visibility: hidden;
}

.grid-link-list-info-important li a:hover:after {
  top: 5px;
  left: 2px;
  transition: all 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

@media only screen and (max-width: 767px) {
  .grid-link-list-info-important li {
    width: 100%;
    margin-bottom: 28PX;
  }
  .grid-link-list-info-important li:nth-child(odd) {
    margin-right: 0px;
  }
  .grid-link-list-info-important li a span {
    font-size: 1.5rem;
    letter-spacing: 0.01em;
    border: solid 1px #3d60af;
    width: 100%;
    display: block;
    position: relative;
    padding: 16px 15px 16px 19px;
    box-sizing: border-box;
    background-color: #fff;
  }
  .grid-link-list-info-important li a:before {
    width: 3px;
    height: 18px;
    top: calc(50% - 9px);
  }
}

/* =================================
TABLE
================================= */
.table-cmn-info-important {
  width: 100%;
  border: 2px solid #3d60af;
  line-height: 1.6875;
}

.table-cmn-info-important thead th {
  padding: 6px;
  background: #3d60af;
  text-align: left;
  font-weight: bold;
  color: #fff;
}

.table-cmn-info-important thead th:not(:first-child) {
  border-left: 2px solid #fff;
}

.table-cmn-info-important tbody tr:hover{
  text-decoration: underline;
}


.table-cmn-info-important tbody th,
.table-cmn-info-important tbody td {
  padding: 6px;
  border: 1px solid #3d60af;
  text-align: left;
  vertical-align:top;
  font-size: 1.5rem;
  position:relative;
}

.table-cmn-info-important tbody th {
  border-right: 2px solid #3d60af;
}

.table-cmn-info-important tbody th a,
.table-cmn-info-important tbody td a{
  color:#000;
  text-decoration: none;
  display:block;
}

.table-cmn-info-important tbody td a::after{
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.table-cmn-info-important .date{
  white-space: nowrap;
}


@media (min-width: 768px) {
.table-cmn-info-important {
  max-width: 100%;
}
}

@media (max-width: 767px) {
  .table-cmn-info-important{
    width:100%;
  }
  .table-cmn-info-important,
  .table-cmn-info-important tbody,
  .table-cmn-info-important tr,
  .table-cmn-info-important th,
  .table-cmn-info-important td{
    display:block;
    border:none;
    padding:0px !important;
  }
  .table-cmn-info-important thead{
    display: none;
  }
  .table-cmn-info-important tbody th,
  .table-cmn-info-important tbody td {
    padding: 6px;
  }
  .table-cmn-info-important tbody td{
    border:none;    
  }
  .table-cmn-info-important tr{
    border-top:1px solid #3d60af;
    padding:5px 0px !important;
  }
  .table-cmn-info-important .date a{color:#666;}
  .table-cmn-info-important .model-title a{
    font-weight:bold;
    color:#3d60af;
  }
  .table-cmn-info-important .caption a{}
  .table-cmn-info-important .bikou a{
    text-align:right;
    color:#666;
  }
}
/* END 201903 重要なお知らせ改修 */


/* ADD 201904 category_market */
/* =================================
for_category_market
================================= */
.wrap-field{
    width: 850px;
    margin: 0 auto;
} 
.wrap-field ul{
    list-style: none;
}
.wrap-field .ttl-level-02{
    margin-top: 100px;
    margin-bottom: 20px;
    text-align: center;
}
.wrap-field .ttl-level-02:first-child{
    margin-top: 60px;
}
@media (max-width: 767px) {
    .wrap-field{
        width: 100%;
    } 
    .wrap-field .ttl-level-02{
        margin-top: 20px;
    }
}

.area-column{
    width: 900px;
    margin: 0 auto;
    background: #e3e6f1;
    padding: 30px;
}
.area-column + .area-column{
    margin-top: 40px;
}
@media (max-width: 767px) {
   .area-column{
        width: 100%;
        margin: 20px auto 40px;
        padding: 20px;
    }
    .area-column + .area-column{
        margin-top: -20px;
    } 
}

.ttl-areacolumn-level-01{
    font-size: 1.8rem;
    border-bottom: 2px solid #3d60af;
    text-align: center;
    padding: 20px 0 45px;
    color: #3d60af;
}
.ttl-areacolumn02-level-01{
    color: #3d60af;
    margin: 0 0 10px;
}
@media (max-width: 767px) {
    .ttl-areacolumn-level-01{
        font-size: 1.3rem;
        border-bottom: 1px solid #3d60af;
        padding: 0 0 20px;
    }
}


.ttl-areacolumn-level-02{
    font-size: 1.6rem;
    color: #3d60af;
    text-align: center;
    margin: 36px 0 16px;
}
@media (max-width: 767px) {
    .ttl-areacolumn-level-02{
        font-size: 1.3rem;
        margin: 18px 0 12px;
    }
}

.list-column{
    list-style: none;
    overflow: hidden;
    letter-spacing: -.4em;
}
.list-column li{
    width: 180px;
    display: inline-block;
    vertical-align: top;
    letter-spacing: normal;
    margin: 40px 40px 10px 0;
    line-height: 1.7;
}
.list-column li:last-child{
    margin-right: 0;
}
.list-column li span{
    display: block;
    font-size: 1.2rem;
}
@media (max-width: 767px) {
    .list-column li{
        width: 47%;
        margin: 20px 6% 10px 0;
        line-height: 1.7;
        font-size: 1.2rem;
    }
    .list-column li:nth-child(even){
        margin-right: 0;
    }
    .list-column li span{
        display: block;
        font-size: 1.1rem;
    }
}


.box-field-01{
    overflow: hidden;
    margin: 35px 0 60px;
}
.box-field-01 .box-left{
    width: 500px;
    float: left;
    line-height: 1.8;
}
.box-field-01 .box-right{
    width: 370px;
    float: right;
}
.box-field-01 .box-left h3{
    font-size: 1.8rem;
    margin: 0 0 15px;
}
@media (max-width: 767px) {
    .box-field-01{
        margin: 0 0 60px;
    }
    .box-field-01 .box-left{
        width: 100%;
        float: none;    
    }
    .box-field-01 .box-right{
        width: 100%;
        float: none;
    }
    .box-field-01 .box-left h3{
        font-size: 1.3rem;
        margin: 15px 0 15px;
    }
}



.list-field{
    list-style: none;
    overflow: hidden;
    letter-spacing: -.4em;
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    justify-content: space-between;
}
.list-field li{
    width: 30.9%;
    vertical-align: top;
    letter-spacing: normal;
    margin: 0 0 80px 0;
}
.list-field::after {
  content: "";
  display: block;
  width: 30.9%;
  height: 0;
}
.list-field li h4{
    text-align: center;
    margin: 20px 0 0px;
}
.list-field li span{
    font-size: 1.4rem;
    display: block;
    color: #666;
    line-height: 1.375;
    margin: 20px 0 0;
}
.list-field li p{
    line-height: 1.8
}
@media (max-width: 767px) {
    .list-field{
        margin-right: 0;
    }
    .list-field li{
        width: 47%;
        display: inline-block;
        vertical-align: top;
        letter-spacing: normal;
        margin: 0 6% 60px 0;
        line-height: 1.7;
    }
    .list-field li:nth-child(even){
        margin-right: 0;
    }

    .list-field li h4{
        text-align: center;
        margin: 20px 0 5px;
        line-height: 1.2;
    }
    .list-field li span{
        font-size: 1.1rem;
        line-height: 1.5;
        margin: 20px 0 0;
    }
}



.field-table{
    width: 100%;
    table-layout: fixed;
}
.field-table td{
    box-sizing: border-box;
    border-bottom: 1px solid #c0c2c3;
    border-right: 40px solid #e3e6f1;
    padding: 15px 20px;
}
.field-table td:last-child{
    border-right: none;  
}
.field-table tr:last-child td{
    border-bottom:none;
}
@media (max-width: 767px) {
    .field-table td{
        border-bottom: 1px solid #c0c2c3;
        border-right: 20px solid #e3e6f1;
        padding: 10px;
        font-size: 1.2rem;
    }
    .field-table td:last-child{
        border-right: none;  
    }
    .field-table tr:last-child td{
        border-bottom:none;
    }
}


.area-column-02{
    filter:progid:DXImageTransform.Microsoft.Gradient(#363a41, #292c33);
    background: -moz-linear-gradient(#363a41, #292c33);
    background: -webkit-linear-gradient(#363a41, #292c33);
    background: linear-gradient(#363a41, #292c33);
    margin: 30px 0 0;
}
.area-column-02-in{
    background-image: url(https://www.hioki.co.jp/image/jp2/products/img_pe_bg01.png);
    background-position: right 70px;
    background-repeat:  no-repeat; 
}
.area-column-02-inner{
    padding: 40px 40px 1px;
}
.area-column-02 p{
    color: #fff;
}
.area-column-02 dl{
     margin: 0 0 0;
    width: 500px;
    color: #fff;
}
.area-column-02 dd{
    margin: 10px 0 80px;
    line-height: 1.815;
    text-shadow:0px 0px 14px #363a41;
}
.area-column-02 ul{
    margin: 20px 0 0;
}
.area-column-02 ul li a{
    font-size: 1.4rem;
    color: #1a99d1;
}
@media (max-width: 767px) {
    .area-column-02{
        background: linear-gradient(#363a41, #292c33);
    }
    .area-column-02-in{
        background-image: url(https://www.hioki.co.jp/image/jp2/products/img_pe_bg01.png);
        background-position: 100% 300px;
        background-repeat:  no-repeat;
        background-size: 90%;
    }
    .area-column-02-inner{
        padding: 50px 30px 1px;
        background: rgba(54,58,65,0.5);
 
    }
    .area-column-02 p{
        color: #fff;
    }
    .area-column-02 dl{
         margin: 60px 0 0;
        width: 100%;
    }
    .area-column-02 dd{
        margin: 10px 0 60px;
    }
    .area-column-02 ul{
        margin: 20px 0 0;
    }
    .area-column-02 ul li{
        margin: 0 0 10px;
    }
    .area-column-02 ul li a{
        font-size: 1.2rem;
    }
}

.field-ttl-level03{
    font-size: 2.4rem;
    margin: 50px 0 30px;
}

@media (max-width: 767px) {
    .field-ttl-level03{
        font-size: 1.8rem;
        margin: 40px 0 20px;
    }
}

.list-field .btn-cmn-basic02{
    margin: 30px auto 0;
    font-size: 1.6rem;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 15px;
    background-size: 100%;
    display: block;
    line-height: 1.0;
}
.list-field .btn-cmn-basic02::before {
    right: 1.0rem;
    width: 4px;
    height: 6.22px;
}
.list-field .btn-cmn-basic02 + .btn-cmn-basic02{
       margin:  5px auto 0;
}
.wrap-link-btn{
    text-align: center;
    margin-top: -10px;
    margin-bottom: 100px;
}
.wrap-link-btn ul{
    display: inline-block;
}
.wrap-link-btn ul li{
    display: inline-block;
    width: 380px;
}
.wrap-link-btn ul li:last-child{
    margin-left: 1.6rem;
}
.wrap-link-btn ul li .btn-cmn-basic01{
    font-size: 1.6rem;
}
@media (max-width: 767px) {
    .wrap-field .btn-cmn-basic02{
        width: 100%;
        font-size: 1.4rem;
        padding-top: 10px;
        padding-bottom: 10px;
        padding-right: 20px;
        font-weight: normal;
        background-size: 100%;
    }
    .wrap-link-btn{
        text-align: center;
        margin-top: -10px;
    }
    .wrap-link-btn ul{
        display: block;
        width: 80%;
        margin: 0 auto;
    }
    .wrap-link-btn ul li{
        display: block;
        width: 100%;
    }
    .wrap-link-btn ul li:last-child{
        margin-left: 1.4rem;
        margin: 20px 0 0;
    }
    .wrap-link-btn ul li .btn-cmn-basic01{
        font-size: 1.4rem;
    }
    .field-ttl-level03-out{
        margin: 50px 0 -10px;
    }
}
/* END 201904 category_market */
/* ADD 201908 category_market */
.area_intro_pe{
    width: 100%;
    height: 714px;
    background: url(https://www.hioki.co.jp/image/jp2/products/img_pe_main02.jpg) 0 0 no-repeat;
    padding: 585px 30px 40px 30px;
    box-sizing: border-box;
}
.area_intro_pe p{
    color: #fff;
}
@media (max-width: 767px) {
    .area_intro_pe{
        width: 100%;
        height: 73vw;
        background-size:cover;
        padding: 0;
        box-sizing: border-box;
        position: relative;
        
    }
    .area_intro_pe p{
        color: #fff;
        position: absolute;
        bottom: 20px;
        padding: 10px;
        box-sizing: border-box;
        left: 0;
        right: 0;
        width: 93.75%;
        margin: auto;
        font-size: 1.2rem;
        background-color: rgb(0,0,0,0.5);
    } 
}

.center{
    text-align: center;
}

.pe_h3{
    margin: 60px 0 40px;
}
.txt-productlist-01-pe{
    margin: 40px auto 0;
    width: 750px;
}
@media (max-width: 767px) {
    .pe_h3{
        margin: 30px 0 20px;
    }
    .txt-productlist-01-pe{
        margin: 40px auto 0;
        width: 100%;
    }
}

/* Button */

.box-field-01 .btn-cmn-basic01-mini {
  width: 54%;
  padding-top: 10px;
  padding-bottom: 10px;
  background-size: 200%;
  font-size: 1.6rem;
    margin: 50px auto 0;
}
.box-field-01 .btn-cmn-basic01-mini:hover {
  background-position: right;
}
.box-field-01 .btn-cmn-basic01-mini::before {
  top: 13px;
  right: 15px;
  width: 6px;
  height: 9.3px;
  background: url(https://www.hioki.co.jp/image/jp2/common/ico_arrow_01.svg) no-repeat;
  background-size: cover;
}

.btn-cmn-basic01-mini02 {
  width: 100%;
  max-width: 270px;
  padding-top: 10px;
  padding-bottom: 10px;
  background-size: 200%;
  font-size: 1.6rem;
}
.btn-cmn-basic01-mini02:hover {
  background-position: right;
}
.btn-cmn-basic01-mini02::before {
  top: 13px;
  right: 15px;
  width: 6px;
  height: 9.3px;
  background: url(https://www.hioki.co.jp/image/jp2/common/ico_arrow_01.svg) no-repeat;
  background-size: cover;
}

@media (max-width: 767px) {
    .box-field-01 .btn-cmn-basic01-mini {
      width: 54%;
      padding-top: 10px;
      padding-bottom: 10px;
      background-size: 200%;
      font-size: 1.4rem;
        margin: 25px auto 0;
    }
  .box-field-01 .btn-cmn-basic01-mini::before {
    top: 15px;
    right: 15px;
    width: 4px;
    height: 7px;
    transition: none;
  }
  .box-field-01 .btn-cmn-basic01-mini:hover::before {
    transform: none;
  }
  .btn-cmn-basic01-mini02 {
    font-size: 1.3rem;
  }
}

.page_link_list{
    width: 888px;
    margin: 40px auto;
    text-align: center;
    letter-spacing: -4em;
}
.page_link_list li{
    display: inline-block;
    width: 385px;
    letter-spacing: normal;
    border: 2px solid #3d60af;
    border-radius: 4px;
    box-sizing: border-box;
    margin: 0 20px;
}
.page_link_list li a{
    display: block;
    padding: 10px 0 19px;
    color: #3d60af;
    font-weight: bold;
    text-decoration: none;
    position: relative;
}

.page_link_list li a::before {
  position: absolute;
  bottom: 10px;
  right: 0;
  left: 0;
  margin: auto;
  content: '';
  display: inline-block;
  width: 7px;
  height: 11.2px;
  background: url(https://www.hioki.co.jp/image/jp2/common/ico_arrow_04.svg) no-repeat;
  background-size: cover;
  transition: 0.3s transform;
    -ms-transform:rotate(90deg);
-webkit-transform:rotate(90deg);
-moz-transform:rotate(90deg);
    transition: 0.3s;
}
.page_link_list li a:hover{
    opacity: 0.8;
}
.page_link_list li a:hover::before {
       bottom: 5px;
}

@media (max-width: 767px) {
    .page_link_list{
        width: 93.75%;
    }
    .page_link_list li{
        display: inline-block;
        width: 48%;
        letter-spacing: normal;
        border: 2px solid #3d60af;
        border-radius: 4px;
        box-sizing: border-box;
        margin: 0 0.5%;
    }
    .page_link_list li a{
        display: block;
        padding: 10px 0 19px;
        color: #3d60af;
        font-weight: bold;
        text-decoration: none;
        position: relative;
    }

    .page_link_list li a::before {
      position: absolute;
      bottom: 10px;
      right: 0;
    left: 0;
        margin: auto;
      content: '';
      display: inline-block;
      width: 7px;
      height: 11.2px;
      background: url(https://www.hioki.co.jp/image/jp2/common/ico_arrow_04.svg) no-repeat;
      background-size: cover;
      transition: 0.3s transform;
        -ms-transform:rotate(90deg);
    -webkit-transform:rotate(90deg);
    -moz-transform:rotate(90deg);
        transition: 0.3s;
    }
    .page_link_list li a:hover{
        opacity: 0.8;
    }
    .page_link_list li a:hover::before {
           bottom: 5px;
    }
}



.ttl-level-03-pe{
    font-size: 2.0rem;
    color: #3d60af;
    text-align: center;
    margin: 0 0 40px;
    padding: 70px 0 0;
    
}
.ttl-level-03-pe span{
    font-size: 1.6rem;
    color: #3d60af;
    text-align: center;
    display: inline-block;
    border-bottom: 2px solid #3d60af;
    line-height: 1.2;
}
.key_list{
    width: 832px;
    margin: 0 auto;
}
.key_list > li{
    background: #e3e6f1;
    padding: 30px 20px 30px 10px;
    margin: 0 0 10px;
    box-sizing: border-box;
    overflow: hidden;
    vertical-align: middle;
}
.key_list li img{
    margin: 10px 0 0;
}
.key_list_right{
    width: 570px;
    float: right;
}
.key_list_right h4{
    font-size: 2.0rem;
    color: #3d60af;
}
@media (max-width: 767px) {
    .ttl-level-03-pe{
        font-size: 1.8rem;
        margin: 0px 0 40px;
        padding: 70px 0 0;

    }
    .ttl-level-03-pe span{
        font-size: 1.4rem;
        color: #3d60af;
        text-align: center;
        display: inline-block;
        border-bottom: 2px solid #3d60af;
        line-height: 1.2;
    }
    .key_list{
        width: 100%;
        margin: 0 auto;
    }
    .key_list > li{
        padding: 15px 5%;
        margin: 0 0 5%;
        box-sizing: border-box;
        overflow: hidden;
        text-align: center;
    }
    .key_list li img{
        margin: 10px 0 0;
    }
    .key_list_right{
        width: 100%;
        float: none;
        text-align: left;
    }
    .key_list_right h4{
        font-size: 1.8rem;
        color: #3d60af;
    }
}
/* END 201908 category_market */


.area-webeditor ul li{
  position: relative;
  padding-left: 25px;
  list-style: none;
  line-height: 1.5;
}

.area-webeditor ul li:not(:first-child) {
  margin-top: 13px;
}

.area-webeditor ul li::before {
  position: absolute;
  top: 7px;
  left: 7px;
  display: block;
  content: '';
  width: 9px;
  height: 9px;
  background: #3d60af;
}
.sashie-right{
  float:right;
  width:200px;
  margin:0 0 10px 10px;
}
@media (max-width: 767px) {
  .sashie-right{
    width:30%;
  }
}


.list-notes{
  list-style: none;
}
.list-notes li{
  position: relative;
}
.list-notes li:before{
  content: '※';
  position: absolute;
  left: -20px;
}

.wrap-area-need-omakase-image{
  max-width: 750px;
  margin: auto;
  border: 1px solid #dfdfdf;
}
.wrap-area-need-omakase-image .title{
  font-size: 1.8rem;
  background: #3d60af;
  padding: 0.375em 1em;
  color: #ffffff;
  font-weight: bold;
  text-align: center;
}
.wrap-area-need-omakase-image .desc{
  margin: 20px auto;
  text-align: center;
  font-size: 1.8rem;
}
.wrap-area-need-omakase-image img{
  padding: 0px 20px 20px;
}


@media (max-width: 767px) {
  .wrap-area-need-omakase-image .desc{
    font-size: 1.6rem;
    margin: 10px;
  }
}




