/*
Theme Name: TAKAYA SOL
Theme URI: https://takaya.co.jp/itsolution/
Author: TAKAYA ISYS
Description: ソリューション事業部サイトテーマ
Version: 1.0
*/

html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  overflow: auto;
  scroll-behavior: smooth;
}
   
body {
  font-family: 'YuGothic', 'Yu Gothic','游ゴシック','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ','Meiryo',sans-serif;
}
   
/*
a, a:visited {
color: rgb(26, 155, 232);
}
*/
   
a, a:visited {
  color: rgb(0, 0, 0);
} 
   
figure {
margin: 0;
}
   
img {
  height: auto;
  max-width: 100%;
}
   
/* table */
.normal table {
  width: 100%;
  min-width: 500px;
  margin-bottom: 40px;
  border-collapse: separate;
  table-layout: fixed;
  border-spacing: 0 4px;
}
   
.normal table tr {
  background-color: rgb(246 248 247);
}
   
.normal table tr:nth-child(even) {
  background-color: rgb(251, 251, 251);
}
   
.normal table th,
.normal table td {
  padding: 20px;
  border: none;
  line-height: 1.5em;
}
   
.normal table th:first-child {
  width: 20%;
  border: none;
  border-right: 10px solid rgb(255, 255, 255);
  background-color: rgb(0 153 91) ;
  border-radius: 5px;
  color: rgb(255, 255, 255);
  font-weight: 500;
  box-sizing: border-box;
}
   
.simple table {
  width: auto;
  border-collapse:collapse;
}
   
.simple table th {
  background-color: initial;
}
   
.simple table th, .simple table td {
  padding: 13px;
  border: 1px solid rgb(221, 221, 221);
}
   
/* img width 100% */
.width-100pct img {
  width: 100%;
}
   
/* category color */
.cat-service-news {
  background-color: rgba(58, 149, 32, 1);
}
   
.cat-event {
  background-color: rgba(255, 154, 59, 1);
}
   
.cat-other {
  background-color: rgba(27, 226, 191, 1);
}
   
/* fade-in */
.fade-in {
  opacity: 0;
  transition-duration: 500ms;
  transition-property: opacity, transform;
  transform: translate(0, 100px);
}
   
.scroll-in {
  opacity: 1;
  transform: translate(0, 0);
}
   
/* loader */
#loader {
  z-index: 5000;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  width: 100vw;
  height: 100%;
  height: 100vh;
  background: rgb(255, 255, 255);
  display: block;
  opacity: 1;
  transition: 1s;
}
   
#loader .loader-icon {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 48px;
  height: 48px;
  margin: auto;
  border-radius: 50%;
  font-size: 50%;
  text-indent: -9999em;
  border: 3px solid rgba(0, 0, 0, 0.2);
  border-top: 3px solid rgb(0, 0, 0);
  -webkit-animation: loading-circle 1.1s infinite linear;
  animation: loading-circle 1.1s infinite linear;
}
   
@keyframes loading-circle{
  0%{ transform:rotate(0);}
  100%{ transform:rotate(360deg); }
}
   
/* breadcrumb */
.w-breadcrumb ol {
  margin: 0;
  margin-bottom: 30px;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  list-style: none;
}
   
.w-breadcrumb ol li {
  margin-right: 2em;
  margin-bottom: 5px;
  font-size: 10px;
  position: relative;
}
   
.w-breadcrumb ol li:not(:last-child):before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  position: absolute;
  border-top: 1px solid rgb(221, 221, 221);
  border-right: 1px solid rgb(221, 221, 221);
  top: 50%;
  right: -1em;
  transform: translateY(-50%) rotate(45deg);
}
   
.w-breadcrumb ol li a {
  display: inline-block;
  text-decoration: none;
  font-size: 10px;
}
   
@media (min-width: 429px) {
  .w-breadcrumb ol {
    margin: 0;
    margin-bottom: 60px;
  }

  .w-breadcrumb ol li {
    font-size: 12px;
  }

  .w-breadcrumb ol li a {
    font-size: 12px;
  }
}
   
/* header
------------------------------------------------------------------------*/
header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background-color: rgb(255, 255, 255);
  z-index: 1000;
}
   
.w-header {
  margin: 0 auto;
  padding: 12px 7% 9px;
  width: 100%;
  box-sizing: border-box;
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  position: relative;
}
   
.w-header .w-header-left {
  display: flex;
}
   
.w-header .w-header-right {
  margin-left: auto;
  display: flex;
}
   
.w-header .w-header-left .w-logo {
  width: 30%;
  min-width: 120px;
  max-width: 180px;
  margin-bottom: 0;
}
   
.w-header .w-header-left .w-logo img {
  width: 100%;
}
   
.w-header .w-header-left .w-nav-normal {
  margin-bottom: 8px;
}
   
.w-header .w-header-left .w-nav-normal nav ul {
  display: none;
  flex-wrap: nowrap;
  list-style: none;
  white-space: nowrap;
}
   
.w-header .w-header-left .w-nav-normal nav ul li a {
  padding: 10px 15px;
  text-decoration: none;
  color: rgb(0, 0, 0);
  font-weight: 600;
  display: inline-block;
}
   
.w-header .w-header-left .w-nav-normal nav ul li a:hover {
  text-decoration: underline;
}
   
.w-header .w-header-right .w-searchform {
  margin-left: 30px;
  margin-right: 20px;
  display: none;
}
   
.w-header .w-header-right .w-searchform .search-form {
  display: flex;
}
   
.w-header .w-header-right .w-searchform .search-form .text-box {
  width: 150px;
  padding: 8px 4px;
  font-size: 14px;
}
   
.w-header .w-header-right .w-searchform .search-form .btn-search {
  width: 48px;
  height: 42px;
  padding: 0;
  border: none;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: rgb(0, 0, 0);
  cursor: pointer;
}
   
.w-header .w-header-right .w-top-buttons {
  display: none;
  align-items: baseline;
}
   
.w-header .w-header-right .w-top-buttons .w-search-box {
  display: none;
}
   
.w-header .w-header-right .w-top-buttons a {
  padding: 12px 11px 9px;
  display: inline-block;
  text-decoration: none;
  text-align: center;
  color: rgb(255, 255, 255);
  letter-spacing: 1px;
  border-radius: 5px;
  margin-right: 10px;
  margin-left: 10px;
}
   
.w-header .w-header-right .w-top-buttons .w-img img {
  width: 25px;
  height: 25px;
  object-fit: contain;
  margin-bottom: 3px;
}
   
.w-header .w-header-right .w-top-buttons .btn-contact {
  width: 84px;
  font-size: 13px;
  background-color: rgb(0, 153, 91);
}
   
.w-header .w-header-right .w-top-buttons .btn-english {
  width: 84px;
  color: rgb(0, 153, 91);
  font-weight: 600;
}
   
/* humbarger */
.w-header .w-header-right .w-nav-hamburger .w-nav-hamburger-contents {
  padding: 80px 0;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.9);
  position: fixed;
  top: -100%;
  left: 0;
  transition: .5s;
  z-index: 2000;
  opacity: 0;
  visibility: hidden;
}
   
.w-header .w-header-right .w-nav-hamburger .w-nav-hamburger-contents ul {
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: center;
}
   
.w-header .w-header-right .w-nav-hamburger .w-nav-hamburger-contents nav ul.main-menu {
  margin-bottom: 30px;
}
   
.w-header .w-header-right .w-nav-hamburger .w-nav-hamburger-contents nav ul.main-menu li a {
  padding: 20px;
  display: inline-block;
  color: rgb(0, 0, 0);
  text-decoration: none;
  font-weight: 600;
  letter-spacing: 3px;
}
   
.w-header .w-header-right .w-nav-hamburger .w-nav-hamburger-contents nav ul.main-menu li a:hover {
  text-decoration: underline;
}
   
.w-header .w-header-right .w-nav-hamburger .w-nav-hamburger-contents ul.w-hamburger-buttons li a {
  width: 230px;
  max-width: 90%;
  margin: 0 auto;
  margin-bottom: 10px;
  padding: 10px 30px;
  border-radius: 5px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  text-decoration: none;
  letter-spacing: 2px;
}
   
.w-header .w-header-right .w-nav-hamburger .w-nav-hamburger-contents ul.w-hamburger-buttons li.btn-contact a {
  color: rgb(255, 255, 255);
  background-color: rgb(0, 153, 91);
  border: 3px solid rgb(0, 153, 91);
}
   
.w-header .w-header-right .w-nav-hamburger .w-nav-hamburger-contents ul.w-hamburger-buttons li.btn-english a {
  color: rgb(0, 153, 91);
  border: 3px solid rgb(0, 153, 91);
}
   
.w-header .w-header-right .w-nav-hamburger .w-nav-hamburger-contents ul.w-hamburger-buttons li a img {
  margin-left: auto;
  width: 25px;
}
   
.w-header .w-header-right .w-nav-hamburger .w-nav-hamburger-contents ul.w-hamburger-searchform li .search-form {
  display: flex;
  justify-content: center;
}
   
.w-header .w-header-right .w-nav-hamburger .w-nav-hamburger-contents ul.w-hamburger-searchform {
  margin-top: 30px;
}
   
.w-header .w-header-right .w-nav-hamburger .w-nav-hamburger-contents ul.w-hamburger-searchform li .search-form .text-box {
  width: 60%;
  max-width: 200px;
  padding: 8px 4px;
  font-size: 14px;
}
   
.w-header .w-header-right .w-nav-hamburger .w-nav-hamburger-contents ul.w-hamburger-searchform li .search-form .btn-search {
  width: 48px;
  height: 42px;
  padding: 0;
  border: none;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: rgb(0, 0, 0);
  cursor: pointer;
}
   
.w-header .w-header-right .w-nav-hamburger .humbarger {
  width: 40px;
  height: 40px;
  position: absolute;
  top: 10px;
  right: 15px;
  z-index: 3000;
}
   
.w-header .w-header-right .w-nav-hamburger .humbarger div {
  width: 25px;
  height: 2px;
  border-radius: 50px;
  background-color: rgb(0, 0, 0);
  position: absolute;
  right: 8px;
  transition: .3s;
}
   
.w-header .w-header-right .w-nav-hamburger .humbarger .line-1 {
  top: 10px;
}
   
.w-header .w-header-right .w-nav-hamburger .humbarger .line-2 {
  top: 18px;
}
   
.w-header .w-header-right .w-nav-hamburger .humbarger .line-3 {
  top: 26px;
}
   
#humbarger {
  display: none;
}
   
#humbarger:checked + label {
  width: 50px;
  height: 50px;
}
   
#humbarger:checked + label div {
  top: 30px;
}
   
#humbarger:checked + label .line-1 {
  width: 40px;
  transform: rotate(-45deg);
}
   
#humbarger:checked + label .line-2 {
  background-color: transparent;
}
   
#humbarger:checked + label .line-3 {
  width: 40px;
  transform: rotate(45deg);
}
   
#humbarger:checked ~ .w-nav-hamburger-contents {
  top: 0;
  opacity: 1;
  visibility: visible;
}
   
@media (min-width: 429px) {
  .w-header .w-header-left .w-logo {
    width: 100%;
  }

  .w-header .w-header-right .w-nav-hamburger .w-nav-hamburger-contents ul.w-hamburger-buttons li a {
    padding: 10px 40px;
  }
}
   
@media (min-width: 641px) {
  .w-header .w-header-left .w-logo {
    margin-bottom: 8px;
  }

  .w-header .w-header-right .w-top-buttons {
    display: flex;
  }

  .w-header .w-header-right .w-nav-hamburger .humbarger {
    width: 50px;
    height: 50px;
    top: 19px;
    right: 0px;
  }

  .w-header .w-header-right .w-nav-hamburger .humbarger div {
    width: 30px;
    height: 3px;
    right: 10px;
  }

  .w-header .w-header-right .w-nav-hamburger .humbarger .line-1 {
    top: 15px;
  }

  .w-header .w-header-right .w-nav-hamburger .humbarger .line-2 {
    top: 25px;
  }

  .w-header .w-header-right .w-nav-hamburger .humbarger .line-3 {
    top: 35px;
  }
}
   
@media (min-width: 835px) {
  .w-header .w-header-right .w-searchform {
    display: flex;
    align-items: center;
  }

  .w-header .w-header-right .w-nav-hamburger .humbarger {
    width: 50px;
    height: 50px;
    top: 19px;
    right: 20px;
  }
}

@media (min-width: 1640px) {
  .w-header .w-header-left .w-nav-normal nav ul {
    display: flex;
  }
}

@media (min-width: 1750px) {
  .w-header {
    padding: 12px 10% 10px;
  }
}
   
/* footer
------------------------------------------------------------------------*/
/* contact */
.w-contact {
  margin-bottom: 50px;
  width: 100%;
  height: 360px;
  position: relative;
}
   
.w-contact .w-img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgb(0, 153, 91);
}
   
.w-contact .w-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
   
.w-contact .w-text {
  margin: 0;
  padding: 35px;
  width: 90%;
  height: 90%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: rgba(255, 255, 255, 0.95);
  box-sizing: border-box;
  border-radius: 5px;
  position: relative;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
   
.w-contact .w-text::before {
  content: "";
  display: none;
  width: calc(100% - 25px);
  height: calc(100% - 25px);
  border-radius: 5px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
   
.w-contact .w-text .title-en {
  margin: 0;
  margin-bottom: 4px;
  color: rgb(0, 153, 91);
  font-size: 32px;
  font-weight: 600;
  letter-spacing: 3px;
}
   
.w-contact .w-text .title {
  margin: 0;
  margin-bottom: 0;
  font-size: 14px;
  position: relative;
  letter-spacing: 1px;
}
   
.w-contact .w-text .text {
  margin-bottom: 20px;
  font-size: 0.8em;
  line-height: 1.3em;
  text-align: center;
}

.w-contact .w-text .text span {
  display: inline-block;
}

.w-contact .w-text .button {
  width: 100%;
  max-width: 400px;
  padding: 22px 15px;
  box-sizing: border-box;
  display: inline-block;
  text-align: center;
  position: relative;
  text-decoration: none;
}
   
.w-contact .w-text .button .button-text {
  background: linear-gradient(120deg, rgb(30, 80, 44) 0%, rgb(59, 223, 94) 99%, rgb(59, 223, 94) 100%);
  background: -webkit-linear-gradient(120deg, rgb(30, 80, 44) 0%, rgb(59, 223, 94) 99%, rgb(59, 223, 94) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 1.1em;
  font-weight: 600;
  letter-spacing: 2px;
  line-height: 1.5em;
}

.w-contact .w-text .button .button-text-normal {
  display: none;
}

.w-contact .w-text .button .button-text-min {
  display: block;
}

.w-contact .w-text .button .button-background {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.w-contact .w-text .button .button-background::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(120deg, rgb(30, 80, 44) 0%, rgb(59, 223, 94) 99%, rgb(59, 223, 94) 100%);
  background: -webkit-linear-gradient(120deg, rgb(30, 80, 44) 0%, rgb(59, 223, 94) 99%, rgb(59, 223, 94) 100%);
  border-radius: 5px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.w-contact .w-text .button .button-background::after {
  content: "";
  display: block;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  background-color: rgb(255, 255, 255);
  border-radius: 5px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/*PC表示横並び*/
.bottons {
  display: grid;
  grid-auto-columns: 1fr;
  grid-auto-flow: column;
  gap: 1rem;
  width: fit-content;
}

.botton-items{
  margin-left: 10px;
}

/*モバイル表示縦並び*/
@media screen and (max-width: 480px){
  .bottons{
    display: flex;
    flex-direction: column;
    gap: 1em;
    width: fit-content;
  }
}
   
@media (min-width: 641px) {
  .w-contact {
    height: 500px;
  }

  .w-contact .w-text::before {
    display: block;
  }

  .w-contact .w-text .title-en {
    margin-bottom: 10px;
    font-size: 60px;
    letter-spacing: 6px;
  }

  .w-contact .w-text .title {
    margin-bottom: 25px;
    font-size: 20px;
  }

  .w-contact .w-text .text {
    margin-bottom: 35px;
    font-size: 1em;
  }

  .w-contact .w-text .button .button-text-normal {
    display: block;
  }

  .w-contact .w-text .button .button-text-min {
    display: none;
  }

  .w-contact .w-text .button .button-background::after {
    width: calc(100% - 6px);
    height: calc(100% - 6px);
  }
}
   
@media (min-width: 835px) {
  .w-contact .w-text {
    width: 80%
  }
}
   
footer .w-footer-main {
  padding: 30px 5%;
  background-color: rgb(245, 245, 245);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

footer .w-footer-main .w-company-info {
  margin-right: 0;
  margin-bottom: 27px;
  display: flex;
  flex-direction: column;
}

footer .w-footer-main .w-company-info .w-name {
  margin-bottom: 18px;
  padding: 0 10px;
  font-size: 1.3em;
  font-weight: 600;
  line-height: 1.5em;
}

footer .w-footer-main .w-company-info .w-name span {
  display: inline-block;
}

footer .w-footer-main .w-company-info .w-text .address,
footer .w-footer-main .w-company-info .w-text .number {
  margin-bottom: 10px;
  padding: 0 10px;
  line-height: 1.4em;
  letter-spacing: 1px;
}

footer .w-footer-main .w-nav {
  padding-top: 40px;
  border-top: 1px solid rgb(221, 221, 221);
}
   
footer .w-footer-main .w-nav nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

footer .w-footer-main .w-nav nav ul.footer-menu,
footer .w-footer-main .w-nav nav ul.footer-company-menu {
  display: inline-block;
  vertical-align: top;
}

footer .w-footer-main .w-nav nav ul.footer-menu li a:not(ul.footer-menu li ul li a),
footer .w-footer-main .w-nav nav ul.footer-company-menu li a {
  margin-bottom: 4px;
  padding-left: 22px;
  position: relative;
}

footer .w-footer-main .w-nav nav ul.footer-menu li a:not(ul.footer-menu li ul li a)::before,
footer .w-footer-main .w-nav nav ul.footer-company-menu li a::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  border-top: 2px solid rgb(0, 153, 91);
  border-right: 2px solid rgb(0, 153, 91);
  transform: rotate(45deg);
  position: absolute;
  top: 9px;
  left: 6px;
}

footer .w-footer-main .w-nav nav ul.footer-menu > li {
  margin-right: 15px;
  display: inline-block;
  vertical-align: top;
}
   
footer .w-footer-main .w-nav nav ul.footer-menu li ul li ul {
  margin-bottom: 5px;
  padding-left: 23px;
}

footer .w-footer-main .w-nav nav ul li a {
  padding: 5px 10px;
  display: block;
  text-decoration: none;
  color: rgb(0, 0, 0);
  font-size: 16px;
}

footer .w-footer-main .w-nav nav ul.footer-menu li ul li ul li a {
  color: rgb(0, 0, 0);
  position: relative;
  font-size: 14px;
}

footer .w-footer-main .w-nav nav ul.footer-menu li ul li ul li a::before {
  content: "-";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: -4px;
  transform: translateY(-50%);
}

footer .w-footer-sub {
  padding: 10px 5%;
  padding-bottom: 140px;
  background-color: rgb(245, 245, 245);
  border-top: 1px solid rgb(221, 221, 221);
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

footer .w-footer-sub .w-left ul {
  margin: 0;
  margin-bottom: 10px;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}
   
footer .w-footer-sub .w-left ul li a {
  margin-right: 15px;
  padding-right:15px;
  border-right: 1px solid rgb(0, 0, 0);
  display: inline-block;
  text-decoration: none;
  font-size: 14px;
  color: rgb(0, 0, 0);
}

footer .w-footer-sub .w-left ul li:last-child a {
  border: none;
}

footer .w-footer-sub .w-right span {
  font-size: 14px;
  display: inline-block;
}

footer .w-footer-fixed {
  width: 100%;
  text-align: right;
  position: fixed;
  right: 0;
  bottom: 0;
  z-index: 500;
  visibility: hidden;
  opacity: 0;
  transition: .3s;
}

footer .w-footer-fixed .movie-bnr-pc {
  display: none;
  position: absolute;
  right: 0;
  bottom: 70px;
}
   
footer .w-footer-fixed .movie-bnr-pc a img {
  width: 288px;
  height: 120px;
  margin-bottom: 5px;
}

footer .w-footer-fixed .movie-bnr-sp {
  width: 100%;
  display: none;
  position: relative;
}

footer .w-footer-fixed .movie-bnr-sp img {
  width: 100%;
  height: 127px;
  object-fit: cover;
  vertical-align: bottom;
}

footer .w-footer-fixed .page-top {
  width: 50px;
  height: 50px;
  margin-bottom: 13px;
  background-color: rgb(255, 255, 255);
  border: 1px solid rgb(0, 153, 91);
  box-shadow: 0 0 20px rgb(221, 221, 221);
  position: relative;
  right: auto;
  bottom: auto;
  cursor : pointer;
}

footer .w-footer-fixed .page-top:after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-top: 1px solid rgb(0, 153, 91);
  border-right: 1px solid rgb(0, 153, 91);
  position: absolute;
  top: 21px;
  left: 19px;
  transform: rotate(-45deg);
}

@media (min-width: 330px) {
  footer .w-footer-fixed .movie-bnr-sp {
    display: block;
  }
}
   
@media (min-width: 641px) {
  footer .w-footer-main {
    padding: 50px;
    justify-content: center;
  }

  footer .w-footer-main .w-company-info {
    flex-direction: row;
  }
  footer .w-footer-main .w-company-info .w-text .address,
  footer .w-footer-main .w-company-info .w-text .number {
    letter-spacing: 3px;
  }

  footer .w-footer-sub {
    padding-bottom: 10px;
  }

  footer .w-footer-fixed .movie-bnr-pc {
    display: block;
  }

  footer .w-footer-fixed .movie-bnr-sp {
    display: none;
  }

  footer .w-footer-fixed .page-top {
    margin-bottom: 0;
    position: absolute;
    right: 15px;
    bottom: 15px;
  }
}

@media (min-width: 1367px) {
  footer .w-footer-main {
    flex-direction: row;
  }

  footer .w-footer-main .w-nav {
    padding: 0;
    border: none;
  }

  footer .w-footer-main .w-company-info {
    margin-right: 100px;
    flex-direction: column;
  }

  footer .w-footer-sub {
    padding: 10px 15%;
  }
}
   
/* 404
------------------------------------------------------------------------*/
.m-404 .w-main-contents {
  margin: 100px 5%;
  text-align: center;
  line-height: 1.7em;
}

.m-404 .w-main-contents h1 {
  font-size: 1.5em;
  color: rgb(0, 153, 91);
}

.m-404 .w-main-contents p {
  margin-bottom: 40px;
}

.m-404 .w-main-contents div a {
  display: inline-block;
  padding: 10px 30px;
  background-color: rgb(0, 153, 91);
  color: rgb(255, 255, 255);
  text-decoration: none;
  border-radius: 5px;
}

@media (min-width: 429px) {
  .m-404 .w-main-contents {
    margin: 150px 8%;
  }

  .m-404 .w-main-contents h1 {
    font-size: 2em;
  }
}

@media (min-width: 1367px) {
  .m-404 .w-main-contents {
    margin: 200px 15%;
  }
}

/* top
------------------------------------------------------------------------*/
/* top-image */
.m-i .w-top {
  margin-bottom: 7vh;
  position: relative;
}

.m-i .w-top .w-img figure img {
  margin-top: 60px;
  width: 100%;
  min-height: 460px;
  object-fit: cover;
  position: relative;
  top: 0;
  z-index: -1;
}

.m-i .w-top .w-text {
  position: absolute;
  left: 10px;
  bottom: 30px;
  color: rgb(255, 255, 255);
  font-weight: 600;
  letter-spacing: 3px;
  text-shadow: 2px 2px 10px rgb(0, 0, 0);
}

.m-i .w-top .w-text .t-small {
  margin-bottom: 15px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgb(255, 255, 255);
  display: inline-block;
  font-size: 0.7em;
  line-height: 1.5em;
}

.m-i .w-top .w-text .t-medium {
  font-size: 1em;
  letter-spacing: 0px;
  line-height: 1.2em;
}

.m-i .w-top .w-text .t-medium span {
  margin-right: 5px;
  display: inline-block;
}

.m-i .w-top .w-text .t-large {
  margin-bottom: 7px;
  font-size: 2em;
}
   
@media (min-width: 429px) {
  .m-i .w-top {
    margin-bottom: 170px;
  }

  .m-i .w-top .w-text {
    left: 20px;
    bottom: 60px;
  }

  .m-i .w-top .w-text .t-small {
    margin-bottom: 28px;
    padding-bottom: 16px;
    font-size: 1em;
  }

  .m-i .w-top .w-text .t-medium {
    font-size: 2em;
  }

  .m-i .w-top .w-text .t-large {
    margin-bottom: 0;
    font-size: 2.8em;
  }
}
   
@media (min-width: 835px) {
  .m-i .w-top .w-text {
    left: 70px;
    bottom: 80px;
  }

  .m-i .w-top .w-text .t-medium {
    font-size: 2em;
  }

  .m-i .w-top .w-text .t-large {
    margin-bottom: 0;
    font-size: 4.2em;
  }
}
   
/* news */
.m-i .w-news {
  margin: 0 5%;
  margin-bottom: 100px;
}

.m-i .w-news .w-title {
  margin-bottom: 10px;
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  flex-wrap: wrap;
}

.m-i .w-news .w-title h2 {
  margin-right: 20px;
  margin-bottom: 40px;
  padding-top: 30px;
  color: rgb(0, 153, 91);
  font-size: 1.7em;
  position: relative;
  letter-spacing: 3px;
}
   
.m-i .w-news .w-title h2::before {
  content: "News";
  display: block;
  font-weight: 100;
  color: rgb(221, 221, 221);
  font-size: 0.8em;
  position: absolute;
  left: 0;
  top: -1px;
  letter-spacing: 4px;
}

.m-i .w-news .w-title .w-view-all {
  margin-left: auto;
}

.m-i .w-news .w-title .w-view-all a {
  display: inline-block;
  font-size: 1em;
  font-weight: 600;
  color: rgb(0, 153, 91);
}

.m-i .w-news .w-title .w-view-all a:hover {
  color: rgba(59, 223, 94, 1);
}
   
.m-i .w-news .w-news-box .news-box {
  margin: 10px 0;
  padding: 0;
  padding-bottom: 30px;
  border-bottom: 1px solid rgb(221, 221, 221);
  display: flex;
  flex-direction: column-reverse;
}

.m-i .w-news .w-news-box .news-box .w-img {
  margin-right: 0;
  margin-bottom: 10px;
  width: 100%;
}

.m-i .w-news .w-news-box .news-box .w-img img {
  width: 100%;
  min-width: 200px;
  height: 100%;
  min-height: 150px;
  object-fit: contain;
}

.m-i .w-news .w-news-box .news-box .w-text time {
  margin: 0;
  margin-bottom: 10px;
  display: block;
  color: rgb(177, 177, 177);
}
   
.m-i .w-news .w-news-box .news-box .w-text .news-category {
  margin-right: 10px;
  padding: 7px 12px 5px;
  display: inline-block;;
  border-radius: 5px;
  color: rgb(255, 255, 255);
  font-size: 0.8em;
  letter-spacing: 1px;
  vertical-align: middle;
  text-decoration: none;
}

.m-i .w-news .w-news-box .news-box .w-text p a {
  color: rgb(0, 0, 0);
  text-decoration: none;
}
   
@media (min-width: 429px) {
  .m-i .w-news {
    margin: 0 8%;
    margin-bottom: 130px;
  }

  .m-i .w-news .w-title h2 {
    font-size: 2.5em;
    letter-spacing: 7px;
  }

  .m-i .w-news .w-title h2::before {
    top: -10px;
  }

  .m-i .w-news .w-title .w-view-all a {
    font-size: 1.5em;
  }

  .m-i .w-news .w-news-box .news-box {
    margin: 0;
    margin-bottom: 10px;
    padding: 10px;
    flex-direction: row;
  }

  .m-i .w-news .w-news-box .news-box .w-img {
    margin-right: 30px;
    width: 200px;
  }

  .m-i .w-news .w-news-box .news-box .w-text time {
    margin: 0;
    margin-right: 15px;
    display: inline-block;
  }
}

@media (min-width: 1367px) {
  .m-i .w-news {
    margin: 0 15%;
    margin-bottom: 130px;
  }
}
   
/* case */
.m-i .w-case {
  margin: 0 5%;
  margin-bottom: 100px;
}

.m-i .w-case .w-title {
  margin-bottom: 10px;
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  flex-wrap: wrap;
}

.m-i .w-case .w-title h2 {
  margin-right: 20px;
  margin-bottom: 40px;
  padding-top: 30px;
  color: rgb(0, 153, 91);
  font-size: 1.7em;
  position: relative;
  letter-spacing: 3px;
}

.m-i .w-case .w-title h2::before {
  content: "Case";
  display: block;
  font-weight: 100;
  color: rgb(221, 221, 221);
  font-size: 0.8em;
  position: absolute;
  left: 0;
  top: -1px;
  letter-spacing: 4px;
}

.m-i .w-case .w-title .w-view-all {
  margin-left: auto;
}

.m-i .w-case .w-title .w-view-all a {
  display: inline-block;
  font-size: 1em;
  font-weight: 600;
  color: rgb(0, 153, 91);
}

.m-i .w-case .w-title .w-view-all a:hover {
  color: rgba(59, 223, 94, 1);
}

.m-i .w-case .w-case-box {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
}

.m-i .w-case .w-case-box .case-box {
  margin-bottom: 50px;
  width: 100%;
  display: flex;
  flex-direction: column;
  text-decoration: none;
  color: rgb(0, 0, 0);
}

.m-i .w-case .w-case-box .case-box .w-img img {
  width: 100%;
  display: block;
}

.m-i .w-case .w-case-box .case-box .w-text {
  padding: 15px;
  height: 100%;
  display: flex;
  flex-direction: column;
  background-color: rgb(179, 225, 205);
}

.m-i .w-case .w-case-box .case-box .w-text .customer-name {
  margin: 0;
  margin-bottom: 10px;
  text-align: center;
}

.m-i .w-case .w-case-box .case-box .w-text h3 {
  margin: 0;
  margin-bottom: 10px;
  color: rgb(0, 0, 0);
  text-align: center;
}

.m-i .w-case .w-case-box .case-box .w-text .w-tags {
  margin-top: auto;
}

.m-i .w-case .w-case-box .case-box .w-text .w-tags ul {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.m-i .w-case .w-case-box .case-box .w-text .w-tags ul li {
  margin-left: 30px;
  position: relative;
  list-style: none;
  font-size: 0.9em;
}

.m-i .w-case .w-case-box .case-box .w-text .w-tags ul li::before {
  content: "#";
  position: absolute;
  top: 0;
  left: -13px;
}
  
@media (min-width: 429px) {
  .m-i .w-case {
    margin: 0 8%;
    margin-bottom: 130px;
  }

  .m-i .w-case .w-title {
    top: -4px;
  }

  .m-i .w-case .w-title h2 {
    font-size: 2.5em;
    letter-spacing: 7px;
  }

  .m-i .w-case .w-title h2::before {
    top: -10px;
  }

  .m-i .w-case .w-title .w-view-all a {
    font-size: 1.5em;
  }

  .m-i .w-case .w-case-box {
    flex-direction: row;
    flex-wrap: wrap;
  }

  .m-i .w-case .w-case-box .case-box {
    margin-bottom: 50px;
    margin-left: 0;
    width: 45%;
  }

  .m-i .w-case .w-case-box .case-box:nth-child(even) {
    margin-left: 10%;
  }
}

@media (min-width: 835px) {  
  .m-i .w-case .w-case-box .case-box {
    margin: 0;
    margin-bottom: 0px;
    margin-right: 5%;
    width: 30%;
  }

  .m-i .w-case .w-case-box .case-box:last-child {
    margin-right: 0;
  }

  .m-i .w-case .w-case-box .case-box:nth-child(even) {
    margin-left: 0;
  }
}
  
@media (min-width: 1367px) {
  .m-i .w-case {
    margin: 0 15%;
    margin-bottom: 130px;
  }

  .m-i .w-case .w-case-box {
    flex-wrap:nowrap;
  }
}
   
/* home, category (news)
------------------------------------------------------------------------*/
/* breadcrumb */
.m-h .w-breadcrumb ol,
.m-c .w-breadcrumb ol {
  margin: 0;
  margin-top: 25px;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  list-style: none;
}

.m-h .w-breadcrumb ol li,
.m-c .w-breadcrumb ol li {
  margin-right: 2em;
  margin-bottom: 5px;
  font-size: 10px;
  position: relative;
}

.m-h .w-breadcrumb ol li:not(:last-child):before,
.m-c .w-breadcrumb ol li:not(:last-child):before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  position: absolute;
  border-top: 1px solid rgb(221, 221, 221);
  border-right: 1px solid rgb(221, 221, 221);
  top: 50%;
  right: -1em;
  transform: translateY(-50%) rotate(45deg);
}

.m-h .w-breadcrumb ol li a,
.m-c .w-breadcrumb ol li a {
  display: inline-block;
  text-decoration: none;
  font-size: 10px;
}
/* ---------- */

.m-h .w-header-content,
.m-c .w-header-content {
  width: 100%;
  height: 75vh;
  position: relative;
  box-shadow: 0px -8px 8px -1px rgba(231, 231, 231,0.16) inset;
}

.m-h .w-header-content figure,
.m-c .w-header-content figure {
  width: 100%;
  height: 100%;
}

.m-h .w-header-content img,
.m-c .w-header-content img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: right;
  position: relative;
  z-index: -1;
}
   
.m-h .w-header-content .w-text,
.m-c .w-header-content .w-text {
  position: absolute;
  bottom: 0;
  left: 5%;
}

.m-h .w-header-content .w-text .title-en,
.m-c .w-header-content .w-text .title-en {
  font-size: 3.8em;
  font-weight: 600;
  color: rgba(233, 233, 233, 0.45);
  letter-spacing: 2px;
}

.m-h .w-header-content .w-text h1,
.m-c .w-header-content .w-text h1 {
  margin: 0;
  margin-bottom: 30px;
  font-size: 1.3em;
  color: rgb(0, 153, 91);
  letter-spacing: 2px;
}

.m-h .w-main-contents,
.m-c .w-main-contents {
  margin: 0 5% 150px;
}

.m-h .w-main-contents .w-top-text,
.m-c .w-main-contents .w-top-text {
  margin: 55px 0 40px;
  padding-bottom: 35px;
  border-bottom: 6px double rgb(245, 245, 245);
}

.m-h .w-main-contents .w-top-text p,
.m-c .w-main-contents .w-top-text p {
  margin: 0;
  margin-bottom: 16px;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.5em;
}

.m-c .w-main-contents .w-category-info {
  margin-bottom: 30px;
}

.m-c .w-main-contents .w-category-info .current-category-name {
  display: inline-block;
}

.m-c .w-main-contents .w-category-info .w-other-categories {
  margin-bottom: 0;
  padding: 5px 15px;
  background-color: rgb(251, 251, 251);
  border: 1px solid rgb(221, 221, 221);
  border-radius: 5px;
}

.m-c .w-main-contents .w-category-info .w-other-categories .heading {
  margin: 15px 0px 5px;
}

.m-c .w-main-contents .w-category-info .w-other-categories .news-category:first-child {
  margin-left: 0;
}

.m-c .w-main-contents .w-view-all {
  margin-bottom: 32px;
  text-align: right;
}

.m-c .w-main-contents .w-view-all a {
  font-size: 1.2em;
  font-weight: 600;
  color: rgb(0, 153, 91);
}

.m-c .w-main-contents .w-view-all a:hover {
  color: rgba(59, 223, 94, 1);
}

.m-h .w-main-contents .w-news-box .news-box,
.m-c .w-main-contents .w-news-box .news-box {
  margin-bottom: 20px;
  padding-bottom: 50px;
  border-bottom: 1px solid rgb(221, 221, 221);
  display: flex;
  flex-direction: column;
}

.m-h .w-main-contents .w-news-box .news-box .w-img,
.m-c .w-main-contents .w-news-box .news-box .w-img {
  margin-right: 0;
  width: 100%;
  aspect-ratio: 4/ 3;
}

.m-h .w-main-contents .w-news-box .news-box .w-img img,
.m-c .w-main-contents .w-news-box .news-box .w-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.m-h .w-main-contents .w-news-box .news-box .w-text time,
.m-c .w-main-contents .w-news-box .news-box .w-text time {
  margin: 10px;
  margin-bottom: 0;
  display: inline-block;
  color: rgb(177, 177, 177);
}

.m-h .w-main-contents .w-news-box .news-box .w-text a,
.m-c .w-main-contents .w-news-box .news-box .w-text a,
.m-c .w-main-contents .w-category-info .w-other-categories .news-category {
  text-decoration: none;
}

.m-h .w-main-contents .w-news-box .news-box .w-text .w-category .news-category,
.m-c .w-main-contents .w-news-box .news-box .w-text .w-category .news-category,
.m-c .w-main-contents .w-category-info .w-other-categories .news-category {
  margin: 10px;
  padding: 6px 11px;
  font-size: 0.8em;
  color: rgb(255, 255, 255);
  display: inline-block;
  border-radius: 5px;
}

.m-h .w-main-contents .w-news-box .news-box .w-text .w-news-title p a,
.m-c .w-main-contents .w-news-box .news-box .w-text .w-news-title p a {
  padding: 10px;
  color: rgb(0, 0, 0);
  font-size: 1.2em;
  letter-spacing: 1px;
}

.m-h .nav-links a,
.m-c .nav-links a {
  margin: 5px;
  padding: 10px 15px;
  display: inline-block;
  text-decoration: none;
  background-color: rgb(251, 251, 251);
  border: 1px solid rgb(221, 221, 221);
  border-radius: 5px;
}

.m-h .nav-links .current,
.m-c .nav-links .current {
  margin: 5px;
  padding: 11px 16px;
  display: inline-block;
  text-decoration: none;
  background-color: rgb(221, 221, 221);
  border-radius: 5px;
}
   
@media (min-width: 429px) {
  /* breadcrumb */
  .m-h .w-breadcrumb ol,
  .m-c .w-breadcrumb ol {
    margin: 0;
    margin-top: 40px;
  }

  .m-h .w-breadcrumb ol li,
  .m-c .w-breadcrumb ol li {
    font-size: 12px;
  }

  .m-h .w-breadcrumb ol li a,
  .m-c .w-breadcrumb ol li a {
    font-size: 12px;
  }
  /* ---------- */

  .m-h .w-header-content .w-text,
  .m-c .w-header-content .w-text {
    bottom: 5%;
    left: 5%;
  }

  .m-h .w-header-content .w-text .title-en,
  .m-c .w-header-content .w-text .title-en {
    font-size: 6em;
  }

  .m-h .w-header-content .w-text h1,
  .m-c .w-header-content .w-text h1 {
    font-size: 1.8em;
  }

  .m-h .w-main-contents,
  .m-c .w-main-contents {
    margin: 0 8% 180px;
  }

  .m-h .w-main-contents .w-top-text,
  .m-c .w-main-contents .w-top-text {
    margin: 60px 0 60px;
  }

  .m-h .w-main-contents .w-top-text p,
  .m-c .w-main-contents .w-top-text p {
    font-weight: 600;
  }

  .m-c .w-main-contents .w-category-info .w-other-categories {
    margin-bottom: 60px;
  }

  .m-h .w-main-contents .w-news-box .news-box .w-text .w-category .news-category,
  .m-c .w-main-contents .w-news-box .news-box .w-text .w-category .news-category,
  .m-c .w-main-contents .w-category-info .w-other-categories .news-category {
    padding: 10px 15px;
    font-size: 1em;
  }

  .m-c .w-main-contents .w-view-all {
    margin-bottom: 0;
  }

  .m-c .w-main-contents .w-view-all a {
    font-size: 1.5em;
  }

  .m-h .w-main-contents .w-news-box .news-box,
  .m-c .w-main-contents .w-news-box .news-box {
    padding-bottom: 15px;
    flex-direction: row;
  }

  .m-h .w-main-contents .w-news-box .news-box .w-img,
  .m-c .w-main-contents .w-news-box .news-box .w-img {
    margin-right: 30px;
    width: 300px;
  }

  .m-h .w-main-contents .w-news-box .news-box .w-text time,
  .m-c .w-main-contents .w-news-box .news-box .w-text time {
    margin-bottom: 10px;
  }
}
   
   @media (min-width: 835px) {
     .m-h .w-header-content .w-text .title-en,
     .m-c .w-header-content .w-text .title-en {
       font-size: 11em;
     }
   
     .m-h .w-header-content .w-text h1,
     .m-c .w-header-content .w-text h1 {
       font-size: 2.5em;
     }
   }
   
   @media (min-width: 1367px) {
     .m-h .w-header-content .w-text,
     .m-c .w-header-content .w-text {
       bottom: 5%;
       left: 10%;
     }
   
     .m-h .w-main-contents,
     .m-c .w-main-contents {
       margin: 0 15% 200px;
     }
   
     .m-h .w-main-contents .w-top-text,
     .m-c .w-main-contents .w-top-text {
       margin: 60px 0 40px;
     }
   }
   
/* page
------------------------------------------------------------------------*/
/* breadcrumb */
.m-p .w-breadcrumb ol {
  margin: 0;
  margin-top: 25px;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  list-style: none;
}
/* ---------- */

.m-p .w-breadcrumb ol li {
  margin-right: 2em;
  margin-bottom: 5px;
  font-size: 10px;
  position: relative;
}
   
.m-p .w-breadcrumb ol li:not(:last-child):before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  position: absolute;
  border-top: 1px solid rgb(221, 221, 221);
  border-right: 1px solid rgb(221, 221, 221);
  top: 50%;
  right: -1em;
  transform: translateY(-50%) rotate(45deg);
}

.m-p .w-breadcrumb ol li a {
  display: inline-block;
  text-decoration: none;
  font-size: 10px;
}
/* ---------- */

.m-p .w-header-content {
  width: 100%;
  height: 75vh;
  position: relative;
  box-shadow: 0px -8px 8px -1px rgba(231, 231, 231, 0.16) inset;
}
   
.m-p .w-header-content figure {
  width: 100%;
  height: 100%;
}

.m-p .w-header-content img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: right;
  position: relative;
  z-index: -1;
}

.m-p .w-header-content .w-text {
  position: absolute;
  bottom: 0;
  left: 5%;
}

.m-p .w-header-content .w-text .title-en {
  font-size: 3.8em;
  font-weight: 600;
  color: rgba(233, 233, 233, 0.45);
  letter-spacing: 2px;
}

.m-p .w-header-content .w-text h1 {
  margin: 0;
  margin-bottom: 30px;
  font-size: 1.3em;
  color: rgb(0, 153, 91);
  letter-spacing: 2px;
}

.m-p .w-main-contents {
  margin: 0 5% 150px;
}

.m-p .w-main-contents .w-top-text {
  margin: 55px 0;
  padding-bottom: 35px;
  border-bottom: 6px double rgb(245, 245, 245);
}
   
.m-p .w-main-contents .w-top-text p {
  margin: 0;
  margin-bottom: 16px;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.5em;
}

.m-p .w-main-contents h2 {
  margin-bottom: 20px;
  color: rgb(0, 153, 91);
  font-size: 1.5em;
  letter-spacing: 2px;
}

.m-p .w-main-contents h5 {
  line-height: 1.5em;
}

.m-p .w-main-contents p {
  margin-bottom: 35px;
  line-height: 1.7em;
}

.m-p .normal-button a {
  padding: 15px 20px;
  font-weight: normal;
  letter-spacing: 2px;
  font-size: 0.9em;
  transition: .3s;
  border: 3px solid rgb(0, 153, 91) !important;
}

.m-p .normal-button a:hover {
  color: rgb(0, 153, 91) !important;
  background-color: rgb(255, 255, 255) !important;
  border: 3px solid rgb(0, 153, 91) !important;
}
   
@media (min-width: 429px) {
  /* breadcrumb */
  .m-p .w-breadcrumb ol {
    margin: 0;
    margin-top: 40px;
  }

  .m-p .w-breadcrumb ol li {
    font-size: 12px;
  }

  .m-p .w-breadcrumb ol li a {
    font-size: 12px;
  }
  /* ---------- */

  .m-p .w-header-content .w-text {
    bottom: 5%;
    left: 5%;
  }

  .m-p .w-header-content .w-text .title-en {
    font-size: 3.5em;
  }

  .m-p .w-header-content .w-text h1 {
    font-size: 1.8em;
  }

  .m-p .w-main-contents {
    margin: 0 8% 180px;
  }

  .m-p .w-main-contents .w-top-text {
    margin: 60px 0;
  }

  .m-p .w-main-contents .w-top-text p {
    font-weight: 600;
  }

  .m-p .w-main-contents h2 {
    margin-bottom: 40px;
    font-size: 1.8em;
  }

  .m-p .normal-button a {
    padding: 20px 40px;
    font-weight: 600;
    letter-spacing: 2px;
    font-size: 1em;
  }
}
   
@media (min-width: 835px) {
  .m-p .w-header-content .w-text .title-en {
    font-size: 11em;
  }

  .m-p .w-header-content .w-text h1 {
    font-size: 2.5em;
  }
}

@media (min-width: 1367px) {
  .m-p .w-header-content .w-text {
    bottom: 5%;
    left: 10%;
  }

  .m-p .w-main-contents {
    margin: 0 15% 200px;
  }

  .m-p .w-main-contents .w-top-text {
    margin: 60px 0;
  }

  .m-p .w-main-contents h2 {
    font-size: 2.5em;
  }
}
   
/* page-contact
------------------------------------------------------------------------*/
.m-p-contact .w-main-contents .item-row {
  padding-bottom: 30px;
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid rgb(226, 226, 226);
}

.m-p-contact .w-main-contents .item-row .item-name {
  width: 300px;
  margin-bottom: 5px;
}

.m-p-contact .w-main-contents .item-row .item-value {
  width: 100%;
}

.m-p-contact .w-main-contents .required {
  margin-right: 10px;
  padding: 3px 8px;
  font-size: 12px;
  color: rgb(255, 255, 255);
  vertical-align: middle;
  background-color: rgb(206, 5, 44);
}

.m-p-contact .w-main-contents .not-required {
  margin-right: 10px;
  padding: 3px 8px;
  font-size: 12px;
  color: rgb(255, 255, 255);
  vertical-align: middle;
  background-color: rgb(119, 119, 119);
}
   
.m-p-contact .w-main-contents p input[type="text"],
.m-p-contact .w-main-contents p input[type="email"],
.m-p-contact .w-main-contents p input[type="tel"],
.m-p-contact .w-main-contents p textarea {
  width: 100%;
  padding: 15px;
  border: 1px solid rgb(221, 221, 221);
  border-radius: 5px;
  box-sizing: border-box;
  background-color: rgb(245, 245, 245);
}

.m-p-contact .w-main-contents p input[type="submit"] {
  padding: 15px 30px;;
  border: none;
  background-color: rgb(0, 153, 91);
  border-radius: 5px;
  color: rgb(255, 255, 255);
  letter-spacing: 3px;
}

@media (min-width: 835px) {
  .m-p-contact .w-main-contents .item-row {
    flex-direction: row;
  }
}
   
/* page-sitemap
------------------------------------------------------------------------*/
.m-p-sitemap .w-main-contents ul {
  margin-top: 20px;
  list-style: none;
}

.m-p-sitemap .w-main-contents ul li {
  margin-bottom: 20px;
}

.m-p-sitemap .w-main-contents ul li a {
  text-decoration: none;
}

@media (min-width: 429px) {
  /* breadcrumb */
  .m-p-sitemap .w-breadcrumb ol {
    margin: 40px 0;
  }
  /* ---------- */
}
   
/* page-case
------------------------------------------------------------------------*/
.m-p-case .w-case-nav-num {
  margin-bottom: 20px;
}

.m-p-case .w-case-nav-num .case-nav-num {
  margin: 5px;
  padding: 10px 15px;
  display: inline-block;
  text-decoration: none;
  color: rgb(0 100 61);
  font-weight: 600;
  cursor : pointer;
}

.m-p-case .w-main-contents .w-search-area .industries,
.m-p-case .w-main-contents .w-search-area .business {
  margin-bottom: 40px;
  text-align: center;
}

.m-p-case .w-main-contents .w-search-area .industries ul,
.m-p-case .w-main-contents .w-search-area .business ul {
  margin: 0;
  padding: 0;
  display: inline-block;
  text-align: left;
}

.m-p-case .w-main-contents .w-search-area .industries ul li,
.m-p-case .w-main-contents .w-search-area .business ul li {
  margin: 15px;
  list-style: none;
  display: inline-block;
}

.m-p-case .w-main-contents .w-case .w-case-box {
  display: flex;
  flex-wrap: wrap;
}

.m-p-case .w-main-contents .w-case .w-case-box .case-box {
  margin: 0;
  margin-bottom: 50px;
  width: 100%;
  display: flex;
  flex-direction: column;
  text-decoration: none;
}

.m-p-case .w-main-contents .w-case .w-case-box .case-box .w-img {
  position: relative;
}

.m-p-case .w-main-contents .w-case .w-case-box .case-box .w-img .w-category {
  position: absolute;
  top: 10px;
  left: 10px;
}
  
.m-p-case .w-main-contents .w-case .w-case-box .case-box .w-img .w-category .category {
  margin-right: 3px;
  padding: 3px 12px;
  display: inline-block;
  background-color: rgb(255, 255, 255);
  border: 1px solid rgb(177, 177, 177);
}

.m-p-case .w-main-contents .w-case .w-case-box .case-box .w-img img {
  width: 100%;
  display: block;
}

.m-p-case .w-main-contents .w-case .w-case-box .case-box .w-text {
  padding: 15px;
  height: 100%;
  display: flex;
  flex-direction: column;
  background-color: rgb(179, 225, 205);
}

.m-p-case .w-main-contents .w-case .w-case-box .case-box .w-text .customer-name {
  margin: 0;
  margin-bottom: 10px;
  text-align: center;
}

.m-p-case .w-main-contents .w-case .w-case-box .case-box .w-text h3 {
  margin: 0;
  margin-bottom: 10px;
  color: rgb(0, 0, 0);
  text-align: center;
  font-size: 1.1em;
}

.m-p-case .w-main-contents .w-case .w-case-box .case-box .w-text .w-tags {
  margin-top: auto;
}

.m-p-case .w-main-contents .w-case .w-case-box .case-box .w-text .w-tags ul {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.m-p-case .w-main-contents .w-case .w-case-box .case-box .w-text .w-tags ul li {
  margin-left: 30px;
  position: relative;
  list-style: none;
  font-size: 0.9em;
}

.m-p-case .w-main-contents .w-case .w-case-box .case-box .w-text .w-tags ul li::before {
  content: "#";
  position: absolute;
  top: 0;
  left: -13px;
}
   
@media (min-width: 429px) {
  .m-p-case .w-main-contents .w-case .w-case-box .case-box {
    margin-bottom: 50px;
    margin-left: 0;
    width: 45%;
  }

  .m-p-case .w-main-contents .w-case .w-case-box .case-box:nth-child(even) {
    margin-left: 10%;
  }
}
   
@media (min-width: 835px) {
  .m-p-case .w-main-contents .w-case .w-case-box .case-box {
    margin: 0;
    margin-bottom: 70px;
    margin-right: 5%;
    width: 30%;
  }

  .m-p-case .w-main-contents .w-case .w-case-box .case-box:nth-child(even) {
    margin-left: 0;
  }

  .m-p-case .w-main-contents .w-case .w-case-box .case-box:nth-child(3n) {
    margin-right: 0;
  }
}
   
/* single
------------------------------------------------------------------------*/
/* breadcrumb */
.m-s .w-breadcrumb ol {
  margin: 0;
  margin-bottom: 30px;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  list-style: none;
}

.m-s .w-breadcrumb ol li {
  margin-right: 2em;
  margin-bottom: 5px;
  font-size: 10px;
  position: relative;
}

.m-s .w-breadcrumb ol li:not(:last-child):before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  position: absolute;
  border-top: 1px solid rgb(221, 221, 221);
  border-right: 1px solid rgb(221, 221, 221);
  top: 50%;
  right: -1em;
  transform: translateY(-50%) rotate(45deg);
}

.m-s .w-breadcrumb ol li a {
  display: inline-block;
  text-decoration: none;
  font-size: 10px;
}
/* ---------- */

.m-s .w-header-content {
  width: 100%;
  height: 30vh;
  min-height: 250px;
  position: relative;
  box-shadow: 0px -8px 8px -1px rgba(231, 231, 231, 0.16) inset;
}

.m-s .w-header-content figure {
  width: 100%;
  height: 100%;
}
   
.m-s .w-header-content img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: right;
  display: block;
  margin: 0 0 0 auto;
  position: relative;
  z-index: -1;
}

.m-s .w-header-content .w-text {
  position: absolute;
  bottom: 5%;
  left: 5%;
}

.m-s .w-header-content .w-text .title-en {
  margin-bottom: 2px;
  font-size: 3em;
  font-weight: 600;
  color: rgba(179, 179, 179, 0.8);
  letter-spacing: 2px;
  mix-blend-mode: color-burn;
}

.m-s .w-header-content .w-text h2 {
  margin: 0 0 23px;
  font-size: 1.2em;
  color: rgb(0, 153, 91);
  letter-spacing: 2px;
  position: relative;
}

.m-s .w-main-contents {
  margin: 0 5%;
  margin-top: 25px;
  margin-bottom: 150px;
}
   
.m-s .normal-button a {
  padding: 15px 20px;
  font-weight: normal;
  letter-spacing: 2px;
  font-size: 0.9em;
  transition: .3s;
  border: 3px solid rgb(0, 153, 91);
}

.m-s .normal-button a:hover {
  color: rgb(0, 153, 91) !important;
  background-color: rgb(255, 255, 255) !important;
}
   
@media (min-width: 429px) {
  /* breadcrumb */
  .m-s .w-breadcrumb ol {
    margin: 0;
    margin-bottom: 60px;
  }

  .m-s .w-breadcrumb ol li {
    font-size: 12px;
  }

  .m-s .w-breadcrumb ol li a {
    font-size: 12px;
  }
  /* ---------- */

  .m-s .w-header-content .w-text {
    left: 8%;
  }

  .m-s .w-main-contents {
    margin: 0 8%;
    margin-top: 40px;
    margin-bottom: 180px;
  }

  .m-s .normal-button a {
    padding: 20px 40px;
    font-weight: 600;
    letter-spacing: 2px;
    font-size: 1em;
  }
}
   
@media (min-width: 1367px) {
  .m-s .w-header-content .w-text {
    left: 15%;
  }

  .m-s .w-main-contents {
    margin: 0 15%;
    margin-top: 40px;
    margin-bottom: 200px;
  }
}
   
/* single-case
------------------------------------------------------------------------*/
.m-s-c .w-main-contents h2 {
  margin: 2.5em 0 1.9em;
  padding-bottom: 40px;
  font-size: 2.5em;
  color: rgb(0, 153, 91);
  text-align: center;
  line-height: 1.2;
  border-bottom: 3px solid rgb(223, 223, 227);
  position: relative;
}

.m-s-c .w-main-contents h2::before {
  content: "";
  width: 200px;
  height: 1px;
  position: absolute;
  bottom: -1px;
  left: 50%;
  transform: translateX(-50%);
  background-color: rgb(0 100 61);
}

.m-s-c .w-main-contents h3 {
  font-size: 2em;
}

.m-s-c .w-main-contents h4 {
  margin-bottom: 0.6em;
  padding-left: 0.6em;
  border-left: 5px solid rgb(0, 153, 91);
  font-size: 1.3em;
}

.m-s-c .w-main-contents p {
  line-height: 2em;
}

.m-s-c .w-main-contents .overview-box {
  margin-bottom: 50px;
  display: flex;
  flex-wrap: wrap;
}

.m-s-c .w-main-contents .overview-box .w-img {
  width: 100%;
}

.m-s-c .w-main-contents .overview-box .w-img img {
  width: 100%;
  object-fit: cover;
}

.m-s-c .w-main-contents .overview-box .w-text {
  width: 100%;
  padding: 0;
  padding-top: 25px;
}

.m-s-c .w-main-contents .overview-box .w-text .w-customer h4 {
  margin: 0;
  margin-bottom: 35px;
  padding-left: 1em;
  border-left: 22px solid;
  font-size: 1.3em;
  color: rgb(179, 225, 205);
  line-height: 2em;
}

.m-s-c .w-main-contents .overview-box .w-text .w-customer h4 span {
  display: inline-block;
}

.m-s-c .w-main-contents .overview-box .w-text .w-overview {
  margin-bottom: 20px;
}

.m-s-c .w-main-contents .overview-box .w-text .w-overview h3 {
  margin: 0;
  font-size: 1.5em;
  color:rgb(0, 153, 91);
  line-height: 1.3em;
}


.m-s-c .w-main-contents .overview-box .w-text .w-pdf {
  margin-bottom: 10px;
}

.m-s-c .w-main-contents .overview-box .w-text .w-pdf ul {
  margin: 0;
  margin-bottom: 5px;
  padding: 0;
}

.m-s-c .w-main-contents .overview-box .w-text .w-pdf ul li {
  list-style: none;
  display: inline-block;
}

.m-s-c .w-main-contents .overview-box .w-text .w-pdf ul li a {
  padding: 4px 15px;
  border: 1px solid rgba(179, 179, 179, 0.8);
  display: inline-block;
  text-decoration: none;
}

.m-s-c .w-main-contents .overview-box .w-text .w-equipments {
  display: flex;
}

.m-s-c .w-main-contents .overview-box .w-text .w-equipments h5 {
  margin: 0;
}

.m-s-c .w-main-contents .overview-box .w-text .w-equipments ul {
  margin: 0;
  margin-left: 20px;
  padding: 0;
}

.m-s-c .w-main-contents .overview-box .w-text .w-equipments ul li {
  margin-left: 20px;
  display: inline-block;
  list-style: none;
  position: relative;
}

.m-s-c .w-main-contents .overview-box .w-text .w-equipments ul li::before {
  content: "#";
  position: absolute;
  top: 0;
  left: -12px;
}

.m-s-c .w-main-contents .w-system .w-system-box {
  display: flex;
  flex-wrap: wrap;
}

.m-s-c .w-main-contents .w-system .w-system-box .system-box {
  margin-bottom: 50px;
  width: 100%;
  border: 1px solid rgb(0, 0, 0);
  padding: 20px;
  box-sizing: border-box;
  text-decoration: none;
}

.m-s-c .w-main-contents .w-system .w-system-box .system-box h3 {
  font-size: 1.3em;
}

.m-s-c .w-main-contents .w-related-case .w-case-box {
  display: flex;
  flex-wrap: wrap;
}

.m-s-c .w-main-contents .w-related-case .w-case-box .case-box {
  margin-bottom: 50px;
  width: 100%;
  display: flex;
  flex-direction: column;
  text-decoration: none;
}

.m-s-c .w-main-contents .w-related-case .w-case-box .case-box .w-img {
  position: relative;
}

.m-s-c .w-main-contents .w-related-case .w-case-box .case-box .w-img .w-category {
  position: absolute;
  top: 10px;
  left: 10px;
}

.m-s-c .w-main-contents .w-related-case .w-case-box .case-box .w-img .w-category .category {
  margin-right: 3px;
  padding: 3px 12px;
  display: inline-block;
  background-color: rgb(255, 255, 255);
  border: 1px solid rgb(177, 177, 177);
}

.m-s-c .w-main-contents .w-related-case .w-case-box .case-box .w-img img {
  width: 100%;
  display: block;
}

.m-s-c .w-main-contents .w-related-case .w-case-box .case-box .w-text {
  padding: 15px;
  height: 100%;
  display: flex;
  flex-direction: column;
  background-color: rgb(179, 225, 205);
}

.m-s-c .w-main-contents .w-related-case .w-case-box .case-box .w-text .customer-name {
  margin: 0;
  margin-bottom: 10px;
  text-align: center;
}

.m-s-c .w-main-contents .w-related-case .w-case-box .case-box .w-text h5 {
  margin: 0;
  margin-bottom: 10px;
  color: rgb(0, 0, 0);
  text-align: center;
  font-size: 1.1em;
}

.m-s-c .w-main-contents .w-related-case .w-case-box .case-box .w-text .w-tags {
  margin-top: auto;
}

.m-s-c .w-main-contents .w-related-case .w-case-box .case-box .w-text .w-tags ul {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.m-s-c .w-main-contents .w-related-case .w-case-box .case-box .w-text .w-tags ul li {
  margin-left: 30px;
  position: relative;
  list-style: none;
  font-size: 0.9em;
}

.m-s-c .w-main-contents .w-related-case .w-case-box .case-box .w-text .w-tags ul li::before {
  content: "#";
  position: absolute;
  top: 0;
  left: -13px;
}

@media (min-width: 429px) {
  .m-s-c .w-main-contents .w-system .w-system-box .system-box {
    margin-bottom: 50px;
    margin-left: 0;
    width: 45%;
  }

  .m-s-c .w-main-contents .w-system .w-system-box .system-box:nth-child(even) {
    margin-left: 10%;
  }

  .m-s-c .w-main-contents .w-related-case .w-case-box .case-box {
    margin-bottom: 50px;
    margin-left: 0;
    width: 45%;
  }

  .m-s-c .w-main-contents .w-related-case .w-case-box .case-box:nth-child(even) {
    margin-left: 10%;
  }
}
   
@media (min-width: 835px) {
  .m-s-c .w-main-contents .overview-box {
    flex-wrap: nowrap;
  }

  .m-s-c .w-main-contents .overview-box .w-img {
    width: 40%;
  }

  .m-s-c .w-main-contents .overview-box .w-text {
    padding: 0 5%;
    width: 60%;
  }

  .m-s-c .w-main-contents .w-system .w-system-box .system-box {
    margin: 0;
    margin-bottom: 0px;
    margin-right: 5%;
    width: 30%;
  }

  .m-s-c .w-main-contents .w-system .w-system-box .system-box:nth-child(even) {
    margin-left: 0;
  }

  .m-s-c .w-main-contents .w-related-case .w-case-box .case-box {
    margin: 0;
    margin-bottom: 0px;
    margin-right: 5%;
    width: 30%;
  }

  .m-s-c .w-main-contents .w-related-case .w-case-box .case-box:last-child {
    margin-right: 0;
  }

  .m-s-c .w-main-contents .w-related-case .w-case-box .case-box:nth-child(even) {
    margin-left: 0;
  }
}

/* single-news
------------------------------------------------------------------------*/
.m-s-n .w-main-contents .w-time time {
  margin-bottom: 8px;
  display: inline-block;
  font-size: 0.8em;
  color: rgb(177, 177, 177);
  letter-spacing: 3px;
}

.m-s-n .w-main-contents .w-category .news-category {
  margin: 0 10px;
  margin-bottom: 10px;
  margin-left: 0;
  padding: 7px 11px;
  text-decoration: none;
  color: rgb(255, 255, 255);
  display: inline-block;
  border-radius: 5px;
}

.m-s-n .w-main-contents h1 {
  margin: 15px 0 30px;
}

.m-s-n .w-main-contents .news-thumbnail {
  margin: 0 auto;
  margin-bottom: 45px;
  width: 100%;
  max-width: 1024px;
  height: 100%;
  display: block;
  object-fit: contain;
  border-radius: 5px;
}

.m-s-n .w-main-contents p {
  margin: 15px 0;
  line-height: 1.5em;
}
   
@media (min-width: 429px) {
  .m-s-n .w-main-contents .w-time time {
    margin-bottom: 13px;
    font-size: 1.2em;
  }

  .m-s-n .w-main-contents .w-category .news-category {
    margin: 10px;
    margin-left: 0;
    padding: 10px 15px;
  }

  .m-s-n .w-main-contents h1 {
    margin: 30px 0 50px;
  }

  .m-s-n .w-main-contents .news-thumbnail {
    margin-bottom: 100px;
  }
}

@media (min-width: 835px) {
  .m-s-n .w-main-contents h1 {
    margin: 70px 0 80px;
  }
}
   
/* search
------------------------------------------------------------------------*/
.m-search .w-main-contents {
  margin: 100px 5%;
  line-height: 1.7em;
}

.m-search .w-main-contents .w-searchform {
  margin-bottom: 40px;
}

.m-search .w-main-contents .w-searchform .search-form {
  display: flex;
}

.m-search .w-main-contents .w-searchform .search-form .text-box {
  width: 100%;
  max-width: 500px;
  margin-right: 15px;
  padding: 6px 10px;
  border: 1px solid rgb(204, 204, 204);
  border-radius: 4px;
}

.m-search .w-main-contents .w-searchform .search-form .btn-search {
  padding: 12px 6px 10px;
  border: solid 1px rgb(204, 204, 204);
  border-radius: 4px;
  background-color: rgb(245, 245, 245);
  text-align: center;
  line-height: 1;
  transition: all .2s ease 0s;
}

.m-search .w-main-contents .w-found-number {
  margin-bottom: 70px;
  font-weight: 600;
}

.m-search .w-main-contents .w-search-result h1 {
  margin-bottom: 50px;
  color: rgb(0, 153, 91);
}

.m-search .w-main-contents .w-search-result .result-box {
  margin-bottom: 45px;
}

.m-search .w-main-contents .w-search-result .result-box h2 {
  margin-bottom: 5px;
  font-size: 1.3em;
}

.m-search .w-main-contents .w-search-result .result-box h2 a {
  text-decoration: none;
  color: rgb(0, 153, 91);
}

.m-search .w-main-contents .w-search-result .result-box h2 a:hover {
  text-decoration: underline;
}

.m-search .w-main-contents .w-search-result .result-box p {
  margin: 0;
  font-size: 0.9em;
}
   
@media (min-width: 429px) {
  .m-search .w-main-contents {
    margin: 150px 8%;
  }
}
   
@media (min-width: 1367px) {
  .m-search .w-main-contents {
    margin: 200px 15%;
  }
}
   
     /* v4 */
     .home-layout-v4 .home_heading {
       padding: 100px 60px;
       background-color: rgba(30,36,49,.3);
       color: #fff;
       font-size: 3.0rem;
       line-height: 1.1;
       text-align: center;
     }
     .home-layout-v4 .home_column {
       display: flex;
       flex-wrap: wrap;
     }
     .home-layout-v4 .home_column > [class*="column_item"] {
       position: relative;
       width: 50%;
       background-color: #ffffff;
       overflow: hidden;
     }
     .home-layout-v4 .home_frame {
       position: relative;
     }
     .home-layout-v4 .home_frame_2 {
       position: relative;
       margin: 3.5% 0 0;
       padding: 3.5% 0 0;
     }
     .home-layout-v4 .home_frame_2::before {
       content: "";
       position: absolute;
       top: 0;
       left: 0;
       width: 13.15%;
       height: 1px;
       background-color: #6f6f6f;
     }
     .home-layout-v4 .home_frame_3 {
       background-color: #343434;
       transition: all .2s ease-out 0s;
       z-index: -1;
       opacity: 0;
     }
     .home-layout-v4 .home_column > [class*="column_item"] > .home_frame > [class*="home_frame"].is-active + .home_frame_3 {
       opacity: 1.0;
       z-index: 2;
     }
     .home-layout-v4 .home_frame_4 {
       position: relative;
       display: block;
       cursor: pointer;
       -webkit-transform: perspective(1px) translateZ(0);
       transform: perspective(1px) translateZ(0);
       overflow: hidden;
     }
     .home-layout-v4 .home_frame_4::before {
       position: absolute;
       top: 0;
       right: 0;
       bottom: 0;
       left: 0;
       border: 0px solid #fff;
       -webkit-transition-property: border-width;
       transition-property: border-width;
       -webkit-transition-duration: 0.1s;
       transition-duration: 0.1s;
       -webkit-transition-timing-function: ease-out;
       transition-timing-function: ease-out;
       content: "";
     }
     .home-layout-v4 .home_frame_4:hover::before {
       -webkit-transform: translateY(0);
       transform: translateY(0);
       border-width: 10px;
     }
     .home-layout-v4 .home_link {
       overflow: hidden;
       display: flex;
       flex-wrap: wrap;
       margin: -5px -6.57% 0 0;
     }
     .home-layout-v4 .home_link > li {
       margin: 5px 6.57% 0 0;
     }
     .home-layout-v4 .home_link > li:last-child {
       margin-right: 0;
     }
     .home-layout-v4 .home_link > li > a {
       color: #fff;
       font-size: 1.8rem;
     }
     .home-layout-v4 .home_link > li > a::after {
       content: "";
       position: relative;
       top: -2px;
       right: 2px;
       display: inline-block;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #fff;
       border-right: 1px solid #fff;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
     }
     .home-layout-v4 .home_flex_wrapper {
       position: absolute;
       top: 0;
       left: 0;
       width: 100%;
       min-height: 100%;
     }
     .home-layout-v4 .home_flex_wrapper .home_flex_close {
       position: absolute;
       top: 4%;
       right: 2%;
       display: block;
       text-indent: -9999em;
       width: 30px;
       height: 30px;
       z-index: 2;
       cursor: pointer;
     }
     .home-layout-v4 .home_flex_wrapper .home_flex_close:hover {
       opacity: .7;
     }
     .home-layout-v4 .home_flex_wrapper .home_flex_close::before,
     .home-layout-v4 .home_flex_wrapper .home_flex_close::after {
       position: absolute;
       top: 14px;
       right: -5px;
       width: 41px;
       height: 1px;
       background-color: #fff;
       content: "";
     }
     .home-layout-v4 .home_flex_wrapper .home_flex_close::before {
       -webkit-transform: rotate(-45deg);
       transform: rotate(-45deg);
     }
     .home-layout-v4 .home_flex_wrapper .home_flex_close::after {
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
     }
     .home-layout-v4 .home_flex_wrapper .home_flex_outer {
       display: flex;
       position: absolute;
       top: 0;
       left: 0;
       width: 100%;
       height: 100%;
     }
     .home-layout-v4 .home_flex_wrapper .home_flex_outer .home_flex_inner {
       display: flex;
       align-items: center;
       width: 100%;
       min-height: 100%;
     }
     .home-layout-v4 .home_inner_2 {
       width: 100%;
       color: #ffffff;
       box-sizing: border-box;
       padding: 0 7%;
       text-align: center;
       display: inline-block;
     }
     .home-layout-v4 .home_title {
       font-size: 2.4rem;
       line-height: 1.1;
     }
     .home-layout-v4 .home_title_2 {
       margin-bottom: .5em;
       font-size: 2.2rem;
       font-weight: bold;
     }
     .home-layout-v4 .home_text {
       margin: .8em 0 0;
       font-size: 1.25rem;
       line-height: 1.25;
       text-align: left;
       display: inline-block;
     }
     .home-layout-v4 .home_text_2 {
       font-size: 2.2rem;
     }
     .home-layout-v4 .home_image img {
       width: 100%;
     }
     
     /*製品サービス見出し*/
     .sample_text21 {
       position: relative;
       font-weight: bold;
       text-align: center;
       /*margin: 0 auto 50px;*/
       margin-top: 120px;
       margin-bottom: 120px;
     }
   
     .sample_text21 span {
       position: relative;
       z-index: 2;
     }
   
     .sample_text21::before {
       content: attr(data-en);
       position: absolute;
       top: -80px;
       left: 50%;
       transform: translateX(-50%);
       color: rgba(119,188,255,0.2);
       font-size: 80px;
     }
   
     .sct-business {
       padding-top: 100px;
       padding-bottom: 140px
   }
   
   @media (max-width: 459px){
     .home-layout-v4 .home_column > [class*="column_item"] {
       width: 100%;
     }
     .home-layout-v4 .home_title{
       font-size:1.8em
     }
     .home-layout-v4 .home_text{
       font-size:0.9rem
     }
   
   }
   
   @media screen and (max-width: 640px) {
       .sct-business {
           padding-top:60px;
           padding-bottom: 20px
       }
   }
   
   .sct-business .cover {
       overflow-x: hidden;
       position: relative
   }
   
   .sct-business .cover.visible::after,.sct-business .cover.visible::before {
       right: -100%
   }
   
   .sct-business .cover.visible.hidden::after,.sct-business .cover.visible.hidden::before {
       display: none
   }
   
   .sct-business .cover::before {
       content: "";
       position: absolute;
       width: 100%;
       height: 100%;
       right: 0;
       top: 0;
       z-index: 1;
       background-color: #f2f6fe;
       -webkit-transition: all .8s cubic-bezier(.77,0,.175,1);
       transition: all .8s cubic-bezier(.77,0,.175,1);
       -webkit-transition-timing-function: cubic-bezier(.77,0,.175,1);
       transition-timing-function: cubic-bezier(.77,0,.175,1);
       -webkit-transition-delay: .2s;
       transition-delay: .2s
   }
   
   .sct-business .cover::after {
       content: "";
       position: absolute;
       width: 100%;
       height: 100%;
       right: 0;
       top: 0;
       background: #f2f6fe;
       z-index: 2;
       -webkit-transition: all .8s cubic-bezier(.77,0,.175,1);
       transition: all .8s cubic-bezier(.77,0,.175,1);
       -webkit-transition-timing-function: cubic-bezier(.77,0,.175,1);
       transition-timing-function: cubic-bezier(.77,0,.175,1)
   }
   
   .sct-business .business-flex {
       display: -webkit-box;
       display: -ms-flexbox;
       display: flex;
       -ms-flex-wrap: wrap;
       flex-wrap: wrap;
       -webkit-box-pack: justify;
       -ms-flex-pack: justify;
       justify-content: space-between;
       padding-top: 50px
   }
   
   @media screen and (max-width: 640px) {
       .sct-business .business-flex {
           -webkit-box-orient:vertical;
           -webkit-box-direction: normal;
           -ms-flex-flow: column;
           flex-flow: column;
           -webkit-box-pack: center;
           -ms-flex-pack: center;
           justify-content: center;
           -webkit-box-align: center;
           -ms-flex-align: center;
           align-items: center
       }
   }
   
   .sct-business .business-flex .m-circle {
       display: -webkit-box;
       display: -ms-flexbox;
       display: flex;
       -webkit-box-align: center;
       -ms-flex-align: center;
       align-items: center;
       -webkit-box-pack: center;
       -ms-flex-pack: center;
       justify-content: center;
       width: 100px;
       height: 100px;
       border-width: 1px;
       border-style: solid;
       border-color: #00995b;
       background-color: #fff;
       border-radius: 50%;
       -webkit-transition: ease .2s;
       transition: ease .2s;
       position: absolute;
       right: -30px;
       bottom: -30px
   }
   
   @media screen and (max-width: 640px) {
       .sct-business .business-flex .m-circle {
           -webkit-transition:none;
           transition: none
       }
   }
   
   .sct-business .business-flex .m-circle::before {
       content: "";
       width: 25px;
       height: 6px;
       border-right: 1px solid #00995b;
       border-bottom: 1px solid #00995b;
       -webkit-transform: skew(45deg);
       transform: skew(45deg);
       margin-left: -5px;
       position: absolute;
       left: 55%;
       -webkit-transform: translateX(-50%) skew(45deg);
       transform: translateX(-50%) skew(45deg)
   }
   
   @media screen and (max-width: 640px) {
       .sct-business .business-flex .m-circle {
           display:-webkit-box;
           display: -ms-flexbox;
           display: flex;
           -webkit-box-align: center;
           -ms-flex-align: center;
           align-items: center;
           -webkit-box-pack: center;
           -ms-flex-pack: center;
           justify-content: center;
           width: 80px;
           height: 80px;
           border-width: 1px;
           border-style: solid;
           border-color: #00995b;
           background-color: #fff;
           border-radius: 50%;
           -webkit-transition: ease .2s;
           transition: ease .2s;
           right: -15px;
           bottom: -15px
       }
   }
   
   @media screen and (max-width: 640px)and (max-width:640px) {
       .sct-business .business-flex .m-circle {
           -webkit-transition:none;
           transition: none
       }
   }
   
   @media screen and (max-width: 640px) {
       .sct-business .business-flex .m-circle::before {
           content:"";
           width: 25px;
           height: 6px;
           border-right: 1px solid #00995b;
           border-bottom: 1px solid #00995b;
           -webkit-transform: skew(45deg);
           transform: skew(45deg);
           margin-left: -5px;
           position: absolute;
           left: 55%;
           -webkit-transform: translateX(-50%) skew(45deg);
           transform: translateX(-50%) skew(45deg)
       }
   }
   
   @media screen and (max-width: 640px) {
       .sct-business .business-flex .m-circle::before {
           width:20px
       }
   }
   
   .sct-business .business-flex .m-circle__none::before {
       display: none
   }
   
   .sct-business .business-flex .m-circle__none span {
       display: inline-block;
       color: #00995b;
       font-size: 18px;
       font-size: 1.125rem;
       line-height: 1.1;
       font-family: Arsenal,sans-serif
   }
   
   @media screen and (max-width: 640px) {
       .sct-business .business-flex .m-circle__none span {
           font-size:14px;
           font-size: .875rem
       }
   }
   
   /* .sct-business .business-flex_
     dxo_item {
       width: 50%;
       text-align: centen;l2
       padding-bottom: 50x 12PC;
   } */
   
   @media screen and (max-width: 640px) {
       .sct-business .business-flex__item {
           max-width:90%;
           padding-bottom: 40px
       }
   }
   
   .sct-business .business-flex__item:active,.sct-business .business-flex__item:hover {
       text-decoration: none
   }
   
   .sct-business .business-flex__item:active .m-circle,.sct-business .business-flex__item:hover .m-circle {
       display: -webkit-box;
       display: -ms-flexbox;
       display: flex;
       -webkit-box-align: center;
       -ms-flex-align: center;
       align-items: center;
       -webkit-box-pack: center;
       -ms-flex-pack: center;
       justify-content: center;
       width: 100px;
       height: 100px;
       border-width: 1px;
       border-style: solid;
       border-color: #00995b;
       background-color: #00995b;
       border-radius: 50%;
       -webkit-transition: ease .2s;
       transition: ease .2s
   }
   
   @media screen and (max-width: 640px) {
       .sct-business .business-flex__item:active .m-circle,.sct-business .business-flex__item:hover .m-circle {
           -webkit-transition:none;
           transition: none
       }
   }
   
   .sct-business .business-flex__item:active .m-circle::before,.sct-business .business-flex__item:hover .m-circle::before {
       content: "";
       width: 25px;
       height: 6px;
       border-right: 1px solid #fff;
       border-bottom: 1px solid #fff;
       -webkit-transform: skew(45deg);
       transform: skew(45deg);
       margin-left: -5px;
       position: absolute;
       left: 55%;
       -webkit-transform: translateX(-50%) skew(45deg);
       transform: translateX(-50%) skew(45deg)
   }
   
   @media screen and (max-width: 640px) {
       .sct-business .business-flex__item:active .m-circle,.sct-business .business-flex__item:hover .m-circle {
           display:-webkit-box;
           display: -ms-flexbox;
           display: flex;
           -webkit-box-align: center;
           -ms-flex-align: center;
           align-items: center;
           -webkit-box-pack: center;
           -ms-flex-pack: center;
           justify-content: center;
           width: 80px;
           height: 80px;
           border-width: 1px;
           border-style: solid;
           border-color: #00995b;
           background-color: #00995b;
           border-radius: 50%;
           -webkit-transition: ease .2s;
           transition: ease .2s
       }
   }
   
   @media screen and (max-width: 640px)and (max-width:640px) {
       .sct-business .business-flex__item:active .m-circle,.sct-business .business-flex__item:hover .m-circle {
           -webkit-transition:none;
           transition: none
       }
   }
   
   @media screen and (max-width: 640px) {
       .sct-business .business-flex__item:active .m-circle::before,.sct-business .business-flex__item:hover .m-circle::before {
           content:"";
           width: 25px;
           height: 6px;
           border-right: 1px solid #fff;
           border-bottom: 1px solid #fff;
           -webkit-transform: skew(45deg);
           transform: skew(45deg);
           margin-left: -5px;
           position: absolute;
           left: 55%;
           -webkit-transform: translateX(-50%) skew(45deg);
           transform: translateX(-50%) skew(45deg)
       }
   }
   
   .sct-business .business-flex__item__image {
       margin-bottom: 25px;
       position: relative
   }
   
   .corner-color {
       cursor: pointer;
       color: rgb(179, 225, 205);
       padding: 32px;
       transition: all 0.3s;
   }
   
   .corner-color:hover {
       background: rgb(179, 225, 205);
       color: white;
       border-radius: 20px;
   }
   
   .sct-business .business-flex__item .m-title1__ja {
       padding-bottom: 0;
       font-size:2.0em
   }
   
   /*多分消します。*/
   .card {
     width: 400px;
     margin: 0 auto;
     padding: 12px;
     border: 1px solid #ccc;
     background: #fff;
   }
   .card__img {
     width: 100%;
   }
   .card__meta {
     display: flex;
     align-items: center;
   }
   .card__cat {
     display: flex;
     justify-content: center;
     align-items: center;
     padding: 6px 12px;
     background: #ffb300;
     color: #fff;
     font-weight: bold;
     letter-spacing: 1px;
     font-size: 14px;
   }
   .card__time {
     margin: 0 0 0 auto;
     font-size: 12px;
     color: #666;
   }
   .card__ttl {
     font-size: 20px;
     margin: 0;
   }
   .card__desc {
     font-size: 16px;
   }
   
   /*isys 追加 iot,it,ai,system用*/
   @charset "utf-8";
   
   /* ======================================================
    * parts_pc.css
    * ------------------------------------------------------
    * @media print, screen and (min-width: 768px)
    * - Common
    * - Element >>> Heading
    * - Element >>> Text
    * - Element >>> List
    * - Element >>> Link
    * - Element >>> Image
    * - Element >>> Video
    * - Element >>> Form
    * - Element >>> Other
    * - Layout >>> Column
    * - Layout >>> Table
    * - Layout >>> Box
    * - Layout >>> Other
    * - Component >>> Navi
    * - Component >>> Index
    * - Component >>> Other
    * - Clearfix
    * Media Queries
    * Print
   ====================================================== */
   
   @media print, screen and (min-width: 768px) {
       /* ----- data-row-sp ----- */
       @charset "utf-8";
   
       /* ======================================================
        * parts_sp.css
        * ------------------------------------------------------
        * @media only screen and (max-width: 767px)
        * - Common
        * - Element >>> Heading
        * - Element >>> Text
        * - Element >>> List
        * - Element >>> Link
        * - Element >>> Image
        * - Element >>> Video
        * - Element >>> Form
        * - Element >>> Other
        * - Layout >>> Column
        * - Layout >>> Table
        * - Layout >>> Box
        * - Layout >>> Other
        * - Component >>> Navi
        * - Component >>> Index
        * - Component >>> Other
        * - Clearfix
        * Media Queries
       ====================================================== */
       
       @media only screen and (max-width: 767px) {
         /* ------------------------------------------------------
          * Common
         ------------------------------------------------------ */
         /* ----- font ----- */
         .faq-layout .faq_trigger > .faq_label > .faq_icon,
         .faq-layout .faq_detail > .faq_detail_inner > .faq_icon {
           font-family: roboto;
         }
         
         /* ----- a ----- */
         a.block {
           display: block;
           color: #333;
         }
         
         /* ----- opacity ----- */
         
         /* ----- transition ----- */
         .navi-anchor .navi_inner > li > a::before {
           -webkit-transition: bottom .2s ease-out 0s;
           transition: bottom .2s ease-out 0s;
         }
         .tab-layout .tab_list > li > a::after,
         .tab-layout-v2 .tab_list > li > a::after {
           -webkit-transition: width .2s ease-out 0s;
           transition: width .2s ease-out 0s;
         }
         .search-box .search_form {
           -webkit-transition: border-color .2s ease-out 0s;
           transition: border-color .2s ease-out 0s;
         }
         .search-box .search_submit,
         .tab-layout .tab_list > li > a::before,
         .tab-layout-v2 .tab_list > li > a::before {
           -webkit-transition: background-color .2s ease-out 0s;
           transition: background-color .2s ease-out 0s;
         }
         [class*="heading-lv"] a.block .heading_title {
           -webkit-transition: color .2s ease-out 0s;
           transition: color .2s ease-out 0s;
         }
         .accordion-layout .accordion_trigger > .accordion_label::before,
         .accordion-layout-v2 .accordion_list_trigger > .accordion_list_label::before,
         .accordion-layout-v3 .accordion_trigger > .accordion_label::before,
         .accordion-layout-v3 .accordion_trigger > .accordion_label::after,
         .faq-layout .faq_trigger > .faq_label::before,
         .faq-layout .faq_trigger > .faq_label::after,
         .location-compo .location_table > .location_table_head::before,
         .products-search-layout .search_heading::before {
           -webkit-transition: transform .2s ease-out 0s;
           transition: transform .2s ease-out 0s;
         }
         .officer-layout .officer_column_2::before,
         .officer-layout .officer_column_2::after {
           -webkit-transition: all .2s ease-out 0s;
           transition: all .2s ease-out 0s;
         }
         
         /* ----- sprite ----- */
         [class^="heading-lv"] a.block.a-blank .heading_title::after,
         [class^="heading-lv"] a.block.a-pdf .heading_title::after,
         .heading-lv1-v2 .heading_print > a::before,
         a.link-inline[class*="a-"]::after,
         .link-text a[class*="a-"]::after,
         .link-button a[class*="a-"] > .link_label::after,
         .link-button-v2 a[class*="a-"] > .link_label::after,
         .link-button-v3 a[class*="a-"] > .link_label::after,
         .link-button-v4 a[class*="a-"] > .link_label::after,
         .index-layout > a.block[class*="a-"] .index_caption::after,
         .index-layout > .block .index_title .index_title_list > .index_title_item > a[class*="a-"]::after,
         .index-layout-v2 > a.block.a-video .index_image::before,
         .index-layout-v3 > a.block[class*="a-"] .index_title::after,
         .index-layout-v4 > a.block[class*="a-"] .index_title::after,
         .index-layout-v5 > a.block[class*="a-"] .index_title::after,
         .index-layout-v6 > a.block[class*="a-"] .index_caption::after,
         .index-layout-v7 > a.block[class*="a-"] .index_title::after,
         .index-layout-v8 > a.block[class*="a-"] .index_caption::after,
         .index-layout-v9 > .index_links > li > a[class*="a-"]::before,
         .products-index-layout .index_heading .index_title a[class*="a-"]::after,
         .news-compo a.block[class*="a-"]::after,
         .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow,
         .related-compo-v2 .related_inner .related_links_2 a.block[class*="a-"] .related_links_title::after,
         .location-compo .location_caption .location_company > a[class*="a-"]::after,
         .location-compo .location_table .location_links > li > a[class*="a-"] > .location_links_label::after,
         .location-compo .location_table .location_links > li > a.a-map::before,
         .ir-layout-v2 .ir_heading > .heading_link > li > a.a-rss::before,
         .ir-layout-v3 .ir_link > li > a[class*="a-"]::before,
         .ir-layout-v3 .ir_link_2 > li > a[class*="a-"]::before,
         .library-item .library_table_data a .data_icon,
         .csr-news-compo .news_heading > .news_heading_link > li > a.a-rss::before,
         .contact-layout .contact_button > li > a[class*="a-"]::before {
           display: inline-block;
           background-image: url(/common-files/img/cmn_sprite_ic01-r2x.png);
           background-repeat: no-repeat;
           background-size: 600px 600px;
           vertical-align: middle;
           content: "";
         }
         [class^="heading-lv"] a.block.a-blank .heading_title::after,
         a.link-inline.a-blank::after,
         .link-text a.a-blank::after,
         .link-button a.a-blank > .link_label::after,
         .index-layout > a.block.a-blank .index_caption::after,
         .index-layout > .block .index_title .index_title_list > .index_title_item > a.a-blank::after,
         .index-layout-v3 > a.block.a-blank .index_title::after,
         .index-layout-v4 > a.block.a-blank .index_title::after,
         .index-layout-v5 > a.block.a-blank .index_title::after,
         .index-layout-v6 > a.block.a-blank .index_caption::after,
         .index-layout-v7 > a.block.a-blank .index_title::after,
         .index-layout-v8 > a.block.a-blank .index_caption::after,
         .index-layout-v9 > .index_links > li > a.a-blank::before,
         .products-index-layout .index_heading .index_title a.a-blank::after,
         .news-compo a.block.a-blank::after,
         .related-compo-v2 .related_inner .related_links_2 a.block.a-blank .related_links_title::after,
         .location-compo .location_caption .location_company > a.a-blank::after,
         .location-compo .location_table .location_links > li > a.a-blank > .location_links_label::after,
         .ir-layout-v3 .ir_link > li > a.a-blank::before,
         .ir-layout-v3 .ir_link_2 > li > a.a-blank::before,
         .contact-layout .contact_button > li > a.a-blank::before { width: 10px; height: 9px; background-position: 0px -100px; }
         .link-button-v2 a.a-blank > .link_label::after,
         .link-button-v4 a.a-blank > .link_label::after { width: 10px; height: 9px; background-position: -50px -100px; }
         .link-button-v3 a.a-blank > .link_label::after { width: 10px; height: 9px; background-position: -100px -100px; }
         [class^="heading-lv"] a.block.a-pdf .heading_title::after,
         a.link-inline.a-pdf::after,
         .link-text a.a-pdf::after,
         .link-button a.a-pdf > .link_label::after,
         .link-button-v2 a.a-pdf > .link_label::after,
         .link-button-v3 a.a-pdf > .link_label::after,
         .index-layout > a.block.a-pdf .index_caption::after,
         .index-layout > .block .index_title .index_title_list > .index_title_item > a.a-pdf::after,
         .index-layout-v3 > a.block.a-pdf .index_title::after,
         .index-layout-v4 > a.block.a-pdf .index_title::after,
         .index-layout-v5 > a.block.a-pdf .index_title::after,
         .index-layout-v6 > a.block.a-pdf .index_caption::after,
         .index-layout-v7 > a.block.a-pdf .index_title::after,
         .index-layout-v8 > a.block.a-pdf .index_caption::after,
         .index-layout-v9 > .index_links > li > a.a-pdf::before,
         .news-compo a.block.a-pdf::after,
         .related-compo-v2 .related_inner .related_links_2 a.block.a-pdf .related_links_title::after,
         .ir-layout-v3 .ir_link > li > a.a-pdf::before,
         .ir-layout-v3 .ir_link_2 > li > a.a-pdf::before,
         .contact-layout .contact_button > li > a.a-pdf::before { width: 14px; height: 14px; background-position: 0px -150px; }
         .link-button-v4 a.a-pdf > .link_label::after { width: 14px; height: 14px; background-position: -50px -150px; }
         .library-item .library_table_data .a-pdf .data_icon { width: 28px; height: 28px; background-position: -100px -150px; }
         .library-item .library_table_data .a-play .data_icon { width: 28px; height: 28px; background-position: -150px -150px; }
         .library-item .library_table_data .a-excel .data_icon { width: 28px; height: 28px; background-position: -200px -150px; }
         .link-text a.a-excel::after { width: 16px; height: 16px; background-position: 0px -200px; }
         .link-text a.a-word::after { width: 16px; height: 16px; background-position: -50px -200px; }
         .link-text a.a-ppt::after { width: 16px; height: 16px; background-position: -100px -200px; }
         .link-text a.a-zip::after { width: 15px; height: 19px; background-position: -150px -200px; }
         .link-text a.a-video::after { width: 20px; height: 16px; background-position: -200px -200px; }
         .index-layout-v2 > a.block.a-video .index_image::before { width: 62px; height: 43px; background-position: -350px -200px; }
         .library-item .library_table_data .a-video .data_icon { width: 31px; height: 24px; background-position: -450px -200px; }
         .link-text a.a-play::after { width: 16px; height: 16px; background-position: -500px -200px; }
         .link-text a.a-mail::after { width: 15px; height: 12px; background-position: 0px -250px; }
         .link-button-v2 a.a-mail > .link_label::after { width: 17px; height: 13px; background-position: -50px -250px; }
         .heading-lv1-v2 .heading_print > a::before,
         .link-text a.a-print::after { width: 16px; height: 14px; background-position: 0px -300px; }
         .link-text a.a-speaker::after,
         .library-item .library_table_data .a-speaker .data_icon { width: 32px; height: 24px; background-position: 0px -350px; }
         .link-text a.a-rss::after { width: 13px; height: 13px; background-position: 0px -400px; }
         .ir-layout-v2 .ir_heading > .heading_link > li > a.a-rss::before,
         .csr-news-compo .news_heading > .news_heading_link > li > a.a-rss::before { width: 17px; height: 17px; background-position: -50px -400px; }
         .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-prev { width: 16px; height: 27px; background-position: 0px -450px; }
         .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-next { width: 16px; height: 27px; background-position: -50px -450px; }
         .location-compo .location_table .location_links > li > a.a-map::before { width: 17px; height: 25px; background-position: 0px -500px; }
         
         /* ------------------------------------------------------
          * Element >>> Heading
         ------------------------------------------------------ */
         [class^="heading-lv"] .heading_title,
         [class^="heading-lv"] .heading_subtitle {
           line-height: 1.25;
         }
         [class^="heading-lv"] a.block.a-blank .heading_title::after,
         [class^="heading-lv"] a.block.a-pdf .heading_title::after {
           margin: 0 0 0 10px;
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         #main .heading-lv1 + *,
         #main .heading-lv1 + section > [class*="heading-lv"]:first-child {
           margin-top: 2.15em;
         }
         #main .heading-lv1-v3 + *,
         #main .heading-lv2 + * {
           margin-top: 1.45em;
         }
         #main .heading-lv3 + *,
         #main .heading-lv4 + *,
         #main .heading-lv5 + * {
           margin-top: 1.1em;
         }
         
         /* ----- heading-lv1 ----- */
         .heading-lv1 {
           display: -webkit-flex;
           display: flex;
           -webkit-flex-direction: column;
           flex-direction: column;
           margin: 0 0 2.15em;
           padding: 15px 0;
         }
         .heading-lv1 .heading_image {
           order: 3;
           margin-top: 1em;
         }
         .heading-lv1 .heading_image > img {
           max-width: 109px;
           height: auto;
         }
         .heading-lv1 .heading_title {
           order: 2;
           font-size: 2.4rem;
         }
         .heading-lv1 .heading_image + .heading_title {
           order: 1;
         }
         .heading-lv1 .heading_image + .heading_subtitle + .heading_title {
           order: 2;
         }
         .heading-lv1 .heading_title .f-italic {
           margin-right: 4px;
         }
         .heading-lv1 .heading_subtitle {
           order: 1;
           margin-bottom: .5em;
           font-size: 1.2rem;
         }
         .heading-lv1 .heading_title + .heading_subtitle,
         .heading-lv1 .heading_image + .heading_title + .heading_subtitle {
           order: 2;
         }
         .heading-lv1 .heading_title + .heading_subtitle {
           margin-top: .5em;
           margin-bottom: 0;
         }
         /* v2 */
         .heading-lv1-v2 {
           position: relative;
           margin: 0 0 2em 0;
           padding: 15px 0;
         }
         .heading-lv1-v2.is-bond {
           margin-bottom: 0;
         }
         .heading-lv1-v2[class*="type-"] {
           padding-bottom: 95px;
         }
         .heading-lv1-v2[class*="type-"]::after {
           position: absolute;
           bottom: 0;
           left: 0;
           width: 100%;
           height: 78px;
           background-color: #e2e5ea;
           background-repeat: no-repeat;
           background-position: 50% 100%;
           background-size: auto 78px;
           content: "";
         }
         .heading-lv1-v2.type-about::after         { background-image: url(/common-files/img/cmn_heading_bg01_01-r2x.jpg); }
         .heading-lv1-v2.type-products::after      { background-image: url(/common-files/img/cmn_heading_bg01_02-r2x.jpg); }
         .heading-lv1-v2.type-rd::after            { background-image: url(/common-files/img/cmn_heading_bg01_03-r2x.jpg); }
         .heading-lv1-v2.type-csr::after           { background-image: url(/common-files/img/cmn_heading_bg01_04-r2x.jpg); }
         .heading-lv1-v2.type-ir::after            { background-image: url(/common-files/img/cmn_heading_bg01_05-r2x.jpg); }
         .heading-lv1-v2.type-ir-individual::after { background-image: url(/common-files/img/cmn_heading_bg01_06-r2x.jpg); background-color: #f6f7f9; }
         .heading-lv1-v2.type-recruit::after       { background-image: url(/common-files/img/cmn_heading_bg01_07-r2x.jpg); }
         .heading-lv1-v2.type-news::after          { background-image: url(/common-files/img/cmn_heading_bg01_08-r2x.jpg); }
         .heading-lv1-v2.type-form::after          { background-image: url(/common-files/img/cmn_heading_bg01_09-r2x.jpg); }
         .heading-lv1-v2.type-gp-image {
           position: relative;
         }
         .heading-lv1-v2.type-gp-image::after {
           display: none;
         }
         .heading-lv1-v2.type-gp-image .heading_bg_image {
           position: absolute;
           text-align: center;
           width: 100%;
           bottom: 0;
           margin-left: -15px;
           background-color: #e2e5ea;
         }
         .heading-lv1-v2.type-gp-image .heading_bg_image img {
           height: 78px;
         }
         .heading-lv1-v2.type-gp-image .block > *:not(.heading_bg_image) {
           z-index: 1;
         }
         .heading-lv1-v2 .block {
           padding: 0 15px;
         }
         .heading-lv1-v2 .heading_title {
           font-size: 2.4rem;
         }
         .heading-lv1-v2 .heading_title .is-smaller {
           font-size: 66.66%;
         }
         .heading-lv1-v2 .heading_subtitle {
           margin-bottom: .5em;
           font-size: 1.2rem;
         }
         .heading-lv1-v2 .heading_print {
           display: none;
         }
         /* v3 */
         .heading-lv1-v3 {
           margin: 0 -15px 1.45em;
           background-color: #fff;
         }
         .heading-lv1-v3 .heading_visual {
           padding: 12px 15px;
           text-align: center;
         }
         .heading-lv1-v3 .heading_visual img {
           max-width: 75%;
           margin: 0 auto;
         }
         
         /* ----- heading-lv2 ----- */
         .heading-lv2 {
           margin: 2.85em 0 1.45em;
         }
         .heading-lv2 .block {
           position: relative;
           padding: 0 0 20px 0;
           border-bottom: 1px solid #dfdfe3;
           text-decoration: none;
         }
         .heading-lv2 .block::before {
           position: absolute;
           bottom: -1px;
           left: 50%;
           width: 100px;
           height: 1px;
           background-color: #ff0000;
           margin: 0 0 0 -50px;
           content: "";
         }
         .heading-lv2 .heading_title {
           font-size: 2.0rem;
           text-align: center;
         }
         /* v2 */
         .heading-lv2-v2 {
           margin: 2.85em 0 1.45em;
         }
         .heading-lv2-v2 .block {
           position: relative;
           padding: 0 0 10px 0;
           border-bottom: 1px solid #dfdfe3;
           text-decoration: none;
         }
         .heading-lv2-v2 .block::before {
           position: absolute;
           bottom: -1px;
           left: 0;
           width: 100px;
           height: 1px;
           background-color: #ff0000;
           content: "";
         }
         .heading-lv2-v2 .heading_title {
           font-size: 2.0rem;
         }
         .heading-lv2-v2 a.block .heading_title::after {
           display: inline-block;
           position: relative;
           top: -2px;
           width: 10px;
           height: 10px;
           margin: 0 0 0 7px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .heading-lv2-v2 .heading_subtitle {
           margin-bottom: .5em;
           font-size: 1.2rem;
         }
         
         /* ----- heading-lv3 ----- */
         .heading-lv3 {
           margin: 2.15em 0 1.45em;
         }
         .heading-lv3 .block {
           position: relative;
           padding: 0 0 10px 0;
           text-decoration: none;
         }
         .heading-lv3 .block::before {
           position: absolute;
           bottom: 0;
           left: 0;
           width: 50px;
           height: 1px;
           background-color: #ff0000;
           content: "";
         }
         .heading-lv3 .heading_title {
           font-size: 1.8rem;
         }
         .heading-lv3 a.block .heading_title::after {
           display: inline-block;
           position: relative;
           top: -2px;
           width: 10px;
           height: 10px;
           margin: 0 0 0 7px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .heading-lv3 .heading_subtitle {
           margin-bottom: .5em;
           font-size: 1.2rem;
           font-weight: 300;
         }
         
         /* ----- heading-lv4 ----- */
         .heading-lv4 {
           margin: 2.15em 0 1.1em;
         }
         .heading-lv4 .block {
           position: relative;
           padding: 0 0 7px 0;
           text-decoration: none;
         }
         .heading-lv4 .block::before {
           position: absolute;
           bottom: 0px;
           left: 0;
           width: 30px;
           height: 1px;
           background-color: #999;
           content: "";
         }
         .heading-lv4 .heading_title {
           font-size: 1.6rem;
         }
         .heading-lv4 a.block .heading_title::after {
           display: inline-block;
           position: relative;
           top: -2px;
           width: 10px;
           height: 10px;
           margin: 0 0 0 7px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         
         /* ----- heading-lv5 ----- */
         .heading-lv5 {
           margin: 1.8em 0 1.1em;
         }
         .heading-lv5 .heading_title {
           font-size: 1.5rem;
           font-weight: 700;
         }
         
         /* ------------------------------------------------------
          * Element >>> Text
         ------------------------------------------------------ */
         /* ----- text-paragraph ----- */
         .text-paragraph {
           margin-top: 1em;
         }
         .text-paragraph[data-gap-sp="x0"]   { margin-top: 0 !important; }
         .text-paragraph[data-gap-sp="x0.5"] { margin-top: .5em !important; }
         .text-paragraph[data-gap-sp="x1"]   { margin-top: 1em !important; }
         .text-paragraph[data-gap-sp="x1.5"] { margin-top: 1.5em !important; }
         .text-paragraph[data-gap-sp="x2"]   { margin-top: 2em !important; }
         .text-paragraph[data-gap-sp="x2.5"] { margin-top: 2.5em !important; }
         .text-paragraph[data-gap-sp="x3"]   { margin-top: 3em !important; }
         
         /* ----- text-lead ----- */
         .text-lead {
           margin: 1em 0 .75em;
           font-size: 1.8rem;
           font-weight: 700;
         }
         
         /* ----- text-catch ----- */
         .text-catch {
           margin: 1em 0 .75em;
           color: #ff0000;
           font-size: 2.4rem;
           text-align: center;
         }
         /* v2 */
         .text-catch-v2 {
           margin: 1em 0 .75em;
           text-align: center;
         }
         
         /* ----- text-title ----- */
         .text-title {
           margin: 1em 0 .5em;
           font-weight: 700;
         }
         #main .text-title + * {
           margin-top: .5em;
         }
         /* v2 */
         .text-title-v2 {
           margin: 1.5em 0 .5em;
           font-size: 1.6rem;
           font-weight: 700;
         }
         .text-title-v2.is-bottom {
           margin-top: .75em;
         }
         .text-title-v2-v2 a {
           color: #333;
           text-decoration: none;
         }
         #main .text-title-v2 + * {
           margin-top: .5em;
         }
         
         /* ----- text-quote ----- */
         .text-quote {
           margin-top: 1em;
           padding-left: 15px;
         }
         
         /* ------------------------------------------------------
          * Element >>> List
         ------------------------------------------------------ */
         [class*="list-note"],
         [class*="list-bullet"],
         [class*="list-order"] {
           margin-top: 1em;
         }
         [class*="list-note"].type-section,
         [class*="list-bullet"].type-section,
         [class*="list-order"].type-section {
           margin-top: 2em;
         }
         [class*="list-description"] {
           margin-top: 1.5em;
         }
         [class*="list-description"].type-section {
           margin-top: 2.5em;
         }
         [class*="list-note"] > li + li,
         [class*="list-bullet"] > li + li,
         [class*="list-order"] > li + li {
           margin-top: .5em;
         }
         [class*="list-note"].type-section > li + li,
         [class*="list-bullet"].type-section > li + li,
         [class*="list-order"].type-section > li + li {
           margin-top: 1.25em;
         }
         [class*="list-"].is-nest {
           margin: .5em 0 .75em;
         }
         [class*="list-"].is-nest.type-section {
           margin: .75em 0 1em;
         }
         [class*="list-note"] > li > .list_detail,
         [class*="list-bullet"] > li > .list_detail,
         [class*="list-order"] > li > .list_detail {
           margin-top: .25em;
         }
         [class*="list-note"].type-section > li > .list_detail,
         [class*="list-bullet"].type-section > li > .list_detail,
         [class*="list-order"].type-section > li > .list_detail {
           margin-top: .5em;
         }
         [class*="list-note"] > li > .list_detail > *:first-child,
         [class*="list-note"] > li > .list_detail > *:first-child > [class*="heading-lv"],
         [class*="list-bullet"] > li > .list_detail > *:first-child,
         [class*="list-bullet"] > li > .list_detail > *:first-child > [class*="heading-lv"],
         [class*="list-order"] > li > .list_detail > *:first-child,
         [class*="list-order"] > li > .list_detail > *:first-child > [class*="heading-lv"],
         [class*="list-description"] > dd > *:first-child,
         [class*="list-description"] > dd > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         
         /* ----- list-al-right ----- */
         .list-al-right {
           display: -webkit-flex;
           display: flex;
           -webkit-flex-flow: row wrap;
           flex-flow: row wrap;
           -webkit-justify-content: flex-end;
           justify-content: flex-end;
           margin-top: 1em;
         }
         .list-al-right > [class*="list-"] {
           margin-top: 0;
         }
         
         /* ----- list-note ----- */
         .list-note > li {
           position: relative;
           padding-left: 1.2em;
         }
         .list-note > li > .list_mark {
           position: absolute;
           top: 0;
           left: 0;
         }
         /* v2 */
         .list-note-v2 > li {
           position: relative;
           padding-left: 3em;
         }
         .list-note-v2 > li > .list_mark {
           position: absolute;
           top: 0;
           left: 0;
         }
         /* v3 */
         .list-note-v3 > li {
           position: relative;
           padding-left: 1.7em;
         }
         .list-note-v3 > li > .list_mark {
           position: absolute;
           top: 0;
           left: 0;
         }
         /* v4 */
         .list-note-v4 > li {
           position: relative;
           padding-left: 3em;
         }
         .list-note-v4 > li > .list_mark {
           position: absolute;
           top: 0;
           left: 0;
         }
         
         /* ----- list-bullet ----- */
         .list-bullet > li {
           position: relative;
           padding-left: 16px;
         }
         .list-bullet > li::before {
           position: absolute;
           top: .5em;
           left: 0;
           width: 7px;
           height: 7px;
           border: 2px solid #ff0000;
           background-color: #fff;
           content: "";
         }
         .list-bullet > li > .list_detail.is-noindent {
           margin-left: -16px;
         }
         /* v2 */
         .list-bullet-v2 > li {
           position: relative;
           padding-left: 12px;
           font-size: 1.3rem;
         }
         .list-bullet-v2 > li::before {
           position: absolute;
           top: .6em;
           left: 0;
           width: 4px;
           height: 4px;
           background-color: #999;
           content: "";
         }
         .list-bullet-v2 > li > .list_detail.is-noindent {
           margin-left: -12px;
         }
         /* v3 */
         .list-bullet-v3 > li {
           position: relative;
           padding-left: 16px;
         }
         .list-bullet-v3 > li::before {
           position: absolute;
           top: .5em;
           left: 0;
           width: 6px;
           height: 6px;
           border-radius: 50%;
           background-color: #999;
           content: "";
         }
         .list-bullet-v3 > li > .list_detail.is-noindent {
           margin-left: -16px;
         }
         /* v4 */
         .list-bullet-v4 > li {
           position: relative;
           padding-left: 12px;
           font-size: 1.3rem;
         }
         .list-bullet-v4 > li::before {
           position: absolute;
           top: .6em;
           left: 0;
           width: 5px;
           height: 5px;
           border-radius: 50%;
           background-color: #999;
           content: "";
         }
         .list-bullet-v4 > li > .list_detail.is-noindent {
           margin-left: -12px;
         }
         
         /* ----- list-order ----- */
         .list-order > li {
           position: relative;
           padding-left: 2em;
         }
         .list-order > li > .list_mark {
           position: absolute;
           top: 0;
           left: 0;
           font-weight: 700;
         }
         .list-order > li > .list_detail.is-noindent {
           margin-left: -2em;
         }
         /* v2 */
         .list-order-v2 > li {
           position: relative;
           padding-left: 3em;
           font-size: 1.3rem;
         }
         .list-order-v2 > li > .list_mark {
           position: absolute;
           top: 0;
           left: 0;
         }
         .list-order-v2 > li > .list_detail.is-noindent {
           margin-left: -3em;
         }
         
         /* ----- list-description ----- */
         .list-description + .list-description {
           margin-top: 1.5em;
         }
         .list-description > dt {
           margin: 1em 0 .5em;
           font-weight: 700;
         }
         .list-description > dt:first-child {
           margin-top: 0 !important;
         }
         .list-description > dd {
         }
         /* v2 */
         .list-description-v2 + .list-description-v2 {
           margin-top: 1.5em;
         }
         .list-description-v2 > dt {
           margin: 1em 0 .5em;
           font-weight: 700;
         }
         .list-description-v2 > dt:first-child {
           margin-top: 0 !important;
         }
         .list-description-v2 > dd {
         }
         
         /* ------------------------------------------------------
          * Element >>> Link
         ------------------------------------------------------ */
         [class*="link-text"] {
           margin-top: 1em;
         }
         [class*="link-text"] > li + li {
           margin-top: .75em;
         }
         [class*="link-button"] {
           margin-top: 1.5em;
         }
         [class*="link-button"] > li + li {
           margin-top: .75em;
         }
         [class*="link-button"] > li > a {
           width: 100%;
         }
         [class*="link-button"].is-centering {
           display: -webkit-flex;
           display: flex;
           -webkit-justify-content: center;
           justify-content: center;
         }
         [class*="link-button"].is-centering > li {
           display: -webkit-flex;
           display: flex;
           width: calc((100% - 15px) / 2);
         }
         [class*="link-button"].is-centering > li + li {
           margin-top: 0;
           margin-left: 15px;
         }
         [class*="link-button"].is-centering > li > a {
           display: -webkit-flex;
           display: flex;
           -webkit-justify-content: center;
           justify-content: center;
           -webkit-align-items: center;
           align-items: center;
         }
         [class*="link-button"][data-row-sp] > li {
           display: -webkit-flex;
           display: flex;
           margin-top: .75em;
         }
         [class*="link-button"][data-row-sp] > li > a {
           display: -webkit-flex;
           display: flex;
           -webkit-justify-content: center;
           justify-content: center;
           -webkit-align-items: center;
           align-items: center;
           width: 100%;
         }
         [class*="link-"].is-nest {
           margin: .5em 0 1em;
         }
         
         /* ----- link-inline ----- */
         a.link-inline {
           text-decoration: underline;
         }
         a.link-inline.a-blank::after,
         a.link-inline.a-pdf::after {
           position: relative;
           top: -2px;
           margin: 0 6px;
         }
         
         /* ----- link-text ----- */
         .link-text a {
         }
         .link-text a::after {
           display: inline-block;
           position: relative;
           top: -2px;
           right: 4px;
           width: 10px;
           height: 10px;
           margin: 0 0 0 8px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .link-text a[class*="a-"]::after {
           top: -1px;
           right: 0;
           margin: 0 0 0 6px;
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         /* ----- link-indent ----- */
         .link-indent {
           margin-left: 2em;
         }
         
         /* ----- link-button ----- */
         .link-button a {
           display: inline-block;
           position: relative;
           width: 100%;
           padding: 13px 10px;
           border: 1px solid #dfdfe3;
           background-color: #fff;
           text-align: center;
           text-decoration: none;
         }
         .link-button a > .link_label {
           display: inline-block;
           position: relative;
           padding: 0 16px;
         }
         .link-button a[class*="a-"] > .link_label {
           padding: 0 20px;
         }
         .link-button a > .link_label::after {
           display: inline-block;
           position: absolute;
           top: 50%;
           right: 3px;
           width: 10px;
           height: 10px;
           margin: -5px 0 0 0;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .link-button a[class*="a-"] > .link_label::after {
           right: 0;
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .link-button a.a-pdf > .link_label::after {
           margin-top: -7px;
         }
         /* v2 */
         .link-button-v2 a {
           display: inline-block;
           position: relative;
           width: 100%;
           padding: 14px 11px;
           background-color: #555;
           color: #fff;
           text-align: center;
           text-decoration: none;
         }
         .link-button-v2 a > .link_label {
           display: inline-block;
           position: relative;
           padding: 0 16px;
         }
         .link-button-v2 a[class*="a-"] > .link_label {
           padding: 0 20px;
         }
         .link-button-v2 a > .link_label::after {
           display: inline-block;
           position: absolute;
           top: 50%;
           right: 3px;
           width: 10px;
           height: 10px;
           margin: -5px 0 0 0;
           border-top: 1px solid #fff;
           border-right: 1px solid #fff;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .link-button-v2 a[class*="a-"] > .link_label::after {
           right: 0;
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .link-button-v2 a.a-pdf > .link_label::after {
       
           margin-top: -7px;
         }
         .link-button-v2.type-contact a > .link_label {
           display: block;
         }
         .link-button-v2.type-contact a.a-mail  > .link_label::after {
           margin-top: -7px;
         }
         /* v3 */
         .link-button-v3 a {
           display: inline-block;
           position: relative;
           width: 100%;
           padding: 13px 10px;
           border: 1px solid #ff0000;
           background-color: #fff;
           text-align: center;
           text-decoration: none;
         }
         .link-button-v3 a > .link_label {
           display: inline-block;
           position: relative;
           padding: 0 16px;
         }
         .link-button-v3 a[class*="a-"] > .link_label {
           padding: 0 20px;
         }
         .link-button-v3 a > .link_label::after {
           display: inline-block;
           position: absolute;
           top: 50%;
           right: 3px;
           width: 10px;
           height: 10px;
           margin: -5px 0 0 0;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .link-button-v3 a[class*="a-"] > .link_label::after {
           right: 0;
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .link-button-v3 a.a-pdf > .link_label::after {
           margin-top: -7px;
         }
         /* v4 */
         .link-button-v4 a {
           display: inline-block;
           position: relative;
           width: 100%;
           padding: 14px 11px;
           background-color: #ff0000;
           color: #fff;
           text-align: center;
           text-decoration: none;
         }
         .link-button-v4 a > .link_label {
           display: inline-block;
           position: relative;
           padding: 0 16px;
         }
         .link-button-v4 a[class*="a-"] > .link_label {
           padding: 0 20px;
         }
         .link-button-v4 a > .link_label::after {
           display: inline-block;
           position: absolute;
           top: 50%;
           right: 3px;
           width: 10px;
           height: 10px;
           margin: -5px 0 0 0;
           border-top: 1px solid #fff;
           border-right: 1px solid #fff;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .link-button-v4 a[class*="a-"] > .link_label::after {
           right: 0;
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .link-button-v4 a.a-pdf > .link_label::after {
           margin-top: -7px;
         }
         
         /* ------------------------------------------------------
          * Element >>> Image
         ------------------------------------------------------ */
         /* ----- image-set ----- */
         .image-set {
           margin-top: 1.5em;
           display: -webkit-flex;
           display: flex;
           -webkit-justify-content: center;
           justify-content: center;
         }
         [class*="column-media"] > .column_image > .image-set + .image-set {
           margin-top: 1.25em;
         }
         .image-set.gp-al-right {
           -webkit-justify-content: flex-end;
           justify-content: flex-end;
         }
         .image-set.gp-al-left {
           -webkit-justify-content: flex-start;
           justify-content: flex-start;
         }
         .image-set:not(.gp-al-left):not(.gp-al-right) .image_inner {
           text-align: center;
         }
         .image-set .image_inner > *:first-child,
         .image-set .image_inner > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .image-set .image_inner > a {
           display: block;
         }
         .image-set .image_caption {
           margin-top: .5em;
           text-align: left;
         }
         
         /* ------------------------------------------------------
          * Element >>> Video
         ------------------------------------------------------ */
         
         /* ------------------------------------------------------
          * Element >>> Form
         ------------------------------------------------------ */
         
         /* ------------------------------------------------------
          * Element >>> Other
         ------------------------------------------------------ */
         /* ----- icon-news ----- */
         .icon-news {
           display: inline-block;
           min-width: 65px;
           padding: 0 3px;
           background-color: #787878;
           color: #fff;
           font-size: 1.0rem;
           font-weight: 300;
           font-style: normal;
           line-height: 16px;
           text-align: center;
           vertical-align: middle;
         }
         
         /* ----- icon-sgds ----- */
         .icon-sgds img {
           width: 77px;
           height: 77px;
         }
         
         /* ----- icon-warranty ----- */
         .icon-warranty {
           margin: 0 2px;
         }
         .icon-warranty img {
           position: relative;
           top: -2px;
           vertical-align: middle;
         }
         
         /* ----- logo-brand ----- */
         .logo-brand {
           padding: 40px 0 30px;
           text-align: center;
         }
         [class*="heading-lv"] + .logo-brand {
           padding-top: 30px;
         }
         .logo-brand + * {
           margin-top: 0 !important;
         }
         .logo-brand img {
           width: 220px;
           height: auto;
         }
         /* v2 */
         .logo-brand-v2 {
           padding: 20px 0;
         }
         [class*="heading-lv"] + .logo-brand-v2 {
           padding-top: 0;
         }
         .logo-brand-v2 + * {
           margin-top: 0 !important;
         }
         .logo-brand-v2 img {
           width: 170px;
           height: auto;
         }
         
         /* ------------------------------------------------------
          * Layout >>> Column
         ------------------------------------------------------ */
         [class*="column-layout"] > [class*="column_item"] > *:first-child,
         [class*="column-layout"] > [class*="column_item"] > *:first-child > [class*="heading-lv"],
         [class*="column-media"] > [class*="column_"] > *:first-child,
         [class*="column-media"] > [class*="column_"] > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         
         /* ----- column-layout ----- */
         .column-layout {
           margin-top: 2.5em;
         }
         .column-layout.has-separator {
           margin-top: 4.5em;
         }
         
         /* ----- column-media ----- */
         .column-media {
           margin-top: 2.5em;
         }
         .column-media[data-layout-sp="row"] > .column_image {
           max-width: calc((100% - 15px) / 2);
         }
         .column-media[data-layout-sp="row"][data-media-side="right"] > .column_image {
           float: right;
           margin-left: 15px;
         }
         .column-media[data-layout-sp="row"][data-media-side="left"] > .column_image {
           float: left;
           margin-right: 15px;
         }
         .column-media[data-layout-sp="col"] > .column_detail,
         .column-media[data-layout-sp="col-reverse"] > .column_image {
           margin-top: 1.5em;
         }
         .column-media[data-layout-sp="col-reverse"] {
           display: -webkit-flex;
           display: flex;
           -webkit-flex-flow: row wrap;
           flex-flow: row wrap;
           -webkit-flex-direction: column-reverse;
           flex-direction: column-reverse;
         }
         .column-media[data-layout-sp="row"] .column_detail[data-wraparound="false"] {
           overflow: hidden;
         }
         
         /* ------------------------------------------------------
          * Layout >>> Table
         ------------------------------------------------------ */
         [class^="table-layout"] {
           overflow-x: auto;
           padding-bottom: 1px;
         }
         [class*="table-layout"] th > *:first-child,
         [class*="table-layout"] th > *:first-child > [class*="heading-lv"],
         [class*="table-layout"] td > *:first-child,
         [class*="table-layout"] td > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         
         /* ----- table-layout ----- */
         .table-layout {
           margin-top: 1.5em;
         }
         .table-layout .table_inner {
           width: 100%;
           border-top: 1px solid #ddd;
         }
         .table-layout table.table_inner.table_inner--fixed{
           table-layout: fixed;
         }
         .table-layout caption {
           margin-bottom: .5em;
           text-align: left;
         }
         .table-layout caption > *:first-child,
         .table-layout caption > *:first-child > [class*="heading-lv"]{
           margin-top: 0 !important;
         }
         .table-layout caption > *:last-child {
           margin-bottom: 0 !important;
         }
         .table-layout .table_title {
           font-size: 1.5rem;
           margin-bottom: .5em;
         }
         .table-layout .table_caption {
           margin: .5em 0;
           font-size: 1.2rem;
           font-weight: 300;
         }
         .table-layout th,
         .table-layout td {
           padding: 8px 12px;
           border-right: 1px solid #ddd;
           border-bottom: 1px solid #ddd;
           background-color: #fff;
           font-weight: 400;
           text-align: left;
           vertical-align: top;
         }
         .table-layout td.cell-border-right {
           border-right: 1px solid #ddd !important;
         }
         .table-layout th.cell-border-right-v2 {
           border-right: 1px solid #ddd !important;
         }
         .table-layout tr > th:last-child,
         .table-layout tr > td:last-child {
           border-right: none;
         }
         .table-layout thead th {
           text-align: center;
           vertical-align: middle;
         }
         .table-layout th > *:first-child,
         .table-layout th > *:first-child > [class*="heading-lv"],
         .table-layout td > *:first-child,
         .table-layout td > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .table-layout .cell-style1 {
           background-color: #adadad;
           color: #fff;
         }
         .table-layout th.cell-style1 {
           font-weight: 700;
         }
         .table-layout thead th.cell-style1 {
           background-color: #787878;
         }
         .table-layout .cell-style2 {
           background-color: #f7f7fa;
         }
         .table-layout th.cell-style2 {
           font-weight: 700;
         }
         .table-layout .cell-style3 {
           background-color: #fff0f0;
           color: #ff0000;
           font-weight: 700;
         }
         .table-layout .cell-style4 {
           color: #ff0000;
           font-weight: 700;
         }
         .table-layout .cell-style5 {
           color: #666;
           font-weight: 700;
         }
         .table-layout .cell-style6 {
           background-color: #efe7fd;
         }
         .table-layout .cell-style7 {
           color: #ff0000;
         }
         body:not([data-browser="chrome"]) .table-layout .cell-border2 {
           border-right: 1px solid #ddd !important;
         }
         .table-layout[data-layout-sp="scroll"] {
           overflow-x: auto;
           padding-bottom: 8px;
         }
         .table-layout[data-layout-sp="scroll"]::-webkit-scrollbar {
           height: 12px;
         }
         .table-layout[data-layout-sp="scroll"]::-webkit-scrollbar-track {
           border-radius: 12px;
           background: #f1f1f1;
         }
         .table-layout[data-layout-sp="scroll"]::-webkit-scrollbar-thumb {
           border-radius: 12px;
           background: #888;
         }
         .table-layout[data-layout-sp="scroll"] .table_inner {
           width: 880px !important;
         }
         .table-layout[data-layout-sp="vertical"] col,
         .table-layout[data-layout-sp="vertical"] tbody,
         .table-layout[data-layout-sp="vertical"] tr,
         .table-layout[data-layout-sp="vertical"] th,
         .table-layout[data-layout-sp="vertical"] td {
           display: block;
           width: 100% !important;
         }
         /* v2 */
         .table-layout-v2 {
           margin-top: 1.5em;
         }
         .table-layout-v2 .table_inner {
           width: 100%;
           border-top: 1px solid #ddd;
         }
         .table-layout-v2 caption {
           margin-bottom: .75em;
           padding: 0 15px;
           text-align: left;
         }
         .table-layout-v2 .table_title {
           margin-bottom: .5em;
           font-weight: 700;
         }
         .table-layout-v2 caption > *:first-child,
         .table-layout-v2 caption > *:first-child > [class*="heading-lv"]{
           margin-top: 0 !important;
         }
         .table-layout-v2 caption > *:last-child {
           margin-bottom: 0 !important;
         }
         .table-layout-v2 th,
         .table-layout-v2 td {
           padding: 15px;
           border-right: 1px solid #dfdfe3;
           border-bottom: 1px solid #dfdfe3;
           background-color: #fff;
           font-weight: 400;
           text-align: left;
           vertical-align: top;
         }
         .table-layout-v2 tr > th:last-child,
         .table-layout-v2 tr > td:last-child {
           border-right: none;
         }
         .table-layout-v2 thead th {
           text-align: center;
           vertical-align: middle;
         }
         .table-layout-v2 th > *:first-child,
         .table-layout-v2 th > *:first-child > [class*="heading-lv"],
         .table-layout-v2 td > *:first-child,
         .table-layout-v2 td > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .table-layout-v2 .cell-style1 {
           background-color: #adadad;
           color: #fff;
         }
         .table-layout-v2 th.cell-style1 {
           font-weight: 700;
         }
         .table-layout-v2 thead th.cell-style1 {
           background-color: #787878;
         }
         .table-layout-v2 .cell-style2 {
           background-color: #f7f7fa;
         }
         .table-layout-v2 th.cell-style2 {
           font-weight: 700;
         }
         .table-layout-v2[data-layout-sp="vertical"] {
           margin-right: -15px;
           margin-left: -15px;
         }
         .faq-layout .faq_detail .table-layout-v2[data-layout-sp="vertical"] {
           margin-right: 0;
           margin-left: 0;
         }
         .table-layout-v2[data-layout-sp="vertical"] col,
         .table-layout-v2[data-layout-sp="vertical"] tbody,
         .table-layout-v2[data-layout-sp="vertical"] tr,
         .table-layout-v2[data-layout-sp="vertical"] th,
         .table-layout-v2[data-layout-sp="vertical"] td {
           display: block;
           width: 100% !important;
         }
         .table-layout-v2[data-layout-sp="vertical"] th {
           border-right: none;
           border-bottom: none;
         }
         .table-layout-v2[data-layout-sp="vertical"] th + th {
           border-top: 1px solid #dfdfe3;
         }
         .table-layout-v2[data-layout-sp="vertical"] td {
           padding-bottom: 20px;
         }
         /* v3 */
         .table-layout-v3 {
           margin-top: 1.5em;
         }
         .table-layout-v3 .table_inner {
           width: 100%;
           border-top: 1px solid #ddd;
         }
         .table-layout-v3 caption {
           margin-bottom: .5em;
           text-align: left;
         }
         .table-layout-v3 caption > *:first-child,
         .table-layout-v3 caption > *:first-child > [class*="heading-lv"]{
           margin-top: 0 !important;
         }
         .table-layout-v3 caption > *:last-child {
           margin-bottom: 0 !important;
         }
         .table-layout-v3 th,
         .table-layout-v3 td {
           padding: 15px;
           border-right: 1px solid #dfdfe3;
           border-bottom: 1px solid #dfdfe3;
           background-color: #fff;
           font-weight: 400;
           text-align: left;
           vertical-align: top;
         }
         .table-layout-v3 tr > th:last-child,
         .table-layout-v3 tr > td:last-child {
           border-right: none;
         }
         .table-layout-v3 thead th {
           text-align: center;
           vertical-align: middle;
         }
         .table-layout-v3 th > *:first-child,
         .table-layout-v3 th > *:first-child > [class*="heading-lv"],
         .table-layout-v3 td > *:first-child,
         .table-layout-v3 td > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .table-layout-v3 .cell-style1 {
           background-color: #adadad;
           color: #fff;
         }
         .table-layout-v3 th.cell-style1 {
           font-weight: 700;
         }
         .table-layout-v3 .cell-style2 {
           background-color: #f7f7fa;
         }
         .table-layout-v3 th.cell-style2 {
           font-weight: 700;
         }
         .table-layout-v3[data-layout-sp="vertical"] {
           margin-right: -15px;
           margin-left: -15px;
         }
         .faq-layout .faq_detail .table-layout-v3[data-layout-sp="vertical"] {
           margin-right: 0;
           margin-left: 0;
         }
         .table-layout-v3[data-layout-sp="vertical"] col,
         .table-layout-v3[data-layout-sp="vertical"] tbody,
         .table-layout-v3[data-layout-sp="vertical"] tr,
         .table-layout-v3[data-layout-sp="vertical"] th,
         .table-layout-v3[data-layout-sp="vertical"] td {
           display: block;
           width: 100% !important;
         }
         .table-layout-v3[data-layout-sp="vertical"] .table_inner {
           border-top: none;
         }
         .table-layout-v3[data-layout-sp="vertical"] .cell-style1 {
           padding-top: 20px;
           padding-bottom: 12px;
           background-color: #fff;
           color: #333;
           font-weight: 700;
         }
         .table-layout-v3[data-layout-sp="vertical"] .cell-style2 {
           padding-top: 15px;
           padding-bottom: 15px;
           border-bottom: none;
           background-color: #f7f7fa;
           font-weight: 700;
         }
         .table-layout-v3[data-layout-sp="vertical"] th,
         .table-layout-v3[data-layout-sp="vertical"] td {
           border-right: none;
         }
         .table-layout-v3[data-layout-sp="vertical"] td {
           padding-top: 15px;
           padding-bottom: 20px;
         }
         
         /* ----- library-table-layout ----- */
         .library-table-layout {
           width: 100vw;
           margin-left: -15px;
         }
         .library-table-layout .library_table_heading {
           display: none;
         }
         
         /* ------------------------------------------------------
          * Layout >>> Box
         ------------------------------------------------------ */
         [class*="box-layout"] {
           margin-top: 2.5em;
         }
         [class*="box-layout"] > [class*="box_detail"] > *:first-child,
         [class*="box-layout"] > [class*="box_detail"] > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         
         /* ----- box-layout ----- */
         .box-layout {
           margin-top: 2.85em;
           border: 1px solid #ddd;
         }
         .box-layout > .box_title {
           padding: 13px 15px 12px;
           background-color: #f1f1f1;
           font-size: 1.7rem;
           font-weight: 700;
           line-height: 1.2;
         }
         .box-layout > .box_detail {
           padding: 15px;
           background-color: #fff;
         }
         .box-layout > .box_detail > *:first-child {
           margin-top: 0 !important;
         }
         /* v2 */
         .box-layout-v2 {
           margin-top: 2.85em;
           border: 1px solid #ff0000;
         }
         .box-layout-v2 > .box_title {
           padding: 12px;
           background-color: #ff0000;
           color: #fff;
           font-size: 2.0rem;
           line-height: 1.25;
           text-align: center;
         }
         .box-layout-v2 > .box_title .is-smaller {
           font-size: 66.66%;
         }
         .box-layout-v2 > .box_detail {
           padding: 25px;
           background-color: #fff;
         }
         
         /* ------------------------------------------------------
          * Layout >>> Other
         ------------------------------------------------------ */
         /* ----- accordion-layout ----- */
         .accordion-layout {
           margin-top: 2.5em;
         }
         .accordion-layout .accordion_trigger {
           padding: 13px 10px 12px;
           border: 1px solid #dfdfe3;
           background-color: #fff;
         }
         .accordion-layout .accordion_trigger > .accordion_label {
           display: block;
           position: relative;
           padding: 0 30px;
           text-align: center;
         }
         .accordion-layout .accordion_trigger > .accordion_label::before,
         .accordion-layout .accordion_trigger > .accordion_label::after {
           position: absolute;
           top: 50%;
           right: 0;
           width: 19px;
           height: 1px;
           background-color: #ff0000;
           content: "";
         }
         .accordion-layout .accordion_trigger > .accordion_label::before {
           -webkit-transform: rotate(90deg);
           transform: rotate(90deg);
         }
         .accordion-layout .accordion_trigger.is-active > .accordion_label::before {
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .accordion-layout .accordion_detail {
           padding: 14px 19px;
           border: 1px solid #dfdfe3;
           border-top: none;
           background-color: #fff;
         }
         .accordion-layout .accordion_detail > *:first-child,
         .accordion-layout .accordion_detail > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         /* v2 */
         .accordion-layout-v2 {
           margin-top: 2.5em;
         }
         .accordion-layout-v2 .accordion_list_trigger {
           float: right;
         }
         .accordion-layout-v2 .accordion_list_trigger > .accordion_list_label {
           display: inline-block;
           position: relative;
           min-width: 165px;
           padding: 12px 40px 12px 12px;
           background-color: #666;
           color: #fff;
           text-align: center;
         }
         .accordion-layout-v2 .accordion_list_trigger > .accordion_list_label::before,
         .accordion-layout-v2 .accordion_list_trigger > .accordion_list_label::after {
           position: absolute;
           top: 50%;
           right: 20px;
           width: 19px;
           height: 1px;
           background-color: #fff;
           content: "";
         }
         .accordion-layout-v2 .accordion_list_trigger > .accordion_list_label::before {
           -webkit-transform: rotate(90deg);
           transform: rotate(90deg);
         }
         .accordion-layout-v2 .accordion_list_trigger.is-active > .accordion_list_label::before {
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .accordion-layout-v2 .accordion_list_detail {
           clear: both;
           padding-top: 20px;
         }
         .accordion-layout-v2 .accordion_list_detail > *:first-child,
         .accordion-layout-v2 .accordion_list_detail > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         /* v3 */
         .accordion-layout-v3 {
           margin-top: 2.14em;
         }
         .accordion-layout-v3 .accordion_trigger {
           padding: 15px 20px 14px;
           border: 1px solid #dfdfe3;
           background-color: #fff;
         }
         .accordion-layout-v3 .accordion_trigger > .accordion_label {
           display: block;
           position: relative;
           padding: 0 30px 0 0;
           font-size: 1.8rem;
           font-weight: 700;
           text-align: left;
         }
         .accordion-layout-v3 .accordion_trigger > .accordion_label::before,
         .accordion-layout-v3 .accordion_trigger > .accordion_label::after {
           position: absolute;
           top: 50%;
           right: 0;
           width: 13px;
       
           height: 2px;
           margin: -1px 0 0 0;
           background-color: #656666;
           content: "";
         }
         .accordion-layout-v3 .accordion_trigger > .accordion_label::before {
           right: 9px;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
         }
         .accordion-layout-v3 .accordion_trigger.is-active > .accordion_label::before {
           -webkit-transform: rotate(-45deg);
           transform: rotate(-45deg);
         }
         .accordion-layout-v3 .accordion_trigger > .accordion_label::after {
           -webkit-transform: rotate(-45deg);
           transform: rotate(-45deg);
         }
         .accordion-layout-v3 .accordion_trigger.is-active > .accordion_label::after {
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
         }
         .accordion-layout-v3 .accordion_detail {
           padding: 20px 0 0 0;
           border: none;
           background-color: #fff;
         }
         .accordion-layout-v3 .accordion_detail > *:first-child,
         .accordion-layout-v3 .accordion_detail > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         
         /* v2 */
         .tab-layout-v2 {
           margin-top: 2.5em;
         }
         .tab-layout-v2 > .tab_navi {
         }
         .tab-layout-v2 > .tab_navi > .tab_list {
           display: -webkit-flex;
           display: flex;
           -webkit-flex-flow: row wrap;
           flex-flow: row wrap;
         }
         .tab-layout-v2 .tab_list > li {
           display: -webkit-flex;
           display: flex;
           margin-top: 1.5em;
           margin-left: 15px;
         }
         .tab-layout-v2[data-count-sp="2"] > .tab_navi > .tab_list > li { width: calc((100% - 15px) / 2); }
         .tab-layout-v2[data-count-sp="3"] > .tab_navi > .tab_list > li { width: calc((100% - 30px) / 3); }
         .tab-layout-v2[data-count-sp="4"] > .tab_navi > .tab_list > li { width: calc((100% - 45px) / 4); }
         .tab-layout-v2[data-count-sp="2"] > .tab_navi > .tab_list > li:nth-child(-n+2),
         .tab-layout-v2[data-count-sp="3"] > .tab_navi > .tab_list > li:nth-child(-n+3),
         .tab-layout-v2[data-count-sp="4"] > .tab_navi > .tab_list > li:nth-child(-n+4) {
           margin-top: 0;
         }
         .tab-layout-v2[data-count-sp="2"] > .tab_navi > .tab_list > li:nth-child(2n+1),
         .tab-layout-v2[data-count-sp="3"] > .tab_navi > .tab_list > li:nth-child(3n+1),
         .tab-layout-v2[data-count-sp="4"] > .tab_navi > .tab_list > li:nth-child(4n+1) {
           margin-left: 0;
         }
         .tab-layout-v2 > .tab_navi > .tab_list > li > a {
           display: -webkit-flex;
           display: flex;
           -webkit-justify-content: center;
           justify-content: center;
           -webkit-align-items: center;
           align-items: center;
           position: relative;
           width: 100%;
           padding: 0 0 10px 0;
           line-height: 1.25;
           text-decoration: none;
           text-align: center;
         }
         .tab-layout-v2 > .tab_navi > .tab_list > li > a::before {
           position: absolute;
           bottom: 0;
           left: 0;
           width: 100%;
           height: 2px;
           background-color: #666;
           content: "";
         }
         .tab-layout-v2 > .tab_navi > .tab_list > li:not(.is-current) > a::after {
           position: absolute;
           bottom: 0;
           left: 0;
           width: 0;
           height: 2px;
           background-color: #ff0000;
           content: "";
         }
         .tab-layout-v2 > .tab_navi > .tab_list > li.is-current > a {
           color: #ff0000;
           font-weight: 700;
         }
         .tab-layout-v2 > .tab_navi > .tab_list > li.is-current > a::before {
           background-color: #ff0000;
         }
         .tab-layout-v2 > .tab_detail {
           padding-top: 20px;
         }
         .tab-layout.js-tabs > .tab_detail {
           display: none;
         }
         .tab-layout-v2 > .tab_detail > *:first-child,
         .tab-layout-v2 > .tab_detail > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         
         /* ------------------------------------------------------
          * Component >>> Navi
         ------------------------------------------------------ */
         /* ----- navi-anchor ----- */
         .navi-anchor {
           margin: 1em -15px;
           background-color: #f7f7fa;
         }
         .navi-anchor .navi_inner {
           padding: 15px;
         }
         .navi-anchor .navi_inner > li {
           display: -webkit-flex;
           display: flex;
         }
         .navi-anchor .navi_inner > li > a {
           display: -webkit-flex;
           display: flex;
           -webkit-justify-content: center;
           justify-content: center;
           -webkit-align-items: center;
           align-items: center;
           position: relative;
           width: 100%;
           padding: 10px 30px;
           border: 1px solid #dfdfe3;
           background-color: #fff;
           text-decoration: none;
           text-align: center;
         }
         .navi-anchor .navi_inner > li > a.is-nolink {
           color: #333;
           text-decoration: none;
           pointer-events: none;
           cursor: default;
         }
         .navi-anchor .navi_inner > li > a::before {
           position: absolute;
           bottom: 50%;
           right: 10px;
           width: 10px;
           height: 10px;
           margin: -5px 0 0 0;
           border-bottom: 1px solid #ff0000;
           border-left: 1px solid #ff0000;
           -webkit-transform: rotate(-45deg);
           transform: rotate(-45deg);
           content: "";
         }
         .navi-anchor .navi_inner > li > a.is-nolink::before {
           display: none !important;
         }
         .navi-anchor .navi_inner > li[class*="type-philosophy"] > a::after {
           display: inline-block;
           position: absolute;
           top: 50%;
           left: 8px;
           width: 19px;
           height: 14px;
           margin: -7px 0 0 0;
           background-repeat: no-repeat;
           background-position: 0 0;
           background-size: 19px auto;
           content: "";
         }
         .navi-anchor .navi_inner > li.type-philosophy1 > a::after { background-image: url(/about/philosophy/img/philosophy_ic01.png); }
         .navi-anchor .navi_inner > li.type-philosophy2 > a::after { background-image: url(/about/philosophy/img/philosophy_ic02.png); }
         .navi-anchor .navi_inner > li.type-philosophy3 > a::after { background-image: url(/about/philosophy/img/philosophy_ic03.png); }
         .navi-anchor .navi_inner > li.type-philosophy4 > a::after { background-image: url(/about/philosophy/img/philosophy_ic04.png); }
         .navi-anchor .navi_inner > li.type-philosophy5 > a::after { background-image: url(/about/philosophy/img/philosophy_ic05.png); }
         .navi-anchor .navi_inner > li > a .navi_label {
           display: inline-block;
         }
         
         /* ----- navi-local ----- */
         .navi-local {
           margin-top: 2.5em;
           padding: 20px 10px;
           background-color: #f7f7fa;
         }
         .navi-local .navi_list {
           display: -webkit-flex;
           display: flex;
           -webkit-flex-flow: row wrap;
           flex-flow: row wrap;
         }
         .navi-local .navi_list > li {
           width: calc((100% - 15px) / 2);
           margin-top: 1em;
           margin-left: 15px;
         }
         .navi-local .navi_list > li:nth-child(-n+2) {
           margin-top: 0;
         }
         .navi-local .navi_list > li:nth-child(2n+1) {
           margin-left: 0;
         }
         .navi-local .navi_list > li > a {
           display: -webkit-flex;
           display: flex;
           -webkit-flex-flow: row nowrap;
           flex-flow: row nowrap;
           -webkit-align-items: center;
           align-items: center;
         }
         .navi-local .navi_list > li > a .navi_icon {
           margin-right: 10px;
         }
         .navi-local .navi_list > li > a .navi_icon img {
           width: 40px;
           height: 40px;
         }
         .navi-local .navi_list > li > a .navi_label {
           -webkit-flex: 1;
           flex: 1;
           position: relative;
           padding-right: 15px;
         }
         .navi-local .navi_list > li > a .navi_label::after {
           display: inline-block;
           position: absolute;
           top: 50%;
           right: 4px;
           width: 10px;
           height: 10px;
           margin: -5px 0 0 0;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         /* v2 */
         .navi-local-v2 {
           margin-top: 2.5em;
         }
         .navi-local-v2 .navi_list > li.is-current > a {
           color: #333;
           font-weight: 700;
           text-decoration: none;
           cursor: default;
         }
         .navi-local-v2 .navi_list > li:not(.is-current) > a::after {
           display: inline-block;
           position: relative;
           top: -2px;
           right: 4px;
           width: 10px;
           height: 10px;
           margin: 0 0 0 8px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
   
         @media screen {
           
         }
         
         /* ------------------------------------------------------
          * Component >>> Index
         ------------------------------------------------------ */
         [class*="index-layout"] .index_caption > *:first-child,
         [class*="index-layout"] .index_caption > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         
         /* ----- index-layout ----- */
         .index-layout {
           text-align: left;
         }
         .index-layout > .block {
           border: 1px solid #dfdfe3;
           background-color: #fff;
           text-decoration: none;
         }
         .index-layout > .block .index_image {
           text-align: center;
         }
         .index-layout > .block .index_caption {
           position: relative;
           padding: 7px 20px 7px 15px;
           text-align: center;
         }
         .index-layout > .block .index_caption > *:first-child,
         .index-layout > .block .index_caption > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .index-layout > a.block .index_caption::after {
           display: inline-block;
           position: absolute;
           top: 50%;
           right: 7px;
           width: 10px;
           height: 10px;
           margin: -5px 0 0 0;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .index-layout > a.block[class*="a-"] .index_caption::after {
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .index-layout > a.block.a-pdf .index_caption::after {
           margin-top: -7px;
         }
         .index-layout > .block .index_title {
           display: -webkit-flex;
           display: flex;
           -webkit-justify-content: flex-start;
           justify-content: flex-start;
           -webkit-align-items: center;
           align-items: center;
           font-size: 1.5rem;
           font-weight: 500;
           text-align: left;
         }
         .index-layout > .block .index_title .index_title_list {
         }
         .index-layout > .block .index_title .index_title_list > .index_title_item {
           margin-top: .75em;
           font-size: 1.4rem;
         }
         .index-layout > .block .index_title .index_title_list > .index_title_item:nth-child(-n+1) {
           margin-top: 0;
         }
         .index-layout > .block .index_title .index_title_list > .index_title_item > a::after {
           display: inline-block;
           position: relative;
           top: -2px;
           right: 4px;
           width: 10px;
           height: 10px;
           margin: 0 0 0 8px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .index-layout > .block .index_title .index_title_list > .index_title_item > a[class*="a-"]::after {
           top: -1px;
           right: 0;
           margin: 0 0 0 6px;
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .index-layout > .block .index_image_2 {
           position: relative;
           text-align: center;
         }
         .index-layout > .block .index_image_2 .index_title_2 {
           position: absolute;
           font-size: 1.5rem;
           line-height: 1.1;
         }
         .index-layout > .block .index_image_2 .index_title_2.type-group-japan {
           bottom: 13.6%;
           left: 8.28%;
           color: #fff;
         }
         /* v2 */
         .index-layout-v2 {
           text-align: left;
         }
         .index-layout-v2 > .block {
           text-decoration: none;
         }
         .index-layout-v2 > .block > *:first-child {
           margin-top: 0 !important;
         }
         .index-layout-v2 > .block .index_image {
           position: relative;
           text-align: center;
         }
         .index-layout-v2 > a.block .index_image::before {
           position: absolute;
           top: 50%;
           left: 50%;
           z-index: 2;
           margin: -21px 0 0 -32px;
         }
         .index-layout-v2 > a.block.a-video .index_image::after {
           display: inline-block;
           position: absolute;
           top: 50%;
           left: 50%;
           z-index: 3;
           width: 0;
           height: 0;
           margin: -9px 0 0 -7px;
           border-width: 9px 16px;
           border-style: solid;
           border-color: transparent transparent transparent #fff;
           content: "";
         }
         .index-layout-v2 > .block .index_caption {
           margin-top: 1em;
         }
         .index-layout-v2 > .block .index_title {
           margin-top: 1em;
           font-size: 1.6rem;
           font-weight: 700;
           line-height: 1.25;
         }
         .index-layout-v2 > .block .index_title + .index_caption {
           margin-top: .5em;
         }
         .index-layout-v2 > .block .index_description {
           margin-top: .5em;
         }
         .index-layout-v2 .link-button {
           margin-top: 1em;
         }
         /* v3 */
         .index-layout-v3 {
           text-align: left;
         }
         .index-layout-v3 > .block {
           text-decoration: none;
         }
         .index-layout-v3 > .block .index_image {
           float: left;
           width: 106px;
           margin-right: 15px;
         }
         .index-layout-v3 > .block .index_caption {
           overflow: hidden;
         }
         .index-layout-v3 > .block .index_caption > *:first-child,
         .index-layout-v3 > .block .index_caption > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .index-layout-v3 > .block .index_title {
           font-size: 1.6rem;
         }
         .index-layout-v3 > a.block .index_title::after {
           display: inline-block;
           position: relative;
           top: -2px;
           right: 4px;
           width: 10px;
           height: 10px;
           margin: 0 0 0 8px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .index-layout-v3 > a.block[class*="a-"] .index_title::after {
           top: -1px;
           right: 0;
           margin: 0 0 0 6px;
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .index-layout-v3 > .block .index_description {
           margin-top: .5em;
         }
         /* v4 */
         .index-layout-v4 {
           text-align: left;
         }
         .index-layout-v4 > .block {
           padding: 12px 0;
           border-top: 1px solid #dfdfe3;
           border-bottom: 1px solid #dfdfe3;
           background-color: #fff;
           text-decoration: none;
         }
         .index-layout-v4 > .block .index_caption {
         }
         .index-layout-v4 > .block .index_caption > *:first-child,
         .index-layout-v4 > .block .index_caption > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .index-layout-v4 > .block .index_title {
           font-size: 1.6rem;
         }
         .index-layout-v4 > a.block .index_title::after {
           display: inline-block;
           position: relative;
           top: -2px;
           right: 4px;
           width: 10px;
           height: 10px;
           margin: 0 0 0 8px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .index-layout-v4 > a.block[class*="a-"] .index_title::after {
           top: -1px;
           right: 0;
           margin: 0 0 0 6px;
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .index-layout-v4 > .block .index_description {
           margin-top: .75em;
         }
         /* v5 */
         .index-layout-v5 {
           text-align: left;
         }
         .index-layout-v5 > .block {
           text-decoration: none;
         }
         .index-layout-v5 > .block .index_image {
           text-align: center;
         }
         .index-layout-v5 > .block .index_caption {
           margin-top: .5em;
         }
         .index-layout-v5 > .block .index_caption > *:first-child,
         .index-layout-v5 > .block .index_caption > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .index-layout-v5 > .block .index_title {
           font-weight: 700;
           line-height: 1.3;
         }
         .index-layout-v5 > a.block .index_title::after {
           display: inline-block;
           position: relative;
           top: -2px;
           right: 4px;
           width: 10px;
           height: 10px;
           margin: 0 0 0 8px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .index-layout-v5 > a.block[class*="a-"] .index_title::after {
           top: -1px;
           right: 0;
           margin: 0 0 0 6px;
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         /* v6 */
         .index-layout-v6 {
           text-align: left;
         }
         .index-layout-v6 > .block {
           display: -webkit-flex;
           display: flex;
           -webkit-flex-flow: row nowrap;
           flex-flow: row nowrap;
           -webkit-align-items: center;
           align-items: center;
           padding: 20px 0;
           border-top: 1px solid #dfdfe3;
           border-bottom: 1px solid #dfdfe3;
           text-decoration: none;
         }
         .index-layout-v6 > .block .index_image {
           width: 105px;
           margin-right: 15px;
         }
         .index-layout-v6 > .block .index_caption {
           -webkit-flex: 1;
           flex: 1;
           position: relative;
         }
         .index-layout-v6 > a.block .index_caption {
           padding-right: 30px;
         }
         .index-layout-v6 > a.block .index_caption::after {
           display: inline-block;
           position: absolute;
           top: 50%;
           right: 10px;
           width: 10px;
           height: 10px;
           margin: -5px 0 0 0;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .index-layout-v6 > a.block[class*="a-"] .index_caption::after {
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .index-layout-v6 > a.block.a-pdf .index_caption::after {
           right: 7px;
           margin-top: -7px;
         }
         .index-layout-v6 > .block .index_caption > *:first-child,
         .index-layout-v6 > .block .index_caption > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .index-layout-v6 > .block .index_title {
           font-weight: 700;
           line-height: 1.3;
         }
         /* v7 */
         .index-layout-v7 {
           text-align: left;
         }
         .index-layout-v7 > .block {
           padding: 15px 0;
           border-top: 1px solid #dfdfe3;
           border-bottom: 1px solid #dfdfe3;
           background-color: #fff;
           text-decoration: none;
         }
         .index-layout-v7 > .block .index_caption {
         }
         .index-layout-v7 > .block .index_caption > *:first-child,
         .index-layout-v7 > .block .index_caption > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .index-layout-v7 > .block .index_title {
           font-size: 1.6rem;
           font-weight: 700;
           line-height: 1.25;
         }
         .index-layout-v7 > a.block .index_title::after {
           display: inline-block;
           position: relative;
           top: -2px;
           right: 4px;
           width: 10px;
           height: 10px;
           margin: 0 0 0 8px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .index-layout-v7 > a.block[class*="a-"] .index_title::after {
           top: -1px;
           right: 0;
           margin: 0 0 0 6px;
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .index-layout-v7 > .block .index_description {
           margin-top: .5em;
         }
         /* v8 */
         .index-layout-v8 {
           text-align: left;
         }
         .index-layout-v8 > .block {
           display: -webkit-flex;
           display: flex;
           -webkit-flex-flow: row nowrap;
           flex-flow: row nowrap;
           -webkit-align-items: center;
           align-items: center;
           padding: 20px 0;
           border-top: 1px solid #dfdfe3;
           border-bottom: 1px solid #dfdfe3;
           text-decoration: none;
         }
         .index-layout-v8 > .block .index_image {
           width: 105px;
           margin-right: 15px;
         }
         .index-layout-v8 > .block .index_caption {
           -webkit-flex: 1;
           flex: 1;
           position: relative;
         }
         .index-layout-v8 > a.block .index_caption {
           padding-right: 30px;
         }
         .index-layout-v8 > a.block .index_caption::after {
           display: inline-block;
           position: absolute;
           top: 50%;
           right: 10px;
           width: 10px;
           height: 10px;
           margin: -5px 0 0 0;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .index-layout-v8 > a.block[class*="a-"] .index_caption::after {
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .index-layout-v8 > a.block.a-pdf .index_caption::after {
           right: 7px;
           margin-top: -7px;
         }
         .index-layout-v8 > .block .index_caption > *:first-child,
         .index-layout-v8 > .block .index_caption > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .index-layout-v8 > .block .index_title {
           font-weight: 700;
           line-height: 1.3;
         }
         /* v9 */
         .index-layout-v9 {
           text-align: left;
         }
         .index-layout-v9 > .index_heading > .block {
           display: -webkit-flex;
           display: flex;
           -webkit-align-items: center;
           align-items: center;
           border: 1px solid #dfdfe3;
           background-color: #fff;
           text-decoration: none;
         }
         .index-layout-v9 > .index_heading > .block .index_image {
           width: 43.47%;
         }
         .index-layout-v9 > .index_heading > .block .index_image img {
           width: 100%;
         }
         .index-layout-v9 > .index_heading > .block .index_caption {
           -webkit-flex: 1;
           flex: 1;
           position: relative;
           padding: 5px 25px 5px 20px;
         }
         .index-layout-v9 > .index_heading > a.block .index_caption::before {
           position: absolute;
           top: 50%;
           right: 10px;
           width: 10px;
           height: 10px;
           margin-top: -5px;
           margin-right: 2px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .index-layout-v9 > .index_heading > .block .index_caption .index_caption_inner {
         }
         .index-layout-v9 > .index_heading > .block .index_title {
           width: 100%;
           font-size: 1.5rem;
           font-weight: 500;
           line-height: 1.2;
         }
         .index-layout-v9 > .index_heading > .block .index_title .is-smaller {
           font-size: 1.3rem;
         }
         .index-layout-v9 > .index_links {
           background-color: #fff;
         }
         .index-layout-v9 > .index_links > li {
           border-bottom: 1px solid #dfdfe3;
         }
         .index-layout-v9 > .index_links > li > a,
         .index-layout-v9 > .index_links > li > .is-nolink {
           display: block;
           position: relative;
           padding: 12px 27px 12px 15px;
           text-decoration: none;
         }
         .index-layout-v9 > .index_links > li > a::before {
           position: absolute;
           top: 50%;
           right: 10px;
           width: 10px;
           height: 10px;
           margin-top: -5px;
           margin-right: 2px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .index-layout-v9 > .index_links > li > a[class*="a-"]::before {
           border: none;
           -webkit-transform: rotate(0deg);
       
           transform: rotate(0deg);
         }
         .index-layout-v9 > .index_links > li > a.a-pdf::before {
           margin-top: -7px;
         }
         
         /* ----- products-index-layout ----- */
         .products-index-layout {
           margin: 1.5em -15px 0;
           border-top: 1px solid #dfdfe3;
           border-bottom: 1px solid #dfdfe3;
         }
         .products-index-layout + .products-index-layout {
           margin-top: -1px;
         }
         .products-index-layout .index_heading {
           position: relative;
           padding: 12px 45px 12px 15px;
           background-color: #f7f7fa;
         }
         .products-index-layout .index_heading .index_title {
           font-weight: 700;
         }
         .products-index-layout .index_heading .index_title a::after {
           display: inline-block;
           position: relative;
           top: -2px;
           right: 4px;
           width: 10px;
           height: 10px;
           margin: 0 0 0 8px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .products-index-layout .index_heading .index_title a[class*="a-"]::after {
           right: 0;
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .products-index-layout .index_heading .index_toggle {
           position: absolute;
           top: 50%;
           right: 15px;
           margin: -10px 0 0 0;
         }
         .products-index-layout .index_heading .index_toggle .index_toggle_trigger {
           position: relative;
           width: 20px;
           height: 20px;
         }
         .products-index-layout .index_heading .index_toggle .index_toggle_trigger::before,
         .products-index-layout .index_heading .index_toggle .index_toggle_trigger::after {
           position: absolute;
           top: 50%;
           left: 50%;
           width: 19px;
           height: 1px;
           margin: 0 0 0 -9px;
           background-color: #ff0000;
           content: "";
         }
         .products-index-layout .index_heading .index_toggle .index_toggle_trigger::before {
           -webkit-transform: rotate(90deg);
           transform: rotate(90deg);
         }
         .products-index-layout .index_heading .index_toggle .index_toggle_trigger.is-active::before {
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .products-index-layout .index_content {
           padding: 18px 15px;
         }
         .products-index-layout .index_content > *:first-child,
         .products-index-layout .index_content > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .products-index-layout .index_content .index_sgds {
           display: -webkit-flex;
           display: flex;
           -webkit-flex-flow: row wrap;
           flex-flow: row wrap;
           -webkit-justify-content: center;
           justify-content: center;
           margin: 1em 0 -10px 0;
         }
         .products-index-layout .index_content .index_sgds > li {
           margin: 0 0 10px 0;
           padding: 0 5px;
         }
         .products-index-layout .index_content .index_links {
           margin: 1em 0 0 0;
         }
         .products-index-layout .index_content .index_links > li + li {
           margin-top: 1.25em;
         }
         .products-index-layout .index_content .index_links > li > *:first-child,
         .products-index-layout .index_content .index_links > li > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .products-index-layout .column-media > .column_detail:first-child {
           margin-top: 0;
         }
         
         /* ----- products-index-layout-v2 ----- */
         .products-index-layout-v2 {
           margin: 1.5em -15px 0;
           border-top: 1px solid #dfdfe3;
           border-bottom: 1px solid #dfdfe3;
         }
         .products-index-layout-v2 + .products-index-layout-v2 {
           margin-top: -1px;
         }
         .products-index-layout-v2 .index_heading {
           position: relative;
           display: block;
           padding: 12px 45px 12px 15px;
           background-color: #f7f7fa;
           text-decoration: none;
         }
         .products-index-layout-v2 .index_heading .index_title {
           font-weight: 700;
         }
         .products-index-layout-v2 .index_heading .index_toggle {
           position: absolute;
           top: 50%;
           right: 15px;
           margin: -10px 0 0 0;
         }
         .products-index-layout-v2 .index_heading .index_toggle .index_toggle_trigger {
           position: relative;
           width: 20px;
           height: 20px;
         }
         .products-index-layout-v2 .index_heading .index_toggle .index_toggle_trigger::before,
         .products-index-layout-v2 .index_heading .index_toggle .index_toggle_trigger::after {
           position: absolute;
           top: 50%;
           left: 50%;
           width: 19px;
           height: 1px;
           margin: 0 0 0 -9px;
           background-color: #ff0000;
           content: "";
         }
         .products-index-layout-v2 .index_heading .index_toggle .index_toggle_trigger::before {
           -webkit-transform: rotate(90deg);
           transform: rotate(90deg);
         }
         .products-index-layout-v2 .index_heading.is-active .index_toggle .index_toggle_trigger::before {
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .products-index-layout-v2 .index_content {
           padding: 18px 15px;
         }
         .products-index-layout-v2 .index_content > *:first-child,
         .products-index-layout-v2 .index_content > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .products-index-layout-v2 .index_content .index_sgds {
           display: -webkit-flex;
           display: flex;
           -webkit-flex-flow: row wrap;
           flex-flow: row wrap;
           -webkit-justify-content: center;
           justify-content: center;
           margin: 1em 0 -10px 0;
         }
         .products-index-layout-v2 .index_content .index_sgds > li {
           margin: 0 0 10px 0;
           padding: 0 5px;
         }
         .products-index-layout-v2 .index_content .index_links {
           margin: 1em 0 0 0;
         }
         .products-index-layout-v2 .index_content .index_links > li + li {
           margin-top: 1.25em;
         }
         .products-index-layout-v2 .index_content .index_links > li > *:first-child,
         .products-index-layout-v2 .index_content .index_links > li > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .products-index-layout-v2 .column-media > .column_detail:first-child {
           margin-top: 0;
         }
         
         /* ------------------------------------------------------
          * Component >>> Other
         ------------------------------------------------------ */
         /* ----- article-information ----- */
         .article-information > *:last-child {
           margin-bottom: 0 !important;
         }
         .article-information .article_time {
           margin: 1.5em 0;
           text-align: right;
         }
         .article-information .article_time + * {
           margin-top: 1.5em;
         }
         .article-information .article_wysiwyg {
           margin: 2em 0;
         }
         .article-information .article_wysiwyg > *:first-child,
         .article-information .article_wysiwyg > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         
         /* ----- article-news ----- */
         .article-news > *:last-child {
           margin-bottom: 0 !important;
         }
         .article-news .article_time {
           margin: 1.5em 0;
           text-align: right;
         }
         .article-news .article_time + * {
           margin-top: 1.5em;
         }
         .article-information .article_wysiwyg {
           margin: 2em 0;
         }
         .article-information .article_wysiwyg > *:first-child,
         .article-information .article_wysiwyg > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         
         /* ----- news-compo ----- */
         .news-compo {
           margin-top: 2.5em;
           border-top: 1px solid #eee;
         }
         .news-compo .news_no_article {
           margin-top: 1em;
           text-align: center;
         }
         .news-compo .news_article {
           border-bottom: 1px solid #eee;
         }
         .news-compo .block {
           position: relative;
           padding: 15px 0;
           text-decoration: none;
           outline: none;
         }
         .news-compo a.block {
           padding-right: 24px;
         }
         .news-compo a.block::after {
           display: inline-block;
           position: absolute;
           top: 50%;
           right: 8px;
           width: 10px;
           height: 10px;
           margin: -5px 0 0 0;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .news-compo a.block[class*="a-"]::after {
           right: 5px;
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .news-compo a.block.a-pdf::after {
           right: 1px;
           margin-top: -7px;
         }
         .news-compo .news_detail {
         }
         .news-compo .news_property {
           display: -webkit-flex;
           display: flex;
           -webkit-align-items: center;
           align-items: center;
         }
         .news-compo .news_date {
           display: inline-block;
           margin-right: 8px;
           font-size: 1.2rem;
           vertical-align: middle;
         }
         .news-compo .news_icon {
           display: -webkit-inline-box;
           display: inline-flex;
           vertical-align: middle;
         }
         .news-compo .news_icon .icon-news {
           position: relative;
           top: 0;
         }
         .news-compo .news_icon .icon-news:nth-of-type(n+2) {
           margin-left: .5em;
         }
         .news-compo .news_title {
           margin-top: .5em;
         }
         
         /* ----- news-select-wrap ----- */
         .news-select-wrap {
           display: -webkit-box;
           display: flex;
           -webkit-box-pack: justify;
           justify-content: space-between;
           -webkit-box-align: center;
           align-items: center;
           padding-top: 15px;
         }
         .news-select-wrap + .news-compo {
           margin-top: 30px;
         }
         .news-select-wrap .news_select_pulldown {
           position: relative;
           width: 100%;
           margin-left: 1px;
         }
         .news-select-wrap .news_select_pulldown::before {
           content: "";
           display: block;
           position: absolute;
           top: 50%;
           right: 15px;
           width: 10px;
           height: 10px;
           margin: -7px 0 0 0;
           border-right: 1.5px solid #ff2424;
           border-bottom: 1.5px solid #ff2424;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           cursor: pointer;
           pointer-events: none;
         }
         .news-select-wrap .news_select_year {
           width: 100%;
           padding: 11px 33px 11px 15px;
           border: 1px solid #dfdfe3;
           font-size: 1.4rem;
           font-weight: normal;
           cursor: pointer;
         }
         .news-select-wrap .news_select_year::-ms-expand {
           display: none;
         }
         .news-select-wrap .news_select_rss{
           display: none;
         }
         
         /* ----- gmap-compo ----- */
         .gmap-compo {
           margin-top: 2.5em;
         }
         .gmap-compo .gmap_canvas {
           position: relative;
           height: 0;
           padding-top: 72.463%;
           overflow: hidden;
         }
         .gmap-compo .gmap_canvas iframe {
           position: absolute;
           top: 0;
           left: 0;
           width: 100%;
           height: 100%;
         }
         
         /* ----- banner-compo ----- */
         .banner-compo {
           margin-top: 2.5em;
         }
         .banner-compo > *:first-child,
         .banner-compo > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .banner-compo .banner_list {
           margin-top: .75em;
         }
         /* v2 */
         .banner-compo-v2 {
           margin-top: 2em;
         }
         .banner-compo-v2 > .block {
           background-color: #f7f7fa;
           text-decoration: none;
         }
         .banner-compo-v2 > .block .banner_caption {
           padding: 15px 10px;
           text-align: center;
         }
         .banner-compo-v2 > .block .banner_title {
           color: #ff0000;
           font-size: 2.1rem;
         }
         .banner-compo-v2 > .block .banner_title::after {
           display: inline-block;
           position: relative;
           top: -2px;
           right: 4px;
           width: 10px;
           height: 10px;
           margin: 0 0 0 8px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .banner-compo-v2 > .block .banner_lead {
           margin-top: .5em;
         }
         .banner-compo-v2 > .block .banner_image {
           text-align: center;
         }
         
         /* ----- slider-gallery-compo ----- */
         .slider-gallery-compo {
           margin-top: 2.5em;
         }
         .slider-gallery-compo .gallery_carousel .gallery_carousel_photos {
           position: relative;
         }
         .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .gallery_carousel_item img {
           margin: 0 auto;
         }
         .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-arrow {
           position: absolute;
           bottom: 5px;
           width: 10px;
           height: 10px;
           margin: 0;
           padding: 0;
           border: none;
           background: none;
           text-indent: -9999em;
           outline: none;
           cursor: pointer;
           -webkit-transform: rotate(-45deg);
           transform: rotate(-45deg);
         }
         .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-prev {
           left: 50%;
           margin-left: -100px;
           border-top: 1px solid #696969;
           border-left: 1px solid #696969;
         }
         .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-next {
           right: 50%;
           margin-right: -100px;
           border-right: 1px solid #696969;
           border-bottom: 1px solid #696969;
         }
         .slider-gallery-compo .gallery_carousel .gallery_carousel_photos.is-maximum .slick-arrow.slick-prev {
           left: 3px;
           margin-left: 0;
         }
         .slider-gallery-compo .gallery_carousel .gallery_carousel_photos.is-maximum .slick-arrow.slick-next {
           right: 3px;
           margin-right: 0;
         }
         .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-dots {
           display: -webkit-flex;
           display: flex;
           -webkit-flex-flow: row wrap;
           flex-flow: row wrap;
           -webkit-justify-content: center;
           justify-content: center;
           -webkit-align-items: center;
           align-items: center;
           margin-top: 1em;
           padding: 0 15px;
           text-align: center;
         }
         .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-dots > li {
           display: -webkit-flex;
           display: flex;
           -webkit-align-items: center;
           align-items: center;
           height: 20px;
           padding: 0 15px;
         }
         .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-dots > li button {
           width: 14px;
           height: 14px;
           margin: 0;
           padding: 0;
           border: none;
           background-color: #ccc;
           border-radius: 50%;
           text-indent: -9999em;
           outline: none;
           cursor: pointer;
         }
         .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-dots > li.slick-active button {
           background-color: #ff0000;
         }
         /* v2 */
         .slider-gallery-compo-v2 {
           margin-top: 2.5em;
         }
         .slider-gallery-compo-v2 .gallery_carousel {
           max-width: 300px;
           margin: 0 auto;
         }
         .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos {
           position: relative;
         }
         .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .gallery_carousel_item img {
           margin: 0 auto;
         }
         .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow {
           position: absolute;
           top: 85px;
           z-index: 2;
           margin: 0;
           padding: 0;
           border: none;
           background-color: transparent;
           text-indent: -9999em;
           outline: none;
           cursor: pointer;
         }
         .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-prev {
           left: 10px;
         }
         .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-next {
           right: 10px;
         }
         .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots {
           display: -webkit-flex;
           display: flex;
           -webkit-flex-flow: row wrap;
           flex-flow: row wrap;
           margin-top: .5em;
         }
         .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li {
           display: -webkit-flex;
           display: flex;
           -webkit-align-items: center;
           align-items: center;
           position: relative;
           width: calc((100% - 18px) / 3);
           margin-top: .5em;
           margin-left: 9px;
           opacity: .5;
         }
         .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li:nth-child(-n+3) {
           margin-top: 0;
         }
         .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li:nth-child(3n+1) {
           margin-left: 0;
         }
         .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li.slick-active {
           opacity: 1;
         }
         
         /* ----- contact-compo ----- */
         .contact-compo {
           margin-top: 2.5em;
         }
         .contact-compo .contact_box {
           border: 1px solid #dfdfe3;
         }
         .contact-compo .contact_box > .contact_heading {
           padding: 12px 10px;
           background-color: #f7f7fa;
           text-align: center;
         }
         .contact-compo .contact_box > .contact_content {
           padding: 15px 10px;
           text-align: center;
           vertical-align: middle;
         }
         .contact-compo .contact_box > .contact_content > *:first-child,
         .contact-compo .contact_box > .contact_content > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .contact-compo .contact_box > .contact_content .link-button-v2 a > .link_label {
           display: block;
         }
         
         /* ----- group-lead-compo ----- */
         .group-lead-compo {
           margin: 2.5em -15px 0;
           padding: 20px 15px 25px;
           background-color: #f7f7fa;
         }
         .group-lead-compo > *:first-child,
         .group-lead-compo > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .group-lead-compo .link-button-v3 {
           margin-top: 1em;
         }
         .group-lead-compo .link-button-v3 a > .link_label {
           display: block;
         }
         
         /* ----- related-compo ----- */
         .related-compo {
           margin-top: 2.5em;
         }
         .related-compo .related_box {
           padding: 15px;
           border: 1px solid #dfdfe3;
           background-color: #fff;
         }
         .related-compo .related_box > *:first-child,
         .related-compo .related_box > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .related-compo .related_box .related_title {
           font-weight: 700;
           line-height: 1.2;
         }
         /* v2 */
         .related-compo-v2 {
           margin: 2.5em -15px 0;
           padding: 18px 15px;
           background-color: #f7f7fa;
         }
         .related-compo-v2 .related_inner {
         }
         .related-compo-v2 .related_inner > *:first-child,
         .related-compo-v2 .related_inner > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .related-compo-v2 .related_inner .related_title {
           font-size: 1.8rem;
         }
         .related-compo-v2 .related_inner .related_title + * {
           margin-top: 1em;
         }
         .related-compo-v2 .related_inner .related_links_2 > li {
           margin-top: .5em;
         }
         .related-compo-v2 .related_inner .related_links_2 .block {
           text-decoration: none;
         }
         .related-compo-v2 .related_inner .related_links_2 .block .related_links_image {
           display: none;
         }
         .related-compo-v2 .related_inner .related_links_2 .block .related_links_title {
         }
         .related-compo-v2 .related_inner .related_links_2 a.block .related_links_title::after {
           display: inline-block;
           position: relative;
           top: -2px;
           right: 4px;
           width: 10px;
           height: 10px;
           margin: 0 0 0 8px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .related-compo-v2 .related_inner .related_links_2 a.block[class*="a-"] .related_links_title::after {
           top: -1px;
           right: 0;
           margin: 0 0 0 6px;
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         
         /* ----- video-iframe-compo ----- */
         .video-iframe-compo {
           overflow-x: auto;
           -webkit-overflow-scrolling: touch;
         }
         .video-iframe-compo iframe {
           width: 720px !important;
           height: 400px;
           border: none;
           overflow: auto;
         }
         
         /* ----- stock-iframe-compo ----- */
         .stock-iframe-compo {
           overflow-x: auto;
           -webkit-overflow-scrolling: touch;
         }
         .stock-iframe-compo iframe {
           width: 100% !important;
           height: 800px;
           border: none;
           overflow: auto;
         }
         
         /* ----- grade-iframe-compo ----- */
         .grade-iframe-compo {
           overflow-x: auto;
           -webkit-overflow-scrolling: touch;
         }
         .grade-iframe-compo iframe {
           width: 750px !important;
           border: none;
           overflow: auto;
         }
         
         /* ----- yellowcard-iframe-compo ----- */
         .yellowcard-iframe-compo {
           overflow-x: auto;
           -webkit-overflow-scrolling: touch;
         }
         .yellowcard-iframe-compo iframe {
           width: 750px !important;
           border: none;
           overflow: auto;
         }
         
         /* ----- about-layout ----- */
         .about-layout {
           margin-top: 2.14em;
         }
         .about-layout .banner_block {
           display: block;
           background-color: #f7f7fa;
           text-decoration: none;
         }
         .about-layout .banner_caption {
           padding: 15px 30px;
           text-align: center;
         }
         .about-layout .banner_title {
           position: relative;
           padding: 0 14px 0 0;
           display: inline-block;
           color: #ff0000;
           font-size: 2.4rem;
           line-height: 1.2;
         }
         .about-layout .banner_title::after {
           position: absolute;
           top: 50%;
           right: 4px;
           width: 10px;
           height: 10px;
           margin: -3px 0 0 0;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .about-layout .banner_title .banner_title_sub {
           display: block;
           font-size: 1.6rem;
         }
         .about-layout .banner_lead {
           margin-top: .5em;
         }
         .about-layout .banner_lead > p {
           display: inline-block;
           text-align: left;
         }
         .about-layout .banner_image {
           text-align: center;
         }
         
         /* ----- officer-layout ----- */
         .officer-layout {
           margin: 3rem 0 0 !important;
         }
         .officer-layout + .officer-layout,
         .officer-layout .officer_column > .column_item {
           margin-top: 1rem !important;
         }
         .officer-layout .officer_column > .column_item {
           border: 1px solid #dfdfe3;
         }
         .officer-layout .officer_column > .column_item:first-child {
           margin-top: 0 !important;
         }
         .officer-layout .officer_column_2 {
           position: relative;
           display: flex;
           align-items: center;
         }
         .officer-layout .officer_column_2::before,
         .officer-layout .officer_column_2::after {
           position: absolute;
           top: 50%;
           right: 14px;
           background-color: #ff0000;
           content: "";
         }
         .officer-layout .officer_column_2::before {
           width: 19px;
           height: 1px;
         }
         .officer-layout .officer_column_2::after {
           width: 1px;
           height: 19px;
           margin-top: -9px;
           margin-right: 9px;
         }
         .officer-layout .officer_column_2 > .column_image {
           white-space: nowrap;
         }
         .officer-layout .officer_column_2 > .column_text {
           flex: 1;
           padding: 5px 47px 5px 15px;
         }
         .officer-layout .officer_column_3 {
           padding: 15px;
         }
         .officer-layout .officer_column_3 > .column_image {
           display: none;
         }
         .officer-layout .officer_text > dt {
           font-size: 1.3rem;
         }
         .officer-layout .officer_text > dd {
           margin: .5em 0 0;
         }
         .officer-layout .officer_text > dd > .text_name {
           font-size: 1.8rem;
           line-height: 1;
         }
         .officer-layout .officer_text > dd > .text_kana {
           display: block;
           font-size: 1.0rem;
         }
         .officer-layout .officer_button {
           display: none;
         }
         .officer-layout .officer_image img {
           max-width: 105px;
         }
         .officer-layout .officer_table {
           width: 100%;
           border-top: 1px solid #dfdfe3;
         }
         .officer-layout .officer_table > * > tr > * {
           padding: 10px 0;
           border-bottom: 1px solid #dfdfe3;
           text-align: left;
           vertical-align: top;
         }
         .officer-layout .officer_table > tbody > tr > th {
           font-weight: normal;
           white-space: nowrap;
         }
         .officer-layout .officer_table > tbody > tr > td {
           width: 99%;
           padding-left: 15px;
         }
         .officer-layout .officer_column > .column_item.is-active {
           background-color: #f7f7fa;
         }
         .officer-layout .officer_column > .column_item.is-active .officer_column_2::after {
           opacity: 0;
         }
         /* v2 */
         .officer-layout-v2 {
           margin: 3em 0 0 !important;
         }
         .officer-layout-v2 table.officer_table {
           width: 100%;
           border-top: 1px solid #dfdfe3;
         }
         .officer-layout-v2 table.officer_table > * > tr > * {
           padding: 10px 15px;
           border-right: 1px solid #dfdfe3;
           border-bottom: 1px solid #dfdfe3;
           vertical-align: middle;
           text-align: left;
         }
         .officer-layout-v2 table.officer_table > * > tr > *:last-child {
           border-right: none;
         }
         .officer-layout-v2 table.officer_table > tbody > tr > th {
           width: 34.78%;
           background-color: #f7f7fa;
           font-weight: 700;
         }
         .officer-layout-v2 table.officer_table > tbody > tr > th.cell-style1 {
           padding-left: 40px;
         }
         .officer-layout-v2 table.officer_table > tbody > tr > th.cell-style2 {
           border-bottom-color: #f7f7fa;
         }
         .officer-layout-v2 table.officer_table > tbody > tr > td.cell-style3 {
           border-bottom-color: #fff;
         }
         .officer-layout-v2 table.officer_table > tbody > tr > th.cell-style2,
         .officer-layout-v2 table.officer_table > tbody > tr > td.cell-style3 {
           padding-bottom: 0;
         }
         .officer-layout-v2 table.officer_table > tbody > tr > th.cell-style4 {
           vertical-align: top;
         }
         
         /* ----- location-compo ----- */
         .location-compo {
           margin-top: 2.5em;
         }
         .location-compo + .location-compo {
           margin-top: 0;
         }
         .location-compo .location_caption {
         }
         .location-compo .location_caption .location_company {
           font-weight: 700;
           line-height: 1.25;
         }
         .location-compo + .location-compo .location_caption .location_company {
           margin-top: 1.5em;
         }
         .location-compo .location_caption .location_company > a::after {
           display: inline-block;
           position: relative;
           top: -2px;
           right: 4px;
           width: 10px;
           height: 10px;
           margin: 0 0 0 8px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .location-compo .location_caption .location_company > a[class*="a-"]::after {
           top: -1px;
           right: 0;
           margin: 0 0 0 6px;
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .location-compo .location_caption .location_description {
           margin-top: .25em;
           line-height: 1.5;
         }
         .location-compo .location_table {
           margin: 0 -15px;
         }
         .location-compo .location_caption + .location_table {
           margin-top: .75em;
         }
         .location-compo .location_table > .location_table_head {
           position: relative;
           padding: 15px 45px 15px 15px;
           border-top: 1px solid #dfdfe3;
           background-color: #f7f7fa;
         }
         .location-compo .location_table > .location_table_head::before,
         .location-compo .location_table > .location_table_head::after {
           position: absolute;
           top: 50%;
           right: 15px;
           width: 19px;
           height: 1px;
           background-color: #ff0000;
           content: "";
         }
         .location-compo .location_table > .location_table_head::before {
           -webkit-transform: rotate(90deg);
           transform: rotate(90deg);
         }
         .location-compo .location_table > .location_table_head.is-active::before {
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .location-compo .location_table > .location_table_data {
           padding: 12px 15px 15px;
           background-color: #fff;
         }
         .location-compo .location_table .location_title {
           font-weight: 700;
         }
         .location-compo .location_table .location_info + .location_info {
           margin-top: 15px;
           padding-top: 15px;
           border-top: 1px solid #dfdfe3;
         }
         .location-compo .location_table .location_info > [class*="location_info_"] > *:first-child,
         .location-compo .location_table .location_info > [class*="location_info_"] > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .location-compo .location_table .location_info > .location_info_place {
         }
         .location-compo .location_table .location_info > .location_info_contact {
           margin-top: .75em;
         }
         .location-compo .location_table .location_name {
           font-weight: 700;
         }
         .location-compo .location_table .location_address {
           margin-top: .5em;
         }
         .location-compo .location_table .location_links {
           margin-top: .75em;
         }
         .location-compo .location_table .location_links > li + li {
           margin-top: 1em;
         }
         .location-compo .location_table .location_links > li > a {
           display: block;
           position: relative;
           padding: 12px 35px; 
           border: 1px solid #dfdfe3;
           background-color: #fff;
           text-align: center;
           text-decoration: none;
         }
         .location-compo .location_table .location_links > li > a.a-map {
           display: inline-block;
           padding: 0 0 0 23px;
           border: none;
           text-align: left;
         }
         .location-compo .location_table .location_links > li > a.a-map::before {
           position: absolute;
           top: 0;
           left: 0;
         }
         .location-compo .location_table .location_links > li > a > .location_links_label {
           display: inline-block;
         }
         .location-compo .location_table .location_links > li > a > .location_links_label::after {
           display: inline-block;
           position: absolute;
           top: 50%;
           right: 18px;
           width: 10px;
           height: 10px;
           margin: -5px 0 0 0;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .location-compo .location_table .location_links > li > a[class*="a-"] > .location_links_label::after {
           right: 15px;
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .location-compo .location_table .location_links > li > a.a-map > .location_links_label::after {
           display: none;
         }
         .location-compo .location_table .location_tel a[href*="tel:"] {
           text-decoration: none;
         }
         
         /* ----- philosophy-compo ----- */
         .philosophy-compo {
           margin-top: 2.5em;
         }
         .philosophy-compo > .philosophy_item {
           margin-top: 2em;
         }
         .philosophy-compo > .philosophy_item:nth-child(-n+1) {
           margin-top: 0;
         }
         .philosophy-compo > .philosophy_item > *:first-child,
         .philosophy-compo > .philosophy_item > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .philosophy-compo > .philosophy_item .philosophy_heading {
           padding: 15px;
           border: 1px solid #ff0000;
           background-color: #fff;
           text-align: center;
         }
         .philosophy-compo > .philosophy_item .philosophy_heading > *:first-child,
         .philosophy-compo > .philosophy_item .philosophy_heading > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .philosophy-compo > .philosophy_item .philosophy_statement {
           color: #ff0000;
           font-size: 1.5rem;
         }
         .philosophy-compo > .philosophy_item .philosophy_statement > strong {
           font-weight: 500;
         }
         .philosophy-compo > .philosophy_item .philosophy_statement_2 {
           margin-top: 1em;
           color: #ff0000;
         }
         .philosophy-compo > .philosophy_item .philosophy_statement_2 > strong {
           font-weight: 500;
         }
         .philosophy-compo > .philosophy_item .philosophy_detail {
           margin-top: 1em;
         }
         .philosophy-compo > .philosophy_item .philosophy_detail > *:first-child,
         .philosophy-compo > .philosophy_item .philosophy_detail > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .philosophy-compo > .philosophy_item .philosophy_detail [class*="list-order"] > li > .list_mark {
           font-weight: 400;
         }
         
         /* ----- products-layout ----- */
         .products-layout {
           margin: 10px 0 0;
         }
         .products-layout .products_link {
           display: flex;
           flex-wrap: wrap;
           justify-content: space-between;
         }
         .products-layout .products_link > li {
           display: flex;
           width: calc((100% - 15px) / 2);
           margin-top: 15px;
           box-sizing: border-box;
           background-color: #fff;
           border: 1px solid #dfdfe3;
         }
         .products-layout .products_link > li:nth-child(-n+2) {
           margin-top: 0;
         }
         .products-layout .products_link > li > .products_block {
           display: flex;
           width: 100%;
         }
         .products-layout .products_link > li > a.products_block {
           position: relative;
         }
         .products-layout .products_link > li > a.products_block::before {
           content: "";
           position: absolute;
           right: 10px;
           top: 50%;
           width: 10px;
           height: 10px;
           margin-top: -4px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
         }
         .products-layout .products_link > li > .products_block > .products_icon,
         .products-layout .products_link > li > .products_block > .products_label {
           display: flex;
           align-items: center;
         }
         .products-layout .products_link > li > .products_block > .products_icon {
           justify-content: center;
           width: 60px;
           width: 36.36%;
           background-color: #f7f7fa;
         }
         .products-layout .products_link > li > .products_block > .products_label {
           flex: 1;
           padding: 10px 25px 10px 10px;
           line-height: 1.2;
         }
         
         /* ----- products-search-layout ----- */
         .products-search-layout {
           margin: 2.15em -15px 0;
           border-bottom: 1px solid #dddddd;
         }
         .products-search-layout .search_heading {
           position: relative;
           padding: 15px 50px 15px 15px;
           background-color: #f7f7fa;
           border-top: 1px solid #dfdfe3;
           font-weight: 700;
           cursor: pointer;
         }
         .products-search-layout .search_heading::before,
         .products-search-layout .search_heading::after {
           position: absolute;
           top: 50%;
           right: 20px;
           width: 20px;
           height: 1px;
           background-color: #ff0000;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
           content: "";
         }
         .products-search-layout .search_heading::before {
           -webkit-transform: rotate(90deg);
           transform: rotate(90deg);
         }
         .products-search-layout .search_heading.is-active::before {
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .products-search-layout .search_frame {
           padding: 10px 15px 20px;
         }
         .products-search-layout .search_frame > *:first-child {
           margin-top: 0;
         }
         .products-search-layout .search_column {
           margin: 1em 0 0;
         }
         .products-search-layout .search_column > * > *:first-child {
           margin-top: 0;
         }
         .products-search-layout .search_column > .column_link {
           margin: .5em 0 0;
         }
         .products-search-layout .search_column > .column_link .link-text {
           display: flex;
           flex-wrap: wrap;
           justify-content: space-between;
         }
         .products-search-layout .search_column > .column_link .link-text > li {
           width: calc((100% - 15px) / 2);
           margin-top: 10px;
         }
         .products-search-layout .search_column > .column_link .link-text > li:nth-child(-n+2) {
           margin-top: 0;
         }
         .products-search-layout .products-layout {
           margin-top: 1em;
         }
         .products-search-layout .products-layout .products_link > li > .products_block > .products_icon {
           width: 45px;
         }
         .products-search-layout .products-layout .products_link > li > .products_block > .products_label {
           font-size: 1.3rem;
         }
         /* v2 */
         .products-search-layout-v2 {
           margin: 1.5em 0 0;
         }
         .products-search-layout-v2 .search_text > dt::after {
           content: "：";
         }
         .products-search-layout-v2 .search_text > dd > span {
           color: #ff0000;
         }
         .products-search-layout-v2 .search_text_2 {
           margin: .5em 0 0;
         }
         .products-search-layout-v2 .search_text_2 > span {
           font-size: 2.0rem;
           font-weight: 700;
         }
         .products-search-layout-v2 .search_text_2 > span > em {
           font-style: normal;
         }
         
         /* ----- ir-layout ----- */
         .ir-layout .ir_button {
           position: relative;
           display: block;
         }
         .ir-layout .ir_heading {
           position: absolute;
           top: 17.66%;
           left: 4.37%;
           line-height: 1;
           z-index: 2;
         }
         .ir-layout .ir_heading_2 {
           display: flex;
           align-items: baseline;
         }
         .ir-layout .ir_heading_2 .heading_date {
           margin: 0 0 0 1.8em;
           font-size: 1.1rem;
         }
         .ir-layout a.ir_button .ir_heading::after {
           position: relative;
           top: -2px;
           right: 4px;
           display: inline-block;
           width: 10px;
           height: 10px;
           margin: 0 0 0 8px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .ir-layout .ir_text {
           display: flex;
           flex-wrap: wrap;
           justify-content: space-between;
           margin: .5em 0 0;
         }
         .ir-layout .ir_text > dl {
           display: flex;
           align-items: baseline;
           width: calc((100% - 10px) / 2);
         }
         .ir-layout .ir_text > dl > dt {
           font-size: 1.3rem;
         }
         .ir-layout .ir_text > dl > dt::after {
           content: "：";
         }
         .ir-layout .ir_text > dl.type-recent > dd {
           font-size: 2.4rem;
           line-height: 1;
         }
         .ir-layout .ir_text > dl.type-change {
           align-items: center;
         }
         .ir-layout .ir_text > dl.type-change > dd {
           font-size: 1.1rem;
           line-height: 1.4;
           margin: 0 0 -1.3em 0;
         }
         .ir-layout .ir_text > dl.type-change > dd > span {
           display: block;
           color: #ff0000;
           font-size: 1.6rem;
         }
         .ir-layout .ir_text > dl.type-change > dd > span > em {
           font-size: 2.4rem;
           font-style: normal;
           line-height: 1;
         }
         .ir-layout .ir_image {
           border: 1px solid #dddddd;
         }
         .ir-layout .ir_image img {
           width: 100%;
         }
         .ir-layout .ir_inner {
           padding: 20px 15px;
           background-color: #f7f7fa;
         }
         /* v2 */
         .ir-layout-v2 {
           margin: 3.2em 0 0;
         }
         .ir-layout-v2 .ir_heading {
           display: flex;
           align-items: baseline;
         }
         .ir-layout-v2 .ir_heading > .heading_title {
           flex: 1;
           font-size: 1.8rem;
           line-height: 1;
         }
         .ir-layout-v2 .ir_heading > .heading_link {
           display: flex;
           align-items: center;
           justify-content: flex-end;
           white-space: nowrap;
         }
         .ir-layout-v2 .ir_heading > .heading_link > li {
           margin-left: 15px;
         }
         .ir-layout-v2 .ir_heading > .heading_link > li > a.a-rss::before {
           position: relative;
           top: -2px;
           margin: 0 6px 0 0;
         }
         .ir-layout-v2 .ir_heading > .heading_link > li > a.a-link::after {
           position: relative;
           top: -2px;
           right: 2px;
           display: inline-block;
           width: 10px;
           height: 10px;
           margin: 0 0 0 10px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .ir-layout-v2 .ir_news .news-compo {
           margin-top: 1em;
         }
         .ir-layout-v2 .ir_button {
           margin: 3.5em 0 0;
         }
         .ir-layout-v2 .ir_button > li > a {
           display: block;
           padding: 20px;
           background-color: #fff;
           border: 2px solid #ff0000;
           font-weight: 700;
           text-align: center;
           text-decoration: none;
         }
         .ir-layout-v2 .ir_button > li > a > span {
           position: relative;
           display: inline-block;
           padding: 0 0 0 50px;
         }
         .ir-layout-v2 .ir_button > li > a > span::before {
           position: absolute;
           top: 50%;
           left: 0;
           width: 40px;
           height: 31px;
           margin-top: -16px;
           background-image: url(/ir/img/ir_ic01.png);
           background-repeat: no-repeat;
           background-position: 50% 0;
           background-size: 100% 100%;
           content: "";
         }
         .ir-layout-v2 .ir_frame {
           position: relative;
           margin: 15px 0 0;
           padding: 20px;
           background-color: #fff;
           border: 1px solid #dfdfe3;
         }
         .ir-layout-v2 .ir_frame::before,
         .ir-layout-v2 .ir_frame::after {
           position: absolute;
           bottom: 100%;
           left: 50%;
           margin-left: -10px;
           width: 0;
           height: 0;
           border-style: solid;
           border-width: 0 9px 10px 9px;
           border-color: transparent;
           content: "";
         }
         .ir-layout-v2 .ir_frame::before {
           border-bottom-color: #dfdfe3;
         }
         .ir-layout-v2 .ir_frame::after {
           margin-bottom: -2px;
           border-bottom-color: #fff;
         }
         .ir-layout-v2 .ir_list {
           margin: 1em 0 0;
         }
         .ir-layout-v2 .ir_list > li {
           position: relative;
           margin: .5em 0 0;
           padding: 0 0 0 18px;
         }
         .ir-layout-v2 .ir_list > li:first-child {
           margin-top: 0;
         }
         .ir-layout-v2 .ir_list > li:before {
           position: absolute;
           top: .5em;
           left: 0;
           width: 6px;
           height: 6px;
           background-color: #999;
           border-radius: 50%;
           content: "";
         }
         /* v3 */
         .ir-layout-v3 {
           margin: 3.5em 0 0;
         }
         .ir-layout-v3 .ir_column > .column_button {
           margin: 2.8em 0 0;
         }
         .ir-layout-v3 .ir_column_2 > .column_item {
           margin: 1em 0 0;
         }
         .ir-layout-v3 .ir_column_3 {
           display: flex;
           align-items: center;
           background-color: #fff;
           border: 1px solid #dfdfe3;
         }
         .ir-layout-v3 .ir_column_3 > .column_image {
           width: 43.47%;
         }
         .ir-layout-v3 .ir_column_3 > .column_image {
         }
         .ir-layout-v3 .ir_column_3 > .column_heading {
           flex: 1;
           padding: 5px 25px 5px 20px;
         }
         .ir-layout-v3 .ir_block {
           position: relative;
           display: block;
         }
         .ir-layout-v3 a.ir_block {
           text-decoration: none;
         }
         .ir-layout-v3 a.ir_block::before {
           content: "";
           position: absolute;
           top: 50%;
           right: 10px;
           width: 10px;
           height: 10px;
           margin-top: -5px;
           margin-right: 2px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
         }
         .ir-layout-v3 .ir_heading {
           font-size: 1.5rem;
           font-weight: 500;
           line-height: 1.2;
         }
         .ir-layout-v3 .ir_heading .heading_sub {
           font-size: 1.3rem;
         }
         .ir-layout-v3 .ir_heading_2 {
           margin: 3em 0 0;
         }
         .ir-layout-v3 .ir_heading_2 a::after {
           display: inline-block;
           position: relative;
           top: -2px;
           right: 4px;
           width: 10px;
           height: 10px;
           margin: 0 0 0 8px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .ir-layout-v3 .ir_list {
           overflow: hidden;
           display: flex;
           flex-wrap: wrap;
           align-items: center;
           margin: .5em -15px 0 0;
         }
         .ir-layout-v3 .ir_list > li {
           margin: .5em 25px 0 0;
         }
         .ir-layout-v3 .ir_list > li > ul > li + li {
           margin: .5em 0 0 0;
         }
         .ir-layout-v3 .ir_link {
           background-color: #fff;
         }
         .ir-layout-v3 .ir_link > li {
           border-bottom: 1px solid #dfdfe3;
         }
         .ir-layout-v3 .ir_link > li > a {
           position: relative;
           display: block;
           padding: 12px 27px 12px 15px;
           text-decoration: none;
         }
         .ir-layout-v3 .ir_link > li > a::before {
           position: absolute;
           top: 50%;
           right: 10px;
           width: 10px;
           height: 10px;
           margin-top: -5px;
           margin-right: 2px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .ir-layout-v3 .ir_link > li > a[class*="a-"]::before {
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .ir-layout-v3 .ir_link > li > a.a-pdf::before {
           margin-top: -7px;
         }
         .ir-layout-v3 .ir_link_2 {
           display: flex;
           flex-wrap: wrap;
           justify-content: space-between;
         }
         .ir-layout-v3 .ir_link_2 > li {
           width: calc((100% - 15px) / 2);
           margin: 1em 0 0;
         }
         .ir-layout-v3 .ir_link_2 > li:nth-child(-n+2) {
           margin-top: 0;
         }
         .ir-layout-v3 .ir_link_2 > li > a {
           position: relative;
           display: block;
         }
         .ir-layout-v3 .ir_link_2 > li > a::before {
           position: absolute;
           top: .4em;
           right: 6px;
           width: 10px;
           height: 10px;
           margin-top: 1px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .ir-layout-v3 .ir_link_2 > li > a[class*="a-"]::before {
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .ir-layout-v3 .ir_link_2 > li > a > .link_label {
           display: block;
           padding: 0 17px 0 40px;
         }
         .ir-layout-v3 .ir_link_2 > li[class*="type"] > a > .link_label::before {
           position: absolute;
           top: 0;
           background-repeat: no-repeat;
           background-position: 0 0;
           background-size: 100% 100%;
           content: "";
         }
         .ir-layout-v3 .ir_link_2 > li.type-calendar > a > .link_label::before {
           left: 0;
           width: 24px;
           height: 22px;
           background-image: url(/ir/img/ir_button_ic01.png);
         }
         .ir-layout-v3 .ir_link_2 > li.type-report > a > .link_label::before {
           top: -.1em;
           left: 4px;
           width: 22px;
           height: 24px;
           background-image: url(/ir/img/ir_button_ic02.png);
         }
         .ir-layout-v3 .ir_link_2 > li.type-disclosure > a > .link_label::before {
           top: -.15em;
           left: 0;
           width: 24px;
           height: 24px;
           background-image: url(/ir/img/ir_button_ic03.png);
         }
         .ir-layout-v3 .ir_link_2 > li.type-mail > a > .link_label::before {
           top: .2em;
           left: 2px;
           width: 24px;
           height: 17px;
           background-image: url(/ir/img/ir_button_ic04.png);
         }
         .ir-layout-v3 .ir_link_2 > li.type-sitemap > a > .link_label::before {
           left: 0;
           width: 25px;
           height: 22px;
           background-image: url(/ir/img/ir_button_ic05.png);
         }
         .ir-layout-v3 .ir_link_2 > li.type-faq > a > .link_label::before {
           left: 9px;
           width: 13px;
           height: 20px;
           background-image: url(/ir/img/ir_button_ic06.png);
         }
         .ir-layout-v3 .ir_link_2 > li.type-glossary > a > .link_label::before {
           left: 2px;
           width: 21px;
           height: 26px;
           background-image: url(/ir/img/ir_button_ic07.png);
         }
         .ir-layout-v3 .ir_link_2 > li.type-questionnaire > a > .link_label::before {
           left: 3px;
           width: 27px;
           height: 22px;
           background-image: url(/ir/img/ir_button_ic08.png);
         }
         .ir-layout-v3 .ir_link_2 > li.type-risk > a > .link_label::before {
           left: 1px;
           width: 23px;
           height: 21px;
           background-image: url(/ir/img/ir_button_ic09.png);
         }
         .ir-layout-v3 .ir_link_2 > li.type-disclaimer > a > .link_label::before {
           top: .2em;
           left: 2px;
           width: 22px;
           height: 17px;
           background-image: url(/ir/img/ir_button_ic10.png);
         }
         .ir-layout-v3 .ir_link_2 > li.type-csr > a > .link_label::before {
           left: 0;
           width: 23px;
           height: 20px;
           background-image: url(/ir/img/ir_button_ic11.png);
         }
         .ir-layout-v3 .ir_link_2 > li.type-session > a > .link_label::before {
           left: 1px;
           width: 28px;
           height: 21px;
           background-image: url(/ir/img/ir_button_ic12.png);
         }
         
         /* ----- individual-layout ----- */
         .individual-layout {
           margin: 1.5em 0 0;
         }
         .individual-layout .individual_column > .column_text {
           margin: 1em 0 0;
         }
         .individual-layout .individual_text > dt {
           padding: 0 0 .3em;
           font-size: 1.6rem;
           border-bottom-width: 1px;
           border-bottom-style: solid;
         }
         .individual-layout .individual_text > dd {
           margin: .6em 0 0;
           font-size: 1.2rem;
         }
         .individual-layout .individual_text.type-roe > dt {
           color: #5b5450;
           border-bottom-color: #5b5450;
         }
         .individual-layout .individual_text.type-roic > dt {
           color: #5b5450;
           border-bottom-color: #5b5450;
         }
         .individual-layout .individual_text.type-ebitda > dt {
           color: #0022a1;
           border-bottom-color: #0022a1;
         }
         /* v2 */
         .individual-layout-v2 {
           margin: 1.5em 0 0;
         }
         .individual-layout-v2 .individual_text {
           text-align: center;
         }
         .individual-layout-v2 .individual_column + .individual_text {
           margin-top: .7em;
         }
         .individual-layout-v2 .individual_column {
           display: flex;
           justify-content: space-between;
           margin: .7em 0 0;
         }
         .individual-layout-v2 .individual_column > .column_item {
           width: calc((100% - 15px) / 2);
           box-sizing: border-box;
           background-color: #fff;
           border-width: 1px;
           border-style: solid;
         }
         .individual-layout-v2 .individual_heading {
           padding: 10px;
           color: #fff;
           font-weight: 700;
           line-height: 1.1;
           text-align: center;
         }
         .individual-layout-v2 .individual_inner {
           padding: 10px;
         }
         .individual-layout-v2 .individual_arrow,
         .individual-layout-v2 .individual_frame {
           display: flex;
           align-items: center;
           justify-content: center;
           font-size: 1.0rem;
           line-height: 1.4;
           text-align: center;
         }
         .individual-layout-v2 .individual_arrow {
           position: relative;
           padding: 0 0 20px;
         }
         .individual-layout-v2 .individual_frame {
           margin: 5px 0 0;
         }
         .individual-layout-v2 .individual_arrow::after {
           position: absolute;
           bottom: 0;
           left: 50%;
           width: 15px;
           height: 14px;
           margin-left: -7px;
           background-repeat: no-repeat;
           background-position: 0 0;
           background-size: 100% 100%;
           content: "";
         }
         .individual-layout-v2 .individual_image {
           margin: .7em 0 0;
           display: flex;
           justify-content: space-between;
         }
         .individual-layout-v2 .individual_image > figure {
           width: calc((100% - 5px) / 2);
         }
         .individual-layout-v2 .individual_column > .column_item.type-green {
           border-color: #1abc9c;
         }
         .individual-layout-v2 .individual_column > .column_item.type-green .individual_heading {
           background-color: #1abc9c;
         }
         .individual-layout-v2 .individual_column > .column_item.type-green .individual_arrow::after {
           background-image: url(/ir/individual/img/individual_ex01.png);
         }
         .individual-layout-v2 .individual_column > .column_item.type-blue {
           border-color: #3498db;
         }
         .individual-layout-v2 .individual_column > .column_item.type-blue .individual_heading {
           background-color: #3498db;
         }
         .individual-layout-v2 .individual_column > .column_item.type-blue .individual_arrow::after {
           background-image: url(/ir/individual/img/individual_ex02.png);
         }
         
         /* ----- innovation-list ----- */
         .innovation-list {
         }
         .innovation-list > li {
           position: relative;
           margin-top: 25px;
           text-align: center;
         }
         .innovation-list > li:nth-child(-n+1) {
           margin-top: 0;
         }
         .innovation-list > li .is-highlight {
           color: #ff0000;
           font-size: 114%;
           font-weight: 400;
         }
         .innovation-list > li + li::before {
           position: absolute;
           top: -13px;
           left: 50%;
           width: 40px;
           height: 1px;
           margin: 0 0 0 -20px;
           background-color: #e0e0e0;
           content: "";
         }
         
         /* ----- library-item ----- */
         .library-item {
           margin-top: 0;
         }
         .library-item .library_item_heading {
           padding: 15px 20px 14px;
           border-top: 1px solid #dfdfe3;
           background-color: #f7f7fa;
         }
         .library-item .library_item_heading > .accordion_label {
           display: block;
           position: relative;
           padding: 0 15px 0 0;
           font-size: 1.4rem;
           font-weight: 700;
           text-align: left;
         }
         .library-item .library_item_heading > .accordion_label::before,
         .library-item .library_item_heading > .accordion_label::after {
           position: absolute;
           top: 50%;
           right: 0;
           width: 19px;
           height: 1px;
           background-color: #ff0000;
           content: "";
         }
         .library-item .library_item_heading > .accordion_label::before {
           -webkit-transform: rotate(90deg);
           transform: rotate(90deg);
         }
         .library-item .library_item_heading.is-active > .accordion_label::before {
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .library-item .library_item_detail {
           padding: 10px 0 0 0;
           border: none;
           background-color: #fff;
         }
         .library-item .library_item_detail > *:first-child,
         .library-item .library_item_detail > *:first-child > [class*="heading-lv"] {
           margin-top: 0 !important;
         }
         .library-item .library_table_column {
           display: -webkit-box;
           display: flex;
           flex-wrap: wrap;
           -webkit-box-pack: justify;
           justify-content: space-between;
           padding: 0 15px 20px;
           margin-right: -10px;
         }
         .library-item .library_table_column[data-count-sp="2"] .library_table_data {
           position: relative;
           width: calc(50% - 10px);
           padding: 14px 1em 15px;
           border: 1px solid #dfdfe3;
           text-align: center;
           margin: 10px 10px 0 0;
         }
         .library-item .library_table_column[data-count-sp="1"] .library_table_data {
           position: relative;
           width: 100%;
           padding: 14px 1em 15px;
           border: 1px solid #dfdfe3;
           text-align: center;
           margin: 10px 10px 0 0;
         }
         .library-item .library_table_column .library_table_data .data_title {
           display: inline-block;
           margin-bottom: 9px;
           font-size: 1.4rem;
           font-weight: 700;
         }
         .library-item .library_table_data a .data_icon{
           display: block;
           margin: 0 auto;
           text-indent:100%;
           white-space: nowrap;
           overflow: hidden;
         }
         
         /* ----- csr-index-compo ----- */
         .csr-index-compo {
         }
         .csr-index-compo > .index_banner {
         }
         .csr-index-compo > .index_banner > .block {
           position: relative;
         }
         .csr-index-compo > .index_banner.type-message > .block {
           height: 143px;
           padding: 19px 14px;
           border: 1px solid #ddd;;
           background-color: #f3f3ec;
         }
         .csr-index-compo > .index_banner.type-overview > .block {
           padding: 15px;
           background-color: #f7f7fa;
         }
         .csr-index-compo > .index_banner > .block .index_heading {
           position: relative;
           z-index: 2;
         }
         .csr-index-compo > .index_banner > .block .index_heading::after {
           display: inline-block;
           position: relative;
           top: -2px;
           right: 4px;
           width: 10px;
           height: 10px;
           margin: 0 0 0 8px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .csr-index-compo > .index_banner.type-message > .block .index_image {
           position: absolute;
           right: 15px;
           bottom: 0;
         }
         .csr-index-compo > .index_banner.type-message > .block .index_image img {
           width: auto;
           height: 141px;
         }
         .csr-index-compo > .index_banner.type-overview > .block .index_image {
           margin-top: 1em;
           text-align: center;
         }
         .csr-index-compo > .index_banner.type-overview > .block .index_image img {
           width: 185px;
           height: auto;
         }
         .csr-index-compo > .index_banner > a.block:hover .index_heading {
           text-decoration: underline;
         }
         
         /* ----- csr-news-compo ----- */
         .csr-news-compo {
           margin-top: 2.5em;
         }
         .csr-news-compo .news_heading {
           display: -webkit-flex;
           display: flex;
           -webkit-align-items: baseline;
           align-items: baseline;
         }
         .csr-news-compo .news_heading > .news_heading_title {
           -webkit-flex: 1;
           flex: 1;
           font-size: 1.8rem;
           line-height: 1;
         }
         .csr-news-compo .news_heading > .news_heading_link {
           display: -webkit-flex;
           display: flex;
           -webkit-justify-content: flex-end;
           justify-content: flex-end;
           -webkit-align-items: center;
           align-items: center;
           white-space: nowrap;
         }
         .csr-news-compo .news_heading > .news_heading_link > li {
           margin-left: 15px;
         }
         .csr-news-compo .news_heading > .news_heading_link > li > a.a-rss::before {
           position: relative;
           top: -2px;
           margin: 0 6px 0 0;
         }
         .csr-news-compo .news_heading > .news_heading_link > li > a.a-link::after {
           position: relative;
           top: -2px;
           right: 2px;
           display: inline-block;
           width: 10px;
           height: 10px;
           margin: 0 0 0 10px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .csr-news-compo .news_latest .news-compo {
           margin-top: 1em;
         }
         
         /* ----- awards-compo ----- */
         .awards-compo {
           margin-top: 3em;
           overflow: hidden;
         }
         .awards-compo .awards_title a::after {
           display: inline-block;
           position: relative;
           top: -2px;
           right: 4px;
           width: 10px;
           height: 10px;
           margin: 0 0 0 8px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           vertical-align: middle;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .awards-compo .awards_list {
           display: -webkit-flex;
           display: flex;
           -webkit-flex-flow: row wrap;
           flex-flow: row wrap;
           align-items: center;
           margin: .5em -25px 0 0;
           overflow: hidden;
         }
         .awards-compo .awards_list > li {
           margin: .5em 25px 0 0;
         }
         .awards-compo .awards_list_2 > li + li {
           margin-top: .5em;
         }
         
         /* ----- contact-layout ----- */
         .contact-layout {
           margin: 1.5em 0 0 !important;
         }
         .contact-layout .contact_button > li {
           margin: 15px 0 0 0;
         }
         .contact-layout .contact_button > li:first-child {
           margin-top: 0;
         }
         .contact-layout .contact_button > li > a {
           position: relative;
           display: flex;
           align-items: center;
           width: 100%;
           min-height: calc(3em + 25px * 2);
           padding: 25px 27px 25px 11px;
           box-sizing: border-box;
           background-color: #fff;
           border: 1px solid #dfdfe3;
           text-decoration: none;
         }
         .contact-layout .contact_button > li > a::before {
           position: absolute;
           top: 50%;
           right: 9px;
           width: 10px;
           height: 10px;
           margin-top: -5px;
           margin-right: 2px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
           content: "";
         }
         .contact-layout .contact_button > li > a[class*="a-"]::before {
           border: none;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .contact-layout .contact_button > li > a.a-pdf::before {
           margin-top: -7px;
         }
         .contact-layout .contact_button > li > a > span.button_icon {
           width: 19.5%;
         }
         .contact-layout .contact_button > li > a > span.button_label {
           flex: 1;
           padding: 0 0 0 10px;
         }
         
         /* ----- information-compo ----- */
         .information-compo {
           margin: 50px -15px 0;
         }
         .information-compo .information_inner {
           padding: 40px 15px 120px;
           background-color: #f7f7fa;
         }
         .information-compo .information_heading {
           font-size: 2.4rem;
           line-height: 1.1;
           text-align: center;
         }
         .information-compo .information_tab {
           margin: 25px 0 0;
         }
         .information-compo .information_tab .information_tab_list {
           display: flex;
           align-items: flex-end;
           justify-content: space-between;
         }
         .information-compo .information_tab .information_tab_list > li {
           width: calc((100% - 15px * 2) / 3);
         }
         .information-compo .information_tab .information_tab_list > li > a {
           display: block;
           padding: 0 0 10px;
           border-bottom: 2px solid #666666;
           color: #333;
           line-height: 1.1;
           text-align: center;
           text-decoration: none;
         }
         .information-compo .information_tab .information_tab_list > li.is-current > a {
           color: #ff0000;
           font-weight: 700;
           border-bottom-color: #ff0000;
         }
         .information-compo .information_column {
           margin: 15px 0 0;
         }
         .information-compo .information_column > .information_column_item {
           margin: 10px 0 0;
         }
         .information-compo .information_column > .information_column_item:first-child {
           margin-top: 0;
         }
         .information-compo .information_column_2 {
           display: flex;
         }
         .information-compo .information_column_2 > .information_column_image .information_image img {
           max-width: 95px;
         }
         .information-compo .information_column_2 > .information_column_text {
           -webkit-flex: 1;
           flex: 1;
           padding: 0 15px;
         }
         .information-compo .information_frame {
           display: block;
           padding: 10px;
           background-color: #fff;
         }
         .information-compo a.information_frame {
           position: relative;
           color: #333;
           text-decoration: none;
         }
         .information-compo a.information_frame::before {
           content: "";
           position: absolute;
           right: 8px;
           bottom: 8px;
           width: 10px;
           height: 10px;
           border-top: 1px solid #ff0000;
           border-right: 1px solid #ff0000;
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
         }
         .information-compo a.information_frame[class*="a-"]::before {
           border: none;
           background-image: url(/common-files/img/cmn_sprite_ic01-r2x.png);
           background-repeat: no-repeat;
           background-size: 600px 600px;
           -webkit-transform: rotate(0deg);
           transform: rotate(0deg);
         }
         .information-compo a.information_frame.a-blank::before {
           width: 10px;
           height: 9px;
           background-position: 0px -100px;
         }
         .information-compo a.information_frame.a-pdf::before {
           width: 14px;
           height: 14px;
           background-position: 0px -150px;
         }
         .information-compo .information_text {
           font-size: 1.0rem;
         }
         .information-compo .information_text_2 {
           margin: 2px 0 0;
           line-height: 1.42;
         }
         .information-compo .information_button {
           margin-top: 15px;
         }
         .information-compo .information_button > li > a {
           background-color: #666;
         }
         
         /* ----- colorbox ----- */
         #colorbox.modal-youtube {
           overflow: visible;
         }
         .modal-youtube #cboxWrapper {
           overflow: visible;
         }
         .modal-youtube #cboxLoadedContent {
           border: none;
         }
         .modal-youtube #cboxClose {
           top: auto;
           right: 0;
           bottom: -29px;
           width: auto;
           height: auto;
           background: none;
           text-indent: -9999em;
           outline: none;
         }
         .modal-youtube #cboxClose > span {
           display: block;
           position: relative;
           width: 29px;
           height: 29px;
           background-color: #ff0000;
         }
         .modal-youtube #cboxClose > span::before,
         .modal-youtube #cboxClose > span::after {
           position: absolute;
           top: 50%;
           left: 50%;
           display: inline-block;
           width: 12px;
           height: 1px;
           margin: 0 0 0 -6px;
           background-color: #fff;
           content: "";
         }
         .modal-youtube #cboxClose > span::before {
           -webkit-transform: rotate(-45deg);
           transform: rotate(-45deg);
         }
         .modal-youtube #cboxClose > span::after {
           -webkit-transform: rotate(45deg);
           transform: rotate(45deg);
         }
         /* ----- a-video ----- */
         .column-layout[data-row-sp="1"] .index-layout-v2 .block.a-video {
           max-width: 640px;
           margin: 0 auto;
         }
         
         /* ------------------------------------------------------
          * Clearfix
         ------------------------------------------------------ */
         .column-media[data-layout-sp="row"]::after,
         .index-layout-v3 > .block::after {
           display: block;
           clear: both;
           content: "";
         }
       }
       
       
       /* ======================================================
        * Media Queries
       ====================================================== */
     /* ----- data-row-pc ----- */
     [data-row-pc]:not([data-row-pc="1"]) {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row wrap;
       flex-flow: row wrap;
       flex-direction: row;
     }
     [data-row-pc]:not([data-row-pc="auto"]) > * {
       margin-top: 1.25em;
       margin-left: 36px;
     }
     [data-row-pc="1"] > *:nth-child(-n+1),
     [data-row-pc="2"] > *:nth-child(-n+2),
     [data-row-pc="3"] > *:nth-child(-n+3),
     [data-row-pc="4"] > *:nth-child(-n+4),
     [data-row-pc="5"] > *:nth-child(-n+5),
     [data-row-pc="6"] > *:nth-child(-n+6) {
       margin-top: 0 !important;
     }
     [data-row-pc="1"] > *:nth-child(n+1),
     [data-row-pc="2"] > *:nth-child(2n+1),
     [data-row-pc="3"] > *:nth-child(3n+1),
     [data-row-pc="4"] > *:nth-child(4n+1),
     [data-row-pc="5"] > *:nth-child(5n+1),
     [data-row-pc="6"] > *:nth-child(6n+1) {
       margin-left: 0 !important;
     }
     [data-row-pc="2"] > * { width: calc((100% -  36px) / 2); }
     [data-row-pc="3"] > * { width: calc((100% -  72px) / 3); }
     [data-row-pc="4"] > * { width: calc((100% - 108px) / 4); }
     [data-row-pc="5"] > * { width: calc((100% - 144px) / 5); }
     [data-row-pc="6"] > * { width: calc((100% - 180px) / 6); }
     /* for IE11 */
     [data-browser="ie11"] [data-row-pc="2"] > * { width: calc(((100% -  36px) / 2) - 0.1px); }
     [data-browser="ie11"] [data-row-pc="3"] > * { width: calc(((100% -  72px) / 3) - 0.1px); }
     [data-browser="ie11"] [data-row-pc="4"] > * { width: calc(((100% - 108px) / 4) - 0.1px); }
     [data-browser="ie11"] [data-row-pc="5"] > * { width: calc(((100% - 144px) / 5) - 0.1px); }
     [data-browser="ie11"] [data-row-pc="6"] > * { width: calc(((100% - 180px) / 6) - 0.1px); }
     /* for Edge */
     [data-browser="edge"] [data-row-pc="2"] > * { width: calc(((100% -  36px) / 2) - 0.1px); }
     [data-browser="edge"] [data-row-pc="3"] > * { width: calc(((100% -  72px) / 3) - 0.1px); }
     [data-browser="edge"] [data-row-pc="4"] > * { width: calc(((100% - 108px) / 4) - 0.1px); }
     [data-browser="edge"] [data-row-pc="5"] > * { width: calc(((100% - 144px) / 5) - 0.1px); }
     [data-browser="edge"] [data-row-pc="6"] > * { width: calc(((100% - 180px) / 6) - 0.1px); }
     [data-row-pc="auto"] {
       margin-right: -36px;
       margin-bottom: -.5em;
     }
     [data-row-pc="auto"] > * {
       margin-top: 0 !important;
       margin-right: 36px;
       margin-bottom: .5em;
       margin-left: 0;
     }
     .column-layout[data-row-pc] > .column_item {
       margin-top: 1.25em;
     }
     .column-layout.type-door2[data-row-pc] > .column_item {
       margin-top: 2.5em;
     }
     .banner-compo .banner_list[data-row-pc] > li {
       margin-top: 1.5em;
     }
     .link-text[data-row-pc="auto"] {
       margin-right: -40px;
       margin-bottom: -.5em;
     }
     .link-text[data-row-pc="auto"] > li {
       margin-right: 40px;
       margin-bottom: .5em;
     }
     
     /* ----- search ----- */
     .search-box .search_form {
       position: relative;
       border: 5px solid #dfdfe3;
     }
     .search-box .search_form:hover {
       border-color: #d0d0d4;
     }
     .search-box .search_input {
       width: 100%;
       height: 70px;
       padding: 15px 70px 15px 20px;
       border: none;
       background-color: #fff;
       box-shadow: none;
       font-size: 2.2rem;
       outline: none;
     }
     .search-box .search_submit {
       position: absolute;
       top: 0;
       right: 0;
       width: 70px;
       height: 70px;
       padding: 0;
       border: none;
       background-color: #ff0000;
       background-image: url(/common-files/img/cmn_search_ic01.png);
       background-repeat: no-repeat;
       background-position: 50% 50%;
       text-indent: -9999em;
       outline: none;
     }
     .search-box .search_submit:hover {
       background-color: #cf0212;
     }
     
     /* ------------------------------------------------------
      * Element >>> Heading
     ------------------------------------------------------ */
     [class^="heading-lv"] .heading_title,
     [class^="heading-lv"] .heading_subtitle {
       line-height: 1.2;
     }
     [class^="heading-lv"] .heading_title[class*="js-equalHeight_"] {
       display: -webkit-flex;
       display: flex;
       -webkit-align-items: center;
       align-items: center;
     }
     [class^="heading-lv"] a.block.a-blank .heading_title::after,
     [class^="heading-lv"] a.block.a-pdf .heading_title::after {
       margin: 0 0 0 12px;
       border: none;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     #main .heading-lv1 + *,
     #main .heading-lv1 + section > [class*="heading-lv"]:first-child,
     #main .heading-lv1-v3 + *,
     #main .heading-lv1-v3 + section > [class*="heading-lv"]:first-child {
       margin-top: 2.5em;
     }
     #main .heading-lv2 + * {
       margin-top: 1.9em;
     }
     #main .heading-lv3 + *,
     #main .heading-lv4 + * {
       margin-top: 1.25em;
     }
     #main .heading-lv5 + * {
       margin-top: .95em;
     }
     
     /* ----- heading-lv1 ----- */
     .heading-lv1 {
       position: relative;
       margin: 0 0 2.5em;
     }
     .heading-lv1 .heading_image {
       position: absolute;
       top: 2.0em;
       right: 0;
     }
     .heading-lv1 .heading_image > img {
       max-width: 240px;
       height: auto;
     }
     .heading-lv1 .heading_image + *,
     .heading-lv1 .heading_image + * + * {
       padding-right: 320px;
     }
     .heading-lv1 .heading_title {
       font-size: 2.5rem;
     }
     .heading-lv1 .heading_title .f-italic {
       margin-right: 6px;
     }
     .heading-lv1 .heading_subtitle {
       margin-bottom: .75em;
     }
     .heading-lv1 .heading_title + .heading_subtitle {
       margin-top: .75em;
       margin-bottom: 0;
     }
     /* v2 */
     .heading-lv1-v2 {
       margin: 0 0 3.5em 0;
       background-color: #e2e5ea;
       background-repeat: no-repeat;
       background-position: 50% 50%;
     }
     .heading-lv1-v2.is-bond {
       margin-bottom: 0;
     }
     .heading-lv1-v2.type-about         { background-image: url(/common-files/img/cmn_heading_bg01_01.jpg); }
     .heading-lv1-v2.type-products      { background-image: url(/common-files/img/cmn_heading_bg01_02.jpg); }
     .heading-lv1-v2.type-rd            { background-image: url(/common-files/img/cmn_heading_bg01_03.jpg); }
     .heading-lv1-v2.type-csr           { background-image: url(/common-files/img/cmn_heading_bg01_04.jpg); }
     .heading-lv1-v2.type-ir            { background-image: url(/common-files/img/cmn_heading_bg01_05.jpg); }
     .heading-lv1-v2.type-ir-individual { background-image: url(/common-files/img/cmn_heading_bg01_06.jpg); background-color: #f6f7f9; }
     .heading-lv1-v2.type-recruit       { background-image: url(/common-files/img/cmn_heading_bg01_07.jpg); }
     .heading-lv1-v2.type-news          { background-image: url(/common-files/img/cmn_heading_bg01_08.jpg); }
     .heading-lv1-v2.type-form          { background-image: url(/common-files/img/cmn_heading_bg01_09.jpg); }
     .heading-lv1-v2.type-gp-image {
       position: relative;
     }
     .heading-lv1-v2.type-gp-image .heading_bg_image {
       position: absolute;
       top: 0;
     }
     [data-browser="ie11"] .heading-lv1-v2.type-gp-image .heading_bg_image {
       left: 0;
     }
     .heading-lv1-v2.type-gp-image .heading_bg_image img {
       height: 250px;
       min-width: 1200px;
     }
     .heading-lv1-v2.type-gp-image .block > *:not(.heading_bg_image) {
       z-index: 1;
     }
     .heading-lv1-v2 .block {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-direction: column;
       flex-direction: column;
       -webkit-justify-content: center;
       justify-content: center;
       -webkit-align-items: center;
       align-items: center;
       position: relative;
       width: 1280px;
       max-width: 100%;
       height: 250px;
       margin: 0 auto;
       padding: 0 40px;
     }
     .heading-lv1-v2 .heading_title {
       width: 100%;
       padding-right: 150px;
       font-size: 4.2rem;
       text-shadow: 1px 1px 0px rgba(255,255,255,.5);
     }
     .heading-lv1-v2 .heading_title .is-smaller {
       font-size: 64.28%;
     }
     .heading-lv1-v2 .heading_subtitle {
       width: 100%;
       margin-bottom: .75em;
       padding-right: 150px;
     }
     .heading-lv1-v2 .heading_print {
       position: absolute;
       top: 20px;
       right: 40px;
     }
     .heading-lv1-v2 .heading_print > a {
       display: block;
       position: relative;
       padding: 7px 15px 7px 43px;
       border: 1px solid #dfdfe3;
       background-color: #fff;
       font-size: 1.4rem;
       text-decoration: none;
     }
     .heading-lv1-v2 .heading_print > a::before {
       position: absolute;
       top: 50%;
       left: 12px;
       margin-top: -9px;
     }
     /* v3 */
     .heading-lv1-v3 {
       margin: 0 0 2.5em 0;
       background-color: #fff;
     }
     .heading-lv1-v3 .heading_visual {
       padding: 15px;
       text-align: center;
     }
     
     /* ----- heading-lv2 ----- */
     .heading-lv2 {
       margin: 5em 0 1.9em;
     }
     .heading-lv2 .block {
       position: relative;
       padding: 0 0 0 0;
       border-bottom: 3px solid #dfdfe3;
       text-decoration: none;
     }
     .heading-lv2 .block::before {
       position: absolute;
       bottom: -1px;
       left: 50%;
       width: 200px;
       height: 1px;
       background-color: #00995b;
       margin: 0 0 0 -100px;
       content: "";
     }
     .heading-lv2 .heading_title {
       font-size: 3.6rem;
       text-align: center;
     }
     /* v2 */
     .heading-lv2-v2 {
       margin: 5em 0 1.9em;
     }
     .heading-lv2-v2 .block {
       position: relative;
       padding: 0 0 20px 0;
       border-bottom: 1px solid #dfdfe3;
       text-decoration: none;
     }
     .heading-lv2-v2 .block::before {
       position: absolute;
       bottom: -1px;
       left: 0;
       width: 200px;
       height: 1px;
       background-color: #00995b;
       content: "";
     }
     .heading-lv2-v2 .heading_title {
       font-size: 3.6rem;
     }
     .heading-lv2-v2 a.block .heading_title::after {
       display: inline-block;
       position: relative;
       top: -3px;
       width: 12px;
       height: 12px;
       margin: 0 0 0 10px;
       border-top: 1px solid #00995b;
       border-right: 1px solid #00995b;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .heading-lv2-v2 .heading_subtitle {
       margin-bottom: .75em;
       font-size: 1.5rem;
     }
     .heading-lv2-v2 a.block:hover .heading_title {
       color: #00995b;
     }
     
     /* ----- heading-lv3 ----- */
     .heading-lv3 {
       margin: 3.75em 0 1.25em;
     }
     .heading-lv3 .block {
       position: relative;
       padding: 0 0 15px 0;
       text-decoration: none;
     }
     .heading-lv3 .block::before {
       position: absolute;
       bottom: 0;
       left: 0;
       width: 50px;
       height: 1px;
       background-color: #00995b;
       content: "";
     }
     .heading-lv3 .heading_title {
       font-size: 3.0rem;
     }
     .heading-lv3 a.block .heading_title::after {
       display: inline-block;
       position: relative;
       top: -3px;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #00995b;
       border-right: 1px solid #00995b;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .heading-lv3 .heading_subtitle {
       margin-bottom: .75em;
       font-size: 1.4rem;
       font-weight: 300;
     }
     .heading-lv3 a.block:hover .heading_title {
       color: #00995b;
     }
     
     /* ----- heading-lv4 ----- */
     .heading-lv4 {
       margin: 2.5em 0 1.25em;
     }
     .heading-lv4 .block {
       position: relative;
       padding: 0 0 10px 0;
       text-decoration: none;
     }
     .heading-lv4 .block::before {
       position: absolute;
       bottom: 0;
       left: 0;
       width: 40px;
       height: 1px;
       background-color: #999;
       content: "";
     }
     .heading-lv4 .heading_title {
       font-size: 2.4rem;
     }
     .heading-lv4 a.block .heading_title::after {
       display: inline-block;
       position: relative;
       top: -3px;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #00995b;
       border-right: 1px solid #00995b;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .heading-lv4 a.block:hover .heading_title {
       color: #00995b;
     }
     
     /* ----- heading-lv5 ----- */
     .heading-lv5 {
       margin: 1.9em 0 .95em;
     }
     .heading-lv5 .heading_title {
       font-size: 2.2rem;
       font-weight: 700;
     }
     
     /* ------------------------------------------------------
      * Element >>> Text
     ------------------------------------------------------ */
     /* ----- text-paragraph ----- */
     .text-paragraph {
       margin-top: 1em;
     }
     .text-paragraph[data-gap-pc="x0"]   { margin-top: 0 !important; }
     .text-paragraph[data-gap-pc="x0.5"] { margin-top: .5em !important; }
     .text-paragraph[data-gap-pc="x1"]   { margin-top: 1em !important; }
     .text-paragraph[data-gap-pc="x1.5"] { margin-top: 1.5em !important; }
     .text-paragraph[data-gap-pc="x2"]   { margin-top: 2em !important; }
     .text-paragraph[data-gap-pc="x2.5"] { margin-top: 2.5em !important; }
     .text-paragraph[data-gap-pc="x3"]   { margin-top: 3em !important; }
     
     /* ----- text-lead ----- */
     .text-lead {
       margin: 1em 0 .75em;
       font-size: 2.0rem;
       font-weight: 700;
       line-height: 1.6;
     }
     
     /* ----- text-catch ----- */
     .text-catch {
       margin: 1em 0 .75em;
       color: #00995b;
       font-size: 3.6rem;
       line-height: 1.6;
       text-align: center;
     }
     /* v2 */
     .text-catch-v2 {
       margin: 1em 0 .75em;
       font-size: 2.0rem;
       line-height: 1.6;
       text-align: center;
     }
     
     /* ----- text-title ----- */
     .text-title {
       margin: 1em 0 .5em;
       font-weight: 700;
     }
     #main .text-title + * {
       margin-top: .5em;
     }
     /* v2 */
     .text-title-v2 {
       margin: 2em 0 .5em;
       font-size: 2rem;
       font-weight: 700;
     }
     .text-title-v2.is-bottom {
       margin-top: .75em;
     }
     .text-title-v2 a {
       text-decoration: none;
     }
     .text-title-v2 a:hover {
       color: #00995b;
       text-decoration: underline;
     }
     #main .text-title-v2 + * {
       margin-top: .5em;
     }
     
     /* ----- text-quote ----- */
     .text-quote {
       margin-top: 1em;
       padding-left: 30px;
     }
     
     /* ------------------------------------------------------
      * Element >>> List
     ------------------------------------------------------ */
     [class*="list-note"],
     [class*="list-bullet"],
     [class*="list-order"] {
       margin-top: 1em;
     }
     [class*="list-note"].type-section,
     [class*="list-bullet"].type-section,
     [class*="list-order"].type-section {
       margin-top: 2em;
     }
     [class*="list-description"] {
       margin-top: 1.5em;
     }
     [class*="list-description"].type-section {
       margin-top: 2.5em;
     }
     [class*="list-note"] > li + li,
     [class*="list-bullet"] > li + li,
     [class*="list-order"] > li + li {
       margin-top: .75em;
     }
     [class*="list-note"].type-section > li + li,
     [class*="list-bullet"].type-section > li + li,
     [class*="list-order"].type-section > li + li {
       margin-top: 1.5em;
     }
     [class*="list-"].is-nest {
       margin: .75em 0 1em;
     }
     [class*="list-"].is-nest.type-section {
       margin: 1.5em 0 2em;
     }
     [class*="list-note"] > li > .list_detail,
     [class*="list-bullet"] > li > .list_detail,
     [class*="list-order"] > li > .list_detail {
       margin-top: .5em;
     }
     [class*="list-note"].type-section > li > .list_detail,
     [class*="list-bullet"].type-section > li > .list_detail,
     [class*="list-order"].type-section > li > .list_detail {
       margin-top: .75em;
     }
     [class*="list-note"] > li > .list_detail > *:first-child,
     [class*="list-note"] > li > .list_detail > *:first-child > [class*="heading-lv"],
     [class*="list-bullet"] > li > .list_detail > *:first-child,
     [class*="list-bullet"] > li > .list_detail > *:first-child > [class*="heading-lv"],
     [class*="list-order"] > li > .list_detail > *:first-child,
     [class*="list-order"] > li > .list_detail > *:first-child > [class*="heading-lv"],
     [class*="list-description"] > dd > *:first-child,
     [class*="list-description"] > dd > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     
     /* ----- list-al-right ----- */
     .list-al-right {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row wrap;
       flex-flow: row wrap;
       -webkit-justify-content: flex-end;
       justify-content: flex-end;
       margin-top: 1em;
     }
     .list-al-right > [class*="list-"] {
       margin-top: 0;
     }
     
     /* ----- list-note ----- */
     .list-note > li {
       position: relative;
       padding-left: 1.2em;
       font-size: 1.5rem;
     }
     .list-note > li > .list_mark {
       position: absolute;
       top: 0;
       left: 0;
     }
     /* v2 */
     .list-note-v2 > li {
       position: relative;
       padding-left: 3em;
       font-size: 1.5rem;
     }
     .list-note-v2 > li > .list_mark {
       position: absolute;
       top: 0;
       left: 0;
     }
     /* v3 */
     .list-note-v3 > li {
       position: relative;
       padding-left: 1.7em;
       font-size: 1.5rem;
     }
     .list-note-v3 > li > .list_mark {
       position: absolute;
       top: 0;
       left: 0;
     }
     /* v4 */
     .list-note-v4 > li {
       position: relative;
       padding-left: 3em;
       font-size: 1.5rem;
     }
     .list-note-v4 > li > .list_mark {
       position: absolute;
       top: 0;
       left: 0;
     }
     
     /* ----- list-bullet ----- */
     .list-bullet > li {
       position: relative;
       padding-left: 22px;
     }
     .list-bullet > li::before {
       position: absolute;
       top: .5em;
       left: 0;
       width: 10px;
       height: 10px;
       border: 2px solid #00995b;
       background-color: #fff;
       content: "";
     }
     .list-bullet > li > .list_detail.is-noindent {
       margin-left: -22px;
     }
     /* v2 */
     .list-bullet-v2 > li {
       position: relative;
       padding-left: 15px;
       font-size: 1.6rem;
     }
     .list-bullet-v2 > li::before {
       position: absolute;
       top: .65em;
       left: 0;
       width: 5px;
       height: 5px;
       background-color: #999;
       content: "";
     }
     .list-bullet-v2 > li > .list_detail.is-noindent {
       margin-left: -15px;
     }
     /* v3 */
     .list-bullet-v3 > li {
       position: relative;
       padding-left: 22px;
     }
     .list-bullet-v3 > li::before {
       position: absolute;
       top: .5em;
       left: 0;
       width: 8px;
       height: 8px;
       border-radius: 50%;
       background-color: #999;
       content: "";
     }
     .list-bullet-v3 > li > .list_detail.is-noindent {
       margin-left: -22px;
     }
     /* v4 */
     .list-bullet-v4 > li {
       position: relative;
       padding-left: 15px;
       font-size: 1.6rem;
     }
     .list-bullet-v4 > li::before {
       position: absolute;
       top: .7em;
       left: 0;
       width: 4px;
       height: 4px;
       border-radius: 50%;
       background-color: #999;
       content: "";
     }
     .list-bullet-v4 > li > .list_detail.is-noindent {
       margin-left: -15px;
     }
     
     /* ----- list-order ----- */
     .list-order > li {
       position: relative;
       padding-left: 2em;
     }
     .list-order > li > .list_mark {
       position: absolute;
       top: 0;
       left: 0;
       font-weight: 700;
     }
     .list-order > li > .list_detail.is-noindent {
       margin-left: -2em;
     }
     /* v2 */
     .list-order-v2 > li {
       position: relative;
       padding-left: 3em;
     }
     .list-order-v2 > li > .list_mark {
       position: absolute;
       top: 0;
       left: 0;
     }
     .list-order-v2 > li > .list_detail.is-noindent {
       margin-left: -3em;
     }
     
     /* ----- list-description ----- */
     .list-description > dt {
       margin: 1em 0 .5em;
       font-weight: 700;
     }
     .list-description > dt:first-child {
       margin-top: 0 !important;
     }
     .list-description > dd {
     }
     /* v2 */
     .list-description-v2 {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row nowrap;
       flex-flow: row nowrap;
     }
     .list-description-v2 + .list-description-v2 {
       margin-top: 1em;
     }
     .list-description-v2 > dt {
       margin-right: 36px;
       font-weight: 700;
     }
     .list-description-v2 > dd {
     }
     
     /* ------------------------------------------------------
      * Layout >>> Column
     ------------------------------------------------------ */
     [class*="column-layout"] > [class*="column_item"] > *:first-child,
     [class*="column-layout"] > [class*="column_item"] > *:first-child > [class*="heading-lv"],
     [class*="column-media"] > [class*="column_"] > *:first-child,
     [class*="column-media"] > [class*="column_"] > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     
     /* ----- column-layout ----- */
     .column-layout {
       margin-top: 2.5em;
     }
     .column-layout.has-separator {
       margin-top: 3em;
       padding-top: 3em;
       border-top: 1px solid #ddd;
     }
     
     /* ----- column-media ----- */
     .column-media {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row nowrap;
       flex-flow: row nowrap;
       margin-top: 2.5em;
     }
     .column-media[data-media-side="right"] {
       -webkit-flex-direction: row-reverse;
       flex-direction: row-reverse;
     }
     .column-media[data-media-side] > .column_image {
       max-width: calc((100% -  36px) / 2);
     }
     .column-media[data-media-size="1/2"] > .column_image { width: calc((100% -  36px) / 2); }
     .column-media[data-media-size="1/3"] > .column_image { width: calc((100% -  72px) / 3); }
     .column-media[data-media-size="1/4"] > .column_image { width: calc((100% - 108px) / 4); }
     .column-media[data-media-size="1/5"] > .column_image { width: calc((100% - 144px) / 5); }
     .column-media[data-media-size="1/6"] > .column_image { width: calc((100% - 180px) / 6); }
     .column-media[data-media-side="right"] > .column_image {
       margin-left: 36px;
     }
     .column-media[data-media-side="left"] > .column_image {
       margin-right: 128px;
     }
     .column-media > .column_detail[data-wraparound="false"] {
       -webkit-flex: 1;
       flex: 1;
     }
     
     /* ------------------------------------------------------
      * Layout >>> Table
     ------------------------------------------------------ */
     [class^="table-layout"] {
       overflow-x: auto;
       padding-bottom: 1px;
     }
     [class*="table-layout"] th > *:first-child,
     [class*="table-layout"] th > *:first-child > [class*="heading-lv"],
     [class*="table-layout"] td > *:first-child,
     [class*="table-layout"] td > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     
     /* ----- table-layout ----- */
     .table-layout {
       margin-top: 1.5em;
     }
     .table-layout .table_inner {
       width: 100%;
       border-top: 2px solid #ddd;
     }
     .table-layout table.table_inner.table_inner--fixed{
       table-layout: fixed;
     }
     .table-layout table.table_inner.table_inner--border-separate{
       border-collapse: separate;
     }
     .table-layout caption {
       margin-bottom: .5em;
       text-align: left;
     }
     .table-layout caption > *:first-child,
     .table-layout caption > *:first-child > [class*="heading-lv"]{
       margin-top: 0 !important;
     }
     .table-layout caption > *:last-child {
       margin-bottom: 0 !important;
     }
     .table-layout .table_title {
       margin-bottom: .5em;
     }
     .table-layout .table_caption {
       margin: .5em 0;
       font-size: 1.6rem;
       font-weight: 300;
     }
     .table-layout th,
     .table-layout td {
       padding: 22px 20px;
       border-right: 1px solid #ddd;
       border-bottom: 1px solid #ddd;
       background-color: #fff;
       font-size: 1.6rem;
       font-weight: 400;
       text-align: left;
       vertical-align: top;
     }
     .table-layout td.cell-border-right {
       border-right: 1px solid #ddd !important;
     }
     .table-layout th.cell-border-right-v2 {
       border-right: 1px solid #ddd !important;
     }
     .table-layout tr > th:last-child,
     .table-layout tr > td:last-child {
       border-right: none;
     }
     .table-layout tr:last-child > th,
     .table-layout tr:last-child > td {
       border-bottom-width: 2px;
     }
     .table-layout thead tr:last-child > th,
     .table-layout thead tr:last-child > td {
       border-bottom-width: 1px;
     }
     .table-layout thead th {
       text-align: center;
       vertical-align: middle;
     }
     .table-layout th > *:first-child,
     .table-layout th > *:first-child > [class*="heading-lv"],
     .table-layout td > *:first-child,
     .table-layout td > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .table-layout .cell-style1 {
       background-color: #adadad;
       color: #fff;
     }
     .table-layout th.cell-style1 {
       font-weight: 700;
     }
     .table-layout thead th.cell-style1 {
       background-color: #787878;
     }
     .table-layout .cell-style2 {
       background-color: #f7f7fa;
     }
     .table-layout th.cell-style2 {
       font-weight: 700;
     }
     .table-layout .cell-style3 {
       background-color: #fff0f0;
       color: #00995b;
       font-weight: 700;
     }
     .table-layout .cell-style4 {
       color: #00995b;
       font-weight: 700;
     }
     .table-layout .cell-style5 {
       color: #666;
       font-weight: 700;
     }
     .table-layout .cell-style6 {
       background-color: #efe7fd;
     }
     .table-layout .cell-style7 {
       color: #00995b;
     }
     .table-layout .cell-border1 {
       border-bottom: 2px solid #ddd;
     }
     body:not([data-browser="chrome"]) .table-layout .cell-border2 {
       border-right: 1px solid #ddd !important;
     }
     /* v2 */
     .table-layout-v2 {
       margin-top: 1.5em;
     }
     .table-layout-v2 .table_inner {
       width: 100%;
       border-top: 1px solid #ddd;
     }
     /* for IE11 */
     [data-browser="ie11"] .table-layout-v2.is-fixed .table_inner {
       table-layout: fixed;
     }
     .table-layout-v2 caption {
       margin-bottom: .5em;
       text-align: left;
     }
     .table-layout-v2 .table_title {
       margin-bottom: .5em;
       font-weight: 700;
     }
     .table-layout-v2 caption > *:first-child,
     .table-layout-v2 caption > *:first-child > [class*="heading-lv"]{
       margin-top: 0 !important;
     }
     .table-layout-v2 caption > *:last-child {
       margin-bottom: 0 !important;
     }
     .table-layout-v2 .table_title {
       margin-bottom: .5em;
     }
     .table-layout-v2 .table_caption {
       margin: .5em 0;
       font-size: 1.6rem;
       font-weight: 300;
     }
     .table-layout-v2 th,
     .table-layout-v2 td {
       padding: 24px 30px;
       border-right: 1px solid #ddd;
       border-bottom: 1px solid #ddd;
       background-color: #fff;
       font-size: 1.6rem;
       font-weight: 400;
       text-align: left;
       vertical-align: top;
     }
     .table-layout-v2 tr > th:last-child,
     .table-layout-v2 tr > td:last-child {
       border-right: none;
     }
     .table-layout-v2 thead th {
       text-align: center;
       vertical-align: middle;
     }
     .table-layout-v2 th > *:first-child,
     .table-layout-v2 th > *:first-child > [class*="heading-lv"],
     .table-layout-v2 td > *:first-child,
     .table-layout-v2 td > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .table-layout-v2 .cell-style1 {
       background-color: #adadad;
       color: #fff;
     }
     .table-layout-v2 th.cell-style1 {
       font-weight: 700;
     }
     .table-layout-v2 thead th.cell-style1 {
       background-color: #787878;
     }
     .table-layout-v2 .cell-style2 {
       background-color: #f7f7fa;
     }
     .table-layout-v2 th.cell-style2 {
       font-weight: 700;
     }
     /* v3 */
     .table-layout-v3 {
       margin-top: 1.5em;
     }
     .table-layout-v3 .table_inner {
       width: 100%;
       border-top: 1px solid #dfdfe3;
     }
     .table-layout-v3 caption {
       margin-bottom: .5em;
       text-align: left;
     }
     .table-layout-v3 caption > *:first-child,
     .table-layout-v3 caption > *:first-child > [class*="heading-lv"]{
       margin-top: 0 !important;
     }
     .table-layout-v3 caption > *:last-child {
       margin-bottom: 0 !important;
     }
     .table-layout-v3 th,
     .table-layout-v3 td {
       padding: 15px 30px;
       border-right: 1px solid #dfdfe3;
       border-bottom: 1px solid #dfdfe3;
       background-color: #fff;
       font-size: 1.6rem;
       font-weight: 400;
       text-align: left;
       vertical-align: top;
     }
     .table-layout-v3 tr > td {
       padding-right: 0;
       border-right: none;
       vertical-align: middle;
     }
     .table-layout-v3 tr > td:last-child {
       padding-right: 30px;
     }
     .table-layout-v3 th > *:first-child,
     .table-layout-v3 th > *:first-child > [class*="heading-lv"],
     .table-layout-v3 td > *:first-child,
     .table-layout-v3 td > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .table-layout-v3 .cell-style1 {
       padding: 24px 30px;
       background-color: #f7f7fa;
     }
     .table-layout-v3 th.cell-style1 {
       font-weight: 700;
     }
     .table-layout-v3 .cell-style2 {
       background-color: #fff;
     }
     
     /* ----- library-table-layout ----- */
     .library-table-layout .library_table_heading {
       display: -webkit-flex;
       display: flex;
       -webkit-box-pack: end;
       justify-content: flex-end;
       width: 100%;
       border-top: 2px solid #dfdfe3;
       background: #787878;
     }
     .library-table-layout .heading_text_lv1 {
       width: 19.5%;
       padding: 1em;
       border-left: 1px solid #dfdfe3;
       color: #ffffff;
       font-size: 1.6rem;
       font-weight: 700;
       text-align: center;
     }
     .library-table-layout .library_table_contents {
       border-bottom: 1px solid #dfdfe3;
     }
     
     /* ------------------------------------------------------
      * Layout >>> Box
     ------------------------------------------------------ */
     [class*="box-layout"] {
       margin-top: 2.5em;
     }
     [class*="box-layout"] > [class*="box_detail"] > *:first-child,
     [class*="box-layout"] > [class*="box_detail"] > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     
     /* ----- box-layout ----- */
     .box-layout {
       margin-top: 1.85em;
       border: 1px solid #ddd;
     }
     .box-layout > .box_title {
       padding: 24px 29px 24px;
       background-color: #f1f1f1;
       font-size: 2.0rem;
       font-weight: 700;
     }
     .box-layout > .box_detail {
       padding: 29px;
       background-color: #fff;
     }
     /* v2 */
     .box-layout-v2 {
       margin-top: 1.85em;
       border: 1px solid #00995b;
     }
     .box-layout-v2 > .box_title {
       padding: 15px;
       background-color: #00995b;
       color: #fff;
       font-size: 3.6rem;
       line-height: 1.2;
       text-align: center;
     }
     .box-layout-v2 > .box_title .is-smaller {
       font-size: 66.66%;
     }
     .box-layout-v2 > .box_detail {
       padding: 4%;
       background-color: #fff;
     }
     
     /* ------------------------------------------------------
      * Layout >>> Other
     ------------------------------------------------------ */
     /* ----- accordion-layout ----- */
     .accordion-layout {
       margin-top: 2.5em;
     }
     .accordion-layout .accordion_trigger {
       padding: 15px 20px 14px;
       border: 1px solid #dfdfe3;
       background-color: #fff;
       cursor: pointer;
     }
     .accordion-layout .accordion_trigger:hover {
       border-color: #bbb;
     }
     .accordion-layout .accordion_trigger > .accordion_label {
       display: block;
       position: relative;
       padding: 0 30px;
       font-size: 2.2rem;
       text-align: center;
     }
     .accordion-layout .accordion_trigger > .accordion_label::before,
     .accordion-layout .accordion_trigger > .accordion_label::after {
       position: absolute;
       top: 50%;
       right: 0;
       width: 20px;
       height: 2px;
       margin: -1px 0 0 0;
       background-color: #00995b;
       content: "";
     }
     .accordion-layout .accordion_trigger > .accordion_label::before {
       -webkit-transform: rotate(90deg);
       transform: rotate(90deg);
     }
     .accordion-layout .accordion_trigger.is-active > .accordion_label::before {
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .accordion-layout .accordion_detail {
       padding: 14px 19px;
       border: 1px solid #dfdfe3;
       border-top: none;
       background-color: #fff;
     }
     .accordion-layout .accordion_detail > *:first-child,
     .accordion-layout .accordion_detail > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     /* v2 */
     .accordion-layout-v2 {
       margin-top: 2.5em;
     }
     .accordion-layout-v2 .accordion_list_trigger {
       float: right;
       cursor: pointer;
     }
     .accordion-layout-v2 .accordion_list_trigger > .accordion_list_label {
       display: inline-block;
       position: relative;
       min-width: 160px;
       padding: 7px 50px 7px 20px;
       background-color: #666;
       color: #fff;
       text-align: center;
     }
     .accordion-layout-v2 .accordion_list_trigger > .accordion_list_label::before,
     .accordion-layout-v2 .accordion_list_trigger > .accordion_list_label::after {
       position: absolute;
       top: 50%;
       right: 20px;
       width: 16px;
       height: 2px;
       margin: -1px 0 0 0;
       background-color: #fff;
       content: "";
     }
     .accordion-layout-v2 .accordion_list_trigger > .accordion_list_label::before {
       -webkit-transform: rotate(90deg);
       transform: rotate(90deg);
     }
     .accordion-layout-v2 .accordion_list_trigger.is-active > .accordion_list_label::before {
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .accordion-layout-v2 .accordion_list_trigger > .accordion_list_label:hover {
       background-color: #999;
     }
     .accordion-layout-v2 .accordion_list_detail {
       clear: both;
       padding-top: 30px;
     }
     .accordion-layout-v2 .accordion_list_detail > *:first-child,
     .accordion-layout-v2 .accordion_list_detail > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     /* v3 */
     .accordion-layout-v3 {
       margin-top: 2.5em;
     }
     .accordion-layout-v3 .accordion_trigger {
       padding: 15px 20px 14px;
       border: 1px solid #dfdfe3;
       background-color: #fff;
       cursor: pointer;
     }
     .accordion-layout-v3 .accordion_trigger > .accordion_label {
       display: block;
       position: relative;
       padding: 0 30px 0 0;
       font-size: 2.5rem;
       font-weight: 700;
       text-align: left;
     }
     .accordion-layout-v3 .accordion_trigger > .accordion_label::before,
     .accordion-layout-v3 .accordion_trigger > .accordion_label::after {
       position: absolute;
       top: 50%;
       right: 0;
       width: 15px;
       height: 2px;
       margin: -1px 0 0 0;
       background-color: #656666;
       content: "";
     }
     .accordion-layout-v3 .accordion_trigger > .accordion_label::before {
       right: 10px;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
     }
     .accordion-layout-v3 .accordion_trigger > .accordion_label::after {
       -webkit-transform: rotate(-45deg);
       transform: rotate(-45deg);
     }
     .accordion-layout-v3 .accordion_trigger:hover {
       border-color: #bbb;
     }
     .accordion-layout-v3 .accordion_trigger.is-active > .accordion_label::before {
       -webkit-transform: rotate(-45deg);
       transform: rotate(-45deg);
     }
     .accordion-layout-v3 .accordion_trigger.is-active > .accordion_label::after {
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
     }
     .accordion-layout-v3 .accordion_detail {
       margin: 20px 0 0 0;
       border: none;
       background-color: #fff;
     }
     .accordion-layout-v3 .accordion_detail > *:first-child,
     .accordion-layout-v3 .accordion_detail > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     
     /* ----- faq-layout ----- */
     .faq-layout {
       margin-top: 2.5em;
     }
     .faq-layout .faq_trigger {
       position: relative;
       padding: 15px 20px 16px 24px;
       border: 1px solid #dfdfe3;
       background-color: #fff;
       font-weight: 700;
       cursor: pointer;
     }
     .faq-layout .faq_trigger > .faq_label {
       position: relative;
       padding: 0 30px 0 33px;
       font-size: 1.8rem;
     }
     .faq-layout .faq_trigger > .faq_label > .faq_icon {
       position: absolute;
       left: 0;
       top: 50%;
       -webkit-transform: translateY(-50%);
       transform: translateY(-50%);
       color: #00995b;
       font-size: 3.2rem;
     }
     .faq-layout .faq_trigger > .faq_label::before,
     .faq-layout .faq_trigger > .faq_label::after {
       position: absolute;
       top: 51%;
       right: 0;
       width: 20px;
       height: 2px;
       margin: -1px 0 0 0;
       background-color: #00995b;
       content: "";
       z-index: 2;
     }
     .faq-layout .faq_trigger > .faq_label::before {
       -webkit-transform: rotate(90deg);
       transform: rotate(90deg);
     }
     .faq-layout .faq_trigger:hover {
       border-color: #bbb;
     }
     .faq-layout .faq_trigger:after {
       position: absolute;
       top: 51%;
       right: 14px;
       -webkit-transform: translateY(-50%);
       transform: translateY(-50%);
       width: 32px;
       height: 32px;
       margin: -1px 0 0 0;
       background-color: transparent;
       content: "";
     }
     .faq-layout .faq_trigger:hover::after {
       background-color: #f1f1f2;
     }
     .faq-layout .faq_trigger.is-active > .faq_label::before {
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .faq-layout .faq_detail {
       padding: 22px 20px 25px 23px;
       border: 1px solid #dfdfe3;
       border-top: none;
       background-color: #fff;
     }
     .faq-layout .faq_detail > .faq_detail_inner {
       position: relative;
       padding-left: 33px;
       font-size: 1.8rem;
     }
     .faq-layout .faq_detail > .faq_detail_inner > .faq_icon {
       position: absolute;
       left: 0;
       top: 13px;
       -webkit-transform: translateY(-50%);
       transform: translateY(-50%);
       font-size: 3.2rem;
       font-weight: 700;
     }
     .faq-layout .faq_detail > .faq_detail_inner > .faq_icon + *,
     .faq-layout .faq_detail > .faq_detail_inner > .faq_icon + * > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     
     /* ----- tab-layout ----- */
     .tab-layout {
       margin-top: 2.5em;
     }
     .tab-layout > .tab_navi {
       width: 100vw;
       margin-left: calc(50% - 50vw);
       border-bottom: 1px solid #dfdfe3;
     }
     .tab-layout > .tab_navi > .tab_list {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row wrap;
       flex-flow: row wrap;
       width: 1280px;
       max-width: 100%;
       margin: 0 auto;
       padding: 0 40px;
     }
     .tab-layout > .tab_navi > .tab_list > li {
       display: -webkit-flex;
       display: flex;
       position: relative;
       bottom: -1px;
       margin-left: 36px;
     }
     .tab-layout[data-count-pc="3"] > .tab_navi > .tab_list > li { width: calc((100% -  72px) / 3); }
     .tab-layout[data-count-pc="4"] > .tab_navi > .tab_list > li { width: calc((100% - 108px) / 4); }
     /* for IE11 */
     [data-browser="ie11"] .tab-layout[data-count-pc="3"] > .tab_navi > .tab_list > li { width: calc(((100% -  72px) / 3) - 0.1px); }
     [data-browser="ie11"] .tab-layout[data-count-pc="4"] > .tab_navi > .tab_list > li { width: calc(((100% - 108px) / 4) - 0.1px); }
     /* for Edge */
     [data-browser="edge"] .tab-layout[data-count-pc="3"] > .tab_navi > .tab_list > li { width: calc(((100% -  72px) / 3) - 0.1px); }
     [data-browser="edge"] .tab-layout[data-count-pc="4"] > .tab_navi > .tab_list > li { width: calc(((100% - 108px) / 4) - 0.1px); }
     .tab-layout[data-count-pc="3"] > .tab_navi > .tab_list > li:nth-child(3n+1),
     .tab-layout[data-count-pc="4"] > .tab_navi > .tab_list > li:nth-child(4n+1) {
       margin-left: 0;
     }
     .tab-layout > .tab_navi > .tab_list > li > a {
       display: -webkit-flex;
       display: flex;
       -webkit-justify-content: center;
       justify-content: center;
       -webkit-align-items: center;
       align-items: center;
       position: relative;
       width: 100%;
       padding: 20px 10px 30px;
       border: 1px solid transparent;
       border-bottom: none;
       font-size: 2.2rem;
       text-decoration: none;
       text-align: center;
     }
     .tab-layout > .tab_navi > .tab_list > li > a::before {
       position: absolute;
       top: 0;
       left: -1px;
       width: calc(100% + 2px);
       height: 2px;
       background-color: #666;
       content: "";
     }
     .tab-layout > .tab_navi > .tab_list > li:not(.is-current) > a::after {
       position: absolute;
       top: 0;
       left: -1px;
       width: 0;
       height: 2px;
       background-color: #00995b;
       content: "";
     }
     .tab-layout > .tab_navi > .tab_list > li:not(.is-current) > a:hover::after {
       width: calc(100% + 2px);
     }
     .tab-layout > .tab_navi > .tab_list > li.is-current > a {
       border-right-color: #dfdfe3;
       border-left-color: #dfdfe3;
       background-color: #fff;
       color: #00995b;
       font-weight: 700;
     }
     .tab-layout.has-anchor > .tab_navi > .tab_list > li.is-current > a {
       background-color: #f7f7fa;
     }
     .tab-layout > .tab_navi > .tab_list > li.is-current > a::before {
       background-color: #00995b;
     }
     .tab-layout[data-layout-sp="selectbox"] .tab_navi_2 {
       display: none;
     }
     .tab-layout > .tab_detail {
       padding-top: 30px;
     }
     .tab-layout.js-tabs > .tab_detail {
       display: none;
     }
     .tab-layout.has-anchor > .tab_detail {
       padding-top: 0;
     }
     .tab-layout > .tab_detail > *:first-child,
     .tab-layout > .tab_detail > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     /* v2 */
     .tab-layout-v2 {
       margin-top: 2.5em;
     }
     .tab-layout-v2 > .tab_navi {
     }
     .tab-layout-v2 > .tab_navi > .tab_list {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row wrap;
       flex-flow: row wrap;
     }
     .tab-layout-v2 > .tab_navi > .tab_list > li {
       display: -webkit-flex;
       display: flex;
       margin-top: 1.5em;
       margin-left: 30px;
     }
     .tab-layout-v2[data-count-pc="2"] > .tab_navi > .tab_list > li { width: calc((100% -  30px) / 2); }
     .tab-layout-v2[data-count-pc="3"] > .tab_navi > .tab_list > li { width: calc((100% -  60px) / 3); }
     .tab-layout-v2[data-count-pc="4"] > .tab_navi > .tab_list > li { width: calc((100% -  90px) / 4); }
     .tab-layout-v2[data-count-pc="5"] > .tab_navi > .tab_list > li { width: calc((100% - 120px) / 5); }
     .tab-layout-v2[data-count-pc="6"] > .tab_navi > .tab_list > li { width: calc((100% - 150px) / 6); }
     .tab-layout-v2[data-count-pc="7"] > .tab_navi > .tab_list > li { width: calc((100% - 180px) / 7); }
     /* for IE11 */
     [data-browser="ie11"] .tab-layout-v2[data-count-pc="2"] > .tab_navi > .tab_list > li { width: calc(((100% -  30px) / 2) - 0.1px); }
     [data-browser="ie11"] .tab-layout-v2[data-count-pc="3"] > .tab_navi > .tab_list > li { width: calc(((100% -  60px) / 3) - 0.1px); }
     [data-browser="ie11"] .tab-layout-v2[data-count-pc="4"] > .tab_navi > .tab_list > li { width: calc(((100% -  90px) / 4) - 0.1px); }
     [data-browser="ie11"] .tab-layout-v2[data-count-pc="5"] > .tab_navi > .tab_list > li { width: calc(((100% - 120px) / 5) - 0.1px); }
     [data-browser="ie11"] .tab-layout-v2[data-count-pc="6"] > .tab_navi > .tab_list > li { width: calc(((100% - 150px) / 6) - 0.1px); }
     [data-browser="ie11"] .tab-layout-v2[data-count-pc="7"] > .tab_navi > .tab_list > li { width: calc(((100% - 180px) / 7) - 0.1px); }
     /* for Edge */
     [data-browser="edge"] .tab-layout-v2[data-count-pc="2"] > .tab_navi > .tab_list > li { width: calc(((100% -  30px) / 2) - 0.1px); }
     [data-browser="edge"] .tab-layout-v2[data-count-pc="3"] > .tab_navi > .tab_list > li { width: calc(((100% -  60px) / 3) - 0.1px); }
     [data-browser="edge"] .tab-layout-v2[data-count-pc="4"] > .tab_navi > .tab_list > li { width: calc(((100% -  90px) / 4) - 0.1px); }
     [data-browser="edge"] .tab-layout-v2[data-count-pc="5"] > .tab_navi > .tab_list > li { width: calc(((100% - 120px) / 5) - 0.1px); }
     [data-browser="edge"] .tab-layout-v2[data-count-pc="6"] > .tab_navi > .tab_list > li { width: calc(((100% - 150px) / 6) - 0.1px); }
     [data-browser="edge"] .tab-layout-v2[data-count-pc="7"] > .tab_navi > .tab_list > li { width: calc(((100% - 180px) / 7) - 0.1px); }
     /* for Edge 読み込み時の対応 */
     @supports (-ms-ime-align: auto) {
       .tab-layout-v2[data-count-pc="2"] > .tab_navi > .tab_list > li { width: calc(((100% -  30px) / 2) - 0.1px); }
       .tab-layout-v2[data-count-pc="3"] > .tab_navi > .tab_list > li { width: calc(((100% -  60px) / 3) - 0.1px); }
       .tab-layout-v2[data-count-pc="4"] > .tab_navi > .tab_list > li { width: calc(((100% -  90px) / 4) - 0.1px); }
       .tab-layout-v2[data-count-pc="5"] > .tab_navi > .tab_list > li { width: calc(((100% - 120px) / 5) - 0.1px); }
       .tab-layout-v2[data-count-pc="6"] > .tab_navi > .tab_list > li { width: calc(((100% - 150px) / 6) - 0.1px); }
       .tab-layout-v2[data-count-pc="7"] > .tab_navi > .tab_list > li { width: calc(((100% - 180px) / 7) - 0.1px); }
     }
     .tab-layout-v2[data-count-pc="2"] > .tab_navi > .tab_list > li:nth-child(-n+2),
     .tab-layout-v2[data-count-pc="3"] > .tab_navi > .tab_list > li:nth-child(-n+3),
     .tab-layout-v2[data-count-pc="4"] > .tab_navi > .tab_list > li:nth-child(-n+4),
     .tab-layout-v2[data-count-pc="5"] > .tab_navi > .tab_list > li:nth-child(-n+5),
     .tab-layout-v2[data-count-pc="6"] > .tab_navi > .tab_list > li:nth-child(-n+6),
     .tab-layout-v2[data-count-pc="7"] > .tab_navi > .tab_list > li:nth-child(-n+7) {
       margin-top: 0;
     }
     .tab-layout-v2[data-count-pc="2"] > .tab_navi > .tab_list > li:nth-child(2n+1),
     .tab-layout-v2[data-count-pc="3"] > .tab_navi > .tab_list > li:nth-child(3n+1),
     .tab-layout-v2[data-count-pc="4"] > .tab_navi > .tab_list > li:nth-child(4n+1),
     .tab-layout-v2[data-count-pc="5"] > .tab_navi > .tab_list > li:nth-child(5n+1),
     .tab-layout-v2[data-count-pc="6"] > .tab_navi > .tab_list > li:nth-child(6n+1),
     .tab-layout-v2[data-count-pc="7"] > .tab_navi > .tab_list > li:nth-child(7n+1) {
       margin-left: 0;
     }
     .tab-layout-v2 > .tab_navi > .tab_list > li > a {
       display: -webkit-flex;
       display: flex;
       -webkit-justify-content: center;
       justify-content: center;
       -webkit-align-items: center;
       align-items: center;
       position: relative;
       width: 100%;
       padding: 0 0 15px 0;
       font-size: 2.2rem;
       line-height: 1.2;
       text-decoration: none;
       text-align: center;
     }
     .tab-layout-v2 > .tab_navi > .tab_list > li > a::before {
       position: absolute;
       bottom: 0;
       left: 0;
       width: 100%;
       height: 2px;
       background-color: #666;
       content: "";
     }
     .tab-layout-v2 > .tab_navi > .tab_list > li:not(.is-current) > a::after {
       position: absolute;
       bottom: 0;
       left: 0;
       width: 0;
       height: 2px;
       background-color: #00995b;
       content: "";
     }
     .tab-layout-v2 > .tab_navi > .tab_list > li:not(.is-current) > a:hover::after {
       width: 100%;
     }
     .tab-layout-v2 > .tab_navi > .tab_list > li.is-current > a {
       color: #00995b;
       font-weight: 700;
     }
     .tab-layout-v2 > .tab_navi > .tab_list > li.is-current > a::before {
       background-color: #00995b;
     }
     .tab-layout-v2 > .tab_detail {
       padding-top: 30px;
     }
     .tab-layout-v2.js-tabs > .tab_detail {
       display: none;
     }
     .tab-layout-v2 > .tab_detail > *:first-child,
     .tab-layout-v2 > .tab_detail > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     
     /* ------------------------------------------------------
      * Component >>> Navi
     ------------------------------------------------------ */
     /* ----- navi-anchor ----- */
     .navi-anchor {
       width: 100vw;
       margin: 1.5em 0;
       margin-left: calc(50% - 50vw);
       background-color: #f7f7fa;
     }
     .navi-anchor .navi_inner {
       width: 1280px;
       max-width: 100%;
       margin: 0 auto;
       padding: 20px 40px;
     }
     .navi-anchor .navi_inner > li {
       display: -webkit-flex;
       display: flex;
     }
     .navi-anchor .navi_inner > li > a {
       display: -webkit-flex;
       display: flex;
       -webkit-justify-content: center;
       justify-content: center;
       -webkit-align-items: center;
       align-items: center;
       position: relative;
       width: 100%;
       padding: 22px 10px 25px;
       border: 1px solid #dfdfe3;
       background-color: #fff;
       text-decoration: none;
       text-align: center;
     }
     .navi-anchor .navi_inner > li > a.is-nolink {
       color: #333;
       text-decoration: none;
       pointer-events: none;
       cursor: default;
     }
     .navi-anchor .navi_inner > li > a::before {
       position: absolute;
       bottom: 14px;
       left: 50%;
       width: 10px;
       height: 10px;
       margin: 0 0 0 -5px;
       border-bottom: 1px solid #00995b;
       border-left: 1px solid #00995b;
       -webkit-transform: rotate(-45deg);
       transform: rotate(-45deg);
       content: "";
     }
     .navi-anchor .navi_inner > li > a.is-nolink::before {
       display: none !important;
     }
     .navi-anchor .navi_inner > li[class*="type-philosophy"] > a::after {
       display: inline-block;
       position: absolute;
       top: 50%;
       left: 10px;
       width: 25px;
       height: 19px;
       margin: -10px 0 0 0;
       background-repeat: no-repeat;
       background-position: 0 0;
       background-size: 25px auto;
       content: "";
     }
     .navi-anchor .navi_inner > li.type-philosophy1 > a::after { background-image: url(/about/philosophy/img/philosophy_ic01.png); }
     .navi-anchor .navi_inner > li.type-philosophy2 > a::after { background-image: url(/about/philosophy/img/philosophy_ic02.png); }
     .navi-anchor .navi_inner > li.type-philosophy3 > a::after { background-image: url(/about/philosophy/img/philosophy_ic03.png); }
     .navi-anchor .navi_inner > li.type-philosophy4 > a::after { background-image: url(/about/philosophy/img/philosophy_ic04.png); }
     .navi-anchor .navi_inner > li.type-philosophy5 > a::after { background-image: url(/about/philosophy/img/philosophy_ic05.png); }
     .navi-anchor .navi_inner > li > a .navi_label {
       display: inline-block;
     }
     .navi-anchor .navi_inner > li[class*="type-philosophy"] > a .navi_label {
       padding: 0 28px;
     }
     .navi-anchor .navi_inner > li > a:not(.is-nolink):hover {
       border-color: #777;
     }
     .navi-anchor .navi_inner > li > a:not(.is-nolink):hover::before {
       bottom: 11px;
     }
   
     @media only screen and (max-width: 767px){
       .navi-anchor {
       margin: 1em -15px;
       background-color: #f7f7fa;
     }
   }
   
   @media only screen and (max-width: 767px){
     .navi-anchor .navi_inner {
       padding: 15px;
     }
   }
   
     @media only screen and(max-width: 767px){
       .navi-anchor .navi_inner > li > a{
       display: -webkit-flex;
       display: flex;
       -webkit-justify-content: center;
       justify-content: center;
       -webkit-align-items: center;
       align-items: center;
       position: relative;
       width: 100%;
       padding: 10px 30px;
       border: 1px solid #dfdfe3;
       background-color: #fff;
       text-decoration: none;
       text-align: center;
     }
   }
     
     /* ----- navi-local ----- */
     .navi-local {
       margin-top: 2.5em;
       padding: 30px 20px;
       background-color: #f7f7fa;
     }
     .navi-local .navi_list {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row wrap;
       flex-flow: row wrap;
     }
     .navi-local .navi_list > li {
       width: calc((100% - 80px) / 5);
       margin-top: 1.25em;
       margin-left: 20px;
     }
     .navi-local .navi_list > li:nth-child(-n+5) {
       margin-top: 0;
     }
     .navi-local .navi_list > li:nth-child(5n+1) {
       margin-left: 0;
     }
     .navi-local .navi_list > li > a {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row nowrap;
       flex-flow: row nowrap;
       -webkit-align-items: center;
       align-items: center;
     }
     .navi-local .navi_list > li > a .navi_icon {
       margin-right: 20px;
     }
     .navi-local .navi_list > li > a .navi_icon img {
       width: 60px;
       height: 60px;
     }
     .navi-local .navi_list > li > a .navi_label {
       -webkit-flex: 1;
       flex: 1;
     }
     .navi-local .navi_list > li > a .navi_label::after {
       display: inline-block;
       position: relative;
       top: -2px;
       right: 2px;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #00995b;
       border-right: 1px solid #00995b;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     /* v2 */
     .navi-local-v2 {
       margin-top: 2.5em;
     }
     .navi-local-v2 .navi_list > li.is-current > a {
       color: #333;
       font-weight: 700;
       text-decoration: none;
       cursor: default;
     }
     .navi-local-v2 .navi_list > li:not(.is-current) > a::after {
       display: inline-block;
       position: relative;
       top: -2px;
       right: 2px;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #00995b;
       border-right: 1px solid #00995b;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     
     /* ------------------------------------------------------
      * Component >>> Index
     ------------------------------------------------------ */
     [class*="index-layout"] .index_caption > *:first-child,
     [class*="index-layout"] .index_caption > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     
     /* ----- index-layout ----- */
     .index-layout {
       text-align: left;
     }
     .index-layout > .block {
       border: 1px solid #dfdfe3;
       background-color: #fff;
       text-decoration: none;
     }
     .index-layout > .block .index_image {
       text-align: center;
     }
     .index-layout > .block .index_caption {
       position: relative;
       padding: 14px 29px;
       text-align: center;
     }
     .index-layout > .block .index_caption > *:first-child,
     .index-layout > .block .index_caption > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .index-layout > a.block .index_caption::after {
       display: inline-block;
       position: absolute;
       top: 50%;
       right: 14px;
       width: 10px;
       height: 10px;
       margin: -5px 0 0 0;
       border-top: 1px solid #00995b;
       border-right: 1px solid #00995b;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .index-layout > a.block[class*="a-"] .index_caption::after {
       border: none;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .index-layout > a.block.a-pdf .index_caption::after {
       margin-top: -7px;
     }
     .index-layout > .block .index_title {
       display: -webkit-flex;
       display: flex;
       -webkit-justify-content: flex-start;
       justify-content: flex-start;
       -webkit-align-items: center;
       align-items: center;
       text-align: left;
     }
     .index-layout > .block .index_title .index_title_list {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row wrap;
       flex-flow: row wrap;
       width: 100%;
     }
     .index-layout > .block .index_title .index_title_list > .index_title_item {
       width: calc((100% - 20px) / 2);
       margin-top: .75em;
       margin-left: 20px;
       font-size: 1.6rem;
     }
     /* for IE11 */
     [data-browser="ie11"] .index-layout > .block .index_title .index_title_list > .index_title_item {
       width: calc(((100% - 20px) / 2) - 0.1px);
     }
     /* for Edge */
     [data-browser="edge"] .index-layout > .block .index_title .index_title_list > .index_title_item {
       width: calc(((100% - 20px) / 2) - 0.1px);
     }
     .index-layout > .block .index_title .index_title_list > .index_title_item:nth-child(-n+2) {
       margin-top: 0;
     }
     .index-layout > .block .index_title .index_title_list > .index_title_item:nth-child(2n+1) {
       margin-left: 0;
     }
     .index-layout > .block .index_title .index_title_list > .index_title_item > a::after {
       display: inline-block;
       position: relative;
       top: -2px;
       right: 2px;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #00995b;
       border-right: 1px solid #00995b;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .index-layout > .block .index_title .index_title_list > .index_title_item > a[class*="a-"]::after {
       right: 0;
       margin: 0 0 0 8px;
       border: none;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .index-layout > a.block:hover .index_title,
     .index-layout > .block .index_title .index_title_list > .index_title_item > a:hover {
       color: #00995b;
       text-decoration: underline;
     }
     .index-layout > .block .index_image_2 {
       position: relative;
       text-align: center;
     }
     .index-layout > .block .index_image_2 .index_title_2 {
       position: absolute;
       line-height: 1.1;
     }
     .index-layout > .block .index_image_2 .index_title_2.type-group-japan {
       bottom: 15px;
       left: 25px;
       color: #fff;
     }
     /* v2 */
     .index-layout-v2 {
       text-align: left;
     }
     .index-layout-v2 > .block {
       text-decoration: none;
       outline: none;
     }
     .index-layout-v2 > .block > *:first-child {
       margin-top: 0 !important;
     }
     .index-layout-v2 > .block .index_image {
       position: relative;
       margin-top: .75em;
       text-align: center;
     }
     .index-layout-v2 > a.block.a-video .index_image::before {
       position: absolute;
       top: 50%;
       left: 50%;
       z-index: 2;
       margin: -24px 0 0 -34px;
     }
     .index-layout-v2 > a.block.a-video .index_image::after {
       display: inline-block;
       position: absolute;
       top: 50%;
       left: 50%;
       z-index: 3;
       width: 0;
       height: 0;
       margin: -9px 0 0 -7px;
       border-width: 9px 18px;
       border-style: solid;
       border-color: transparent transparent transparent #fff;
       content: "";
     }
     .index-layout-v2 > .block .index_caption {
       margin-top: .75em;
     }
     .index-layout-v2 > .block .index_caption > *:first-child,
     .index-layout-v2 > .block .index_caption > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .index-layout-v2 > .block .index_title {
       margin-top: .75em;
       font-size: 2.0rem;
       font-weight: 700;
       line-height: 1.25;
     }
     .index-layout-v2 > .block .index_title + * {
       margin-top: .5em;
     }
     .index-layout-v2 > .block .index_title + .index_caption {
       margin-top: .5em;
     }
     .index-layout-v2 > .block .index_description {
       margin-top: .5em;
     }
     .index-layout-v2 .link-button {
       margin-top: .75em;
     }
     .index-layout-v2 .link-button a {
       min-width: 190px;
     }
     .index-layout-v2 > a.block.a-video:hover .index_image::after {
       border-left-color: #00995b;
     }
     .index-layout-v2 > a.block:hover .index_title,
     .index-layout-v2 > a.block:hover .text-title-v2 {
       color: #00995b;
       text-decoration: underline;
     }
     /* v3 */
     .index-layout-v3 {
       text-align: left;
     }
     .index-layout-v3 > .block {
       text-decoration: none;
     }
     .index-layout-v3 > .block .index_image {
       float: left;
       width: 220px;
       margin-right: 36px;
     }
     .index-layout-v3 > .block .index_caption {
       overflow: hidden;
     }
     .index-layout-v3 > .block .index_caption > *:first-child,
     .index-layout-v3 > .block .index_caption > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .index-layout-v3 > a.block .index_title::after {
       display: inline-block;
       position: relative;
       top: -2px;
       right: 2px;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #00995b;
       border-right: 1px solid #00995b;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .index-layout-v3 > a.block[class*="a-"] .index_title::after {
       border: none;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .index-layout-v3 > .block .index_description {
       margin-top: 1em;
       font-size: 1.6rem;
     }
     .index-layout-v3 > a.block:hover .index_title {
       color: #00995b;
       text-decoration: underline;
     }
     /* v4 */
     .index-layout-v4 {
       text-align: left;
     }
     .index-layout-v4 > .block {
       padding: 20px 0;
       border-top: 1px solid #dfdfe3;
       border-bottom: 1px solid #dfdfe3;
       background-color: #fff;
       text-decoration: none;
     }
     .index-layout-v4 > .block .index_caption {
     }
     .index-layout-v4 > .block .index_caption > *:first-child,
     .index-layout-v4 > .block .index_caption > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .index-layout-v4 > a.block .index_title::after {
       display: inline-block;
       position: relative;
       top: -2px;
       right: 2px;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .index-layout-v4 > a.block[class*="a-"] .index_title::after {
       border: none;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .index-layout-v4 > .block .index_description {
       margin-top: .5em;
       font-size: 1.6rem;
     }
     .index-layout-v4 > a.block:hover .index_title {
       color: #ff0000;
       text-decoration: underline;
     }
     /* v5 */
     .index-layout-v5 {
       text-align: left;
     }
     .index-layout-v5 > .block {
       text-decoration: none;
     }
     .index-layout-v5 > .block .index_image {
       text-align: center;
     }
     .index-layout-v5 > .block .index_caption {
       margin-top: .75em;
     }
     .index-layout-v5 > .block .index_caption > *:first-child,
     .index-layout-v5 > .block .index_caption > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .index-layout-v5 > .block .index_title {
       font-size: 2.0rem;
       font-weight: 700;
       line-height: 1.3;
     }
     .index-layout-v5 > a.block .index_title::after {
       display: inline-block;
       position: relative;
       top: -2px;
       right: 2px;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .index-layout-v5 > a.block[class*="a-"] .index_title::after {
       border: none;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .index-layout-v5 > a.block:hover .index_title {
       color: #ff0000;
       text-decoration: underline;
     }
     /* v6 */
     .index-layout-v6 {
       text-align: left;
     }
     .index-layout-v6 > .block {
       text-decoration: none;
     }
     .index-layout-v6 > .block .index_image {
       text-align: center;
     }
     .index-layout-v6 > .block .index_caption {
       margin-top: .75em;
     }
     .index-layout-v6 > .block .index_caption > *:first-child,
     .index-layout-v6 > .block .index_caption > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .index-layout-v6 > .block .index_title {
       font-size: 2.0rem;
       font-weight: 700;
       line-height: 1.3;
     }
     .index-layout-v6 > a.block .index_title::after {
       display: inline-block;
       position: relative;
       top: -2px;
       right: 2px;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .index-layout-v6 > a.block[class*="a-"] .index_title::after {
       border: none;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .index-layout-v6 > a.block:hover .index_title {
       color: #ff0000;
       text-decoration: underline;
     }
     /* v7 */
     .index-layout-v7 {
       text-align: left;
     }
     .index-layout-v7 > .block {
       padding: 0 0 30px 0;
       border-bottom: 1px solid #eee;
       background-color: #fff;
       text-decoration: none;
     }
     .index-layout-v7 > .block .index_caption {
     }
     .index-layout-v7 > .block .index_caption > *:first-child,
     .index-layout-v7 > .block .index_caption > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .index-layout-v7 > .block .index_title {
       font-size: 2.2rem;
       font-weight: 700;
       line-height: 1.25;
     }
     .index-layout-v7 > a.block .index_title::after {
       display: inline-block;
       position: relative;
       top: -2px;
       right: 2px;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .index-layout-v7 > a.block[class*="a-"] .index_title::after {
       border: none;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .index-layout-v7 > .block .index_description {
       margin-top: .75em;
     }
     .index-layout-v7 > a.block:hover .index_title {
       color: #ff0000;
       text-decoration: underline;
     }
     /* v8 */
     .index-layout-v8 {
       text-align: left;
     }
     .index-layout-v8 > .block {
       text-decoration: none;
     }
     .index-layout-v8 > .block .index_image {
       text-align: center;
     }
     .index-layout-v8 > .block .index_caption {
       margin-top: .75em;
     }
     .index-layout-v8 > .block .index_caption > *:first-child,
     .index-layout-v8 > .block .index_caption > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .index-layout-v8 > .block .index_title {
       font-size: 2.0rem;
       font-weight: 700;
       line-height: 1.3;
     }
     .index-layout-v8 > a.block .index_title::after {
       display: inline-block;
       position: relative;
       top: -2px;
       right: 2px;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .index-layout-v8 > a.block[class*="a-"] .index_title::after {
       border: none;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .index-layout-v8 > a.block:hover .index_title {
       color: #ff0000;
       text-decoration: underline;
     }
     /* v9 */
     .index-layout-v9 {
       text-align: left;
     }
     .index-layout-v9 > .index_heading > .block {
       position: relative;
       border: 1px solid #dfdfe3;
       background-color: #fff;
       text-decoration: none;
       overflow: hidden;
     }
     .index-layout-v9 > .index_heading > .block .index_image {
       text-align: center;
     }
     .index-layout-v9 > .index_heading > .block .index_image img {
       width: 100%;
     }
     .index-layout-v9 > .index_heading > .block .index_caption {
       position: absolute;
       bottom: 0;
       left: 0;
       width: 100%;
       background-color: rgba(255,255,255,.85);
     }
     .index-layout-v9 > .index_heading > a.block .index_caption::before {
       position: absolute;
       top: 50%;
       right: 16px;
       width: 10px;
       height: 10px;
       margin-top: -5px;
       margin-right: 2px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .index-layout-v9 > .index_heading > .block .index_caption .index_caption_inner {
       display: -webkit-flex;
       display: flex;
       -webkit-align-items: center;
       align-items: center;
       position: relative;
       height: calc(3em + 2px * 2);
       padding: 5px 30px 5px 20px;
     }
     .index-layout-v9 > .index_heading > .block .index_title {
       width: 100%;
       font-size: 2.0rem;
       font-weight: 500;
       line-height: 1.2;
     }
     .index-layout-v9 > .index_heading > .block .index_title .is-smaller {
       font-size: 1.6rem;
     }
     .index-layout-v9 > .index_heading > a.block:hover .index_title {
       color: #ff0000;
       text-decoration: underline;
     }
     .index-layout-v9 > .index_links {
       margin-top: 1.5em;
     }
     .index-layout-v9 > .index_links > li {
       margin-top: .75em;
       font-size: 1.6rem;
     }
     .index-layout-v9 > .index_links > li:nth-child(-n+1) {
       margin-top: 0;
     }
     .index-layout-v9 > .index_links > li > a {
       display: block;
       position: relative;
       padding: 0 35px 0 0;
     }
     .index-layout-v9 > .index_links > li > a::before {
       position: absolute;
       top: 50%;
       right: 15px;
       width: 10px;
       height: 10px;
       margin-top: -4px;
       margin-right: 2px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .index-layout-v9 > .index_links > li > a[class*="a-"]::before {
       border: none;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .index-layout-v9 > .index_links > li > a.a-blank::before {
       margin-top: -5px;
     }
     .index-layout-v9 > .index_links > li > a.a-pdf::before {
       margin-top: -6px;
     }
     
     /* ----- products-index-layout ----- */
     .products-index-layout {
       margin-top: 1.5em;
       border: 1px solid #dfdfe3;
     }
     .products-index-layout .index_heading {
       position: relative;
       padding: 16px 60px 16px 20px;
     }
     .products-index-layout .index_heading .index_title {
       font-size: 2.5rem;
       font-weight: 700;
       line-height: 1.2;
     }
     .products-index-layout .index_heading .index_title a::after {
       display: inline-block;
       position: relative;
       top: -2px;
       right: 2px;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .products-index-layout .index_heading .index_title a[class*="a-"]::after {
       right: 0;
       margin: 0 0 0 8px;
       border: none;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .products-index-layout .index_heading .index_title a:hover {
       color: #ff0000;
       text-decoration: underline;
     }
     .products-index-layout .index_heading .index_toggle {
       position: absolute;
       top: 50%;
       right: 14px;
       margin: -16px 0 0 0;
     }
     .products-index-layout .index_heading .index_toggle .index_toggle_trigger {
       position: relative;
       width: 32px;
       height: 32px;
       cursor: pointer;
     }
     .products-index-layout .index_heading .index_toggle .index_toggle_trigger::before,
     .products-index-layout .index_heading .index_toggle .index_toggle_trigger::after {
       position: absolute;
       top: 50%;
       left: 50%;
       width: 20px;
       height: 2px;
       margin: -1px 0 0 -10px;
       background-color: #ff0000;
       content: "";
     }
     .products-index-layout .index_heading .index_toggle .index_toggle_trigger::before {
       -webkit-transform: rotate(90deg);
       transform: rotate(90deg);
     }
     .products-index-layout .index_heading .index_toggle .index_toggle_trigger:hover {
       background-color: #f1f1f2;
     }
     .products-index-layout .index_heading .index_toggle .index_toggle_trigger.is-active::before {
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .products-index-layout .index_content {
       padding: 5px 20px 30px;
     }
     .products-index-layout .index_content > *:first-child,
     .products-index-layout .index_content > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .products-index-layout .index_content .index_sgds {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row wrap;
       flex-flow: row wrap;
       margin: 1em -10px -10px 0;
     }
     .products-index-layout .index_content .index_sgds > li {
       margin: 0 10px 10px 0;
     }
     .products-index-layout .index_content .index_links {
       display: -webkit-flex;
       display: flex;
       margin: 1em -36px 0 0;
     }
     .products-index-layout .index_content .index_links > li {
       width: 273px;
       margin-right: 36px;
     }
     .products-index-layout .index_content .index_links > li > *:first-child,
     .products-index-layout .index_content .index_links > li > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .products-index-layout .index_content .index_links > li [class*="link-button-"] a {
       width: 100%;
     }
     .products-index-layout .index_content .index_links > li .link-button-v4 a {
       font-size: 2.2rem;
     }
     .products-index-layout .index_content .column-media[data-media-size="1/4"] > .column_image {
       width: 273px;
     }
     .products-index-layout .column-media > .column_image > *:first-child {
       margin-top: 0;
     }
     
     /* ----- products-index-layout-v2 ----- */
     .products-index-layout-v2 {
       margin-top: 1.5em;
       border: 1px solid #dfdfe3;
     }
     .products-index-layout-v2 .index_heading {
       position: relative;
       display: block;
       padding: 16px 60px 16px 20px;
     }
     .products-index-layout-v2 .index_heading:hover {
       background-color: #f1f1f2;
       text-decoration: none;
     }
     .products-index-layout-v2 .index_heading .index_title {
       font-size: 1.5rem;
       font-weight: 700;
       line-height: 0.7;
     }
     .products-index-layout-v2 .index_heading .index_toggle {
       position: absolute;
       top: 50%;
       right: 14px;
       margin: -16px 0 0 0;
     }
     .products-index-layout-v2 .index_heading .index_toggle .index_toggle_trigger {
       position: relative;
       width: 32px;
       height: 32px;
       cursor: pointer;
     }
     .products-index-layout-v2 .index_heading .index_toggle .index_toggle_trigger::before,
     .products-index-layout-v2 .index_heading .index_toggle .index_toggle_trigger::after {
       position: absolute;
       top: 50%;
       left: 50%;
       width: 20px;
       height: 2px;
       margin: -1px 0 0 -10px;
       background-color: #ff0000;
       content: "";
     }
     .products-index-layout-v2 .index_heading .index_toggle .index_toggle_trigger::before {
       -webkit-transform: rotate(90deg);
       transform: rotate(90deg);
     }
     .products-index-layout-v2 .index_heading.is-active .index_toggle .index_toggle_trigger::before {
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .products-index-layout-v2 .index_content {
       padding: 5px 20px 30px;
     }
     .products-index-layout-v2 .index_content > *:first-child,
     .products-index-layout-v2 .index_content > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .products-index-layout-v2 .index_content .index_sgds {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row wrap;
       flex-flow: row wrap;
       margin: 1em -10px -10px 0;
     }
     .products-index-layout-v2 .index_content .index_sgds > li {
       margin: 0 10px 10px 0;
     }
     .products-index-layout-v2 .index_content .index_links {
       display: -webkit-flex;
       display: flex;
       margin: 1em -36px 0 0;
     }
     .products-index-layout-v2 .index_content .index_links > li {
       width: 273px;
       margin-right: 36px;
     }
     .products-index-layout-v2 .index_content .index_links > li > *:first-child,
     .products-index-layout-v2 .index_content .index_links > li > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .products-index-layout-v2 .index_content .index_links > li [class*="link-button-"] a {
       width: 100%;
     }
     .products-index-layout-v2 .index_content .index_links > li .link-button-v4 a {
       font-size: 2.2rem;
     }
     .products-index-layout-v2 .index_content .column-media[data-media-size="1/4"] > .column_image {
       width: 273px;
     }
     .products-index-layout-v2 .column-media > .column_image > *:first-child {
       margin-top: 0;
     }
     
     /* ------------------------------------------------------
      * Component >>> Other
     ------------------------------------------------------ */
     /* ----- article-information ----- */
     .article-information > *:last-child {
       margin-bottom: 0 !important;
     }
     .article-information .article_time {
       margin: 1.5em 0;
       text-align: right;
     }
     .article-information .article_time + * {
       margin-top: 1.5em;
     }
     .article-information .article_wysiwyg {
       margin: 2em 0;
     }
     .article-information .article_wysiwyg > *:first-child,
     .article-information .article_wysiwyg > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     
     /* ----- article-news ----- */
     .article-news > *:last-child {
       margin-bottom: 0 !important;
     }
     .article-news .article_time {
       margin: 1.5em 0;
       text-align: right;
     }
     .article-news .article_time + * {
       margin-top: 1.5em;
     }
     .article-news .article_wysiwyg {
       margin: 2em 0;
     }
     .article-news .article_wysiwyg > *:first-child,
     .article-news .article_wysiwyg > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     
     /* ----- news-compo ----- */
     .news-compo {
       margin-top: 2.5em;
       border-top: 1px solid #eee;
     }
     .news-compo .news_no_article {
       padding-top: 1em;
       text-align: center;
     }
     .news-compo .news_article {
       border-bottom: 1px solid #eee;
     }
     .news-compo .block {
       display: -webkit-flex;
       display: flex;
       -webkit-align-items: flex-start;
       align-items: flex-start;
       position: relative;
       padding: 25px 0 24px;
       text-decoration: none;
       outline: none;
     }
     .news-compo a.block {
       padding-right: 30px;
     }
     .news-compo a.block::after {
       display: inline-block;
       position: absolute;
       top: 50%;
       right: 13px;
       width: 10px;
       height: 10px;
       margin: -5px 0 0 0;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .news-compo a.block[class*="a-"]::after {
       right: 10px;
       border: none;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .news-compo a.block.a-pdf::after {
       margin-top: -7px;
     }
     .news-compo[data-layout-pc="row"] .news_detail {
       display: -webkit-flex;
       display: flex;
       -webkit-align-items: flex-start;
       align-items: flex-start;
       -webkit-flex: 1;
       flex: 1;
     }
     .news-compo .news_property {
       display: -webkit-flex;
       display: flex;
       -webkit-align-items: baseline;
       align-items: baseline;
     }
     .news-compo .news_date {
       display: inline-block;
       min-width: 9.5em;
       font-size: 1.7rem;
       font-weight: 300;
       white-space: nowrap;
       vertical-align: middle;
     }
     .news-compo .news_icon {
       display: -webkit-inline-box;
       display: inline-flex;
       -webkit-box-orient: vertical;
       -webkit-box-direction: normal;
       flex-direction: column;
       margin-right: 15px;
       vertical-align: middle;
     }
     .news-compo .news_icon .icon-news {
       position: relative;
       top: 0;
     }
     .news-compo .news_icon .icon-news:nth-of-type(n+2) {
       margin-top: .5em;
     }
     .news-compo .news_title {
       -webkit-flex: 1;
       flex: 1;
     }
     .news-compo a.block:hover .news_title {
       color: #ff0000;
       text-decoration: underline;
     }
     
     /* ----- news-select-wrap ----- */
     .news-select-wrap {
       display: -webkit-box;
       display: flex;
       -webkit-box-pack: justify;
       justify-content: space-between;
       -webkit-box-align: center;
       align-items: center;
       padding-top: 30px;
     }
     .news-select-wrap + .news-compo {
       margin-top: 20px;
     }
     .news-select-wrap .news_select_pulldown {
       position: relative;
       width: 250px;
       margin-left: 1px;
     }
     .news-select-wrap .news_select_pulldown::before {
       content: "";
       display: block;
       position: absolute;
       top: 50%;
       right: 10px;
       width: 10px;
       height: 10px;
       margin: -7px 0 0 0;
       border-right: 2px solid #ff2424;
       border-bottom: 2px solid #ff2424;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       cursor: pointer;
       pointer-events: none;
     }
     .news-select-wrap .news_select_year {
       width: 100%;
       padding: 10px 30px 11px 15px;
       border: 1px solid #dfdfe3;
       font-size: 1.8rem;
       font-weight: normal;
       cursor: pointer;
     }
     .news-select-wrap .news_select_year::-ms-expand {
       display: none;
     }
     .news-select-wrap .news_select_rss .a-rss {
       position: relative;
       padding-left: 32px;
     }
     .news-select-wrap .news_select_rss .a-rss::before {
       position: absolute;
       top: 5px;
       left: 0;
     }
     
     /* ----- gmap-compo ----- */
     .gmap-compo {
       margin-top: 2.5em;
     }
     .gmap-compo .gmap_canvas {
       position: relative;
       height: 0;
       padding-top: 41.666%;
       overflow: hidden;
     }
     .gmap-compo .gmap_canvas iframe {
       position: absolute;
       top: 0;
       left: 0;
       width: 100%;
       height: 100%;
     }
     
     /* ----- banner-compo ----- */
     .banner-compo {
       margin-top: 2.5em;
     }
     .banner-compo > *:first-child,
     .banner-compo > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .banner-compo .banner_list {
       margin-top: 1em;
     }
     /* v2 */
     .banner-compo-v2 {
       margin-top: 2em;
     }
     .banner-compo-v2 > .block {
       display: -webkit-flex;
       display: flex;
       -webkit-justify-content: flex-start;
       justify-content: flex-start;
       -webkit-align-items: center;
       align-items: center;
       position: relative;
       height: 160px;
       padding: 0 4.5%;
       background-color: #f7f7fa;
       text-decoration: none;
     }
     .banner-compo-v2 > .block .banner_caption {
       position: relative;
       z-index: 2;
     }
     .banner-compo-v2 > .block .banner_title {
       color: #ff0000;
       font-size: 2.4rem;
     }
     .banner-compo-v2 > .block .banner_title::after {
       display: inline-block;
       position: relative;
       top: -2px;
       right: 2px;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .banner-compo-v2 > .block .banner_lead {
       margin-top: .5em;
     }
     .banner-compo-v2 > .block .banner_image {
       position: absolute;
       top: 0;
       right: 0;
       z-index: 1;
     }
     .banner-compo-v2 > .block .banner_image img {
       height: 160px;
     }
     
     /* ----- slider-gallery-compo ----- */
     .slider-gallery-compo {
       margin-top: 2.5em;
     }
     .slider-gallery-compo .gallery_carousel .gallery_carousel_photos {
       position: relative;
     }
     .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .gallery_carousel_item img {
       margin: 0 auto;
     }
     .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-arrow {
       position: absolute;
       bottom: 5px;
       z-index: 2;
       width: 10px;
       height: 10px;
       margin: 0;
       padding: 0;
       border: none;
       background: none;
       text-indent: -9999em;
       outline: none;
       cursor: pointer;
       -webkit-transform: rotate(-45deg);
       transform: rotate(-45deg);
     }
     .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-prev {
       left: 50%;
       margin-left: -100px;
       border-top: 1px solid #696969;
       border-left: 1px solid #696969;
     }
     .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-next {
       right: 50%;
       margin-right: -100px;
       border-right: 1px solid #696969;
       border-bottom: 1px solid #696969;
     }
     .slider-gallery-compo .gallery_carousel .gallery_carousel_photos.is-maximum .slick-arrow.slick-prev {
       left: 3px;
       margin-left: 0;
     }
     .slider-gallery-compo .gallery_carousel .gallery_carousel_photos.is-maximum .slick-arrow.slick-next {
       right: 3px;
       margin-right: 0;
     }
     .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-dots {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row wrap;
       flex-flow: row wrap;
       -webkit-justify-content: center;
       justify-content: center;
       -webkit-align-items: center;
       align-items: center;
       margin-top: 1em;
       padding: 0 15px;
       text-align: center;
     }
     .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-dots > li {
       display: -webkit-flex;
       display: flex;
       -webkit-align-items: center;
       align-items: center;
       height: 20px;
       padding: 0 15px;
     }
     .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-dots > li button {
       width: 10px;
       height: 10px;
       margin: 0;
       padding: 0;
       border: none;
       background-color: #ccc;
       border-radius: 50%;
       text-indent: -9999em;
       outline: none;
       cursor: pointer;
     }
     .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-dots > li button:hover {
       background-color: #333;
     }
     .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-dots > li.slick-active button {
       background-color: #ff0000;
     }
     /* v2 */
     .slider-gallery-compo-v2 {
       margin-top: 2.5em;
     }
     .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos {
       position: relative;
     }
     .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .gallery_carousel_item img {
       margin: 0 auto;
     }
     .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow {
       position: absolute;
       top: 105px;
       z-index: 2;
       margin: 0;
       padding: 0;
       border: none;
       background-color: transparent;
       text-indent: -9999em;
       outline: none;
       cursor: pointer;
     }
     .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-prev {
       left: 6px;
     }
     .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-next {
       right: 6px;
     }
     .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow:hover {
       border-color: #333;
     }
     .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row wrap;
       flex-flow: row wrap;
       margin-top: .75em;
     }
     .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li {
       display: -webkit-flex;
       display: flex;
       -webkit-align-items: center;
       align-items: center;
       position: relative;
       width: calc((100% - 28px) / 3);
       margin-top: .5em;
       margin-left: 14px;
       opacity: .5;
       cursor: pointer;
     }
     /* for IE11 */
     [data-browser="ie11"] .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li {
       width: calc(((100% - 28px) / 3) - 0.1px);
     }
     /* for edge */
     [data-browser="edge"] .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li {
       width: calc(((100% - 28px) / 3) - 0.1px);
     }
     .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li:nth-child(-n+3) {
       margin-top: 0;
     }
     .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li:nth-child(3n+1) {
       margin-left: 0;
     }
     /* for IE11 hack */
     _:-ms-lang(x)::-ms-backdrop, .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li img {
       -webkit-flex: 0 1 auto;
       flex: 0 1 auto;
       min-width: 1px;
     }
     .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li:hover {
       opacity: .7;
     }
     .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li.slick-active {
       opacity: 1;
     }
     
     /* ----- contact-compo ----- */
     .contact-compo {
       margin-top: 2.5em;
     }
     .contact-compo .contact_box {
       display: table;
       width: 100%;
       border: 1px solid #dfdfe3;
     }
     .contact-compo .contact_box > .contact_heading {
       display: table-cell;
       width: 50%;
       padding: 20px 10px;
       background-color: #f7f7fa;
       text-align: center;
       vertical-align: middle;
     }
     .contact-compo .contact_box > .contact_heading .contact_title {
       font-size: 1.5rem;
       line-height: 1.4;
     }
     .contact-compo .contact_box > .contact_content {
       display: table-cell;
       width: 50%;
       padding: 40px 20px;
       text-align: center;
       vertical-align: middle;
     }
     .contact-compo .contact_box > .contact_content > *:first-child,
     .contact-compo .contact_box > .contact_content > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
       list-style: none;
     }
     .contact-compo .contact_box > .contact_content .link-button-v2 a {
       min-width: 376px;
       font-size: 1.2rem;
     }
     .contact-compo .contact_box > .contact_content .link-button-v2 a > .link_label {
       display: block;
     }
     
     /* ----- group-lead-compo ----- */
     .group-lead-compo {
       margin-top: 2.5em;
       padding: 20px 20px 30px;
       background-color: #f7f7fa;
     }
     .group-lead-compo > *:first-child,
     .group-lead-compo > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .group-lead-compo .lead_text {
       text-align: center;
     }
     .group-lead-compo .link-button-v3 {
       margin-top: 1.25em;
     }
     .group-lead-compo .link-button-v3 a {
       min-width: 450px;
       padding: 15px 20px;
       font-size: 2.2rem;
     }
     .group-lead-compo .link-button-v3 a > .link_label {
       display: block;
     }
     
     /* ----- related-compo ----- */
     .related-compo {
       margin-top: 2.5em;
     }
     .related-compo .related_box {
       padding: 24px 29px;
       border: 1px solid #dfdfe3;
       background-color: #fff;
     }
     .related-compo .related_box > *:first-child,
     .related-compo .related_box > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .related-compo .related_box .related_title {
       font-weight: 700;
       line-height: 1.2;
     }
     .related-compo .related_box .related_title + * {
       margin-top: 1em;
     }
     /* v2 */
     .related-compo-v2 {
       width: 100vw;
       margin-top: 4em;
       margin-left: calc(50% - 50vw);
       padding: 40px 0 100px;
       background-color: #f7f7fa;
     }
     .related-compo-v2 .related_inner {
       max-width: 1280px;
       margin: 0 auto;
       padding: 0 40px;
     }
     .related-compo-v2 .related_inner > *:first-child,
     .related-compo-v2 .related_inner > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .related-compo-v2 .related_inner .related_title {
       font-size: 2.8rem;
     }
     .related-compo-v2 .related_inner .related_title + * {
       margin-top: 1em;
     }
     .related-compo-v2 .related_inner .related_links_2 .block {
       text-decoration: none;
     }
     .related-compo-v2 .related_inner .related_links_2 .block .related_links_image {
       text-align: center;
     }
     .related-compo-v2 .related_inner .related_links_2 .block .related_links_title {
       margin-top: .5em;
     }
     .related-compo-v2 .related_inner .related_links_2 a.block .related_links_title::after {
       display: inline-block;
       position: relative;
       top: -2px;
       right: 2px;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .related-compo-v2 .related_inner .related_links_2 a.block[class*="a-"] .related_links_title::after {
       right: 0;
       margin: 0 0 0 8px;
       border: none;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .related-compo-v2 .related_inner .related_links_2 a.block:hover .related_links_title {
       color: #ff0000;
       text-decoration: underline;
     }
     
     /* ----- video-iframe-compo ----- */
     .video-iframe-compo {
       overflow-x: auto;
       -webkit-overflow-scrolling: touch;
     }
     .video-iframe-compo iframe {
       width: 720px !important;
       height: 400px;
       border: none;
       overflow: auto;
     }
     
     /* ----- stock-iframe-compo ----- */
     .stock-iframe-compo {
       overflow-x: auto;
       -webkit-overflow-scrolling: touch;
     }
     .stock-iframe-compo iframe {
       width: 1200px !important;
       height: 800px;
       border: none;
       overflow: auto;
     }
     
     /* ----- grade-iframe-compo ----- */
     .grade-iframe-compo {
       overflow-x: auto;
       -webkit-overflow-scrolling: touch;
     }
     .grade-iframe-compo iframe {
       width: 1200px !important;
       border: none;
       overflow: auto;
     }
     
     /* ----- yellowcard-iframe-compo ----- */
     .yellowcard-iframe-compo {
       overflow-x: auto;
       -webkit-overflow-scrolling: touch;
     }
     .yellowcard-iframe-compo iframe {
       width: 1200px !important;
       border: none;
       overflow: auto;
     }
     
     /* ----- about-layout ----- */
     .about-layout {
       margin-top: 3.33em;
     }
     .about-layout .banner_block {
       position: relative;
       display: block;
       text-decoration: none;
     }
     .about-layout .banner_flex_wrapper {
       position: absolute;
       top: 0;
       left: 0;
       width: 100%;
       min-height: 100%;
       z-index: 2;
     }
     .about-layout .banner_flex_wrapper > .banner_flex_outer {
       display: flex;
       position: absolute;
       top: 0;
       left: 0;
       width: 100%;
       height: 100%;
     }
     .about-layout .banner_flex_wrapper > .banner_flex_outer > .banner_flex_inner {
       display: flex;
       align-items: center;
       width: 100%;
       min-height: 100%;
     }
     .about-layout .banner_caption {
       width: 100%;
       padding: 0 55px;
     }
     .about-layout .banner_title {
       color: #ff0000;
       font-size: 3.6rem;
     }
     .about-layout .banner_title .banner_title_sub {
       padding: 0 0 0 .5em;
       font-size: 2.2rem;
     }
     .about-layout .banner_title .banner_title_sub::after {
       display: inline-block;
       position: relative;
       top: -2px;
       right: 2px;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .about-layout .banner_lead {
       margin-top: .5em;
     }
     
     /* ----- officer-layout ----- */
     .officer-layout {
       margin: 2.8em 0 0 !important;
     }
     .officer-layout + .officer-layout {
       margin-top: 4rem !important;
     }
     .officer-layout .officer_text > dt {
       font-size: 1.5rem;
     }
     .officer-layout .officer_text > dd {
       margin: .5em 0 0;
       padding: 0 14px 0 0;
     }
     .officer-layout .officer_text > dd > .text_kana {
       display: block;
       font-size: 1.2rem;
     }
     .officer-layout .officer_button {
       position: absolute;
       top: 100%;
       left: 0;
       width: 100%;
       min-height: 100%;
       z-index: 2;
     }
     .officer-layout .officer_button > li {
       display: flex;
       position: absolute;
       top: 0;
       left: 0;
       width: 100%;
       height: 100%;
     }
     .officer-layout .officer_button > li > a {
       display: flex;
       align-items: center;
       justify-content: center;
       width: 100%;
       min-height: 100%;
       text-decoration: none;
     }
     .officer-layout .officer_button > li > a > span {
       position: relative;
       padding: 0 0 20px;
       font-size: 1.5rem;
     }
     .officer-layout .officer_button > li > a > span::before {
       position: absolute;
       bottom: 0;
       left: 50%;
       width: 10px;
       height: 10px;
       margin-left: -7px;
       border-top-width: 1px;
       border-top-style: solid;
       border-right-width: 1px;
       border-right-style: solid;
       content: "";
     }
     .officer-layout .officer_button > li.type-close {
       opacity: 0;
     }
     .officer-layout .officer_button > li.type-close > a {
       background-color: #f7f7fa;
       border-top: 2px solid #ff0000;
     }
     .officer-layout .officer_button > li.type-close > a > span::before {
       border-top-color: #ff0000;
       border-right-color: #ff0000;
       -webkit-transform: rotate(-45deg);
       transform: rotate(-45deg);
     }
     .officer-layout .officer_button > li.type-open > a {
       background-color: #444444;
       color: #fff;
     }
     .officer-layout .officer_button > li.type-open > a > span::before {
       border-top-color: #fff;
       border-right-color: #fff;
       -webkit-transform: rotate(135deg);
       transform: rotate(135deg);
     }
     .officer-layout .officer_table {
       width: 100%;
       margin: 1.7em 0 0;
       border-top: 1px solid #dfdfe3;
     }
     .officer-layout .officer_table > * > tr > * {
       padding: 10px 0;
       border-bottom: 1px solid #dfdfe3;
       vertical-align: top;
       text-align: left;
     }
     .officer-layout .officer_table > tbody > tr > th {
       padding-left: 50px;
       padding-right: 40px;
       font-weight: normal;
       white-space: nowrap;
     }
     .officer-layout .officer_table > tbody > tr > td {
       width: 99%;
       padding-right: 50px;
     }
     .officer-layout .officer_column {
       position: relative;
       display: flex;
       flex-wrap: wrap;
       z-index: 2;
     }
     .officer-layout .officer_column > .column_item {
       overflow: hidden;
       width: calc((100% - 35px * 4) / 5);
       margin: 0 35px 0 0;
       background-color: #fff;
       border: 1px solid #dfdfe3;
       box-sizing: border-box;
     }
     /* for IE11 */
     [data-browser="ie11"] .officer-layout .officer_column > .column_item {
       width: calc(((100% - 35px * 4) / 5) - 0.1px);
     }
     /* for Edge */
     [data-browser="edge"] .officer-layout .officer_column > .column_item {
       width: calc(((100% - 35px * 4) / 5) - 0.1px);
     }
     .officer-layout .officer_column > .column_item:last-child {
       margin-right: 0;
     }
     .officer-layout .officer_column_2 > .column_text {
       position: relative;
       padding: 15px;
       box-sizing: border-box;
     }
     .officer-layout .officer_column_2 > .column_text::before {
       position: absolute;
       top: 50%;
       right: 8px;
       width: 10px;
       height: 10px;
       margin-top: -7px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .officer-layout .officer_column_3 {
       display: flex;
       justify-content: center;
     }
     .officer-layout .officer_column_3 > .column_text {
       width: 65.66%;
     }
     .officer-layout .officer_column_3 > .column_image {
       width: 31.33%;
       padding: 0 0 0 36px;
     }
     .officer-layout .officer_toggle {
       overflow: hidden;
       height: 0;
       position: relative;
       margin: -1px calc(((100vw - 100%) / 2) * -1) 0;
       padding: 0 calc((100vw - 100%) / 2);
       z-index: 1;
     }
     .officer-layout .officer_frame {
       margin: 0 calc(((100vw - 100%) / 2) * -1);
       padding: 50px calc((100vw - 100%) / 2);
       background-color: #f7f7fa;
       border: 1px solid #dfdfe3;
       border-right: none;
       border-left: none;
     }
     .officer-layout .officer_frame .officer_text {
       padding: 0 50px;
     }
     .officer-layout .officer_frame .officer_text > dt {
       font-size: 1.8rem;
     }
     .officer-layout .officer_frame .officer_text > dd {
       margin-top: 1em;
       padding-right: 0;
       display: flex;
       align-items: baseline;
     }
     .officer-layout .officer_frame .officer_text > dd > .text_name {
       font-size: 3.2rem;
       line-height: 1.1;
     }
     .officer-layout .officer_frame .officer_text > dd > .text_kana {
       padding: 0 0 0 1.1em;
       font-size: 1.4rem;
     }
     .officer-layout .officer_column > .column_item.is-current {
       border-bottom-color: #f7f7fa;
     }
     .officer-layout .officer_column > .column_item.is-active .officer_button,
     .officer-layout .officer_column > .column_item.is-current .officer_button {
       top: 0;
     }
     .officer-layout .officer_column > .column_item.is-current .officer_button > li.type-open {
       opacity: 0;
       z-index: 1;
     }
     .officer-layout .officer_column > .column_item.is-current .officer_button > li.type-close {
       opacity: 1;
       z-index: 2;
     }
     /* v2 */
     .officer-layout-v2 {
       margin: 2.8em 0 0 !important;
     }
     .officer-layout-v2 table.officer_table {
       width: 100%;
       border-top: 1px solid #dfdfe3;
     }
     .officer-layout-v2 table.officer_table > * > tr > * {
       padding: 20px 30px;
       border-right: 1px solid #dfdfe3;
       border-bottom: 1px solid #dfdfe3;
       vertical-align: top;
       font-size: 1.6rem;
       text-align: left;
     }
     .officer-layout-v2 table.officer_table > * > tr > *:last-child {
       border-right: none;
     }
     .officer-layout-v2 table.officer_table > tbody > tr > th {
       width: 21.66%;
       background-color: #f7f7fa;
       font-weight: 700;
     }
     .officer-layout-v2 table.officer_table > tbody > tr > th.cell-style1 {
       padding-left: 60px;
     }
     .officer-layout-v2 table.officer_table > tbody > tr > th.cell-style2 {
       border-bottom-color: #f7f7fa;
     }
     .officer-layout-v2 table.officer_table > tbody > tr > td.cell-style3 {
       border-bottom-color: #fff;
     }
     .officer-layout-v2 table.officer_table > tbody > tr > th.cell-style2,
     .officer-layout-v2 table.officer_table > tbody > tr > td.cell-style3 {
       padding-bottom: 0;
     }
     
     /* ----- location-compo ----- */
     .location-compo {
       margin-top: 2.5em;
     }
     .location-compo + .location-compo {
       margin-top: -1px;
     }
     .location-compo .location_caption {
     }
     .location-compo .location_caption .location_company {
       font-size: 2.0rem;
       font-weight: 700;
       line-height: 1.25;
     }
     .location-compo + .location-compo .location_caption .location_company {
       margin-top: 1.5em;
     }
     .location-compo .location_caption .location_company > a::after {
       display: inline-block;
       position: relative;
       top: -2px;
       right: 2px;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .location-compo .location_caption .location_company > a[class*="a-"]::after {
       right: 0;
       margin: 0 0 0 8px;
       border: none;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .location-compo .location_caption .location_description {
       margin-top: .5em;
       font-size: 1.6rem;
       line-height: 1.5;
     }
     .location-compo .location_table {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row nowrap;
       flex-flow: row nowrap;
       width: 100%;
       border-top: 1px solid #e0e0e4;
       border-bottom: 1px solid #e0e0e4;
     }
     .location-compo .location_table + .location_table {
       margin-top: -1px;
     }
     .location-compo .location_caption + .location_table {
       margin-top: 1em;
     }
     .location-compo .location_table > .location_table_head {
       width: 21.6%;
       padding: 25px;
       border-right: 1px solid #e0e0e4;
       background-color: #f7f7fa;
     }
     .location-compo .location_table > .location_table_data {
       display: table;
       table-layout: fixed;
       width: calc(100% - 21.6%);
       background-color: #fff;
     }
     .location-compo .location_table .location_title {
       font-size: 1.6rem;
       font-weight: 700;
     }
     .location-compo .location_table .location_info {
       display: table-row;
       width: 100%;
     }
     .location-compo .location_table .location_info > [class*="location_info_"] {
       display: table-cell;
       padding: 25px;
       text-align: left;
       vertical-align: middle;
     }
     .location-compo .location_table .location_info + .location_info > [class*="location_info_"] {
       border-top: 1px solid #e0e0e4;
     }
     .location-compo .location_table .location_info > [class*="location_info_"] + [class*="location_info_"] {
       border-left: 1px solid #e0e0e4;
     }
     .location-compo .location_table .location_info > [class*="location_info_"] > *:first-child,
     .location-compo .location_table .location_info > [class*="location_info_"] > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .location-compo .location_table .location_info > .location_info_place {
       width: 68%;
       padding-left: 40px;
     }
     .location-compo .location_table .location_info > .location_info_contact {
     }
     .location-compo .location_table .location_name {
       font-size: 1.6rem;
       font-weight: 700;
       line-height: 1.5;
     }
     .location-compo .location_table .location_address {
       margin-top: .5em;
       font-size: 1.6rem;
       line-height: 1.5;
     }
     .location-compo .location_table .location_links {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row wrap;
       flex-flow: row wrap;
       margin: .75em -20px -.75em 0;
     }
     .location-compo .location_table .location_links > li {
       margin-right: 20px;
       margin-bottom: .75em;
     }
     .location-compo .location_table .location_links > li > a {
       display: inline-block;
       position: relative;
       min-width: 160px;
       max-width: 100%;
       padding: 8px 12px;
       border: 1px solid #dfdfe3;
       background-color: #fff;
       text-align: center;
       text-decoration: none;
     }
     .location-compo .location_table .location_links > li > a:hover {
       border-color: #fff;
       box-shadow: 0 5px 10px 2px rgba(0,0,0,.15);
     }
     .location-compo .location_table .location_links > li > a > .location_links_label {
       display: inline-block;
       position: relative;
       padding: 0 25px;
     }
     .location-compo .location_table .location_links > li > a.a-map > .location_links_label {
       padding-left: 5px;
     }
     .location-compo .location_table .location_links > li > a > .location_links_label::after {
       display: inline-block;
       position: absolute;
       top: 50%;
       right: 3px;
       width: 10px;
       height: 10px;
       margin: -5px 0 0 0;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .location-compo .location_table .location_links > li > a[class*="a-"] > .location_links_label::after {
       right: 0;
       border: none;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .location-compo .location_table .location_links > li > a.a-map > .location_links_label::after {
       margin-top: -11px;
     }
     .location-compo .location_table .location_tel {
       font-size: 1.6rem;
       line-height: 1.5;
     }
     
     /* ----- philosophy-compo ----- */
     .philosophy-compo {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row nowrap;
       flex-flow: row nowrap;
       margin-top: 2.5em;
     }
     .philosophy-compo > .philosophy_item {
       width: calc((100% - 72px) / 3);
       margin-left: 36px;
       padding-top: 30px;
     }
     /* for IE11 */
     [data-browser="ie11"] .philosophy-compo > .philosophy_item { width: calc(((100% -  72px) / 3) - 0.1px); }
     /* for Edge */
     [data-browser="edge"] .philosophy-compo > .philosophy_item { width: calc(((100% -  72px) / 3) - 0.1px); }
     .philosophy-compo > .philosophy_item:nth-child(1) { order: 2; padding-top: 0; }
     .philosophy-compo > .philosophy_item:nth-child(2) { order: 1; margin-left: 0; }
     .philosophy-compo > .philosophy_item:nth-child(3) { order: 2; }
     .philosophy-compo > .philosophy_item > *:first-child,
     .philosophy-compo > .philosophy_item > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .philosophy-compo > .philosophy_item .philosophy_heading {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-direction: column;
       flex-direction: column;
       -webkit-justify-content: center;
       justify-content: center;
       -webkit-align-items: center;
       align-items: center;
       width: 100%;
       height: 175px;
       padding: 30px;
       border: 1px solid #ff0000;
       background-color: #fff;
       text-align: center;
     }
     .philosophy-compo > .philosophy_item:nth-child(1) .philosophy_heading {
       position: relative;
       z-index: 2;
       width: calc(100% + 112px);
       height: 185px;
       margin: 0 -56px;
     }
     .philosophy-compo > .philosophy_item .philosophy_heading > *:first-child,
     .philosophy-compo > .philosophy_item .philosophy_heading > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .philosophy-compo > .philosophy_item .philosophy_statement {
       color: #ff0000;
       font-size: 2.2rem;
     }
     .philosophy-compo > .philosophy_item .philosophy_statement > strong {
       font-weight: 500;
     }
     .philosophy-compo > .philosophy_item .philosophy_statement_2 {
       margin-top: 1em;
       color: #ff0000;
     }
     .philosophy-compo > .philosophy_item .philosophy_statement_2 > strong {
       font-weight: 500;
     }
     .philosophy-compo > .philosophy_item .philosophy_detail {
       margin-top: 25px;
     }
     .philosophy-compo > .philosophy_item:nth-child(1) .philosophy_detail {
       margin-top: 45px;
     }
     .philosophy-compo > .philosophy_item .philosophy_detail > *:first-child,
     .philosophy-compo > .philosophy_item .philosophy_detail > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .philosophy-compo > .philosophy_item .philosophy_detail .philosophy_discription {
       font-size: 1.5rem;
     }
     .philosophy-compo > .philosophy_item .philosophy_detail [class*="list-order"] > li {
       font-size: 1.5rem;
     }
     .philosophy-compo > .philosophy_item .philosophy_detail [class*="list-order"] > li > .list_mark {
       font-weight: 400;
     }
     
     /* ----- products-layout ----- */
     .products-layout {
       margin: 30px 0 0;
     }
     .products-layout .products_link {
       display: flex;
       flex-wrap: wrap;
     }
     .products-layout .products_link > li {
       display: flex;
       width: calc((100% - 36px * 3) / 4);
       margin-top: 30px;
       margin-left: 36px;
       box-sizing: border-box;
       background-color: #fff;
       border: 1px solid #dfdfe3;
     }
     .products-layout .products_link > li:nth-child(-n+4) {
       margin-top: 0 !important;
     }
     .products-layout .products_link > li:nth-child(4n+1) {
       margin-left: 0 !important;
     }
     .products-layout .products_link > li > .products_block {
       display: flex;
       width: 100%;
     }
     .products-layout .products_link > li > a.products_block {
       position: relative;
     }
     .products-layout .products_link > li > a.products_block::before {
       content: "";
       position: absolute;
       right: 20px;
       top: 50%;
       width: 10px;
       height: 10px;
       margin-top: -8px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
     }
     .products-layout .products_link > li > a.products_block:hover {
       color: #ff0000;
     }
     .products-layout .products_link > li > .products_block > .products_icon,
     .products-layout .products_link > li > .products_block > .products_label {
       display: flex;
       align-items: center;
     }
     .products-layout .products_link > li > .products_block > .products_icon {
       width: 80px;
       background-color: #f7f7fa;
     }
     .products-layout .products_link > li > .products_block > .products_icon img {
       flex-shrink: 0;
     }
     .products-layout .products_link > li > .products_block > .products_label {
       flex: 1;
       padding: 10px 40px 10px 20px;
       font-size: 2.0rem;
     }
     
     /* ----- products-search-layout ----- */
     .products-search-layout {
       margin: 2.5em 0 0;
       border: 1px solid #dfdfe3;
     }
     .products-search-layout:hover,
     .products-search-layout:hover .search_frame {
       border-color: #bbb;
     }
     .products-search-layout .search_heading {
       position: relative;
       padding: 15px 60px 15px 20px;
       font-size: 2.5rem;
       font-weight: 700;
       cursor: pointer;
     }
     .products-search-layout .search_heading::before,
     .products-search-layout .search_heading::after {
       position: absolute;
       top: 50%;
       right: 20px;
       width: 20px;
       height: 2px;
       margin-top: -1px;
       background-color: #ff0000;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
       content: "";
     }
     .products-search-layout .search_heading::before {
       -webkit-transform: rotate(90deg);
       transform: rotate(90deg);
     }
     .products-search-layout .search_heading.is-active::before {
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .products-search-layout .search_heading:hover {
       border-color: #bbb;
     }
     .products-search-layout .search_frame {
       padding: 25px 20px 20px;
       border-top: 1px solid #dfdfe3;
     }
     .products-search-layout .search_frame > *:first-child {
       margin-top: 0;
     }
     .products-search-layout .search_column {
       display: flex;
       flex-wrap: wrap;
       justify-content: space-between;
       margin: 1.5em 0 0;
     }
     .products-search-layout .search_column > * > *:first-child {
       margin-top: 0;
     }
     .products-search-layout .search_column > .column_link {
       padding: 0 0 0 36px;
       white-space: nowrap;
     }
     .products-search-layout .search_column > .column_link .link-text {
       display: flex;
       flex-wrap: wrap;
       justify-content: flex-end;
     }
     .products-search-layout .search_column > .column_link .link-text > li {
       margin-top: 0;
     }
     .products-search-layout .search_column > .column_link .link-text > li + li {
       margin-left: 40px;
     }
     .products-search-layout .products-layout {
       margin-top: 25px;
     }
     .products-search-layout .products-layout .products_link > li {
       width: calc((100% - 10px * 3) / 4);
       margin-top: 10px;
       margin-left: 10px;
     }
     .products-search-layout .products-layout .products_link > li > .products_block > .products_icon {
       width: 60px;
     }
     .products-search-layout .products-layout .products_link > li > .products_block > .products_label {
       font-size: 1.6rem;
     }
     /* v2 */
     .products-search-layout-v2 {
       margin: 2.5em 0 0;
     }
     .products-search-layout-v2 .search_text {
       display: flex;
       flex-wrap: wrap;
     }
     .products-search-layout-v2 .search_text > dt {
       white-space: nowrap;
     }
     .products-search-layout-v2 .search_text > dt::after {
       content: "：";
     }
     .products-search-layout-v2 .search_text > dd {
       flex: 1;
     }
     .products-search-layout-v2 .search_text > dd > span {
       color: #ff0000;
     }
     .products-search-layout-v2 .search_text_2 > span {
       font-size: 3.0rem;
       font-weight: 700;
     }
     .products-search-layout-v2 .search_text_2 > span > em {
       font-style: normal;
     }
     
     /* ----- ir-layout ----- */
     .ir-layout .ir_column {
       display: flex;
       align-items: center;
       background-color: #f7f7fa;
     }
     .ir-layout .ir_column > .column_button {
       width: 77.25%;
     }
     .ir-layout .ir_column > .column_link {
       flex: 1;
       display: flex;
       justify-content: center;
       padding: 0 10px;
     }
     [data-browser="ie11"] .ir-layout .ir_column > .column_link > .ir_inner {
       width: 100%;
     }
     .ir-layout .ir_heading {
       position: absolute;
       top: 15.72%;
       left: 4.2%;
       font-size: 2.2rem;
       line-height: 1.1;
       z-index: 2;
     }
     .ir-layout a.ir_button .ir_heading::after {
       position: relative;
       top: -2px;
       right: 2px;
       display: inline-block;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .ir-layout .ir_heading_2 .heading_title {
       font-size: 2.2rem;
     }
     .ir-layout .ir_heading_2 .heading_date {
       margin: .4rem 0 0;
       font-size: 1.6rem;
     }
     .ir-layout .ir_text {
       margin: .7em 0 0;
     }
     .ir-layout .ir_text > dl {
       display: flex;
       align-items: baseline;
     }
     .ir-layout .ir_text > dl > dt::after {
       content: "：";
     }
     .ir-layout .ir_text > dl.type-recent > dd {
       font-size: 3.6rem;
       line-height: 1;
     }
     .ir-layout .ir_text > dl.type-change {
       margin: .5em 0 0;
       align-items: center;
     }
     .ir-layout .ir_text > dl.type-change > dd {
       font-size: 1.7rem;
       line-height: 1.2;
       margin: 0 0 -.8em 0;
     }
     .ir-layout .ir_text > dl.type-change > dd > span {
       display: block;
       color: #ff0000;
       font-size: 2.0rem;
     }
     .ir-layout .ir_text > dl.type-change > dd > span > em {
       font-size: 3.6rem;
       font-style: normal;
       line-height: 1;
     }
     .ir-layout .ir_image {
       background-color: #fff;
       border: 1px solid #ddd;
     }
     .ir-layout .ir_button {
       position: relative;
       display: block;
     }
     .ir-layout a.ir_button:hover .ir_heading {
       text-decoration: underline;
     }
     .ir-layout .ir_link {
       margin: 2em 0 0;
       text-align: right;
     }
     /* v2 */
     .ir-layout-v2 {
       margin: 3.3em 0 0;
     }
     .ir-layout-v2 .ir_column {
       display: flex;
       justify-content: space-between;
     }
     .ir-layout-v2 .ir_column > .column_link {
       width: 65.66%;
     }
     .ir-layout-v2 .ir_column > .column_button {
       width: 31.33%;
       box-sizing: border-box;
       border: 1px solid #dfdfe3;
       border-top: none;
     }
     .ir-layout-v2 .ir_outer {
       margin: 0 -1px;
       padding: 0 0 20px;
       background-color: #fff;
     }
     .ir-layout-v2 .ir_heading {
       display: flex;
       align-items: center;
     }
     .ir-layout-v2 .ir_heading > .heading_title {
       flex: 1;
       font-size: 2.2rem;
     }
     .ir-layout-v2 .ir_heading > .heading_link {
       display: flex;
       align-items: center;
       justify-content: flex-end;
       white-space: nowrap;
     }
     .ir-layout-v2 .ir_heading > .heading_link > li {
       margin-left: 30px;
     }
     .ir-layout-v2 .ir_heading > .heading_link > li > a.a-rss::before {
       position: relative;
       top: -2px;
       margin: 0 8px 0 0;
     }
     .ir-layout-v2 .ir_heading > .heading_link > li > a.a-link::after {
       position: relative;
       top: -2px;
       right: 2px;
       display: inline-block;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .ir-layout-v2 .ir_news .news-compo {
       margin-top: 1em;
     }
     .ir-layout-v2 .ir_news .news-compo .block {
       padding-top: 20px;
       padding-bottom: 20px;
     }
     .ir-layout-v2 .ir_news .news-compo .news_detail .news_title {
       margin-top: .2em;
     }
     .ir-layout-v2 .ir_button > li > a {
       display: block;
       padding: 50px 15px;
       background-color: #fff;
       border: 2px solid #ff0000;
       font-weight: 700;
       text-align: center;
       text-decoration: none;
     }
     .ir-layout-v2 .ir_button > li > a:hover {
       box-shadow: 0 5px 10px 2px rgba(0,0,0,.15);
     }
     .ir-layout-v2 .ir_button > li > a > span {
       position: relative;
       display: inline-block;
       padding: 55px 0 0;
     }
     .ir-layout-v2 .ir_button > li > a > span::before {
       content: "";
       position: absolute;
       top: 0;
       left: 50%;
       width: 51px;
       height: 39px;
       margin-left: -25px;
       background-image: url(/ir/img/ir_ic01.png);
       background-repeat: no-repeat;
       background-position: 50% 0;
       background-size: 51px 39px;
     }
     .ir-layout-v2 .ir_frame {
       position: relative;
       border-top: 1px solid #dfdfe3;
       padding: 35px 30px;
     }
     .ir-layout-v2 .ir_frame::before,
     .ir-layout-v2 .ir_frame::after {
       position: absolute;
       bottom: 100%;
       left: 50%;
       margin-left: -10px;
       width: 0;
       height: 0;
       border-style: solid;
       border-width: 0 10px 16px 10px;
       border-color: transparent;
       content: "";
     }
     .ir-layout-v2 .ir_frame::before {
       border-bottom-color: #dfdfe3;
     }
     .ir-layout-v2 .ir_frame::after {
       margin-bottom: -2px;
       border-bottom-color: #fff;
     }
     .ir-layout-v2 .ir_list {
       margin: 1em 0 0;
     }
     .ir-layout-v2 .ir_list > li {
       position: relative;
       margin: .5em 0 0;
       padding: 0 0 0 18px;
     }
     .ir-layout-v2 .ir_list > li:first-child {
       margin-top: 0;
     }
     .ir-layout-v2 .ir_list > li:before {
       position: absolute;
       top: .5em;
       left: 0;
       width: 6px;
       height: 6px;
       background-color: #999;
       border-radius: 50%;
       content: "";
     }
     /* v3 */
     .ir-layout-v3 {
       margin: 3.3em 0 0;
     }
     .ir-layout-v3 .ir_column {
       display: flex;
       justify-content: space-between;
     }
     .ir-layout-v3 .ir_column > [class*="column_"] > *:first-child,
     .ir-layout-v3 .ir_column > [class*="column_"] > *:first-child > [class*="heading-lv"] {
       margin-top: 0 !important;
     }
     .ir-layout-v3 .ir_column > .column_link {
       width: 74.25%;
     }
     .ir-layout-v3 .ir_column > .column_button {
       width: 22.75%;
     }
     .ir-layout-v3 .ir_column_2 {
       display: flex;
       flex-wrap: wrap;
     }
     .ir-layout-v3 .ir_column_2 > .column_item {
       width: calc((100% - 36px * 2) / 3 - 0.1px);
       margin: 40px 0 0 36px;
     }
     .ir-layout-v3 .ir_column_2 > .column_item:nth-child(-n+3) {
       margin-top: 0;
     }
     .ir-layout-v3 .ir_column_2 > .column_item:nth-child(3n+1) {
       margin-left: 0;
     }
     .ir-layout-v3 .ir_column_3 {
       position: relative;
       border: 1px solid #dfdfe3;
       background-color: #fff;
       overflow: hidden;
     }
     .ir-layout-v3 .ir_column_3 > .column_heading {
       position: absolute;
       bottom: 0;
       left: 0;
       width: 100%;
       background-color: rgba(255,255,255,.85);
     }
     .ir-layout-v3 .ir_heading {
       position: relative;
       display: flex;
       align-items: center;
       height: calc(2.4em + 5px * 2);
       padding: 5px 30px;
       font-size: 2.0rem;
       font-weight: 500;
       line-height: 1.2;
     }
     .ir-layout-v3 .ir_heading .heading_inner {
       width: 100%;
     }
     .ir-layout-v3 .ir_heading .heading_sub {
       font-size: 1.6rem;
     }
     .ir-layout-v3 .ir_heading_2 {
       margin: 3em 0 0;
     }
     .ir-layout-v3 .ir_list,
     .ir-layout-v3 .ir_list > li > ul {
       overflow: hidden;
       display: flex;
       flex-wrap: wrap;
       align-items: center;
       margin: .5em -30px 0 0;
     }
     .ir-layout-v3 .ir_list > li,
     .ir-layout-v3 .ir_list > li > ul > li {
       margin: .5em 30px 0 0;
     }
     .ir-layout-v3 .ir_list > li:last-child,
     .ir-layout-v3 .ir_list > li > ul > li:last-child {
       margin-right: 0;
     }
     .ir-layout-v3 .ir_list > li > ul,
     .ir-layout-v3 .ir_list > li > ul > li {
       margin-top: 0;
     }
     .ir-layout-v3 .ir_block {
       display: block;
     }
     .ir-layout-v3 a.ir_block:hover .ir_heading {
       color: #ff0000;
       text-decoration: underline;
     }
     .ir-layout-v3 a.ir_block .ir_heading::before {
       position: absolute;
       top: 50%;
       right: 16px;
       width: 10px;
       height: 10px;
       margin-top: -5px;
       margin-right: 2px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .ir-layout-v3 .ir_link {
       margin: 1.5em 0 0;
     }
     .ir-layout-v3 .ir_link > li {
       margin: .8em 0 0;
       font-size: 1.6rem;
     }
     .ir-layout-v3 .ir_link > li:first-child {
       margin-top: 0;
     }
     .ir-layout-v3 .ir_link > li > a {
       position: relative;
       display: block;
       padding: 0 35px 0 0;
     }
     .ir-layout-v3 .ir_link > li > a::before {
       position: absolute;
       top: .5em;
       right: 15px;
       width: 10px;
       height: 10px;
       margin-top: 1px;
       margin-right: 2px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .ir-layout-v3 .ir_link > li > a[class*="a-"]::before {
       border: none;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .ir-layout-v3 .ir_link > li > a.a-blank::before {
       top: .4em;
     }
     .ir-layout-v3 .ir_link > li > a.a-pdf::before {
       top: .2em;
     }
     .ir-layout-v3 .ir_link_2 {
       background-color: #fff;
       border-bottom: 1px solid #eee;
     }
     .ir-layout-v3 .ir_link_2 > li {
       border-top: 1px solid #eee;
     }
     .ir-layout-v3 .ir_link_2 > li > a {
       position: relative;
       display: block;
     }
     .ir-layout-v3 .ir_link_2 > li > a::before {
       position: absolute;
       top: 50%;
       right: 12px;
       width: 10px;
       height: 10px;
       margin-top: -5px;
       margin-right: 2px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .ir-layout-v3 .ir_link_2 > li > a[class*="a-"]::before {
       border: none;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .ir-layout-v3 .ir_link_2 > li > a.a-pdf::before {
       margin-top: -8px;
     }
     .ir-layout-v3 .ir_link_2 > li > a:hover {
       color: #ff0000;
     }
     .ir-layout-v3 .ir_link_2 > li > a > .link_label {
       display: block;
       padding: 20px 30px 20px 55px;
     }
     .ir-layout-v3 .ir_link_2 > li[class*="type"] > a > .link_label::before {
       content: "";
       position: absolute;
       top: 50%;
       background-repeat: no-repeat;
       background-position: 0 0;
       background-size: 100% 100%;
     }
     .ir-layout-v3 .ir_link_2 > li.type-calendar > a > .link_label::before {
       left: 4px;
       width: 32px;
       height: 29px;
       margin-top: -15px;
       background-image: url(/ir/img/ir_button_ic01.png);
     }
     .ir-layout-v3 .ir_link_2 > li.type-report > a > .link_label::before {
       left: 6px;
       width: 27px;
       height: 32px;
       margin-top: -16px;
       background-image: url(/ir/img/ir_button_ic02.png);
     }
     .ir-layout-v3 .ir_link_2 > li.type-disclosure > a > .link_label::before {
       left: 4px;
       width: 32px;
       height: 32px;
       margin-top: -16px;
       background-image: url(/ir/img/ir_button_ic03.png);
     }
     .ir-layout-v3 .ir_link_2 > li.type-mail > a > .link_label::before {
       left: 4px;
       width: 32px;
       height: 23px;
       margin-top: -12px;
       background-image: url(/ir/img/ir_button_ic04.png);
     }
     .ir-layout-v3 .ir_link_2 > li.type-sitemap > a > .link_label::before {
       left: 3px;
       width: 34px;
       height: 29px;
       margin-top: -15px;
       background-image: url(/ir/img/ir_button_ic05.png);
     }
     .ir-layout-v3 .ir_link_2 > li.type-faq > a > .link_label::before {
       left: 11px;
       width: 18px;
       height: 27px;
       margin-top: -14px;
       background-image: url(/ir/img/ir_button_ic06.png);
     }
     .ir-layout-v3 .ir_link_2 > li.type-glossary > a > .link_label::before {
       left: 5px;
       width: 29px;
       height: 34px;
       margin-top: -17px;
       background-image: url(/ir/img/ir_button_ic07.png);
     }
     .ir-layout-v3 .ir_link_2 > li.type-questionnaire > a > .link_label::before {
       left: 7px;
       width: 36px;
       height: 29px;
       margin-top: -15px;
       background-image: url(/ir/img/ir_button_ic08.png);
     }
     .ir-layout-v3 .ir_link_2 > li.type-risk > a > .link_label::before {
       left: 4px;
       width: 31px;
       height: 28px;
       margin-top: -14px;
       background-image: url(/ir/img/ir_button_ic09.png);
     }
     .ir-layout-v3 .ir_link_2 > li.type-disclaimer > a > .link_label::before {
       left: 5px;
       width: 29px;
       height: 23px;
       margin-top: -12px;
       background-image: url(/ir/img/ir_button_ic10.png);
     }
     .ir-layout-v3 .ir_link_2 > li.type-csr > a > .link_label::before {
       left: 4px;
       width: 31px;
       height: 27px;
       margin-top: -14px;
       background-image: url(/ir/img/ir_button_ic11.png);
     }
     .ir-layout-v3 .ir_link_2 > li.type-session > a > .link_label::before {
       left: 1px;
       width: 38px;
       height: 28px;
       margin-top: -14px;
       background-image: url(/ir/img/ir_button_ic12.png);
     }
     
     /* ----- individual-layout ----- */
     .individual-layout {
       margin: 1.7em 0 0;
     }
     .individual-layout .individual_column {
       display: flex;
       align-items: center;
     }
     .individual-layout .individual_column.ai_baseline {
       align-items: flex-start;
     }
     .individual-layout .individual_column > *:nth-child(1) {
       order: 1;
     }
     .individual-layout .individual_column > *:nth-child(2) {
       order: 0;
     }
     .individual-layout .individual_column > *:nth-child(3) {
       order: 2;
     }
     .individual-layout .individual_column > .column_image {
       width: 54.5%;
       padding: 0 36px;
       box-sizing: border-box;
     }
     .individual-layout .individual_column > .column_text {
       width: 22.75%;
     }
     .individual-layout .individual_text > dt {
       padding: 0 0 .7em;
       font-size: 2.0rem;
       border-bottom-width: 1px;
       border-bottom-style: solid;
     }
     .individual-layout .individual_text > dd {
       margin: .9em 0 0;
       font-size: 1.6rem;
     }
     .individual-layout .individual_text.type-roe > dt {
       color: #5b5450;
       border-bottom-color: #5b5450;
     }
     .individual-layout .individual_text.type-roic > dt {
       color: #5b5450;
       border-bottom-color: #5b5450;
       margin-top: 280px;
     }
     .individual-layout .individual_text.type-ebitda > dt {
       color: #0022a1;
       border-bottom-color: #0022a1;
     }
     /* v2 */
     .individual-layout-v2 {
       margin: 2.2em 0 0;
     }
     .individual-layout-v2 .individual_text {
       text-align: center;
     }
     .individual-layout-v2 .individual_column + .individual_text {
       margin-top: 1em;
     }
     .individual-layout-v2 .individual_column {
       display: flex;
       justify-content: space-between;
       margin: 1.1em 0 0;
     }
     .individual-layout-v2 .individual_column > .column_item {
       width: calc((100% - 36px) / 2);
       box-sizing: border-box;
       background-color: #fff;
       border-width: 1px;
       border-style: solid;
     }
     .individual-layout-v2 .individual_heading {
       padding: 15px 10px;
       color: #fff;
       font-size: 2.8rem;
       font-weight: 700;
       line-height: 1.1;
       text-align: center;
     }
     .individual-layout-v2 .individual_inner {
       padding: 25px 20px 20px;
     }
     .individual-layout-v2 .individual_arrow,
     .individual-layout-v2 .individual_frame {
       display: flex;
       align-items: center;
       justify-content: center;
       font-size: 2.0rem;
       line-height: 1.4;
       text-align: center;
     }
     .individual-layout-v2 .individual_arrow {
       position: relative;
       padding: 0 0 40px;
     }
     .individual-layout-v2 .individual_frame {
       margin: 12px 0 0;
     }
     .individual-layout-v2 .individual_arrow::after {
       position: absolute;
       bottom: 0;
       left: 50%;
       width: 30px;
       height: 28px;
       margin-left: -15px;
       background-repeat: no-repeat;
       background-position: 0 0;
       content: "";
     }
     .individual-layout-v2 .individual_image {
       margin: 1em 0 0;
       display: flex;
       justify-content: center;
     }
     .individual-layout-v2 .individual_image > figure {
       margin: 0 7px;
     }
     .individual-layout-v2 .individual_column > .column_item.type-green {
       border-color: #1abc9c;
     }
     .individual-layout-v2 .individual_column > .column_item.type-green .individual_heading {
       background-color: #1abc9c;
     }
     .individual-layout-v2 .individual_column > .column_item.type-green .individual_arrow::after {
       background-image: url(/ir/individual/img/individual_ex01.png);
     }
     .individual-layout-v2 .individual_column > .column_item.type-blue {
       border-color: #3498db;
     }
     .individual-layout-v2 .individual_column > .column_item.type-blue .individual_heading {
       background-color: #3498db;
     }
     .individual-layout-v2 .individual_column > .column_item.type-blue .individual_arrow::after {
       background-image: url(/ir/individual/img/individual_ex02.png);
     }
     
     /* ----- innovation-list ----- */
     .innovation-list {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row nowrap;
       flex-flow: row nowrap;
     }
     .innovation-list > li {
       position: relative;
       width: calc((100% - 100px) / 2);
       margin-left: 40px;
       font-size: 2.0rem;
       text-align: center;
     }
     .innovation-list > li:nth-child(3n+1) {
       margin-left: 0;
     }
     .innovation-list > li .is-highlight {
       color: #ff0000;
       font-size: 120%;
       font-weight: 400;
     }
     .innovation-list > li + li::before {
       position: absolute;
       top: 50%;
       left: -24px;
       width: 1px;
       height: 66px;
       margin: -33px 0 0 0;
       background-color: #e0e0e0;
       -webkit-transform: rotate(30deg);
       transform: rotate(30deg);
       content: "";
     }
     
     /* ----- library-item ----- */
     .library-item {
       display: -webkit-flex;
       display: flex;
       border-bottom: 1px solid #dfdfe3;
     }
     .library-item .library_item_heading {
       display: -webkit-flex;
       display: flex;
       -webkit-box-align: center;
       align-items: center;
       position: relative;
       width: 22%;
       padding: 0 2rem;
       background: #f7f7fa;
       font-size: 1.6rem;
       font-weight: 700;
     }
     .library-item .library_item_detail {
       width: 78%;
     }
     .library-item .library_table_column {
       display: -webkit-flex;
       display: flex;
       -webkit-box-align: center;
       align-items: center;
       width: 100%;
       text-align: center;
     }
     .library-item .library_table_column[data-count-pc="1"] {
       -webkit-box-pack: center;
       justify-content: center;
       border-left: 1px solid #dfdfe3;
     }
     .library-item .library_table_column .library_table_data {
       min-height: 70px;
     }
     .library-item .library_table_column[data-count-pc="4"] .library_table_data {
       width: 25%;
       border-left: 1px solid #dfdfe3;
     }
     .library-item .library_table_column[data-count-pc="1"] .library_table_data {
       width: 12.9%;
       border-left: none;
     }
     .library-item .library_table_column .library_table_data a {
       position: relative;
       min-height: 70px;
       overflow: hidden;
     }
     .library-item .library_table_data .data_title {
       display: none;
     }
     .library-item .library_table_data a .data_icon {
       position: absolute;
       top: 50%;
       left: 50%;
       text-indent: 100%;
       white-space: nowrap;
       overflow: hidden;
       transform: translate(-50%,-50%);
     }
     
     /* ----- csr-index-compo ----- */
     .csr-index-compo {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row nowrap;
       flex-flow: row nowrap;
       width: 100%;
     }
     .csr-index-compo > .index_banner {
       display: -webkit-flex;
       display: flex;
     }
     .csr-index-compo > .index_banner.type-message {
       width: 64.16%;
     }
     [data-browser="edge"] .csr-index-compo > .index_banner.type-message {
       width: 64%;
     }
     .csr-index-compo > .index_banner.type-overview {
       -webkit-flex: 1;
       flex: 1;
     }
     .csr-index-compo > .index_banner > .block {
       position: relative;
       width: 100%;
     }
     .csr-index-compo > .index_banner.type-message > .block {
       border: 1px solid #ddd;;
       background-color: #f3f3ec;
     }
     .csr-index-compo > .index_banner.type-overview > .block {
       background-color: #f7f7fa;
     }
     .csr-index-compo > .index_banner > .block .index_heading {
       position: absolute;
       top: 13%;
       left: 0;
       width: 100%;
       font-size: 2.2rem;
       line-height: 1.6;
     }
     .csr-index-compo > .index_banner > .block .index_heading::after {
       display: inline-block;
       position: relative;
       top: -2px;
       right: 2px;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .csr-index-compo > .index_banner.type-message > .block .index_heading {
       padding: 0 5%;
     }
     .csr-index-compo > .index_banner.type-overview > .block .index_heading {
       padding: 0 9.4%;
     }
     .csr-index-compo > .index_banner.type-message > .block .index_image {
       padding: 0 5% 0 39.4%;
     }
     .csr-index-compo > .index_banner.type-overview > .block .index_image {
       position: absolute;
       top: 48%;
       left: 0;
       width: 100%;
       padding: 0 9.4%;
       text-align: center;
     }
     .csr-index-compo > .index_banner > a.block:hover .index_heading {
       text-decoration: underline;
     }
     
     /* ----- csr-news-compo ----- */
     .csr-news-compo {
       margin-top: 2.5em;
     }
     .csr-news-compo .news_heading {
       display: -webkit-flex;
       display: flex;
       -webkit-align-items: center;
       align-items: center;
     }
     .csr-news-compo .news_heading > .news_heading_title {
       -webkit-flex: 1;
       flex: 1;
       font-size: 2.2rem;
     }
     .csr-news-compo .news_heading > .news_heading_link {
       display: -webkit-flex;
       display: flex;
       -webkit-justify-content: flex-end;
       justify-content: flex-end;
       -webkit-align-items: center;
       align-items: center;
       white-space: nowrap;
     }
     .csr-news-compo .news_heading > .news_heading_link > li {
       margin-left: 30px;
     }
     .csr-news-compo .news_heading > .news_heading_link > li > a.a-rss::before {
       position: relative;
       top: -2px;
       margin: 0 8px 0 0;
     }
     .csr-news-compo .news_heading > .news_heading_link > li > a.a-link::after {
       position: relative;
       top: -2px;
       right: 2px;
       display: inline-block;
       width: 10px;
       height: 10px;
       margin: 0 0 0 10px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       vertical-align: middle;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .csr-news-compo .news_latest .news-compo {
       margin-top: 1em;
     }
     .csr-news-compo .news_latest .news-compo .block {
       padding-top: 20px;
       padding-bottom: 20px;
     }
     .csr-news-compo .news_latest .news-compo .news_detail .news_title {
       margin-top: .2em;
     }
     
     /* ----- awards-compo ----- */
     .awards-compo {
       margin-top: 3em;
       overflow: hidden;
     }
     .awards-compo .awards_list {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row wrap;
       flex-flow: row wrap;
       align-items: center;
       margin: .5em -30px 0 0;
       overflow: hidden;
     }
     .awards-compo .awards_list > li {
       margin: .5em 30px 0 0;
     }
     .awards-compo .awards_list > li:last-child {
       margin-right: 0;
     }
     .awards-compo .awards_list_2 {
       display: -webkit-flex;
       display: flex;
       -webkit-flex-flow: row wrap;
       flex-flow: row wrap;
       align-items: center;
       margin: 0 -30px 0 0;
       overflow: hidden;
     }
     .awards-compo .awards_list_2 > li {
       margin: 0 30px 0 0;
     }
     
     /* ----- contact-layout ----- */
     .contact-layout {
       margin: 2.8em 0 0 !important;
     }
     .contact-layout .contact_button {
       display: flex;
       flex-wrap: wrap;
     }
     .contact-layout .contact_button > li {
       display: flex;
       width: calc((100% - 36px * 2) / 3 - 0.1px);
       margin: 30px 0 0 36px;
     }
     .contact-layout .contact_button > li:nth-child(-n+3) {
       margin-top: 0;
     }
     .contact-layout .contact_button > li:nth-child(3n+1) {
       margin-left: 0;
     }
     .contact-layout .contact_button > li > a {
       position: relative;
       display: flex;
       align-items: center;
       width: 100%;
       padding: 34px 52px 34px 22px;
       box-sizing: border-box;
       background-color: #fff;
       border: 1px solid #dfdfe3;
       text-decoration: none;
     }
     .contact-layout .contact_button > li > a::before {
       position: absolute;
       top: 50%;
       right: 20px;
       width: 10px;
       height: 10px;
       margin-top: -5px;
       margin-right: 2px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
       content: "";
     }
     .contact-layout .contact_button > li > a[class*="a-"]::before {
       border: none;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .contact-layout .contact_button > li > a.a-pdf::before {
       margin-top: -8px;
     }
     .contact-layout .contact_button > li > a:hover {
       box-shadow: 0 5px 10px 2px rgba(0,0,0,.15);
       border-color: #fff;
     }
     .contact-layout .contact_button > li > a > span.button_icon {
       width: 31.66%;
     }
     .contact-layout .contact_button > li > a > span.button_label {
       flex: 1;
       padding: 0 0 0 15px;
     }
     
     /* ----- information-compo ----- */
     .information-compo {
       width: 100vw;
       margin: 4em 0 0 calc(50% - 50vw);
       background-color: #f7f7fa;
     }
     .information-compo .information_inner {
       padding: 120px 60px 170px;
     }
     .information-compo .information_inner_2 {
       position: relative;
       padding: 0 80px 25px;
     }
     .information-compo .information_heading {
       font-size: 6.0rem;
       line-height: 1.1;
       text-align: center;
     }
     .information-compo .information_tab {
       max-width: 1200px;
       margin: 70px auto 0;
     }
     .information-compo .information_tab .information_tab_list {
       display: flex;
       align-items: flex-end;
       justify-content: space-between;
     }
     .information-compo .information_tab .information_tab_list > li {
       width: calc((100% - 30px * 2) / 3);
     }
     .information-compo .information_tab .information_tab_list > li > a {
       display: block;
       padding: 0 0 20px;
       border-bottom: 2px solid #666666;
       color: #333;
       font-size: 2.2rem;
       line-height: 1.1;
       text-align: center;
       text-decoration: none;
     }
     .information-compo .information_tab .information_tab_list > li.is-current > a {
       color: #ff0000;
       font-weight: 700;
       border-bottom-color: #ff0000;
     }
     .information-compo .information_column {
       margin: 50px 0 0;
     }
     .information-compo .information_column > .information_column_item {
       float: left;
       width: calc((100% - 10px * 4) / 5);
       margin: 10px 0 0 10px;
     }
     .information-compo .information_column > .information_column_item:nth-child(-n+5) {
       margin-top: 0;
     }
     .information-compo .information_column > .information_column_item:nth-child(5n+1) {
       margin-left: 0;
     }
     .information-compo .information_column_2 {
       margin: 15px 0 0;
     }
     .information-compo .information_frame {
       display: block;
       padding: 25px 15px 35px;
       background-color: #fff;
     }
     .information-compo a.information_frame {
       position: relative;
       color: #333;
       text-decoration: none;
     }
     .information-compo a.information_frame::before {
       content: "";
       position: absolute;
       right: 10px;
       bottom: 10px;
       width: 10px;
       height: 10px;
       border-top: 1px solid #ff0000;
       border-right: 1px solid #ff0000;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
     }
     .information-compo a.information_frame[class*="a-"]::before {
       border: none;
       background-image: url(/common-files/img/cmn_sprite_ic01.png);
       background-repeat: no-repeat;
       -webkit-transform: rotate(0deg);
       transform: rotate(0deg);
     }
     .information-compo a.information_frame.a-blank::before {
       width: 12px;
       height: 10px;
       background-position: 0px -80px;
     }
     .information-compo a.information_frame.a-pdf::before {
       width: 15px;
       height: 15px;
       background-position: 0px -120px;
     }
     .information-compo a.information_frame:hover {
       box-shadow: 0 5px 10px 0 rgba(0,0,0,.2);
     }
     .information-compo .information_button {
       margin: 30px 0 0;
     }
     .information-compo .information_button > li > a {
       min-width: 46.66%;
       padding: 20px;
       background-color: #666;
       font-size: 2.2rem;
     }
     .information-compo .information_button > li > a:hover {
       background-color: #555;
     }
     .information-compo .information_text {
       font-size: 1.7rem;
     }
     .information-compo .information_text_2 {
       margin: 15px 0 0;
       font-size: 1.7rem;
     }
     .information-compo a.information_frame:hover .information_text_v2 {
       text-decoration: underline;
     }
     .information-compo .information_text_3 {
       text-align: center;
     }
     .information-compo .information_image {
       text-align: center;
     }
     .information-compo .information_image img {
       width: 100%;
       margin: 0 auto;
     }
     .information-compo .information_column.slick-initialized {
       margin-right: -5px;
       margin-left: -5px;
     }
     .information-compo .information_column.slick-initialized .information_frame {
       margin: 0 5px;
     }
     .information-compo .information_column.slick-initialized .slick-list {
       margin: 0 -5px;
       padding: 0 5px 15px;
     }
     .information-compo .information_column.slick-initialized .slick-arrow {
       overflow: hidden;
       position: absolute;
       top: 50%;
       margin-top: -30px;
       padding: 0;
       width: 32px;
       height: 60px;
       background-color: transparent;
       border: none;
       text-align: left;
       text-indent: -9999em;
       outline: none;
       cursor: pointer;
       appearance: none;
     }
     .information-compo .information_column.slick-initialized .slick-arrow::before {
       content: "";
       position: absolute;
       top: 8px;
       width: 44px;
       height: 44px;
       border-top: 2px solid #666;
       border-right: 2px solid #666;
     }
     .information-compo .information_column.slick-initialized .slick-arrow.slick-prev {
       left: -75px;
     }
     .information-compo .information_column.slick-initialized .slick-arrow.slick-prev::before {
       left: 9px;
       -webkit-transform: rotate(-135deg);
       transform: rotate(-135deg);
     }
     .information-compo .information_column.slick-initialized .slick-arrow.slick-next {
       right: -75px;
     }
     .information-compo .information_column.slick-initialized .slick-arrow.slick-next::before {
       right: 9px;
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
     }
     .information-compo .information_column.slick-initialized .slick-dots,
     .information-compo .information_column.slick-initialized .slick-dots > li,
     .information-compo .information_column.slick-initialized .slick-dots > li > button {
       font-size: 0;
     }
     .information-compo .information_column.slick-initialized .slick-dots {
       position: absolute;
       bottom: -25px;
       left: 0;
       display: flex;
       align-items: center;
       justify-content: center;
       width: 100%;
     }
     .information-compo .information_column.slick-initialized .slick-dots > li {
       margin: 0 15px;
     }
     .information-compo .information_column.slick-initialized .slick-dots > li > button {
       overflow: hidden;
       width: 10px;
       height: 10px;
       padding: 0;
       background-color: #ccc;
       border: none;
       border-radius: 50%;
       text-align: left;
       text-indent: -9999em;
       outline: none;
       cursor: pointer;
       appearance: none;
     }
     .information-compo .information_column.slick-initialized .slick-dots > li.slick-active > button {
       background-color: #ff0000;
     }
     
     /* ----- colorbox ----- */
     #colorbox.modal-youtube {
       overflow: visible;
     }
     .modal-youtube #cboxWrapper {
       overflow: visible;
     }
     .modal-youtube #cboxLoadedContent {
       border: none;
     }
     .modal-youtube #cboxClose {
       top: 0;
       right: -70px;
       width: auto;
       height: auto;
       background: none;
       text-indent: -9999em;
       outline: none;
     }
     .modal-youtube #cboxClose > span {
       display: block;
       position: relative;
       width: 70px;
       height: 70px;
       background-color: #ff0000;
     }
     .modal-youtube #cboxClose > span::before,
     .modal-youtube #cboxClose > span::after {
       position: absolute;
       top: 50%;
       left: 50%;
       display: inline-block;
       width: 26px;
       height: 2px;
       margin: -1px 0 0 -13px;
       background-color: #fff;
       content: "";
     }
     .modal-youtube #cboxClose > span::before {
       -webkit-transform: rotate(-45deg);
       transform: rotate(-45deg);
     }
     .modal-youtube #cboxClose > span::after {
       -webkit-transform: rotate(45deg);
       transform: rotate(45deg);
     }
     .modal-youtube #cboxClose > span:hover {
       background-color: #cf0212;
     }
     /* ----- a-video ----- */
     .column-layout[data-row-pc="1"] .index-layout-v2 .block.a-video {
       width: 640px;
       margin: 0 auto;
     }
     
     /* ------------------------------------------------------
      * Clearfix
     ------------------------------------------------------ */
     .column-media::after,
     .index-layout-v3 > .block::after {
       display: block;
       clear: both;
       content: "";
     }
   }
   
   /* ======================================================
    * Media Queries
   ====================================================== */
   @media screen and (min-width: 1921px) {
   }
   @media screen and (min-width: 768px) and (max-width: 1920px) {
   }
   @media screen and (min-width: 768px) and (max-width: 1536px) {
   }
   @media screen and (min-width: 768px) and (max-width: 1366px) {
   }
   @media screen and (min-width: 768px) and (max-width: 1280px) {
   }
   @media screen and (min-width: 768px) and (max-width: 1200px) {
     .box-layout-v2 > .box_title {
       font-size: 3.2rem;
     }
     .index-layout-v9 > .index_heading > .block .index_title {
       font-size: 1.8rem;
     }
     .index-layout-v9 > .index_heading > .block .index_title .is-smaller {
       font-size: 1.4rem;
     }
     .navi-anchor .navi_inner > li[class*="type-philosophy"] > a .navi_label {
       font-size: 1.4rem;
     }
     .innovation-list > li {
       font-size: 1.8rem;
     }
     .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow {
       top: 95px;
     }
     .products-layout .products_link > li > .products_block > .products_label {
       font-size: 1.8rem;
     }
     .ir-layout-v3 .ir_heading {
       padding-left: 20px;
       font-size: 1.8rem;
     }
     .ir-layout-v3 .ir_heading .heading_sub {
       font-size: 1.4rem;
     }
   }
   @media screen and (min-width: 768px) and (max-width: 1112px) {
     .box-layout-v2 > .box_detail {
       padding: 3%;
     }
     .navi-local .navi_list > li > a .navi_label {
       font-size: 1.6rem;
     }
     .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow {
       top: 85px;
     }
   }
   @media screen and (min-width: 768px) and (max-width: 1080px) {
     .heading-lv1 .heading_image > img {
       max-width: 200px;
       height: auto;
     }
     .products-index-layout .index_content .index_links {
       margin-right: 0;
     }
     .products-index-layout .index_content .index_links > li {
       width: calc((100% - 36px) / 2);
       margin-left: 36px;
       margin-right: 0;
     }
     .products-index-layout .index_content .index_links > li:nth-child(2n+1) {
       margin-left: 0;
     }
     .products-index-layout .index_content .index_links > li [class*="link-button-"] a {
       min-width: 0;
     }
     .navi-local .navi_list > li > a .navi_icon {
       margin-right: 15px;
     }
     .navi-local .navi_list > li > a .navi_icon img {
       width: 45px;
       height: 45px;
     }
     .products-layout .products_link > li > .products_block > .products_icon {
       width: 70px;
     }
   }
   @media screen and (min-width: 768px) and (max-width: 1024px) {
     .index-layout-v3 > .block .index_image {
       width: 180px;
     }
     .navi-anchor .navi_inner > li[class*="type-philosophy"] > a::after {
       top: 10px;
       left: 50%;
       margin: 0 0 0 -12px;
     }
     .navi-anchor .navi_inner > li[class*="type-philosophy"] > a .navi_label {
       padding-top: 10px;
       padding-right: 0;
       padding-left: 0;
       font-size: 1.8rem;
     }
     .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow {
       top: 75px;
     }
     .products-layout .products_link > li > .products_block > .products_icon {
       width: 60px;
     }
     .products-layout .products_link > li > .products_block > .products_label {
       padding-right: 35px;
       padding-left: 15px;
     }
     .ir-layout-v3 .ir_link_2 > li > a > .link_label {
       font-size: 1.6rem;
     }
   }
   @media screen and (min-width: 768px) and (max-width: 960px) {
     .heading-lv1 .heading_image > img {
       max-width: 180px;
       height: auto;
     }
     .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow {
       top: 70px;
     }
     .products-search-layout .products-layout .products_link > li > .products_block > .products_icon {
       width: 50px;
     }
   }
   @media screen and (min-width: 768px) and (max-width: 896px) {
     .heading-lv1 .heading_image > img {
       max-width: 160px;
       height: auto;
     }
     [class*="link-button"].is-centering {
       padding: 0 30px;
     }
     [class*="link-button"].is-centering > li {
       width: calc((100% - 36px) / 2);
     }
     [class*="link-button"].is-centering > li > a {
       width: 100%;
     }
     .index-layout-v9 > .index_heading > .block .index_caption .index_caption_inner {
       padding-left: 10px;
     }
     .navi-local .navi_list > li > a .navi_icon {
       margin-right: 10px;
     }
     .navi-local .navi_list > li > a .navi_icon img {
       width: 40px;
       height: 40px;
     }
     .location-compo .location_table .location_links > li > a {
       min-width: 140px;
     }
     .ir-layout-v3 .ir_heading {
       padding-left: 10px;
     }
     .index-layout-v3 > .block .index_image {
       width: 140px;
     }
     .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow {
       top: 65px;
     }
     .products-layout .products_link > li > .products_block > .products_icon {
       width: 50px;
     }
     .products-search-layout .products-layout .products_link > li > .products_block > .products_icon {
       width: 40px;
     }
     .contact-compo .contact_box > .contact_content .link-button-v2 a {
       width: 100%;
       min-width: 0;
     }
   }
   @media screen and (min-width: 768px) and (max-width: 834px) {
     .index-layout-v9 > .index_heading > .block .index_title {
       font-size: 1.5rem;
     }
     .index-layout-v9 > .index_heading > .block .index_title .is-smaller {
       font-size: 1.1rem;
     }
     .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow {
       top: 60px;
     }
     .products-search-layout .search_column {
       -webkit-flex-direction: column;
       flex-direction: column;
     }
     .products-layout .products_link > li > .products_block > .products_icon {
       width: 40px;
     }
     .ir-layout-v3 .ir_heading {
       font-size: 1.5rem;
     }
     .ir-layout-v3 .ir_heading .heading_sub {
       font-size: 1.1rem;
     }
   }
   @media screen and (min-width: 768px) and (max-width: 812px) {
     .box-layout-v2 > .box_title {
       font-size: 2.8rem;
     }
     .index-layout-v9 > .index_heading > a.block .index_caption::before {
       right: 8px;
     }
     .index-layout-v9 > .index_heading > .block .index_caption .index_caption_inner {
       padding-right: 20px;
     }
     .innovation-list > li {
       font-size: 1.7rem;
     }
     .navi-local .navi_list > li > a .navi_icon img {
       width: 35px;
       height: 35px;
     }
     .location-compo .location_table .location_links > li > a {
       min-width: 130px;
     }
     .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow {
       top: 55px;
     }
     .ir-layout-v3 .ir_heading {
       padding-right: 20px;
     }
     .ir-layout-v3 a.ir_block .ir_heading::before {
       right: 8px;
     }
   }
   
   
   /* ======================================================
    * Print
   ====================================================== */
   @media print {
     .tab-layout > .tab_navi,
     .navi-anchor,
     .related-compo-v2,
     .information-compo {
       width: 100%;
       margin-left: 0;
     }
     .tab-layout > .tab_navi > .tab_list {
       width: 100%;
       max-width: 1280px;
       padding: 0;
     }
   }
   
   .content_inner { max-width:1360px; margin:0 auto; padding:70px 0; }
   
   
   #gMenu { position:absolute; top: 106px; right:0; z-index:4; }
   #gMenu ul { display:flex; justify-content:flex-end; align-items:center; }
   #gMenu li { text-align:center; }
   #gMenu li a { display:flex; justify-content:center; align-items:center; width:110px; height:110px; color:#fff; background:#e72427; transition:0.3s; line-height:1.5; }
   #gMenu li:nth-child(even) a { background:#ca2022; }
   #gMenu li a:hover { background:#eb4547; }
   #gMenu li:nth-child(even) a:hover { background:#d24143; }
   #gMenu ul ul.nest_menu { display:none!important; }
   
   
     /* hover effect */
     @media print, screen and (min-width:768px) {
   
       #gMenu li a { 
         position:relative; 
         overflow:hidden; 
       }
       #gMenu li a::after { 
         position:absolute; 
         top:50%; 
         left:50%; 
         z-index:2; 
         display:block; 
         content:''; 
         width:0; 
         height:0; 
         background-color:rgba(255,255,255,.15); 
         border-radius:0%; 
         transform: translate(-50%, -50%); 
         opacity:0; }
       
       #gMenu li a:hover::after { 
         animation: circle 1s; 
       }
       #gMenu li a.active::after { 
         animation: circle 2s; 
         animation-iteration-count:infinite; }
   }
   
   @keyframes circle {
     50% { opacity:1; }
     100% { width:100%; height:100%; }
   }
   
   .title_caption { 
     font-size:13px; 
     position:relative; 
     display:flex; 
     justify-content:space-between; 
   }
   
   .title_caption span { 
     display:inline-block; 
     font-size:25px; 
   }
   
   .title_caption h3 {
     font-size: 2.0em;
   }
   
   .title_caption:after { content:""; position:absolute; top:12px; left:2.5em; height:1px; background:#d03c1a; }
   
     @media all and (-ms-high-contrast: none) { /* IE11 */
       *::-ms-backdrop, .title_caption { justify-content:flex-start; }
         *::-ms-backdrop, .title_caption:after { background:none; }
         *::-ms-backdrop, .title_caption span { padding-right:1em; }
     }
   
   .list_row { display:flex; justify-content:space-between; align-items:center; }
   .list_row li strong { position:relative; line-height:1; }
   .list_row li strong:after { content:attr(data-en) ""; font-family: 'Fjalla One', sans-serif; font-weight:400; display:inline-block; letter-spacing:0.01em; position:relative; }
   .list_row li img { display:block; }
   .list_row li img { transition:0.3s; }
   .list_row li a:hover img { opacity:0.8; }
   
   
   #links { padding-right:20px; padding-left:20px; }
   .related_links { display:flex; justify-content:space-between; }
   .related_links li { width:31%; background:url(/assets/img/common/bg_dot_orange.png) repeat top left; }
   .related_links a { display:block; position:relative; padding:80px 0 25px; max-width:967px; margin:15px 15px 17px; background:#fff url(/assets/img/common/ico_arrow_orange.png) no-repeat 95% center; font-size:24px; font-weight:bold; transition:0.3s; position:relative; }
     #links .related_links a { padding:80px 0 55px; background: #fff url(/assets/img/common/ico_arrow_orange.png) no-repeat center 80%; }
   
   
   .related_links a:before { content:""; position:absolute; top:18%; left:calc(50% - 45px); z-index:2; width:90px; height:47px; background-repeat:no-repeat; background-position:top center; transition:0.3s; }
     .related_links li.ico_scene a:before { background-image:url(); }
     .related_links li.ico_case a:before { background-image:url(/assets/img/common/ico_case.png); }
     .related_links li.ico_download a:before { background-image:url(/assets/img/common/ico_download.png); }
   
   .related_links a:hover { background:#fcf9f7 url(/assets/img/common/ico_arrow_orange.png) no-repeat 95% center; }
   
     #links .related_links a:hover { background:#fcf9f7; }
   
     #links .related_links li { position:relative; }
     #links .related_links li:after { content:""; position:absolute; bottom:20%; left:calc(50% - 25px); width:50px; height:25px; background:url(/assets/img/common/ico_arrow_red.png) no-repeat center center; }
     #links .related_links a { position:relative; overflow:hidden; z-index:0; background:#fff; }
     #links .related_links a::after { position:absolute; top:50%; left:50%; z-index:-1; display:block; content:''; width:0; height:0; background-color:rgba(255,255,255,.6); border-radius:0%; transform: translate(-50%, -50%); opacity:0; }
     #links .related_links a:hover::after { animation: circle2 1s; }
   
       @keyframes circle2 {
         50% { opacity:1; }
         100% { width:100%; height:100%; }
       }
   
   
   .related_links.w100 { max-width: 967px; margin:0 auto; }
   .related_links.w100 li { width:100%; }
   .related_links.w100 a { font-size:24px; }
   
   #case #links.content_inner,
   #scene #links.content_inner { max-width:970px; }
   #case #links .related_links li,
   #scene #links .related_links li { width:45%; }
   #case #links .related_links li:nth-child(2),
   #scene #links .related_links li:nth-child(1)  { display:none; }
   
   .footer_inner { padding:70px 0; }
   .footer_contact h3 { font-size:30px; }
   .contactBox { display:flex; justify-content:space-between; max-width:970px; margin:20px auto 0; position:relative; }
   .contactBox + p{text-align: center;width: 970px;margin:40px auto 0;}
   @media print, screen and (max-width: 767px){
     .contactBox + p{width: 90%;margin:30px auto 0;}
   }
   
   .contactBox li { text-align:center; width:50%; font-size:21px; padding:20px 0; }
   .contactBox li:first-child { background:url(/assets/img/common/bg_dot_orange.png) repeat-y top right;  }
   .contactBox li a { display:block; position:relative; /*text-indent:-40px;*/ }
   .contactBox li.form a:before { content:""; position:absolute; top:0; left:0; background:url(/assets/img/common/ico_form.png) no-repeat center left; }
   .contactBox li i { text-indent:-9999px; text-align:left; display:inline-block; width:30px; height:30px; margin-right:10px; position:relative; top:3px; }
   .contactBox li.form i { background:url(/assets/img/common/ico_form.png) no-repeat center center; }
   .contactBox li.phone i { background:url(/assets/img/common/ico_phone.png) no-repeat center center; }
   .contactBox li span { font-size:16px; display:block; color:#565656; text-indent:30px; }
   .contactBox li p { display:inline-block; }
   .contactBox li strong { font-weight:bold; font-size:24px; color:#565656; letter-spacing:0.05em; display:inline-block; }
   .contactBox .btn { max-width:310px; }
   
   
   .footer_links { max-width:870px; margin:0 auto; }
   .footer_logo{ width: 300px;margin: 0 auto;}
   @media print, screen and (max-width: 767px){
     .footer_savlogo{width: 158px;margin: 0 auto 5px;}
   }
   /*.footer_logo p:first-child { max-width:100px; }*/
   .footer_savlogo{max-width: 870px;margin: 20px auto;text-align: center;}
   .footerMenu { display:flex; justify-content:space-between; flex-wrap:wrap; /*border-top:2px solid #d03c1a;*/ padding:20px 0 50px; margin-top:20px; position:relative; }
     .footerMenu:before { content:""; border-top:2px solid #d03c1a; width:100%; height:2px; position:absolute; top:0px; left:0; }
   .footerMenu li { margin:0 10px; }
   .footerMenu li a { font-weight:bold; font-size:16px; }
   .footerMenu li ul { margin-top:10px; }
   .footerMenu li li { margin:0 0 5px; }
   .footerMenu li li a { color:#565656; font-weight:normal; }
   
   .footer_inner_w100 { max-width:100%; margin:0 auto; position:relative; font-size:0.7rem; }
   .footer_bottom { /*max-width:800px;*/ margin:0 auto; display:flex; justify-content:center; flex-wrap:wrap; background:#ede6e0; position:relative; }
     .footer_bottom:before { content:""; border-bottom:1px dotted #666; width:100%; height:1px; position:absolute; bottom:10px; left:0; }
   
   
   .footer_gMenu { display:flex; background:#ede6e0; position:relative; }
   .footer_gMenu li { position:relative; padding:0 10px; }
   .footer_gMenu li:not(:last-child):after { content:" / "; position:absolute; top:0; right:0; }
   .footer_gMenu a { color:#565656; }
   .footer_bottom p { background:#ede6e0; position:relative; padding:0 10px; }
   
   .pageTop { position:fixed; bottom:50px; right:5%; z-index:2; }
   .pageTop a { display:flex; text-decoration: none; color: #fff; background: #d03c1a; text-align: center; border-radius:50%; outline: none; }
   .pageTop a:hover { text-decoration: none; opacity:0.8; }
   .pageTop i { font-size:35px; padding:10px; }
   
   
   @media print, screen and (min-width:1250px) {
     .pageTop { right:calc(50% - 600px); }
   }
   
   
   @media print, screen and (max-width:1024px) {
   
     #home #header,
     #rfid_index #header,
     #recopick_index #header,
     #recofinder_index #header { position:absolute; }
   
     #home .mainVisual_content { width:100%; }
   
     #sideMenu { top:10px; }
     #home #sideMenu { display:none; }
   
     #sideMenu.flex { max-width:100%; background:none; }
     #sideMenu.flex .titleBox { background: rgba(231,36,39,0.75); min-height:70px; }
     #sideMenu.flex .titleBox h2, #product #sideMenu .titleBox h2, #download #sideMenu .titleBox h2 { margin:0 20px; }
     #sideMenu.flex ul { display:none; }
   
     #sideMenu.flex .titleBox.doubleLine,
     #sideMenu.flex.menu_adj .titleBox.doubleLine { padding-top:15px; padding-left:20px; text-align:left; }
   
     #sideMenu.flex .titleBox span, #sideMenu.flex .titleBox span.two_col { display:inline-block; width:auto; margin-left:0; }
     #sideMenu.flex .titleBox.doubleLine h2 { width:auto; letter-spacing:-0; display:inline-block; margin:0 0 0 20px; }
       /*#case #sideMenu.flex .titleBox.doubleLine h2,
       #scene #sideMenu.flex .titleBox.doubleLine h2 { display:none; }*/
   
     #sub_head { opacity:0; position:relative; }
     #sub_head { width:100%; background:rgba(255,255,255,0.75); }
     #sub_head ul { position:relative; max-width:1024px; margin:0 auto; }
     #sub_head ul li { display:inline-block;*display: inline;*zoom: 1; position:absolute; top:0; left:0; overflow:hidden; }
     #sub_head ul li a { display: block; height:50px; padding:13px 15px 12px; color:#ca2022; }
     #sub_head ul li a:hover,#header nav ul li .active { color:#555; }
     #sub_head ul li a { opacity:0; transition: 0.1s; position:relative; top:100px; }
     #sub_head ul li .active { opacity:1; top:0px; }
     #sub_head.is-fixed { opacity:1; display:block; position:fixed; top:0px; left:0; z-index:3; height:50px; }
   
     .related_links a { font-size:2vw; }
   
   }
   
   
   @media print, screen and (max-width:900px) {
   
     #home #mainVisual:after { height:57%; /* width: 80%; */ top: calc(50% - 280px + 75px); }
   
   
     .mainVisual_inner .lead { font-size:8vw; }
     .mainVisual_text_box ul { width: 100%; }
     #mainVisual .btn { position:relative; bottom:0; margin-top:20px; font-size:17px; }
   
     .content_inner { padding:35px 0; }
   
     .footer_links { padding:0 4.8%; }
     .footerMenu li:first-child { display:none; }
     .pageTop { right:5%; }
   }
   
     /* HOME */
     .mainVisual_inner h2 { font-size:3.8vw; text-shadow: 0px 0px 5px #000; }
     .mainVisual_inner .lead { font-size:13vw; text-shadow:none; }
     .mainVisual_text_box ul { width:100%; }
     .mainVisual_text_box { flex-wrap:wrap; }
     .mainVisual_inner li { font-size:16px;margin-bottom:10px; height:auto; padding-left:32px; line-height:1.5; }
     .mainVisual_inner li:before { top:0px; width:25px; height:25px; background: url(https://ad11083beg.smartrelease.jp/itsolution/wp-content/uploads/sample.png) no-repeat center left / 100% auto; }
   
   
     #header { /*height:50px;*/ z-index:3; }
     #header h1 a { margin-top:-3px; }
     #header h1 em { display:none; }
     #header h1 img { max-width:auto; width:70%; }
     .header_global { padding:0 15px; width:87%; margin:0; }
     .header_global .teijin_logo { max-width:100%; width:70px; margin-top:-22px; }
   
   
     #gMenu { /*display:none;*/ }
     #gMenu ul { display:block; overflow-y:scroll; transform: translateZ(0); height:100px; padding:50px 0 100px; }
     #gMenu li, #gMenu li a { width:100%; }
     #gMenu li { margin-bottom:15px; text-align:left; }
     #gMenu li a { background:none; font-size:22px; display:block; width:auto; height:auto; border-bottom:1px dotted; border-color:rgba(255,255,255,0.5); margin:0 15px; }
       #gMenu li:nth-child(even) a { background:none; }
       #gMenu li:last-child a { border:none; }
       #gMenu li a br { display:none; }
     #gMenu ul ul.nest_menu { display:flex!important; overflow:hidden; height:auto; padding:10px 0 0; margin:0 15px; }
     #gMenu ul ul.nest_menu li { margin-bottom:0; text-align:center; }
     #gMenu ul ul.nest_menu a { background:none; font-size:14px; border-bottom:none; background:rgba(255,255,255,0.2); margin:0 3px; padding: 10px 0px; }
   
     #sideMenu { top:20px; }
     #sideMenu.flex .titleBox { min-height:60px; }
     #sideMenu:not(#home) { max-width:100%; background:none; }
     #sideMenu:not(#home) .titleBox { background:rgba(231,36,39,0.75); }
     #sideMenu .titleBox h2 { margin:0 20px; }
     #sideMenu.flex .titleBox.doubleLine, #sideMenu.flex.menu_adj .titleBox.doubleLine { padding-top:10px; }
   
   
     #sideMenu.flex.adj_sp .titleBox span, #sideMenu.flex.adj_sp .titleBox span.two_col { display:block; }
     #sideMenu.flex.adj_sp .titleBox.doubleLine h2.smaller { font-size:16px; margin-left:0; }
       #scene #sideMenu.flex .titleBox.doubleLine h2.smaller { font-size:20px; line-height:1; padding:0; }
   
   
     .scene_retail #sideMenu:not(#home) .titleBox { min-height:80px; }
     .scene_retail #sideMenu { top: 10px; }
     .scene_retail #sideMenu.flex .titleBox.doubleLine h2 { display:block; line-height:1; margin-left:0; }
   
     .related_links { flex-wrap:wrap; }
     .related_links li { width:100%; }
     .related_links li:nth-child(2) { margin:20px 0; }
     #links .related_links a { font-size:22px; padding:50px 0 20px; margin:15px 15px 15px; }
     #links .related_links li:after { bottom:calc(50% - 10px); left:auto; right:5%; }
     .related_links a:before { width:60px; height:32px; background-size:100% auto; left:calc(50% - 30px); top:14%; background-size:contain; }
       #case #links .related_links li,
       #scene #links .related_links li { width:100%; }
       #case #links .related_links li:last-child { margin-top:20px; }
       #scene #links .related_links li:last-child { /*margin-top:20px;*/ }
       #scene #links .related_links li:nth-child(2) { margin-top:0px; }
   
   
     .contactBox { flex-wrap:wrap; width:90%; margin:0 auto; }
     .contactBox li { width:100%; }
     .contactBox li:first-child { background: url(https://ad11083beg.smartrelease.jp/itsolution/wp-content/uploads/sample.png) repeat-x bottom left; padding-bottom:50px; }
     .contactBox li.phone p { margin-bottom:10px; }
     .contactBox li span { text-indent:0px; }
   
     .footer_contact h3 { font-size:26px; }
     .footer_inner { padding:30px 0; }
     .footer_logo { padding:0 25% 5%;width: 100%!important;}
     .footerMenu_wrap { display:none; }
     .pageTop { right:10px; }
     .pageTop i { font-size:20px; }
   
   @media print, screen and (max-width:600px) {
   
   }
   
   .product_row{ 
     display:flex; 
     justify-content:space-between; 
     min-height:500px; 
   }
   
   .product_row_first{ 
     display:flex; 
     justify-content:space-between; 
     min-height:500px; 
     flex-wrap: wrap-reverse;
   }
   
   .product_row_second{ 
     display:flex; 
     justify-content:space-between; 
     min-height:500px; 
     flex-wrap: wrap;
   }
   
   .product_col { 
     width:50%; 
   }
   
   @media (max-width: 430px) {
   
     .product_col {
       width: 100%
     }
   
     .product_row_first{
       width: 100%
     }
   
     .product_row_second{
       width: 100%
     }
   
     .recopick_bg01{
       height: 500px;
     }
   
     .recopick_bg02{
       height: 500px;
     }
   
     .recopick_bg03{
       height: 500px;
     }
   
     .recopick_bg04{
       height: 500px;
     }
   
     .recopick_bg05{
       height: 500px;
     }
   
     .recopick_bg06{
       height: 500px;
     }
   
     .recopick_bg07{
       height: 500px;
     }
   
     .recopick_bg08{
       height: 500px;
     }
   
     .recopick_bg09{
       height: 500px;
     }
   
     .recopick_bg10{
       height: 500px;
     }
   }
   
   .product_col_text{
     display: flex;
     align-items: center;
     padding: 8% 6.4%;
     background-color: #e6f598;
     box-sizing: border-box;
   }
   
   .title_wrap {
     color: #00995b;
     font-size: 2.0em;
   }
   
   .product_col_pic { 
     background-repeat:no-repeat; 
     background-position:center center;
     background-size:contain;
     padding: 8% 6.4%;
     box-sizing: border-box;
     display: flex;
     align-items: center;  
   }
   
   @media print, screen and (max-width:450px) {
     /*#mainVisual:after { height:58%; top: calc(50% - 150px + 25px); }*/
     #home .mainVisual_inner { padding: 0 17px; }
     .mainVisual_inner .lead { margin:10px 0 15px; letter-spacing:-0.05em; }
     .mainVisual_content { top:0px; }
     #home #mainVisual:after { /*top: calc(50% - 150px + 90px);*/ }
     #mainVisual .btn { position:relative; top:15px; margin-top:0px; font-size:17px; width:100%; }
   
     #case #sideMenu.flex.menu_adj .titleBox.doubleLine h2.title_adj { font-size:4.8vw; }
   
     #sideMenu.flex.adj_sp { top:0; }
     #sideMenu.flex.adj_sp br { display:block; }
     #sideMenu.flex.adj_sp .titleBox.doubleLine { padding-top:10px; }
   
   }
   
    .about-ser p {
     display: inline-block;
     text-align: left;
   }
   
   .product_category .title_wrap h3{
     line-height: 1.4;
     font-size: 38px;
     position: relative;
   }
   
   .box_sersentence{
     text-align: center;
       display: block;
   }
   
   .box_sentence{
     text-align: left;
     display: inline-block;
   }

   .iframe-wrapper{
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
   }

   .iframe-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  .item-list {
    display: flex;
    justify-content: space-between;
    margin: 80px;
  }

  @media screen and (max-width: 480px) {
    .item-list{
      display: block;
      margin: 0px;
    }
  }

  .item-list .item {
    display: flex;
    flex-direction: column;
    width: 80%;
    margin: 50px;
    padding: 0 0 20px 0;
    box-sizing: border-box;
    background: #eee;
    border: 3px solid #00995b;
  }
  
  .item-list .item .image {
    margin: 0;
    padding: 0;
    flex: 0 0 auto;
  }
  .item-list .item .image img {
    width: 100%;
  }
  .item-list .item .title {
    margin: 10px 0 0;
    padding: 0 20px;
    font-weight: bold;
    font-size: 20px;
  }
  .item-list .item .description {
    margin: 5px 0 20px;
    padding: 0 20px;
    font-size: 16px;
    flex: 1;
  }
  .item-list .item .link {
    margin: 20px 0 0;
    padding: 0 20px;
    font-size: 16px;
    text-align: center;
  }
  .item-list .item .link a{
    display: inline-block;
    padding: 10px 20px;
    text-align: center;
    background: #00995b;
    color: #FFF;
    font-weight: bold;
    text-decoration: none;
    box-sizing: border-box;
    border-radius:  4px;
  }