@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Lato:400,700);
html, body, p, ol, ul, li, dl, dt, dd, blockquote, figure, fieldset, legend, textarea, pre, iframe, hr, h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

ul {
  list-style: none;
}

button, input, select, textarea {
  margin: 0;
}

html {
  box-sizing: border-box;
}

* {
  box-sizing: inherit;
}
*:before, *:after {
  box-sizing: inherit;
}

img, embed, object, audio, video {
  border: 0;
  height: auto;
  max-width: 100%;
}

iframe {
  border: 0;
}

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

td, th {
  padding: 0;
  text-align: left;
}

.clearfix:before, .clearfix:after {
  clear: both;
  display: block;
  content: "";
}

main {
  display: block;
}

.clearfix:after {
  display: table;
  clear: both;
  content: "";
}

.modalContent {
  position: relative;
  width: 880px;
  padding: 35px 35px 50px;
  box-sizing: border-box;
}
.modalContent .modalClose {
  position: absolute;
  top: 17px;
  right: 17px;
  display: block;
  width: 26px;
  height: 26px;
  background: url(/common/img/ico_closemodal.png) 0 0/cover no-repeat;
}
.modalContent .ttl {
  margin-bottom: 10px;
  font-size: 2.4rem;
  font-weight: bold;
}
.modalContent .address {
  margin-top: 15px;
  font-size: 1.6rem;
}
.modalContent .address a {
  color: inherit;
}
.modalContent .btnPrint {
  margin-top: 15px;
  text-align: center;
}
.modalContent .btnPrint button {
  display: inline-block;
  width: 90%;
  max-width: 275px;
  border: 0;
  border-radius: 5px;
  background: #007e62;
  color: #FFF;
  font-weight: bold;
  font-family: inherit;
  font-size: 2.1rem;
  line-height: 60px;
  cursor: pointer;
}
.modalContent .btnPrint button img {
  margin-right: 17px;
  vertical-align: middle;
}

@media only screen and (max-width: 950px) {
  .modalContent {
    width: auto;
  }
}
@media only screen and (max-width: 768px) {
  .modalContent {
    padding: 25px 25px 35px;
  }
}
@media only screen and (max-width: 768px) {
  .modalContent .modalClose {
    top: 10px;
    right: 10px;
    width: 20px;
    height: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .modalContent .ttl {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 768px) {
  .modalContent .address {
    font-size: 1.3rem;
  }
}
@media only screen and (max-width: 768px) {
  .modalContent .btnPrint {
    display: none;
  }
}
.gmapWrap {
  position: relative;
}
.gmapWrap:after {
  display: block;
  padding-bottom: 90%;
  content: "";
}
.gmapWrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media print {
  body, html {
    background: #FFF;
    height: 100vh;
  }
  .print-off {
    display: none !important;
  }
  #wrapper {
    display: none;
  }
  #cboxOverlay {
    display: none !important;
  }
  #colorbox, #cboxWrapper, #cboxCurrent {
    position: static !important;
    height: auto !important;
    max-width: none;
  }
  #cboxWrapper {
    width: 100% !important;
    height: 100vh !important;
  }
  #cboxMiddleLeft, #cboxMiddleRight {
    display: none;
  }
  .modalClose, .btnPrint {
    display: none !important;
  }
}
html {
  font-size: 62.5%;
  background: #FFF;
}

body {
  font-size: 1.4rem;
  font-family: Lato, "メイリオ", Meiryo, "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #000;
  line-height: 1.6;
  -webkit-text-size-adjust: 100%;
}

img {
  max-width: 100%;
  vertical-align: bottom;
}

a {
  backface-visibility: hidden;
  text-decoration: none;
  transition: 0.15s;
}
a:hover img {
  opacity: 0.7;
}

.inner {
  width: 100%;
  max-width: 1020px;
  margin: 0 auto;
  padding: 0 20px;
}

@media only screen and (min-width: 769px) {
  .sp {
    display: none !important;
  }
}
@media only screen and (max-width: 768px) {
  .pc {
    display: none !important;
  }
  .inner {
    padding: 0 2%;
  }
}
@media only screen and (min-width: 769px) {
  header {
    position: fixed;
    padding-top: 24px;
    left: 0;
    top: 0;
    width: 235px;
    height: 100vh;
    background: #FFF;
    z-index: 9999;
  }
  header::scrollbar {
    width: 6px;
  }
  header::scrollbar-track {
    box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    border-radius: 10px;
  }
  header::scrollbar-thumb {
    border-radius: 10px;
    box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.5);
  }
}
@media only screen and (min-width: 769px) and (max-width: 1200px) and (min-width: 769px) {
  header {
    width: 180px;
  }
}
@media only screen and (min-width: 769px) {
  header .siteLogo {
    margin-bottom: 12px;
    text-align: center;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1200px) and (min-width: 769px) {
  header .siteLogo {
    padding: 0 20px;
  }
}
@media only screen and (min-width: 769px) {
  header #mainNav {
    text-align: center;
  }
  header #mainNav a {
    display: block;
  }
  header #mainNav > li {
    border-top: 1px solid #EEE;
  }
  header #mainNav > li:last-child {
    border-bottom: 1px solid #EEE;
  }
  header #mainNav > li > a {
    position: relative;
    color: #007e62;
    font-size: 1.7rem;
    line-height: 63px;
    font-weight: 600;
  }
  header #mainNav > li > a:hover, header #mainNav > li > a.current {
    background: #007e62;
    color: #FFF;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1200px) and (min-width: 769px) {
  header #mainNav > li > a {
    font-size: 1.5rem;
    line-height: 40px;
  }
}
@media only screen and (min-width: 769px) and (max-height: 750px) and (min-width: 769px) {
  header #mainNav > li > a {
    font-size: 1.4rem;
    line-height: 30px;
  }
}
@media only screen and (min-width: 769px) {
  header #mainNav > li > a + .subNavWrap {
    position: fixed;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: center;
    top: 0;
    left: 235px;
    width: 275px;
    height: 100%;
    transform: translateY(-50px);
    visibility: hidden;
    opacity: 0;
    transition: 0.1s;
    overflow-y: auto;
    backface-visibility: hidden;
  }
  header #mainNav > li > a + .subNavWrap::scrollbar {
    width: 6px;
  }
  header #mainNav > li > a + .subNavWrap::scrollbar-track {
    box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    border-radius: 10px;
  }
  header #mainNav > li > a + .subNavWrap::scrollbar-thumb {
    border-radius: 10px;
    box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.5);
  }
  header #mainNav > li > a + .subNavWrap.active {
    transform: translateY(0);
    visibility: visible;
    opacity: 1;
    z-index: 9999;
  }
  header #mainNav > li > a + .subNavWrap a {
    color: #FFF;
  }
  header #mainNav > li > a + .subNavWrap .subNav {
    width: 100%;
    max-height: 100%;
    vertical-align: middle;
  }
  header #mainNav > li > a + .subNavWrap .subNav li {
    font-size: 1.7rem;
    font-weight: 600;
    line-height: 55px;
  }
  header #mainNav > li > a + .subNavWrap .subNav li a:hover {
    background: #007e62;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1200px) and (min-width: 769px) {
  header #mainNav > li > a + .subNavWrap .subNav li {
    font-size: 1.5rem;
    line-height: 35px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1200px) and (min-width: 769px) {
  header #mainNav > li > a + .subNavWrap {
    left: 180px;
    width: 230px;
  }
}
@media only screen and (max-width: 768px) {
  header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 46px;
    background: #FFF;
    z-index: 6000;
  }
  header .siteLogo {
    height: 46px;
  }
  header .siteLogo img {
    width: auto;
    height: 100%;
  }
  header nav {
    position: fixed;
    top: 46px;
    width: 65%;
    height: calc(100vh - 46px);
    max-width: 250px;
    background: #FFF;
    z-index: 7000;
    transition: 0.3s;
    transform: translateX(-100%);
    opacity: 0;
    visibility: hidden;
    overflow-y: auto;
  }
  header nav #mainNav {
    position: relative;
    background: #FFF;
    z-index: 9999;
  }
  header nav #mainNav a {
    display: block;
    color: inherit;
  }
  header nav #mainNav > li {
    border-top: 1px solid #EEE;
  }
  header nav #mainNav > li > a {
    position: relative;
    padding: 10px;
    color: #007e62;
    font-size: 1.6rem;
    font-weight: bold;
  }
  header nav #mainNav > li > a:after {
    position: absolute;
    top: 50%;
    right: 10px;
    width: 15px;
    height: 15px;
    margin-top: -7.5px;
    background: url(/common/img/ico_arrow_green.png) center center/cover no-repeat;
    transition: 0.3s;
    content: "";
  }
  header nav #mainNav > li:last-child {
    border-bottom: 1px solid #EEE;
  }
  header nav #mainNav > li.active > a {
    background: #EEE;
  }
  header nav #mainNav > li.active > a:after {
    transform: rotate(90deg);
  }
  header nav #mainNav .subNavWrap {
    height: 0;
    transform: scaleY(0);
    visibility: hidden;
    transform-origin: top;
    opacity: 0;
  }
  header nav #mainNav .subNavWrap .subNav > li > a, header nav #mainNav .subNavWrap .lowerNav li a {
    padding: 5px 10px;
  }
  header nav #mainNav .subNavWrap.active {
    height: auto;
    transform: scaleY(1);
    visibility: visible;
    opacity: 1;
    transition: 0.1s;
  }
}
header #subNav {
  width: 95%;
  margin: 20px auto;
}
header #subNav li a {
  display: block;
  padding: 0 13px;
  background: #f7f7f7 url(/common/img/ico_nav_arrow.png) 95% center/5px 7px no-repeat;
  color: #434343;
  font-size: 1.3rem;
  line-height: 30px;
}
header #subNav li a.current, header #subNav li a:hover {
  background: #007e62 url(/common/img/ico_nav_arrow_white.png) 95% center/5px 7px no-repeat;
  color: #FFF;
}
header #subNav li + li {
  margin-top: 3px;
}

@media only screen and (max-width: 1200px) and (min-width: 769px) {
  header #subNav {
    width: 170px;
  }
  header #subNav li a {
    background-position: 160px center;
    font-size: 1.2rem;
  }
}
@media only screen and (max-height: 745px) and (min-width: 769px) {
  header #subNav {
    font-size: 0;
    margin-top: 5px;
  }
  header #subNav li {
    vertical-align: top;
  }
  header #subNav li a {
    padding: 0 2px;
    font-size: 1rem;
    line-height: 20px;
  }
}
.navOverlay {
  position: fixed;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  transition: 0.3s;
  visibility: hidden;
  opacity: 0;
}

@media only screen and (min-width: 769px) {
  .navOverlay {
    top: 0;
    left: 235px;
    width: 275px;
    content: "";
    z-index: 2000;
    opacity: 0;
  }
  .navOverlay.active {
    opacity: 1;
    visibility: visible;
  }
}
@media only screen and (max-width: 1200px) and (min-width: 769px) {
  .navOverlay {
    left: 180px;
    width: 230px;
  }
}
@media only screen and (max-width: 768px) {
  .navOverlay {
    left: 0;
    width: 100vw;
    z-index: 5000;
  }
}
#navTrigger {
  position: absolute;
  top: 0;
  right: 0;
  width: 46px;
  height: 46px;
  background: #007e62;
  cursor: pointer;
}
#navTrigger span {
  position: absolute;
  top: 50%;
  margin-top: -1px;
  right: 13.5px;
  width: 19px;
  height: 2px;
  background: #FFF;
  content: "";
  transition: 0.3s;
}
#navTrigger span:nth-child(1) {
  transform: translateY(-300%);
}
#navTrigger span:nth-child(2) {
  top: 50%;
  margin-top: -1px;
}
#navTrigger span:nth-child(3) {
  transform: translateY(300%);
}

@media only screen and (max-width: 768px) {
  .navOpen #navTrigger span:nth-child(1) {
    transform: rotate(45deg) translateY(0);
  }
  .navOpen #navTrigger span:nth-child(2) {
    opacity: 0;
  }
  .navOpen #navTrigger span:nth-child(3) {
    transform: rotate(-45deg) translateY(0);
  }
  .navOpen nav {
    transform: translateX(0);
    opacity: 1;
    visibility: visible;
  }
  .navOpen .navOverlay {
    visibility: visible;
    opacity: 1;
  }
}
@media only screen and (min-width: 769px) {
  main, footer {
    padding-left: 235px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1200px) and (min-width: 769px) {
  main, footer {
    padding-left: 180px;
  }
}
@media only screen and (max-width: 768px) {
  main {
    padding-top: 46px;
  }
}
footer {
  background: #313131;
}
footer a {
  color: #c2c2c2;
  font-weight: inherit;
}
footer a:hover {
  text-decoration: underline;
}
footer .subFooter {
  padding: 11px 0 37px;
  background: #f8f6ef;
}
footer .subFooter .inner {
  position: relative;
  font-size: 0;
}
footer .subFooter .inner .copyRight, footer .subFooter .inner .footerLogo {
  display: inline-block;
  width: 50%;
  vertical-align: middle;
}
footer .subFooter .inner .copyRight {
  font-size: 1.4rem;
}
footer .subFooter .inner .footerLogo {
  text-align: right;
}
footer .subFooter .inner .pageTop {
  position: absolute;
  right: 0;
  top: -66px;
  width: 50px;
}

@media only screen and (max-width: 1200px) and (min-width: 769px) {
  footer {
    font-size: 1.2rem;
  }
}
@media only screen and (min-width: 769px) {
  footer #mainFooterWrap {
    padding: 25px 0 30px;
  }
  footer #footerNavList {
    display: table;
    width: 100%;
    table-layout: fixed;
  }
  footer #footerNavList .footerNav {
    display: table-cell;
  }
  footer #footerNavList .footerNav .parentNav {
    font-weight: bold;
  }
  footer #footerNavList .footerNav .parentNav + .parentNav {
    margin-top: 15px;
  }
  footer #footerNavList .footerNav .subNav {
    line-height: 2.2;
  }
  footer #footerNavList .footerNav .lowerNav {
    padding-left: 1em;
  }
}
@media only screen and (max-width: 768px) {
  footer #mainFooterWrap {
    display: none;
  }
}
@media only screen and (max-width: 768px) {
  footer .subFooter {
    padding: 25px 0;
    background: #303030;
    color: #FFF;
    text-align: center;
  }
  footer .subFooter .inner .copyRight {
    display: block;
    width: 100%;
    font-size: 1.2rem;
  }
  footer .subFooter .inner .footerLogo {
    display: none;
  }
  footer .subFooter .inner .pageTop {
    top: -69px;
    width: 40px;
  }
}
.ttl01 {
  color: #007e62;
  font-size: 2.6rem;
  text-align: center;
  font-weight: 600;
}

@media only screen and (max-width: 1200px) and (min-width: 769px) {
  .ttl01 {
    font-size: 2.2rem;
  }
}
@media only screen and (max-width: 768px) {
  .ttl01 {
    font-size: 1.6rem;
  }
}
.newsList .inner {
  position: relative;
}
.newsList .inner .linkTxt a {
  position: absolute;
  right: 20px;
  top: 10px;
  padding-left: 25px;
  background: url(/common/img/ico_menuicon.png) left center no-repeat;
  color: #007e62;
  font-size: 1.6rem;
}
.newsList .inner .linkTxt a:hover {
  text-decoration: underline;
}
.newsList .inner table {
  width: 100%;
  margin-top: 20px;
  background: #fff;
  font-size: 1.6rem;
}
.newsList .inner table tr + tr {
  border-top: 1px solid #f8f6ef;
}
.newsList .inner table tr th, .newsList .inner table tr td {
  padding: 10px 17px;
  vertical-align: top;
}
.newsList .inner table tr th {
  width: 235px;
  font-weight: normal;
}
.newsList .inner table tr th:after {
  display: inline-block;
  width: 90px;
  margin-left: 20px;
  border-radius: 5px;
  color: #FFF;
  text-align: center;
  line-height: 25px;
  font-weight: bold;
  font-size: 1.4rem;
}
.newsList .inner table tr th.houtei:after {
  background-color: #006ebc;
  content: "法定開示";
}
.newsList .inner table tr th.kessan:after {
  background-color: #ed8529;
  content: "決算短信";
}
.newsList .inner table tr th.tekiji:after {
  background-color: #00b491;
  content: "適時開示";
}
.newsList .inner table tr th.newProduct:after {
  background-color: #b33d5a;
  content: "新製品";
}
.newsList .inner table tr th.info:after {
  background-color: #3498db;
  content: "お知らせ";
}
.newsList .inner table tr th.recruit:after {
  background-color: #814e97;
  content: "採用情報";
}
.newsList .inner table tr th.irData:after {
  background-color: #008080;
  content: "IR資料";
}
.newsList .inner table tr td a {
  color: #000;
}
.newsList .inner table tr td a:hover {
  text-decoration: underline;
}

@media only screen and (max-width: 1200px) and (min-width: 769px) {
  .newsList .inner .linkTxt {
    margin-top: 10px;
    text-align: right;
  }
  .newsList .inner .linkTxt a {
    position: static;
  }
}
@media only screen and (max-width: 768px) {
  .newsList .inner .ttl01 {
    font-size: 1.3rem;
    text-align: left;
  }
  .newsList .inner .linkTxt a {
    top: 3px;
    padding-left: 15px;
    background-size: 10px;
    font-size: 1.1rem;
  }
}
@media only screen and (max-width: 1200px) and (min-width: 769px) {
  .newsList .inner table {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .newsList .inner table {
    font-size: 1.2rem;
  }
}
@media only screen and (max-width: 1200px) and (min-width: 769px) {
  .newsList .inner table tr th, .newsList .inner table tr td {
    padding: 10px 12px;
  }
}
@media only screen and (max-width: 768px) {
  .newsList .inner table tr th, .newsList .inner table tr td {
    padding: 5px 10px;
  }
}
@media only screen and (max-width: 1200px) and (min-width: 769px) {
  .newsList .inner table tr th {
    width: 200px;
  }
  .newsList .inner table tr th:after {
    width: 80px;
    margin-left: 10px;
    font-size: 1.2rem;
  }
}
@media only screen and (max-width: 768px) {
  .newsList .inner table tr th {
    width: 150px;
  }
  .newsList .inner table tr th:after {
    width: 60px;
    margin-left: 5px;
    font-size: 1rem;
    line-height: 18px;
  }
}
@media only screen and (max-width: 768px) {
  .newsList .inner table tr td {
    padding-left: 0;
  }
}
.fadeIn {
  opacity: 0;
}

.fadeInUp {
  animation-fill-mode: both;
  animation-duration: 1s;
  animation-name: fadeInDown;
  visibility: visible !important;
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes Flash1 {
  50% {
    transform: translateX(10px);
  }
}
.lower {
  background: #f8f6ef;
}
.lower.navTrue main {
  padding-top: 50px;
}
.lower .lowerNavigation {
  position: fixed;
  top: 0;
  width: 100%;
  padding: 13px 0 12px 235px;
  background: #0e6854;
  z-index: 1000;
}
.lower .lowerNavigation #lowerNavigation {
  display: table;
  width: 100%;
  text-align: center;
}
.lower .lowerNavigation #lowerNavigation li {
  position: relative;
  display: table-cell;
  border-right: 1px solid #3e8676;
  font-size: 1.4rem;
  color: #FFF;
  line-height: 25px;
}
.lower .lowerNavigation #lowerNavigation li a {
  display: block;
  color: inherit;
}
.lower .lowerNavigation #lowerNavigation li a.current {
  color: #90aea6;
}
.lower .lowerNavigation #lowerNavigation li:last-child {
  border-right: 0;
}
.lower .lowerNavigation #lowerNavigation li:after {
  position: absolute;
  bottom: 0;
  left: 10%;
  width: 80%;
  height: 1px;
  border-radius: 5px;
  background: #f8f6ef;
  content: "";
  transform: scaleX(0);
  transition: 0.15s;
}
.lower .lowerNavigation #lowerNavigation li:hover:after {
  transform: scaleX(1);
}
.lower .lowerNavigation .slideArrow {
  display: none;
}
.lower main {
  padding-bottom: 90px;
}
.lower .ttl01 {
  margin: 75px 0 35px;
}
.lower .ttl01 span {
  display: block;
  font-size: 1.6rem;
}
.lower .ttl01 + p {
  margin-bottom: 10px;
  text-align: right;
  font-size: 1.3rem;
}
.lower .ttl02 {
  margin-bottom: 30px;
  color: #007e62;
  font-size: 3rem;
  font-weight: bold;
  text-align: center;
}
.lower .ttl02.blue {
  color: #196CAC;
}
.lower .ttl02.lightblue {
  color: #007bee;
}
.lower .ttl02 span {
  display: block;
  font-size: 4.8rem;
}
.lower .ttl03 {
  padding: 7px 12px;
  color: #FFF;
  background: #007e62;
  font-size: 2.1rem;
  font-weight: bold;
}
.lower .ttlLower {
  padding: 56px 0;
  background: url(/common/img/bg_ttl_lower.png) center center/cover no-repeat;
  color: #FFF;
  font-size: 3.2rem;
  text-align: center;
}
.lower .ttlLower h1 {
  font-weight: bold;
}
.lower .breadCrumb {
  padding: 5px 20px;
  background: #FFF;
  font-size: 0;
}
.lower .breadCrumb li {
  display: inline-block;
  font-size: 1.3rem;
}
.lower .breadCrumb li a {
  color: inherit;
}
.lower .breadCrumb li a:hover {
  text-decoration: underline;
}
.lower .breadCrumb li + li:before {
  margin: 0 10px;
  content: ">";
}
.lower .box01 {
  padding: 40px 65px;
  background: #FFF;
  font-size: 1.8rem;
}
.lower .box01 p + p {
  margin-top: 25px;
}
.lower .box01 p + p.mt0 {
  margin-top: 0;
}
.lower .productList {
  font-size: 0;
}
.lower .productList li a {
  display: block;
  background: #FFF;
}
.lower .productList li a figure {
  overflow: hidden;
}
.lower .productList li a figure img {
  width: 100%;
  transition: 0.2s;
}
.lower .productList li a .txtArea {
  padding: 20px 30px 30px;
  font-size: 1.6rem;
}
.lower .productList li a .txtArea h3 {
  color: #007e62;
  font-size: 2rem;
  text-align: center;
}
.lower .productList li a .txtArea p {
  margin-top: 15px;
  color: #000;
}
.lower .productList li a:hover img {
  opacity: 1;
  transform: scale(1.1);
}

@media only screen and (max-width: 768px) {
  .lower.navTrue main {
    padding-top: 101px;
  }
}
@media only screen and (max-width: 1200px) and (min-width: 769px) {
  .lower .lowerNavigation {
    padding-left: 180px;
  }
}
@media only screen and (max-width: 768px) {
  .lower .lowerNavigation {
    top: 46px;
    padding: 10px 5px;
  }
}
@media only screen and (max-width: 1400px) {
  .lower .lowerNavigation .navWrap {
    margin: 0 60px;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
  }
}
@media only screen and (max-width: 1400px) and (max-width: 768px) {
  .lower .lowerNavigation .navWrap {
    margin: 0 52px;
  }
}
@media only screen and (max-width: 1400px) {
  .lower .lowerNavigation .navWrap::-webkit-scrollbar {
    display: none;
    height: 0;
  }
  .lower .lowerNavigation .navWrap #lowerNavigation {
    width: 1620px;
    table-layout: fixed;
  }
  .lower .lowerNavigation .navWrap #lowerNavigation a {
    padding: 0 5px;
    font-size: 1.4rem;
    line-height: 25px;
  }
}
@media only screen and (max-width: 1400px) and (max-width: 768px) {
  .lower .lowerNavigation .navWrap #lowerNavigation a {
    line-height: 35px;
  }
}
@media only screen and (max-width: 1400px) {
  .lower .lowerNavigation .slideArrow {
    display: block;
    position: absolute;
    top: 0;
    width: 50px;
    height: 50px;
    cursor: pointer;
  }
}
@media only screen and (max-width: 1400px) and (max-width: 768px) {
  .lower .lowerNavigation .slideArrow {
    width: 45px;
    height: 55px;
  }
}
@media only screen and (max-width: 1400px) {
  .lower .lowerNavigation .slideArrow.slidePrev {
    border-right: 1px solid #3e8676;
    background: url(/common/img/ico_slider_prev.png) center center/10px no-repeat;
  }
  .lower .lowerNavigation .slideArrow.slideNext {
    right: 0;
    background: url(/common/img/ico_slider_next.png) center center/10px no-repeat;
    border-left: 1px solid #3e8676;
  }
}
@media only screen and (max-width: 768px) {
  .lower main {
    padding-bottom: 60px;
  }
}
@media only screen and (max-width: 768px) {
  .lower .ttl01 {
    margin: 40px 0 20px;
    font-size: 1.8rem;
  }
  .lower .ttl01 span {
    font-size: 1.3rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower .ttl02 {
    margin-bottom: 20px;
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower .ttl02 span {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower .ttl03 {
    padding: 5px 7px;
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower .ttlLower {
    padding: 30px 10px;
  }
  .lower .ttlLower h1 {
    font-size: 2rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower .breadCrumb {
    padding: 5px 10px;
  }
}
@media only screen and (max-width: 768px) {
  .lower .breadCrumb li {
    font-size: 1.1rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower .breadCrumb li + li:before {
    margin: 0 5px;
  }
}
@media only screen and (max-width: 768px) {
  .lower .box01 {
    padding: 20px 15px;
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower .box01 p + p {
    margin-top: 15px;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 768px) {
  .lower .productList li {
    margin-top: 10px;
  }
  .lower .productList li a .txtArea {
    padding: 10px 15px;
    font-size: 1.2rem;
  }
  .lower .productList li a .txtArea h3 {
    font-size: 1.4rem;
  }
  .lower .productList li a .txtArea p {
    margin-top: 7px;
  }
}
@media only screen and (max-width: 640px) {
  .lower .productList {
    margin-top: 10px;
  }
  .lower .productList li {
    margin: 0;
  }
  .lower .productList li a .txtArea {
    padding: 10px 15px;
  }
  .lower .productList li a .txtArea h3 {
    font-size: 1.4rem;
  }
  .lower .productList li a .txtArea p {
    margin-top: 7px;
    font-size: 1.2rem;
  }
}
@media only screen and (min-width: 769px) {
  .lower .productList {
    margin-top: -30px;
  }
  .lower .productList li {
    display: inline-block;
    width: 31.5%;
    margin: 30px 2.75% 0 0;
    vertical-align: top;
  }
  .lower .productList li:nth-child(3n) {
    margin-right: 0;
  }
}
@media only screen and (max-width: 768px) {
  .lower .productList {
    max-width: 310px;
    margin-left: auto;
    margin-right: auto;
  }
  .lower .productList li {
    margin-top: 20px;
  }
}
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
          user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track, .slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}
.slick-track:before {
  content: "";
  display: table;
}
.slick-track:after {
  content: "";
  display: table;
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir=rtl] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.slick-loading .slick-list {
  background: #fff "/common/img/ajax-loader.gif" center center no-repeat;
}

@font-face {
  font-family: "slick";
  src: url("/common/font/slick.eot");
  src: url("/common/font/slick.eot?#iefix") format("embedded-opentype"), url("/common/font/slick.woff") format("woff"), url("/common/font/slick.ttf") format("truetype"), url("/common/font/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal;
}
.slick-prev, .slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}

.slick-prev:hover, .slick-prev:focus {
  outline: none;
  background: transparent;
  color: transparent;
}

.slick-next:hover, .slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}

.slick-prev:hover:before, .slick-prev:focus:before {
  opacity: 1;
}

.slick-next:hover:before, .slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before {
  opacity: 1;
}

.slick-prev:before, .slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: #fff;
  opacity: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}

[dir=rtl] .slick-prev {
  left: auto;
  right: -25px;
}

.slick-prev:before {
  content: "←";
}

[dir=rtl] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: -25px;
}

[dir=rtl] .slick-next {
  left: -25px;
  right: auto;
}

.slick-next:before {
  content: "→";
}

[dir=rtl] .slick-next:before {
  content: "←";
}

.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 20px 0 0;
  width: 100%;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 10px;
  width: 10px;
  margin: 0 7.5px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}
.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 10px;
  height: 10px;
  border-radius: #bfbfbf;
  font-family: "slick";
  font-size: 6px;
  line-height: 10px;
  text-align: center;
  background: #bfbfbf;
  border-radius: 100%;
  opacity: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
  background: #007e62;
  opacity: 1;
}

@media only screen and (max-width: 768px) {
  .slick-dots {
    position: absolute;
    margin-top: 0;
  }
}
#colorbox, #cboxOverlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: hidden;
  transform: translate3d(0, 0, 0);
}

#cboxWrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: hidden;
  transform: translate3d(0, 0, 0);
  max-width: none;
}

#cboxOverlay {
  position: fixed;
  width: 100%;
  height: 100%;
}

#cboxMiddleLeft, #cboxBottomLeft {
  clear: left;
}

#cboxContent {
  position: relative;
}

#cboxLoadedContent {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

#cboxTitle {
  margin: 0;
}

#cboxLoadingOverlay, #cboxLoadingGraphic {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow {
  cursor: pointer;
}

.cboxPhoto {
  float: left;
  margin: auto;
  border: 0;
  display: block;
  max-width: none;
  -ms-interpolation-mode: bicubic;
}

.cboxIframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
}

#colorbox, #cboxContent, #cboxLoadedContent {
  box-sizing: content-box;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
}

#cboxOverlay {
  background: #000;
  opacity: 0.6 !important;
  filter: alpha(opacity=60) !important;
}

#colorbox {
  outline: 0;
}

#cboxTopLeft {
  width: 25px;
  height: 25px;
  background: url(images/border1.png) no-repeat 0 0;
}

#cboxTopCenter {
  height: 25px;
  background: url(images/border1.png) repeat-x 0 -50px;
}

#cboxTopRight {
  width: 25px;
  height: 25px;
  background: url(images/border1.png) no-repeat -25px 0;
}

#cboxBottomLeft {
  width: 25px;
  height: 25px;
  background: url(images/border1.png) no-repeat 0 -25px;
}

#cboxBottomCenter {
  height: 25px;
  background: url(images/border1.png) repeat-x 0 -75px;
}

#cboxBottomRight {
  width: 25px;
  height: 25px;
  background: url(images/border1.png) no-repeat -25px -25px;
}

#cboxMiddleLeft {
  width: 25px;
  background: url(images/border2.png) repeat-y 0 0;
}

#cboxMiddleRight {
  width: 25px;
  background: url(images/border2.png) repeat-y -25px 0;
}

#cboxContent {
  background: #fff;
  overflow: hidden;
}

.cboxIframe {
  background: #fff;
}

#cboxError {
  padding: 50px;
  border: 1px solid #ccc;
}

#cboxTitle {
  position: absolute;
  bottom: 0px;
  left: 0;
  text-align: center;
  width: 100%;
  color: #999;
}

#cboxCurrent {
  position: absolute;
  bottom: 0px;
  left: 100px;
  color: #999;
}

#cboxLoadingOverlay {
  background: #fff url(images/loading.gif) no-repeat 5px 5px;
}

#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {
  border: 0;
  padding: 0;
  margin: 0;
  overflow: visible;
  width: auto;
  background: none;
}

#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {
  outline: 0;
}

#cboxSlideshow {
  position: absolute;
  bottom: 0px;
  right: 42px;
  color: #444;
}

#cboxPrevious {
  position: absolute;
  bottom: 0px;
  left: 0;
  color: #444;
}

#cboxNext {
  position: absolute;
  bottom: 0px;
  left: 63px;
  color: #444;
}

#cboxClose {
  position: absolute;
  bottom: 0;
  right: 0;
  display: block;
  color: #444;
}

.cboxIE #cboxTopLeft, .cboxIE #cboxTopCenter, .cboxIE #cboxTopRight, .cboxIE #cboxBottomLeft, .cboxIE #cboxBottomCenter, .cboxIE #cboxBottomRight, .cboxIE #cboxMiddleLeft, .cboxIE #cboxMiddleRight {
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
}

.top main {
  background: #f8f6ef;
}
.top main #mainSliderWrap {
  position: relative;
}
.top main #mainSliderWrap .mainTxt {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  transform: translate(-50%, -50%);
  text-align: center;
  z-index: 100;
}
.top main #mainSliderWrap .mainTxt img {
  max-width: 90%;
}
.top main #topBnr {
  margin-top: 55px;
}
.top main #topBnr ul {
  text-align: center;
}
.top main .newsList {
  margin-top: 60px;
}
.top main #productInfo {
  margin-top: 57px;
  padding: 55px 0 57px;
  background: url(/img/bg_product.jpg) 0 0/cover no-repeat;
}
.top main #productInfo .ttl01 {
  color: #FFF;
}
.top main #productInfo #productSliderWrap {
  position: relative;
}
.top main #productInfo #productSlider {
  font-size: 0;
}
.top main #productInfo #productSlider li a {
  display: block;
  margin: 30px 12.5px 0;
  background: #FFF;
}
.top main #productInfo #productSlider li a figure {
  overflow: hidden;
}
.top main #productInfo #productSlider li a figure img {
  width: 100%;
  transition: 0.2s;
}
.top main #productInfo #productSlider li a .txtArea {
  padding: 20px 30px 30px;
  font-size: 1.6rem;
}
.top main #productInfo #productSlider li a .txtArea h3 {
  color: #007e62;
  font-size: 2rem;
  text-align: center;
}
.top main #productInfo #productSlider li a .txtArea p {
  margin-top: 15px;
  color: #000;
}
.top main #productInfo #productSlider li a:hover img {
  opacity: 1;
  transform: scale(1.1);
}
.top main #productInfo #productSliderNav .slick-arrow {
  width: 20px;
  height: 50px;
  background-size: cover;
}
.top main #productInfo #productSliderNav .slick-arrow:before {
  content: none !important;
}
.top main #productInfo #productSliderNav .slick-prev {
  background: url(/common/img/ico_slider_prev.png) center center/cover no-repeat;
}
.top main #productInfo #productSliderNav .slick-next {
  background: url(/common/img/ico_slider_next.png) center center/cover no-repeat;
}
.top main .contentsList {
  margin-top: 30px;
}
.top main .contentsList .listWrap {
  margin-top: 15px;
  background: #FFF;
}
.top main .contentsList .listWrap .inner {
  max-width: 1160px;
}
.top main .contentsList .listWrap .inner ul {
  font-size: 0;
}
.top main .contentsList .listWrap .inner ul li {
  display: inline-block;
  width: 25%;
  padding: 25px 23px;
  text-align: center;
  vertical-align: top;
}
.top main .contentsList .listWrap .inner ul li a {
  display: block;
}
.top main .contentsList .listWrap .inner ul li a figure {
  overflow: hidden;
}
.top main .contentsList .listWrap .inner ul li a figure img {
  transition: 0.2s;
}
.top main .contentsList .listWrap .inner ul li a p {
  margin-top: 12px;
  color: #007e62;
  font-size: 1.8rem;
}
.top main .contentsList .listWrap .inner ul li a:hover figure img {
  transform: scale(1.05);
  opacity: 1;
}
.top main .contentsList .listWrap .inner ul li + li {
  border-left: 1px solid #f8f6ef;
}
.top main .bnrArea {
  padding: 55px 0 30px;
}
.top main .bnrArea ul {
  font-size: 0;
}
.top main .bnrArea ul li {
  display: inline-block;
  width: 46.5%;
  font-size: 1.6rem;
  vertical-align: top;
}
.top main .bnrArea ul li a {
  color: inherit;
}
.top main .bnrArea ul li a h3 {
  margin-top: 10px;
  color: #007e62;
  font-size: 2rem;
  text-align: center;
}
.top main .bnrArea ul li a:hover p {
  text-decoration: underline;
}
.top main #aboutIso {
  padding: 30px 0;
  background: #FFF;
}
.top main #aboutIso ul {
  font-size: 0;
}
.top main #aboutIso ul li {
  display: inline-block;
  width: 50%;
  text-align: center;
  vertical-align: top;
}
.top main #aboutIso ul li figure {
  display: inline-block;
  vertical-align: top;
}
.top main #aboutIso ul li .txtArea {
  display: inline-block;
  vertical-align: top;
  padding-left: 15px;
  font-size: 1.6rem;
  text-align: left;
}
.top main #aboutIso ul li .txtArea p + p {
  margin-top: 10px;
}
.top main #aboutIso ul li .txtArea a {
  padding-left: 20px;
  background: url(/common/img/ico_arrow_green.png) left center/14px 14px no-repeat;
  color: #007e62;
}
.top main #aboutIso ul li .txtArea a:hover {
  text-decoration: underline;
}

@media only screen and (max-width: 768px) {
  .top main #mainSliderWrap .mainTxt img {
    width: 66.875%;
    max-width: 642px;
  }
}
@media only screen and (min-width: 769px) {
  .top main #mainSlider img {
    display: none;
  }
  .top main #mainSlider > div {
    height: 620px;
  }
  .top main #mainSlider > div div {
    height: 100%;
  }
  .top main #mainSlider > div .mainSlider01 {
    background: url(/img/img_mainslider_01.jpg) center center/cover no-repeat;
  }
  .top main #mainSlider > div .mainSlider02 {
    background: url(/img/img_mainslider_02.jpg) center center/cover no-repeat;
  }
  .top main #mainSlider > div .mainSlider03 {
    background: url(/img/img_mainslider_03.jpg) center center/cover no-repeat;
  }
}
@media only screen and (min-width: 769px) {
  .top main #topBnr ul {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .top main #topBnr ul li {
    flex-basis: 47.95%;
  }
  .top main #topBnr ul li:nth-child(n+3) {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 768px) {
  .top main #topBnr ul li + li {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .top main .newsList {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .top main #productInfo {
    margin-top: 25px;
    padding: 20px 0 25px;
  }
}
@media only screen and (max-width: 1300px) {
  .top main #productInfo #productSliderWrap {
    width: 95%;
    margin: 0 auto;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 768px) {
  .top main #productInfo #productSliderWrap {
    width: 80%;
  }
}
@media only screen and (max-width: 640px) {
  .top main #productInfo #productSliderWrap {
    width: 87%;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 768px) {
  .top main #productInfo #productSlider li {
    margin-top: 10px;
  }
  .top main #productInfo #productSlider li a .txtArea {
    padding: 10px 15px;
    font-size: 1.2rem;
  }
  .top main #productInfo #productSlider li a .txtArea h3 {
    font-size: 1.4rem;
  }
  .top main #productInfo #productSlider li a .txtArea p {
    margin-top: 7px;
  }
}
@media only screen and (max-width: 640px) {
  .top main #productInfo #productSlider {
    margin-top: 10px;
  }
  .top main #productInfo #productSlider li {
    margin: 0;
  }
  .top main #productInfo #productSlider li a .txtArea {
    padding: 10px 15px;
  }
  .top main #productInfo #productSlider li a .txtArea h3 {
    font-size: 1.4rem;
  }
  .top main #productInfo #productSlider li a .txtArea p {
    margin-top: 7px;
    font-size: 1.2rem;
  }
}
@media only screen and (min-width: 1050px) {
  .top main #productInfo #productSlider li a {
    min-height: 377px;
  }
}
@media only screen and (max-width: 768px) {
  .top main #productInfo #productSliderNav .slick-arrow {
    width: 15px;
    height: 40px;
    background-size: 100%;
  }
}
@media only screen and (max-width: 768px) {
  .top main #productInfo #productSliderNav .slick-prev {
    left: -10%;
    transform: translateX(100%);
  }
}
@media only screen and (max-width: 768px) {
  .top main #productInfo #productSliderNav .slick-next {
    right: -10%;
    transform: translateX(-100%);
  }
}
@media only screen and (max-width: 768px) {
  .top main .contentsList {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .top main .contentsList .listWrap {
    margin-top: 10px;
  }
  .top main .contentsList .listWrap .inner ul li {
    width: 50%;
    padding: 20px 15px;
  }
  .top main .contentsList .listWrap .inner ul li a p {
    font-size: 1.2rem;
  }
}
@media only screen and (min-width: 769px) {
  .top main .bnrArea ul li + li {
    margin-left: 7%;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 768px) {
  .top main .bnrArea ul li a {
    text-align: center;
  }
}
@media only screen and (max-width: 768px) {
  .top main .bnrArea {
    padding: 25px 0;
  }
  .top main .bnrArea ul li {
    width: 100%;
    font-size: 1.2rem;
  }
  .top main .bnrArea ul li + li {
    margin-top: 20px;
  }
  .top main .bnrArea ul li a h3 {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .top main #aboutIso ul li .txtArea a {
    background-size: 10px 10px;
  }
}
@media only screen and (max-width: 768px) {
  .top main #aboutIso {
    padding: 25px 0;
  }
  .top main #aboutIso ul li figure {
    width: 27%;
  }
  .top main #aboutIso ul li .txtArea {
    width: 73%;
    padding-left: 7px;
    font-size: 1rem;
  }
  .top main #aboutIso ul li .txtArea p + p {
    margin-top: 5px;
  }
}
.lower.environment ol, .lower.social ol {
  margin-top: 30px;
  font-size: 1.6rem;
  list-style-type: none;
}
@media only screen and (max-width: 768px) {
  .lower.environment ol, .lower.social ol {
    margin-top: 12px;
    font-size: 1.4rem;
  }
}
.lower.environment ol li, .lower.social ol li {
  padding: 10px 0;
  border-bottom: 1px solid #CCC;
  display: table;
  width: 100%;
}
.lower.environment ol li > span, .lower.social ol li > span {
  display: table-cell;
}
.lower.environment ol li .number, .lower.social ol li .number {
  width: 30px;
  font-weight: bold;
  text-align: center;
}
.lower.environment table, .lower.social table {
  width: 100%;
  font-size: 1.5rem;
}
.lower.environment table th, .lower.environment table td, .lower.social table th, .lower.social table td {
  padding: 10px 5px;
  border: 1px solid #CCC;
  text-align: center;
  vertical-align: top;
}
.lower.environment table th a, .lower.environment table td a, .lower.social table th a, .lower.social table td a {
  color: #007e62;
  text-decoration: underline;
}
.lower.environment table th a:hover, .lower.environment table td a:hover, .lower.social table th a:hover, .lower.social table td a:hover {
  text-decoration: none;
}
.lower.environment table th, .lower.social table th {
  background: #f2f2f2;
  color: #007e62;
  vertical-align: middle;
}
.lower.environment table td, .lower.social table td {
  vertical-align: middle;
}
.lower.environment figure, .lower.social figure {
  margin-top: 35px;
  text-align: center;
}
.lower.products.detail #productAll {
  margin-top: 40px;
}
.lower.products.products05 table, .lower.products.products06 table, .lower.products.products07 table, .lower.products.products09 table, .lower.products.products10 table {
  width: 100%;
  font-size: 1.5rem;
  margin-top: 20px;
}
.lower.products.products05 table th, .lower.products.products05 table td, .lower.products.products06 table th, .lower.products.products06 table td, .lower.products.products07 table th, .lower.products.products07 table td, .lower.products.products09 table th, .lower.products.products09 table td, .lower.products.products10 table th, .lower.products.products10 table td {
  padding: 10px 5px;
  border: 1px solid #CCC;
  text-align: center;
  vertical-align: top;
}
.lower.products.products05 table th a, .lower.products.products05 table td a, .lower.products.products06 table th a, .lower.products.products06 table td a, .lower.products.products07 table th a, .lower.products.products07 table td a, .lower.products.products09 table th a, .lower.products.products09 table td a {
  color: #007e62;
  text-decoration: underline;
}
.lower.products.products05 table th a:hover, .lower.products.products05 table td a:hover, .lower.products.products06 table th a:hover, .lower.products.products06 table td a:hover, .lower.products.products07 table th a:hover, .lower.products.products07 table td a:hover, .lower.products.products09 table th a:hover, .lower.products.products09 table td a:hover {
  text-decoration: none;
}
.lower.products.products05 table th, .lower.products.products06 table th, .lower.products.products07 table th, .lower.products.products09 table th, .lower.products.products10 table th {
  background: #f2f2f2;
  color: #007e62;
}
.lower.products.products05 table th, .lower.products.products05 table td, .lower.products.products06 table th, .lower.products.products06 table td, .lower.products.products07 table th, .lower.products.products07 table td, .lower.products.products09 table th, .lower.products.products09 table td, .lower.products.products10 table th, .lower.products.products10 table td {
  vertical-align: middle;
}
.lower.products.products05 table .pdf, .lower.products.products06 table .pdf, .lower.products.products07 table .pdf, .lower.products.products09 table .pdf {
  color: #007e62;
}
.lower.products.products05 table .pdf:hover, .lower.products.products06 table .pdf:hover, .lower.products.products07 table .pdf:hover, .lower.products.products09 table .pdf:hover {
  text-decoration: underline;
}
.lower.products.products05 table .pdf:after, .lower.products.products06 table .pdf:after, .lower.products.products07 table .pdf:after, .lower.products.products09 table .pdf:after {
  content: url(/common/img/ico_pdf.png);
  vertical-align: middle;
}
.lower.products.products08 main p + p {
  text-align: center;
}
.lower.products.products09 thead, .lower.products.products09 tbody tr td:first-child {
  background: #f2f2f2;
}
@media only screen and (min-width: 769px) {
  .lower.products.products09 thead tr td:first-child,
  .lower.products.products09 tbody tr td:first-child {
    width: 42.5%;
  }
}
.lower.products.products09 table + p {
  margin-top: 10px;
  font-size: 1.4rem;
}
.lower.products.pack .itemList li {
  text-align: center;
}
.lower.products.pack .itemList li figcaption {
  margin-top: 15px;
  color: #007e62;
  font-size: 2rem;
  font-weight: 600;
}
.lower.products.newProducts .box01 {
  margin-top: 80px;
}
.lower.products.newProducts .box01 figure {
  text-align: center;
}
.lower.products.newProducts .box01 .red, .lower.products.newProducts .box01 .lower.inquiry .errorMsg {
  color: #e60012;
}
.lower.inquiry .lower.products.newProducts .box01 .errorMsg {
  color: #e60012;
}
.lower.products.newProducts .align-center {
  text-align: center;
}
.lower.products.newProducts .box01 .green {
  color: #007e62;
  font-weight: bold;
}
.lower.products.newProducts .ttl03 + p {
  margin-top: 20px;
}
.lower.products.newProducts .ttl03 + p span {
  font-weight: bold;
}
.lower.products.newProducts .ttl03 + p + figure {
  margin-top: 15px;
}
.lower.products.newProducts .summary {
  max-width: 600px;
  margin: 20px auto 40px;
  font-size: 1.8rem;
}
.lower.products.newProducts .summary li {
  position: relative;
  padding-left: 1em;
  color: #007e62;
}
.lower.products.newProducts .summary li:before {
  position: absolute;
  left: 0;
  top: 0;
}
.lower.products.newProducts .summary li.circle:before {
  content: "○";
}
.lower.products.newProducts .summary li.disc:before {
  content: "・";
}
.lower.products.newProducts .greenBox {
  margin-top: 60px;
  padding: 20px;
  border: 5px solid #99cbc0;
  border-radius: 15px;
}
.lower.products.newProducts .greenBox dt {
  font-size: 2.1rem;
  font-weight: bold;
}
.lower.products.newProducts .greenBox dd {
  margin-top: 20px;
  font-size: 1.8rem;
}
.lower.products.newProducts .greenBox + p {
  margin: 35px 0 45px;
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
}
.lower.products.newProducts .greenBox ul + p {
  margin-top: 20px;
}
.lower.products.newProducts .orangeBox {
  margin-top: 50px;
  padding: 15px;
  border-radius: 10px;
  background: #FFEDBF;
  font-size: 1.8rem;
}
@media only screen and (max-width: 768px) {
  .lower.products.newProducts .orangeBox {
    margin-top: 30px;
    font-size: 1.5rem;
  }
}
.lower.products.newProducts .orangeBox .ttl {
  color: #E36B0A;
  font-size: 2.2rem;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .lower.products.newProducts .orangeBox .ttl {
    font-size: 1.9rem;
  }
}
.lower.products.newProducts .orangeBox ol li {
  margin-top: 0;
  padding-left: 0;
  font-size: 1.8rem;
}
@media only screen and (max-width: 768px) {
  .lower.products.newProducts .orangeBox ol li {
    font-size: 1.5rem;
  }
}
.lower.products.newProducts .orangeBox ol li:before {
  content: none;
}
.lower.products.newProducts ol {
  max-width: 765px;
  margin: 0 auto;
  list-style-type: none;
}
.lower.products.newProducts ol li {
  position: relative;
  padding-left: 1em;
  margin-top: 10px;
  font-size: 1.6rem;
}
.lower.products.newProducts ol li:before {
  position: absolute;
  left: 0;
  top: 0;
  content: "※";
}
.lower.products.newProducts ol.attention + figure {
  margin-top: 40px;
}
.lower.products.newProducts [id^=sec0] {
  max-width: 800px;
  margin: 60px auto 0;
}
.lower.products.newProducts .sampleList {
  margin-top: 35px;
  text-align: center;
}
.lower.products.newProducts .sampleList .ttl {
  color: #e36c0a;
  font-weight: bold;
  font-size: 2.4rem;
}
.lower.products.newProducts .sampleList .ttl.blue {
  color: #196CAC;
}
.lower.products.newProducts .sampleList ul li {
  margin-top: 22px;
}
.lower.products.newProducts .sampleList ul li figcaption {
  margin-top: 6px;
  font-weight: bold;
}
.lower.products.newProducts .sampleList ul + p {
  margin-top: 25px;
  text-align: left;
}
.lower.products.newProducts #sec04 figure {
  margin-bottom: 22px;
  text-align: left;
}
.lower.products.newProducts #sec06 .red, .lower.products.newProducts #sec06 .lower.inquiry .errorMsg {
  font-weight: normal;
}
.lower.products.newProducts .ttl03 {
  margin-bottom: 30px;
}
.lower.products.newProducts .summary-list {
  display: flex;
  max-width: 800px;
  margin-top: 30px;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
}
@media (max-width: 1200px) {
  .lower.products.newProducts .summary-list {
    display: block;
  }
}
.lower.products.newProducts .summary-list__item {
  flex-basis: 48.75%;
  margin-top: 0;
  padding-left: 0;
  border: 3px solid #196CAC;
  border-radius: 10px;
}
.lower.products.newProducts .summary-list__item::before {
  content: none;
}
@media (max-width: 1200px) {
  .lower.products.newProducts .summary-list__item:nth-of-type(n+2) {
    margin-top: 20px;
  }
}
.lower.products.newProducts .summary-list__ttl {
  padding: 5px;
  background: #196CAC;
  color: #FFF;
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .lower.products.newProducts .summary-list__ttl {
    font-size: 1.8rem;
  }
}
.lower.products.newProducts .summary-list__ttl--navy {
  background: #00579a;
}
.lower.products.newProducts .summary-list__txt {
  padding: 15px;
}
@media only screen and (max-width: 768px) {
  .lower.products.newProducts .summary-list__txt {
    font-size: 1.4rem;
  }
}
.lower.products.newProducts .summary-list__txt--tabCenter {
  text-align: center;
}
.lower.inquiry .lower.products.newProducts #sec06 .errorMsg {
  font-weight: normal;
}
.lower.products.newProducts #sec06 .yellowBox {
  max-width: 700px;
  margin: 10px auto 55px;
  padding: 20px 25px;
  border-radius: 10px;
  background: #ffeec0;
}
.lower.products.newProducts #sec06 .yellowBox li {
  position: relative;
  padding-left: 1em;
}
.lower.products.newProducts #sec06 .yellowBox li:before {
  position: absolute;
  left: 0;
  top: 0;
  content: "・";
}
.lower.products.newProducts #sec06 .blackLight figure {
  text-align: center;
}
.lower.products.newProducts #sec06 .sampleList ul {
  max-width: 800px;
  margin: 0 auto;
}
.lower.products.newProducts #sec06 .sampleList ul li {
  width: auto;
}
.lower.products.newProducts #sec06 p.red + p, .lower.products.newProducts #sec06 .lower.inquiry p.errorMsg + p {
  margin-top: 0;
  text-align: left;
}
.lower.inquiry .lower.products.newProducts #sec06 p.errorMsg + p {
  margin-top: 0;
  text-align: left;
}
.lower.products.newProducts .btnArea {
  margin-top: 55px;
  text-align: center;
}
.lower.products.newProducts .btnArea p {
  margin-bottom: 15px;
  color: #007e62;
  font-weight: bold;
}
.lower.products.newProducts .btnArea a {
  display: inline-block;
  width: 100%;
  max-width: 400px;
  padding: 0 40px;
  background: #007e62;
  border: 1px solid #007e62;
  border-radius: 5px;
  color: #FFF;
  font-size: 2.1rem;
  font-weight: bold;
  line-height: 58px;
  cursor: pointer;
}
.lower.products.newProducts .btnArea a:hover {
  background: #FFF;
  color: #007e62;
}
.lower.company.top main p + p {
  text-align: center;
}
.lower.company.top .salesImage {
  margin-top: 45px;
  text-align: center;
}
.lower.company.top .salesImage h3 {
  width: 222px;
  border-width: 1px;
  border-style: solid;
  border-radius: 20px;
  color: #534741;
  font-size: 2rem;
  font-weight: 600;
  line-height: 39px;
}
.lower.company.message .box01 p {
  text-indent: 0.5em;
}
.lower.company.message #intro .box01 figure {
  text-align: center;
}
.lower.company.message #intro .box01 figure figcaption {
  margin-top: 10px;
}
.lower.company.message #intro .box01 figure figcaption span {
  display: block;
  font-size: 2.4rem;
}
.lower.company.outline main table {
  width: 100%;
  font-size: 1.5rem;
  font-size: 1.8rem;
}
.lower.company.outline main table th, .lower.company.outline main table td {
  padding: 10px 5px;
  border: 1px solid #CCC;
  text-align: center;
  vertical-align: top;
}
.lower.company.outline main table th a, .lower.company.outline main table td a {
  color: #007e62;
  text-decoration: underline;
}
.lower.company.outline main table th a:hover, .lower.company.outline main table td a:hover {
  text-decoration: none;
}
.lower.company.outline main table th {
  background: #f2f2f2;
  color: #007e62;
  text-align: left;
}
.lower.company.outline main table td {
  text-align: left;
}
.lower.company.outline main .bankList {
  font-size: 1.6rem;
  font-size: 1.8rem;
}
.lower.company.outline main .bankList li {
  padding: 10px 0;
  border-bottom: 1px solid #CCC;
}
.lower.company.outline main .bankList .th {
  width: 220px;
}
.lower.company.outline main ol {
  font-size: 1.6rem;
  list-style-type: none;
  font-size: 1.8rem;
}
.lower.company.outline main ol li {
  padding: 10px 0;
  border-bottom: 1px solid #CCC;
  display: table;
  width: 100%;
}
.lower.company.outline main ol li > span {
  display: table-cell;
}
.lower.company.outline main ol li .number {
  width: 30px;
  font-weight: bold;
  text-align: center;
}
.lower.company.outline main .table {
  display: table;
  width: 100%;
}
.lower.company.outline main .table + .table {
  margin-top: 7px;
}
.lower.company.outline main .th, .lower.company.outline main .td {
  display: table-cell;
}
.lower.company.outline main .th {
  width: 160px;
}
.lower.company.history table {
  width: 100%;
  font-size: 1.5rem;
}
.lower.company.history table th, .lower.company.history table td {
  padding: 10px 5px;
  border: 1px solid #CCC;
  text-align: center;
  vertical-align: top;
}
.lower.company.history table th a, .lower.company.history table td a {
  color: #007e62;
  text-decoration: underline;
}
.lower.company.history table th a:hover, .lower.company.history table td a:hover {
  text-decoration: none;
}
.lower.company.history table th {
  background: #f2f2f2;
  color: #007e62;
  text-align: left;
}
.lower.company.history table td {
  text-align: left;
}
.lower.company.history table th {
  width: 170px;
}
.lower.company.history table a {
  color: #007e62;
}
.lower.company.history table a:hover {
  text-decoration: underline;
}
.lower.company.organization p.right {
  text-align: right;
}
.lower.company.establishment .shopList li {
  padding-bottom: 34px;
  border-bottom: 1px solid #e5e5e5;
  font-size: 1.6rem;
}
.lower.company.establishment .shopList li h3 {
  font-size: 2.4rem;
  font-weight: bold;
  margin-bottom: 10px;
}
.lower.company.establishment .shopList li p, .lower.company.establishment .shopList li .btn {
  margin-bottom: 10px;
}
.lower.company.establishment .shopList li h3 + p, .lower.company.establishment .shopList li p + p, .lower.company.establishment .shopList li .btn + p {
  margin-top: 0;
}
.lower.company.establishment .shopList li .tel {
  margin-bottom: 0;
}
.lower.company.establishment .shopList li .tel span {
  position: relative;
  display: inline-block;
  width: 40px;
}
.lower.company.establishment .shopList li .tel span:after {
  position: absolute;
  right: 5px;
  top: 0;
  content: ":";
}
.lower.company.establishment .shopList li + li {
  margin-top: 30px;
}
.lower.company.establishment .shopList li a {
  color: inherit;
}
.lower.company.establishment .shopList li .btn a {
  display: inline-block;
  width: 95px;
  background: #007e62;
  border-radius: 3px;
  color: #FFF;
  line-height: 26px;
  text-align: center;
}
.lower.company.establishment .shopList li .btn a span {
  vertical-align: middle;
}
.lower.company.establishment .shopList li .btn a .arrow {
  display: inline-block;
  margin-right: 5px;
  border-top: 3.5px solid transparent;
  border-bottom: 3.5px solid transparent;
  border-left: 6px solid #FFF;
}
.lower.company.establishment .shopList li .btn__twin a.website {
  width: 136px;
}
.lower.company.establishment .shopList li .btn__twin a + a {
  margin-left: 8px;
}
.lower.company.establishment .shopList .shopList__alone {
  padding-bottom: 0;
  border-bottom: 0;
}
.lower.company.footwork #intro figure {
  margin-top: 40px;
  text-align: center;
}
.lower.company.footwork table {
  margin: 15px 0 20px;
  width: 100%;
  font-size: 1.5rem;
  table-layout: fixed;
}
.lower.company.footwork table th, .lower.company.footwork table td {
  padding: 10px 5px;
  border: 1px solid #CCC;
  text-align: center;
  vertical-align: top;
}
.lower.company.footwork table th a, .lower.company.footwork table td a {
  color: #007e62;
  text-decoration: underline;
}
.lower.company.footwork table th a:hover, .lower.company.footwork table td a:hover {
  text-decoration: none;
}
.lower.company.footwork table th {
  background: #f2f2f2;
  color: #007e62;
}
.lower.company.footwork #detail a {
  color: #007e62;
}
.lower.company.footwork #detail a:hover {
  text-decoration: underline;
}
.lower.company.network #country figure {
  margin-bottom: 40px;
  text-align: center;
}
.lower.company.iso .numberList {
  margin-top: 40px;
  font-size: 1.6rem;
  list-style-type: none;
}
.lower.company.iso .numberList li {
  padding: 10px 0;
  border-bottom: 1px solid #CCC;
  display: table;
  width: 100%;
}
.lower.company.iso .numberList li > span {
  display: table-cell;
}
.lower.company.iso .numberList li .number {
  width: 30px;
  font-weight: bold;
  text-align: center;
}
.lower.company.iso .numberList + p {
  margin-top: 35px;
  text-align: right;
}
.lower.company.iso .imgList {
  margin-top: 35px;
}
.lower.company.iso .imgList figure {
  text-align: center;
}
.lower.company.iso .imgList figure + figure {
  margin-top: 50px;
}
.lower.privacy dl dt {
  margin: 60px 0 15px;
  padding: 0 14px;
  background: #ebf5f3;
  color: #007e62;
  line-height: 35px;
}
.lower.privacy dl + p {
  margin-top: 50px;
  text-align: right;
}
.lower.risk dl dt {
  margin: 60px 0 15px;
  padding: 0 14px;
  background: #ebf5f3;
  color: #007e62;
  line-height: 35px;
}
.lower.risk dl ol {
  margin-top: 25px;
  font-size: 1.6rem;
  list-style-type: none;
}
.lower.risk dl ol li {
  padding: 10px 0;
  border-bottom: 1px solid #CCC;
  display: table;
  width: 100%;
}
.lower.risk dl ol li > span {
  display: table-cell;
}
.lower.risk dl ol li .number {
  width: 30px;
  font-weight: bold;
  text-align: center;
}
.lower.risk dl .green {
  color: #007e62;
}
.lower.sitemap .box01 {
  font-size: 1.6rem;
}
.lower.sitemap .box01 a {
  color: #007e62;
}
.lower.sitemap .box01 a:hover {
  text-decoration: underline;
}
.lower.sitemap .box01 p a {
  font-weight: bold;
}
.lower.sitemap .box01 p + p {
  margin-top: 15px;
}
.lower.sitemap .box01 .dirList {
  margin: 35px 0 15px;
}
.lower.sitemap .box01 .dirList th {
  vertical-align: top;
}
.lower.sitemap .box01 .dirList td {
  vertical-align: top;
  padding-left: 25px;
}
.lower.sitemap .box01 .dirList .lowerNav {
  padding-left: 1em;
}
.lower.virtual .slideWrap {
  background: #F7F7F7;
}
.lower.virtual .slick-arrow:before {
  content: none;
}
.lower.virtual #slider .slick-arrow {
  width: 34px;
  height: 34px;
  background-size: cover;
  z-index: 500;
}
.lower.virtual #slider .slick-prev {
  left: 14px;
  background-image: url(/virtual/img/btn_virtual_prev.png);
}
.lower.virtual #slider .slick-next {
  right: 14px;
  background-image: url(/virtual/img/btn_virtual_next.png);
}
.lower.virtual #sliderNav {
  padding: 20px 35px 20px;
}
.lower.virtual #sliderNav li {
  display: table;
  height: 100px;
  padding: 0 5px;
  color: #FFF;
  font-size: 1.6rem;
  text-align: center;
  line-height: 1.4;
  cursor: pointer;
}
.lower.virtual #sliderNav li span {
  display: block;
  font-size: 2.3rem;
}
.lower.virtual #sliderNav li .txtBox {
  display: table;
  width: 100%;
  height: 100%;
  margin: 0 10px 0 0;
  background: #007e62;
}
.lower.virtual #sliderNav li .txtBox .txtInner {
  display: table-cell;
  vertical-align: middle;
}
.lower.virtual #sliderNav li.slick-current .txtBox {
  border: 4px solid #B2B20B;
}
.lower.virtual #sliderNav li:focus {
  outline: 0;
}
.lower.virtual #sliderNav .slick-arrow {
  width: 13px;
  height: 25px;
  background-size: cover;
}
.lower.virtual #sliderNav .slick-prev {
  left: 12px;
  background-image: url(/virtual/img/ico_virtual_prev.jpg);
}
.lower.virtual #sliderNav .slick-next {
  right: 12px;
  background-image: url(/virtual/img/ico_virtual_next.jpg);
}
.lower.inquiry dl dt {
  margin: 60px 0 15px;
  padding: 0 14px;
  background: #ebf5f3;
  color: #007e62;
  line-height: 35px;
  margin-top: 40px;
}
.lower.inquiry table {
  width: 100%;
  font-size: 1.5rem;
}
.lower.inquiry table th, .lower.inquiry table td {
  padding: 10px 5px;
  border: 1px solid #CCC;
  text-align: center;
  vertical-align: top;
}
.lower.inquiry table th a, .lower.inquiry table td a {
  color: #007e62;
  text-decoration: underline;
}
.lower.inquiry table th a:hover, .lower.inquiry table td a:hover {
  text-decoration: none;
}
.lower.inquiry table th {
  background: #f2f2f2;
  color: #007e62;
}
.lower.inquiry form table, .lower.inquiry #confirm table {
  margin-top: 10px;
}
.lower.inquiry form table th, .lower.inquiry #confirm table th {
  width: 170px;
}
.lower.inquiry form table th, .lower.inquiry form table td {
  text-align: left;
  vertical-align: middle;
}
.lower.inquiry #confirm table th, .lower.inquiry #confirm table td {
  text-align: left;
  vertical-align: middle;
}
.lower.inquiry form table .required th:after, .lower.inquiry #confirm table .required th:after {
  color: #d82226;
  content: "※";
}
.lower.inquiry .red, .lower.inquiry .errorMsg {
  color: #e60012;
}
.lower.inquiry [type=text], .lower.inquiry textarea {
  width: 100%;
  font-size: 1.6rem;
  font-family: inherit;
  vertical-align: bottom;
}
.lower.inquiry [type=text] {
  height: 40px;
  padding: 0 16px;
  appearance: none;
}
.lower.inquiry textarea {
  height: 195px;
  padding: 10px 16px;
  appearance: none;
}
.lower.inquiry [type=submit], .lower.inquiry button {
  background: 0;
  border: 0;
  font-family: inherit;
  transition: 0.3s;
  appearance: button;
}
.lower.inquiry .btn01 {
  display: inline-block;
  padding: 0 40px;
  background: #007e62;
  border: 1px solid #007e62;
  border-radius: 5px;
  color: #FFF;
  font-size: 2.1rem;
  font-weight: bold;
  line-height: 58px;
  cursor: pointer;
}
.lower.inquiry .btn01:not(.cancel) {
  padding: 0 50px;
}
.lower.inquiry .btn01:not(.cancel):hover {
  background: #FFF;
  color: #007e62;
}
.lower.inquiry .btn01.cancel {
  background: #FFF;
  color: #007e62;
}
.lower.inquiry .radioList {
  margin-top: 20px;
}
.lower.inquiry .radioList input {
  margin-right: 10px;
}
.lower.inquiry hr {
  height: 0;
  margin: 30px 0;
  padding: 0;
  border: 0;
  border-top: 1px solid #ececec;
}
.lower.inquiry .btnList {
  margin-top: 40px;
  font-size: 0;
  text-align: center;
}
.lower.inquiry .btnFax {
  margin-top: 25px;
}
.lower.inquiry .errorMsg {
  margin: 10px 0;
}
.lower.sinsai .dateList, .lower.sinsai .detailArea {
  margin-top: 30px;
}
.lower.sinsai .dateList h3, .lower.sinsai .detailArea h3 {
  margin-bottom: 10px;
  font-weight: bold;
}
.lower.sinsai .dateList table, .lower.sinsai .detailArea table {
  width: 100%;
  font-size: 1.5rem;
}
.lower.sinsai .dateList table th, .lower.sinsai .dateList table td {
  padding: 10px 5px;
  border: 1px solid #CCC;
  text-align: center;
  vertical-align: top;
}
.lower.sinsai .detailArea table th, .lower.sinsai .detailArea table td {
  padding: 10px 5px;
  border: 1px solid #CCC;
  text-align: center;
  vertical-align: top;
}
.lower.sinsai .dateList table th a, .lower.sinsai .dateList table td a {
  color: #007e62;
  text-decoration: underline;
}
.lower.sinsai .detailArea table th a, .lower.sinsai .detailArea table td a {
  color: #007e62;
  text-decoration: underline;
}
.lower.sinsai .dateList table th a:hover, .lower.sinsai .dateList table td a:hover {
  text-decoration: none;
}
.lower.sinsai .detailArea table th a:hover, .lower.sinsai .detailArea table td a:hover {
  text-decoration: none;
}
.lower.sinsai .dateList table th, .lower.sinsai .detailArea table th {
  background: #f2f2f2;
  color: #007e62;
}
.lower.sinsai .dateList table th, .lower.sinsai .dateList table td {
  text-align: left;
}
.lower.sinsai .detailArea table th, .lower.sinsai .detailArea table td {
  text-align: left;
}
.lower.sinsai .dateList table th, .lower.sinsai .detailArea table th {
  color: #000;
  font-weight: normal;
}
.lower.sinsai .dateList table a, .lower.sinsai .detailArea table a {
  color: #007e62;
}
.lower.sinsai .dateList table a:hover, .lower.sinsai .detailArea table a:hover {
  text-decoration: underline;
}
.lower.sinsai .dateList table .new td:after, .lower.sinsai .detailArea table .new td:after {
  content: url(/sinsai/img/ico_new.gif);
}
.lower.sinsai .messageArea {
  margin-top: 45px;
}
.lower.sinsai .messageArea .messageTxt {
  font-size: 2.1rem;
  font-weight: bold;
  text-align: center;
}
.lower.sinsai .messageArea .messageTxt.small {
  font-size: 1.8rem;
  font-weight: normal;
}
.lower.sinsai .messageArea .right {
  margin-top: 35px;
  text-align: right;
}
.lower.sinsai .btnBack {
  margin-top: 15px;
  text-align: center;
}
.lower.sinsai .btnBack a {
  color: #007e62;
}
.lower.sinsai .btnBack a:hover {
  text-decoration: underline;
}
.lower.sinsai figure {
  margin-top: 30px;
  text-align: center;
}
.lower.ir .newsList.linkBottom .inner, .lower.info .newsList.linkBottom .inner {
  padding-bottom: 40px;
}
.lower.ir .newsList.linkBottom .inner .linkTxt a, .lower.info .newsList.linkBottom .inner .linkTxt a {
  top: auto;
  bottom: 0;
}
.lower.ir .newsList .selectArea, .lower.info .newsList .selectArea {
  margin-top: 15px;
}
.lower.ir .newsList .selectArea select, .lower.info .newsList .selectArea select {
  padding: 0 10px;
  height: 30px;
  font-size: 1.6rem;
  font-family: inherit;
  vertical-align: middle;
}
.lower.ir .newsList #tableTab, .lower.info .newsList #tableTab {
  margin-top: 20px;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  border-bottom: 3px solid #007e62;
}
.lower.ir .newsList #tableTab li, .lower.info .newsList #tableTab li {
  margin: 5px 3px 0 0;
  padding: 0 15px;
  border: 1px solid #007e62;
  border-bottom: 0;
  background: #ebf5f3;
  color: #007e62;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 39px;
  cursor: pointer;
}
.lower.ir .newsList #tableTab li:focus, .lower.ir .newsList #tableTab li.current {
  background: #007e62;
  color: #FFF;
}
.lower.info .newsList #tableTab li:focus, .lower.info .newsList #tableTab li.current {
  background: #007e62;
  color: #FFF;
}
.lower.ir .newsList #tableTab li:last-child, .lower.info .newsList #tableTab li:last-child {
  margin-right: 0;
}
.lower.ir .newsList a, .lower.info .newsList a {
  color: #007e62;
}
.lower.ir .newsList .pdf, .lower.info .newsList .pdf {
  text-align: right;
}
.lower.ir .newsList .pdf a, .lower.info .newsList .pdf a {
  padding-left: 18px;
  background: url(/common/img/ico_pdf.png) left center no-repeat;
}
.lower.ir .contentsList, .lower.info .contentsList {
  font-size: 0;
}
.lower.ir .contentsList li a, .lower.info .contentsList li a {
  display: block;
  background: #FFF;
}
.lower.ir .contentsList li a figure, .lower.info .contentsList li a figure {
  overflow: hidden;
}
.lower.ir .contentsList li a figure img, .lower.info .contentsList li a figure img {
  width: 100%;
  transition: 0.2s;
}
.lower.ir .contentsList li a .txtArea, .lower.info .contentsList li a .txtArea {
  padding: 20px 30px 30px;
  font-size: 1.6rem;
}
.lower.ir .contentsList li a .txtArea h3, .lower.info .contentsList li a .txtArea h3 {
  color: #007e62;
  font-size: 2rem;
  text-align: center;
}
.lower.ir .contentsList li a .txtArea p, .lower.info .contentsList li a .txtArea p {
  margin-top: 15px;
  color: #000;
}
.lower.ir .contentsList li a:hover img, .lower.info .contentsList li a:hover img {
  opacity: 1;
  transform: scale(1.1);
}
.lower.ir .contentsList li, .lower.info .contentsList li {
  margin-top: 30px;
}
.lower.ir.top #acrobat, .lower.info.top #acrobat {
  margin-top: 75px;
}
.lower.ir.top #acrobat dl dt, .lower.info.top #acrobat dl dt {
  margin: 60px 0 15px;
  padding: 0 14px;
  background: #ebf5f3;
  color: #007e62;
  line-height: 35px;
}
.lower.ir.top #acrobat dl dt:first-child, .lower.info.top #acrobat dl dt:first-child {
  margin-top: 0;
}
.lower.ir.governance dl dt, .lower.info.governance dl dt {
  margin: 60px 0 15px;
  padding: 0 14px;
  background: #ebf5f3;
  color: #007e62;
  line-height: 35px;
}
.lower.ir.governance figure, .lower.info.governance figure {
  text-align: center;
}
.lower.ir.governance a.pdf, .lower.info.governance a.pdf {
  padding-right: 23px;
  background: url(/common/img/ico_pdf.png) right center no-repeat;
  color: #007e62;
}
.lower.ir.governance a.pdf:hover, .lower.info.governance a.pdf:hover {
  text-decoration: underline;
}
.lower.ir.financial .box01, .lower.info.financial .box01 {
  margin-top: 80px;
}
.lower.ir.financial .box01 dl dt, .lower.info.financial .box01 dl dt {
  margin: 60px 0 15px;
  padding: 0 14px;
  background: #ebf5f3;
  color: #007e62;
  line-height: 35px;
}
.lower.ir.financial .box01 dl dt, .lower.info.financial .box01 dl dt {
  margin: 0;
  text-align: center;
}
.lower.ir.financial .box01 dl p, .lower.info.financial .box01 dl p {
  margin: 7px 0 5px;
  font-size: 1.2rem;
}
.lower.ir.financial .box01 dl figure, .lower.info.financial .box01 dl figure {
  text-align: center;
}
.lower.ir.financial .box01 dl .tableList, .lower.info.financial .box01 dl .tableList {
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  margin-top: 20px;
}
.lower.ir.financial .box01 dl .tableList table, .lower.info.financial .box01 dl .tableList table {
  width: 100%;
  font-size: 1.5rem;
  font-size: 1.3rem;
}
.lower.ir.financial .box01 dl .tableList table th, .lower.ir.financial .box01 dl .tableList table td {
  padding: 10px 5px;
  border: 1px solid #CCC;
  text-align: center;
  vertical-align: top;
}
.lower.info.financial .box01 dl .tableList table th, .lower.info.financial .box01 dl .tableList table td {
  padding: 10px 5px;
  border: 1px solid #CCC;
  text-align: center;
  vertical-align: top;
}
.lower.ir.financial .box01 dl .tableList table th a, .lower.ir.financial .box01 dl .tableList table td a {
  color: #007e62;
  text-decoration: underline;
}
.lower.info.financial .box01 dl .tableList table th a, .lower.info.financial .box01 dl .tableList table td a {
  color: #007e62;
  text-decoration: underline;
}
.lower.ir.financial .box01 dl .tableList table th a:hover, .lower.ir.financial .box01 dl .tableList table td a:hover {
  text-decoration: none;
}
.lower.info.financial .box01 dl .tableList table th a:hover, .lower.info.financial .box01 dl .tableList table td a:hover {
  text-decoration: none;
}
.lower.ir.financial .box01 dl .tableList table th, .lower.info.financial .box01 dl .tableList table th {
  background: #f2f2f2;
  color: #007e62;
}
.lower.ir.stock figure, .lower.info.stock figure {
  text-align: center;
}
.lower.ir.stock #intro table, .lower.info.stock #intro table {
  width: 100%;
}
.lower.ir.stock #intro tr, .lower.info.stock #intro tr {
  border-bottom: 1px solid #CCC;
}
.lower.ir.stock #intro tr th, .lower.ir.stock #intro tr td {
  padding: 10px;
  vertical-align: top;
}
.lower.info.stock #intro tr th, .lower.info.stock #intro tr td {
  padding: 10px;
  vertical-align: top;
}
.lower.ir.stock #intro tr td + td, .lower.info.stock #intro tr td + td {
  text-align: right;
}
.lower.ir.stock #stockHolder table, .lower.ir.stock #memo table {
  width: 100%;
  font-size: 1.5rem;
}
.lower.info.stock #stockHolder table, .lower.info.stock #memo table {
  width: 100%;
  font-size: 1.5rem;
}
.lower.ir.stock #stockHolder table th, .lower.ir.stock #stockHolder table td {
  padding: 10px 5px;
  border: 1px solid #CCC;
  text-align: center;
  vertical-align: top;
}
.lower.ir.stock #memo table th, .lower.ir.stock #memo table td {
  padding: 10px 5px;
  border: 1px solid #CCC;
  text-align: center;
  vertical-align: top;
}
.lower.info.stock #stockHolder table th, .lower.info.stock #stockHolder table td {
  padding: 10px 5px;
  border: 1px solid #CCC;
  text-align: center;
  vertical-align: top;
}
.lower.info.stock #memo table th, .lower.info.stock #memo table td {
  padding: 10px 5px;
  border: 1px solid #CCC;
  text-align: center;
  vertical-align: top;
}
.lower.ir.stock #stockHolder table th a, .lower.ir.stock #stockHolder table td a {
  color: #007e62;
  text-decoration: underline;
}
.lower.ir.stock #memo table th a, .lower.ir.stock #memo table td a {
  color: #007e62;
  text-decoration: underline;
}
.lower.info.stock #stockHolder table th a, .lower.info.stock #stockHolder table td a {
  color: #007e62;
  text-decoration: underline;
}
.lower.info.stock #memo table th a, .lower.info.stock #memo table td a {
  color: #007e62;
  text-decoration: underline;
}
.lower.ir.stock #stockHolder table th a:hover, .lower.ir.stock #stockHolder table td a:hover {
  text-decoration: none;
}
.lower.ir.stock #memo table th a:hover, .lower.ir.stock #memo table td a:hover {
  text-decoration: none;
}
.lower.info.stock #stockHolder table th a:hover, .lower.info.stock #stockHolder table td a:hover {
  text-decoration: none;
}
.lower.info.stock #memo table th a:hover, .lower.info.stock #memo table td a:hover {
  text-decoration: none;
}
.lower.ir.stock #stockHolder table th, .lower.ir.stock #memo table th {
  background: #f2f2f2;
  color: #007e62;
}
.lower.info.stock #stockHolder table th, .lower.info.stock #memo table th {
  background: #f2f2f2;
  color: #007e62;
}
.lower.ir.stock #stockHolder table, .lower.info.stock #stockHolder table {
  font-size: 1.6rem;
}
.lower.ir.stock #stockHolder table thead th, .lower.info.stock #stockHolder table thead th {
  vertical-align: middle;
}
.lower.ir.stock #stockHolder table tbody td, .lower.info.stock #stockHolder table tbody td {
  text-align: left;
}
.lower.ir.stock #stockHolder table tbody td + td, .lower.info.stock #stockHolder table tbody td + td {
  text-align: right;
}
.lower.ir.stock #stockHolder table tfoot th, .lower.info.stock #stockHolder table tfoot th {
  color: inherit;
}
.lower.ir.stock #memo table td, .lower.info.stock #memo table td {
  text-align: left;
}
.lower.ir.stock #memo table a, .lower.info.stock #memo table a {
  color: #007e62;
}
.lower.ir.stock #memo table a:hover, .lower.info.stock #memo table a:hover {
  text-decoration: underline;
}
.lower.ir.stock #memo table a[href^=tel], .lower.info.stock #memo table a[href^=tel] {
  color: inherit;
}
.lower.ir.koukoku p.nothing {
  padding-bottom: 25px;
  border-bottom: 1px solid #e5e5e5;
  text-align: center;
}
.lower.info.koukoku p.nothing {
  padding-bottom: 25px;
  border-bottom: 1px solid #e5e5e5;
  text-align: center;
}
.lower.info .selectArea {
  margin-top: 15px;
}
.lower.info .selectArea select {
  padding: 0 10px;
  height: 30px;
  font-size: 1.6rem;
  font-family: inherit;
  vertical-align: middle;
}
.lower.info #tableTab {
  margin-top: 20px;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  border-bottom: 3px solid #007e62;
}
.lower.info #tableTab li {
  margin: 5px 3px 0 0;
  padding: 0 15px;
  border: 1px solid #007e62;
  border-bottom: 0;
  background: #ebf5f3;
  color: #007e62;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 39px;
  cursor: pointer;
}
.lower.info #tableTab li:focus, .lower.info #tableTab li.current {
  background: #007e62;
  color: #FFF;
}
.lower.info #tableTab li:last-child {
  margin-right: 0;
}
.lower.notFound .btnArea {
  margin-top: 30px;
  text-align: center;
}
.lower.notFound .btnArea a {
  display: inline-block;
  padding: 0 40px;
  background: #007e62;
  border: 1px solid #007e62;
  border-radius: 5px;
  color: #FFF;
  font-size: 2.1rem;
  font-weight: bold;
  line-height: 58px;
  cursor: pointer;
}
.lower.notFound .btnArea a:not(.cancel) {
  padding: 0 50px;
}
.lower.notFound .btnArea a:not(.cancel):hover {
  background: #FFF;
  color: #007e62;
}

.outline-table th {
  width: 104px;
}
.outline-table__officers .table .td {
  padding-left: 7em;
  text-indent: -7em;
}

@media only screen and (max-width: 768px) {
  .lower.environment ol {
    font-size: 1.4rem;
  }
  .lower.environment ol li {
    padding: 5px 0;
  }
}
@media only screen and (max-width: 768px) {
  .lower.environment ol li number {
    width: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.environment ol {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.environment table {
    font-size: 1.1rem;
  }
  .lower.environment table th, .lower.environment table td {
    padding: 5px 2px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.environment figure {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.products.detail #productAll {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.products.products05 table, .lower.products.products06 table, .lower.products.products07 table, .lower.products.products09 table, .lower.products.products10 table {
    font-size: 1.1rem;
  }
  .lower.products.products05 table th, .lower.products.products05 table td, .lower.products.products06 table th, .lower.products.products06 table td, .lower.products.products07 table th, .lower.products.products07 table td, .lower.products.products09 table th, .lower.products.products09 table td, .lower.products.products10 table th, .lower.products.products10 table td {
    padding: 5px 2px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.products.products09 table + p {
    font-size: 1.2rem;
  }
}
@media only screen and (min-width: 769px) {
  .lower.products.pack .itemList {
    font-size: 0;
  }
  .lower.products.pack .itemList li {
    display: inline-block;
    width: 45%;
    margin-right: 10%;
    vertical-align: top;
  }
  .lower.products.pack .itemList li:nth-child(2n) {
    margin-right: 0;
  }
  .lower.products.pack .itemList li:nth-child(n+3) {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.products.pack .itemList li figcaption {
    margin-top: 10px;
    font-size: 1.7rem;
  }
  .lower.products.pack .itemList li + li {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.products.newProducts .box01 {
    margin-top: 35px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.products.newProducts .summary {
    margin: 20px auto 30px;
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower.products.newProducts .greenBox {
    margin-top: 35px;
    padding: 15px 12px;
    border-width: 3px;
    border-radius: 10px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.products.newProducts .greenBox dt {
    font-size: 1.7rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower.products.newProducts .greenBox dd {
    margin-top: 12px;
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower.products.newProducts .greenBox + p {
    margin: 20px 0 30px;
    font-size: 1.7rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower.products.newProducts ol li {
    font-size: 1.3rem;
    margin-top: 7px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.products.newProducts [id^=sec0] {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.products.newProducts .sampleList {
    margin-top: 25px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.products.newProducts .sampleList .ttl {
    font-size: 1.7rem;
  }
}
@media only screen and (min-width: 769px) {
  .lower.products.newProducts .sampleList ul {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
    max-width: 700px;
    margin: auto;
  }
}
@media only screen and (min-width: 769px) {
  .lower.products.newProducts .sampleList ul li {
    width: 29.5%;
  }
  .lower.products.newProducts .sampleList ul li + li {
    margin-left: 5.75%;
  }
}
@media only screen and (max-width: 768px) {
  .lower.products.newProducts #sec06 .yellowBox {
    margin: 10px auto 35px;
    padding: 15px 10px;
    border-radius: 7px;
    font-size: 1.4rem;
  }
}
@media only screen and (min-width: 769px) {
  .lower.products.newProducts #sec06 .blackLight {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    margin-bottom: 60px;
  }
  .lower.products.newProducts #sec06 .blackLight figure {
    width: 26.875%;
  }
  .lower.products.newProducts #sec06 .blackLight p {
    padding-left: 20px;
    width: 73.125%;
  }
}
@media only screen and (max-width: 768px) {
  .lower.products.newProducts #sec06 .blackLight p {
    margin-top: 20px;
  }
}
@media only screen and (min-width: 769px) {
  .lower.products.newProducts #sec06 .sampleList ul .double {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: flex-start;
  }
  .lower.products.newProducts #sec06 .sampleList ul .double p {
    width: 50%;
  }
  .lower.products.newProducts #sec06 .sampleList ul .double p span {
    display: block;
  }
  .lower.products.newProducts #sec06 .sampleList ul .double p + p {
    margin-top: 0;
    font-weight: bold;
  }
}
@media only screen and (max-width: 768px) {
  .lower.products.newProducts #sec06 .btnArea {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.products.newProducts #sec06 .btnArea a {
    font-size: 1.6rem;
    line-height: 42px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.top .salesImage {
    margin-top: 25px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.top .salesImage h3 {
    width: 150px;
    margin-bottom: 10px;
    font-size: 1.6rem;
    line-height: 30px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.message #intro .box01 figure figcaption span {
    font-size: 1.7rem;
  }
}
@media only screen and (min-width: 769px) {
  .lower.company.message #intro .box01 {
    display: table;
    width: 100%;
  }
  .lower.company.message #intro .box01 > * {
    display: table-cell;
    vertical-align: top;
  }
  .lower.company.message #intro .box01 figure {
    width: 300px;
    padding-right: 30px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.message #intro .box01 .txtArea {
    margin-top: 25px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.outline main table {
    font-size: 1.1rem;
  }
  .lower.company.outline main table th, .lower.company.outline main table td {
    padding: 5px 2px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.outline main table {
    font-size: 1.4rem;
  }
  .lower.company.outline main table th {
    display: block;
    width: 100%;
    padding: 7px;
  }
  .lower.company.outline main table td {
    display: block;
    width: 100%;
    padding: 7px;
    border-top: 0;
  }
  .lower.company.outline main table tr + tr th {
    border-top: 0;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.outline main .bankList {
    font-size: 1.4rem;
  }
  .lower.company.outline main .bankList li {
    padding: 5px 0;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.outline main .bankList .th {
    width: 180px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.outline main ol {
    font-size: 1.4rem;
  }
  .lower.company.outline main ol li {
    padding: 5px 0;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.outline main ol li number {
    width: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.outline main .table + .table {
    margin-top: 4px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.outline main .th {
    width: 120px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.history table {
    font-size: 1.1rem;
  }
  .lower.company.history table th, .lower.company.history table td {
    padding: 5px 2px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.history table th {
    width: 80px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.establishment .shopList li {
    padding-bottom: 25px;
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.establishment .shopList li h3 {
    font-size: 1.7rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.establishment .shopList li h3, .lower.company.establishment .shopList li p, .lower.company.establishment .shopList li .btn {
    margin-bottom: 5px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.establishment .shopList li figure {
    margin-top: 20px;
  }
}
@media only screen and (min-width: 769px) {
  .lower.company.establishment .shopList li {
    display: table;
    width: 100%;
  }
  .lower.company.establishment .shopList li > * {
    display: table-cell;
    vertical-align: middle;
  }
  .lower.company.establishment .shopList li figure {
    width: 240px;
    padding-left: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.footwork #intro figure {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.footwork table {
    font-size: 1.1rem;
  }
  .lower.company.footwork table th, .lower.company.footwork table td {
    padding: 5px 2px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.footwork table {
    table-layout: auto;
  }
  .lower.company.footwork table th {
    display: block;
  }
  .lower.company.footwork table td {
    display: inline-block;
    width: 50%;
    border-top: 0;
  }
  .lower.company.footwork table td:nth-child(2n) {
    border-left: 0;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.network #country figure {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.iso .numberList {
    font-size: 1.4rem;
  }
  .lower.company.iso .numberList li {
    padding: 5px 0;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.iso .numberList li number {
    width: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.iso .numberList {
    margin-top: 25px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.iso .numberList + p {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.iso .imgList {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.company.iso .imgList figure + figure {
    margin-top: 35px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.privacy dl dt {
    margin: 30px 0 10px;
    padding: 0 7px;
    line-height: 30px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.privacy dl + p {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.risk dl dt {
    margin: 30px 0 10px;
    padding: 0 7px;
    line-height: 30px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.risk dl ol {
    font-size: 1.4rem;
  }
  .lower.risk dl ol li {
    padding: 5px 0;
  }
}
@media only screen and (max-width: 768px) {
  .lower.risk dl ol li number {
    width: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.risk dl ol {
    margin-top: 15px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.sitemap .box01 {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower.sitemap .box01 p + p {
    margin-top: 10px;
  }
}
@media only screen and (min-width: 769px) {
  .lower.sitemap .box01 .dirList {
    display: table;
    width: 100%;
  }
  .lower.sitemap .box01 .dirList > li {
    display: table-cell;
    vertical-align: top;
  }
}
@media only screen and (max-width: 768px) {
  .lower.sitemap .box01 .dirList {
    margin: 25px 0 10px;
  }
  .lower.sitemap .box01 .dirList th {
    width: 60px;
  }
  .lower.sitemap .box01 .dirList > li + li {
    margin-top: 25px;
  }
}
@media only screen and (min-width: 769px) {
  .lower.virtual .box01 {
    padding: 40px 35px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.virtual #slider .slick-arrow {
    width: 25px;
    height: 25px;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 768px) {
  .lower.virtual #sliderNav li {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower.virtual #sliderNav li {
    height: 80px;
    font-size: 1.2rem;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 768px) {
  .lower.virtual #sliderNav li span {
    font-size: 1.9rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower.virtual #sliderNav li span {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower.inquiry dl dt {
    margin: 30px 0 10px;
    padding: 0 7px;
    line-height: 30px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.inquiry dl dt {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.inquiry table {
    font-size: 1.1rem;
  }
  .lower.inquiry table th, .lower.inquiry table td {
    padding: 5px 2px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.inquiry form table th, .lower.inquiry form table td {
    display: block;
    width: 100%;
    padding: 10px;
    font-size: 1.4rem;
  }
  .lower.inquiry #confirm table th, .lower.inquiry #confirm table td {
    display: block;
    width: 100%;
    padding: 10px;
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower.inquiry form table td, .lower.inquiry form table tr + tr th {
    border-top: 0;
  }
  .lower.inquiry #confirm table td, .lower.inquiry #confirm table tr + tr th {
    border-top: 0;
  }
}
@media only screen and (max-width: 768px) {
  .lower.inquiry [type=text] {
    height: 30px;
    padding: 0 8px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.inquiry textarea {
    padding: 10px 8px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.inquiry .btn01 {
    width: 100%;
    max-width: 250px;
    padding: 0 10px;
    font-size: 1.6rem;
    line-height: 45px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.inquiry .btn01:not(.cancel) {
    padding: 0 10px;
  }
}
@media only screen and (min-width: 769px) {
  .lower.inquiry .btnList > div {
    display: inline-block;
  }
  .lower.inquiry .btnList > div + div {
    margin-left: 36px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.inquiry .btnList {
    margin-top: 30px;
  }
  .lower.inquiry .btnList div + div {
    margin-top: 15px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.inquiry .btnFax .btn01 {
    width: auto;
    max-width: none;
  }
}
@media only screen and (min-width: 769px) {
  .lower.inquiry #finish .box01 {
    text-align: center;
  }
}
@media only screen and (max-width: 768px) {
  .lower.sinsai .dateList table, .lower.sinsai .detailArea table {
    font-size: 1.1rem;
  }
  .lower.sinsai .dateList table th, .lower.sinsai .dateList table td {
    padding: 5px 2px;
  }
  .lower.sinsai .detailArea table th, .lower.sinsai .detailArea table td {
    padding: 5px 2px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.sinsai .dateList table th, .lower.sinsai .dateList table td {
    display: block;
    width: 100%;
    padding: 7px 10px;
    font-size: 1.3rem;
  }
  .lower.sinsai .detailArea table th, .lower.sinsai .detailArea table td {
    display: block;
    width: 100%;
    padding: 7px 10px;
    font-size: 1.3rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower.sinsai .dateList table td, .lower.sinsai .dateList table tr + tr th {
    border-top: 0;
  }
  .lower.sinsai .detailArea table td, .lower.sinsai .detailArea table tr + tr th {
    border-top: 0;
  }
}
@media only screen and (max-width: 768px) {
  .lower.sinsai .messageArea {
    margin-top: 25px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.sinsai .messageArea .messageTxt {
    font-size: 1.7rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower.sinsai .messageArea .messageTxt.small {
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower.sinsai .messageArea .right {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.sinsai figure {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.ir .newsList.linkBottom .inner, .lower.info .newsList.linkBottom .inner {
    padding-bottom: 25px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.ir .newsList .selectArea, .lower.info .newsList .selectArea {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.ir .newsList .selectArea select, .lower.info .newsList .selectArea select {
    padding: 0 5px;
    height: 25px;
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower.ir .newsList #tableTab, .lower.info .newsList #tableTab {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.ir .newsList #tableTab li, .lower.info .newsList #tableTab li {
    padding: 0 15px;
    border-bottom: 1px solid #007e62;
    line-height: 35px;
  }
}
@media only screen and (min-width: 769px) {
  .lower.ir .newsList th, .lower.info .newsList th {
    width: 245px;
    padding-right: 0;
  }
  .lower.ir .newsList th:after, .lower.info .newsList th:after {
    margin-left: 13px;
  }
  .lower.ir .newsList th + td, .lower.info .newsList th + td {
    padding-left: 10px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.ir .newsList th, .lower.ir .newsList td {
    display: block;
    width: 100%;
    padding: 5px 10px;
  }
  .lower.info .newsList th, .lower.info .newsList td {
    display: block;
    width: 100%;
    padding: 5px 10px;
  }
  .lower.ir .newsList th, .lower.info .newsList th {
    font-size: 1.4rem;
  }
  .lower.ir .newsList .pdf, .lower.info .newsList .pdf {
    padding-top: 0;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 768px) {
  .lower.ir .contentsList li, .lower.info .contentsList li {
    margin-top: 10px;
  }
  .lower.ir .contentsList li a .txtArea, .lower.info .contentsList li a .txtArea {
    padding: 10px 15px;
    font-size: 1.2rem;
  }
  .lower.ir .contentsList li a .txtArea h3, .lower.info .contentsList li a .txtArea h3 {
    font-size: 1.4rem;
  }
  .lower.ir .contentsList li a .txtArea p, .lower.info .contentsList li a .txtArea p {
    margin-top: 7px;
  }
}
@media only screen and (max-width: 640px) {
  .lower.ir .contentsList, .lower.info .contentsList {
    margin-top: 10px;
  }
  .lower.ir .contentsList li, .lower.info .contentsList li {
    margin: 0;
  }
  .lower.ir .contentsList li a .txtArea, .lower.info .contentsList li a .txtArea {
    padding: 10px 15px;
  }
  .lower.ir .contentsList li a .txtArea h3, .lower.info .contentsList li a .txtArea h3 {
    font-size: 1.4rem;
  }
  .lower.ir .contentsList li a .txtArea p, .lower.info .contentsList li a .txtArea p {
    margin-top: 7px;
    font-size: 1.2rem;
  }
}
@media only screen and (min-width: 769px) {
  .lower.ir .contentsList, .lower.info .contentsList {
    margin-top: 50px;
  }
  .lower.ir .contentsList li, .lower.info .contentsList li {
    display: inline-block;
    width: 31.5%;
    margin-right: 2.75%;
    vertical-align: top;
  }
  .lower.ir .contentsList li:nth-child(3n), .lower.info .contentsList li:nth-child(3n) {
    margin-right: 0;
  }
}
@media only screen and (max-width: 768px) {
  .lower.ir .contentsList li, .lower.info .contentsList li {
    display: inline-block;
    vertical-align: top;
    width: 48%;
    margin-right: 4%;
  }
  .lower.ir .contentsList li:nth-child(2n), .lower.info .contentsList li:nth-child(2n) {
    margin-right: 0;
  }
}
@media only screen and (max-width: 768px) {
  .lower.ir.top #acrobat, .lower.info.top #acrobat {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.ir.top #acrobat dl dt, .lower.info.top #acrobat dl dt {
    margin: 30px 0 10px;
    padding: 0 7px;
    line-height: 30px;
  }
}
@media only screen and (min-width: 769px) {
  .lower.ir.top #acrobat .acrobatDl, .lower.info.top #acrobat .acrobatDl {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
  }
  .lower.ir.top #acrobat .acrobatDl .btn, .lower.info.top #acrobat .acrobatDl .btn {
    padding-left: 15px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.ir.top #acrobat .acrobatDl .btn, .lower.info.top #acrobat .acrobatDl .btn {
    margin-top: 20px;
    text-align: center;
  }
}
@media only screen and (max-width: 768px) {
  .lower.ir.governance dl dt, .lower.info.governance dl dt {
    margin: 30px 0 10px;
    padding: 0 7px;
    line-height: 30px;
  }
}
@media only screen and (min-width: 769px) {
  .lower.ir.financial .box01, .lower.info.financial .box01 {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
  }
  .lower.ir.financial .box01 dl, .lower.info.financial .box01 dl {
    width: 45.238%;
  }
  .lower.ir.financial .box01 .attention {
    margin-top: 8px;
    padding-left: 1em;
    font-size: 1.4rem;
    text-indent: -1em;
  }
}
@media only screen and (max-width: 768px) {
  .lower.ir.financial .box01, .lower.info.financial .box01 {
    margin-top: 40px;
  }
  .lower.ir.financial .box01 dl + dl, .lower.info.financial .box01 dl + dl {
    margin-top: 35px;
  }
  .lower.ir.financial .box01 .attention {
    margin-top: 24px;
    padding-left: 1em;
    font-size: 1.2rem;
    text-indent: -1em;
  }
}
@media only screen and (max-width: 768px) {
  .lower.ir.financial .box01 dl dt, .lower.info.financial .box01 dl dt {
    margin: 30px 0 10px;
    padding: 0 7px;
    line-height: 30px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.ir.financial .box01 dl .tableList table, .lower.info.financial .box01 dl .tableList table {
    font-size: 1.1rem;
  }
  .lower.ir.financial .box01 dl .tableList table th, .lower.ir.financial .box01 dl .tableList table td {
    padding: 5px 2px;
  }
  .lower.info.financial .box01 dl .tableList table th, .lower.info.financial .box01 dl .tableList table td {
    padding: 5px 2px;
  }
}
@media only screen and (min-width: 1101px) {
  .lower.ir.financial .box01 dl .tableList table, .lower.info.financial .box01 dl .tableList table {
    width: 20%;
  }
  .lower.ir.financial .box01 dl .tableList table + table th, .lower.ir.financial .box01 dl .tableList table + table td {
    border-left: 0;
  }
  .lower.info.financial .box01 dl .tableList table + table th, .lower.info.financial .box01 dl .tableList table + table td {
    border-left: 0;
  }
}
@media only screen and (max-width: 1100px) {
  .lower.ir.financial .box01 dl .tableList table, .lower.info.financial .box01 dl .tableList table {
    width: 50%;
  }
  .lower.ir.financial .box01 dl .tableList table:nth-child(2n) th, .lower.ir.financial .box01 dl .tableList table:nth-child(2n) td {
    border-left: 0;
  }
  .lower.info.financial .box01 dl .tableList table:nth-child(2n) th, .lower.info.financial .box01 dl .tableList table:nth-child(2n) td {
    border-left: 0;
  }
  .lower.ir.financial .box01 dl .tableList table:last-child, .lower.info.financial .box01 dl .tableList table:last-child {
    width: 100%;
  }
}
@media only screen and (min-width: 769px) {
  .lower.ir.library table th, .lower.ir.koukoku table th {
    width: 150px;
  }
  .lower.info.library table th, .lower.info.koukoku table th {
    width: 150px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.ir.stock #intro tr, .lower.info.stock #intro tr {
    font-size: 0;
  }
  .lower.ir.stock #intro tr th, .lower.ir.stock #intro tr td {
    display: inline-block;
    width: 100%;
    padding: 5px 10px;
    font-size: 1.3rem;
  }
  .lower.info.stock #intro tr th, .lower.info.stock #intro tr td {
    display: inline-block;
    width: 100%;
    padding: 5px 10px;
    font-size: 1.3rem;
  }
  .lower.ir.stock #intro tr th, .lower.info.stock #intro tr th {
    width: 15%;
  }
  .lower.ir.stock #intro tr th + td, .lower.info.stock #intro tr th + td {
    width: 85%;
  }
  .lower.ir.stock #intro tr td + td, .lower.info.stock #intro tr td + td {
    padding-top: 0;
    text-align: right;
  }
}
@media only screen and (max-width: 768px) {
  .lower.ir.stock #stockHolder table, .lower.ir.stock #memo table {
    font-size: 1.1rem;
  }
  .lower.info.stock #stockHolder table, .lower.info.stock #memo table {
    font-size: 1.1rem;
  }
  .lower.ir.stock #stockHolder table th, .lower.ir.stock #stockHolder table td {
    padding: 5px 2px;
  }
  .lower.ir.stock #memo table th, .lower.ir.stock #memo table td {
    padding: 5px 2px;
  }
  .lower.info.stock #stockHolder table th, .lower.info.stock #stockHolder table td {
    padding: 5px 2px;
  }
  .lower.info.stock #memo table th, .lower.info.stock #memo table td {
    padding: 5px 2px;
  }
}
@media only screen and (min-width: 769px) {
  .lower.ir.stock #stockHolder table thead th[rowspan="2"], .lower.info.stock #stockHolder table thead th[rowspan="2"] {
    width: 488px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.ir.stock #stockHolder .box01, .lower.info.stock #stockHolder .box01 {
    position: relative;
  }
  .lower.ir.stock #stockHolder .box01 > .sp, .lower.info.stock #stockHolder .box01 > .sp {
    position: absolute;
    left: 30px;
    top: 20px;
    color: #007e62;
    font-size: 3rem;
    opacity: 0.5;
    animation: Flash1 3s infinite;
    text-align: center;
    z-index: 10;
  }
  .lower.ir.stock #stockHolder .box01 > .sp p, .lower.info.stock #stockHolder .box01 > .sp p {
    margin-top: -10px;
    font-size: 1.2rem;
  }
  .lower.ir.stock #stockHolder .box01 .tableWrap, .lower.info.stock #stockHolder .box01 .tableWrap {
    position: relative;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    z-index: 5;
  }
  .lower.ir.stock #stockHolder .box01 table, .lower.info.stock #stockHolder .box01 table {
    width: 600px;
  }
  .lower.ir.stock #stockHolder .box01 table th, .lower.ir.stock #stockHolder .box01 table td {
    padding: 5px 10px;
    font-size: 1.3rem;
  }
  .lower.info.stock #stockHolder .box01 table th, .lower.info.stock #stockHolder .box01 table td {
    padding: 5px 10px;
    font-size: 1.3rem;
  }
  .lower.ir.stock #stockHolder .box01 table [colspan="2"], .lower.info.stock #stockHolder .box01 table [colspan="2"] {
    width: 440px;
  }
}
@media only screen and (min-width: 769px) {
  .lower.ir.stock #memo table th, .lower.info.stock #memo table th {
    width: 225px;
    vertical-align: middle;
  }
}
@media only screen and (max-width: 768px) {
  .lower.ir.stock #memo table th, .lower.ir.stock #memo table td {
    display: block;
    width: 100%;
    text-align: left;
    font-size: 1.3rem;
  }
  .lower.info.stock #memo table th, .lower.info.stock #memo table td {
    display: block;
    width: 100%;
    text-align: left;
    font-size: 1.3rem;
  }
  .lower.ir.stock #memo table td, .lower.ir.stock #memo table tr + tr th {
    border-top: 0;
  }
  .lower.info.stock #memo table td, .lower.info.stock #memo table tr + tr th {
    border-top: 0;
  }
  .lower.ir.stock #memo table th br, .lower.info.stock #memo table th br {
    display: none;
  }
}
@media only screen and (max-width: 768px) {
  .lower.ir.koukoku p.nothing, .lower.info.koukoku p.nothing {
    padding-bottom: 12px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.info .selectArea {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.info .selectArea select {
    padding: 0 5px;
    height: 25px;
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .lower.info #tableTab {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.info #tableTab li {
    padding: 0 15px;
    border-bottom: 1px solid #007e62;
    line-height: 35px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.notFound .btnArea a {
    width: 100%;
    max-width: 250px;
    padding: 0 10px;
    font-size: 1.6rem;
    line-height: 45px;
  }
}
@media only screen and (max-width: 768px) {
  .lower.notFound .btnArea a:not(.cancel) {
    padding: 0 10px;
  }
}
.stock .tableWrap + p {
  margin-top: 10px;
  font-size: 1.5rem;
}
@media only screen and (max-width: 768px) {
  .stock .tableWrap + p {
    font-size: 1.3rem;
  }
}

.product__inner--sm {
  max-width: 610px;
  margin: 0 auto;
}

.text-indent {
  margin-top: 25px;
  padding-left: 1em;
  text-indent: -1em;
}

/* Scss Document */
.txt-attention {
  position: relative;
  padding-left: 1.5rem;
}
.txt-attention:before {
  position: absolute;
  left: 0;
  top: 0;
}
.txt-attention:before {
  content: "※";
}
.txt-disc {
  position: relative;
  padding-left: 1.5rem;
}
.txt-disc:before {
  position: absolute;
  left: 0;
  top: 0;
}
.txt-disc:before {
  content: "・";
}

.font-normal {
  font-size: 1.6rem !important;
}
.font-bold {
  font-weight: bold;
}

.modal-movie {
  position: fixed;
  z-index: 10000;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
}
.modal-overlay {
  position: fixed;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
}
.modal-content {
  position: fixed;
  top: 50%;
  left: 50%;
  width: 90%;
  max-width: 600px;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
  transform: translate(-50%, -50%);
}
.modal-content:before {
  display: block;
  padding-bottom: 58.33%;
  content: "";
}
.modal-content__video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
}
.modal-close {
  position: absolute;
  right: 0;
  bottom: 100%;
  width: 20px;
  height: 20px;
  cursor: pointer;
}
.modal-close:before, .modal-close:after {
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  height: 2px;
  margin-top: -1px;
  background: #FFF;
  content: "";
}
.modal-close:before {
  transform: rotate(45deg);
}
.modal-close:after {
  transform: rotate(-45deg);
}

#js-modal.active {
  opacity: 1;
  visibility: visible;
}
#js-modal.active .modal-content.active {
  opacity: 1;
  visibility: visible;
}

.bnr-list {
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (max-width: 768px) {
  .bnr-list {
    display: block;
  }
}
.bnr-list__item {
  flex-basis: 48.23%;
  max-width: 48.23%;
  margin-top: 30px;
}
@media only screen and (max-width: 768px) {
  .bnr-list__item {
    max-width: none;
    margin-top: 20px;
  }
}
.bnr-list__item:nth-child(2n) {
  margin-left: 3.54%;
}
@media only screen and (max-width: 768px) {
  .bnr-list__item:nth-child(2n) {
    margin-left: 0;
  }
}

.only-sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .only-sp {
    display: block;
  }
}

.p-newproducts-keyvisual--sub {
  margin-top: 60px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-newproducts-keyvisual--sub {
    margin-top: 8vw;
  }
}
.p-newproducts__table {
  margin-top: 60px !important;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-newproducts__table {
    margin-top: 8vw !important;
  }
}
.p-newproducts .ttl03 {
  margin-bottom: 0 !important;
}
.p-newproducts-greenbox {
  margin-top: 60px;
  padding: 13px 20px;
  border: 5px solid #99cbc0;
  border-radius: 15px;
}
@media screen and (max-width: 768px) {
  .p-newproducts-greenbox {
    margin-top: 8vw;
  }
}
.p-newproducts-greenbox dt {
  font-weight: bold;
  font-size: 2.1rem;
  line-height: 1.71;
}
@media screen and (max-width: 768px) {
  .p-newproducts-greenbox dt {
    font-size: 1.7rem;
  }
}
.p-newproducts-greenbox dd {
  margin-top: 8px;
  font-size: 1.8rem;
  line-height: 1.78;
}
@media screen and (max-width: 768px) {
  .p-newproducts-greenbox dd {
    font-size: 1.6rem;
  }
}
.p-newproducts-greenbox dd + dt {
  margin-top: 20px;
}
@media screen and (max-width: 768px) {
  .p-newproducts-greenbox dd + dt {
    margin-top: 4.66vw;
  }
}
.p-newproducts-greenbox__list {
  padding-left: 1em;
  font-size: 1.6rem;
  line-height: 2;
  text-indent: -1em;
}
@media screen and (max-width: 768px) {
  .p-newproducts-greenbox__list {
    font-size: 1.4rem;
    line-height: 1.78;
  }
}
.p-newproducts-greenbox__text {
  margin-bottom: 8px;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .p-newproducts-greenbox__text {
    margin-bottom: 2vw;
    font-size: 1.4rem;
  }
}
.p-newproducts-greenbox__note {
  margin-top: 20px;
  padding-left: 1em;
  font-size: 1.4rem;
  line-height: 2;
  text-indent: -1em;
}
@media screen and (max-width: 768px) {
  .p-newproducts-greenbox__note {
    margin-top: 2.66vw;
    font-size: 1.2rem;
    line-height: 1.78;
  }
}
.p-newproducts-ttlPlus {
  margin-top: 26px !important;
  color: #00579a;
  font-weight: bold;
  font-size: 3.2rem;
  letter-spacing: 1.28px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-newproducts-ttlPlus {
    margin-top: 4vw !important;
    font-size: 2rem;
  }
}
.p-newproducts-ttlPlus--sm {
  display: block;
  color: #333;
  font-size: 1.6rem;
  letter-spacing: 0.77px;
}
@media screen and (max-width: 768px) {
  .p-newproducts-ttlPlus--sm {
    margin-top: 1.33vw;
    font-size: 1.4rem;
  }
}
.p-newproducts-bluebox {
  display: flex;
  margin: 35px 0 40px;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .p-newproducts-bluebox {
    display: block;
    margin: 5.33vw 0 6.66vw;
  }
}
.p-newproducts-bluebox__item {
  max-width: 48.75%;
  flex-basis: 48.75%;
}
@media screen and (max-width: 768px) {
  .p-newproducts-bluebox__item {
    max-width: 100%;
    flex-basis: 100%;
  }
}
@media screen and (max-width: 768px) {
  .p-newproducts-bluebox__item + .p-newproducts-bluebox__item {
    margin-top: 5.33vw;
  }
}
.p-newproducts-bluebox__name {
  padding: 7px 0 5px;
  border-radius: 8px 8px 0 0;
  color: #fff;
  background: #00579a;
  font-weight: bold;
  font-size: 2.4rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-newproducts-bluebox__name {
    font-size: 1.8rem;
  }
}
.p-newproducts-bluebox__txt {
  margin-top: 0 !important;
  padding: 12px 17px 15px;
  border: 2px solid #00579a;
  border-radius: 0 0 8px 8px;
  font-size: 1.6rem;
  line-height: 1.75;
}
@media screen and (max-width: 768px) {
  .p-newproducts-bluebox__txt {
    padding: 4vw 4vw;
    font-size: 1.4rem;
  }
}
.p-newproducts .bnr-list__item {
  margin-top: 60px;
}
@media screen and (max-width: 768px) {
  .p-newproducts .bnr-list__item {
    margin-top: 4vw;
  }
}
@media screen and (max-width: 768px) {
  .p-newproducts .btnArea {
    margin-top: 14.66vw !important;
  }
}

.p-recruit-contents__heading {
  margin-top: 72px;
  color: #007e62;
  font-weight: 600;
  font-size: 3rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-recruit-contents__heading {
    margin-top: 40px;
    font-size: 1.8rem;
  }
}
.p-recruit-contents__cards {
  display: flex;
  margin-top: 28px;
  justify-content: space-between;
  column-gap: 40px;
}
@media screen and (max-width: 767px) {
  .p-recruit-contents__cards {
    display: block;
    margin-top: 20px;
  }
}
.p-recruit-card {
  background: #fff;
}
@media screen and (max-width: 767px) {
  .p-recruit-card + .p-recruit-card {
    margin-top: 24px;
  }
}
.p-recruit-card__link {
  display: block;
  transition: opacity 0.3s;
}
@media screen and (min-width: 768px) and (hover: hover) {
  .p-recruit-card__link:hover {
    opacity: 0.8;
    transition: opacity 0.3s;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .p-recruit-card__link:hover img {
    opacity: 1;
  }
}
.p-recruit-card__image {
  width: 100%;
}
.p-recruit-card__image img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
.p-recruit-card__text {
  padding: 13px 0 14px;
  color: #007e62;
  font-weight: 300;
  font-size: 2rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-recruit-card__text {
    padding: 7px 0 8px;
    font-size: 1.6rem;
  }
}

.s12y-mv {
  padding: 125px 0 124px;
  background: url(/sustainability/img/img_mv.jpg) no-repeat center/cover;
}
@media screen and (max-width: 768px) {
  .s12y-mv {
    padding: 60px 0;
  }
}
.s12y-mv__heading {
  color: #fff;
  font-weight: 700;
  font-size: 3.2rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .s12y-mv__heading {
    font-size: 2.6rem;
  }
}
.s12y__topContents {
  padding-top: 76px;
}
@media screen and (max-width: 768px) {
  .s12y__topContents {
    padding-top: 40px;
  }
}
.s12y-cards {
  display: flex;
  column-gap: 24px;
}
@media screen and (max-width: 768px) {
  .s12y-cards {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    row-gap: 32px;
  }
}
.s12y-cards__item {
  background: #fff;
  flex-shrink: 0;
}
@media screen and (max-width: 1280px) and (min-width: 769px) {
  .s12y-cards__item {
    width: calc((100% - 72px) / 3);
  }
}
@media screen and (max-width: 768px) {
  .s12y-cards__image img {
    width: 100%;
    height: auto;
    object-fit: cover;
  }
}
.s12y-cards__box {
  padding: 26px 28px 32px;
}
@media screen and (max-width: 1280px) and (min-width: 769px) {
  .s12y-cards__box {
    padding-right: 12px;
    padding-left: 12px;
  }
}
.s12y-cards__title {
  color: #007e62;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1;
  text-align: center;
}
.s12y-cards__title a {
  display: inline-block;
  color: inherit;
}
@media screen and (min-width: 769px) and (hover: hover) {
  .s12y-cards__title a:hover {
    text-decoration: underline;
    text-underline-offset: 2px;
  }
}
.s12y-cards__list {
  margin-top: 20px;
  list-style-type: none;
}
.s12y-cards__arrow {
  position: relative;
  padding-left: 12px;
  color: #000;
  font-size: 1.6rem;
}
.s12y-cards__arrow::before {
  position: absolute;
  top: 8px;
  left: 0;
  width: 5px;
  height: 7px;
  background: url(/sustainability/img/arrow.png) no-repeat center/contain;
  content: "";
}
.s12y-cards__arrow + .s12y-cards__arrow {
  margin-top: 6px;
}
.s12y-cards__arrow a {
  display: inline-block;
  color: inherit;
}
@media screen and (min-width: 769px) and (hover: hover) {
  .s12y-cards__arrow a:hover {
    text-decoration: underline;
    text-underline-offset: 2px;
  }
}
.s12y__shinsai {
  margin-top: 74px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .s12y__shinsai {
    margin-top: 48px;
  }
}
.s12y__shinsai a {
  display: inline-block;
}
.s12y__lowerContents {
  padding-top: 64px;
}
@media screen and (max-width: 768px) {
  .s12y__lowerContents {
    padding-top: 40px;
  }
}
.s12y__section + .s12y__section {
  padding-top: 64px;
}
@media screen and (max-width: 768px) {
  .s12y__section + .s12y__section {
    padding-top: 40px;
  }
}
.s12y__heading {
  color: #007e62;
  font-weight: 700;
  font-size: 3rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .s12y__heading {
    font-size: 2rem;
  }
}
.s12y__box {
  position: relative;
  margin-top: 26px;
  padding: 64px;
  background: #fff;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .s12y__box {
    margin-top: 20px;
    padding: 20px 16px;
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 769px) {
  .s12y__box--narrow {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
.s12y__box--govImage {
  padding: 64px 96px;
}
@media screen and (max-width: 768px) {
  .s12y__box--govImage {
    padding: 25% 16px 20px;
  }
}
.s12y__sdgsMargin {
  margin-right: 11.27%;
}
@media screen and (max-width: 768px) {
  .s12y__sdgsMargin {
    margin-right: 25%;
  }
}
.s12y__textMargin {
  margin-top: 24px;
}
@media screen and (max-width: 768px) {
  .s12y__textMargin {
    margin-top: 16px;
  }
}
.s12y-sdgs {
  position: absolute;
  top: 0;
  right: 0;
  width: 12.245%;
}
@media screen and (max-width: 768px) {
  .s12y-sdgs {
    width: 20.833%;
  }
}
@media screen and (max-width: 768px) {
  .s12y-sdgs__item img {
    width: 100%;
    height: auto;
    object-fit: cover;
  }
}
.s12y__tertiary {
  margin-bottom: 12px;
  padding: 6px 16px;
  border-left: 5px solid #007e62;
  background: rgba(0, 126, 98, 0.08);
  color: #007e62;
  font-weight: 700;
  font-size: 1.8rem;
}
.s12y__tertiary--hasMargin {
  margin-top: 64px;
}
@media screen and (max-width: 768px) {
  .s12y__tertiary--hasMargin {
    margin-top: 24px;
  }
}
.s12y__pdf {
  margin-top: 24px;
}
@media screen and (max-width: 768px) {
  .s12y__pdf {
    margin-top: 16px;
  }
}
.s12y__pdf .pdf {
  padding-right: 24px;
  background: url(/common/img/ico_pdf.png) right no-repeat;
  color: #007e62;
}
@media screen and (min-width: 769px) and (hover: hover) {
  .s12y__pdf .pdf:hover {
    text-decoration: underline;
    text-underline-offset: 2px;
  }
}
.s12y__link {
  display: inline-block;
  margin-top: 24px;
  color: #007e62;
}
@media screen and (max-width: 768px) {
  .s12y__link {
    margin-top: 16px;
  }
}
@media screen and (min-width: 769px) and (hover: hover) {
  .s12y__link:hover {
    text-decoration: underline;
    text-underline-offset: 2px;
  }
}
.s12y-social-images {
  display: grid;
  margin-top: 32px;
  grid-template-columns: repeat(2, 1fr);
  gap: 50px;
}
@media screen and (max-width: 768px) {
  .s12y-social-images {
    display: block;
    margin-top: 16px;
  }
}
@media screen and (max-width: 768px) {
  .s12y-social-images__item + .s12y-social-images__item {
    margin-top: 14px;
  }
}
.s12y-social-images__figure {
  margin-top: 0 !important;
}
.s12y-social-images__caption {
  margin-top: 12px;
}
@media screen and (max-width: 768px) {
  .s12y-social-images__caption {
    margin-top: 2vw;
  }
}
.s12y-social__note {
  margin-top: 14px;
  font-size: 1.4rem;
  text-align: right;
}
.s12y-social-edu {
  margin: 26px 0 40px;
}
@media screen and (max-width: 768px) {
  .s12y-social-edu {
    margin: 12px 0 20px;
  }
}
.s12y-social-edu__line {
  padding: 10px;
  border-bottom: 1px solid #ccc;
}
.s12y-social-edu__term {
  position: relative;
  padding-left: 20px;
  color: #007e62;
  font-weight: 700;
}
.s12y-social-edu__term::before {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #007e62;
  content: "";
}
.s12y-social-edu__desc {
  margin-left: 20px;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .s12y-social-edu__desc {
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 768px) {
  .s12y-anchorScrollControl {
    scroll-margin-top: 90px;
  }
}

.csr__lowerContents {
  padding-top: 64px;
}
@media screen and (max-width: 768px) {
  .csr__lowerContents {
    padding-top: 40px;
  }
}
.csr__box {
  position: relative;
  padding: 64px;
  background: #fff;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .csr__box {
    padding: 20px 16px;
    font-size: 1.4rem;
  }
}
.csr__sdgsMargin {
  margin-right: 11.27%;
}
@media screen and (max-width: 768px) {
  .csr__sdgsMargin {
    margin-right: 25%;
  }
}
.csr__textMargin {
  margin-top: 24px;
}
@media screen and (max-width: 768px) {
  .csr__textMargin {
    margin-top: 16px;
  }
}
.csr-sdgs {
  position: absolute;
  top: 0;
  right: 0;
  width: 12.245%;
}
@media screen and (max-width: 768px) {
  .csr-sdgs {
    width: 20.833%;
  }
}
@media screen and (max-width: 768px) {
  .csr-sdgs__item img {
    width: 100%;
    height: auto;
    object-fit: cover;
  }
}
.csr__tertiary {
  margin-bottom: 12px;
  padding: 6px 16px;
  border-left: 5px solid #007e62;
  background: rgba(0, 126, 98, 0.08);
  color: #007e62;
  font-weight: 700;
  font-size: 1.8rem;
}
.csr__link {
  display: inline-block;
  color: #007e62;
}
@media screen and (min-width: 769px) and (hover: hover) {
  .csr__link:hover {
    text-decoration: underline;
    text-underline-offset: 2px;
  }
}

.saltripper sup {
  font-size: 70%;
}
.saltripper__summaryImage {
  margin-bottom: 16px;
  text-align: center;
}
.saltripper-mechanism {
  max-width: 800px;
  margin: 60px auto 0;
}
.saltripper-greenbox {
  max-width: 800px;
  margin: 24px auto 0;
  padding: 12px 20px;
  border: 5px solid #99cbc0;
  border-radius: 15px;
}
.saltripper-greenbox dt {
  font-weight: bold;
  font-size: 2.1rem;
}
.saltripper-greenbox dd {
  line-height: 2;
}
.saltripper-greenbox__list {
  max-width: none !important;
  margin-top: 8px !important;
}
.saltripper-greenbox__list li {
  position: static !important;
  margin-top: 0 !important;
  padding-left: 1em !important;
  text-indent: -1em;
}
.saltripper-banner {
  margin: 60px 20px 0;
  text-align: center;
}
.saltripper-banner__link {
  display: inline-block;
  transition: opacity 0.3s;
}
.saltripper-banner__link:hover {
  opacity: 0.7;
  transition: opacity 0.3s;
}
.saltripper-banner__link:hover img {
  opacity: 1;
}
.saltripper-buttonArea {
  margin: 60px 20px 0;
}
.saltripper-buttonArea__text {
  color: #007e62;
  font-weight: bold;
  font-size: 2.1rem;
  line-height: 1.05;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .saltripper-buttonArea__text {
    font-size: 1.6rem;
  }
}
.saltripper-buttonArea__link {
  display: block;
  width: 100%;
  max-width: 400px;
  margin: 24px auto 0;
  padding: 0 16px;
  border: 1px solid #007e62;
  border-radius: 5px;
  background: #007e62;
  color: #fff;
  font-weight: bold;
  font-size: 2.1rem;
  line-height: 60px;
  text-align: center;
}
.saltripper-buttonArea__link:hover {
  background: #fff;
  color: #007e62;
  transition: 0.15s;
  transition-property: color, background-color;
}

.shinsai-details {
  display: grid;
  margin-top: 32px;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 24px;
}
@media screen and (max-width: 768px) {
  .shinsai-details {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .shinsai-details__column + .shinsai-details__column {
    margin-top: 24px;
  }
}
.shinsai-details__image {
  margin-top: 0 !important;
}
.shinsai-details__text {
  margin-top: 24px;
  font-size: 1.6rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .shinsai-details__text {
    margin-top: 16px;
    font-size: 1.5rem;
  }
}/*# sourceMappingURL=site.css.map */