@charset "UTF-8";

@import url('https://fonts.googleapis.com/css?family=Barlow+Semi+Condensed:500,600|Noto+Sans+SC');

/*-----------------------------------------------------------

  =Reset default browser

-----------------------------------------------------------*/

html, body, div, span, applet, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,a, abbr, acronym, address, big, cite, code,del, dfn, em, img,ins, kbd, q, s, samp,small, strike, strong, sub, sup, tt, var,b, u, i, center,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, embed,figure, figcaption, footer, header, hgroup,menu, nav, output, ruby, section, summary,time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}
body {
  line-height: 1;
}
ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
ol, ul {
  list-style: none;
}
img {
  vertical-align: top;
  font-size: 0;
  line-height: 0;
}


/*-----------------------------------------------------------

  =Basic Setup

-----------------------------------------------------------*/
*, *::after, *::before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
img {
  max-width: 100%;
  height: auto;
  display: inline-block;
}
/* Link Style */
a {
  color: #111;
  text-decoration: none;
  transition: 0.2s ease all;
  -webkit-transition: 0.2s ease all;
  -moz-transition: 0.2s ease all;
}
a:focus, a:active, a:hover {
  color: #666;
  text-decoration: none;
}
a:hover img {
  opacity: .4;
  filter: alpha(opacity=40);
  -moz-opacity: 0.4;
  transition: 0.5s;
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  zoom: 1;
}
/* Transform */
.transform {
  -webkit-transform:scale(1);
  transform:scale(1);
  -webkit-transition:all .3s ease-in-out;
  transition:all .3s ease-in-out;
}
a:hover .transform {
  -webkit-transform:scale(1.1);
  transform: scale(1.1);
}
/* Scrollbar */
/* ::-webkit-scrollbar {
  width: 8px;
  background: #e5e5e5;
}
::-webkit-scrollbar-thumb {
  height: 10px;
  background: #333;
} */
/* Embed */
embed, iframe, object {
  max-width: 100%;
}
video {
  max-width: 100%;
  height: auto;
}
/* Font Setteing */
.tx-L { text-align: left !important; }
.tx-C { text-align: center !important; }
.tx-R { text-align: right !important; }
.tx-bold { font-weight: 600; }
/* .tx-justify { text-align: justify !important; } */
.tx-italic{font-style : italic;}
.paragraph li {
  letter-spacing: 0;
  line-height: 1.4;
  padding: 3px 0 3px 1em;
  text-indent: -1em;
}


/* Font Size */
.fs-9  { font-size: 9px !important;}
.fs-10 { font-size: 10px !important;}
.fs-11 { font-size: 11px !important;}
.fs-12 { font-size: 12px !important;}
.fs-13 { font-size: 13px !important;}
.fs-14 { font-size: 14px !important;}
.fs-15 { font-size: 15px !important;}
.fs-16 { font-size: 16px !important;}
.fs-18 { font-size: 18px !important;}
.fs-20 { font-size: 18px !important;}
.fs-21 { font-size: 21px !important;}
.fs-24 { font-size: 24px !important;}
.fs-28 { font-size: 28px !important;}
.fs-30 { font-size: 30px !important;}
.fs-36 { font-size: 36px !important;}
.fs-48 { font-size: 48px !important;}
.fs-60 { font-size: 60px !important;}

.bg-gray{
  background: #f7f7f7;
}
.bg-blue{
  background: #ebf1f7;
}

/* Margin-Top & Padding-Top */
.mt00 { margin-top:  0px !important; }  .pt00 { padding-top:  0px !important; }
.mt05 { margin-top:  5px !important; }  .pt05 { padding-top:  5px !important; }
.mt10 { margin-top: 10px !important; }  .pt10 { padding-top: 10px !important; }
.mt15 { margin-top: 15px !important; }  .pt15 { padding-top: 15px !important; }
.mt20 { margin-top: 20px !important; }  .pt20 { padding-top: 20px !important; }
.mt25 { margin-top: 25px !important; }  .pt25 { padding-top: 25px !important; }
.mt30 { margin-top: 30px !important; }  .pt30 { padding-top: 30px !important; }
.mt35 { margin-top: 35px !important; }  .pt35 { padding-top: 35px !important; }
.mt40 { margin-top: 40px !important; }  .pt40 { padding-top: 40px !important; }
.mt45 { margin-top: 45px !important; }  .pt45 { padding-top: 45px !important; }
.mt50 { margin-top: 50px !important; }  .pt50 { padding-top: 50px !important; }
.mt55 { margin-top: 55px !important; }  .pt55 { padding-top: 55px !important; }
.mt60 { margin-top: 60px !important; }  .pt60 { padding-top: 60px !important; }
.mt65 { margin-top: 65px !important; }  .pt65 { padding-top: 65px !important; }
.mt70 { margin-top: 70px !important; }  .pt70 { padding-top: 70px !important; }
.mt75 { margin-top: 75px !important; }  .pt75 { padding-top: 75px !important; }
.mt80 { margin-top: 80px !important; }  .pt80 { padding-top: 80px !important; }
.mt85 { margin-top: 85px !important; }  .pt85 { padding-top: 85px !important; }
.mt90 { margin-top: 90px !important; }  .pt90 { padding-top: 90px !important; }
.mt95 { margin-top: 95px !important; }  .pt95 { padding-top: 95px !important; }
.mt100{ margin-top:100px !important; } .pt100{ padding-top:100px !important; }
/* Margin-Right & Padding-Right */
.mr00 { margin-right:  0px !important; }  .pr00 { padding-right:  0px !important; }
.mr05 { margin-right:  5px !important; }  .pr05 { padding-right:  5px !important; }
.mr10 { margin-right: 10px !important; }  .pr10 { padding-right: 10px !important; }
.mr15 { margin-right: 15px !important; }  .pr15 { padding-right: 15px !important; }
.mr20 { margin-right: 20px !important; }  .pr20 { padding-right: 20px !important; }
.mr25 { margin-right: 25px !important; }  .pr25 { padding-right: 25px !important; }
.mr30 { margin-right: 30px !important; }  .pr30 { padding-right: 30px !important; }
.mr35 { margin-right: 35px !important; }  .pr35 { padding-right: 35px !important; }
.mr40 { margin-right: 40px !important; }  .pr40 { padding-right: 40px !important; }
.mr45 { margin-right: 45px !important; }  .pr45 { padding-right: 45px !important; }
.mr50 { margin-right: 50px !important; }  .pr50 { padding-right: 50px !important; }
.mr55 { margin-right: 55px !important; }  .pr55 { padding-right: 55px !important; }
.mr60 { margin-right: 60px !important; }  .pr60 { padding-right: 60px !important; }
.mr65 { margin-right: 65px !important; }  .pr65 { padding-right: 65px !important; }
.mr70 { margin-right: 70px !important; }  .pr70 { padding-right: 70px !important; }
.mr75 { margin-right: 75px !important; }  .pr75 { padding-right: 75px !important; }
.mr80 { margin-right: 80px !important; }  .pr80 { padding-right: 80px !important; }
.mr85 { margin-right: 85px !important; }  .pr85 { padding-right: 85px !important; }
.mr90 { margin-right: 90px !important; }  .pr90 { padding-right: 90px !important; }
.mr95 { margin-right: 95px !important; }  .pr95 { padding-right: 95px !important; }
.mr100{ margin-right:100px !important; }  .pr100{ padding-right:100px !important; }
/* Margin-Bottom & Padding-Bottom */
.mb00 { margin-bottom:  0px !important; }  .pb00 { padding-bottom:  0px !important; }
.mb05 { margin-bottom:  5px !important; }  .pb05 { padding-bottom:  5px !important; }
.mb10 { margin-bottom: 10px !important; }  .pb10 { padding-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }  .pb15 { padding-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }  .pb20 { padding-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }  .pb25 { padding-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }  .pb30 { padding-bottom: 30px !important; }
.mb35 { margin-bottom: 35px !important; }  .pb35 { padding-bottom: 35px !important; }
.mb40 { margin-bottom: 40px !important; }  .pb40 { padding-bottom: 40px !important; }
.mb45 { margin-bottom: 45px !important; }  .pb45 { padding-bottom: 45px !important; }
.mb50 { margin-bottom: 50px !important; }  .pb50 { padding-bottom: 50px !important; }
.mb55 { margin-bottom: 55px !important; }  .pb55 { padding-bottom: 55px !important; }
.mb60 { margin-bottom: 60px !important; }  .pb60 { padding-bottom: 60px !important; }
.mb65 { margin-bottom: 65px !important; }  .pb65 { padding-bottom: 65px !important; }
.mb70 { margin-bottom: 70px !important; }  .pb70 { padding-bottom: 70px !important; }
.mb75 { margin-bottom: 75px !important; }  .pb75 { padding-bottom: 75px !important; }
.mb80 { margin-bottom: 80px !important; }  .pb80 { padding-bottom: 80px !important; }
.mb85 { margin-bottom: 85px !important; }  .pb85 { padding-bottom: 85px !important; }
.mb90 { margin-bottom: 90px !important; }  .pb90 { padding-bottom: 90px !important; }
.mb95 { margin-bottom: 95px !important; }  .pb95 { padding-bottom: 95px !important; }
.mb100{ margin-bottom:100px !important; } .pb100{ padding-bottom:100px !important; }
/* Margin-Left & Padding-Left */
.ml00 { margin-left:  0px !important; }  .pl00 { padding-left:  0px !important; }
.ml05 { margin-left:  5px !important; }  .pl05 { padding-left:  5px !important; }
.ml10 { margin-left: 10px !important; }  .pl10 { padding-left: 10px !important; }
.ml15 { margin-left: 15px !important; }  .pl15 { padding-left: 15px !important; }
.ml20 { margin-left: 20px !important; }  .pl20 { padding-left: 20px !important; }
.ml25 { margin-left: 25px !important; }  .pl25 { padding-left: 25px !important; }
.ml30 { margin-left: 30px !important; }  .pl30 { padding-left: 30px !important; }
.ml35 { margin-left: 35px !important; }  .pl35 { padding-left: 35px !important; }
.ml40 { margin-left: 40px !important; }  .pl40 { padding-left: 40px !important; }
.ml45 { margin-left: 45px !important; }  .pl45 { padding-left: 45px !important; }
.ml50 { margin-left: 50px !important; }  .pl50 { padding-left: 50px !important; }
.ml55 { margin-left: 55px !important; }  .pl55 { padding-left: 55px !important; }
.ml60 { margin-left: 60px !important; }  .pl60 { padding-left: 60px !important; }
.ml65 { margin-left: 65px !important; }  .pl65 { padding-left: 65px !important; }
.ml70 { margin-left: 70px !important; }  .pl70 { padding-left: 70px !important; }
.ml75 { margin-left: 75px !important; }  .pl75 { padding-left: 75px !important; }
.ml80 { margin-left: 80px !important; }  .pl80 { padding-left: 80px !important; }
.ml85 { margin-left: 85px !important; }  .pl85 { padding-left: 85px !important; }
.ml90 { margin-left: 90px !important; }  .pl90 { padding-left: 90px !important; }
.ml95 { margin-left: 95px !important; }  .pl95 { padding-left: 95px !important; }
.ml100{ margin-left:100px !important; }  .pl100{ padding-left:100px !important; }

/* Column Layout Format */
.column-2 .row,.column-2 li { width: 50%; float:left;}
.column-3 .row,.column-3 li { width: 33.33%; float:left;}
.column-4 .row,.column-4 li { width: 25%; float:left;}
.column-5 .row,.column-5 li { width: 20%; float:left;}
.column-6 .row,.column-6 li { width: 16.66%; float:left;}
.column-8 .row,.column-8 li { width: 12.5%; float:left;}

.col-2 .row {
  width: 48%;
}
.col-3 .row{
  width: 30.3%;
  margin: 0 4.5% 0 0;
}
.col-3 .row:nth-child(3n) {
  margin: 0 0 0 0;
}
.col-4 .row {
  width: 22%;
  margin: 0 4% 0 0;
}
.col-4 .row:nth-child(4n) {
  margin: 0 0 0 0;
}
.col-6 .row {
  width: 14.66%;
  margin: 0 2% 0px 0;
}
.col-6 .row:nth-child(6n) {
  margin: 0 0 0px 0;
}
@media only screen and (max-width: 768px) {
  .col-2 .row {
    width: 100%;
  }
  .col-3 .row{
    width: 100%;
    margin: 0;
  }
  .col-4 .row:nth-child(odd) {
    width: 48%;
    margin: 0 2% 0 0;
  }
  .col-4 .row:nth-child(even) {
    width: 48%;
    margin: 0 0 0 2%;
  }
  .col-6 .row {
    width: 48%;
    margin: 0 2% 0 0;
  }
  .col-6 .row:nth-child(even) {
    width: 48%;
    margin: 0 0 0 2%;
  }
}

.flex-row{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.row-reverse{
  flex-direction: row-reverse;
}
.flex-center{
  align-items: center;
}
.box-shadow{
  box-shadow:0px 0px 3px 2px #eaeaea;
}

/* Device View */
.viewPC { display: block; }
.viewTB { display: none; }
.viewPCTB { display: block; }
.viewSP { display: none; }
.viewTBSP { display: none; }

@media only screen and (max-width: 1024px) {
  .viewPC { display: none; }
  .viewTB { display: block; }
  .viewPCTB { display: block; }
  .viewSP { display: none; }
  .viewTBSP { display: block; }
}
@media only screen and (max-width: 768px) {
  .viewPC { display: none; }
  .viewTB { display: none; }
  .viewPCTB { display: none; }
  .viewSP { display: block; }
  .viewTBSP { display: block; }
}


/* Animation */
.animated {
  visibility: hidden;
}
.bounceIn,.bounceInLeft, .bounceInRight, .bounceInDown,.bounceInUp,
.fadeIn, .fadeInLeft, .fadeInRight,.fadeInDown,.fadeInUp,.fadeInUpDelay,
.zoomInUp,.zoomInDown, .zoomIn,
.flip,.flipInX,.flipInY,
.lightSpeedIn,
.tada,.wobble,.shake,.rubberBand{
  visibility: visible;
}
.delay-01s { -webkit-animation-delay:0.1s; animation-delay:0.1s; }
.delay-02s { -webkit-animation-delay:0.2s; animation-delay:0.2s; }
.delay-03s { -webkit-animation-delay:0.3s; animation-delay:0.3s; }
.delay-04s { -webkit-animation-delay:0.4s; animation-delay:0.4s; }
.delay-05s { -webkit-animation-delay:0.5s; animation-delay:0.5s; }
.delay-06s { -webkit-animation-delay:0.6s; animation-delay:0.6s; }
.delay-07s { -webkit-animation-delay:0.7s; animation-delay:0.7s; }
.delay-08s { -webkit-animation-delay:0.8s; animation-delay:0.8s; }
.delay-09s { -webkit-animation-delay:0.9s; animation-delay:0.9s; }
.delay-1s  {  -webkit-animation-delay:1s; animation-delay:1s; }
.delay-2s  {  -webkit-animation-delay:2s; animation-delay:2s; }
.delay-3s  {  -webkit-animation-delay:3s; animation-delay:3s; }
.delay-4s  {  -webkit-animation-delay:4s; animation-delay:4s; }
.delay-5s  {  -webkit-animation-delay:5s; animation-delay:5s; }
.delay-6s  {  -webkit-animation-delay:6s; animation-delay:6s; }

/* button */
.button {
  display: block;
  font-size: 12px;
  line-height: 46px;
  margin: 30px auto 0;
  width: 200px;
}
.product-button {
  display: block;
  font-size: 14px;
  line-height: 70px;
  margin: 0 10% 0;
  width: 80%;
}
.button,.button::before,.button::after{
  -webkit-transition: all .4s ease-in-out;
  -moz-transition: all .4s ease-in-out;
  transition: all 0.4s ease-in-out 0s;
}
.square-btn{
  background: #000;
  color: #fff;
  display: inline-block;
  position: relative;
  text-align: center;
  width: 100%;
}
.square-btn.white-color{
  background: #fff;
  color: #000!important;
}
.square-btn.border-white{
  background: none;
  border:2px solid #fff;
}
.square-btn.red-color{
  background: #d7000f;
  color: #fff;
}
.square-btn.gray-color{
  background: #6e6e6e;
  color: #fff;
}
.square-btn.blue-color{
  background: #005ba6;
  color: #fff;
}
.square-btn.border-red{
  background: #fff;
  border:1px solid #d7000f;
  color: #d7000f;
}
.square-btn i {
  position: absolute;
  color: #fff;
  top: 0;
  right: 5px;
  line-height: 46px;
  height: 46px;
  width: 10px;
  -webkit-transition: .3s ease;
  -moz-transition: .3s ease;
  transition: .3s ease;
}
.product-button i{
line-height: 70px;
  height: 70px;
}
.square-btn.border-red i{
  color:#d7000f!important;
}
.square-btn.white-color i{
  color:#000;
}
.square-btn.red-color i,
.square-btn.gray-color i{
  color:#fff!important;
}
.square-btn:hover {
  color: #fff;
  background: #333;
  letter-spacing: .2em;
}
.square-btn.white-color:hover,
.square-btn.red-color:hover,
.square-btn.gray-color:hover{
  color: #fff!important;
  background: #333;
}
.square-btn.border-white:hover{
  color: #000!important;
  background: #fff;
}
.square-btn.border-red:hover{
  background:#d7000f!important;
  color: #fff!important;
}
.square-btn:hover i {
  right: 0px;
  color: #fff;
}
.square-btn.border-white:hover i {
  right: 0px;
  color: #000;
}
@media screen and (max-width: 768px) {
  .product-button{
    font-size:12px;
  }
  .button {
    width: 260px;
    line-height: 50px;
    font-size: 10px;
    margin: 25px auto 0;
  }
  .button i {
    line-height: 50px;
    height: 50px;
  }
}

/* Hover-animation
-----------------------------------------------------------*/
.teaser-item {
  position:relative;
  display:block;
  transition: 0.2s ease all;
}
.teaser-item figure {
  overflow:hidden;
  position:relative;
  text-align: center;
}
.teaser-item img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 !important;
  padding: 0 !important;
}
.readmore{
  display: none;
}
@media only screen and (min-width: 769px) {
  .teaser-item figure::before {
    content: "";
    background-color: rgba(0, 0, 0, 0.9);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: .8s;
    z-index: 1;
  }
  .teaser-item:hover figure::before {
    transition: .2s;
    opacity: 1;
  }
  .teaser-item img {
    -webkit-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
  }
  .teaser-item:hover img {
    transform: scale(1.2);
    -webkit-transform: scale(1.2);
    transition: .3s;
    filter: blur(2px);
    -webkit-filter: blur(2px);
  }
  .teaser-item:hover:after {
    transition: .2s;
    opacity: 1;
    transform: scale(1);
    -webkit-transform: scale(1);
  }
  .readmore {
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    color: #fff;
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0;
    opacity: 0;
    transition: .2s;
  }
  .teaser-item:hover .readmore {
    opacity: 1;
    transition: .2s;
    z-index: 1;
    letter-spacing: .2em;
  }
  .teaser-item:hover .readmore:after {
    width: 80px;
    transition-delay: .36s;
  }
  .readmore:after {
    transition:0.3s ease all;
    background:#d7000f;
    height:1px;
    width:0px;
    display:block;
    content: "";
    position:absolute;
    left:50%;
    margin-left:-40px;
    margin-top:-8px;
  }
}

/* Social
-----------------------------------------------------------*/
.social-block {
  width: 100%;
  /* min-height: 100px; */
  margin:70px 0 40px;
  z-index: 10;
  text-align: center;
  padding:20px 0;
  border-bottom:2px solid #000;
  border-top:2px solid #000;
}
.social-block .ttl{
  font-size:18px;
  margin-bottom:20px;
}
.shareList {
  list-style:none;
  display: flex;
  justify-content: flex-end;
  flex-wrap:wrap;
  width:100%;
  margin:0;
  padding:0;
}
.shareList__item {
  flex-grow: 1;
  height:40px;
  line-height:40px;
  min-width:100px;
  text-align:center;
}
.shareList__link {
  display:block;
  color:#ffffff;
  text-decoration: none;
}
.shareList__link::before{
  font-size:20px;
  display:block;
  transition: ease-in-out .2s;
}
.shareList__link:hover::before{
  background:#ffffff;
  transform: scale(1.2);
  /*box-shadow:1px 1px 4px 0px rgba(0,0,0,0.15); */
}

.shareList__link.icon-twitter{background:#55acee;}
.shareList__link.icon-twitter:hover::before{color:#55acee;}

.shareList__link.icon-facebook{background:#3B5998;}
.shareList__link.icon-facebook:hover::before{color:#3B5998;}

.shareList__link.icon-google-plus{background:#dd4b39;}
.shareList__link.icon-google-plus:hover::before{color:#dd4b39;}

.shareList__link.icon-hatebu{background:#008FDE;}
.shareList__link.icon-hatebu:hover::before{color:#008FDE;}

.shareList__link.icon-pocket{background:#EB4654;}
.shareList__link.icon-pocket:hover::before{color:#EB4654;}

.shareList__link.icon-rss{background:#ff9900;}
.shareList__link.icon-rss:hover::before{color:#ff9900;}

.shareList__link.icon-feedly{background:#6cc655;}
.shareList__link.icon-feedly:hover::before{color:#6cc655;}

.shareList__link.icon-pinterest{background:#cb2027;}
.shareList__link.icon-pinterest:hover::before{color:#cb2027;}

.shareList__link.icon-linkedin{background:#0e76a8;}
.shareList__link.icon-linkedin:hover::before{color:#0e76a8;}

.shareList__link.icon-line{background:#1dcd00;}
.shareList__link.icon-line:hover::before{color:#1dcd00;}

@media only screen and (max-width: 768px) {
  .social-block {
    width: 100%;
    margin:50px 0 40px;
  }
  .social-block .ttl{
    font-size:16px;
  }
  .shareList__link::before{
    font-size:15px;
  }
}

/* PostNav
-----------------------------------------------------------*/
.post-nav {
  font-size: 12px;
}
.post-nav .prev {
  width: 45%;
  display: inline-block;
  padding: 5px;
}
.post-nav .prev i {
  margin-right: 8px;
}
.post-nav .next {
  width: 45%;
  text-align: right;
  display: inline-block;
  padding: 5px;
}
.post-nav .next i {
  margin-left: 8px;
}

/* wp-pagenavi
-----------------------------------------------------------*/
.wp-pagenavi {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 10px 0;
  max-width: 1140px;
  margin: 30px auto 0;
}
.wp-pagenavi a, .wp-pagenavi span {
  font-size: 12px;
  background: #eeeeee;
  text-decoration: none;
  padding: 8px 16px;
  margin: 1px;
  vertical-align: middle;
  -webkit-transition: .6s ease;
  -moz-transition: .6s ease;
  transition: .6s ease;
}
.wp-pagenavi a:hover, .wp-pagenavi span.current {
  background: #4b4948;
  color: #fff;
}
.wp-pagenavi .pages {
  background: #eeeeee;
  color: #111;
}
@media screen and (max-width: 767px) {
  .wp-pagenavi a, .wp-pagenavi span {
    font-size: 10px;
    text-decoration: none;
    padding: 5px 12px;
    margin: 1px;
    vertical-align: middle;
  }
  .wp-pagenavi .page, .wp-pagenavi .extend, .wp-pagenavi .last {
    display: none;
  }
}



/*-----------------------------------------------------------

  =Global Layout

-----------------------------------------------------------*/
body {
  font-family: 'Noto Sans SC', sans-serif;
  font-size: 14px;
  line-height: 1.8;
  color: #111;
  letter-spacing: .05em;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  /* overflow-wrap: break-word; */
  -webkit-font-smoothing: antialiased;
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: unset;
}
/* Barlow Semi Condensed */
/* .f-ty01,.date,.readmore,.footer-contact .tel-no,.copyright,.wp-pagenavi,.button{
  font-family: 'Barlow Semi Condensed','Noto Sans SC', sans-serif;
} */
@media only screen and ( max-width:768px) {
  body {
    font-size: 12px;
  }
  /* .f-ty01,.date,.readmore,.footer-contact .tel-no,
  .copyright,.wp-pagenavi,.button{
    font-family: 'Barlow Semi Condensed',"Noto Sans SC", sans-serif;
  } */
}

/* Frame Format
-----------------------------------------------------------*/
#wrapper {
  width: 100%;
  overflow: hidden;
  position: relative;
  padding-top: 80px;
}
.inner {
  max-width: 1220px;
  margin: 0px auto;
  padding: 0 20px;
  overflow: hidden;
}
.wrap {
  padding: 60px 0;
  overflow: hidden;
}
#main-column {
  width: 72%;
}
#side-column {
  width: 23%;
}
#page-top {
  position: fixed;
  bottom: 0px;
  right: 0px;
  width: 70px;
  z-index: 2;
  -webkit-transition: .4s;
  -o-transition: .4s;
  transition: .4s;
}
#page-top:hover {
  -webkit-transform: translateY(-10px);
  -ms-transform: translateY(-10px);
  transform: translateY(-10px);
}


@media screen and ( max-width:1000px) {
  #wrapper {
    padding-top: 50px;
  }
  .wrap {
    padding:30px 0 ;
  }
  #page-top {
    width: 50px;
  }
}

@media screen and ( max-width:768px) {
  #main-column {
    width: 100%;
    margin-bottom:50px;
  }
  #side-column {
    width: 100%;
  }
}


/* Font Format
-----------------------------------------------------------*/
.section-ttl {
  line-height: 1.5;
  text-align: center;
  color:#000;
  margin-bottom:50px;
}
.section-ttl .tit-en{
  color:#d7000f;
  font-size:12px;
  font-weight: 600;
  letter-spacing: .1em;
}
.section-ttl .tit-jp{
  position: relative;
  display: block;
  font-weight: 700;
  font-size:36px;
}
.section-ttl .tit-jp:after {
  background: #d7000f;
  content: '';
  display: block;
  height: 3px;
  left: 50%;
  margin: 15px 0 0 -15px;
  position: absolute;
  width: 30px;
}
#footer .section-ttl{
  color:#fff;
}
#footer .section-ttl .tit-en{
  color:#fff;
}
#footer .section-ttl .tit-jp:after {
  background: #fff;
}
.side-border-ttl{
  font-size: 24px;
  line-height: 1.2;
  font-weight: 700;
  margin-bottom:30px;
  padding: 0 15px;
  border-left: solid 6px #fff;
}
.side-border-ttl span{
  display: block;
  font-weight: 700;
  font-size:12px;
  padding-top:8px;
  letter-spacing: .1em;
}
.bottomLine-ttl {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: .1em;
  margin: 0px 0 30px;
  position: relative;
  text-align: center;
}
.bottomLine-ttl span{
  font-size:14px;
  padding-left:5px;
}
.bottomLine-ttl:after {
  background: #d7000f;
  content: '';
  display: block;
  height: 1px;
  line-height: 1.6;
  left: 50%;
  margin: 15px 0 0 -10px;
  position: absolute;
  width: 20px;
}
.borderd-w-ttl{
  font-size:20px;
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
  padding:10px 0;
  color:#d9272e;
  margin-bottom:30px;
  border-bottom:1px solid #d9272e;
  border-top:1px solid #d9272e;
}
.txRed-catch{
  color:#d9272e;
  font-size:22px;
  font-weight: 600;
  line-height: 1.6;
  margin-bottom:20px;
}
.lead-copy{
  font-size:16px;
  line-height: 2;
}
.txt-link{
  font-size:12px;
}
.txt-link i{
  color:#d7000f;
  padding-right:6px;
}
.note {
  font-size: 12px;
  line-height: 1.6;
}

@media screen and ( max-width:768px) {
  .section-ttl {
    margin-bottom:40px;
  }
  .section-ttl .tit-en{
    font-size:12px;
  }
  .section-ttl .tit-jp{
    font-size:20px;
  }
  .side-border-ttl{
    font-size: 18px;
    margin-bottom:20px;
  }
  .side-border-ttl span{
    font-size:10px;
    padding-top:8px;
  }
  .bottomLine-ttl {
    font-size: 16px;
    margin: 0px 0 30px;
  }
  .bottomLine-ttl span{
    font-size:12px;
  }
  .borderd-w-ttl{
    font-size:16px;
    padding:5px 0;
    color:#d9272e;
    margin-bottom:20px;
  }
  .txRed-catch{
    font-size:16px;
    margin-bottom:15px;
  }
  .lead-copy{
    font-size:14px;
  }
  .note {
    font-size: 10px;
  }
}


/*-----------------------------------------------------------
	=Header
-----------------------------------------------------------*/
#header {
  background: rgba(255,255,255, 1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 80px;
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  z-index: 9;
}
#header .logo{
  max-width: 300px;
  margin-left: 20px;
}
@media screen and ( max-width:1000px) {
  #header {
    height: 50px;
  }
  #header .logo{
    max-width: 180px;
    margin-left: 10px;
  }
}

/* Gnav
-----------------------------------------------------------*/
#gnav{
  line-height: 1.6;
  cursor: pointer;
  height:80px;
}
#gnav ul{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: flex-end;
}
#gnav li{
  padding:0;
  font-size: 14px;
  text-align: center;
}
#gnav .nav-item{
  font-weight: 700;
}
#gnav li a {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #1f1f1f;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  height:80px;
}
#gnav li.nav-item{
  margin: 0 15px;
}
#gnav li .nav-link:hover{
  color:#d7000f;
}
#gnav li .nav-link::after {
  background-color:#d7000f;
  content: '';
  position:absolute;
  bottom:0px;
  left:0;
  height:5px;
  width:100%;
  opacity:0;
  -webkit-transition:height 0.3s, opacity 0.3s, -webkit-transform 0.3s;
  -moz-transition:height 0.3s, opacity 0.3s, -moz-transform 0.3s;
  transition:height 0.3s, opacity 0.3s, transform 0.3s;
  -webkit-transform:translateY(5px);
  -moz-transform:translateY(5px);
  transform:translateY(5px);
}
#gnav li:hover .nav-link::after {
  height:5px;
  opacity:1;
  -webkit-transform:translateY(0px);
  -moz-transform:translateY(0px);
  transform: translateY(0px);
}
#gnav li.current a::after{
  height:5px;
  opacity:1;
  -webkit-transform:translateY(0px);
  -moz-transform:translateY(0px);
  transform: translateY(0px);
}

/* ローカル時
-----------------------------------------------------------*/
#business li#gnav-business a::after{  height:5px; opacity:1; -webkit-transform:translateY(0px); -moz-transform:translateY(0px); transform:translateY(0px);}
#company li#gnav-company a::after{  height:5px; opacity:1; -webkit-transform:translateY(0px); -moz-transform:translateY(0px); transform:translateY(0px);}
#product li#gnav-product a::after{  height:5px; opacity:1; -webkit-transform:translateY(0px); -moz-transform:translateY(0px); transform:translateY(0px);}
#news li#gnav-news a::after{  height:5px; opacity:1; -webkit-transform:translateY(0px); -moz-transform:translateY(0px); transform:translateY(0px);}
#recruit li#gnav-recruit a::after{  height:5px; opacity:1; -webkit-transform:translateY(0px); -moz-transform:translateY(0px); transform:translateY(0px);}
#contact li#gnav-contact a::after{  height:5px; opacity:1; -webkit-transform:translateY(0px); -moz-transform:translateY(0px); transform:translateY(0px);}

#gnav .nav-item-inner {
  width: 100%;
  position: absolute;
  top: 100%;
  left: 0;
  background: #333;
  height: 0;
  background-color: #333;
  transition: height .2s ease .15s;
  overflow: hidden;
  display: flex;
  align-items: center;
  align-content: center;
  justify-content: space-between;
}
#gnav li:hover .nav-item-inner, #gnav li .nav-item-inner:hover {
  height: 130px;
  transition: height .2s ease 0s;
}
#gnav .nav-title {
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  padding: 20px 20px 20px 120px;
  opacity: 0;
}
#gnav .nav-item-list {
  display: flex;
  flex-wrap: wrap;
  padding: 20px 90px 20px 20px;
  opacity: 0;
}
#gnav li:hover .nav-item-inner .nav-title,
#gnav li .nav-item-inner:hover .nav-title,
#gnav li:hover .nav-item-inner .nav-item-list,
#gnav li .nav-item-inner:hover .nav-item-list {
  opacity: 1;
  transition: opacity .8s ease 0s;
}
#gnav .nav-item-list a {
  color: #fff;
  padding-right: 25px;
  font-weight:500;
}
#gnav .nav-item-list a:hover {
  opacity: 0.6;
}
#gnav .nav-item-list a i {
  margin-right: 0.5em;
}
.nav-language{
  text-align: center;
  margin-left: 1em;
  background: #d7000f;
}
.nav-language a{
  color: #fff;
  padding:0 13px;
}
.nav-language a:hover{
  background: #ddd;
}
#gnav .nav-language .nav-item-inner {
  background: #E6E6E6;
  justify-content: center;
}
#gnav .nav-language .nav-item-list {
  padding: 20px;
  width: 100%;
  justify-content: center;
}
#gnav .nav-language .nav-item-list li {
  /* flex-grow: 0.2; */
  flex-grow: 1;
}
#gnav .nav-language .nav-item-list a {
  color: #1f1f1f;
  padding: 15px 20px;
  margin: 0 10px;
  background: #fff;
  display: block;
  height: auto;
}
#gnav .nav-language .nav-item-list a:hover {
  opacity: 0.6;
}
#gnav .nav-language .nav-item-list a i {
  color: #1f1f1f;
}

@media screen and ( max-width:1000px) {
  #gnav{
    height: 0;
    transition: height .2s ease 0s;
    position: fixed;
    top: 50px;
    left: 0;
    width: 100%;
    background: #333;
    overflow: hidden;
  }
  #gnav.open {
    display: block;
    height: 100%;
    transition: height .2s ease 0s;
    padding-bottom: 120px;
    overflow-y: scroll;
  }
  #gnav.open.menu li.nav-item {
    display: block;
  }
  #gnav.open.language li.nav-language {
    display: block;
  }
  #gnav.language {
    background: #E6E6E6;
  }
  #gnav ul {
    flex-direction: column;
  }
  #gnav li.nav-item {
    border-bottom: solid 1px #222;
    margin: 0;
    display: none;
  }
  #gnav li a {
    color: #fff;
    height: 60px;
    padding: 0 15px;
  }
  #gnav li a.nav-link::after {
    content: none;
  }
  #gnav li a::before {
    content: "\f105";
    display: inline-block;
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    position: absolute;
    right: 20px;
    top: 15px;
    font-size: 18px;
  }
  #gnav li a.nav-item-toggle::before {
    right: 15px;
    content: "＋";
    font-family: inherit;
  }
  #gnav li a.nav-item-toggle.active::before {
    right: 15px;
    content: "−";
    font-family: inherit;
  }
  #gnav li a.nav-link:hover {
    color: #fff;
  }
  #gnav li .nav-item-inner,
  #gnav li:hover .nav-item-inner,
  #gnav li .nav-item-inner:hover {
    position: relative;
    height: auto;
  }
  #gnav li .nav-item-inner.open {
    height: auto;
  }
  #gnav .nav-title {
    display: none;
  }
  #gnav .nav-item-list {
    width: 100%;
    padding: 0;
    opacity: 1;
  }
  #gnav .nav-item-list li {
    height: 0;
    transition: height .2s ease 0s;
    border-bottom: none;
  }
  #gnav.menu .nav-item-list li {
    background: #222;
  }
  #gnav .nav-item-inner.open .nav-item-list li {
    height: 60px;
    transition: height .2s ease 0s;
    border-bottom: solid 1px #333;
  }
  #gnav .nav-item-list li:last-child {
    border-bottom: none !important;
  }
  #gnav .nav-item-list li a {
    padding: 0 15px;
  }
  #gnav .nav-item-list a i {
    display: none;
  }
  #gnav li.nav-language {
    margin-left: 0;
    display: none;
  }
  #gnav li.nav-language > a {
    display: none;
  }
  #gnav li.nav-language .nav-item-list li {
    height: 60px;
    flex-grow: 1;
  }
  #gnav li.nav-language .nav-item-list a {
    margin: 0;
    padding: 10px 20px;
  }
  #gnav li.nav-language .nav-item-list a::before {
    content: none;
  }
  #gnav li.nav-language .nav-item-list a i {
    display: inline-block;
  }
}

/* Hum-nav
-----------------------------------------------------------*/
.button_container,.sp-language {
  display:none;
}
@media screen and ( max-width:1000px) {
  .button_container {
    display:block;
    z-index:99 !important;
    position:absolute;
    top:0px;
    right:0px;
    height:50px;
    width:50px;
    cursor:pointer;
    background-color:#000;
    transition:opacity .25s ease;
  }
  .button_container:hover,.button_container.active {
    background:#222;
    opacity:.7;
  }
  .button_container.active .top {
    transform:translateY(7px) translateX(0) rotate(45deg);
    background:#fff;
  }
  .button_container.active .middle {
    opacity:0;
    background:#fff;
  }
  .button_container.active .bottom {
    transform:translateY(-7px) translateX(0) rotate(-45deg);
    background:#fff;
  }
  .button_container span {
    background:#fff;
    border:none;
    height:1px;
    width:20px;
    position:absolute;
    top:17px;
    left:50%;
    margin-left:-10px;
    transition:all .35s ease;
    cursor:pointer;
  }
  .button_container span:nth-of-type(2) {
    top:24px;
  }
  .button_container span:nth-of-type(3) {
    top:31px;
  }
  .sp-language{
    display:block;
    text-align: center;
    margin-left: 1em;
    background: #d7000f;
    position: absolute;
    top:0;
    right:50px;
    width:50px;
    height:50px;
    padding:14px;
  }
  .sp-language a{
    color: #fff!important;
  }
}

/*-----------------------------------------------------------
  =Footer
-----------------------------------------------------------*/
#footer{
   margin-top:50px;
}
.footer-contact{
  background: #242021;
  padding:50px 0;
  color:#fff;
  text-align: center;
}
.footer-contact .txt{
  font-size: 18px;
}
#footer .contact-button {
  display: block;
  background: #fff;
  width: 70%;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
  margin:25px 15% ;
  overflow: hidden;
  height: 70px;
  position: relative;
}
#footer .contact-button:before {
  content: '';
  position: absolute;
  background: #d7000f;
  left: 0;
  top: 0;
  width: 140%;
  height: 100%;
  -webkit-transform: translate3d(-140%, 0, 0) skew(-20deg);
  transform: translate3d(-140%, 0, 0) skew(-20deg);
  transition-duration: 0.6s;
  transition-delay: 0s;
}
#footer .contact-button:hover:before {
  -webkit-transform: translate3d(-8%, 0, 0) skew(-30deg);
  transform: translate3d(-8%, 0, 0) skew(-30deg);
}
#footer .contact-button .btn-in {
  position: relative;
  z-index: 1;
  display: block;
  text-align: center;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
#footer .contact-button .btn-in span{
  display: block;
  font-size:16px;
}
#footer .contact-button .btn-in i {
  font-size:20px;
  position: absolute;
  color: #111;
  top: 0;
  right: 10px;
  line-height: 70px;
  height: 70px;
  width: 20px;
  -webkit-transition: .2s ease;
  -moz-transition: .2s ease;
  transition: .2s ease;
}
#footer .btn-in:hover{
  color:#fff !important;
  text-decoration: none!important;
}
#footer .btn-in:hover i {
  right: -100px;
  color: #fff;
}
.footer-contact dl {
  margin-top: 30px;
}
.footer-contact .tel-no{
  font-size: 48px;
  font-weight: 700;
  line-height: 1;
  margin:10px 0;
  letter-spacing: .05em;
}
.footer-contact .tel-no span {
  font-size: 28px;
  margin-right: 5px;
}
.footer-contact .tel-no a{
  color:#fff;
}
.footer-contact .tel-time{
  font-size:12px;
}
@media screen and ( max-width:768px) {
  #footer{
    margin-top:20px;
  }
  .footer-contact{
    padding:30px 0;
  }
  .footer-contact .txt{
    font-size: 12px;
  }
  #footer .contact-button {
    width: 100%;
    margin:20px 0 ;
    height: 50px;
  }
  #footer .contact-button .btn-in i {
    font-size:14px;
    line-height: 50px;
    height: 50px;
  }
  .footer-contact dl {
    margin-top: 20px;
  }
  .footer-contact .tel-no{
    font-size: 30px;
  }
  .footer-contact .tel-no span {
    font-size: 18px;
  }
  .footer-contact .tel-time{
    font-size:10px;
  }
}

/* Footer-company
-----------------------------------------------------------*/
.footer-company{
  background:#f5f5f5;
  padding:20px 0;
}
.footer-company .inner{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.footer-socialIcon{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.footer-socialIcon li a {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  margin: 5px;
  text-align:center;
  text-decoration:none;
  overflow:hidden;
  font-size:20px;
  width:40px;
  color:#fff;
  height:40px;
  line-height:40px;
  background:#000;
  border-radius: 100%;
  -webkit-transition:.3s;
  -moz-transition:.3s;
  transition:.3s;
}
.footer-socialIcon li a:hover {
  opacity: .5;
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -o-transform: scale(1.2);
  -ms-transform: scale(1.2);
  transform: scale(1.2);
}
@media screen and ( max-width:768px) {
  .footer-company{
    padding:10px 0;
  }
  .footer-company {
    padding:20px 0;
    text-align: center;
  }
  .footer-logo{
    max-width: 120px;
  }
  .footer-socialIcon li a {
    margin:5px;
    font-size:18px;
    width:34px;
    height:34px;
    line-height:34px;
  }
}

/* Footer-Nav
-----------------------------------------------------------*/
.footer-nav{
  padding:40px;
}
.footer-nav .inner{
  /* max-width:1100px; */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
}
.footer-nav-item{
  width:18%;
  margin:0 1%;
}
.footer-nav-item:nth-child(3){
  margin-top:34px;
}
.footer-nav .ttl{
  margin-bottom:10px;
}
.footer-nav .ttl a{
  font-size:16px;
  line-height: 1.2;
  font-weight:600;
  color:#d60413;
}
.footer-nav ul{
  font-size:12px;
  line-height:2;
}
.footer-nav-itemlist a:before {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  content: "";
  display: inline-block;
  vertical-align: middle;
  background-color: #d60413;
  margin-right: 8px;
  height: 1px;
  width: 5px;
}
@media screen and ( max-width:1000px) {
  .footer-nav{
    display: none;
  }
}
.footer-bnr{
  border-bottom:1px solid #e9e9e9;
  border-top:1px solid #e9e9e9;
  padding:20px 0;
  text-align: center;
}

/* Footer-outter
-----------------------------------------------------------*/
.footer-outter .inner{
  margin:20px auto;
}
.footer-outter ul {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.footer-outter li{
  position: relative;
}
.footer-outter li a  {
  font-size: 12px;
  line-height: 1;
  padding: 0 15px;
}
.footer-outter li::after{
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  content: "";
  width: 1px;
  height: 16px;
  margin-top: -8px;
  border-right: 1px #dedede solid;
}
.footer-outter li:first-child::before {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  content: "";
  width: 1px;
  height: 16px;
  margin-top: -8px;
  border-left: 1px #dedede solid;
}
.copyright{
  font-size:12px;
}
.footer-nav .ttl a:focus,
.footer-nav .ttl a:active,
.footer-nav .ttl a:hover {
  color:#d60413!important;
  text-decoration: underline;
}
.footer-nav a:focus,
.footer-nav a:active,
.footer-nav a:hover {
  color: #666;
  text-decoration: underline;
}
@media screen and ( max-width:1000px) {
  .footer-outter .inner{
    justify-content: center;
  }
  .footer-outter ul {
      margin-bottom: 20px;
  }
}


/*-----------------------------------------------------------
  =Title
-----------------------------------------------------------*/
.ttl-bg {
  width: 100%;
  height: 220px;
  color: #fff;
  text-align: center;
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  position: relative;
}
.ttl-bg_wrap{
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}
.page-ttl{
  font-size:54px;
  font-weight: 700;
}
#ttl-bg__business{
  background-image: url(img/business/bg-title.jpg);
}
#ttl-bg__company{
  background-image: url(img/company/bg-title.jpg);
}
#ttl-bg__product{
  background-image: url(img/product/bg-title.jpg);
}
#ttl-bg__news{
  background-image: url(img/news/bg-title.jpg);
}
#ttl-bg__recruit{
  background-image: url(img/recruit/bg-title.jpg);
}
#ttl-bg__contact{
  background-image: url(img/contact/bg-title.jpg);
}
#ttl-bg__policy{
  background-image: url(img/policy/bg-title.jpg);
}
.breadcrumbs{
  font-size: 11px;
  color:#a4a4a4;
  text-align: left;
  margin-top:10px;
}
.breadcrumbs a{
  color:#a4a4a4;
}
.breadcrumbs a:focus,.breadcrumbs a:active,.breadcrumbs a:hover {
  color: #666;
  text-decoration: underline;
}
.breadcrumbs li{
  float:left;
}
.breadcrumbs li:nth-child(n+2):before {
  content: "/";
  margin: 0 0.2em;
}
[data-ruby]{
  position: relative;
}
[data-ruby]::before {
  content: attr(data-ruby);
  position: absolute;
  top: -1.5em;
  left: 50%;
  right: 0;
  margin-left: -2.5em;
  font-size: 8px;
  width: 5em;
  letter-spacing: 1px;
  text-align: center;
}
@media screen and ( max-width:1000px) {
  .ttl-bg {
    height: 120px;
  }
  .page-ttl{
    font-size:24px;
  }
 .breadcrumbs {
    display: none;
  }
}

/*-----------------------------------------------------------
  =Subnav
-----------------------------------------------------------*/
@media only screen and (min-width: 1000px) {
  .subnav {
    margin: 20px auto 0px;
    max-width: 1180px;
    text-align: center;
  }
  .subnav ul{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-bottom:1px solid #ddd;
  }
  .footer-sub-nav{
    margin: 40px auto 0;
  }
  .footer-sub-nav ul{
    border-top:1px solid #ddd;
    border-bottom:none;
    padding-top:10px;
  }
  .subnav li {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.8;
    position: relative;
  }
  .subnav li a {
    display: block;
    padding: 15px 30px;
  }
  .subnav li:first-child::before {
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    content: "";
    width: 1px;
    height: 20px;
    margin-top: -10px;
    border-left: 1px #e3e3e3 solid;
  }
  .subnav li::after {
    position: absolute;
    top: 50%;
    right: 0;
    display: block;
    content: "";
    width: 1px;
    height: 20px;
    margin-top: -10px;
    border-right: 1px #e3e3e3 solid;
  }
  .subnav li a::after {
    background-color:#d60413;
    content: '';
    position:absolute;
    bottom:0px;
    left:0;
    height:4px;
    width:100%;
    opacity:0;
    -webkit-transition:height 0.1s, opacity 0.3s, -webkit-transform 0.3s;
    -moz-transition:height 0.1s, opacity 0.3s, -moz-transform 0.3s;
    transition:height 0.1s, opacity 0.3s, transform 0.3s;
    -webkit-transform:translateY(0px);
    -moz-transform:translateY(0px);
    transform:translateY(0px);
  }
  .subnav li a:hover::after {
    opacity:1;
    -webkit-transform:translateY(0px);
    -moz-transform:translateY(0px);
    transform: translateY(0px);
  }
  .subnav li.current a::after{
    opacity:1;
    -webkit-transform:translateY(0px);
    -moz-transform:translateY(0px);
    transform: translateY(0px);
  }
}
@media only screen and (max-width: 999px) {
  .subnav{
    border-collapse: collapse;
    background: #000;
    overflow: hidden;
  }
  .subnav ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border-top:1px solid #222;
  }
  .subnav li{
    font-size: 11px;
    line-height: 1.6;
    vertical-align: top;
    border-bottom:1px solid #222;
  }
  .company-nav li {
    width:33.3%;
  }
  .company-nav li:nth-child(2),.company-nav li:nth-child(5) {
    border-left:1px solid #222;
    border-right:1px solid #222;
  }
  .product-nav li,.recruit-nav li {
    width:50%;
  }
  .product-nav  li:nth-child(1),.product-nav  li:nth-child(3),
  .recruit-nav  li:nth-child(1),.recruit-nav  li:nth-child(3) {
    border-right:1px solid #222;
  }
  .subnav li a {
    color:#fff;
    border-collapse: collapse;
    margin: 0;
    display: block;
    text-align: center;
    padding: 12px 0;
    text-decoration: none;
    white-space:nowrap;
    overflow:hidden;
    -o-text-overflow:ellipsis;
    text-overflow:ellipsis;
  }
  .subnav li a:hover  {
    color:#fff;
    background: #222;
  }
}


/* Page-index
-----------------------------------------------------------*/
.index-btnsList li{
  width:48%;
  background: #fff;

  text-align: center;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.index-btnsList li a{
  padding:60px 25px;
  display: block;
}
.index-btnsList li:nth-child(odd) {
  margin:3px 2% 3px 0;
}
.index-btnsList li:nth-child(even) {
    margin:3px 0 3px 2%;
}
.index-btnsList li:nth-of-type(n+3) {
  margin-top: 40px;
}
/* @media screen and ( max-width:1000px) {
  #page-index{
    padding-top:30px;
  }
} */
@media screen and ( max-width:768px) {
  .index-btnsList li a{
    padding:25px 25px;
  }
  .index-btnsList li:nth-of-type(n+3) {
    margin-top: 15px;
  }
}



/*
====================================================================
=TOP-PAGE
====================================================================
*/

/* Mv
-----------------------------------------------------------*/
#mv {
  position: relative;
  background:#f5f5f5;
}
#mv .swiper-slide {
  background-repeat: no-repeat;
  background-position: center center;
  -webkit-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}
#mv .swiper-slide {
  height: 640px;
  position: relative;
}
#mv #slide01 {
  background-image: url(img/top/mv01.jpg);
}
#mv #slide02 {
  background-image: url(img/top/mv02.jpg);
}
#mv #slide03 {
  background-image: url(img/top/mv03.jpg);
}
#mv .mv-in{
  padding:0;
  text-align: center;
  overflow: hidden;
  position: absolute;
  max-width: 900px;
  width: 100%;
  text-align: center;
  top: 40%;
  left: 50%;
  -moz-transform: translateX(-50%) translateY(-40%);
  -ms-transform: translateX(-50%) translateY(-40%);
  -webkit-transform: translateX(-50%) translateY(-340%);
  transform: translateX(-50%) translateY(-40%);
  z-index: 2;
}
#mv .mv-catch{
  color:#fff;
  font-size: 38px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.4;
}
.swiper-button-prev {
  background-image: url(img/common/btn_prev.png);
  left: 0px;
  top: 40%;
  background-size: 50px 70px;
  width: 50px;
  height: 70px;
}
.swiper-button-next  {
  background-image: url(img/common/btn_next.png);
  right: 0px;
  top: 40%;
  background-size: 50px 70px;
  width: 50px;
  height: 70px;
}
.swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  display: inline-block;
  border-radius: 100%;
  background: #000;
  opacity: .2;
}
.swiper-pagination-bullet-active {
  opacity: 1;
  background: #fff;
}
.swiper-active-switch {
  background-color: #fff;
}
@media screen and ( max-width:768px) {
  #mv .swiper-slide {
    height: 340px;
  }
  #mv .mv-in{
    width: 90%;
    margin:0 5%;
    text-align: center;
    top: 30%;
    left: 0;
    -moz-transform: translateX(0%) translateY(-30%);
    -ms-transform: translateX(0%) translateY(-30%);
    -webkit-transform: translateX(0%) translateY(-30%);
    transform: translateX(0%) translateY(-30%);
  }
  #mv #slide01 {
    background-image: url(img/top/mv01_sp.jpg);
  }
  #mv #slide02 {
    background-image: url(img/top/mv02_sp.jpg);
  }
  #mv #slide03 {
    background-image: url(img/top/mv03_sp.jpg);
  }
  #mv .mv-catch{
    font-size: 18px;
    line-height: 1.6;
  }
  .swiper-button-prev {
    top: 40%;
    background-size: 30px 42px;
    width: 30px;
    height: 42px;
  }
  .swiper-button-next  {
    top: 40%;
    background-size: 30px 42px;
    width: 30px;
    height: 42px;
  }
}

/* Top-news
-----------------------------------------------------------*/
#top-news{
  padding:60px 0;
}
#top-news .section-ttl{
  text-align: left;
}
#top-news .section-ttl .tit-jp:after {
  left: 20px;
  margin: 15px 0 0 -15px;
}
.txt-link{
  margin-top:15px;
  text-align: right;
}
.news-list{
  border-top: 1px solid #dcdcdc;
  text-align: left;
}
.news-list li {
  width: 100%;
  line-height: 1.4;
  padding: 15px 0;
  border-bottom: 1px solid #dcdcdc;
}
.news-list li a:focus .title,
.news-list li a:active .title,
.news-list li a:hover .title {
  color: #666;
  text-decoration: underline;
}
.news-meta{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  margin-bottom: 6px;
}
.news-meta .date{
  font-size:12px;
  letter-spacing: .1em;
  width:6em;
}
.entry-label {
  border-radius: 12px;
  display: inline-block;
  font-size: 10px;
  line-height: 20px;
  text-align: center;
  width: 80px;
  height: 20px;
  margin-left: 10px;
}
.category-info-zh-hans .entry-label  {
  border:1px solid #5daac7;
  color:#5daac7;
}
.category-media-zh-hans .entry-label {
  border:1px solid #44b5b2;
  color:#44b5b2;
}
.category-conference-zh-hans .entry-label {
  border:1px solid #ba7bb6;
  color:#ba7bb6;
}
.category-product-zh-hans .entry-label {
  border:1px solid #ee9028;
  color:#ee9028;
}
.category-event-zh-hans .entry-label  {
  background: #d7000f;
  color:#fff;
}
@media screen and ( max-width:768px) {
  #top-news{
    padding:30px 0;
  }
}


/* Top-product
-----------------------------------------------------------*/
#top-product{
  background:#c62828;
  color:#fff;
  margin-bottom:60px;
}
#top-product .section-ttl {
  color: #fff;
}
#top-product  .section-ttl .tit-en {
  color: #fff;
}
#top-product .section-ttl .tit-jp:after {
  background: #fff;
}
#top-product .in{
  max-width: 1220px;
  margin:0 auto;
  position: relative;
}
.product-box{
  padding-bottom:50px;
  margin-bottom:50px;
}
.product-box.bottom-line{
  border-bottom:1px solid #d15353;
}
.product-ttlarea{
  margin:0 auto 40px;
}
.carousel-slider a{
  display:block;
  cursor: pointer;
}
.carousel-slider article{
  text-align: left;
  padding:0 20px;
}
.carousel-slider figure{
  margin-bottom:15px;
}
.carousel-slider figcaption{
  padding:0 10px;
}
/* #top-product .product-box figcaption a {
  color: #fff!important;
} */
#top-product .bottomLine-ttl,#top-product .txt{
  color: #fff;
}
#top-product .bottomLine-ttl:after {
  background: #fff;
}

/* a:focus, a:active, a:hover {
  color: #666;
  text-decoration: none;
} */
#top-product .txt{
  font-size: 14px;
  line-height: 1.6;
}
#top-product .swiper-button-prev {
  top: 26%;
}
#top-product .swiper-button-next  {
  top: 26%;
}
#top-product .in .button {
  position: absolute;
  top: -180px;
  right: 20px;
  margin: 0;
}
@media screen and ( max-width:1000px) {
  .product-ttlarea{
    margin: 0 auto 20px;
  }
}
@media screen and ( max-width:768px) {
  #top-product{
    margin-bottom:30px;
  }
  .product-box {
    padding-bottom: 30px;
    margin-bottom: 30px;
  }
  #top-product .in .button {
    position: static;
    margin: 20px auto 0;
  }
  #top-product .txt{
    font-size: 12px;
  }
}

.top-btnsList li{
  width:100%;
  margin:0;
  background: #fff;
  text-align: center;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.top-btnsList li a{
  padding:50px 25px;
  display: block;
}
.top-btnsList li:hover{
  box-shadow: 0 .2rem .2rem 0 rgba(93,105,172,.2);
}
.index-btnBox li .img{
  margin:0 auto 15px;
  -webkit-transition: .4s;
  -o-transition: .4s;
  transition: .4s;
  max-width:54px ;
}
.index-btnBox li:hover .img{
  -webkit-transform: translateY(-10px);
  -ms-transform: translateY(-10px);
  transform: translateY(-10px);
}
.index-btnBox li .ttl{
  font-size:20px;
  font-weight: 700;
  line-height: 1.2;
}
.index-btnBox li .ttl span{
  color:#d7000f;
  display: block;
  font-size:12px;
  padding-top:8px;
  letter-spacing: .1em;
}
.index-btnBox li:hover .ttl{
  color:#d7000f;
}
@media screen and ( max-width:768px) {
  .top-btnsList li{
    width:100%;
    margin:0%;
  }
  .top-btnsList li a{
    padding:20px;
  }
  .top-btnsList li:nth-of-type(n+2){
    margin-top:10px;
  }
  .index-btnBox li .img{
    margin:0 auto 10px;
    max-width:40px ;
  }
  .index-btnBox li .ttl{
    font-size:14px;
  }
  .index-btnBox li .ttl span{
    font-size:10px;
  }
}

/* .top-btnsList02{
  margin-bottom:60px;
} */
.top-btnsList02 li{
  width:50%;
}
.top-btnsList02 .bg {
  width: 100%;
  height: 300px;
  color: #fff;
  text-align: center;
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.top-btnsList02 .bg-company{
  background-image: url(img/top/bg-topCompany.jpg);
}
.top-btnsList02 .bg-recruit{
  background-image: url(img/top/bg-topRecruit.jpg);
}
.top-btnsList02 .txt-area {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 40px 40px 10px;
  text-align: center;
}
.top-btnsList02 .section-ttl{
  margin-bottom:0;
}
.top-btnsList02 .section-ttl span {
  color:#fff;
}
@media screen and ( max-width:768px) {
  .top-btnsList02 li{
    width:100%;
  }
  .top-btnsList02 .bg {
    height: 160px;
  }
  .top-btnsList02 .txt-area{
    text-align: left;
  }
  .top-btnsList02 .txt-area {
    padding: 20px 20px 20px;
  }
}


/*
====================================================================
=BUSINESS
====================================================================
*/
#page-business .business-about01{
  text-align: center;
}
#page-business .business-about01 .about-img{
  max-width: 890px;
  margin:40px auto 0;
}
#page-business .business-about02 .about-img{
  max-width: 890px;
  margin:40px auto 0;
}
.business-about02 .business-img{
  width: 47%;
}
.business-about02 .business-txt{
  width: 48%;
}
.box-conviction{
  margin-top:50px;
}
.conviction-row .row{
  position: relative;
  background: #fff;
  padding: 20px 30px 30px;
  text-align: center;
}
.conviction-row .row .ttl {
  color: #d7000f;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 12px;
  text-align: center;
}
.conviction-row .row:after {
  background-color: #d7000f;
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 200px;
  height: 4px;
}
.patent{
  background:#ffecec;
  padding:10px 20px 20px;
  margin-top:20px;
  line-height: 1.6;
  text-align: left;
}
.patent .txt span{
  font-size:20px;
  font-weight: 600;
}
@media screen and ( max-width:768px) {
  .business-about01 .lead-copy{
    text-align: left;
  }
  #page-business .business-about01 .about-img{
    margin:20px auto 0;
  }
  #page-business .business-about02 .about-img{
    margin:20px auto 0;
  }
  .box-conviction{
    margin-top:30px;
  }
  .conviction-row .row{
    padding: 20px 15px 15px;
  }
  .conviction-row .row .ttl {
    font-size: 16px;
  }
  .business-about02 .business-img{
    width: 100%;
    margin-bottom:20px;
  }
  .business-about02 .business-txt{
    width: 100%;
  }
  .box-conviction .col-2 .row:nth-of-type(n+2) {
    margin-top:30px;
  }
  .patent{
    padding:10px 10px;
    text-align: center;
  }
  .patent .txt span{
    font-size:16px;
  }
}


/*
====================================================================
=COMPANY
====================================================================
*/

/* Message
-----------------------------------------------------------*/
#page-company .slide-img {
  position: relative;
  height: 604px;
  text-align: center;
  -webkit-animation: slideImage 50s linear infinite;
  -moz-animation: slideImage 50s linear infinite;
  animation: slideImage 50s linear infinite;
  background: url(img/company/slide-pic.png);
  background-position: top left;
  -webkit-background-size: auto 100%;
  background-size: auto 100%;
}
@-webkit-keyframes slideImage{
  0% { background-position:0px 0px; }
  100% { background-position:-1810px 0px; }
}
@-moz-keyframes slideImage{
  0% { background-position:0px 0px; }
  100% { background-position:-1810px 0px; }
}
@keyframes slideImage{
  0% { background-position:0px 0px; }
  100% { background-position:-1810px 0px; }
}
#page-company .message-box{
  max-width:800px;
  margin:0 auto -450px;
  padding:50px;
  background: rgba(255,255,255, .9);
  position: relative;
  top:-450px;
}
#page-company .message-box .logo{
  max-width: 230px;
  margin:0 auto 30px;
}
#page-company .message-box .txt{
  line-height: 2.4;
}
.message-box .president-name{
  text-align: right;
  margin-top:20px;
  line-height: 1.6;
  font-size:16px;
}
.message-box .president-name span{
  display: block;
  font-size:12px;
}
@media screen and ( max-width:768px) {
  #page-company .slide-img {
    height: 334px;
  }
  @-webkit-keyframes slideImage{
    0% { background-position:0px 0px; }
    100% { background-position:-1000px 0px; }
  }
  @-moz-keyframes slideImage{
    0% { background-position:0px 0px; }
    100% { background-position:-1000px 0px; }
  }
  @keyframes slideImage{
    0% { background-position:0px 0px; }
    100% { background-position:-1000px 0px; }
  }
  #page-company .message-box{
    width:96%;
    margin:0 2% -260px;
    padding:30px 20px 20px;
    top:-260px;
  }
  #page-company .message-box .logo{
    max-width: 180px;
    margin:0 auto 20px;
  }
  .message-box .president-name{
    font-size:14px;
  }
  .message-box .president-name span{
    font-size:10px;
  }
}

/* Philosophy
-----------------------------------------------------------*/
.catch-philosophy{
  font-size:28px;
  font-weight: 700;
  line-height:1.4;
  text-align: center;
  margin-bottom:40px;
}
.lead-philosophy{
  font-size:18px;
  font-weight: 600;
  text-align:center;
  margin-bottom:30px;
}
.img-philosophy{
  max-width:460px;
  margin:0 auto;
}
.philosophy-qualityList{
  margin:0 0 8px;
}
.philosophy-qualityList li{
  text-align: center;
  background: #fff;
  border-top:2px solid #d9272e;
  padding:30px 20px;
  font-size:16px;
}
.philosophy-qualityList li p{
  margin-top:20px;
}
.conductList {
  border-top:1px solid #eaeaea;
}
.conductList li{
  border-bottom:1px solid #eaeaea;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  padding:10px 15px;
}
.conductList li .num{
  color:#d9272e;
  font-size:40px;
  line-height: 1;
  padding-right:10px;
  width:50px;
}
.conductList li .txt{
  font-size:20px;
  letter-spacing: .08em;
}

@media screen and ( max-width:768px) {
  .catch-philosophy{
    font-size:18px;
    line-height: 1.6;
    margin-bottom:20px;
  }
  .lead-philosophy{
    font-size:14px;
    margin-bottom:20px;
  }
  .philosophy-qualityList li{
    padding:20px;
    font-size:14px;
    padding:20px 15px;
  }
  .philosophy-qualityList li img{
    width:60px;
    margin: 0 auto;
  }
  .conductList li .num{
    color:#d9272e;
    font-size:24px;
    line-height: 1;
    padding-right:10px;
    width:30px;
  }
  .conductList li .txt{
    font-size:14px;
  }
  .philosophy-qualityList li:nth-child(2){
    margin-top:20px;
    margin-bottom:20px;
  }
}

/* Outline
-----------------------------------------------------------*/
.outline-wrap.wrap{
  padding:60px 0 80px;
}
.company-outline table{
  border-top: 1px solid #ddd;
  width:100%;
}
.company-outline tr {
  border-bottom: 1px solid #ddd;
}
.company-outline th {
  width: 25%;
  vertical-align: middle;
  font-weight: 600;
  padding: 20px 10px;
  text-align: left;
}
.company-outline td {
  padding: 20px 10px 20px 10px;
}
@media screen and ( max-width:768px) {
  .outline-wrap.wrap{
    padding:30px 0 50px;
  }
  .outline-wrap .col-2 .row {
    width: 100%;
    margin-bottom: 0px;
  }
  .outline-wrap .col-2 .row:nth-of-type(n+2) {
    border-top: none;
    border-bottom: 1px solid #ddd;
  }
  .company-outline th {
    display: block;
    width: 100%;
    padding: 14px 10px 0;
  }
  .company-outline td {
    display: block;
    padding: 5px 10px 14px 10px;
  }
}

/* History
-----------------------------------------------------------*/
.history-wrap.wrap{
  padding:60px 0 80px;
}
.company-history table{
  border-top: 1px solid #ddd;
  width:100%;
}
.company-history tr {
  border-bottom: 1px solid #ddd;
}
.company-history th {
  width: 12%;
  vertical-align: top;
  font-size:16px;
  font-weight: 600;
  padding: 20px 10px;
  text-align: left;
}
.company-history td {
  padding: 20px 10px 20px 10px;
}
@media screen and ( max-width:768px) {
  .history-wrap.wrap{
    padding:30px 0 50px;
  }
  .company-history th {
    display: block;
    font-size:14px;
    width: 100%;
    padding: 5px 10px;
    background: #e7e7e7;
  }
  .company-history td {
    display: block;
    padding: 10px 10px 14px 10px;
  }
}


/* Research
-----------------------------------------------------------*/
.research-wrap.wrap{
  padding:60px 0 80px;
}
.img-research{
  max-width: 530px;
  margin:30px auto 0;
}
.research-box{
  background: #fff;
  padding:25px 50px 50px;
  position: relative;
}
.research-box:nth-of-type(n+2){
  margin-top:50px;
}
.research-catch{
  font-size:22px;
  font-weight: 600;
  margin-bottom:15px;
}
.research-wrap .blue-item{
  border-top:2px solid #1560c9;
}
.blue-item .section-ttl .tit-en,
.blue-item .research-catch{
  color:#1560c9;
}
.blue-item .section-ttl .tit-jp:after {
  background: #1560c9;
}
.research-wrap .green-item{
  border-top:2px solid #3bc70f;
}
.green-item .section-ttl .tit-en,
.green-item .research-catch{
  color:#3bc70f;
}
.green-item .section-ttl .tit-jp:after {
  background: #3bc70f;
}
.research-wrap .orange-item{
  border-top:2px solid #e77e1d;
}
.orange-item .section-ttl .tit-en,
.orange-item .research-catch{
  color:#e77e1d;
}
.orange-item .section-ttl .tit-jp:after {
  background: #e77e1d;
}
@media screen and ( max-width:768px) {
  .research-wrap.wrap{
    padding:30px 0 50px;
  }
  .research-box{
   padding:15px 20px 20px;
  }
  .research-box:nth-of-type(n+2){
    margin-top:20px;
  }
  .research-catch{
    font-size:16px;
    margin-bottom:10px;
  }
  .research-box .research-pic{
    margin-bottom:12px;
  }
}


/* Access
-----------------------------------------------------------*/
.access-wrap.wrap{
  padding:60px 0 0;
}
.access-map .row{
  text-align: center;
}
.access-map .access-ttl{
  font-size:20px;
  font-weight: 600;
  line-height: 1.4;
  color:#d7000f;
  margin-bottom:15px;
}
.access-map .txt{
  margin-bottom:25px;
}
.access-how{
  padding:40px 0;
  margin-top:40px;
}
.access-howList li{
  background:#fff;
  padding:15px 20px 20px;
  border-top:2px solid #d7000f;
}
.access-howList .ttl{
  color:#d7000f;
  font-size:16px;
  font-weight: 500;
  line-height: 1.4;
  margin-bottom:10px;
  text-align: center;
}
.access-howList .txt{
  font-size:12px;
}
@media screen and ( max-width:768px) {
  .access-wrap.wrap{
    padding:30px 0 0;
  }
  .access-map .row:nth-of-type(n+2){
    margin-top:30px;
  }
  .access-map .access-ttl{
    font-size:18px;
    margin-bottom:10px;
  }
  .access-map .txt{
    margin-bottom:15px;
  }
  .access-how{
    padding:20px 0;
    margin-top:20px;
  }
  .access-howList li{
    background:#fff;
    padding:15px 20px 20px;
    border-top:2px solid #d7000f;
    width:100%!important;
    margin:0!important;
  }
  .access-howList li:nth-of-type(n+2){
    margin-top:15px!important;
  }
  .access-howList .ttl{
    font-size:14px;
  }
}


/*
====================================================================
=NEWS
====================================================================
*/
#side-column .news-sidenav:nth-of-type(n+2) {
  margin-top: 50px;
  overflow: hidden;
}
#side-column .ttl {
  border-top: 3px solid #d7000f;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.2;
  padding: 15px 0 0;
  margin-bottom: 20px;
  letter-spacing: .1em;
}
#side-column .news-sidenav ul {
  overflow: hidden;
  line-height: 1.4;
  border-top: solid 1px #dcdcdc;
}
#side-column .news-sidenav li {
  border-bottom: solid 1px #dcdcdc;
  overflow: hidden;
}
#side-column .news-sidenav li i {
  color: #d7000f;
  padding-right:5px;
}
#side-column .news-sidenav li a {
  display: block;
  cursor: pointer;
  padding: 20px 10px;
  overflow: hidden;
  -webkit-transition: background .3s ease;
  -moz-transition: background .3s ease;
  -o-transition: background .3s ease;
  transition: background .3s ease;
}
#side-column .news-sidenav li a:hover{
  background: #f5f5f5;
}
#side-column select {
  width: 100%;
  padding: 8px;
  margin: 0;
  line-height: 1.6;
  cursor: pointer;
  border: none;
  font-size: 12px;
  background-color: rgba(244, 244, 244, 1);
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
  border-radius: 0;
}
@media screen and ( max-width:768px) {
  #side-column .ttl {
    font-size: 18px;
    text-align: center;
    padding: 15px 0 0;
    margin-bottom: 15px;
  }
  #side-column .news-sidenav li a {
    padding: 14px 10px;
  }
}

.entry-header {
  border-bottom: 1px solid #dddddd;
  border-top: 3px solid #dddddd;
  margin-bottom: 50px;
  padding: 20px 0;
}
.entry-header .entry-title {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.6;
  margin-bottom: 10px;
}
.entry-content{
  line-height: 2;
  letter-spacing: .08em;
  margin-bottom:60px;
  overflow: hidden;
}
.entry-content img {
  margin: 20px 0;
}
.entry-content h2{
  background: #f3f3f3;
  padding: 15px;
  border-left: solid 6px #d7000f;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.4;
  margin: 50px 0 15px;
}
.entry-content h3 {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.4;
  padding: 15px 0;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  margin: 40px 0 15px;
  overflow: hidden;
}
.entry-content h4  {
  font-size: 18px;
  border-left: 6px solid #ccc;
  font-weight: 600;
  margin: 20px 0 15px;
  padding: .25em 0 .25em .75em;
}
.entry-content a {
  color: #222;
  text-decoration: underline;
  transition: 0.2s ease all;
  -webkit-transition: 0.2s ease all;
  -moz-transition: 0.2s ease all;
}
.entry-content a:focus,
.entry-content a:active,
.entry-content a:hover {
  color: #d7000f;
  text-decoration: none;
}
@media screen and ( max-width:768px) {
  .entry-header{
    padding:15px 0;
    margin-bottom: 20px;
  }
  .entry-header .entry-title {
    font-size:20px;
  }
  .entry-content h2{
    font-size: 18px;
    padding: 10px;
    margin: 40px 0 15px;
  }
  .entry-content h3 {
    font-size: 16px;
    padding: 10px 0;
    margin: 25px 0 15px;
    overflow: hidden;
  }
  .entry-content h4  {
    font-size:14px;
    margin:10px 0 10px;
    padding:.15em 0 .15em .75em;
  }
}


/*
====================================================================
=POLICY
====================================================================
*/
#page-policy .inner{
  max-width: 1040px;
}
.policy-wrap{
  margin-top:60px;
}
.policy-wrap .ttl{
  color:#d9272e;
  font-size:22px;
  font-weight: 600;
  line-height: 1.4;
  border-bottom:1px solid #d9272e;
  border-top:1px solid #d9272e;
  padding:15px;
  margin-bottom:20px;
  text-align: center;
}
.policy-wrap .sub-copy{
  padding: 3px 0 3px 2em;
  text-indent: -2em;
}
.policy-wrap .sub-copy span{
  font-size: 20px;
  padding-right:6px;
}
.policy-box{
  background: #f7f7f7;
  padding:30px;
  margin:15px 0 30px;
}
.policy-wrap a {
  color: #222;
  text-decoration: underline;
  transition: 0.2s ease all;
  -webkit-transition: 0.2s ease all;
  -moz-transition: 0.2s ease all;
}
.policy-wrap a:focus,
.policy-wrap a:active,
.policy-wrap a:hover {
  color: #d7000f;
  text-decoration: none;
}
@media screen and (max-width: 768px){
  .policy-wrap{
    margin-top:30px;
  }
  .policy-wrap .ttl{
    font-size:16px;
    padding:10px;
    margin-bottom:15px;
  }
  .policy-wrap .sub-copy span{
    font-size: 16px;
    padding-right:4px;
  }
  .policy-box{
    padding:15px;
  }
}


/*
====================================================================
=RECRUIT
====================================================================
*/
#page-recruit .inner{
  max-width: 1040px;
}
#page-recruit .recruit-catch{
  font-size:20px;
  font-weight: 600;
  text-align: center;
}
.recruit-point{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top:30px;
}
.recruit-point li{
  border:2px solid #d9272e;
  border-radius: 10px;
  padding:20px;
  text-align: center;
  font-size:16px;
  width:31.3%;
  margin:0 1%;
}
.recruit-point li img{
  max-width:40px;
  margin:0 auto 10px;
}
.recruit-wrap table{
  border-top: 1px solid #ddd;
  background: #fff;
  width:100%;
}
.recruit-wrap table tr {
  border-bottom: 1px solid #ddd;
}
.recruit-wrap table th {
  width: 18%;
  vertical-align: top;
  font-weight: 600;
  padding: 20px 20px;
  text-align: left;
}
.recruit-wrap table td {
  padding: 20px 20px 20px 20px;
}
.recruit-wrap table a {
  color: #222;
  text-decoration: underline;
  transition: 0.2s ease all;
  -webkit-transition: 0.2s ease all;
  -moz-transition: 0.2s ease all;
}
.recruit-wrap table a:focus,
.recruit-wrap table a:active,
.recruit-wrap table a:hover {
  color: #d7000f;
  text-decoration: none;
}


@media screen and (min-width: 769px){
  .recruit-point li:nth-of-type(n+4) {
    margin-top: 20px!important;
  }
  .recruit-wrap:nth-of-type(n+2){
    margin-top:60px;
  }
}
@media screen and ( max-width:768px) {
  #page-recruit .recruit-catch{
    font-size:14px;
  }
  .recruit-point{
    margin-top:15px;
  }
  .recruit-point li{
    padding:8px;
    font-size:12px;
    width:48%;
    margin:0 1%;
  }
  .recruit-point li:nth-of-type(n+3) {
    margin-top: 10px!important;
  }
  .recruit-point li img{
    max-width:30px;
    margin:0 auto 5px;
  }
  .recruit-wrap:nth-of-type(n+2){
    margin-top:40px;
  }
  .recruit-wrap table th {
    width: 100%;
    display: block;
    padding: 8px 10px;
    background: #ddd;
  }
  .recruit-wrap table td {
    display: block;
    padding: 14px 10px 14px 10px;
  }
}




/*
====================================================================
=CONTACT
====================================================================
*/
#page-contact .inner{
  max-width: 1040px;
  text-align: center;
}
.tel-box{
  border: 6px solid #e9e9e9;
  text-align: center;
  /* margin: 30px 0 0; */
  padding: 30px;
}
.line-ttl {
  color: #d7000f;
  font-size: 20px;
  margin-bottom: 15px;
  line-height: 1.6;
  position: relative;
  text-align: center;
}
.line-ttl .bordered {
  font-weight: bold;
  position: relative;
  display: inline-block;
  line-height: 1.6;
}
.line-ttl .bordered:before {
  border-top: 2px solid #d7000f;
  content: "";
  position: absolute;
  top: 50%;
  margin: auto;
  left: -30px;
  width: 20px;
}
.line-ttl .bordered:after {
  border-top: 2px solid #d7000f;
  content: "";
  position: absolute;
  top: 50%;
  margin: auto;
  right: -30px;
  width: 20px;
}
.tel-box .tel-no {
  font-size: 48px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .05em;
  margin-bottom:15px;
}
.tel-box .tel-no span {
  font-size: 28px;
  margin-right: 5px;
}
.tel-box .tel-no a{
  color:#000;
}
.tel-box .tel-time{
  font-size:12px;
}

@media screen and (min-width: 769px){
  .contact-wrap:nth-of-type(n+2) {
    margin-top: 80px!important;
  }
}
@media screen and ( max-width:768px) {
  .tel-box{
    border: 2px solid #e9e9e9;
    padding: 15px;
  }
  .contact-wrap:nth-of-type(n+2) {
    margin-top: 40px!important;
  }
  .line-ttl {
    font-size: 16px;
    margin-bottom: 15px;
  }
  .tel-box .tel-no{
    font-size: 30px;
  }
  .tel-box .tel-no span {
    font-size: 18px;
  }
  .tel-box .tel-time{
    font-size:10px;
  }
}
#page-contact table {
  border-collapse: collapse;
  border-top: 1px solid #ddd;
  margin:30px 0;
  width: 100%;
  text-align:left;
  table-layout: fixed;
}
#page-contact tr {
  border-bottom: 1px solid #ddd;
}
#page-contact th {
  font-weight: bold;
  padding: 20px 20px 15px;
  text-align: left;
  vertical-align: top;
  min-width: 270px;
  position: relative;
}
#page-contact td {
  margin:0 20px;
  padding: 15px 0 15px 20px;
}
#page-contact .required {
  padding: 1px 8px;
  border: 1px solid #f16365;
  border-radius: 4px;
  color: #f16365;
  font-size: 12px;
  position: absolute;
  top:20px;
  right:15px;
}
/* #page-contact .inputBox {
  width:580px;
  height: 2.5em;
  padding: 10px;
  outline: none;
  border: 1px solid #f4f4f4;
  background: #f4f4f4;
}
#page-contact .inputBox02 {
  width:200px;
  height: 2.5em;
  padding: 10px;
  outline: none;
  border: 1px solid #f4f4f4;
  background: #f4f4f4;
} */

#page-contact .radioBox label {
  width: 100%;
  display: block;
  margin: 5px 0 0!important;
  padding: 0!important;
}
button,fieldset,form,input,label,legend,select,textarea {
  margin:0;
  padding:0;
  vertical-align:baseline;
  font-family:inherit;
  font-style:inherit;
  font-weight:inherit;
  font-size:100%;
}
input {
  vertical-align:middle;
}
input,textarea,select {
  font-family:"游ゴシック体", "Yu Gothic", YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",Arial,Osaka,Sans-Serif;
  padding:5px;
}
input[type="button"], input[type="submit"] {
  -webkit-appearance: none;
}
#page-contact form textarea,
#page-contact form input[type="text"],
#page-contact form input[type="tel"],
#page-contact form input[type="url"],
#page-contact form input[type="email"],
#page-contact form input[type="number"],
#page-contact form input[type="password"],
#page-contact form select {
  padding: 5px 10px;
  border: 1px solid #f4f4f4;
  background: #f4f4f4;
  border-radius: 3px;
  box-shadow: none;
  max-width: 100%;
}
#page-contact form textarea {
  width:580px;
}

#page-contact form table input:focus,
#page-contact form table input:focus,
#page-contact form table textarea:focus  {
  outline: none;
  background: #fff;
  box-shadow : 0px 0px 3px #d7000f;
  border : 1px solid #d7000f;
}
.inquiryBtn {
  margin:0 auto;
  overflow:hidden;
  text-align:center;
}
.inquiryBtn input {
  cursor:pointer;
  background:#000;
  color:#fff;
  border:none;
  font-weight:bold;
  font-size:14px;
  padding:20px 0;
  width:300px;
  margin: 0 5px 5px;
}
.inquiryBtn input:hover {
  background: #666;
}
@media screen and ( max-width: 768px) {
  #page-contact th {
    display: block;
    font-size: 12px;
    padding: 15px 0px 10px;
    width: 100%;
  }
  #page-contact td {
    display: block;
    font-size: 12px;
    margin:0;
    padding:0 0 15px;
  }
  #page-contact form textarea,
  #page-contact form input[type="text"],
  #page-contact form input[type="tel"],
  #page-contact form input[type="url"],
  #page-contact form input[type="email"],
  #page-contact form input[type="number"],
  #page-contact form input[type="password"],
  #page-contact form select {
    width: 100%;
    font-size: 16px;
    line-height: 1.4375;
    -webkit-appearance: none;
  }
  #page-contact .required  {
    font-size: 10px;
    top:10px;
    right:0px;
  }
}



/*
====================================================================
=PRODUCT
====================================================================
*/

/* Index
-----------------------------------------------------------*/
#page-index .news-list{
  max-width:1040px;
  margin:0 auto;
}
.product-confirm{
  margin-top:40px;
  text-align: center;
}
.product-confirm .txt{
  font-size:18px;
  font-weight: 600;
  margin-bottom:20px;
}
.product-confirmBtn{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 700px;
  margin:0 auto;
}
.product-confirmBtn li {
  margin: 1%;
  width: 48%;
}
.product-confirmBtn .button{
  font-size:16px;
}
@media screen and ( max-width:768px) {
  .product-confirm .txt{
    font-size:14px;
  }
  .product-confirmBtn .button{
    font-size:14px;
  }
}

.product-indexList{
  padding-top:5px;
}
.product-indexList li{
  width: 30.3%;
  margin: 0 4.5% 0 0;
}
.product-indexList li:nth-child(3n) {
  margin: 0 0 0 0;
}
.product-indexList figure{
  margin-bottom:15px;
}
@media screen and (min-width: 769px){
  .product-indexList li:nth-of-type(n+4) {
    margin-top: 40px;
  }
}
@media screen and ( max-width:768px) {
  .product-indexList li{
    width: 100%;
    margin: 0 0 0 0;
  }
  .product-indexList li:nth-of-type(n+2) {
    margin-top: 30px;
  }
}



/* 成和化成製品
================================== */
/* product-header
-----------------------------------------------------------*/
.product-header{
  border-top:1px solid #e60618;
  margin-bottom:40px;
}
.product-header .product-name {
  margin:15px 0;
  line-height: 1.4;
}
.product-header .product-name .name-en{
  font-size:48px;
  font-weight: 500;
  letter-spacing: .06em;
}
.product-header .product-name .name-jp{
  display: block;
  font-size:12px;
}
.product-header .product-txt{
  color:#fff;
  padding:8px;
}
@media screen and ( max-width:768px) {
  .product-header{
    margin-bottom:20px;
  }
  .product-header .product-name:nth-of-type(n+2) {
    margin:10px 0;
  }
  .product-header .product-name .name-en{
    font-size:36px;
  }
  .product-header .product-name .name-jp{
    font-size:10px;
  }
  .product-header .product-txt{
    padding:5px;
  }
}

/* product-body
-----------------------------------------------------------*/
@media screen and (min-width: 769px){
  .product-body_wrap:nth-of-type(n+2) {
    margin-top: 60px;
  }
}
@media screen and ( max-width:768px) {
  .product-body_wrap:nth-of-type(n+2) {
    margin-top: 40px;
  }
}
.product-catch-copy{
  font-size:22px;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom:12px;
}
.product-sub-copy{
  font-size:16px;
  font-weight: 600;
  line-height: 1.5;
}
.product-heading-underline{
  font-size:20px;
  font-weight: 600;
  line-height: 1.5;
  padding:10px 10px;
  margin-bottom:20px;
}
.product-heading-sideline{
  font-size:18px;
  font-weight: 600;
  line-height: 1.5;
  padding:10px 10px;
  margin-bottom:12px;
  background: #f5f5f5;
}
.product-other-heading{
  background: #f1f3f1;
  border-top:1px solid #9dab9e;
  margin-bottom:20px;
  padding:12px 10px;
  line-height: 1.4;
}
.product-other-heading .name-en{
  font-size:32px;
  font-weight: 500;
  letter-spacing: .06em;
}
.product-other-heading .name-jp{
  display: block;
  font-size:12px;
}
.product-heading-published{
  font-size:18px;
  font-weight: 600;
  padding:12px;
  margin-bottom:20px;
  background: #f5f5f5;
}
.product-body_wrap .extra-box{
  background: #f9f8f4;
  padding:30px;
  margin:20px 0;
}
.extra-heading-underline{
  font-size:16px;
  font-weight: 600;
  line-height: 1.2;
  padding-bottom:10px;
  margin-bottom:10px;
}
.extra-heading-doubleline{
  font-size:16px;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  padding:14px 10px;
  border-bottom:1px solid #dddddd;
  border-top:1px solid #dddddd;
   margin-bottom:15px;
}
.extra-list li:nth-of-type(n+2) {
  margin-top: 30px;
}
.extra-list .category-pic{
  width:22%;
}
.extra-list .category-txt{
  width:74%;
}
.extra-list .txt{
  line-height: 1.6;
  text-align: justify !important;
}
.extra-list .origin-category {
  color:#666;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.4;
  display: -webkit-box;
  display: -webkit-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 10px;
}
.extra-list .origin-category li {
  margin: 0 2px 2px 0;
  border: 1px solid #dddddd;
  background: #fff;
  border-radius: 6px;
  padding: 4px 6px;
}
.extra-white_box{
  background: #fff;
  padding:20px;
  margin-top:20px;
}
.extra-white_box .txt{
  font-size:12px;
}
.product-body_movie{
  max-width: 400px;
  margin:20px auto 0;
}
.published-box{
  border-bottom:1px solid #dcdcdc;
  padding-bottom:12px;
}
.published-box dt{
  background: #f4f4f4;
  border-top:1px solid #dcdcdc;
  font-weight: 600;
  line-height: 1.2;
  padding:10px;
  margin-bottom:10px;
}
.published-box dt:nth-of-type(n+2){
  margin-top:20px;
}
.published-box dd{
  font-size:12px;
  font-weight: 400;
  line-height: 1.5;
  color:#666;
}

@media screen and ( max-width:768px) {
  .product-catch-copy{
    font-size:18px;
  }
  .product-sub-copy{
    font-size:14px;
    font-weight: 600;
    line-height: 1.5;
  }
  .product-heading-underline{
    font-size:16px;
  }
  .product-other-heading{
    margin-bottom:12px;
    padding:10px;
  }
  .product-other-heading .name-en{
    font-size:24px;
  }
  .product-other-heading .name-jp{
    font-size:10px;
  }
  .product-heading-sideline{
    font-size:16px;
  }
  .product-body_wrap .extra-box{
    padding:15px;
  }
  .product-heading-published{
    font-size:16px;
  }
  .product-body_wrap .extra-box{
    padding:15px;
  }
  .extra-white_box{
    padding:12px;
  }
   .extra-list .category-pic{
    width:20%;
  }
  .extra-list .category-txt{
    width:76%;
  }
  .extra-heading-underline{
    font-size:12px;
    /* text-align: center; */
  }
  .published-box dd{
    font-size:10px;
  }
}


/* =Product Thema
----------------------------------------------------------- */
/* promois */
#promois .product-header{
  border-top:1px solid #916132;
}
#promois .product-heading-underline{
  border-bottom:3px solid #916132;
  background:#fcf2e6;
}
#promois .product-heading-sideline{
  border-left: solid 4px #916132;
}
#promois .extra-heading-underline{
  border-bottom:1px solid #916132;
  color:#916132;
}
#promois .product-heading-published{
  border-top:3px solid #916132;
}
/* silasoma */
#silasoma .product-header{
  border-top:1px solid #ef861d;
}
#silasoma .product-heading-underline{
  border-bottom:3px solid #ef861d;
  background:#fdf0e5;
}
#silasoma .product-heading-sideline{
  border-left: solid 4px #ef861d;
}
#silasoma .extra-heading-underline{
  border-bottom:1px solid #ef861d;
  color:#ef861d;
}
#silasoma .product-heading-published{
  border-top:3px solid #ef861d;
}
/* protesil */
#protesil .product-header{
  border-top:1px solid #e85292;
}
#protesil .product-heading-underline{
  border-bottom:3px solid #e85292;
  background:#ffe8f2;
}
#protesil .product-heading-sideline{
  border-left: solid 4px #e85292;
}
#protesil .extra-heading-underline{
  border-bottom:1px solid #e85292;
  color:#e85292;
}
#protesil .product-heading-published{
  border-top:3px solid #e85292;
}
/* amitose_vc */
#amitose_vc .product-header{
  border-top:1px solid #5679c7;
}
#amitose_vc .product-heading-underline{
  border-bottom:3px solid #5679c7;
  background:#e9f3ff;
}
#amitose_vc .product-heading-sideline{
  border-left: solid 4px #5679c7;
}
#amitose_vc .extra-heading-underline{
  border-bottom:1px solid #5679c7;
  color:#5679c7;
}
#amitose_vc .product-heading-published{
  border-top:3px solid #5679c7;
}
/* amitose_r */
#amitose_r .product-header{
  border-top:1px solid #42bbc5;
}
#amitose_r .product-heading-underline{
  border-bottom:3px solid #42bbc5;
  background:#e5f8f8;
}
#amitose_r .product-heading-sideline{
  border-left: solid 4px #42bbc5;
}
#amitose_r .extra-heading-underline{
  border-bottom:1px solid #42bbc5;
  color:#42bbc5;
}
#amitose_r .product-heading-published{
  border-top:3px solid #42bbc5;
}
/* vegetamide */
#vegetamide .product-header{
  border-top:1px solid #a7c000;
}
#vegetamide .product-heading-underline{
  border-bottom:3px solid #a7c000;
  background:#f4f8e5;
}
#vegetamide .product-heading-sideline{
  border-left: solid 4px #a7c000;
}
#vegetamide .extra-heading-underline{
  border-bottom:1px solid #a7c000;
  color:#a7c000;
}
#vegetamide .product-heading-published{
  border-top:3px solid #a7c000;
}
/* hazumi-hada */
#hazumi-hada .product-header{
  border-top:1px solid #e95e70;
}
#hazumi-hada .product-heading-underline{
  border-bottom:3px solid #e95e70;
  background:#fdeff0;
}
#hazumi-hada .product-heading-sideline{
  border-left: solid 4px #e95e70;
}
#hazumi-hada .extra-heading-underline{
  border-bottom:1px solid #e95e70;
  color:#e95e70;
}
#hazumi-hada .product-heading-published{
  border-top:3px solid #e95e70;
}
/* vistanol */
#vistanol .product-header{
  border-top:1px solid #6e964c;
}
#vistanol .product-heading-underline{
  border-bottom:3px solid #6e964c;
  background:#eff9e6;
}
#vistanol .product-heading-sideline{
  border-left: solid 4px #6e964c;
}
#vistanol .extra-heading-underline{
  border-bottom:1px solid #6e964c;
  color:#6e964c;
}
#vistanol .product-heading-published{
  border-top:3px solid #6e964c;
}
/* others */
#others .product-header{
  border-top:1px solid #9dab9e;
}
#others .product-heading-underline{
  border-bottom:3px solid #9dab9e;
  background:#eff9e6;
}
#others .product-heading-sideline{
  border-left: solid 4px #9dab9e;
}
#others .extra-heading-underline{
  border-bottom:1px solid #9dab9e;
  color:#9dab9e;
}
#others .product-heading-published{
  border-top:3px solid #9dab9e;
}
/* seppic */
#seppic .product-header{
  border-top:1px solid #005098;
}
#seppic .product-heading-underline{
  border-bottom:3px solid #005098;
  background:#eff9e6;
}
#seppic .product-heading-sideline{
  border-left: solid 4px #005098;
}
#seppic .extra-heading-underline{
  border-bottom:1px solid #005098;
  color:#005098;
}
#seppic .product-heading-published{
  border-top:3px solid #005098;
}
/* schulke */
#schulke .product-header{
  border-top:1px solid #1f75b2;
}
#schulke .product-heading-underline{
  border-bottom:3px solid #1f75b2;
  background:#e8f1f7;
}
#schulke .product-heading-sideline{
  border-left: solid 4px #1f75b2;
}
#schulke .extra-heading-underline{
  border-bottom:1px solid #1f75b2;
  color:#1f75b2;
}
#schulke .product-heading-published{
  border-top:3px solid #1f75b2;
}
.fc-promois{ color:#916132; }
.bg-promois{ background: #916132; }
.fc-silasoma{ color:#ef861d; }
.bg-silasoma{ background: #ef861d; }
.fc-protesil{ color:#e85292; }
.bg-protesil{ background: #e85292; }
.fc-amitose_vc{ color:#5679c7; }
.bg-amitose_vc{ background: #5679c7; }
.fc-amitose_r{ color:#42bbc5; }
.bg-amitose_r{ background: #42bbc5; }
.fc-vegetamide{ color:#a7c000; }
.bg-vegetamide{ background: #a7c000; }
.fc-hazumi-hada{ color:#e95e70; }
.bg-hazumi-hada{ background: #e95e70; }
.fc-vistanol{ color:#6e964c; }
.bg-vistanol{ background: #6e964c; }
.fc-others{ color:#9dab9e; }
.bg-others{ background: #9dab9e; }
.fc-seppic{ color:#005098; }
.bg-seppic{ background: #005098; }
.fc-schulke{ color:#1f75b2; }
.bg-schulke{ background: #1f75b2; }

/* product-table */
.product-table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  margin-top:15px;
  font-size:12px;
  line-height: 1.5;
  /* letter-spacing: .02em; */
}
.product-table th {
  padding: 8px 10px;
  border: 1px solid #dddddd;
  text-align: center;
}
.product-table td {
  padding: 8px 10px;
  font-weight: 400;
  border: 1px solid #dddddd;
}
.product-table .th-bg{
  background: #f6f6f6;
}
.product-table .product-name{
  font-size:13px;
  letter-spacing: .06em;
  vertical-align: middle;
}
.table-row4 th:nth-of-type(1){
 width: 18%;
}
.table-row4 th:nth-of-type(2){
 width: 35%;
}
.table-row4 th:nth-of-type(3){
 width: 35%;
}
.table-row4 th:nth-of-type(4){
 width: 12%;
}
.table-row3 th:nth-of-type(1){
 width: 18%;
}
.table-row3 th:nth-of-type(2){
 width: 42%;
}
.table-row3 th:nth-of-type(3){
 width: 40%;
}
.table-row2 th:nth-of-type(1){
 width: 18%;
}
.table-row2 th:nth-of-type(2){
 width: 82%;
}

@media screen and ( max-width:768px) {
  .product-table{
    width:750px;
  }
  .table-scroll {
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 10px;
  }
}



/* side
-----------------------------------------------------------*/

@media screen and (min-width: 769px){
  .side-seiwa{
    border-top: 3px solid #111;
    background: #f6f6f6;
  }
  .side-supply{
    background: #f6f6f6;
  }
  #side-column .product-sidenav:nth-of-type(n+2) {
    margin-top: 50px;
    overflow: hidden;
  }
  #side-column .product-ttl {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.2;
    padding: 15px;
    letter-spacing: .1em;
    text-align: center;
    color:#fff;
  }
  #side-column .product-sidenav ul {
    overflow: hidden;
    line-height: 1.4;
  }
  #side-column .product-sidenav li {
    border-bottom: solid 1px #dcdcdc;
    overflow: hidden;
    line-height: 1.4;
    font-weight:500;
    letter-spacing: .08em;
    position: relative;
  }
  #side-column .side-seiwa li{
    font-size:18px;
  }
  #side-column .product-sidenav li i {
    padding-right:5px;
    font-size:14px;
  }
  #side-column .product-sidenav li a {
    display: block;
    cursor: pointer;
    padding: 18px 20px;
    overflow: hidden;
    -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
  }
  #side-column .product-sidenav li a:hover{
    background: #fff;
  }
  #side-column .product-sidenav li:before {
    content: "";
    display: inline-block;
    background: #111;
    position: absolute;
    left: 0;
    top: 0;
    height: 0%;
    -webkit-transition: height 200ms;
    transition: height 200ms;
    width: 2px;
  }
  #side-column .product-sidenav li:hover:before {
    height: 100%
  }
  #side-column .product-sidenav .current a{
    background: #fff;
    color:#333;
  }
  #side-promois a,#side-promois.current a{ color:#916132!important; }
  #side-silasoma a, #side-silasoma.current a{ color:#ef861d!important; }
  #side-protesil a,#side-protesil.current a{ color:#e85292!important; }
  #side-amitose_vc a,#side-amitose_vc.current a{ color:#5679c7!important; }
  #side-amitose_r a,#side-amitose_r.current a{ color:#42bbc5!important; }
  #side-vegetamide a,#side-vegetamide.current a{ color:#a7c000!important; }
  #side-hazumi_hada a,#side-hazumi_hada.current a{ color:#e95e70!important; }
  #side-vistanol a,#side-vistanol.current a{ color:#6e964c!important; }
  #side-others a,#side-others.current a{ color:#9dab9e!important; }

}



.pullnav-product{
  width: 100%;
}
.pullnav-product select{
  display: none;
}

@media screen and ( max-width:768px) {
  .product-sidenav{
    display: none;
  }
  .pullnav-product select {
    display: block;
    width: 100%;
    height: auto;
    padding: 1rem 15px;
    outline: none;
    text-indent: 0.01px;
    -o-text-overflow: '';
    text-overflow: '';
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 3px;
    border: 1px solid #eaeaea;
    background: url(img/common/select_arrow.png) no-repeat right 12px center;
    background-size: 15px;
    font-size: 16px;
    letter-spacing: .06em;
    font-weight: 600;
    margin:0 0 20px;
  }
  .pullnav-product  select::-ms-expand {
    display: none;
  }
  .pullnav-product  select option {
    font-size: 16px;
  }
  .product-sidenav:nth-of-type(n+2) {
    margin:40px 0 20px;
  }
  /* #side-column .product-sidenav li {
    font-size:16px;
  }
  #side-column .product-sidenav li i {
    font-size:12px;
  }
  #side-column .product-sidenav li a {
    padding: 15px 20px;
  } */
}




/* Seppic-top
-----------------------------------------------------------*/
#seppic-top,#schulke-top{
  text-align: center;
}
#seppic-top .logo-supply{
  max-width: 181px;
  margin:0 auto 30px;
}
#schulke-top .logo-schulke{
  max-width: 234px;
  margin:0 auto 30px;
}
#seppic-top .in{
  background: #fff;
  padding:50px;
  margin:30px 0 50px;
}
.seppic-product-top{
  text-align: left;
}
#seppic-top .in .seppic-product-top{
  display: flex;
  flex-direction: column;
}
#seppic-top .in .seppic-product-top p,
#schulke-top .seppic-product-top  p{
  margin-bottom:20px;
}
.seppic-product-top .button {
  margin: auto 0 0 0;
}
.seppic-product-top .ttl{
  padding:12px 0;
  border-bottom:1px solid #005ba6;
  border-top:1px solid #005ba6;
  color:#005ba6;
  line-height: 1.4;
  margin-bottom:20px;
}
.seppic-product-top .ttl .name{
  font-size:18px;
  font-weight: 600;
  display: block;
}
.seppic-product-top .ttl .series{
  font-size:12px;
}
.supply-complement {
  border:1px solid #c9d5df;
  background: #fff;
  padding:20px;
  margin-top:40px;
  text-align: center;
}
.supply-complement .ttl{
  font-weight: 600;
  margin-bottom:10px;
}
.supply-complement a {
  color: #222;
  text-decoration: underline;
  transition: 0.2s ease all;
  -webkit-transition: 0.2s ease all;
  -moz-transition: 0.2s ease all;
}
.supply-complement a:focus,
.supply-complement a:active,
.supply-complement a:hover {
  color: #005ba6;
  text-decoration: none;
}

@media screen and (min-width: 769px){
  #seppic-top .in .seppic-product-top:nth-of-type(n+3) {
    margin-top: 60px;
  }
  #seppic-top .seppic-last{
    margin-top: 60px;
  }
}
@media screen and ( max-width:768px) {
  #schulke-top{
    padding:50px 0;
  }
  #seppic-top .lead-copy,#schulke-top .lead-copy{
    text-align: justify !important;
    font-size:12px;
  }
  #seppic-top .in{
    padding:20px;
    margin:20px 0 40px;
  }
  #seppic-top .logo-supply{
    max-width: 140px;
    margin:0 auto 10px;
  }
  #schulke-top .logo-schulke{
    max-width: 180px;
    margin:0 auto 10px;
  }
  .seppic-product-top .ttl{
    text-align: center;
  }
  .seppic-product-top .ttl .name{
    font-size:16px;
  }
  .seppic-product-top .ttl .series{
    font-size:10px;
  }
  .seppic-product-top .button {
    margin: 0 auto 0;
  }
  .seppic-product-top:nth-of-type(n+2) {
    margin-top: 30px;
  }
  #seppic-top .seppic-last{
    margin-top: 30px;
  }
  .supply-complement {
    padding:10px;
    margin-top:20px;
  }
}


/* Catalog
-----------------------------------------------------------*/
.catalog-list{
  display: flex;
  flex-wrap: wrap;
  /* align-items: flex-start; */
}
.catalog-list:nth-of-type(2){
  margin-top:40px;
}
.catalog-list li{
  text-align: center;
  display: flex;
  flex-direction: column;
}
.catalog-list li .img {
  overflow: hidden;
  display: block;
  width: 100%;
  height: auto;
  margin: 0 !important;
  padding: 0 !important;
}
.catalog-list li .catalog-ttl{
  font-weight: 600;
}
.catalog-list li img{
  border:1px solid #e4e4e4;
  margin:10px 0 15px;
}
.catalog-list .catalog-txt{
  font-size:12px;
  line-height: 1.4;
  color:#666;
  margin-bottom:20px;
}
.catalog-list .button {
  display: block;
  font-size: 12px;
  line-height: 40px;
  margin-top: auto;
  width: 100%;
}
.catalog-list .button i {
  line-height: 40px;
  height: 40px;
}
@media screen and (min-width: 769px){
  .catalog-list li:nth-of-type(n+7) {
    margin-top: 60px!important;
  }
}

@media screen and (max-width: 768px){
  .catalog-list li:nth-of-type(n+3) {
    margin-top: 40px!important;
  }
  .catalog-list li img{
    margin:10px 0;
  }
}


/* Movie
-----------------------------------------------------------*/
.movie-list {
  display: flex;
  flex-wrap: wrap;
}
.movie-item .img-borderd {
  border: 1px solid #e4e4e4;
}
.movie-item .ico-play{
  position: absolute;
  top: 0px;
  left:0px;
  z-index: 1;
}
.movie-item .ico-play img{
  width:70px;
}
.movie-list .ttl{
  margin-top:15px;
  font-weight: 600;
}
.movie-youtube-box{
  border:2px solid #ddd;
  padding:20px;
  text-align: center;
  margin-top:100px;
}
.movie-youtube-box .ttl{
  color:#d60413;
  font-weight: 600;
  font-size:18px;
  margin-bottom:15px;
}
/* .movie-youtube-box a {
  color: #222;
  text-decoration: underline;
  transition: 0.2s ease all;
  -webkit-transition: 0.2s ease all;
  -moz-transition: 0.2s ease all;
}
.movie-youtube-box a:focus,
.movie-youtube-box a:active,
.movie-youtube-box a:hover {
  color: #d60413;
  text-decoration: none;
} */

@media screen and (min-width: 769px){
  .movie-list li:nth-of-type(n+4) {
    margin-top: 40px!important;
  }
  .teaser-item:hover .ico-play {
    opacity: 0;
  }
}
@media screen and (max-width: 768px){
  .movie-list li:nth-of-type(n+2) {
    margin-top: 30px!important;
  }
}


.clm-box {
  justify-content: unset;
  margin-top: -50px;
}
.clm-box.col-3 .row {
  padding-top: 50px;
  margin: 0;
  width: 33.33%;
}

@media only screen and (max-width: 768px) {
  .clm-box.col-3 .row {
    width: 100%;
  }
}


#bnr-area {
  padding: 75px 0;
    text-align: center;
}

@media only screen and (max-width: 768px) {
  #bnr-area {
    padding: 30px 0;
  }
}

/* 20240702 オレンジ追加 */
.sub-style {
  font-size: 80%;
  vertical-align: middle;
}