@charset "utf-8";
/* CSS Document */

@import url("header.css");
@import url("option.css");
@import url("modaal.css");
@import url("post.css");

/*----------------------------------------
* コンテンツ共通
----------------------------------------*/

/*準備中ページ用*/
.c-text-cs p {
  text-align: center;
  font-size: 1.8rem;
  line-height: 1.5;
  color: #CCC;
}

body {
  position: relative;
}
figcaption {
  margin-top: 10px;
  line-height: 1.2;
  font-size: 0.9em;
  text-align: center;
}

.textCenter {
  text-align: center !important;
}
.textLeft {
  text-align: left !important;
}
.textRight {
  text-align: right !important;
}
.textLarge {
  font-size: 1.5em !important;
}
.textexLarge {
  font-size: 2em !important;
}
.textMid,
.u-textMid {
  font-size: 1.2em !important;
  line-height: 1.2;
}
.textMid02 {
  font-size: 1.3em !important;
}
.textSmall {
  font-size: 0.85em;
}
.textSmall02 {
  font-size: 0.6em;
}
.textSmall03 {
  font-size: 0.7rem;
}
.bold {
  font-weight: bold;
}
.normal{
  font-weight: normal;
}
.mincho {
  font-family: '源ノ明朝', '游明朝 Regular', 'source-han-serif-japanese', "Sawarabi Mincho", serif;
}
.font-initial {
  font-family: initial;
}
.indent1-5 {
  text-indent: -1.5em;
  margin-left: 1.5em;
}
.italic {
  font-style: italic;
}
.underline {
  text-decoration: underline;
}
.word-break-all {
  word-break: break-all;
}
.block {
  display: block !important;
}
.inline-block {
  display: inline-block;
}
.vertical-top {
  vertical-align: top;
}
.vertical-middle {
  vertical-align: middle !important;
}

.bg-white {
  background-color: #FFF !important;
}
.bg-black {
  background-color: #000 !important;
}
.bg-gray {
  background-color: #f7f7f7 !important;
}
.bg-gray02 {
  background-color: #555 !important;
}
.bg-gray03 {
  background-color: #f5f5f5 !important;
}
.bg-gray04 {
  background-color: #e5e5e5 !important;
}
.bg-pink02 {
  background-color: #fbdee0 !important;
}
.bg-pink03 {
  background-color: #fd87a8 !important;
}
.bg-blue {
  background-color: #e3e8f2 !important;
}
.bg-blue02 {
  background-color: #003289 !important;
}
.bg-blue03 {
  background-color: #68b7e6 !important;
}
.bg-blue04 {
  background-color: #0085ce !important; 
}
.bg-blue05 {
  background-color: #0075c2 !important; 
}
.bg-lightblue {
  background: #e5f5ff;
}
.bg-lightblue02 {
  background: #dfe9f6;
}
.bg-green {
  background-color: #ebf2e3 !important;
}
.bg-green02 {
  background-color: #1dac4b !important;
}
.bg-green03 {
  background-color: #69BB58 !important;
}
.bg-lightgreen {
  background-color: #eef7f1 !important;
}
.bg-bluegreen {
  background: #68a7ab !important;
}
.bg-lightbluegreen {
  background: #e0eff0 !important;
}
.bg-red {
  background-color: #e60012 !important;
}
.bg-orange {
  background-color: #f19100 !important;
}
.bg-orange02 {
  background-color: #ee6a43 !important;
}
.bg-lightorange {
  background-color: #fce6d9 !important;
}
.bg-lightorange02 {
  background-color: #fff8db !important;
}
.bg-beige {
  background-color: #f5f2ed !important;
}
.bg-dotted {
  background: url("../images/common/filter.png");
}
.bg-shadow {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.bg-shadow02 {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}
.bg-stripe {
  position: relative;
  overflow: hidden;
}
.bg-stripe::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background-size: 8px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  opacity: 0.3;
}
.bg-stripe--op15::before {
  opacity: 0.15;
}
.bg-stripe * {
  position: relative;
}
.bg-stripe--white::before {
  background-image: url("../images/common/stripe-white03.png");
}
.bg-grad-red {
  background: linear-gradient(180deg, #e60012, transparent);
}
.bg-grad-red-rev {
  background: linear-gradient(0deg, #e60012, transparent);
}
.bg-none {
  background: none !important;
}
.bg-note {
  background: url(../images/common/pattern/filter-gray.png);
  background-size: 8px;
}
.border {
  border: solid 1px #DDD;
}
.border--black {
  border-color: #333;
}
.border-dashed {
  border: dashed 1px #CCC;
}
.border-red {
  border: solid 1px #e60012;
}
.border-green {
  border: solid 1px #B0D9BD;
}
.border-bottom {
  border-bottom: dotted 1px #999;
}
.border-bottom02 {
  border-bottom: solid 1px;
}
.border-top {
  border-top: solid 1px #DDD;
}
.border-none {
  border: none !important;
}
.border-bottom-none {
  border-bottom: none !important;
}
.border-top-none {
  border-top: none !important;
}
.border-bottom.is-color-black {
  border-color: #333;
}
.border-bottom02.is-color-gray {
  border-color: #DDD !important;
}
.border-w2 {
  border-width: 2px;
}
.border-radius {
  border-radius: 30px;
}
.border-radius02 {
  border-radius: 20px;
}
.border-radius03 {
  border-radius: 10px;
}
.border-radius5 {
  border-radius: 5px;
}
.border-radius10 {
  border-radius: 10px;
}
.border-radius15 {
  border-radius: 15px;
}
.border-radius20 {
  border-radius: 20px;
}
.border-none {
  border: none !important;
}
.color-red {
  color: #e60012;
}
.color-black {
  color: #333;
}
.color-gray {
  color: #8a8a8a;
}
.color-white {
  color: #FFF;
}
.color-blue {
  color: #4668a8;
}
.color-blue2 {
  color: #003287;
}
.color-blue3 {
  color: #0075c2; /* DRACHE */
}
.color-surfaceblue {
  color: #0085ce;
}
.color-green {
  color: #1dac4b;
}
.color-bluegreen {
  color: #68a7ab;
}
.color-darkbluegreen {
  color: #029295;
}
.color-red2 {
  color: #e20012;
}
.color-orange {
  color: #f19100;
}
.color-orange02 {
  color: #ee7800;
}
.color-pink {
  color: #D0111A;
}
.color-bluegreen,
.u-color-bluegreen {
  color: #68a7ab;
}
.color-yellow,
.u-color-yellow {
  color: #f6e237;
}
.marker-red {
  background: linear-gradient(transparent 50%, #ffdddf 50%);
  padding: 0 4px;
  font-weight: bold;
}
.marker-yellow {
  background: linear-gradient(transparent 50%, #fff5a3 50%);
  padding: 0 4px;
  font-weight: bold;
}
.marker-blue {
  background: linear-gradient(transparent 50%, #d3e2ff 50%);
  padding: 0 4px;
  font-weight: bold;
}
.marker-blue02 {
  background: linear-gradient(transparent 50%, #b2e4ff 50%);
  padding: 0 4px;
  font-weight: bold;
}
.marker-orange {
  background: linear-gradient(transparent 50%, #ffe4a3 50%);
  padding: 0 4px;
  font-weight: bold;
}
.marker-green {
  background: linear-gradient(transparent 50%, #dcf2e3 50%);
  padding: 0 4px;
  font-weight: bold;
}
.l-secCont__box.dummy {
  background: #f5f5f5;
  padding: 2em;
}
.l-secCont__box.dummy p {
  color: #999;
}

.textCut {
  display: inline-block;
  padding: 2px 7px;
  vertical-align: middle;
}
.textCut p {
  color: #fff;
}

.bg-red.textCut {
  background-color: #e60012 !important;
}
.bg-green02.textCut {
  background: #00a381;
}
.bg-pink02.textCut {
  background: #e597b2;
}
.bg-none {
  background: none;
}

.w100 {
  width: 100% !important;
  min-width: auto !important;
}
.w95 {
  width: 95% !important;
}
.w90 {
  width: 90% !important;
}
.w85 {
  width: 85% !important;
}
.w80 {
  width: 80% !important;
}
.w75 {
  width: 75% !important;
}
.w70 {
  width: 70% !important;
}
.w65 {
  width: 65% !important;
}
.w60 {
  width: 60% !important;
}
.w55 {
  width: 55% !important;
}
.w50 {
  width: 50% !important;
}
.w45 {
  width: 45% !important;
}
.w40 {
  width: 40% !important;
}
.w35 {
  width: 35% !important;
}
.w30 {
  width: 30% !important;
}
.w25 {
  width: 25% !important;
}
.w20 {
  width: 20% !important;
}
.w15 {
  width: 15% !important;
}
.w10 {
  width: 10% !important;
}
.wAuto {
  width: auto !important;
}
.w-initial {
  max-width: initial;
}
.h100 {
  height: 100% !important;
}
.jc-center {
  justify-content: center;
}
.jc-between {
  justify-content: space-between;
}
.jc-end {
  justify-content: flex-end;
}
.display-block {
  display: block !important;
}
.display-none {
  display: none !important;
}
.display-flex {
  display: flex !important;
}
.display-flex--alignCenter {
  align-items: center;
}
.display-flex--column {
  flex-direction: column;
}
.lh-narrow {
  line-height: 1.4;
}
.link-none {
  pointer-events: none;
}
.pos-rel {
  position: relative;
}
.of-hidden {
  overflow: hidden;
}
.mgAuto {
  margin: 0 auto;
}
a.opacity-1:hover {
  opacity: 1;
}

@media print, screen and (min-width: 769px) {
  body {
    min-width: 1200px;
  }
  .sp {
    display: none !important;
  }
  .textLarge-pc {
    font-size: 1.5em !important;
  }
  .textMid-pc {
    font-size: 1.2em !important;
  }
  .textSmall-pc {
    font-size: 0.85em !important;
  }
  .textSmall02-pc {
    font-size: 0.6em !important;
  }
  .textLeft-pc {
    text-align: left !important;
  }
  .textCenter-pc {
    text-align: center !important;
  }
  .textRight-pc {
    text-align: right !important;
  }
  a[href^="tel:"] {
    pointer-events: none;
    color: inherit !important;
    text-decoration: none !important;
  }
  .jc-center-pc {
    justify-content: center;
  }
  .w-auto-pc {
    width: auto !important;
  }
  .inline-block-pc {
    display: inline-block;
  }
  .w100-pc {
    width: 100% !important;
  }
  .w90-pc {
    width: 90% !important;
  }
  .w80-pc {
    width: 80% !important;
  }
  .w70-pc {
    width: 70% !important;
  }
  .w60-pc {
    width: 60% !important;
  }
  .w50-pc {
    width: 50% !important;
  }
  .w40-pc {
    width: 40% !important;
  }
  .w30-pc {
    width: 30% !important;
  }
  .w20-pc {
    width: 20% !important;
  }
  .w10-pc {
    width: 10% !important;
  }
  .border-radius0-pc {
    border-radius: 0 !important;
  }
  .border-radius-pc {
    border-radius: 15px !important;
  }
  .border-radius5-pc {
    border-radius: 5px !important;
  }
  .border-radius10-pc {
    border-radius: 10px !important;
  }
  .border-radius15-pc {
    border-radius: 15px !important;
  }
  .border-radius20-pc {
    border-radius: 20px !important;
  }
}

@media screen and (max-width:768px) {
  .pc {
    display: none !important;
  }
  .textLarge {
    font-size: 1.3em !important;
  }
  .textMid-sp {
    font-size: 1.1em !important;
  }
  .textSmall-sp {
    font-size: 0.85em !important;
  }
  .textInherit-sp {
    font-size: inherit !important;
  }
  .textLeft-sp {
    text-align: left !important;
  }
  .textCenter-sp {
    text-align: center !important;
  }
  img.border-radius {
    border-radius: 8px;
  }
  .border-radius0-sp {
    border-radius: 0 !important;
  }
  .border-radius {
    border-radius: 15px !important;
  }
  .border-radius5-sp {
    border-radius: 5px !important;
  }
  .border-radius10-sp {
    border-radius: 10px !important;
  }
  .border-radius15-sp {
    border-radius: 15px !important;
  }
  .border-radius20-sp {
    border-radius: 20px !important;
  }
  .w100-sp {
    width: 100% !important;
  }
  .w90-sp {
    width: 90% !important;
    margin: 0 auto;
  }
  .w80-sp {
    width: 80% !important;
    margin: 0 auto;
  }
  .w70-sp {
    width: 70% !important;
    margin: 0 auto;
  }
  .w60-sp {
    width: 60% !important;
    margin: 0 auto;
  }
  .w50-sp {
    width: 50% !important;
    margin: 0 auto;
  }
  .w40-sp {
    width: 40% !important;
    margin: 0 auto;
  }
  .w30-sp {
    width: 30% !important;
    margin: 0 auto;
  }
  .w20-sp {
    width: 20% !important;
    margin: 0 auto;
  }
  .w10-sp {
    width: 10% !important;
    margin: 0 auto;
  }
  .w-initial {
    max-width: initial;
  }
  .w-auto-sp {
    width: auto !important;
  }
  .inline-block-sp {
    display: inline-block;
  }
  .block,
  .display-block-sp {
    display: block !important;
  }
  .mw-200px {
  }
  .mw-200px-sp {
    min-width: 200px;
  }
  .bg-none-sp {
    background: none;
  }
}

/*----------------------------------------
* Layout
----------------------------------------*/
.l-inner {
  position: relative;
  z-index: 1;
}
.l-secCont {
  position: relative;
}
.l-secCont:last-of-type,
.l-secCont__box:last-of-type,
.l-secCont__box__box:last-of-type,
.l-secCont__box__box__box:last-of-type {
  margin-bottom: 0;
}
.l-secCont ul li {
  margin-bottom: 0.5em;
}
.l-secCont ul li:last-child {
  margin-bottom: 0;
}
.l-secCont li {
  margin-bottom: 0.5em;
}

/* カラム */
.l-colWrap {
  display: flex;
  flex-wrap: wrap;
}
.l-colWrap.align-end {
  align-items: end;
}
.l-colWrap.align-center {
  align-items: center;
}
.l-colWrap.jc-center {
  justify-content: center;
}
.l-colWrap.is-nowrap {
  flex-wrap: nowrap;
}
.l-colWrap .col-item {
  position: relative;
}
.l-colWrap .col-item figure img {
  width: 100%;
}

/*flexアイテム下寄せ*/
.l-colWrap.end {
  align-items: flex-end;
}

/*画像+テキスト*/
.l-flexBox {
  display: flex;
  align-items: flex-start;
}

/*アイテムを上下中央寄せにしたいとき*/
.l-flexBox.align-center {
  align-items: center;
}

/*アイテムをベースラインに合わせたいとき*/
.l-flexBox.align-base {
  align-items: baseline;
}

/*アイテムを下寄せにしたいとき*/
.l-flexBox.flex-end {
  align-items: flex-end;
}

/*アイテムを上に合わせたいとき*/
.l-flexBox.align-start {
  align-items: flex-start;
}

/*アイテムの高さを揃えたいとき*/
.l-flexBox.align-stretch {
  align-items: stretch;
}

/*4:6*/
.l-flexBox.ratio4-6  >.l-flexBox__imgSpc,
.l-flexBox.ratio4-6 > .l-flexBox__spc01 {
  width: 40%;
}
.l-flexBox.ratio4-6 > .l-flexBox__textSpc,
.l-flexBox.ratio4-6 > .l-flexBox__spc02 {
  width: 60%;
}

/*5:5*/
.l-flexBox.ratio5-5 {
  justify-content: space-between;
}
.l-flexBox.ratio5-5 > .l-flexBox__imgSpc,
.l-flexBox.ratio5-5 > .l-flexBox__spc01,
.l-flexBox.ratio5-5 > .l-flexBox__textSpc,
.l-flexBox.ratio5-5 > .l-flexBox__spc02 {
  width: 48%;
}
.l-flexBox.ratio5-5 > .l-flexBox__textSpc,
.l-flexBox.ratio5-5 > .l-flexBox__spc02 {
  padding-left: 0;
}
/*3:7*/
.l-flexBox.ratio3-7 > .l-flexBox__imgSpc,
.l-flexBox.ratio3-7 > .l-flexBox__spc01 {
  width: 30%;
}
.l-flexBox.ratio3-7 > .l-flexBox__textSpc,
.l-flexBox.ratio3-7 > .l-flexBox__spc02 {
  width: 70%;
}

/*2:8*/
.l-flexBox.ratio2-8 > .l-flexBox__imgSpc,
.l-flexBox.ratio2-8 > .l-flexBox__spc01 {
  width: 20%;
}
.l-flexBox.ratio2-8 > .l-flexBox__textSpc,
.l-flexBox.ratio2-8 > .l-flexBox__spc02 {
  width: 80%;
}

/*1:9*/
.l-flexBox.ratio1-9 > .l-flexBox__imgSpc,
.l-flexBox.ratio1-9 > .l-flexBox__spc01 {
  width: 10%;
}
.l-flexBox.ratio1-9 > .l-flexBox__textSpc,
.l-flexBox.ratio1-9 > .l-flexBox__spc02 {
  width: 90%;
}

/*7:3*/
.l-flexBox.ratio7-3 > .l-flexBox__imgSpc,
.l-flexBox.ratio7-3 > .l-flexBox__spc01 {
  width: 70%;
}
.l-flexBox.ratio7-3 > .l-flexBox__textSpc,
.l-flexBox.ratio7-3 > .l-flexBox__spc02 {
  width: 30%;
}

/*8:2*/
.l-flexBox.ratio8-2 > .l-flexBox__imgSpc,
.l-flexBox.ratio8-2 > .l-flexBox__spc01 {
  width: 80%;
}
.l-flexBox.ratio8-2 > .l-flexBox__textSpc,
.l-flexBox.ratio8-2 > .l-flexBox__spc02 {
  width: 20%;
}

/*6:4*/
.l-flexBox.ratio6-4 > .l-flexBox__imgSpc,
.l-flexBox.ratio6-4 > .l-flexBox__spc01 {
  width: 60%;
}
.l-flexBox.ratio6-4 > .l-flexBox__textSpc,
.l-flexBox.ratio6-4 > .l-flexBox__spc02 {
  width: 40%;
}
/*3:5*/
.l-flexBox.ratio3-5 > .l-flexBox__imgSpc {
  width: 30%;
}
.l-flexBox.ratio3-5 > .l-flexBox__textSpc {
  width: 50%;
}

.l-flexBox.ratio4-1-4 > .l-flexBox__spc01 {
  width: 44%;
}
.l-flexBox.ratio4-1-4 > .l-flexBox__spc02 {
  width: 10%;
  margin: 0 1%;
}

@media print, screen and (min-width: 1231px) {
  .l-mainContainer main {
    width: 900px;
  }
}

@media print, screen and (max-width: 1230px) {
  .l-inner,
  .l-mainContainer {
    padding: 0 15px;
  }
  .l-mainContainer main {
    width: 870px;
    margin-right: 50px;
  }
}

@media print, screen and (min-width: 769px) {
  .l-mainContainer {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    margin-top: 50px;
  }
  .l-mainContainer.max100 {
    max-width: 100%;
  }
  .l-mainContainer main {
    margin-right: 50px;
  }
  .l-mainContainer.page-col-1 main {
    width: 100%;
    margin: 0;
  }
  .l-inner {
    max-width: 1200px;
    margin: 0 auto;
    width: 100%;
  }
  .l-inner.small {
    max-width: 1000px;
  }
  .l-secCont {
    width: 100%;
    margin-bottom: 80px;
  }
  .l-secCont--pd {
    padding: 50px 0;
  }
  .l-secCont__box,
  .l-secCont__box__box,
  .l-secCont__box__box__box {
    margin-bottom: 50px;
  }
  .l-secCont__box.is-narrow:not(:last-child) {
    margin-bottom: 30px;
  }
  .l-secCont .l-colWrap.size-small .c-item-vis__ttl {
    font-size: 14px;
  }
  .l-secCont .l-colWrap.size-small .col-item p {
    font-size: 14px;
  }

  /* カラム */
  .l-colWrap.is-mb-adjust {
    margin-bottom: -50px;
  }
  .l-colWrap .col-item {
    margin-bottom: 50px;
  }
  .l-colWrap.is-mb0 {
    margin-bottom: -50px !important;
  }
  .l-colWrap.is-mb0-pc {
    margin-bottom: -50px !important;
  }
  .l-colWrap.is-nowrap--pc {
    flex-wrap: nowrap;
  }
  .l-colWrap.is-gap10--pc {
    gap: 10px;
  }
  .l-colWrap.item2 > .col-item {
    width: 49%;
    margin-right: 2%;
  }
  .l-colWrap.item3 > .col-item {
    width: 32%;
    margin-right: 2%;
  }
  .l-colWrap.item4 > .col-item {
    width: 23.5%;
    margin-right: 2%;
  }
  .l-colWrap.item5 > .col-item {
    width: 18.4%;
    margin-right: 2%;
  }
  .l-colWrap.item6 > .col-item {
    width: 15%;
    margin-right: 2%;
  }
  .l-colWrap.item7 > .col-item {
    width: 12.5%;
    margin-right: 2%;
  }
  .l-colWrap.item8 > .col-item {
    width: 10.5%;
    margin-right: 2%;
  }
  .l-colWrap.item9 > .col-item {
    width: 9.1125%;
    margin-right: 2%;
  }
  .l-colWrap.item10 > .col-item {
    width: 8.2%;
    margin-right: 2%;
  }
  .l-colWrap.item2 > .col-item:nth-child(2n),
  .l-colWrap.item3 > .col-item:nth-child(3n),
  .l-colWrap.item4 > .col-item:nth-child(4n),
  .l-colWrap.item5 > .col-item:nth-child(5n),
  .l-colWrap.item6 > .col-item:nth-child(6n),
  .l-colWrap.item7 > .col-item:nth-child(7n),
  .l-colWrap > .col-item:last-child {
    margin-right: 0 !important;
  }

  /*カラムの片方がテキスト*/
  .l-colWrap.item2 > .col-item.col-item__text {
    height: 100%;
  }

  /*画像+テキスト*/
  .l-flexBox .l-flexBox__textSpc,
  .l-flexBox .l-flexBox__spc02 {
    padding-left: 2em;
  }
  .l-flexBox.reverse .l-flexBox__textSpc,
  .l-flexBox.reverse .l-flexBox__spc02 {
    padding-left: 0;
    padding-right: 2em;
  }
  .l-flexBox.reverse .l-flexBox__imgSpc,
  .l-flexBox.reverse .l-flexBox__spc01 {
    order: 2;
  }
  .l-flexBox .l-flexBox__imgSpc img {
    width: 100%;
  }
  
  /* spだけflexのとき */
  .l-flexBox.flex-sp-only {
    display: block;
  }
  .l-flexBox.flex-sp-only .l-flexBox__spc01,
  .l-flexBox.flex-sp-only .l-flexBox__spc02 {
    width: 100%;
    padding: 0;
  }
}


/* .l-floatBox */
.l-floatBox__imgSpc {
  float: right;
  width: 30%;
  margin: 0 0 30px 30px;
}
.l-floatBox.reverse .l-floatBox__imgSpc {
  float: left;
  margin: 0 30px 30px 0;
}

@media screen and (max-width:768px) {
  .l-mainContainer {
    padding: 0 15px 0;
  }
  .l-mainContainer main {
    width: 100%;
    margin-right: 0;
  }
  .l-mainContainer .l-inner {
    padding: 0;
  }
  .l-mainContainer.page-col-1.max100 {
    padding: 0;
  }
  .l-inner {
    padding: 0 15px;
  }
  .l-mainContainer.page-col-1 .l-inner {
    padding: 0;
  }
  .l-mainContainer.page-col-1.max100 .l-inner {
    padding: 15px;
  }
  .l-secCont {
    margin-bottom: 50px;
  }
  .l-secCont--pd {
    padding: 40px 0;
  }
  .l-secCont__box,
  .l-secCont__box__box,
  .l-secCont__box__box__box {
    margin-bottom: 30px;
  }
  .l-secCont ul.item1-sp li {
    width: 100%;
    margin-right: 0 !important;
  }
  .l-floatBox {
    display: flex;
    flex-wrap: wrap;
  }
  .l-floatBox--sp {
    display: block;
  }
  .l-floatBox__imgSpc,
  .l-floatBox__textSpc {
    width: 100%;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .l-floatBox__imgSpc {
    order: 2;
    margin-bottom: 0;
  }
  .l-floatBox__textSpc {
    margin-bottom: 30px;
  }
  .l-floatBox.order-change .l-floatBox__imgSpc {
    order: 1;
    margin-bottom: 30px;
  }
  .l-floatBox.order-change .l-floatBox__textSpc {
    order: 2;
    margin-bottom: 0;
  }

  /* カラム */
  .l-colWrap.is-mb0 {
    margin-bottom: -4% !important;
  }
  .l-colWrap.item1-sp > .col-item {
    width: 100% !important;
    margin-right: 0 !important;
  }
  .l-colWrap.item2-sp .col-item {
    width: 48%;
    margin-right: 4%;
    margin-bottom: 4%;
  }
  .l-colWrap.item2-sp .col-item:last-child {
    margin-bottom: 4%;
  }
  .l-colWrap.item3-sp .col-item {
    width: 32%;
    margin-right: 2%;
    margin-bottom: 4%;
  }
  .l-colWrap.item2-sp .col-item:nth-child(2n) {
    margin-right: 0;
  }
  .l-colWrap.item3-sp .col-item:nth-child(3n) {
    margin-right: 0;
  }
  .l-colWrap .col-item {
    width: 100%;
    margin-bottom: 30px;
  }
  .l-colWrap .col-item p {
    line-height: 1.5;
  }
  .l-colWrap .col-item:last-child {
    margin-bottom: 0;
  }

  /*画像+テキスト*/
  .l-flexBox {
    flex-wrap: wrap;
  }
  .l-flexBox.direct-column {
    flex-direction: column;
  }
  .l-flexBox .l-flexBox__imgSpc,
  .l-flexBox .l-flexBox__spc01 {
    width: 100% !important;
    margin: 0 0 30px 0;
  }
  .l-flexBox .l-flexBox__textSpc,
  .l-flexBox .l-flexBox__spc02 {
    width: 100% !important;
  }
  .l-flexBox.reverse-sp > .l-flexBox__imgSpc,
  .l-flexBox.reverse-sp > .l-flexBox__spc01 {
    order: 2;
    margin-bottom: 0 !important;
    margin-top: 30px !important;
  }

  /*spでもflex継承する場合*/
  .flex-sp.l-flexBox .l-flexBox__imgSpc,
  .flex-sp.l-flexBox .l-flexBox__spc01 {
    padding-right: 12px;
  }
  .flex-sp.l-flexBox .l-flexBox__imgSpc,
  .flex-sp.l-flexBox .l-flexBox__spc01 {
    margin-bottom: 0;
  }

  /*4:6*/
  .flex-sp.l-flexBox.ratio4-6 .l-flexBox__imgSpc,
  .flex-sp.l-flexBox.ratio4-6 .l-flexBox__spc01 {
    width: 30% !important;
  }
  .flex-sp.l-flexBox.ratio4-6 .l-flexBox__textSpc,
  .flex-sp.l-flexBox.ratio4-6 .l-flexBox__spc02 {
    width: 70% !important;
  }

  /*5:5*/
  .flex-sp.l-flexBox.ratio5-5 {
    justify-content: space-between !important;
  }
  .flex-sp.l-flexBox.ratio5-5 .l-flexBox__imgSpc,
  .flex-sp.l-flexBox.ratio5-5 .l-flexBox__spc01,
  .flex-sp.l-flexBox.ratio5-5 .l-flexBox__textSpc,
  .flex-sp.l-flexBox.ratio5-5 .l-flexBox__spc02 {
    width: 48% !important;
    padding-right: 0 !important;
  }
  .flex-sp.l-flexBox.ratio5-5 .l-flexBox__textSpc,
  .flex-sp.l-flexBox.ratio5-5 .l-flexBox__spc02 {
    padding-left: 0 !important;
  }

  /*3:7*/
  .flex-sp.l-flexBox.ratio3-7 .l-flexBox__imgSpc,
  .flex-sp.l-flexBox.ratio3-7 .l-flexBox__spc01 {
    width: 30% !important;
  }
  .flex-sp.l-flexBox.ratio3-7 .l-flexBox__textSpc,
  .flex-sp.l-flexBox.ratio3-7 .l-flexBox__spc02 {
    width: 70% !important;
  }

  /*2:8*/
  .flex-sp.l-flexBox.ratio2-8 .l-flexBox__imgSpc,
  .flex-sp.l-flexBox.ratio2-8 .l-flexBox__spc01 {
    width: 30% !important;
  }
  .flex-sp.l-flexBox.ratio2-8 .l-flexBox__textSpc,
  .flex-sp.l-flexBox.ratio2-8 .l-flexBox__spc02 {
    width: 70% !important;
  }

  /*1:9*/
  .flex-sp.l-flexBox.ratio1-9 .l-flexBox__imgSpc,
  .flex-sp.l-flexBox.ratio1-9 .l-flexBox__spc01 {
    width: 30% !important;
  }
  .flex-sp.l-flexBox.ratio1-9 .l-flexBox__textSpc,
  .flex-sp.l-flexBox.ratio1-9 .l-flexBox__spc02 {
    width: 70% !important;
  }

  /*7:3*/
  .flex-sp.l-flexBox.ratio7-3 .l-flexBox__imgSpc,
  .flex-sp.l-flexBox.ratio7-3 .l-flexBox__spc01 {
    width: 70% !important;
  }
  .flex-sp.l-flexBox.ratio7-3 .l-flexBox__textSpc,
  .flex-sp.l-flexBox.ratio7-3 .l-flexBox__spc02 {
    width: 30% !important;
  }

  /*6:4*/
  .flex-sp.l-flexBox.ratio6-4 .l-flexBox__imgSpc,
  .flex-sp.l-flexBox.ratio6-4 .l-flexBox__spc01 {
    width: 60% !important;
  }
  .flex-sp.l-flexBox.ratio6-4 .l-flexBox__textSpc,
  .flex-sp.l-flexBox.ratio6-4 .l-flexBox__spc02 {
    width: 40% !important;
  }

  .l-flexBox.flex-sp.direct-column .l-flexBox__spc01,
  .l-flexBox.flex-sp.direct-column .l-flexBox__spc02 {
    width: 100% !important;
  }
}

/* .col-itemの横に矢印 */
.l-colWrap.style-arrow .col-item::after {
  content: '';
  background-image: url("../images/common/icon/arrow03-gray.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  width: 2em;
  height: 2em;
  position: absolute;
  color: #CCC;
  z-index: 10;
}
.l-colWrap.style-arrow.item2 .col-item {
  width: 47%;
  margin-right: 6%;
}
.l-colWrap.style-arrow.item2 .col-item:nth-child(2n) {
  margin-right: 0;
}
.l-colWrap.style-arrow.item2 .col-item:nth-child(2n)::after {
  display: none;
}
.l-colWrap.style-arrow.item4 .col-item:nth-child(4n) {
  margin-right: 0;
}
.l-colWrap.style-arrow.item4 .col-item:nth-child(4n)::after {
  display: none;
}

.l-colWrap.style-arrow.is-color-red .col-item::after {
  background-image: url("../images/common/icon/arrow03-red.svg");
}

@media print, screen and (min-width: 769px) {
  .l-colWrap.style-arrow .col-item::after {
    top: 50%;
    right: -8%;
    transform: translateY(-50%) rotate(-45deg);
  }
}

@media screen and (max-width:768px) {
  .l-colWrap.style-arrow .col-item::after {
    bottom: -35px;
    right: 50%;
    transform: translateX(calc(100% - 1em)) rotate(45deg);
    line-height: 1;
  }
  .l-colWrap.style-arrow .col-item {
    margin-bottom: 50px;
  }
  .l-colWrap.style-arrow .col-item:last-child {
    margin-bottom: 0;
  }

  /* SPとPC共通 */
  .l-colWrap.style-arrow--common .col-item::after {
    top: 50%;
    right: -7%;
    transform: translateY(-50%) rotate(-45deg);
    font-size: 0.5em;
  }
}

/*youtubeの埋め込み*/
.l-youtubeWrap {
  width: auto;
  /*動画の横幅*/
  margin: 0 auto;
}
.l-youtubeWrap__inner {
  position: relative;
  padding-bottom: calc(315 / 560 * 100%);
}
.l-youtubeWrap iframe,
.l-youtubeWrap video {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

@media print, screen and (min-width: 769px) {
  .modaal-content-container .l-youtubeWrap {
    margin: -50px;
  }
}

@media screen and (max-width:768px) {
  .modaal-content-container .l-youtubeWrap {

  }
  .modaal-content-container .l-youtubeWrap {
    margin: -20px -15px -30px;
  }
  .modaal-content-container .l-youtubeWrap {
  }
}

/*----------------------------------------
* Component
----------------------------------------*/
.c-pageTitle {
  font-weight: normal;
  position: relative;
  line-height: 1.5;
}
.c-pageTitle::after {
  content: '';
  display: block;
  width: 60px;
  height: 3px;
  background: #e60012;
  position: absolute;
  bottom: -20px;
}
.c-pageTitle span {
  display: inline-block;
}
.c-pageTitle.after-none::after {
  content: none;
}
.c-pageTitle--borderNone {
  margin-bottom: 40px !important;
  padding-bottom: 0 !important;
}
.c-pageTitle--borderNone::after {
  display: none;
}

@media screen and (max-width:768px) {
  .c-pageTitle--borderNone {
    margin-bottom: 20px !important;
  }
}

.c-pageTitle-2 {
  position: relative;
}
.c-pageTitle-2 * {
  font-weight: bold;
  color: #e60012;
}
.c-pageTitle-2::after {
  content: '';
  display: block;
  width: 60px;
  height: 3px;
  background: #e60012;
  position: absolute;
  bottom: -18px;
}
.c-pageTitle-2.border-none::after {
  content: none;
}
.c-ttlh2 {
  font-size: 28px;
  border-bottom: solid 1px #DDD;
  font-weight: normal;
  margin-bottom: 30px;
  padding-bottom: 15px;
  line-height: 1.5;
}
.c-ttlh2.is-black {
  border-color: initial;
}
.c-ttlh2 a.icon::after {
  background-size: 0.6em;
  width: 0.6em;
  height: 0.6em;
  position: absolute;
  top: 0.6em;
  margin-left: 0.3em;
}
.c-ttlh2-2 {
  margin-bottom: 30px;
}
.c-ttlh2-2 * {
  font-weight: bold;
}
.c-ttlh2-2 h2 {
  font-size: 28px;
}
.c-ttlh2-2 p {
  font-size: 1rem;
  position: relative;
  padding-left: 50px;
  color: #e60012;
}
.c-ttlh2-2 p::before {
  content: '';
  display: block;
  width: 40px;
  height: 2px;
  background: #e60012;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.c-ttlh2-3,
.c-ttlh2-4 {
  text-align: center;
  margin-bottom: 30px;
}
.c-ttlh2-3::after {
  content: '';
  width: 50px;
  height: 3px;
  background: #e61200;
  display: inline-block;
}
.c-ttlh2-4 p {
  color: #E60012;
  letter-spacing: 0.15em;
}
.c-ttlh3 {
  color: #e60012;
  font-size: 28px;
  font-weight: normal;
  margin-bottom: 1em;
  line-height: 1.5;
}
.c-ttlh3-2 {
  padding: 10px 1em 10px 1.5em;
  margin-bottom: 30px;
  font-size: 1.2em;
  background: #f5f5f5;
  font-weight: normal;
  position: relative;
  line-height: 1.5;
}
.c-ttlh3-2 span.c-subTtl {
  display: inline-block;
  margin-left: 2.5em;
  color: #e60012;
  position: relative;
  font-size: 1rem;
}
.c-ttlh3-2 span.c-subTtl::before {
  content: '―';
  display: block;
  position: absolute;
  left: -1.5em;
  top: 0;
  color: #333;
}
.c-ttlh3-2 p {
  line-height: 1.5;
  margin-bottom: 5px;
}
.c-ttlh3-2::before {
  content: '';
  display: block;
  width: 4px;
  height: calc(100% - 15px);
  background: #e60012;
  position: absolute;
  top: 50%;
  left: 0.5em;
  transform: translateY(-50%);
  border-radius: 10px;
}
.c-ttlh3-2.is-borderNone {
  padding-left: 1em;
}
.c-ttlh3-2.is-borderNone::before {
  display: none;
}
.c-ttlh3-2--borderNone {
  padding-left: 1em;
}
.c-ttlh3-2--borderNone::before {
  display: none;
}

/* 背景ストライプ */
.c-ttlh3-2--stripe::after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: url(../images/common/stripe-white03.png);
  background-size: 8px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  opacity: 0.1;
}
.c-ttlh3-2--stripe * {
  position: relative;
  z-index: 10;
}

/* カラー反転 */
.c-ttlh3-2.is-colorRev {
  color: #FFF;
  background: #333;
}
.c-ttlh3-2.is-colorRev::before {
}
.c-ttlh3-2.is-colorRev.is-colorRev--blue {
  background: #0085CE;
}
/* margin-bottomを増やす */
.c-ttlh3-2.is-mbWide {
  margin-bottom: 50px
}

/*.c-ttlh3-2背景赤*/
.c-ttlh3-2.bg-red {
  background: #e60012;
  color: #fff;
}
.c-ttlh3-2.bg-red::before {
  background: #fff !important;
}
.c-ttlh3-3 {
  padding: 0 0 0 1em;
  margin-bottom: 30px;
  font-size: 1.2em;
  font-weight: normal;
  position: relative;
}
.c-ttlh3-3::before {
  content: '';
  display: block;
  width: 4px;
  height: 100%;
  background: #e60012;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  border-radius: 10px;
}
.c-ttlh3-3.border-bottom {
  padding: 0.5em 0 0.5em 1.5em;
}
.c-ttlh3-3.border-bottom::before {
  height: 60%;
  left: 0.5em;
}
.c-ttlh3-4 {
  padding: 10px 1em 10px 5em;
  margin-bottom: 30px;
  font-size: 1.2em;
  font-weight: normal;
  position: relative;
}
.c-ttlh3-4::before {
  content: '';
  display: block;
  width: 60px;
  height: 3px;
  background: #e60012;
  position: absolute;
  top: 50%;
  left: 0.5em;
  transform: translateY(-50%);
}
.c-ttlh4 {
  font-size: 1.2em;
  position: relative;
  padding-left: 25px;
  margin-bottom: 15px;
}
.c-ttlh4::after {
  content: '';
  display: inline-block;
  width: 15px;
  height: 1px;
  background: #333;
  position: absolute;
  left: 0;
  top: 0.8em;
}
.c-ttlh4-2 {
  font-size: 1.2em;
  position: relative;
  padding-left: 0.8em;
  margin-bottom: 15px;
}
.c-ttlh4-2::before {
  content: '';
  display: block;
  width: 4px;
  height: 90%;
  background: #e60012;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  border-radius: 10px;
}
.c-ttlh4-2.red::before {
  background: #e60012!important;
}
.c-ttlh5 {
  background: #e60012;
  display: inline-block;
  color: #FFF;
  font-size: 1em;
  padding: 0.2em 1em;
  line-height: 1.5;
}
.c-ttlgray {
  font-size: 1.2em;
  background: url("../images/common/stripe-white.png");
  background-size: 5px;
  background-color: #222;
  padding: 0.5em 1em;
  margin-bottom: 30px;
  color: #FFF;
}
.c-ttlgray02 {
  font-size: 1.2em;
  background-color: #555;
  padding: 0.5em 1em;
  margin-bottom: 30px;
  color: #FFF;
  line-height: 1.5;
}
.c-ttlStripe {
  font-size: 1.2em;
  background: url("../images/common/stripe-white.png");
  background-size: 6px;
  padding: 0.8em 1em;
  margin-bottom: 30px;
  color: #FFF;
  position: relative;
}
.c-ttlStripe--border {
  padding-left: 30px;
}
.c-ttlStripe--border::before {
  content: '';
  width: 5px;
  height: calc(100% - 1em);
  background-color: #FFF;
  position: absolute;
  top: 50%;
  left: 12px;
  transform: translateY(-50%);
  border-radius: 100px;
}
.c-ttlStripe .c-secTtl__main {
  line-height: 1.5;
}
.c-ttlStripe--bluegreen {
  background-color: #569da1;
}

@media screen and (max-width:768px) {
  .c-ttlStripe .c-secTtl__main {
    font-size: 1.2rem;
  }
}

.c-ttllines {
  position: relative;
  padding: .0 1.5em;
  font-weight: bold;
  text-align: center;
  display: inline-block;
}

.c-ttllines::before,
.c-ttllines::after {
  position: absolute;
  bottom: 0;
  height: 1.8em;
  content: '';
}

.c-ttllines::before {
  border-left: solid 2px;
  left: 0;
  transform: rotate(-30deg);
}

.c-ttllines::after {
  border-right: solid 2px;
  right: 0;
  transform: rotate(30deg);
}

.c-textLead {
  font-size: 1.4rem;
  font-weight: bold;
  margin-bottom: 1em;
  line-height: 1.5;
}

figure figcaption.c-caption {
  position: absolute;
  bottom: 0;
  margin: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 100%);
  display: block;
  width: 100%;
  text-align: left;
  padding: 15px 20px;
  font-weight: bold;
  font-size: 1rem;
  color: #FFF;
}

@media screen and (min-width:769px) {
  .c-ttlh2-3 h2,
  .c-ttlh2-4 h2 {
    font-size: 32px;
  }

  /* .c-textBox-height（2行） */
  .c-textBox-height.is-line2 {
    height: 3.5em;
  }
}

@media screen and (max-width:768px) {
  .c-ttlh3-2 span.c-subTtl {
    margin-left: 1.5em;
  }
  .c-ttlh3-3 {
    margin-bottom: 1em;
  }
  .c-ttlh3-4 {
    padding-left: 3em;
  }
  .c-ttlh3-4::before {
    width: 35px;
  }
  .c-ttlh4 {
    font-size: 1em;
  }
  .c-ttlgray {
    padding: 0.5em 1em;
    font-size: 1em;
    line-height: 1.5;
  }
}

/* .c-link */
.c-link {
  position: relative;
}
a.c-link[target=_blank]::after {
  content: '';
  display: inline-block;
  width: 0.8em;
  height: 0.8em;
  background-image: url("../images/common/icon/exlink.png");
  background-size: contain;
  margin: 0 5px 0 5px;
  filter: brightness(0) saturate(100%) invert(38%) sepia(40%) saturate(667%) hue-rotate(180deg) brightness(96%) contrast(95%);
  background-size: 80%;
  background-position: center;
}
.c-link--text {
  color: #4668a8;
  text-decoration: underline;
}
.c-link--text:hover {
  opacity: 1;
}
.c-link--text.c-link--icon--pdf {
  margin-right: 0.5em;
}
.c-link--icon::before,
.c-link--icon::after {
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.c-link--icon--pdf::after {
  content: '';
  display: inline-block;
  width: 1em;
  height: 1em;
  background-image: url(../images/common/icon/pdf.png);
  margin-left: 5px;
}
.c-link--icon--arrow::before {
  content: '';
  display: inline-block;
  width: 0.6em;
  height: 0.6em;
  background-image: url("../images/common/icon/arrow-red.png") ;
}
.c-link--icon--arrow.c-link--text::before {
  margin-right: 5px;
}

/* 2階層目（index） */
.c-cont-descSpc a figure {
  overflow: hidden;
  outline: solid 1px #DDD;
}
.c-cont-descSpc a figure img {
  display: block;
  transition: 0.5s;
}
.c-cont-descSpc a:hover {
  opacity: 1;
}
.c-cont-descSpc a:hover figure img {
  transform: scale(1.1, 1.1);
}
.c-cont-descSpc a.nolink {
  pointer-events: none;
}
.c-cont-descSpc a.nolink .c-item-vis__ttl h3::after {
  display: none;
}
.c-item-vis {
  position: relative;
  margin-bottom: 10px;
}
.c-item-vis__ttl {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 1em 1.5em 1em 1em;
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 100%);
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 100%);
}
.c-item-vis__ttl h3 {
  color: #FFF;
  font-size: 1.15em;
  line-height: 1.5;
  /*! font-weight: normal; */
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  position: relative;
}
.c-item-vis__ttl h3::after {
  content: '';
  display: inline-block;
  width: 5px;
  height: 8px;
  background: url("../images/common/icon/arrow-white.png") no-repeat center;
  background-size: 5px;
  position: absolute;
  top: 50%;
  right: -10px;
  transform: translateY(-50%);
}

a.exlink .c-item-vis__ttl h3::after {
  background-image: url("../images/common/icon/exlink-white.png");
  width: 0.6em;
  height: 0.6em;
  background-size: 0.6em;
}

.c-subpageLink {
  margin-top: 15px;
}
.c-subpageLink li {
  margin-bottom: 0 !important;
}
.c-subpageLink li a {
  font-size: 0.8em;
}

@media print, screen and (min-width: 769px) {
  .c-pageTitle {
    font-size: 38px;
    margin-bottom: 70px;
  }
  .c-pageTitle-2 {
    margin-bottom: 50px;
  }
  .c-pageTitle-2 h1 {
    font-size: 38px;
    line-height: 1.2;
  }
  .c-pageTitle-2 p {
    font-size: 1.1rem;
  }
  .c-cont-descSpc .item-vis {
    position: relative;
  }
  .c-cont-descSpc .item-vis h3 {
    background: rgba(0, 0, 0, 1);
    position: absolute;
    bottom: 0;
    width: 100%;
  }
}

@media screen and (max-width:768px) {
  .c-pageTitle {
    font-size: 22px;
    margin-bottom: 50px;
  }
  .c-pageTitle::after,
  .c-pageTitle-2::after {
    width: 40px;
    height: 3px;
  }
  .c-pageTitle-2 {
    margin-bottom: 40px;
  }
  .c-pageTitle-2 h1 {
    font-size: 22px;
  }
  .c-pageTitle-2 h1 img {
    max-height: 4em;
  }
  .c-ttlh2 {
    font-size: 20px;
  }
  .c-ttlh2-2 h2 {
    font-size: 20px;
  }
  .c-ttlh2-2 p {
    font-size: .9rem;
  }
  .c-ttlh2-3 h2,
  .c-ttlh2-4 h2 {
    font-size: 24px;
    line-height: 1.5;
  }
  .c-ttlh3 {
    font-size: 18px;
  }
}

/* ページ内リンク */
.c-anchorLink-spc {
  display: flex;
  flex-wrap: wrap;
}
.c-anchorLink-spc--center {
  justify-content: center;
}
.c-anchorLink-spc li {
  background-color: #f1f1f1;
  border: solid 1px #DDD;
  padding-right: 0 !important;
}
.c-anchorLink-spc li a {
  display: block;
  background: url(../images/common/icon/arrow-black.png) no-repeat center right 10px;
  background-size: 5px;
  font-size: 0.9em;
  height: 100%;
}
.c-anchorLink-spc li a:hover {
  color: #e60012;
  background-image: url(../images/common/icon/arrow-red.png);
}

/* リンク無効化 */
.c-anchorLink-spc li a.Invalid {
  background: none;
}

@media print, screen and (min-width: 769px) {
  .c-anchorLink-spc {
    margin-bottom: -1.25%;
    margin-right: 0 !important;
  }
  .c-anchorLink-spc li {
    width: 24%;
    margin: 0 1.33% 1.25% 0 !important;
  }
  .c-anchorLink-spc li:nth-child(4n) {
    margin-right: 0 !important;
  }
  .c-anchorLink-spc li a {
    padding: 0.5em 2em 0.5em 1em;
    min-height: 3.5em;
    line-height: 1.2;
    display: flex;
    align-items: center;
  }
  .c-anchorLink-spc--center-pc {
    justify-content: center;
  }
  /* item5 */
  .c-anchorLink-spc.flex.item5 li {
    margin: 0 0.92% 1.2% 0 !important;
    width: 19.2%;
  }
  /* item3 */
  .c-anchorLink-spc.flex.item3 li,
  .c-anchorLink-spc.flex.item3 li:nth-child(3n) {
    margin: 0 1.25% 1.25% 0 !important;
    width: 32.5%;
  }
  .c-anchorLink-spc.flex.item3 li:nth-child(3n) {
    margin-right: 0 !important;
  }

  /* item2 */
  .c-anchorLink-spc.flex.item2 li,
  .c-anchorLink-spc.flex.item2 li:nth-child(2n) {
    margin: 0 1.25% 1.25% 0 !important;
    width: 49.37%;
  }
  .c-anchorLink-spc.flex.item2 li:nth-child(2n) {
    margin-right: 0 !important;
  }

  /*widthを文章に合わせる*/
  .c-anchorLink-spc.width-auto li {
    width: auto;
  }
}

@media screen and (max-width:768px) {
  .c-anchorLink-spc li {
    width: 49%;
    margin: 0 2% 2% 0 !important;
  }
  .c-anchorLink-spc li:nth-child(2n) {
    margin-right: 0 !important;
  }
  .c-anchorLink-spc li a {
    padding: 5px 1em;
    background-position: center right 0.5em;
    line-height: 1.2;
    min-height: 3.5em;
    display: flex;
    align-items: center;
    font-size: 13px;
  }
  .c-anchorLink-spc li a.fd-column {
    flex-direction: column;
  }
  .c-anchorLink-spc.item1-sp li {
    width: 100%;
  }
}

/* ページ内リンク2 */
.c-anchorLink-spc02 {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: -0.5em;
}
.c-anchorLink-spc02 > li {
  margin: 0 0.8em 0.8em 0 !important;
}
.c-anchorLink-spc02 > li > a {
  display: flex !important;
  height: 100%;
  align-items: center;
  line-height: 1.2;
}
.c-anchorLink-spc02 > li:last-child {
  margin-right: 0;
  margin-bottom: 0.8em !important;
}
.c-anchorLink-spc02 li a {
  background: url(../images/common/icon/arrow-bottom_red.png) no-repeat center right 7px;
  background-size: 0.5em;
  border: solid 1px #E60012;
  color: #E60012;
  font-size: 0.9em;
  padding: 15px 25px 15px 15px;
}

@media print, screen and (min-width: 769px) {
  .c-anchorLink-spc02 > li > a {
    text-align: center;
  }
}

@media screen and (max-width:768px) {
  .c-anchorLink-spc02 {
    margin-bottom: -2%;
  }
  .c-anchorLink-spc02 li {
    width: 49%;
    margin: 0 2% 2% 0 !important;
  }
  .c-anchorLink-spc02 li:nth-child(2n) {
    margin-right: 0 !important;
  }
  .c-anchorLink-spc02 li:nth-child(2n) {
    margin-right: 0;
  }
  .c-anchorLink-spc02 li a {
    display: block;
    padding: 10px 1em;
    display: flex !important;
    align-items: center;
    height: 100%;
    line-height: 1.5;
  }
}

/* .c-newsBox */
.c-newsBox a {
  text-decoration: underline;
  color: #4668a8;
}
.c-newsBox a:hover {
  text-decoration: none;
  opacity: 1;
}
.c-newsBox > dl,
.c-newsBox > ul > li {
  margin-bottom: 15px;
  border-bottom: solid 1px #DDD;
  padding-bottom: 15px;
}
.c-newsBox > dl > dt {
  font-weight: bold;
}
.c-newsBox ul.c-listReset > li {
  border-bottom: none;
  padding: 0;
  margin-bottom: 0;
}
.c-newsBox dl dt .c-category {
  background: #333;
  display: inline-block;
  width: 90px;
  text-align: center;
  color: #FFF;
  margin-left: 20px;
  border-radius: 20px;
  font-size: 0.8em;
  padding: 4px 1em;
  line-height: 1.2;
}

@media print, screen and (min-width: 769px) {
  .c-newsBox > dl {
    display: table;
  }
  .c-newsBox > dl > dt,
  .c-newsBox dl dd {
    display: table-cell;
  }
  .c-newsBox > dl dt {
    min-width: 200px;
  }
  .c-newsBox.category-none01 > dl > dt {
    width: 90px;
    min-width: auto;
  }
  .c-newsBox > dl > dd {
    width: 740px;
    padding-left: 1em;
  }
  .c-newsBox.wid-change > dl > dt {
    width: 210px;
  }
  .c-newsBox.wid-change--en > dl > dt {
    width: 230px;
  }
  .c-newsBox.wid-change > dl > dd {
    width: 700px;
    padding-left: 1em;
  }
  .c-newsBox.wid-change02 > dl > dt {
    min-width: 6em;
  }
  .c-newsBox.is-wid100 > dl {
    width: 100%;
  }
  .c-newsBox.is-wid100 > dl > dd {
    width: 100%;
  }

  /* 幅調整 */
  .c-newsBox.is-ratio2-8 > dl > dt {
    min-width: 20%;
    width: 20%;
  }

  /* IRトップ  */
  .ir-index .c-newsBox > dl {
    width: 100%;
  }
  .ir-index .c-newsBox > dl > dt {
    min-width: 220px;
    width: 220px;
  }
}

@media screen and (max-width:768px) {
  .c-newsBox > dl > dt {
    margin-bottom: 5px;
  }
}

/* タブの切り替え */
.c-tabContent .hide {
  display: none;
}
.c-tabContent__btnWrap {
  padding: 20px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  margin-bottom: 50px;
  background: #FFF;
  transition: 0.2s;
}
.c-tabContent__btnWrap__ttl {
  font-size: 1.2rem;
  font-weight: bold;
  color: #777;
  text-align: center;
  margin-bottom: 20px;
}
.c-tabContent__btnWrap.sticky {
  position: sticky;
  top: 80px;
  left: 0;
  z-index: 2000;
}
.c-tabContent__btnWrap.sticky .c-tabContent__btnWrap__ttl {
  display: none;
}
.c-tabContent__btnWrap .c-tabArea {
  margin-bottom: -2%;
}
.c-tabContent--categoryTree .c-tabContent__btnWrap {
  padding: 0 20px;
}
.c-tabContent__btnWrap:has(.c-tabArea--categoryTree) .c-tabContent__btnWrap__ttl {
  background: linear-gradient(to bottom, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 50%, rgb(241, 241, 241) 100%);
  padding: 10px 20px;
  text-align: left;
  border-radius: 10px 10px 0 0;
  margin-bottom: 0;
  font-size: 1rem;
  display: block;
  position: relative;
}
.c-tabArea {
  margin: 0 0 40px 0;
  display: flex;
  flex-wrap: wrap;
}
.c-tabArea li {
  display: flex;
  align-items: center;
  text-align: center;
  background-color: #f1f1f1;
  cursor: pointer;
  margin: 0 10px 10px 0 !important;
  padding: 0.5em 2em;
}
.c-tabArea li:last-child {
  margin-right: 0;
}
.c-tabArea li:last-of-type {
  margin-right: 0 !important;
}
.c-tabArea li:hover {
  opacity: 0.7;
}
.c-tabArea li.select {
  color: #FFF;
  background-color: #e00012;
  opacity: 1;
}
.c-tabArea--center > li {
  justify-content: center;
}

@media print, screen and (min-width: 769px) {
  .c-tabArea--item4 > li {
    width: 23.5%;
    margin: 0 2% 2% 0 !important;
  }
  .c-tabArea--item4 > li:nth-child(4) {
    margin-right: 0 !important;
  }
}

@media screen and (max-width:768px) {
  .c-tabArea {
    margin: 0 0 20px 0;
    justify-content: initial;
  }
  .c-tabArea li {
    width: 48%;
    font-size: 12px;
    min-height: 3em;
    padding: 2px 5px;
    margin: 0 2% 2% 0 !important;
    justify-content: center;
  }
  .c-tabArea li:nth-child(2n) {
    margin-right: 0;
  }
  .c-tabArea li:last-child {
    margin-bottom: 0;
  }
  .c-tabArea--item2--sp > li {
    width: 49%;
  }
  .c-tabArea--item2--sp > li:nth-child(2n) {
    margin-right: 0 !important;
  }
  .c-tabContent__btnWrap__ttl {
    font-size: 1.1rem;
    margin-bottom: 10px;
  }
  .c-tabContent__btnWrap.sticky {
    border-radius: 0;
  }
  .c-tabContent__btnWrap.sticky + .l-2col__cont {
    margin-top: 30px;
  }
  .c-tabContent__btnWrap:has(.c-tabArea--categoryTree) .c-tabContent__btnWrap__ttl {
    margin: 0 -20px;
  }
  .c-tabContent__btnWrap.active:has(.c-tabArea--categoryTree) .c-tabContent__btnWrap__ttl {
    border-radius: 10px 10px 0 0;
  }

  .c-tabContent__btnWrap:has(.c-tabArea--categoryTree) .c-tabContent__btnWrap__ttl::after {
    content: '';
    width: 0.6em;
    height: 0.6em;
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23333%22%20stroke-width%3D%222.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cline%20x1%3D%2212%22%20y1%3D%225%22%20x2%3D%2212%22%20y2%3D%2219%22%3E%3C%2Fline%3E%3Cline%20x1%3D%225%22%20y1%3D%2212%22%20x2%3D%2219%22%20y2%3D%2212%22%3E%3C%2Fline%3E%3C%2Fsvg%3E');
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    font-weight: bold;
    font-size: 2rem;
    filter: brightness(0) saturate(100%) invert(100%) sepia(1%) saturate(2%) hue-rotate(302deg) brightness(102%) contrast(100%);
  }
  .c-tabContent__btnWrap:has(.c-tabArea--categoryTree) .c-tabContent__btnWrap__ttl.active::after {
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23333%22%20stroke-width%3D%222.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cline%20x1%3D%225%22%20y1%3D%2212%22%20x2%3D%2219%22%20y2%3D%2212%22%3E%3C%2Fline%3E%3C%2Fsvg%3E');
  }

  .c-tabContent__btnWrap:has(.c-tabArea--categoryTree) .c-tabContent__btnWrap__ttl.active + .c-tabArea {
    display: block;
  }
}

/*タブコンテンツ2*/
.c-tabContent.tab02 .c-tabArea {
  margin-bottom: 0;
}
.c-tabContent.tab02 .c-tabArea li {
  background: #d2d2d2;
  width: 50%;
  display: block;
  padding: 15px;
  border-radius: 10px 10px 0 0;
  margin: 0 !important;
}
.c-tabContent.tab02 .c-tabContent__item {
  border: solid 1px #cacaca;
  border-top: none;
  padding: 2em 3em;
}
.c-tabContent.tab02 .c-tabArea li.select {
  background-color: #e00012;
}

/* シャドウありの箱 */
.c-contBox {
  background-color: #FFF;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  border-radius: 20px;
  padding: 20px;
}
.c-contBox__ttl {
  font-size: 1.25rem;
  position: relative;
  margin-bottom: 0.5em;
  background-color: #111;
}
.c-contBox--styleChange {
  padding-top: 0;
}
.c-contBox--styleChange .c-contBox__ttl {
  color: #FFF;
  margin: 0 -20px 20px;
  padding: 15px 20px 15px 40px;
  border-radius: 20px 20px 0 0;
  position: relative;
  overflow: hidden;
}
.c-contBox--styleChange .c-contBox__ttl::after {
  content: '';
  display: block;
  width: 6px;
  height: calc(100% - 30px);
  border-radius: 100px;
  background-color: #FFF;
  position: absolute;
  top: 50%;
  left: 15px;
  transform: translateY(-50%);
}
.c-contBox--styleChange .c-contBox__ttl::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background-size: 8px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  opacity: 0.3;
}
.c-contBox--styleChange .c-contBox__ttl * {
  position: relative;
}
.c-contBox--styleChange .c-contBox__ttl::before {
  background-image: url("../images/common/stripe-white03.png");
}

/* 色変更 */
.c-contBox--bluegreen .c-contBox__ttl::after {
}
.c-contBox--bluegreen .c-recommendBtn {
  background-color: #68a7ab;
}

.p-contCounter {
  counter-reset: number 0;
}
.p-contCounter__item__ttl::before {
  counter-increment: number 1;
  content: counter(number);
  background-color: #e60012;
  color: #FFF;
  font-weight: bold;
  padding: 0.5em;
  width: 1rem;
  height: 1rem;
  display: inline-block;
  line-height: 1;
  text-align: center;
  margin-right: 0.5em;
}

/* .c-contFeatbox（数字付きの箱） */
.c-contFeatbox__ttl {
  position: relative;
  padding-left: 3.5rem;
  line-height: 1.5;
  min-height: 3rem;
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
.c-contFeatbox__ttl__num {
  font-size: 1.8rem;
  background-color: #e60012;
  color: #FFF;
  width: 3rem;
  height: 3rem;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

@media screen and (max-width:768px) {
  .c-contFeatbox__ttl {
    padding-left: 3rem;
  }
  .c-contFeatbox__ttl__num {
    width: 2.5rem;
    height: 2.5rem;
    font-size: 1.4rem;
  }
}

/* .c-contWrap */
@media print, screen and (min-width: 769px) {
  .c-contWrap {
    padding: 0 15px;
  }
}

/* .c-contBorderBox */
.c-contBorderBox {
  border-top: solid 8px #f5f5f5;
  position: relative;
}
.c-contBorderBox.l-secCont {
  padding-top: 80px;
}
.c-contBorderBox.l-secCont__box {
  padding-top: 50px;
}
.c-contBorderBox.l-secCont:last-child {
  border-bottom: solid 8px #f5f5f5;
  padding-bottom: 80px;
}
.c-ttlh3-2 + .c-contBorderBox {
  border-top: none;
  padding-top: 0;
}
.c-ttlh3-2 + .c-contBorderBox::after {
  display: none;
}
.c-contBorderBox--stripe::after,
.c-contBorderBox.l-secCont:last-child::before {
  content: '';
  display: block;
  width: 100%;
  height: 8px;
  background: url("../images/common/stripe-white03.png");
  background-color: #EEE;
  background-size: 10px;
  position: absolute;
  top: -8px;
  left: 0;
}
.c-contBorderBox.l-secCont:last-child {
  border-bottom: none;
}
.c-contBorderBox.l-secCont:last-child::before {
  top: auto;
  bottom: 8px;
}

@media screen and (max-width:768px) {
  .c-contBorderBox.l-secCont {
    padding-top: 50px;
  }
}

.c-borderBox {
  border: solid 1px #DDD;
  padding: 30px;
}

@media screen and (max-width:768px) {
  .c-borderBox {
    padding: 20px;
  }
}

/* 事例紹介インタビューのリンク*/
.c-linkbnr {
  display: block;
  position: relative;
  background-color: rgba(0,0,0,0.6);
  overflow: hidden;
  padding: 30px 60px;
  text-align: center;
  transition: 0.2s;
  max-width: 1000px;
  margin: 0 auto;
}
.c-linkbnr * {
  color: #FFF;
  font-weight: bold;
  line-height: 1.2;
}
.c-linkbnr__ttl {
  line-height: 1.5;
  margin-bottom: 15px;
}
.c-linkbnr__ttl02 {
  border: solid 1px;
  display: inline-block;
  padding: 5px 2em;
  letter-spacing: 0.1em;
  margin-bottom: 20px;
}
.c-linkbnr__ttl__main {
  display: block;
  font-size: 2.8rem;
  line-height: 1.5;
}
.c-linkbnr__ttl__sub {
  display: inline-block;
  padding: 2px 1em;
  min-width: 12em;
  margin-top: 5px;
}
.c-linkbnr__bgi {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  z-index: -1;
  opacity: 0.8;
  transition: 0.2s;
}
.c-linkbnr__bgi img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.c-linkbnr:hover {
  background-color: rgba(0,0,0,0.5);
  opacity: 1;
}
.c-linkbnr:hover .c-linkbnr__bgi {
  opacity: 0.8;
  width: 105%;
  height: 105%;
}

@media screen and (max-width:768px) {
  .c-linkbnr {
    padding: 40px 20px;
  }
  .c-linkbnr__ttl__main {
    font-size: 1.6rem;
  }
  .c-linkbnr__ttl__sub {
    display: block;
    margin-top: 10px;
    min-width: 100%;
  }
}

/* .c-contBnr */
.c-contBnr {
  text-align: center;
  max-width: 1200px;
  position: relative;
  overflow: hidden;
  padding: 50px;
  /*! border-radius: 10px; */
}
.c-contBnr__bgi {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.c-contBnr--os .c-contBnr__bgi::after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: #364c60;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0.4;
}
.c-contBnr .c-contBnr__textarea p {
  position: relative;
  color: #FFF;
  font-weight: bold;
}
.c-contBnr--os .c-contBnr__textarea p {
  filter: drop-shadow(0 0 6px rgba(7, 33, 55, 0.8));
}
.c-contBnr__bgi img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(4px);
}

@media screen and (max-width:768px) {
  .c-contBnr {
    padding: 50px 15px;
    margin: 0 -15px;
  }
  .c-contBnr__textarea {
    padding: 0 30px;
  }
}

/* .c-contBalloon（吹き出し） */
.c-contBalloon {
  background: #FFF;
  border-radius: 20px;
  padding: 30px;
  filter: drop-shadow(2px 2px 6px rgba(0,0,0,0.15));
  position: relative;
}
.c-contBalloon::after {
  content: '';
  display: block;
  width: 30px;
  height: 30px;
  background: url(../images/common/balloon-tip.svg) no-repeat center;
  background-size: contain;
  position: absolute;
  left: -20px;
  top: 10px;
}
.c-contBalloon::after {
}
.c-contBalloon__ttl {
  font-size: 1.4rem;
  line-height: 1.5;
  margin-bottom: 5px;
}

@media print, screen and (min-width: 769px) {
  .c-contBalloon--rev::after {
    transform: scaleX(-1);
    left: auto;
    right: -20px;
  }
}

@media screen and (max-width:768px) {
  .c-contBalloon {
    padding: 20px;
  }
  .c-contBalloon.is-sp-bottom::after {
    width: 30px;
    height: 30px;
    background: url(../images/common/balloon-tip.svg) no-repeat center;
    background-size: contain;
    position: absolute;
    left: auto;
    right: calc(50% - 30px);
    top: auto;
    bottom: -15px;
    transform: translateX(-50%) rotate(-90deg);
  }
  .c-contBalloon__ttl {
    font-size: 1.1rem;
  }
}

/* .c-contCard */
.c-contCard__img {
  overflow: hidden;
  aspect-ratio: 16/9;
}
.c-contCard__img img {
  transition: 0.2s;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.c-contCard__text {
  background-color: #f5f5f5;
  padding: 20px;
}
.c-contCard__text__ttl {
  margin-bottom: 10px;
}
.c-contCard:hover {
  opacity: 1;
}
.c-contCard:hover .c-contCard__img img {
  transform: scale(1.1);
}
.c-contCard {

}
.c-contCard .c-tagList {
  margin-top: 10px;
}

@media screen and (min-width:769px) {
}

@media screen and (max-width:768px) {

}

/* .c-tagList */
.c-tagList {
  font-size: 0;
}
.c-tagList > li {
  color: #888;
  font-size: 0.8rem;
  display: inline-block;
  margin-right: 0.5em;
}
.c-tagList > li::before {
  content: '#';
  margin-right: 0.2em;
}

@media screen and (min-width:769px) {
}

@media screen and (max-width:768px) {

}

/* .c-glassBox（すりガラス） */
.c-glassBox {
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(10px)
}
.c-glassBox--pd {
  padding: 50px;
}

@media screen and (max-width:768px) {
  .c-glassBox--pd {
    padding: 20px;
  }
}

/* おすすめボタン */
.c-recommendBtn {
  display: inline-block;
  background: #e60012;
  padding: 20px 60px 20px 20px;
  border-radius: 10px;
  position: relative;
  box-shadow: 2px 2px 6px rgba(0,0,0,0.2);
}
.c-recommendBtn::before,
.c-recommendBtn::after {
  content: '';
  display: block;
  position: absolute;
}
.c-recommendBtn::before {
  width: 40px;
  height: 100%;
  background: rgba(0,0,0,0.05);
  border-radius: 0 10px 10px 0;
  top: 0;
  right: 0;
}
.c-recommendBtn::after {
  width: 20px;
  height: 20px;
  background: url(../images/common/icon/arrow-white.png) no-repeat center;
  background-size: contain;
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
 }


.c-recommendBtn p {
  color: #FFF;
}
.c-recommendBtn__ttl,
.c-recommendBtn__lead {
  font-weight: bold;
  line-height: 1.5;
}
.c-recommendBtn__ttl + .c-recommendBtn__lead {
  margin-top: 10px;
}
.c-recommendBtn__ttl {
  font-size: 1.2rem;
}
.c-recommendBtn__ttl__tag {
  font-size: 0.8em;
  border: solid 1px #FFF;
  padding: 0.2em 1em;
  /*! vertical-align: middle; */
  margin-right: 10px;
}
.c-recommendBtn__lead {
  font-size: 1.4rem;
}

@media screen and (max-width:768px) {
  .c-recommendBtn__ttl {
    font-size: 0.9rem;
  }
  .c-recommendBtn__lead {
    font-size: 1.1rem;
  }
}

/*----------------------------------------
* list
----------------------------------------*/
.list-mb0 > li {
  margin-bottom: 0 !important;
}

/* .list-disc */
.list-disc > li {
  text-indent: -1em;
  margin-left: 1em;
}
.list-disc > li::before {
  content: '●';
  margin-right: 0.3em;
  font-size: 0.8em;
}
.list-disc.red > li::before {
  color: #e60012;
}
.list-disc.gray > li::before {
  color: #CCC;
}

/* .list-sq */
.list-sq > li {
  text-indent: -1em;
  margin-left: 1em;
}
.list-sq > li::before {
  content: '■';
  margin-right: 0.3em;
  font-size: 0.8em;
}
.list-sq.red > li::before {
  color: #E00012;
}
.list-sq.gray > li::before {
  color: #CCC;
}
.list-sq.green > li::before {
  color: #1dac4b;
}

/* .list-indent */
.list-indent > li {
  text-indent: -1em;
  margin-left: 1em;
}
.list-indent-reset {
  text-indent: initial;
}

/* .list-decimal */
.list-decimal {
  margin-left: 1.5em;
}
.list-decimal > li {
  list-style: decimal;
}
.list-decimal02 li {
  text-indent: -2.5em;
  margin-left: 2.5em;
}
.list-decimal02 {
  counter-reset: number 0;
}
.list-decimal02 > li::before {
  counter-increment: number;
  content: "（"counter(number)"）";
}

ol > li > ol > li {
  margin-left: 2em;
}

.list-count > li:before {
  content: "("counter(cnt) ") ";
  display: inline-block;
  margin: 0 0.5em 0 -2em;
  width: 20px;
}
.list-count > li {
  counter-increment: cnt;
  margin-left: 2em;
}

/* .list-line */
.list-line > li {
  position: relative;
  padding-left: 1em;
}
.list-line > li::after {
  display: block;
  content: '';
  position: absolute;
  top: .85em;
  left: 0em;
  width: 8px;
  height: 1px;
  background-color: #666;
}

/* .list-check */
.list-check > li {
  position: relative;
  padding-left: 1.5em;
}
.list-check > li::after {
  display: block;
  content: '';
  background: url("../images/common/icon/check-red.png") no-repeat center;
  background-size: 1em;
  position: absolute;
  top: .5em;
  left: 0;
  width: 1em;
  height: 1em;
}
.list-check.list-check--blue > li::after {
  background-image: url("../images/common/icon/check-blue.png");
}
.list-check.list-check--green > li::after {
  background-image: url("../images/common/icon/check-green.png");
}

.list-star > li {
  position: relative;
  padding-left: 1.5em;
}
.list-star > li::before,
.list-star > li::after {
  content: '';
  display: block;
  position: absolute;
}
.list-star > li::before {
  background-color: #e60012;
  width: 1.2em;
  height: 1.2em;
  position: absolute;
  top: 0.25em;
  left: 0;
  border-radius: 100%;
}
.list-star > li::after {
  background: url("../images/common/icon/star.svg") no-repeat center;
  background-size: 0.7em;
  top: 0.35em;
  left: 0.1em;
  width: 1em;
  height: 1em;
  filter: brightness(0) saturate(100%) invert(99%) sepia(1%) saturate(0%) hue-rotate(150deg) brightness(103%) contrast(102%);
}
.list-star--orange > li::before {
  background-color: #f19100;
}

@media print, screen and (min-width: 769px) {
  /* .list.flex */
  ul.flex {
    display: flex;
    flex-wrap: wrap;
    margin-right: -1em;
  }

  ul.flex.list-disc li {
    width: calc(100%/6 - 1em);
  }
  ul.flex.list-disc.item5 li {
    width: calc(100%/5 - 1em);
  }
  ul.flex.list-disc.item4 li {
    width: calc(100%/4 - 1em);
  }
  ul.flex.list-disc.item3 li {
    width: calc(100%/3 - 1em);
  }
  ul.flex.list-disc.item2 li {
    width: calc(100%/2 - 1em);
  }

  /*ul.flex li {
    width: calc(1 / 6 * 100% - 2em);
    margin-right: 1em;
  }
  ul.flex.item5 li {
    width: calc(1 / 5 * 100% - 2em);
  }
  ul.flex.item4 li {
    width: calc(1 / 4 * 100% - 2em);
  }
  ul.flex.item3 li {
    width: calc(1 / 3 * 100% - 2em);
  }
  ul.flex.item2 li {
    width: calc(1 / 2 * 100% - 2em);
  }
  ul.flex li:last-child {
    margin-right: 0;
  }*/
  ul.flex li {
    width: calc(100%/6);
    padding-right: 1em;
    word-break: break-all;
  }
  ul.flex.item5 li {
    width: calc(100%/5);
  }
  ul.flex.item4 li {
    width: calc(100%/4);
  }
  ul.flex.item3 li {
    width: calc(100%/3);
  }
  ul.flex.item2 li {
    width: calc(100%/2);
  }

  /* .list.inline-block */
  ul.inline-block li {
    display: inline-block;
    margin-right: 2em;
  }
  ul.inline-block li:last-child {
    margin-right: 0;
  }
}

@media screen and (max-width:768px) {
  ul.flex-sp,
  ul.flex.item2-sp {
    display: flex;
    flex-wrap: wrap;
  }
  ul.flex.item1-sp {
    display: block !important;
  }
  ul.flex.item1-sp > li {
    width: 100% !important;
    margin: 0 0 10px 0;
  }
  ul.flex-sp.item2-sp li,
  ul.flex.item2-sp li {
    width: 42%;
    margin-right: 4%;
  }
  ul.flex-sp.item2-sp li:nth-child(2n),
  ul.flex.item2-sp li:nth-child(2n) {
    margin-right: 0;
  }
}

/*----------------------------------------
* パンくずリスト
----------------------------------------*/
.breadcrumb {
  padding-top: 10px;
  margin-bottom: 5px;
}
.breadcrumb ol {
  font-size: 0;
}
.breadcrumb ol li {
  display: inline-block;
  font-size: 0;
}
.breadcrumb ol li {
  font-size: 12px;
  vertical-align: bottom;
}
.breadcrumb ol li a {
  color: #4668a8;
}
.breadcrumb ol li::after {
  content: '';
  display: inline-block;
  background: url("../images/common/icon/arrow-gray.png") no-repeat left center;
  background-size: 5px;
  width: 5px;
  height: 8px;
  margin: 0 10px;
}
.breadcrumb ol li:last-child::after {
  content: none;
}

@media print, screen and (min-width: 769px) {
  .breadcrumb {
    margin-top: 160px;
  }
}

@media screen and (max-width:768px) {
  .breadcrumb {
    margin-bottom: 20px;
    padding-top: 80px;
  }
  .breadcrumb .l-inner {
    padding: 0;
  }
  .breadcrumb ol {
    white-space: nowrap;
    overflow-x: scroll;
    padding: 5px 15px;
  }
}

/*----------------------------------------
* 中ページ共通
----------------------------------------*/
/*ページタイトル部分*/
.secTop.mainImg {
  position: relative;
  min-height: 350px;
  margin-top: 148px;
  margin-bottom: 40px;
  padding: 70px 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}
.secTop.mainImg .mainImg__desc {
  margin-top: 30px;
}
.secTop.mainImg .mainImg__desc p {
  color: #FFF;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  font-weight: bold;
}
.secTop.mainImg.masking::after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: url("../images/common/filter.png");
  background-color: rgb(0, 0, 0, 0.2);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
.secTop.mainImg .c-pageTitleSpc {
  margin-bottom: 10px;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}
.secTop.mainImg .c-pageTitleSpc h1,
.secTop.mainImg .c-pageTitleSpc p {
  color: #FFF;
}
.secTop.mainImg h1 {
  font-size: 3em;
  line-height: 2;
  line-height: 1.2;
  margin-bottom: 10px;
}
.secTop.mainImg .l-mainDisc--top .p-mainDisc__box {
  margin: 0 0 15px 0;
}
.secTop.mainImg .l-mainDisc--top .p-mainDisc__box:last-child {
  margin-bottom: 0;
}
.secTop.mainImg .l-mainDisc--top .p-mainDisc__box p {
  display: inline-block;
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  font-size: 1.4em;
  font-weight: bold;
  letter-spacing: 3px;
  line-height: 1.2;
  padding: 10px;
}

@media print, screen and (min-width: 769px) {
  .secTop.mainImg .l-mainDisc--top {
    position: absolute;
    right: 15%;
    text-align: right;
  }
}

@media screen and (max-width:768px) {
  .secTop.mainImg {
    margin-top: 72px;
    background-position: center;
  }
  .secTop.mainImg h1 {
    font-size: 2.5em;
  }
  .secTop.mainImg .c-pageTitleSpc {
    margin-bottom: 20px;
  }
  .secTop.mainImg .l-mainDisc--top .p-mainDisc__box p {
    font-size: 1em;
  }
}

/*----------------------------------------
* .sideMenu
----------------------------------------*/
.sideMenu {
  width: 250px;
}
.sideMenu .link-parent a,
.accordion ul li a,
.accordion .toggle {
  padding: 1em;
  font-size: 14px;
}
.sideMenu .side-head {
  display: block;
  background: #555;
  color: #fff;
  padding: 1em;
  font-size: 14px;
}
.sideMenu .link-parent a {
  display: block;
  background: #555;
  color: #FFF;
  position: relative;
}
.sideMenu .link-parent a::after {
  display: block;
  content: "";
  width: 5px;
  height: 5px;
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -5px;
  border-top: solid 2px #FFF;
  border-right: solid 2px #FFF;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -webkit-transition: .2s ease-in-out;
}
.sideMenu ul li a.active {
  color: #e60012;
}

.sideMenu ul li a.active::before {
  background: #e60012;
}

.accordion {
  display: block;
  margin: 0 auto;
  border-radius: 5px;
  background-color: #fff;
}
.accordion.is-styleChange {
  background: none;
}
.accordion.is-styleChange > ul > li {
  border: none;
}
.accordion.is-styleChange > ul > li > ul {
  background: #FFF;
}

.accordion li {
  list-style: none;
}
.accordion ul li ul li {
  border-top: solid 1px #DDD;
  text-indent: 1.5em;
  position: relative;
}
.accordion ul li ul li a::before {
  content: '';
  display: block;
  width: 10px;
  height: 2px;
  background: #CCC;
  position: absolute;
  left: 1.2em;
  top: 1.6em;
}
.accordion > ul > li {
  border-bottom: solid 1px #DDD;
}
.accordion a,
.accordion .toggle {
  display: block;
  position: relative;
  text-decoration: none;
  color: #333333;
  cursor: pointer;
  -webkit-transition: .2s ease-in-out;
}
.accordion a:hover {
  background-color: #eee;
}
.accordion .toggle::after {
  display: block;
  content: "";
  width: 5px;
  height: 5px;
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -5px;
  border-top: solid 1px #333;
  border-right: solid 1px #333;
  transform: rotate(45deg);
  -webkit-transform: rotate(135deg);
  -webkit-transition: .2s ease-in-out;
}
.accordion .open::after {
  transform: rotate(135deg);
  -webkit-transform: rotate(-45deg);
}
.accordion li ul {
  display: none;
  margin: 0;
  font-size: small;
  overflow: hidden;
}
.accordion li ul li a {
  line-height: 20px;
}
.accordion li ul li a::after {
  display: none;
}
.accordion ul > li > ul > li a {
  padding: 1em 1em 1em 2.5em;
  font-size: 14px;
  text-indent: 0;
}

/* .sideMenu-subnav */
.sideMenu-subnav li {
  margin-bottom: 5px;
  border: solid 1px #DDD;
  background: #f5f5f5;
  border-radius: 5px;
}

.sideMenu-subnav li a {
  font-size: 14px;
  display: block;
  padding: 0.5em 2em;
  background-position: center left 1em;
}

/* 株価情報 */
.p-stockprice {
  background: #DDD;
  margin: 20px 0;
  padding: 20px;
  height: 200px;
  color: #999;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media print, screen and (min-width: 769px) {
  .sideMenu {
    width: 250px;
  }
}

@media screen and (max-width:768px) {
  .sideMenu {
    width: 100%;
    margin-top: 50px;
  }
  .sideMenu .link-parent a,
  .accordion .toggle {
    padding: 10px 1em;
  }
  .accordion ul li a {
    page-top: 10px;
    padding-bottom: 10px;
  }
  .accordion > ul > li {
    border: solid 1px #DDD;
    border-bottom: none;
  }
  .accordion ul li:last-child {
    border-bottom: solid 1px #DDD;
  }
  .accordion ul > li > ul > li:last-child {
    border-bottom: none;
  }
}

/*----------------------------------------
* FAQ よくある質問
----------------------------------------*/
.faq.accordion .toggle {
  color: white;
}
.faq.accordion .toggle::after {
  border-top: #fff 1px solid;
  border-right: #fff 1px solid;
}
.faq.accordion .toggle.open {
  background: red !important;
}
.faq.accordion .toggle.bg-orange.open {
  background: #ee7800 !important;
}
.faq.accordion .toggle.bg-blue04.open {
  background: #003289 !important;
}
.faq.accordion ul li {
  font-size: 16px;
}
.faq.accordion ul li .ttl {
  font-size: 16px;
}
.faq.accordion ul li .answer .dl-btn {
  text-align: right;
  margin: 10px 10px 10px 0;
}
.faq.accordion ul li .answer a {
  padding: 0;
  font-size: 16px;
  display: inline-block;
  text-align: right;
  transition: 0s ease 0s;
  color: #4668a8;
  text-decoration: underline;
  position: relative;
}
.faq.accordion ul li .answer a.link-arrow:hover {
  background: url("../images/common/icon/arrow-red.png") no-repeat left top 0.4em;
  background-size: 0.3em;
}
.faq.accordion ul li .answer a::before {
  display: none;
}
.faq.accordion ul li .answer a.icon::after {
  content: '';
  display: inline-block;
  width: 1em;
  height: 1em;
  background-size: 1em;
  background-repeat: no-repeat;
  vertical-align: middle;
}
.faq.accordion ul li .answer a::after {
  background-image: url(../images/common/icon/pdf.png);
  width: 20px;
  margin-left: 0.5em;
}
.faq.accordion ul li .answer a:hover {
  text-decoration: none;
  opacity: 1;
  background: #fff;
}
.faq.accordion ul li .answer a.link-arrow {
  padding-left: 0.6em;
}

@media screen and (max-width:768px) {
  .faq.accordion .answer {
    text-indent: 0;
  }
}

/* styleChange */
.faq.accordion--styleChange > ul > li {
  background: #FFF;
  border: none;
}
.faq.accordion--styleChange > ul > li .toggle {
  background: #f1f1f1;
  color: #555;
  font-weight: bold;
  font-size: 0.95rem;
  position: relative;
  padding-left: 3rem;
  padding-right: 50px;
}
.faq.accordion--styleChange > ul > li .toggle.open {
  background: #CCC;
  color: #FFF;
  border-bottom: none;
}

.faq.accordion--styleChange > ul > li .toggle:after {
  display: block;
  content: "";
  width: 7px;
  height: 7px;
  position: absolute;
  top: 50%;
  right: 21px;
  margin-top: -5px;
  border-top: solid 2px #888;
  border-right: solid 2px #888;
  transform: rotate(45deg);
  -webkit-transform: rotate(135deg);
  -webkit-transition: .2s ease-in-out;
}

.faq.accordion--styleChange > ul > li .toggle.open::after {
  transform: rotate(135deg);
  -webkit-transform: rotate(-45deg);
  border-color: #FFF;
}

.faq.accordion--styleChange > ul > li .toggle::before {
  content: 'Q.';
  margin-right: 0;
  position: absolute;
  left: 1.4rem;
  top: 18px;
  font-size: 1.2rem;
  line-height: 1;
}
.faq.accordion--styleChange > ul > li .toggle.open {
  background: #e20012 !important;
}
.faq.accordion--styleChange > ul > li .answer {
  border: solid 4px #e20012;
  border-top: none;
  padding: 20px 20px 20px 2.8rem;
  position: relative;
}
.faq.accordion--styleChange > ul > li .answer::before {
  content: 'A.';
  display: block;
  position: absolute;
  top: 20px;
  left: 1rem;
  color: #e20012;
  font-weight: bold;
  font-size: 1.5rem;
  line-height: 1;
}
.faq.accordion--styleChange ul li ul li {
  text-indent: 0;
}
.faq.accordion--styleChange ul li ul li a {
  text-align: left !important;
  background-position: left 0.4em;
}

@media screen and (max-width:768px) {
  .faq.accordion--styleChange > ul > li .toggle {
    padding: 15px 35px 15px 40px;
    font-size: 0.95rem;
    line-height: 1.5;
  }
  .faq.accordion--styleChange > ul > li .toggle::before {
    top: 15px;
    left: 15px;
  }
  .faq.accordion--styleChange > ul > li .toggle::after {
    right: 15px;
  }
  .faq.accordion--styleChange > ul > li .answer {
    padding: 20px 20px 20px 2.6rem;
  }
  .faq.accordion--styleChange > ul > li .answer::before {
    font-size: 1.3rem;
    top: 22px;
  }
}

/* 色変更 */
.faq.accordion--styleChange.is-colorGreen > ul > li .answer::before {
  color: #1dac4b;
}
.faq.accordion--styleChange.is-colorGreen > ul > li .toggle.open {
  background: #1dac4b !important;
}
.faq.accordion--styleChange.is-colorGreen > ul > li .answer {
  border-color: #1dac4b;
}

/*----------------------------------------
* テーブル
----------------------------------------*/
.td--bg-white td {
  background: #fff
}

/* テーブル共通（dl）*/
.table-style01 > dl,
.table-style02 > dl {
  display: table;
  width: 100%;
}
.table-style01 > dl > dt,
.table-style01 > dl > dd,
.table-style02 > dl > dt,
.table-style02 > dl > dd {
  display: table-cell;
  padding: 1em;
}
.table-style01.is-vam > dl > dt,
.table-style01.is-vam > dl > dd,
.table-style02.is-vam > dl > dt,
.table-style02.is-vam > dl > dd {
  vertical-align: middle;
}

/* 幅調整 */
.table-style01.is-ratio1-9 > dl > dt,
.table-style02.is-ratio1-9 > dl > dt {
  width: 10%;
}
.table-style01.is-ratio1-9 > dl > dd,
.table-style02.is-ratio1-9 > dl > dd {
  width: 90%;
}

@media print, screen and (min-width: 769px) {
  .table-style01 > dl > dt,
  .table-style02 > dl > dt {
    width: 200px;
    width: 25%;
  }
  .table-style01 > dl > dd,
  .table-style02 > dl > dd {
    width: 700px;
    width: 75%;
  }
}

@media screen and (max-width:768px) {
  .table-style01 > dl > dt,
  .table-style01 > dl > dd,
  .table-style02 > dl > dt,
  .table-style02 > dl > dd {
    display: table-cell;
    padding: 15px;
  }
  .table-style01 > dl > dt,
  .table-style02 > dl > dt {
    width: 30%;
  }
  .table-style01 > dl > dd,
  .table-style02 > dl > dd {
    width: 70%;
  }
  .table-scroll {
    overflow: scroll;
  }
  .table-scroll::after {
    content: '>> 横にスクロール出来ます。';
    display: block;
    font-size: 0.9em;
    text-align: right;
  }
  .table-scroll table {
    width: 100%;
  }
  .table-scroll table {
    display: block;
    table-layout: fixed;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }
}

/* .table-style01 */
.table-style01 > dl {
  border: solid 1px #DDD;
  border-bottom: none;
}
.table-style01 > dl:last-child {
  border-bottom: solid 1px #DDD;
}
.table-style01 > dl > dt {
  background: #f1f1f1;
  border-right: solid 1px #DDD;
  font-weight: normal !important;
}
.table-style01 > dl > dd .category {
  background: #999;
  color: #FFF;
  display: inline-block;
  min-width: 5em;
  text-align: center;
  border-radius: 20px;
  padding: 0 15px;
  margin: 0 0 5px 0;
}
.table-style01 > dl > dd .dd-item {
  margin: 0 0 20px 0;
}
.table-style01 > dl > dd .dd-item:last-child {
  margin-bottom: 0;
}
.table-style01 > dl > dt,
.table-style01 > dl > dd {
  display: table-cell;
}
.table-style01 > dl .bg-gray {
  background-color: #f1f1f1;
}
.table-style01.reset > dl {
  border: none;
}
.table-style01.reset > dl > dt,
.table-style01.reset > dl > dd {
  padding: 0 !important;
}
.table-style01.reset > dl > dt {
  background: none;
  border-right: none;
}

/* borderなし */
.table-style01.is-border-none > dl,
.table-style01.is-border-none > dl > dt {
  border: none;
}
/* .table-style01.is-styleChange */
.table-style01.is-styleChange > dl > dt,
.table-style01.is-styleChange > dl > dd {
  /*! padding-left: 0; */
  /*! padding-right: 0; */
}
.table-style01.is-styleChange dl {
  border: none;
}
.table-style01.is-styleChange dl dt {
  background: none;
  border-right: solid 5px #eee;
}

@media screen and (max-width:768px) {
  .table-style01.is-styleChange.table-block dl dt,
  .table-style01.is-styleChange.table-block dl dd {
    padding: 0;
  }
  .table-style01.is-styleChange.table-block dl dt {
    border-bottom: solid 3px #eee;
    border-right: none;
    padding-bottom: 0.5em;
  }
  .table-style01.is-styleChange.table-block dl dd {
    padding-top: 1em;
  }
}

@media screen and (max-width:768px) {
  .table-style01 > dl > dt {
    padding: 15px;
  }
  .table-style01 > dl > dd {
    padding: 10px 15px;
  }

  /*スマホの時は縦並びに*/
  .table-style01.table-block > dl,
  .table-style02.table-block > dl {
    display: block;
  }
  .table-style01.table-block > dl > dt,
  .table-style02.table-block > dl > dt {
    text-align: center;
    padding: 5px;
  }
  .table-style01.table-block > dl > dt,
  .table-style01.table-block > dl > dd,
  .table-style02.table-block > dl > dt,
  .table-style02.table-block > dl > dd {
    display: block;
    width: 100% !important;
  }
  .table-style02.table-block > dl > dd {
    padding-left: 0;
    padding-right: 0;
  }
  .table-style01.table-block > dl > dt,
  .table-style02.table-block > dl > dt {
    border-right: none;
  }
}

/* .table-style02 */
.table-style02 table {
  position: relative;
}
.table-style02 table.table-width.is-th-calc9 thead th {
  width: calc(100%/9);
}
.table-style02 tr {
  border: solid 1px #DDD;
}
.table-style02 tr:last-child {
  border-bottom: none;
}
.table-style02 th,
.table-style02 td {
  border-right: solid 1px #DDD;
  padding: 0.5em 1em;
}
.table-style02 th {
  background: #f5f5f5;
  text-align: left;
  padding: 0.25em 1em;
}
.table-style02 > thead > tr > th {
  position: relative;
}
.table-style02 tbody th {
  width: 20%;
}
.table-style02 table.textCenter th,
.table-style02 table.textCenter td {
  text-align: center;
}
.table-style02 th,
.table-style02 td {
  width: auto;
}

.table-style02.is-styleChange table th,
.table-style02.is-styleChange table td {
  vertical-align: top;
}
.table-style02.is-styleChange table > thead > tr > th {
  background: none;
  padding: 10px 10px;
}
.table-style02.is-styleChange table > thead .c-thTtl {
  display: block;
  background-color: #f5f5f5;
  text-align: center;
  padding: 2px 5px;
  font-weight: bold;
}
.table-style02.is-styleChange table > thead .c-thImg {
  display: block;
  width: 60%;
  margin: 10px auto 0;
}
.table-style02 table .c-itemFeature {
  position: relative;
}
.table-style02 table .c-itemFeature:after {
  content: '';
  display: block;
  width: calc(100% - 7px);
  height: calc(100% + 2px);
  border: solid 4px #e60012;
  border-top: none;
  border-bottom: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  background: none;
  z-index: 10;
}
.table-style02 table .c-textSign {
  font-size: 1.6em;
  text-align: center;
  color: #999;
}
.table-style02 table .c-textSign.is-ok {
  color: #e60012;
}
.table-style02 table .c-textSign.is-ng {
  color: #0085ce;
  filter: brightness(0) saturate(100%) invert(35%) sepia(67%) saturate(1545%) hue-rotate(175deg) brightness(95%) contrast(101%);
}
.table-style02 table .c-textSign + p {
  margin-top: 10px;
}
.table-style02 table .c-itemFeature.is-first::after {
  border-top: solid 4px #e60012;
  height: calc(100% - 2px);
}
.table-style02 table .c-itemFeature.is-last::after {
  border-bottom: solid 4px #e60012;
  height: calc(100% - 2px);
}
.table-style02.is-colorSet-green table .c-itemFeature {
}
.table-style02.is-colorSet-green table .c-itemFeature::after {
  border-color: #1DAC4B !important;
}


/* レイアウト01 */
.table-style02.is-layout01 > table > thead > tr > th {
  color: #FFF;
  font-weight: bold;
}
.table-style02.is-layout01 > table {
  margin: -2px;
}
.table-style02.is-layout01 > table,
.table-style02.is-layout01 > table * {
  border: none;
}
.table-style02.is-layout01 > table th,
.table-style02.is-layout01 > table td {
  margin: 5px;
}
.table-style02.is-layout01 > table th::before,
.table-style02.is-layout01 > table th::after,
.table-style02.is-layout01 > table td::before,
.table-style02.is-layout01 > table td::after {
  display: none;
}
.table-style02.is-layout01 > table > tbody th {
  background: none;
}
.table-style02.is-layout01 > table > tbody tr {
}
.table-style02.is-layout01 > table > tbody tr:nth-child(2n) th::before,
.table-style02.is-layout01 > table > tbody tr:nth-child(2n) td::before {
  background-color: #eee;
}
.table-style02.is-layout01 > table th,
.table-style02.is-layout01 > table td {
  background: none;
  position: relative;
  padding: 8px 18px;
}
.table-style02.is-layout01 > table > tbody th,
.table-style02.is-layout01 > table > tbody td {
  padding-top: 15px;
  padding-bottom: 15px;
}
.table-style02.is-layout01 > table th::before,
.table-style02.is-layout01 > table td::before {
  content: '';
  display: block;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%) translateY(-50%);
}
.table-style02.is-layout01 > table > thead > tr > th::before {
  background-color: #777;
}
.table-style02.is-layout01 > table > tbody th::before,
.table-style02.is-layout01 > table > tbody td::before {
  background-color: #f5f5f5;
}

.table-style02.is-layout01 > table th::before {
  background: none;
}

/* 青 */
.table-style02.is-layout01--blue > table > thead > tr > th::before {
  background-color: #0085ce;
}
.table-style02.is-layout01--blue > table > tbody th::before,
.table-style02.is-layout01--blue > table > tbody td::before {
  background-color: #eef5f9;
}
.table-style02.is-layout01--blue > table > tbody tr:nth-child(2n) th::before,
.table-style02.is-layout01--blue > table > tbody tr:nth-child(2n) td::before {
  background-color: #e5eff4;
}

/* 青02 */
.table-style02.is-layout01--blue02 > table > thead > tr > th::before {
  background-color: #195a7d;
}
.table-style02.is-layout01--blue02 > table > tbody th::before,
.table-style02.is-layout01--blue02 > table > tbody td::before {
  background-color: #ecf2f4;
}
.table-style02.is-layout01--blue02 > table > tbody tr:nth-child(2n) th::before,
.table-style02.is-layout01--blue02 > table > tbody tr:nth-child(2n) td::before {
  background-color: #e1e9ec;
}
@media screen and (max-width:768px) {
  .table-style02 table .c-itemFeature:after {
    content: '';
    display: block;
    width: calc(100% - 8px);
  }
}

/*tbodyの20%を打ち消す*/
.table-style02 tbody.width-auto th {
  width: auto;
}

/* 横スクロール時に固定する */
.table-style02 tbody.sticky th {
  position: -webkit-sticky;
  position: sticky;
  left: 0;
  z-index: 100;
}

@media screen and (max-width:768px) {
  .table-style02 tbody.sticky th {
  }
}

.table-style02 thead.sticky th {
  position: -webkit-sticky;
  position: sticky;
  top: -1px;
  z-index: 2;
  border-bottom: solid 1px #DDD;
}
.table-style02 thead.sticky th.fixed {
  z-index: 3;
  top: -1px;
  left: 0;
}
.table-style02 tbody.sticky tr:last-child td {
  border-bottom: solid 1px #DDD;
}
.table-style02 tbody th::after,
.table-style02 thead th::after,
.table-style02 tbody.sticky .fixed::after{
  content: '';
  display: block;
  height: 1px;
  width: 100%;
  background: #DDD;
  position: absolute;
  left: 0;
  bottom: 0px;
}
.table-style02 tbody.sticky th::before,
.table-style02 thead.sticky th::before {
  right: -1px;
}
.table-style02 thead.sticky th::after {
  bottom: -1px;
}
.table-style02 tbody.sticky th::after {
  bottom: -1px;
}
.table-style02 thead .th-separate {
  position: relative;
  overflow: hidden;
}
.table-style02 tbody tr.border-bottom-dotted {
  border-bottom: dotted 1px !important;
  border-top: none;
}

/* FireFoxのみ*/
@-moz-document url-prefix() {
  .table-style02 tbody th::before,
  .table-style02 thead th::before,
  .table-style02 tbody.sticky .fixed::before {
    content: '';
    display: block;
    height: 100%;
    width: 1px;
    background: #DDD;
    position: absolute;
    right: 0px;
    top: 0px;
  }
  .table-style02 thead .th-separate {
    border-right: solid 3px #DDD;
  }
}

.table-style02 thead .th-separate::before {
  content: '';
  width: 100%;
  height: 1px;
  background: #CCC;
  top: 50%;
  transform: rotate(20deg) translateY(-50%);
}
.table-style02 thead .th-separate__item {
  position: absolute;
  line-height: 1;
  font-size: 0.8em;
  width: 49%;
  top: 50%;
  transform: translateY(-50%);
}
.table-style02 thead .th-separate__item--left {
  left: 1em;
}
.table-style02 thead .th-separate__item--right {
  right: 1em;
  text-align: right;
}
.table-style02 .td-auto td {
  width: auto !important;
  min-width: auto !important;
}

/* thead 中央揃え */
.table-style02__theadCenter th {
  text-align: center;
}

/*列の均等割り*/
.table-style02 table.layout-fixed {
  table-layout: fixed;
  width: 100%;
}

/* tableの色を変更 */
/* カラーセット */
.table-style02.is-colorset tbody tr {
  border-color: #888;
}
.table-style02.is-colorset tbody th,
.table-style02.is-colorset tbody td {
  border-color: #888;
}
.table-style02.is-colorset tbody th::after,
.table-style02.is-colorset thead th::after,
.table-style02.is-colorset tbody.sticky .fixed::after{
  background-color: #888;
}
.table-style02.is-colorset tbody th::before,
.table-style02.is-colorset thead th::before,
.table-style02.is-colorset tbody.sticky .fixed::before {
  background-color: #888;
}
.table-style02.is-colorset tbody tr.bb-white {
  border-bottom: solid 1px #FFF;
}

/* 赤 */
.table-style02.is-colorset-red thead th {
  background-color: #e60012;
  color: #FFF;
}
.table-style02.is-colorset-red tbody th {
  background-color: #fbdac8;
}
.table-style02.is-colorset-red thead tr {
  border: solid 2px #e60012;
}
.table-style02.is-colorset-red tbody tr {
  border-color: #888;
}
.table-style02.is-colorset-red tbody th,
.table-style02.is-colorset-red tbody td {
  border-color: #888;
}
.table-style02.is-colorset-red tbody th::after,
.table-style02.is-colorset-red thead th::after,
.table-style02.is-colorset-red tbody.sticky .fixed::after{
  background-color: #888;
}
.table-style02.is-colorset-red tbody th::before,
.table-style02.is-colorset-red thead th::before,
.table-style02.is-colorset-red tbody.sticky .fixed::before {
  background-color: #888;
}
.table-style02.is-colorset-red tbody tr.bb-white {
  border-bottom: solid 1px #FFF;
}

/* グレー */
.table-style02.is-colorset--gray thead tr {
  border: solid 1px #888;
}
.table-style02.is-colorset--gray thead tr th {
  border-right: solid 1px #888
}
.table-style02.is-colorset--gray thead th {
  background-color: #DDD;
}

/* グレー2 */
.table-style02.is-colorset--gray02 thead tr {
  border: solid 1px #888;
}
.table-style02.is-colorset--gray02 thead th::before {
  background: none;
}
.table-style02.is-colorset--gray02 thead tr th {
  border: none;
}
.table-style02.is-colorset--gray02 thead tr th {
  border-right: solid 2px #FFF;
}
.table-style02.is-colorset--gray02 thead tr th:last-child {
  border-right: none;
}
.table-style02.is-colorset--gray02 tbody th::before {
  background: none !important;
}
.table-style02.is-colorset--gray02 thead tr th {
  background-color: #999;
  color: #FFF;
  font-weight: bold;
}
.table-style02.is-colorset--gray02 tbody tr {
  border: none;
  border-bottom: solid 2px #FFF;
}
.table-style02.is-colorset--gray02 tbody tr th,
.table-style02.is-colorset--gray02 tbody tr td {
  border-right: solid 2px #FFF;
}
.table-style02.is-colorset--gray02 tbody tr {
  background: #fafafa;
}
.table-style02.is-colorset--gray02 tbody tr:nth-child(2n) {
  background: #f1f1f1;
}
.table-style02.is-colorset--gray02 thead th::after {
  display: none;
}

/* FireFoxのみ*/
@-moz-document url-prefix() {
  .table-style02.is-colorset-red tbody th::before,
  .table-style02.is-colorset-red thead th::before,
  .table-style02.is-colorset-red tbody.sticky .fixed::before {
    display: none;
  }
}

/* 文字サイズ（小） */
.table-fontsize-small th,
.table-fontsize-small td,
.table-fontsize-small td p {
  font-size: 0.85em;
}
.table-fontsize-small02 th,
.table-fontsize-small02 td,
.table-fontsize-small02 td p {
  font-size: 12px;
  line-height: 1.2;
  padding-left: 0.5em;
  padding-right: 0.5em;
}
.table-fontsize-small03 tbody th,
.table-fontsize-small03 td p {
  font-size: 0.8rem;
}
.table-fontsize-small03.table-style02 th,
.table-fontsize-small03.table-style02 td {
  padding-top: 1em;
  padding-bottom: 1em;
}

@media print, screen and (min-width: 769px) {
  .table-style02 dl dt {
    text-align: center;
    font-weight: bold;
    letter-spacing: 0.1em
  }
  .table-style02 thead.sticky th,
  .table-style02 thead.sticky th.fixed {
    top: 79px;
  }
}

@media screen and (max-width:768px) {
  .table-scroll {
    overflow: scroll;
    max-height: 80vh;
  }
  .table-scroll.height-auto {
    max-height: none;
  }
  .table-scroll::after {
    content: '>> 横にスクロール出来ます。';
    display: block;
    font-size: 0.9em;
    text-align: right;
    margin-top: 10px;
  }
  .table-scroll table {
    width: 100%;
  }
  .table-scroll table {
    width: -webkit-max-content !important;
    width: -moz-max-content !important;
    width: max-content !important;
    max-width: 650px;
  }
  .table-scroll table.width-fixed {
    width: 650px !important;
  }
  .table-scroll table.size-auto {
    max-width: inherit;
  }
  .table-scroll table.size-auto thead th {
    width: 100px !important;
  }
  .table-scroll table.max-1000 {
    max-width: 1000px;
  }
  .table-style02 tbody th {
    width: 30%;
    vertical-align: top;
  }
  .table-scroll.table-style02 thead th {
    min-width: 100px;
  }
  .table-style02 .th-auto th {
    width: auto !important;
    min-width: auto !important;
  }
  .table-scroll.table-style02 tbody.sticky th::after {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background: #DDD;
    position: absolute;
    left: 0;
    bottom: -1px;
  }
  .table-style02 tbody.sticky .fixed {
    position: -webkit-sticky;
    position: sticky;
    top: -1px;
    left: 0;
    z-index: 2;
    border-bottom: solid 1px #DDD;
    background: #FFF;
  }
  .before-none-sp.table-style02 tbody th::before,
  .before-none-sp.table-style02 thead th::before {
    background: none;
  }

  /*英語サイト*/
  .page-en .table-scroll::after {
    content: '>> scroll';
  }
}

/* dt-ddの比率 */
.table-style01.ratio6-4 > dl > dt {
  width: 60%;
}
.table-style01.ratio6-4 > dl > dd {
  width: 40%;
}

.table-style01.ratio5-5 > dl > dt {
  width: 50%;
}
.table-style01.ratio5-5 > dl > dd {
  width: 50%;
}

.table-style01.ratio2-8 > dl > dt {
  width: 20%;
}
.table-style01.ratio2-8 > dl > dd {
  width: 80%;
}

.table-style01.ratio3-7 > dl > dt {
  width: 30%;
}
.table-style01.ratio3-7 > dl > dd {
  width: 70%;
}

.table-style01.ratio4-6 > dl > dt {
  width: 40%;
}
.table-style01.ratio4-6 > dl > dd {
  width: 60%;
}

/* th(左)-th(右)の比率 */
.table-style02.ratio2-8 thead th:first-child {
  width: 25%;
}

@media screen and (min-width:769px) {
  /*table内のフォントを小さく（PCのみ）*/
  .table-textSmall-pc th,
  .table-textSmall-pc td,
  .table-textSmall-pc p,
  .table-textSmall-pc a{
    font-size: 0.9em;
  }
  .table-textSmall-pc dl dt,
  .table-textSmall-pc dl dd {
    font-size: 0.9em;
  }
}

@media screen and (max-width:768px) {
  /*table内のフォントを小さく（SPのみ）*/
  .table-textSmall th,
  .table-textSmall td,
  .table-textSmall p,
  .table-textSmall a{
    font-size: 0.9em;
  }
  .table-textSmall dl dt,
  .table-textSmall dl dd {
    font-size: 0.9em;
  }

  .table-textSmall02 th,
  .table-textSmall02 td,
  .table-textSmall02 p,
  .table-textSmall02 a{
    font-size: 0.8em;
  }
  .table-textSmall02 dl dt,
  .table-textSmall02 dl dd {
    font-size: 0.8em;
  }
}

/* .c-table-dl */
.c-table-dl > dl {
  display: table;
  width: 100%;
}
.c-table-dl > dl > dt,
.c-table-dl > dl > dd {
  display: table-cell;
  position: relative;
}
.c-table-dl > dl > dt {
  width: 30%;
  text-align: left;
  font-weight: normal;
  font-weight: bold;
  letter-spacing: initial;
}
.c-table-dl > dl > dd {
  width: 70%;  
}
.c-table-dl--align-mid > dl > dt,
.c-table-dl--align-mid > dl > dd {
  vertical-align: middle;
}


/* フォントReset */
.c-table-dl--fontReset > dl > dt,
.c-table-dl--fontReset > dl > dd,
.c-table-dl--fontReset > dl > dd p {
  font-size: 14px;
}

.c-table-dl--fontReset > dl > dt {
  font-weight: normal;
}

/* スタイル */
.c-table-dl--style01 > dl {
  border: solid 1px #DDD;
  border-bottom: none;
}
.c-table-dl--style01 > dl:last-child {
  border-bottom: solid 1px #DDD;
}
.c-table-dl--style01 > dl > dt {
  background-color: #f1f1f1;
  font-weight: normal;
  border-right: solid 1px #DDD;
}
.c-table-dl--style01 > dl > dt {
  padding: 0.5em 1rem;
}
.c-table-dl--style01 > dl > dd {
  padding: 1em 1rem;
}

.c-table-dl--style02 > dl {
  margin-bottom: 10px;
}
.c-table-dl--style02 > dl:last-child {
  margin-bottom: 0;
}
.c-table-dl--style02 > dl > dt::after {
  content: '：';
  position: absolute;
  top: 0;
  right: -0.5em; 
}

.c-table-dl--style03 > dl {
  margin-bottom: 10px;
}
.c-table-dl--style03 > dl:last-child {
  margin-bottom: 0;
}
.c-table-dl--style03 > dl > dt::after {
  content: '';
  display: block;
  width: 2px;
  height: 100%;
  background-color: #EEE;
  position: absolute;
  top: 0;
  right: -0.5em; 
}

/* dt-ddの比率 */
.c-table-dl--ratio1-9 > dl > dt {
  width: 10%;
}
.c-table-dl--ratio1-9 > dl > dd {
  width: 90%;
}
.c-table-dl--ratio2-8 > dl > dt {
  width: 20%;
}
.c-table-dl--ratio2-8 > dl > dd {
  width: 80%;
}
.c-table-dl--ratio4-6 > dl > dt {
  width: 40%;
}
.c-table-dl--ratio4-6 > dl > dd {
  width: 60%;
}
.c-table-dl--ratio5-5 > dl > dt,
.c-table-dl--ratio5-5 > dl > dd {
  width: 50%;
}

@media print, screen and (min-width: 769px) {
  .c-table-dl > dl > dd {
    padding-left: 1rem;
  }  
}

@media screen and (max-width:768px) {
  .c-table-dl--spBlock > dl,
  .c-table-dl--spBlock > dl > dt,
  .c-table-dl--spBlock > dl > dd {
    display: block;
    width: 100%;
  }
  .c-table-dl--ratio1-9--sp > dl > dt {
    width: 10%;
  }
  .c-table-dl--ratio1-9--sp > dl > dd {
    width: 90%;
  }
  .c-table-dl--ratio2-8--sp > dl > dt {
    width: 20%;
  }
  .c-table-dl--ratio2-8--sp > dl > dd {
    width: 80%;
  }
  .c-table-dl--ratio4-6--sp > dl > dt {
    width: 40%;
  }
  .c-table-dl--ratio4-6--sp > dl > dd {
    width: 60%;
  }
  .c-table-dl--ratio5-5--sp > dl > dt,
  .c-table-dl--ratio5-5--sp > dl > dd {
    width: 50%;
  }
}

.c-table-dl--style04 {
  
}
.c-table-dl--style04 > dl {
  
}
.c-table-dl--style04 > dl > dt,
.c-table-dl--style04 > dl > dd {
  padding: 20px;
}
.c-table-dl--style04 > dl > dt {
  background-color: #333;
  color: #FFF;
  border-bottom: solid 1px #DDD;
}
.c-table-dl--style04 > dl > dd {
  background-color: #f5f5f5;
  border-bottom: solid 1px #DDD;
}
.c-table-dl--style04 > dl:last-child > dt,
.c-table-dl--style04 > dl:last-child > dd {
  border-bottom: none;
}
.c-table-dl--style04.is-color-blue > dl > dt {
  background-color: #003289;
}

@media screen and (max-width:768px) {
  .c-table-dl--style04 > dl > dt {
    padding: 8px 15px;
  }
  .c-table-dl--style04 > dl > dd {
    padding: 15px;
  }
}

/* .c-tableTag */
.c-tableTag--thth--center > table > thead > tr > th {
  text-align: center;
}

/*----------------------------------------
* テーブルのタブ
----------------------------------------*/
.c-tableTab__switch {
  color: #fff;
  background-color: #888;
  cursor: pointer;
  text-align: center;
  position: relative;
}
.c-tableTab__switch:hover {
  opacity: .8;
}
.c-tableTab__switch.select {
  font-weight: bold;
  background-color: #254171;
}
.c-tableTab__switch.select:hover {
  opacity: 1;
}
.c-tableTab__table {
  position: relative;
}
.c-tableTab__table::after {
  content: "";
  display: block;
  height: 4px;
  width: 100%;
  background-color: #254171;
  position: absolute;
  left: 0;
  bottom: -4px;
}
.c-tableTab__content {
  padding: 30px;
  border: 1px solid #ddd;
  border-top: none;
}

@media screen and (max-width:768px) {
  td.c-tableTab__switch {
    padding: .2em .2em;
  }
}

/*----------------------------------------
* タブ切り替え
----------------------------------------*/
.tab-content .hide {
  display: none;
}
.tab-area {
  margin: 0 0 50px 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.tab-area li {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 16px;
  background-color: #f1f1f1;
  cursor: pointer;
  margin: 0 30px 0 0;
  line-height: 1.5;
}
.tab-area li:last-of-type {
  margin-right: 0 !important;
}
.tab-area li:hover {
  opacity: 0.7;
}
.tab-area li.select {
  color: #FFF;
  background-color: #4668a8;
  opacity: 1;
}

@media print, screen and (min-width: 769px) {
  .tab-area li {
    width: 40%;
    padding: 10px 10px;
  }
}

@media screen and (max-width:768px) {
  .tab-area {
    display: block;
    margin: 0 0 20px 0;
  }
  .tab-area li {
    width: 100%;
    font-size: 14px;
    min-height: 4em;
    padding: 2px 5px;
    margin-bottom: 10px;
  }
  .tab-area li:last-child {
    margin-bottom: 0;
  }
}

/*----------------------------------------
* .accBox（アコーディオン）
----------------------------------------*/
/*チェックは隠す*/
.accbox input {
  display: none;
}

/*ラベル*/
.accbox label {
  display: block;
  cursor: pointer;
  transition: all 0.5s;
}

/*アイコンを表示*/
.accbox label {
  position: relative;
}
.accbox .ttl-borderLeft {
  display: inline-block;
  margin-bottom: 0;
  padding: 0;
}
.accbox label:after {
  content: '\f107';
  font-family: 'FontAwesome';
  font-weight: bold;
  padding-right: 8px;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

/*中身を非表示にしておく*/
.accbox .accshow {
  height: 0;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  transition: 0.8s;
}

/*クリックで中身表示*/
.cssacc:checked + label + .accshow {
  height: auto;
  opacity: 1;
  padding: 10px 15px;
  opacity: 1;
}

.cssacc:checked + label + .accshow::before {
  content: '';
  display: block;
  height: 1px;
  width: 100%;
  position: absolute;
  left: 0;
  top: 2px;
}

/*アイコンを入れ替える*/
.cssacc:checked + label:after {
  content: '\f106';
}

@media print, screen and (min-width: 769px) {}

@media screen and (max-width:768px) {}

/*----------------------------------------
* リンク
----------------------------------------*/
/* テキストリンク */
a.txt,
p.txt{
  color: #4668a8;
  text-decoration: underline;
  word-break: break-all;
}
a.txt:hover,
p.txt:hover {
  text-decoration: none;
  opacity: 1;
}

/* .link-arrow */
.link-arrow {
  background: url("../images/common/icon/arrow-red.png") no-repeat left top 0.4em;
  background-size: 0.3em;
  padding-left: 0.6em;
  display: inline-block;
  background-position-y: 52%;
}

/* .linkbtn01 */
.linkbtn01 {
  border: solid 1px #DDD;
  display: inline-block;
  background: url(../images/common/icon/arrow-black.png) no-repeat center right 10px;
  background-color: #f1f1f1;
  background-size: 5px;
  font-size: 0.9em;
  vertical-align: middle;
  padding: 0.5em 3em 0.5em 2em;
}
.linkbtn01:hover {
  color: #e60012;
  background-image: url(../images/common/icon/arrow-red.png);
}

.linkbtn01.exlink {
  background-image: url("../images/common/icon/exlink.png");
  background-size: 0.8em;
}
.linkbtn01.exlink::after {
  position: absolute;
  top: 50%;
  right: 1em;
  transform: translateY(-50%);
}
.linkbtn01.exlink:hover::after {
  background-image: url("../images/common/icon/exlink-red.png");
}

.linkbtn01.long {
  width: 300px;
}

.linkbtn01.wide {
  width: 100%;
}

.linkbtn01--arrowDown {
  background-image: url(../images/common/icon/arrow-bottom_black.png);
  background-size: 10px;
}

.linkbtn01--arrowDown:hover {
  background-image: url(../images/common/icon/arrow-bottom_blue.png)!important;;
  background-size: 10px;
}

.linkbtn01.is-nolink {
  color: #999 !important;
}

.linkbtn01.is-nolink:hover {
  opacity: 1;
  cursor: default;
}

.btn-play {
  position: relative;
  display: block;
}
.btn-play:hover{
  opacity: 1;
}
.btn-play:hover::before {
  background: rgba(0,0,0,0.05);
}
.btn-play::after {
  position: absolute;
  content: '';
  background: url("../images/common/icon/arrow02-black.png") no-repeat center;
  background-size: cover;
  width: 3em;
  height: 3em;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  z-index: 100;
}
.btn-play:hover::after {
  background-image: url("../images/common/icon/arrow02-red.png");
}

@media screen and (max-width:768px) {
  .linkbtn01.long {
    width: 100%;
  }
  .l-colWrap.item2-sp .linkbtn01 {
    padding: 0.5em 1.1em 0.5em 1em;
  }
}

/* .linkbtn02 */
.linkbtn02 {
  border: solid 1px #DDD;
  display: inline-block;
  background: url(../images/common/icon/arrow-white.png) no-repeat center right 10px;
  background-color: #e60012;
  background-size: 5px;
  font-size: 0.9em;
  vertical-align: middle;
  padding: 1em 3em 1em 2em;
  min-width: 300px;
  border: none;
  color: #FFF;
  text-align: center;
}
.linkbtn02.is-auto {
  min-width: auto !important;
}
.linkbtn02:hover {
  color: #e60012;
  background-image: url(../images/common/icon/arrow-red.png);
  background-color: #FFF;
  outline: solid 1px;
}
.linkbtn02.exlink {
  background-image: url(../images/common/icon/exlink-white.png);
  background-size: 13px;
}
.linkbtn02.exlink:hover {
  background-image: url(../images/common/icon/exlink.png) !important;
}
.linkbtn02.pdf {
  background-image: url("../images/common/icon/pdf.png");
  background-size: 1.2em;
}
.linkbtn02.pdf::after {
  content: none;
}
.linkbtn02.mail {
  background-image: url("../images/common/icon/mail-white.png");
  background-size: 1.2em;
  padding: 1em 2em 1em 3.5em;
  background-position: left 1.5em center;
}
.linkbtn02.pdf::after {
  content: none;
}

.linkbtn02.wide {
  width: 100%;
  min-width: auto;
}

/* styleChange */
.linkbtn02.is-styleChange {
  border-radius: 8px;
  box-shadow: 0 5px 0 #c6000f;
}
.linkbtn02.is-styleChange:hover {
  background-color: #f90d20;
  outline: none;
  color: #FFF;
  box-shadow: 0 3px 0 #e60012;
  position: relative;
  top: 2px;
}

/* キラッと光る */
.linkbtn02.is-shine {
  overflow: hidden;
}
.linkbtn02.is-shine::before {
  position: absolute;
  top: 0;
  left: -75%;
  z-index: 2;
  display: block;
  content: '';
  width: 50%;
  height: 100%;
  background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
  -webkit-transform: skewX(-25deg);
  transform: skewX(-25deg);
}
.linkbtn02.is-shine:hover {
  opacity: 1;
}
.linkbtn02.is-shine:hover::before {
  display: none;
}
.linkbtn02.is-shine::before {
  animation: shine 1.8s infinite;
  animation-delay: 1s;
}

@keyframes shine {
  0% {
    left: -150%;
  }
  33%{
    left: -150%;
  }
  100% {
    left: 125%;
  }
}

/*.linkbtn02 白黒*/
.linkbtn02.white {
  border: solid 1px #333;
  background: #fff;
  color: #333;
  background: url(../images/common/icon/arrow-black.png)no-repeat center right 10px;
  background-size: 5px;
}
.linkbtn02.form {
  background-image: url('../images/common/icon/mail-white.png');
  background-size: 30px;
  background-position: center left 30px;
  font-size: 1.2em;
  padding: 1em 2em;
  display: block;
}
.linkbtn02.form:hover {
  background-image: url('../images/common/icon/mail-red.png');
}

/* .linkbtn03 */
.linkbtn03 {
  position: relative;
  border-top: 2px solid #ea9abf;
  border: solid 1px #ddd;
  border-bottom-width: 2px;
  background: #E60012;
  color: #555;
  box-shadow: 0 2px 2px #fafafa inset,0 1px 2px rgba(0,0,0,0.15);
  background-size: 1em;
  background-color: #f5f5f5;
  line-height: 1.2;
  padding: 1em 1.5em 1em 2.75em;
  border-radius: 70px;
  position: relative;
  z-index: 1;
  display: inline-flex;
  word-break: break-all;
  align-items: center;
  font-size: 15px;
}
.linkbtn03::before {
  content: '';
  display: block;
  width: 1em;
  height: 1em;
  position: absolute;
  background-image: url("../images/common/icon/arrow-btn-white.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1em;
  left: 1.25em;
  filter: drop-shadow(0px 0px 2px rgba(0, 0, 0, 0.15));
  top: 50%;
  transform: translateY(-50%);
  filter: brightness(0) saturate(100%) invert(10%) sepia(47%) saturate(6266%) hue-rotate(345deg) brightness(153%) contrast(120%);
}


/* 色変更 */
.linkbtn03--red {
  color: #FFF;
  background-color: #e60012;
  box-shadow: 0 2px 2px rgba(255, 255, 255, 0.5) inset,0 1px 2px rgba(0,0,0,0.15);
  border-color: #e60012;
}

.linkbtn03--bluegreen {
  color: #FFF;
  background-color: #68a7ab;
  box-shadow: 0 2px 2px rgba(255, 255, 255, 0.5) inset,0 1px 2px rgba(0,0,0,0.15);
  border-color: #68a7ab;
}
.linkbtn03--bluegreen::before,
.linkbtn03--orange::before,
.linkbtn03--blue::before {
  filter: none;
}

.linkbtn03--orange {
  color: #FFF;
  background-color: #f19100;
  box-shadow: 0 2px 2px rgba(255, 255, 255, 0.5) inset,0 1px 2px rgba(0,0,0,0.15);
  border-color: #f19100;
}

.linkbtn03--blue {
  color: #FFF;
  background-color: #0085CE;
  box-shadow: 0 2px 2px rgba(255, 255, 255, 0.5) inset,0 1px 2px rgba(0,0,0,0.15);
}
.linkbtn03--arrowBlue::before {
  filter: brightness(0) saturate(100%) invert(33%) sepia(95%) saturate(1037%) hue-rotate(173deg) brightness(98%) contrast(102%)
}

@media screen and (max-width:768px) {
  .linkbtn03 {
    font-size: 15px;
    padding-top: 0.75em;
    padding-bottom: 0.75em;
  }
}

/*パネルボタン*/
.panel01 .col-item a {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.panel01 .col-item a .c-panelTextarea {
  border-left: solid 4px #DDD;
  padding: 20px 20px 20px 20px;
  height: 100%;
}
.panel01 .col-item a .c-panelTextarea h3 {
  font-size: 16px;
  margin-bottom: 5px;
}
.panel01 .col-item a .c-panelTextarea.is-ttlOnly {
  height: auto;
}
.panel01 .col-item a .c-panelTextarea.is-ttlOnly h3 {
  margin-bottom: 0;
}
.panel01 .col-item a .c-panelTextarea p {
  font-size: 14px;
}
.panel01 .col-item a:hover,
.panel02 .col-item a:hover {
  opacity: 1;
}
.panel01 .col-item a:hover .c-panelTextarea,
.panel02 .col-item a:hover {
  border-color: #e60012;
}
.panel02 .col-item a {
  border: solid 1px #ddd;
  display: flex;
  align-items: center;
}
.panel02 .col-item a figure {
  max-width: 140px;
}
.panel02 .col-item a .c-panelTextarea {
  width: 100%;
}
.panel02 .col-item a .c-panelTextarea h3 {
  text-align: center;
}
.panel03 .col-item {
  border: solid 1px #ddd;
}
.panel03 .col-item a .c-panelTextarea {
  padding: 20px;
}
.panel03 .col-item a .c-panelTextarea h3 {
  margin-bottom: 1em;
}
.panel04 .col-item a {
  display: block;
  background: #000;
  position: relative;
}
.panel04 .col-item a img {
  opacity: 0.5;
}
.panel04 .col-item a .p-ttl {
  position: absolute;
  top: 50%;
  right: 50%;
  transform: translate(50%, -50%);
  display: block;
  width: 100%;
  text-align: center;
}
.panel04 .col-item a .p-ttl::after {
  content: '';
  background: url("../images/common/icon/arrow-white.png") no-repeat center;
  width: 9px;
  height: 15px;
  display: inline-block;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
}
.panel04 .col-item a .p-ttl p {
  color: #fff;
}

@media screen and (max-width:768px) {
  .linkbtn02 {
    min-width: 100%;
  }
  .linkbtn02.form {
    font-size: 1em;
  }
  .panel01 .col-item {
    margin-bottom: 0;
  }
  .panel01 .col-item a {
    flex-direction: inherit;
    align-items: center;
    background: #f1f1f1;
    padding: 20px 15px;
    margin: 0 -15px;
  }
  .panel01 .col-item:nth-child(2n) a {
    background: #fafafa;
  }
  .panel01 .col-item a figure {
    width: 35%;
  }
  .panel01 .col-item a .c-panelTextarea {
    border-left: none;
    width: 65%;
    padding: 0 0 0 1em;
  }
}

/* リンク（アイコン付き） */
a.icon,
p.icon {
  position: relative;
}
a.icon::after,
p.icon::after {
  content: '';
  display: inline-block;
  width: 1em;
  height: 1em;
  background-size: 1em;
  background-repeat: no-repeat;
  vertical-align: middle;
}
a.icon::after,
p.icon::after {
  margin-left: 0.5em;
}
a.icon.exlink::after,
p.icon.exlink::after {
  background-image: url("../images/common/icon/exlink.png");
  background-size: 80%;
  background-position: center;
}
a.icon.exlink.txt::after,
p.icon.exlink.txt::after {
  filter: brightness(0) saturate(100%) invert(38%) sepia(40%) saturate(667%) hue-rotate(180deg) brightness(96%) contrast(95%);
}
a.icon.pdf::after,
p.icon.pdf::after {
  background-image: url("../images/common/icon/pdf.png");
  width: 20px;
}
a.icon.zoom::before,
p.icon.zoom::before {
  content: '';
  display: inline-block;
  width: 1em;
  height: 1em;
  background-size: 1em;
  background-repeat: no-repeat;
  vertical-align: middle;
  background-image: url("../images/common/icon/zoom-red.png");
  margin-right: 0.5em
}
.icon.tel::before {
  background-image: url("../images/common/icon/tel.png");
  background-position: left;
}
.icon.fax::before {
  background-image: url("../images/common/icon/fax.png");
}

/*リンク（画像+説明）*/
.linkbtn--imgCap {
  border: solid 1px #DDD;
  display: inline-block;
  min-height: 350px;
  padding: 20px 15px;
}
.linkbtn--imgCap p {
  font-weight: bold;
  margin-bottom: 1em;
}
.linkbtn--imgCap::after {
  content: '\0025e2';
  position: absolute;
  right: 10px;
  bottom: 10px;
  line-height: 1;
  font-size: 10px;
  color: #CCC;
}
.linkbtn--imgCap figure {
  width: 80%;
  margin: 0 auto;
}

/*画像つきリンク02*/
.divlink02 {
  border: 1px solid #ddd;
  max-width: 500px;
  position: relative;
}
.divlink02 a {
  display: flex;
  align-items: center;
  padding: 10px;
}
.divlink02 .link-img {
  width: 15%;
  max-width: 100px;
  order: 2;
}
.divlink02 .link-img img {
  width: 90%;
  margin: auto;
}
.divlink02 .link-text {
  color: #4668a8;
  position: relative;
  width: 84%;
  padding-left: 10px;
}
.divlink02 .link-text ::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  background: url(../images/common/icon/arrow-red.png) no-repeat left top 0.5em;
  background-size: 0.3em;
  padding-left: 0.6em;
  display: inline-block;
}
.divlink02 a:hover > * {
  opacity: .9;
}
.divlink02 a:hover > .link-text {
  color: #e60012;
}
.divlink02.imgLarge a {
  justify-content: space-between;
}
.divlink02.imgLarge .link-img {
  width: 40%;
}
.divlink02.imgLarge .link-img img {
  width: 98%;
  margin-left: 2%;
}
.divlink02.imgLarge .link-text  {
  width: 60%;
}

/*----------------------------------------
* #page-top
----------------------------------------*/
#page-top {
  position: absolute;
  bottom: 20px;
  right: 20px;
  z-index: 100;
  width: 60px;
  height: 60px;
  z-index: 6000;
}
#page-top.fixed {
  position: fixed;
}
#page-top a {
  display: flex;
  padding: 15px 15px;
  height: 100%;
  align-items: center;
  border-radius: 100%;
  font-size: 28px;
  justify-content: center;
  color: #FFF;
  background: #e00012;
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.3);
}
#page-top a:hover {
  background: #aa0411;
  opacity: 1;
}

@media screen and (max-width:768px) {
  #page-top {
    bottom: 8px;
    right: 8px;
    width: 45px;
    height: 45px;
    border-radius: 100%;
  }
  #page-top.floating-fix.fixed {
    bottom: 10px !important;
  }
}

/*----------------------------------------
* .secCont-link
----------------------------------------*/
.secCont-link .col-item {
  margin-bottom: 2%;
}
.secCont-link .col-item a {
  display: block;
  height: 100%;
  border: solid 1px #DDD;
  padding: 30px;
  position: relative;
}
.secCont-link .col-item a::after {
  content: '\0025e2';
  position: absolute;
  right: 10px;
  bottom: 10px;
  line-height: 1;
  font-size: 10px;
  color: #CCC;
}
.secCont-link .col-item a:hover::after {
  color: #e60012;
}
.secCont-link .col-item a:hover {
  background: #f5f5f5f5;
  opacity: 1;
}
.secCont-link .col-item a h4 {
  color: #4668a8;
  font-size: 15px;
  margin-bottom: 5px;
}

@media print, screen and (min-width: 769px) {
  .secCont-link .l-colWrap__item {
    border: solid 1px #DDD;
    width: 49%;
  }
}

@media screen and (max-width:768px) {
  .secCont-link .col-item {
    width: 100%;
  }
  .secCont-link .col-item a {
    padding: 20px;
  }
}

/*----------------------------------------
* footer
----------------------------------------*/
footer {
  border-top: solid 1px #DDD;
  margin-top: 100px;
  margin-bottom: -28px;
}

.footer-mt0 footer {
  margin-top: 0;
}

footer .copyright {
  text-align: center;
  font-size: 12px;
  background: #e60012;
  padding: 8px 15px;
  color: #FFF;
}
.foot-sec01 {
  padding: 50px 0;
  border-bottom: solid 1px #DDD;
}
.foot-com-data__logo {
  display: flex;
  align-items: center;
}
.foot-com-data__logo .foot-logo01 {
  width: 50px;
  margin-right: 15px;
}
.foot-com-data__logo .foot-logo02 {
  width: 200px;
}
.foot-contact-btn a {
  display: block;
  background: url("../images/common/icon/arrow-red.png") no-repeat center right 20px;
  background-size: 10px;
  background-color: #f1f1f1;
  padding: 30px;
  border-radius: 5px;
}
.foot-contact-btn p {
  line-height: 1.5;
  font-size: 0.9em;
}
.foot-contact-btn .textLarge {
  font-weight: bold;
  font-size: 1.4em;
}
footer .foot-menu__parent01 {
  margin-bottom: 10px;
}
footer .foot-menu__parent01 a {
  background: url("../images/common/icon/arrow-btn.png") no-repeat top 0.25em left;
  background-size: 0.9em;
  padding-left: 1.2em;
  font-weight: bold;
  font-size: 16px;
}
.foot-sec03 .l-inner {
  padding: 40px 0;
}
.foot-sec03 ul {
  text-align: center;
  font-size: 12px;
}
.foot-sec03 .l-inner {
  border-top: solid 1px #DDD;
}
.foot-sec03 ul li {
  display: inline-block;
  margin-right: 20px;
}
.foot-sec03 ul li:last-child {
  margin-right: 0;
}
.foot-sec03 ul li a {
  background: url(../images/common/icon/arrow-red.png) no-repeat center left;
  background-size: 0.5em;
  padding-left: 1em;
}

@media print, screen and (min-width: 769px) {
  .foot-sec01 .l-colWrap {
    align-items: center;
  }
  .foot-com-data {
    display: flex;
    flex-wrap: wrap;
    width: 65%;
  }
  .foot-com-data__logo {
    width: 30%;
  }
  .foot-com-data__text {
    width: 70%;
    padding: 0 2em;
  }
  .foot-contact-btn {
    width: 35%;
  }
  .foot-sec02 {
    padding: 40px 0;
  }
  .foot-menuWrap {
    display: flex;
    flex-wrap: wrap;
  }
  .foot-menuWrap:last-child {
    margin-bottom: 0;
  }
  .foot-menuWrap__item {
    width: 19%;
    margin: 0 1.25% 50px 0;
  }
  .foot-menuWrap__item:nth-child(5n) {
    margin-right: 0;
  }
  .foot-menuWrap__item ul {
    margin-left: 1em;
  }
  .foot-menuWrap__item li {
    text-indent: -1em;
    line-height: 1.5;
    margin-bottom: 5px;
  }
  .foot-menuWrap__item li:last-child {
    margin-bottom: 0
  }
  .foot-menuWrap__item li,
  .foot-menuWrap__item li a {
    font-size: 12px;
  }
  .foot-menuWrap__item li a {
    background: url("../images/common/icon/arrow-gray.png") no-repeat top 0.3em left;
    background-size: 0.4em;
    padding-left: 1.2em;
  }
  footer .foot-menu__parent02 {
    margin-bottom: 5px;
  }
  footer .foot-menu__parent02 a {
    font-weight: bold;
    text-decoration: underline;
    position: relative;
    padding-left: 1.2em;
  }
  footer .foot-menu__parent02 a::after {
    background-size: 0.8em;
  }
  footer .foot-menu__parent02 a::before {
    content: '■';
    position: absolute;
    top: -0.2em;
    left: 0;
  }
  footer .foot-menu__parent02 a:hover {
    opacity: 1;
    text-decoration: none;
  }
}

@media screen and (max-width:768px) {
  footer {
    margin-top: 50px;
  }
  .foot-sec01 {
    padding: 30px 0;
  }
  .foot-com-data__text {
    margin: 20px 0;
  }
  .foot-contact-btn {
    width: 100%;
  }
  .foot-sec02 {
    padding: 30px 0;
  }
  footer .foot-menu__parent01 {
    margin-bottom: 5px;
  }
  footer .foot-menu__parent01 a {
    font-size: 14px;
  }
  .foot-menuWrap .foot-menu__parent02,
  .foot-menuWrap__item ul {
    display: none;
  }
  .foot-sec03 .l-inner {
    padding: 20px 0;
  }
  .foot-sec03 ul li {
    margin-right: 10px;
  }
}

/*----------------------------------------
* 小見出し
----------------------------------------*/
.sub-sq::before {
  content: '■';
  margin-right: 0.3em;
}
.sub-sq.gray::before {
  color: #CCC;
}
.sub-sq.blue::before {
  color: #0085ce;
}
.sub-sq.green::before {
  color: #1dac4b;
}
.sub-sq.orange::before {
  color: #f19100;
}
.sub-sq.pink::before {
  color: #D0111A;
}
.sub-sq.blue2::before {
  color: #003287;
}
.sub-sq.red2::before {
  color: #e20012;
}
.sub-disc::before {
  content: '●';
  margin-right: 0.3em;
}
.sub-disc.gray::before {
  color: #CCC;
}
.sub-disc.gray::before {
  color: #CCC;
}
.sub-disc.blue::before {
  color: #0085ce;
}
.sub-disc.green::before {
  color: #1dac4b;
}
.sub-disc.orange::before {
  color: #f19100;
}
.sub-disc.pink::before {
  color: #D0111A;
}
.sub-disc.blue2::before {
  color: #003287;
}
.sub-disc.red2::before {
  color: #e20012;
}

/*----------------------------------------
* 事業部　色分け
----------------------------------------*/

/* 青 */
.theme-blue header {
  border-bottom-color: #0085ce;
}
.theme-blue #page-top a {
  background: #0085ce;
}
.theme-blue #page-top a:hover {
  background: #00649b;
}
.theme-blue .c-pageTitle::after,
.theme-blue .c-ttlh2-3::after {
  background: #0085ce;
}
.theme-blue .c-ttlh2-4 p {
  color: #0085ce;
}
.theme-blue .c-ttlh4-2 {
  color: #333;
}
.theme-blue .c-ttlh3 {
  color: #0085ce;
}
.theme-blue .c-ttlh3-2::before,
.theme-blue .c-ttlh3-3::before,
.theme-blue .c-ttlh3-4::before,
.theme-blue .c-ttlh4-2::before,
.theme-blue .c-contTitle.ttl-border:after {
  background: #0085ce;
}
.op-theme-blue .c-ttlh3-2::before,
.op-theme-blue .c-ttlh3-3::before,
.op-theme-blue .c-ttlh3-4::before,
.op-theme-blue .c-ttlh4-2::before,
.op-theme-blue .c-contTitle.ttl-border:after {
  background: #0085ce !important;
}

.list-disc.blue li::before,
.list-sq.blue li::before,
.sub-sq.blue::before,
.sub-disc.blue::before {
  color: #0085ce;
}
.bg-blue.textCut {
  background-color: #0085ce !important;
}
.theme-blue .linkbtn01:hover {
  color: #0085ce;
  background-image: url(../images/common/icon/arrow-blue.png);
}
.linkbtn02.blue,
.theme-blue .secNews .linkbtn02 {
  background-color: #0085ce;
}
.linkbtn02.blue:hover,
.theme-blue .secNews .linkbtn02:hover{
  color: #0085ce;
  background-color: #fff;
  background-image: url(../images/common/icon/arrow-blue.png);
}
.theme-blue .linkbtn02.form {
  background-color: #0085ce;
}
.theme-blue .linkbtn02.form:hover {
  background-image: url('../images/common/icon/mail-blue.png');
  background-color: #fff;
  color: #0085ce;
}
.theme-blue .c-anchorLink-spc li a:hover {
  color: #0085ce;
  background-image: url(../images/common/icon/arrow-blue.png);
}
.theme-blue .l-contact .l-contact__box {
  border-color: #0085ce;
}
.theme-blue .l-contact .l-contact__title p {
  color: #0085ce;
}
.theme-blue .l-contact .l-contact__title:after {
  background-color: #0085ce;
}
.theme-blue.product .l-secCont.intro {
  border-left-color: #0085ce;
}
.theme-blue .panel01 .col-item a:hover .c-panelTextarea,
.theme-blue .panel02 .col-item a:hover {
  border-color: #0085ce;
}
.theme-blue .c-tabContent.tab02 .c-tabArea li.select {
  background: #0085ce;
}
.theme-blue .c-tabArea li.select{
  background-color: #0085ce;
}

/* 緑 */
.theme-green header {
  border-bottom-color: #1dac4b;
}

.theme-green #page-top a {
  background: #1dac4b;
}

.theme-green #page-top a:hover {
  background: #138136;
}

.theme-green .c-pageTitle::after,
.theme-green .c-ttlh2-3::after {
  background: #1dac4b;
}

.theme-green .c-ttlh2-4 p {
  color: #1dac4b;
}

.theme-green .c-ttlh3 {
  color: #1dac4b;
}

.theme-green .c-ttlh3-2::before,
.theme-green .c-ttlh3-3::before,
.theme-green .c-ttlh3-4::before,
.theme-green .c-ttlh4-2::before {
  background: #1dac4b;
}
.theme-green.is-important .c-ttlh4-2 {
  color: #1dac4b !important;
}
.theme-green.is-important .c-ttlh4-2::before {
  background: #1dac4b !important;
}
.list-disc.green li::before,
.sub-sq.green::before,
.sub-disc.green::before {
  color: #1dac4b;
}

.bg-green.textCut {
  background-color: #1dac4b !important;
}

.theme-green .linkbtn01:hover {
  color: #1dac4b;
  background-image: url(../images/common/icon/arrow-green.png);
}

.linkbtn02.green,
.theme-green .secNews .linkbtn02 {
  background-color: #1dac4b;
}

.linkbtn02.green:hover,
.theme-green .secNews .linkbtn02:hover {
  color: #1dac4b;
  background-color: #fff;
  background-image: url(../images/common/icon/arrow-green.png);
}

.theme-green .linkbtn02.form {
  background-color: #1dac4b;
}

.theme-green .linkbtn02.form:hover {
  background-image: url('../images/common/icon/mail-green.png');
  background-color: #fff;
  color: #1dac4b;
}

.theme-green .linkbtn02.white:hover {
  border: solid 1px #1dac4b;
  color: #1dac4b;
  background-image: url(../images/common/icon/arrow-green.png);
  opacity: 1;
  outline: 0;
}

.theme-green .c-anchorLink-spc li a:hover {
  color: #1dac4b;
  background-image: url(../images/common/icon/arrow-green.png);
}

.theme-green .l-contact .l-contact__box {
  border-color: #1dac4b;
}

.theme-green .l-contact .l-contact__title p {
  color: #1dac4b;
}

.theme-green .l-contact .l-contact__title:after {
  background-color: #1dac4b;
}

.theme-green.product .l-secCont.intro {
  border-left-color: #1dac4b;
}

.theme-green .panel01 .col-item a:hover .c-panelTextarea,
.theme-green .panel02 .col-item a:hover {
  border-color: #1dac4b;
}

.theme-green .c-tabArea li.select {
  background-color: #1dac4b;
}

.link-arrow.green {
  background: url("../images/common/icon/arrow-green.png") no-repeat left top 0.6em;
  background-size: 0.3em;
}

.theme-green .txt-arrow02::before {
  content: '';
  display: inline-block;
  width: 1em;
  height: 1em;
  background-size: 1em;
  background-repeat: no-repeat;
  vertical-align: middle;
  background-image: url("../images/common/icon/arrow02-green.png");
  margin-right: 0.5em
}

.theme-green .c-anchorLink-spc02 li a {
  border-color: #1dac4b;
  color: #1dac4b;
  background-image: url(../images/common/icon/arrow-bottom_green.png);
  display: block;
}

/* ピンク */
.theme-pink header {
  border-bottom-color: #D0111A;
}

.theme-pink #page-top a {
  background: #D0111A;
}

.theme-pink #page-top a:hover {
  background: #ad0138;
}

.theme-pink .c-pageTitle::after,
.theme-pink .c-ttlh2-3::after {
  background: #D0111A;
}

.theme-pink .c-ttlh2-4 p,
.theme-pink .c-ttlh4-2 {
  color: #D0111A;
}

.theme-pink .c-ttlh3 {
  color: #D0111A;
}

.theme-pink .c-ttlh3-2::before,
.theme-pink .c-ttlh3-3::before,
.theme-pink .c-ttlh3-4::before,
.theme-pink .c-ttlh4-2::before {
  background: #D0111A;
}

.list-disc.pink li::before {
  color: #D0111A;
}

.bg-pink.textCut {
  background-color: #D0111A !important;
}

.linkbtn02.pink,
.theme-pink .secNews .linkbtn02 {
  background-color: #D0111A;
}

.linkbtn02.pink:hover,
.theme-pink .secNews .linkbtn02:hover {
  color: #D0111A;
  background-color: #fff;
  background-image: url(../images/common/icon/arrow-pink.png);
}

.theme-pink .linkbtn02.form {
  background-color: #D0111A;
}

.theme-pink .linkbtn02.form:hover {
  background-image: url('../images/common/icon/mail-pink.png');
  background-color: #fff;
  color: #D0111A;
}

.theme-pink .c-anchorLink-spc li a:hover {
  color: #D0111A;
  background-image: url(../images/common/icon/arrow-pink.png);
}

.theme-pink .l-contact .l-contact__box {
  border-color: #D0111A;
}

.theme-pink .l-contact .l-contact__title p {
  color: #D0111A;
}

.theme-pink .l-contact .l-contact__title:after {
  background-color: #D0111A;
}

.theme-pink.product .l-secCont.intro {
  border-left-color: #D0111A;
}

.theme-pink .panel01 .col-item a:hover .c-panelTextarea,
.theme-pink .panel02 .col-item a:hover {
  border-color: #D0111A;
}

/* オレンジ */
.theme-orange header {
  border-bottom-color: #f19100;
}

.theme-orange #page-top a {
  background: #f19100;
}

.theme-orange #page-top a:hover {
  background: #c57702;
}

.theme-orange .c-pageTitle::after,
.theme-orange .c-ttlh2-3::after {
  background: #f19100;
}

.theme-orange .c-ttlh2-4 p,
.theme-orange .c-ttlh4-2 {
  color: #f19100;
}

.theme-orange .c-ttlh3 {
  color: #f19100;
}

.theme-orange .c-ttlh3-2::before,
.theme-orange .c-ttlh3-3::before,
.theme-orange .c-ttlh3-4::before,
.theme-orange .c-ttlh4-2::before {
  background: #f19100;
}

.list-disc.orange li::before {
  color: #f19100;
}
.bg-orange.textCut {
  background-clip: #f19100 !important;
}

.linkbtn02.orange,
.theme-orange .secNews .linkbtn02 {
  background-color: #f19100;
}

.linkbtn02.orange:hover,
.theme-orange .secNews .linkbtn02:hover {
  color: #f19100;
  background-color: #fff;
  background-image: url(../images/common/icon/arrow-orange.png);
}

.theme-orange .linkbtn02.form {
  background-color: #f19100;
}

.theme-orange .linkbtn02.form:hover {
  background-image: url('../images/common/icon/mail-orange.png');
  background-color: #fff;
  color: #f19100;
}

.theme-orange .c-anchorLink-spc li a:hover {
  color: #f19100;
  background-image: url(../images/common/icon/arrow-orange.png);
}

.theme-orange .l-contact .l-contact__box {
  border-color: #f19100;
}

.theme-orange .l-contact .l-contact__title p {
  color: #f19100;
}

.theme-orange .l-contact .l-contact__title:after {
  background-color: #f19100;
}

.theme-orange.product .l-secCont.intro {
  border-left-color: #f19100;
}

.theme-orange .panel01 .col-item a:hover .c-panelTextarea,
.theme-orange .panel02 .col-item a:hover {
  border-color: #f19100;
}


/* その他（LPページ等） */
/*青-2*/
.theme-blue2 header {
  border-bottom-color: #003287;
}

.theme-blue2 .c-pageTitle::after {
  background: #003287;
}

.theme-blue2 .c-pageTitle-2::after {
  background: #003287;
}

.theme-blue2 .c-ttlh2-2 p::before {
  background: #003287;
}

.theme-blue2 .c-pageTitle::after,
.theme-blue2 .c-ttlh2-3::after {
  background: #003287;
}

.theme-blue2 .c-ttlh2-4 p {
  color: #003287;
}

.theme-blue2 .c-pageTitle-2 *,
.theme-blue2 .c-ttlh2-2 p,
.theme-blue2 .c-ttlh4-2 {
  color: #003287;
}

.theme-blue2 #page-top a {
  background: #003287;
}

.theme-blue2 #page-top a:hover {
  background: #002566;
}

.theme-blue2 .c-ttlh3-2::before,
.theme-blue2 .c-ttlh3-3::before,
.theme-blue2 .c-ttlh3-4::before,
.theme-blue2 .c-ttlh4-2::before {
  background: #003287;
}

.list-disc.blue2 li::before {
  color: #003287;
}

.bg-blue2.textCut {
  background: #003287;
}

.linkbtn02.blue2:hover {
  color: #003287;
  background-color: #fff;
  background-image: url(../images/common/icon/arrow-blue2.png);
}

.theme-blue2 .linkbtn01:hover {
  color: #003287;
  background-image: url(../images/common/icon/arrow-blue2.png);
}

.linkbtn02.blue2,
.theme-blue2 .secNews .linkbtn02 {
  background-color: #003287;
}

.linkbtn02.blue2:hover,
.theme-blue2 .secNews .linkbtn02:hover {
  color: #003287;
  background-color: #fff;
  background-image: url(../images/common/icon/arrow-blue2.png);
}

.theme-blue2 .linkbtn02.form {
  background-color: #003287;
}

.theme-blue2 .linkbtn02.form:hover {
  background-image: url('../images/common/icon/mail-blue2.png');
  background-color: #fff;
  color: #003287;
}

.theme-blue2 .linkbtn02.white:hover {
  border: solid 1px #003287;
  color: #003287;
  background-image: url(../images/common/icon/arrow-blue2.png);
  opacity: 1;
  outline: 0;
}

.theme-blue2 .c-anchorLink-spc li a:hover {
  color: #003287;
  background-image: url(../images/common/icon/arrow-blue2.png);
}

.theme-blue2 .l-contact .l-contact__box {
  border-color: #003287;
}

.theme-blue2 .l-contact .l-contact__title p {
  color: #003287;
}

.theme-blue2 .l-contact .l-contact__title:after {
  background-color: #003287;
}

.theme-blue2 .panel01 .col-item a:hover .c-panelTextarea,
.theme-blue2 .panel02 .col-item a:hover {
  border-color: #003287;
}

.theme-blue2 .c-tabArea li.select {
  background-color: #003287;
}

.link-arrow.blue2 {
  background: url("../images/common/icon/arrow-blue2.png") no-repeat left top 0.6em;
  background-size: 0.3em;
}

.theme-blue2 .txt-arrow02::before {
  content: '';
  display: inline-block;
  width: 1em;
  height: 1em;
  background-size: 1em;
  background-repeat: no-repeat;
  vertical-align: middle;
  background-image: url("../images/common/icon/arrow02-blue2.png");
  margin-right: 0.5em
}

/* 赤2 */
.theme-red2 header {
  border-bottom-color: #e20012;
}

.theme-red2 .c-pageTitle::after {
  background: #e20012;
}

.theme-red2 .c-pageTitle-2::after {
  background: #e20012;
}

.theme-red2 .c-ttlh2-2 p::before {
  background: #e20012;
}

.theme-red2 .c-ttlh2-4 p {
  color: #e20012;
}

.theme-red2 .c-pageTitle-2 *,
.theme-red2 .c-ttlh2-2 p,
.theme-red2 .c-ttlh4-2 {
  color: #e20012;
}

.theme-red2 #page-top a {
  background: #e20012;
}

.theme-red2 #page-top a:hover {
  background: #b00916;
}

.theme-red2 .c-ttlh3 {
  color: #e20012;
}

.theme-red2 .c-ttlh3-2::before,
.theme-red2 .c-ttlh3-3::before,
.theme-red2 .c-ttlh3-4::before,
.theme-red2 .c-ttlh4-2::before {
  background: #e20012;
}

.list-disc.red2 li::before {
  color: #e20012;
}

.bg-red2.textCut {
  background: #e20012;
}

.bg-red2 {
  background: #e20012 !important;
}

.linkbtn02.red2 {
  background-color: #e20012;
}

.linkbtn02.red2:hover {
  color: #e20012;
  background-color: #fff;
  background-image: url(../images/common/icon/arrow-red.png);
}

.theme-red2 .linkbtn02.form {
  background-color: #e20012;
}

.theme-red2 .linkbtn02.form:hover {
  background-image: url('../images/common/icon/mail-red.png');
  background-color: #fff;
  color: #e20012;
}

.theme-red2 .c-anchorLink-spc li a:hover {
  color: #e20012;
  background-image: url(../images/common/icon/arrow-red.png);
}

.theme-red2 .l-contact .l-contact__box {
  border-color: #e20012;
}

.theme-red2 .l-contact .l-contact__title p {
  color: #e20012;
}

.theme-red2 .l-contact .l-contact__title:after {
  background-color: #e20012;
}

/* 青緑 */
.theme-bluegreen header {
  border-bottom-color: #68a7ab;
}
.theme-bluegreen .c-pageTitle::after {
  background: #68a7ab;
}
.theme-bluegreen .c-pageTitle-2::after {
  background: #68a7ab;
}
.theme-bluegreen .c-ttlh2-2 p::before {
  background: #68a7ab;
}
.theme-bluegreen .c-ttlh2-4 p {
  color: #68a7ab;
}
.theme-bluegreen .c-pageTitle-2 *,
.theme-bluegreen .c-ttlh2-2 p,
.theme-bluegreen .c-ttlh4-2 {
  color: #68a7ab;
}
.theme-bluegreen #page-top a {
  background: #68a7ab;
}
.theme-bluegreen #page-top a:hover {
  background: #b00916;
}
.theme-bluegreen .c-ttlh3 {
  color: #029295;
}
.theme-bluegreen .c-ttlh3-2::before,
.theme-bluegreen .c-ttlh3-3::before,
.theme-bluegreen .c-ttlh3-4::before,
.theme-bluegreen .c-ttlh4-2::before {
  background: #029295;
}
.list-disc.bluegreen li::before {
  color: #68a7ab;
}
.bg-bluegreen.textCut {
  background: #68a7ab;
}
.linkbtn02.bluegreen {
  background-color: #68a7ab;
}
.linkbtn02.bluegreen:hover {
  color: #68a7ab;
  background-color: #fff;
  background-image: url(../images/common/icon/arrow-red.png);
}

.theme-bluegreen .c-anchorLink-spc li a {
  background: none;
}
.theme-bluegreen .c-anchorLink-spc li a::after {
  content: '';
  display: block;
  width: 0.5rem;
  height: 0.5rem;
  background: url(../images/common/icon/arrow-black.png) no-repeat center;
  background-size: contain;
  position: absolute;
  right: 0.6em;
}
.theme-bluegreen .c-anchorLink-spc li a:hover {
  color: #68a7ab;
  background: none;
  opacity: 1;
}
.theme-bluegreen .c-anchorLink-spc li a:hover::after {
  filter: brightness(0) saturate(100%) invert(69%) sepia(32%) saturate(394%) hue-rotate(135deg) brightness(83%) contrast(92%);
}
.theme-bluegreen .l-contact .l-contact__box {
  border-color: #68a7ab;
}
.theme-bluegreen .l-contact .l-contact__title p {
  color: #68a7ab;
}
.theme-bluegreen .l-contact .l-contact__title:after {
  background-color: #68a7ab;
}
.theme-bluegreen .p-contTable__ttl::before {
  background: #68a7ab;
}
.theme-bluegreen .p-contTable__ttl:after {
  border-color: #68a7ab;
}
.theme-bluegreen .p-contTable__ttl__wrap .c-ttl,
.theme-bluegreen .p-contTable__ttl__wrap .c-note {
  color: #68a7ab;
}
.theme-bluegreen .p-contTable__ttl__wrap .c-note::before {
  filter: brightness(0) saturate(100%) invert(69%) sepia(32%) saturate(394%) hue-rotate(135deg) brightness(83%) contrast(92%);
}
.theme-bluegreen .p-contTable__linkWrap {
  border-color: #68a7ab;
}
.theme-bluegreen .p-contFeature .p-contFeature__item--solve .p-contFeature__item__top dt {
  background: #68a7ab;
}
.theme-bluegreen .list-check > li::after {
  filter: brightness(0) saturate(100%) invert(69%) sepia(32%) saturate(394%) hue-rotate(135deg) brightness(83%) contrast(92%);
}
.theme-bluegreen .c-tabArea > li.select {
  background: #68a7ab;
}
.theme-bluegreen .c-tabContent--categoryTree .c-tabContent__btnWrap__ttl {
  background: #68a7ab;
  color: #FFF;
}

/*----------------------------------------
* 表面処理　個別
----------------------------------------*/
@media print, screen and (min-width: 769px) {
    .surface .gnav > li {
      width: calc(100% / 5);
    }

    /*表が小さい時用*/
    table.min-width80 {
      min-width: 80%;
    }

    .surface .secTop.mainImg .l-mainDisc--top {
      top: 60%;
    }

    /*ユニバースケールのエリアでヘッダー非表示*/
    .surface header.is-hide {
      opacity: 0;
    }
    /*ユニバースケールローディング背景*/
    .surface #scale_canvas_wrap {
      background-image: url(../product/surface/images/loading.png);
      background-repeat: no-repeat;
      background-position: center;
      background-color: #eaebec;
    }
}

@media screen and (max-width:768px) {

  /*トップページメイン画像*/
  .surface .secTop {
    background-position: center;
  }

  /*テーブルが650pxを超える時用*/
  .surface .table-style02 tbody th::before,
  .surface .table-style02 thead th::before{
    display: none;
  }
}

/*----表面性状・機能----*/

/*surfaceトップ用*/
.surface.index .l-fpCont__title {
  background: #0085ce;
  text-align: center;
  padding: 10px 0;
}
.surface.index .l-fpCont__title p {
  color: #fff;
  font-size: 1.2rem;
}
.surface.index .l-fpCont__itemWrap {
  padding: 40px 0;
}
.surface.index .l-fpCont__btn a{
  margin: 40px auto 0;
}

@media screen and (max-width:768px){
  .surface.index .l-fpCont__itemWrap {
    padding-top: 20px;
  }
  .surface.index .l-fpCont__btn a {
    margin: 30px auto 0;
  }
}


/*インデックス*/
.surface .l-fpCont .p-ttl {
  background: #0085ce;
  text-align: center;
}

.surface .l-fpCont .p-ttl.inline-block {
  padding: 5px 10px;
}

.surface .l-fpCont .p-ttl p {
  color: #fff;
}

.surface .l-fpCont .linkbtn01 {
  display: block;
  text-align: center;
  padding-left: 2.5em;
}

.surface .l-fpCont .p-commingsoon {
  background: #bbb;
  padding: 0.5em 0.2em;
  text-align: center;
}

.surface .l-fpCont .p-commingsoon p {
  font-size: 14px;
  color: #fff;
}

/*インデックス（目的から選ぶ）*/
.surface .l-fpCont .l-kouka__box {
  border: solid 1px #a0d2ee;
  padding: 10px 20px;
}

.surface .l-fpCont .l-kouka__box .p-kouka--ttl {
  background: #0085ce;
  border-radius: 30px;
  padding: 2px 15px;
  margin-right: 10px;
}

.surface .l-fpCont .l-kouka__box .p-kouka--ttl p {
  color: #fff;
}

.surface .l-fpCont .l-iconWrap {
  margin: 40px 0 60px;
}

@media print, screen and (min-width: 769px) {

  /*インデックス（機能から選ぶ）*/
  .surface .l-fpCont .l-kouka__box .p-kouka--ttl {
    display: inline-block;
  }

  .surface .l-fpCont .l-kouka__box li {
    margin-bottom: 0;
  }

  /*インデックス（目的から選ぶ）*/
  .surface .l-purpose__case .col-item .imgSpc {
    margin-bottom: 10px;
  }

  .surface .l-purpose__case .col-item .linkbtn01,
  .surface .l-purpose__case .col-item .p-commingsoon {
    margin-top: 10px;
  }
}

@media screen and (max-width:768px) {
  .surface .l-fpCont .c-tabContent__item {
    padding: 15px;
  }

  .surface .l-fpCont .linkbtn01 {
    padding: 0.5em 2em 0.5em 1.2em;
  }

  /*インデックス（機能から選ぶ）*/
  .surface .l-fpCont .p-function__item .l-flexBox {
    display: flex;
    flex-wrap: wrap;
  }

  .surface .l-fpCont .p-function__item .l-flexBox__imgSpc {
    width: 33% !important;
  }

  .surface .l-fpCont .p-function__item .l-flexBox__textSpc {
    width: 62% !important;
  }

  .surface .l-fpCont .p-function__item .p-ttl {
    margin-bottom: 10px;
  }

  /*インデックス（目的から選ぶ）*/
  .surface .l-fpCont .l-kouka__box .p-kouka--ttl {
    text-align: center;
    margin-bottom: 10px;
  }

  .surface .l-fpCont .l-kouka__box ul {
    display: flex;
    flex-wrap: wrap;
  }

  .surface .l-fpCont .l-kouka__box li {
    width: 42%;
    font-size: 14px;
  }

  .surface .l-purpose__case .col-item {
    display: flex;
    flex-wrap: wrap;
  }

  .surface .l-purpose__case .col-item .imgSpc {
    width: 32%;
    margin-right: 4%;
  }

  .surface .l-purpose__case .col-item .textSpc {
    width: 64%;
  }

  .surface .l-purpose__case .col-item .textSpc .disc {
    font-size: 14px;
    margin-bottom: 10px;
  }

  .surface .l-purpose__case .col-item .textSpc .linkbtn01 {
    width: 100%;
    text-align: center;
  }

  .surface .l-fpCont .l-iconWrap {
    margin: 25px 0 45px;
  }
}

/*表面性状・機能　中ページ*/
.surface .p-accText.function {
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: 1px;
  line-height: 1.4;
}

.surface .p-accText.function .red {
  color: #f7241a;
}

.surface .p-accText.function .large {
  font-size: 1.5em;
}

.surface .p-accBack-blue{
  background: #0085ce;
  color: #fff;
}

@media screen and (max-width:768px) {
  .surface .p-accText.function {
    font-size: 1.2rem;
  }

  .surface .p-accText.function .large {
    font-size: 1.3em;
  }
}

/*表面性状・機能（微細個別）*/

.surface .p-bisai01 .col-item .p-after-arrow {
  position: relative;
}

.surface .p-bisai01 .col-item .p-after-arrow::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 0 10px 10px;
  border-color: transparent transparent transparent #a2a2a2;
  position: absolute;
  right: -5px;
  top: 40%;
}

@media print, screen and (min-width: 769px) {
  .surface .p-bisai01 {
    align-items: center;
    padding: 20px;
  }

  .surface .p-bisai01 .col-item {
    margin-bottom: 0;
  }

  .surface .p-bisai01 .col-item:nth-child(1) {
    width: 22%;
  }

  .surface .p-bisai01 .col-item:nth-child(2) {
    width: 70%;
  }
}

@media screen and (max-width:768px) {
  .surface .p-bisai01 {
    margin-bottom: 1em;
  }

  .surface .p-bisai01 .col-item .p-after-arrow::after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: #a2a2a2 transparent transparent transparent;
    position: absolute;
    right: 50%;
    top: auto;
    bottom: -20px;
  }
}

/*見る04 流れのレイアウト*/
.product .l-flowWrap{
  display: flex;
  flex-wrap: wrap;
}
.product .l-flowWrap.jc-center{
  justify-content: center;
}
.product .l-flowWrap .flow-item{
  position: relative;
  margin-bottom: 1em;
}

.product .l-flowWrap.item4 .flow-item:nth-child(4n){
  margin-right: 0!important;
}
.product .l-flowWrap .flow-item:not(:last-child)::after{
  content: '';
  position: absolute;
  top: 42%;
  width: 0;
  height: 0;
  border-left: 10px solid #aaa;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  margin-left: 7px;
}
/*item4*/
.product .l-flowWrap.item4 .flow-item{
  width: 21.2%;
  margin-right: 5%;
}
.product .l-flowWrap.item4 .flow-item::after{
  right: -14%;
}

@media screen and (max-width:768px){
  .product .l-flowWrap.item4 .flow-item::after{
    top: 30%;
  }

  /*item2-sp*/
  .product .l-flowWrap.item2-sp .flow-item{
    width: 43%;
    margin-right: 8%;
  }
  .product .l-flowWrap.item2-sp .flow-item:nth-child(2n){
    margin-right: 0;
  }
  /*p-blast用css*/
  .product .l-flowWrap.p-blast .flow-item::after{
    top: 40%;
    right: -12%;
  }
}

/*矢印付きのレイアウト*/
.surface .p-layout-arrow .col-item .p-after-arrow {
  position: relative;
}

.surface .p-layout-arrow .col-item .p-after-arrow::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 0 10px 10px;
  border-color: transparent transparent transparent #a2a2a2;
  position: absolute;
  right: -5px;
  top: 40%;
}

@media print, screen and (min-width: 769px) {
    .surface .p-layout-arrow {
      align-items: center;
      padding: 20px;
    }

    .surface .p-layout-arrow .col-item {
      margin-bottom: 0;
    }

    .surface .p-layout-arrow .col-item:nth-child(1) {
      width: 22%;
    }

    .surface .p-layout-arrow .col-item:nth-child(2) {
      width: 70%;
    }
}

@media screen and (max-width:768px) {
  .surface .p-layout-arrow {
    margin-bottom: 1em;
  }

  .surface .p-layout-arrow .col-item .p-after-arrow::after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: #a2a2a2 transparent transparent transparent;
    position: absolute;
    right: 50%;
    top: auto;
    bottom: -20px;
  }
}

/*----eco----*/
.surface .p-accText.surface-eco p {
  font-size: 2.3em;
  font-weight: bold;
  line-height: 1.3;
}

.surface .p-accText.surface-eco .large {
  font-size: 1.8em;
}

.surface .p-accText.surface-eco .green {
  color: #1DAC4B;
}

.surface .list-eco dl {
  border: solid 1px #1DAC4B;
  text-align: center;
}

.surface .list-eco dt,
.surface .list-eco dd {
  padding: 0.5em;
}

.surface .list-eco dt {
  background: #1DAC4B;
  color: #fff;
}

.surface .surface-eco .notes {
  font-size: 14px;
  margin-right: 10px;
}

@media screen and (max-width:768px) {
  .surface .c-pageTitle.small-sp {
    font-size: 24px;
  }
}

/*----用語解説----*/
.surface .l-wordCont .panel04 .p-ttl::after {
  display: none;
}

.surface .l-wordCont dd,
.surface .l-wordCont dt {
  font-size: 14px;
  padding: 7px 15px;
}

.surface .l-wordCont dt {
  vertical-align: middle;
}

@media print, screen and (min-width: 769px) {
    .surface .l-wordCont .l-inner.small {
      max-width: 960px;
    }
}

/*----LP KENX1----*/
.kenx1 .bg-check {
  background: url(../product/surface/lp/kenx1/images/bg_pattern_dot.gif) repeat center top;
}

.kenx1 .p-h2-red {
  background: #E70012;
  font-size: 2.5em;
  color: #fff;
  text-align: center;
}

.kenx1 .p-reason--ttl {
  font-size: 1.5em;
  color: #0897E3;
  font-weight: bold;
}

.kenx1 .p-reason--ttl.ttl01::before,
.kenx1 .p-reason--ttl.ttl02::before,
.kenx1 .p-reason--ttl.ttl03::before {
  content: '';
  width: 50px;
  height: 41px;
  display: inline-block;
  margin-right: 5px;
  vertical-align: middle;
}

.kenx1 .p-reason--ttl.ttl01::before {
  background: url(../product/surface/lp/kenx1/images/reasons_h3_01.gif) no-repeat;
  background-size: 100%;
}

.kenx1 .p-reason--ttl.ttl02::before {
  background: url(../product/surface/lp/kenx1/images/reasons_h3_02.gif) no-repeat;
  background-size: 100%;
}

.kenx1 .p-reason--ttl.ttl03::before {
  background: url(../product/surface/lp/kenx1/images/reasons_h3_03.gif) no-repeat;
  background-size: 100%;
}

.kenx1 .tel_box {
  border-top: solid 5px #ddd;
  background: #f1f1f1;
  text-align: center;
  padding: 0.5em;
  margin-bottom: 1em;
}

.kenx1 .tel_box p {
  font-size: 1.5em;
  font-weight: bold;
}

.kenx1 .time {
  border-bottom: solid 5px #ddd;
  background: #f1f1f1;
  text-align: center;
  padding: 0.5em;
  margin-top: 1em;
}

.kenx1 #spec .bg-box {
  background: url(../product/surface/lp/kenx1/images/spec_bg.jpg);
  padding: 50px;
}

.kenx1 #spec table {
  margin: 0 auto;
}

.kenx1 #spec table thead th {
  background: #eaeaea;
}

.kenx1 #spec table tbody td {
  background: #fff;
}

.kenx1 #spec table tbody .bg-gray {
  background: #f5f5f5;
}

.kenx1 #message .bg-message {
  background: url(../product/surface/lp/kenx1/images/message_bg.jpg) no-repeat center;
  background-size: cover;
}

.kenx1 #message ul {
  padding: 20px;
}

.kenx1 #faq .bg-check {
  padding: 40px;
}

.kenx1 #faq dt,
.kenx1 #faq dd {
  background: #fff;
  padding: 0.5em 1em;
  padding-left: 4em;
  text-indent: -2.8em;
}

.kenx1 #faq dl {
  margin-bottom: 1em;
}

.kenx1 #faq dt {
  border-bottom: dotted 1px #333;
  font-weight: bold;
}

.kenx1 #faq dt::before,
.kenx1 #faq dd:before {
  font-size: 1.5em;
  font-weight: bold;
  color: #fff;
  padding: 0 5px 3px;
  margin-right: 0.5em;
}

.kenx1 #faq dt::before {
  content: 'Q.';
  background: #00479D;
}

.kenx1 #faq dd::before {
  content: 'A.';
  background: #A10000;
}

.kenx1 #about .bg-box {
  background: url(../product/surface/lp/kenx1/images/about_bg.jpg) no-repeat center;
  background-size: cover;
  padding: 40px;
}

@media print, screen and (min-width: 769px) {
  .kenx1 .l-mainContainer {
    padding-top: 160px;
  }
  .kenx1 .l-inner.small {
    max-width: 970px;
  }

  .kenx1 .l-reason__box {
    margin-left: 120px;
  }

  .kenx1 .flex-pc {
    display: flex;
    flex-wrap: wrap;
  }

  .kenx1 .flex-pc.align-center {
    align-items: center;
  }

  .kenx1 .motobnr {
    margin: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .kenx1 #message ul {
    position: relative;
    min-height: 750px;
  }

  .kenx1 #message li {
    position: absolute;
  }

  .kenx1 #message .message01 {
    top: 30px;
    left: 460px;
  }

  .kenx1 #message .message02 {
    top: 320px;
    left: 60px;
  }

  .kenx1 #message .message03 {
    top: 20px;
    left: 28px;
  }

  .kenx1 #message .message04 {
    top: 230px;
    left: 550px;
  }

  .kenx1 #message .message05 {
    top: 170px;
    left: 10px;
  }

  .kenx1 #message .message06 {
    top: 380px;
    left: 420px;
  }

  .kenx1 #message .message07 {
    top: 490px;
    left: 0px;
  }

  .kenx1 #message .message08 {
    top: 530px;
    left: 560px;
  }
}

@media screen and (max-width:768px) {
  .kenx1 .bg-check {
    padding: 0 10px;
  }

  .kenx1 .p-h2-red {
    font-size: 1.5em;
  }

  .kenx1 #main-img {
    margin-left: -25px;
    margin-right: -25px;
    padding-top: 75px;
  }

  .kenx1 #reasons .img-arrow {
    width: 30%;
    margin: 0 auto;
  }

  .kenx1 #reasons .p-reason--ttl {
    font-size: 1.2em;
  }

  .kenx1 #spec .bg-box {
    padding: 20px;
  }

  .kenx1 #spec table tbody th,
  .kenx1 #spec table tbody td {
    font-size: 14px;
  }

  .kenx1 #spec .ba-img {
    margin-right: -10px;
    margin-left: -10px;
  }

  .kenx1 .tel_no {
    margin-bottom: 1em;
  }

  .kenx1 .tel_box p {
    font-size: 1.2em;
  }

  .kenx1 .motobnr {
    text-align: center;
  }

  .kenx1 .motobnr .motologo {
    margin-bottom: 1em;
  }

  .kenx1 .motobnr .motobtn {
    margin-top: 1em;
  }

  .kenx1 #message li img {
    display: none;
  }

  .kenx1 #message li {
    background: #fff;
    padding: 0.5em 1em;
    margin-bottom: 1em;
  }

  .kenx1 #message li span::before {
    content: '';
    background: url(../images/common/icon/arrow-btn.png);
    background-size: contain;
    width: 1em;
    height: 1em;
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
  }

  .kenx1 #faq .bg-check {
    padding: 15px;
  }

  .kenx1 #faq dt,
  .kenx1 #faq dd {
    padding: 8px 10px;
    padding-left: 3.5em;
    text-indent: -2.4em;
  }

  .kenx1 #faq dt::before,
  .kenx1 #faq dd:before {
    font-size: 1.2em;
  }

  .kenx1 #about .bg-box {
    padding: 15px;
  }
}

/*表面処理　技術情報_Sightia*/

.Sightia .icon-product {
  padding: 15px;
}

.Sightia .icon-circle-Eng {
  vertical-align: text-bottom;
  margin-right: 4px;
}

.Sightia .icon-circle-Eng img {
  width: 30px;
}

/*表面処理　技術情報_ダイカスト*/
@media screen and (min-width:769px) {
  .technology-dicast .divlink-Wrap .col-item a {
    min-height: 450px;
    display: block;
  }
}

.technology-dicast .divlink-Wrap .textCut.p-ttl {
  min-width: 100px;
}

.textCut.p-ttl {
  min-width: 130px;
  color: #fff;
  text-align: center;
  margin-bottom: 5px;
}

@media screen and (max-width:768px) {
  .technology-dicast .divlink-Wrap .textCut.p-ttl {
    width: auto;
  }

  .textCut.p-ttl {
    width: 100%;
  }
}

/*-----商品情報（装置）-----*/

/*表面処理バリエーション*/
.table-style02.variation th,
.table-style02.variation td{
  text-align: center;
}
@media print, screen and (min-width: 769px){
  .table-style02.variation thead th{
    position: initial;
  }
  .table-style02.variation thead.sticky th::after{
    content: none;
  }
  .table-style02.variation thead.sticky th::before {
    right: 0;
  }
}
@media screen and (max-width:768px){
  .variation.table-scroll table{
    max-width: 801px;
  }
}

/*ラインアップ（画像付きアンカーボタン）*/
.p-anchorLink--image {
  display: flex;
  flex-wrap: wrap;
}

.p-anchorLink--image li {
  text-align: center;
  border: solid 1px #ddd;
  margin-bottom: 40px !important;
}

.p-anchorLink--image li a {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.p-anchorLink--image li img {
  padding: 20px;
}

.p-anchorLink--image li p {
  /*! font-size: 0.9em; */
  background: #f1f1f1;
  padding: 10px;
  margin-top: auto;
  background-image: url(../images/common/icon/arrow-black.png);
  background-repeat: no-repeat;
  background-position: center right 10px;
  background-size: 5px;
}

@media print, screen and (min-width: 769px) {
  .p-anchorLink--image li {
    width: 22.7%;
    margin-right: 3%;
  }

  .p-anchorLink--image li.col-2 {
    width: 48.6%;
    margin-right: 0;
  }

  .p-anchorLink--image li:nth-child(4n) {
    margin-right: 0;
  }
}

@media screen and (max-width:768px){
  .p-anchorLink--image li {
    width: 49%;
    margin-right: 2%;
    margin-bottom: 10px!important;
  }

  .p-anchorLink--image li.col-2 {
    width: 100%;
    margin-right: 0;
  }

  .p-anchorLink--image li:nth-child(2n) {
    margin-right: 0;
  }

  .p-anchorLink--image li img {
    padding: 10px;
  }

  .p-anchorLink--image li p {
    font-size: 14px;
    background-position: center right 5px;
    padding: 5px 15px 5px 5px;
  }
}

/*ラインアップ*/
.secCont-lineup .p-colWrap--lineup{
  display: flex;
  flex-wrap: wrap;
}
.secCont-lineup .p-colWrap--lineup.item5 .p-col-item--lineup{
  width: 18.4%;
  margin-right: 2%;
}
.secCont-lineup .p-colWrap--lineup.item5 .p-col-item--lineup .col-item{
  width: 100%;
}
.secCont-lineup .p-lineup__list .p-desc{
  font-size: 0.8em;
  font-weight: normal;
  color: #0085ce;
  border-top: solid 1px #ddd;
}

@media print, screen and (min-width: 769px){
  .l-flexBox.p-ratio-auto .l-flexBox__imgSpc{
    width: 25%;
  }
}

@media screen and (max-width:768px){
  .secCont-lineup .p-colWrap--lineup.item2-sp .p-col-item--lineup{
    width: 48%;
    margin-right: 4%;
    margin-bottom: 4%;
  }
  .secCont-lineup .p-colWrap--lineup.item2-sp .p-col-item--lineup:nth-child(2n){
    margin-right: 0;
  }
}

/* 表面追加0601 */

/*微細加工　帯タイトルありの工程flow*/ /*item6*/
.product .l-flowWrap.item6 .flow-item{
  width: 13.6%;
  margin-right: 3%;
}
.product .l-flowWrap.obi .flow-item{
  position: relative;
  padding-top: 50px;
}
.product .l-flowWrap.item6 .flow-item::after{
  right: -14%;
}
.product .l-flowWrap.obi .flow-item::before {
  position: absolute;
  content: "";
  display: inline-block;
  width: 124%;
  height: 30px;
  line-height: 30px;
  background-color: #aaa;
  left: 0;
  top: 0;
  text-align: left;
  padding-left: 5px;
  color: #fff;
  font-size: .9em;
}

.product .l-flowWrap.obi.bisai .flow-item:first-child::before {
  content: "マスキングプロセス";
}
.product .l-flowWrap.obi.bisai .flow-item:nth-child(3):before {
  width: 110%;
}
.product .l-flowWrap.obi.bisai .flow-item:nth-child(4):before {
  content: "マイクロブラスト ";
  width: 105%;
}
.product .l-flowWrap.obi.bisai .flow-item:nth-child(5):before {
  content: "剥離・洗浄";
  width: 105%;
}
.product .l-flowWrap.obi.bisai .flow-item:nth-child(6):before {
  content: "検査";
  width: 110%;
}

@media print, screen and (min-width: 769px){
  .product .l-flowWrap.obi .flow-item p {
    font-size: 1.2rem;
  }
}

@media screen and (max-width:768px){
  .product .l-flowWrap.obi .flow-item::after{
    top: 30%;
  }
  .product .l-flowWrap.obi .flow-item::before {
    width: 100%!important;
    text-align: center;
  }
  .product .l-flowWrap.obi .flow-item:nth-child(2)::before,.product .l-flowWrap.obi .flow-item:nth-child(3):before {
    content: "マスキングプロセス";
  }
  /*item2-sp*/
  .product .l-flowWrap.obi.item2-sp .flow-item{
    width: 43%;
    margin-right: 8%;
  }
  .product .l-flowWrap.obi.item2-sp .flow-item:nth-child(2n){
    margin-right: 0;
  }
}
/*矢印*/
.product .l-flowWrap.obi .flow-item:not(:last-child)::after{
  content: '';
  position: absolute;
  top: 50%;
  width: 0;
  height: 0;
  border-left: 10px solid #aaa;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  margin-left: 7px;
  right: -10%;
}


/*ショットマイクロ*/
.surface .mainImg.shotmicro-index {
  background-image: url('../product/surface/lineup/apparatus/shot-micro/images/img-shotmicro-top.jpg');
  margin-top: 0;
}
.surface .mainImg.shotmicro-index::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0.4);
}
.shotmicro-breadcrumb {
  margin-bottom: 0px;
}

/*ショットマイクロ　帯タイトルありの工程flow*/ /*item4*/

.product .l-flowWrap.obi.shot-micro .flow-item:first-child::before {
  content: "マスキングプロセス";
}
.product .l-flowWrap.obi.shot-micro .flow-item:nth-child(3):before {
  width: 110%;
}
.product .l-flowWrap.obi.shot-micro .flow-item:nth-child(4):before {
  content: "マイクロブラスト ";
  width: 100%;
}

@media screen and (max-width:768px) {
  /*item1-sp*/
  .product .l-flowWrap.obi.item1-sp .flow-item{
    width: 100%;
    margin-right: 0;
    margin-bottom: 35px;
  }
  .product .l-flowWrap.obi.item1-sp .flow-item:not(:last-child)::after{
    transform: rotate(90deg);
    left: 50%;
    top: inherit;
    bottom: -25px;
  }
}

.surface.product-end .l-secCont__box.p-kacxCont {
  margin-bottom: 180px;
}
@media screen and (max-width:768px){
  .surface.product-end .l-secCont__box.p-kacxCont {
    margin-bottom: 160px;
  }
}

/*英語ページ*/

@media print, screen and (min-width: 769px){
  .surface.page-en .p-leftBox{
    margin: 20px;
    max-width: 1200px;
  }
}

/*tsuyoku04 研究実績*/
.p-jisseki {
  margin-top: 30px;
}

.p-jisseki--is-hide {
/*   display: none;
  margin-top: 10px; */
}

.p-jisseki li {
  margin-bottom: 15px!important;
  border: solid 4px #f5f5f5;
  padding: 20px 25px;
}

.p-jisseki__head {
  display: flex;
  flex-wrap: wrap;
  border-bottom: solid 1px #d0d0d0;
  padding-bottom: 0.7em;
  margin-bottom: 0.7em;
}

.p-jisseki__head h4 {
  font-size: 18px;
  width: 960px;
}

.p-jisseki__head__tag {
  font-size: 0.9em;
  width: 80px;
  height: fit-content;
  text-align: center;
  padding: 3px 1em;
  margin-right: 10px;
}

.p-jisseki__head__tag.kouen {
  border: solid 1px #333;
}

.p-jisseki__head__tag.ronbun {
  background-color: #333;
  color: #fff;
}

.p-jisseki__contents dl{
  display: flex;
  flex-wrap: wrap;
}

.p-jisseki__contents dt {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  background: #f5f5f5;
  font-size: 0.9em;
  min-width: 13%;
  padding: 0 1em;
  margin: 0 2% 1em 0;
}

.p-jisseki__contents dd {
  width: 85%;
  margin-bottom: 1em;
}

.p-jisseki__contents dl:last-child dt,
.p-jisseki__contents dl:last-child dd{
  margin-bottom: 0;
}

/* .p-moreButton {
  width: 250px;
  padding: 15px;
}

.p-moreButton.on-click{
  display: none;
} */

/*アコーディオン*/
.p-jisseki--accordion {
  
}

.p-jisseki__toggleHead {
  position: relative;
  background: #f1f1f1;
  padding: 10px 2em;
  margin-bottom: 1em;
  cursor: pointer;
}

.p-jisseki__toggleHead::after {
  display: block;
  content: "";
  width: 7px;
  height: 7px;
  position: absolute;
  top: 50%;
  right: 20px;
  margin-top: -5px;
  border-top: solid 2px #333;
  border-right: solid 2px #333;
  transform: rotate(45deg);
  -webkit-transform: rotate(135deg);
  -webkit-transition: .2s ease-in-out;
}

.p-jisseki__toggleHead.is-open::after {
  transform: rotate(135deg);
  -webkit-transform: rotate(-45deg);
}

.p-jisseki__toggleHead p {
  font-size: 1.2em;
}

.p-jisseki__toggleHead i {
  color: #6a6a6a;
  margin-right: 10px;
}

.p-jisseki__toggleHead p::before {
  content: none;
  background-image: url(../images/common/icon/icon-liberary.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 1.2em;
  height: 1.2em;
  display: inline-block;
  margin-right: 0.5em;
  vertical-align: middle;
}

.p-jisseki__toggleWrap {
  display: none;
}

.p-jisseki__toggleHead.is-open .p-jisseki__toggleWrap {
  display: block;
}


@media screen and (max-width:768px) {
  .p-jisseki__head__tag {
    font-size: 12px;
    width: auto;
    padding: 0px 1em;
    margin-bottom: 5px;
  }
  
  .p-jisseki li {
    padding: 15px;
  }
  
  .p-jisseki__contents dt {
    width: 20%;
    margin-right: 5%;
  }
  
  .p-jisseki__contents dd {
    width: 75%;
  }
}

/*----------------------------------------
* 環境　個別
----------------------------------------*/
.environment .mainImg {
  background-position-x: center;
}
.c-ttlh3-2 span.c-subTtl {
  color: #1dac4b;
  font-size: 1em;
}

@media print, screen and (min-width: 769px) {
  .environment .l-mainDisc--top .p-mainDisc__box:nth-child(2) {
    margin-left: 115px;
  }

  .environment .gnav > li {
    width: calc(100% / 8);
  }

  /*英語ページ*/
  .environment.page-en header .gnav > li {
    width: calc(100% / 5)!important;
  }

  .environment .secTop.mainImg .l-mainDisc--top {
    top: 60px;
    right: 5%;
  }
}

.item--card {
  display: block;
  background: #fff;
  box-shadow: 0 2px 5px rgb(0 0 0 / 20%);
  padding: 20px;
  height: 100%;
}

.item--card figure {
  margin-bottom: 1em;
}

.item--card .ttl {
  font-weight: bold;
  text-indent: -1.5em;
  padding-left: 1.5em;
  margin-bottom: 0.3em;
}

.item--card p {
  padding-left: 1.5em;
}

/*トップページ「商品」*/
.environment .l-purpose__box {
  margin-bottom: 20px;
}

.environment .l-purpose__box.trouble .p-container {
  background: #e8ebf1;
}

.environment .l-purpose__box.value .p-container {
  background: #f6f0e9;
}

.environment .l-purpose__box .p-cont-ttl {
  text-align: center;
  margin-bottom: 1rem;
}

.environment .l-purpose__box .p-cont-ttl p {
  font-size: 1.4em;
  font-weight: bold;
}

.environment .l-purpose__box.trouble .p-cont-ttl p {
  color: #4e68a7;
}

.environment .l-purpose__box.value .p-cont-ttl p {
  color: #e18d32;
}

.environment .l-purpose__box .p-container {
  padding: 30px 60px;
  border-radius: 15px;
}

.environment .l-purpose__box .p-container ul {
  display: flex;
  flex-wrap: wrap;
}

.environment .l-purpose__box .p-container li {
  background: #fff;
  position: relative;
  padding: 20px 1em;
  margin-right: 45px;
  text-align: center;
  width: 180px;
  height: 200px;
}

.environment .l-purpose__box .p-container li p {
  font-weight: bold;
  line-height: 1.4;
  padding: 10px 0;
}

.environment .l-purpose__box .p-container li img {
  width: 110px;
}

.environment .l-purpose__box .p-container li::after {
  content: '\0025e2';
  position: absolute;
  right: 5px;
  bottom: 5px;
  line-height: 1;
  font-size: 12px;
  color: #CCC;
}

.environment .l-purpose__box .p-container li a:hover {
  opacity: 1;
}

.environment .l-purpose__box.trouble .p-container li:hover::after {
  color: #4e68a7;
}

.environment .l-purpose__box.value .p-container li:hover::after {
  color: #e18d32;
}

.environment .tabWrap {
  margin: 60px 0 50px 0;
}

@media screen and (min-width:769px) {
  .environment .l-purpose__box .p-ttl p span {
    font-size: 1.3em;
  }

  .environment .l-purpose__box .p-container li:nth-child(5n) {
    margin-right: 0;
  }
}

@media screen and (max-width:768px) {
  .environment .purposeSec .l-inner {
    padding: 0;
  }

  .environment .l-purpose__box .p-container {
    padding: 20px;
    border-radius: 0 15px 15px 15px;
  }

  .environment .l-purpose__box .p-ttl {
    padding: 10px 15px 5px 10px;
    margin-left: 0;
  }

  .environment .l-purpose__box .p-ttl p span {
    font-size: 1em;
  }

  .environment .l-purpose__box .p-container li {
    width: 100%;
    height: auto;
    margin-right: 0;
    padding: 0 10px;
  }

  .environment .l-purpose__box .p-container li:nth-child(2n) {
    margin-right: 0;
  }

  .environment .l-purpose__box .p-container li img {
    display: inline-block;
    vertical-align: middle;
  }

  .environment .l-purpose__box .p-container li p {
    /*! font-size: 0.9em; */
    display: inline-block;
    width: 50%;
    vertical-align: middle;
  }

  .environment .l-purpose__box .p-cont-ttl p {
    font-size: 1.2em;
  }
}

/*タブのスタイル*/
.environment .tab_item {
  width: 50%;
  height: 70px;
  line-height: 70px;
  text-align: center;
  display: block;
  float: left;
  text-align: center;
  font-weight: bold;
  transition: all 0.2s ease;
  border-radius: 15px 15px 0 0;
}

.environment .tab_item:hover {
  opacity: 0.8;
}

/*ラジオボタンを全て消す*/
input[name="tab_item"] {
  display: none;
}

/*タブ切り替えの中身のスタイル*/
.environment .tab_content {
  display: none;
  padding-top: 40px;
  clear: both;
  overflow: hidden;
}

/*選択されているタブのコンテンツのみを表示*/
#trouble-tab:checked ~ #trouble_content,
#value-tab:checked ~ #value_content {
  display: block;
}

.environment .tabs label.tab_item {
  background-color: #d9d9d9;
  color: #777;
}

/*選択されているタブのスタイルを変える*/
.environment .tabs input:checked + .ttl--trouble {
  background-color: #4e68a7;
  color: #fff;
}

.environment .tabs input:checked + .ttl--value {
  background-color: #e18d32;
  color: #fff;
}

/*上書きcss*/
.environment .tabs .l-purpose__box .p-container {
  border-radius: 0 0 15px 15px;
}

.environment .tabs .l-purpose__box {
  padding-top: 0;
}

.environment .tabs label {
  font-size: 1.2em;
}

.environment .tabs label span {
  font-size: 1.3em;
}

@media screen and (max-width:768px) {
  .environment .tabs label {
    font-size: 12px;
    line-height: 1.5;
    padding-top: 1rem;
  }

  .environment .tabs label span {
    font-size: 15px;
  }
}

/*機種選定（検索エリア）*/
.environment .secCont-searchList .is-hide {
  display: none;
}

.environment .secCont-search .l-resetbtn {
  text-align: center;
  margin: 30px 0;
}
.environment .secCont-search .l-resetbtn .p-tab-reset{
  padding: 10px 50px;
  border: none;
  background-image: none;
}

.environment .secCont-search .l-resetbtn .p-tab-reset:hover {
  color: #333;
}

.environment .secCont-search label {
  font-size: 16px;
  cursor: pointer;
}

.environment .secCont-search label input {
  margin-right: 1em;
  cursor: pointer;
}

.environment .secCont-search .l-searchBox,
.environment .secCont-search .l-keyword-box {
  padding: 20px 40px;
}

.environment .secCont-search .l-searchBox__step {
  border-bottom: solid 1px #ddd;
  padding-bottom: 1em;
  margin-bottom: 1em;
}

.environment .secCont-search .l-searchBox__step:last-child {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}

.environment .secCont-search .l-searchBox__step .p-step--ttl {
  font-weight: bold;
  margin-bottom: 0.5em;
}

.environment .secCont-search .l-keyword-box input {
  padding: 5px 10px;
  width: 300px;
}

@media screen and (min-width:769px) {
  .environment .secCont-search ul.flex li {
    width: calc(1 / 4 * 100% - 1em);
  }
}

@media screen and (max-width:768px) {
  .environment .secCont-search .l-searchBox {
    padding: 15px;
  }
}

/*機種選定（結果エリア）*/
.environment .secCont-searchList .col-item--list {
  border: solid 1px #ddd;
}

.environment .secCont-searchList .col-item--list a {
  display: block;
  padding: 15px;
  height: 100%;
}

.environment .secCont-searchList .col-item--list .p-groupName {
  font-size: 0.9em;
  padding: 0.2em 0.6em;
  margin-bottom: 10px;
  display: inline-block;
  border-radius: 5px;
}

.environment .secCont-searchList .col-item--list .p-groupName.name-pink {
  background: #ffd2d2;
}

.environment .secCont-searchList .col-item--list .p-groupName.name-green {
  background: #aedd8d;
}

.environment .secCont-searchList .col-item--list .p-groupName.name-orange {
  background: #fbc47e;
}

.environment .secCont-searchList .col-item--list .p-groupName.name-blue {
  background: #add0ff;
}

.environment .secCont-searchList .col-item--list .p-groupName.name-yellow {
  background: #ffe6aa;
}

.environment .secCont-searchList .col-item--list .p-groupName.name-purple {
  background: #b9aed9;
}

.environment .secCont-searchList .col-item--list .p-groupName.name-gray {
  background: #b2b4c1;
}

.environment .secCont-searchList .col-item--list figure {
  width: 80%;
  margin: 0 auto 10px;
}
.environment .secCont-searchList .col-item--list .p-Name {
  margin-bottom: 0.5em;
}

.environment .secCont-searchList .col-item--list .p-tagName {
  background: #8e8e8e;
  color: #fff;
  font-size: 12px;
  display: inline-block;
  border-radius: 50px;
  padding: 0em 0.9em;
  margin-bottom: 0.2em;
}

.environment .secCont-searchList .col-item--list .p-useBox {
  border: solid 1px #5499d7;
  padding: 5px;
  margin-top: 10px;
}

.environment .secCont-searchList .col-item--list .p-useBox p {
  font-size: 12px;
  color: #5499d7;
}
@media print, screen and (min-width: 769px){
  .environment .secCont-searchList .col-item--list {
    margin: 0 9px 15px;
  }
  .environment .secCont-searchList .col-item--list:nth-child(4n) {
    margin-right: 9px;
  }
}
@media screen and (max-width:768px) {
  .environment .secCont-searchList .col-item--list a {
    padding: 10px;
  }
  .environment .secCont-searchList .col-item--list .l-flexBox-sp {
    display: flex;
    flex-wrap: wrap;
  }
  .environment .secCont-searchList .col-item--list .l-flexBox__spc01 {
    width: 40%;
  }
  .environment .secCont-searchList .col-item--list .l-flexBox__spc02 {
    width: 60%;
  }
  .environment .secCont-searchList .col-item--list .p-Name {
    margin-bottom: 0;
  }
}

/*検索ボタン*/
.environment .linkbtn02.search {
  width: 230px;
  min-width: 230px;
  background-color: #1dac4b;
  background-image: url(../images/common/icon/search-white.png);
  background-size: 20px;
  display: inline-block;
  padding: 1em 1em 1em 0.5em;
  height: 100%;
}

.environment .linkbtn02.search:hover {
  opacity: 0.6;
  outline: none;
  color: #fff;
}

@media screen and (max-width:768px) {
  .environment .linkbtn02.search {
    min-width: 100%;
  }
}

/*h2タイトルとボタン横並び*/
.environment .lineup--list .l-ttlWrap {
  margin-bottom: 2em;
}

.environment .lineup--list .l-ttlWrap .c-ttlh2 {
  padding-bottom: 0;
}

@media screen and (min-width:769px) {
  .environment .lineup--list .l-ttlWrap {
    display: flex;
    justify-content: space-between;
    border-bottom: solid 1px #ddd;
    padding-bottom: 1em;
  }
  .environment .lineup--list .l-ttlWrap .c-ttlh2 {
    font-size: 28px;
    display: inline-block;
    vertical-align: middle;
    border-bottom: none;
    margin-right: 2em;
    margin-bottom: 0;
  }
}

@media screen and (max-width:768px) {
  .environment .lineup--list .l-ttlWrap h2 {
    margin-bottom: 1em;
  }
  .environment .lineup--list .l-ttlWrap .c-ttlh2 {
    font-size: 20px;
    padding-bottom: 10px;
  }
}

/*目的別（困りごとを解決）*/
.environment.purpose .l-ttlCont {
  border: double;
  background: url(../images/common/pattern/bg-note.png);
  margin-top: 60px;
}

.environment.purpose .l-ttlCont.ttl-trouble {
  border-color: #4e68a7;
  padding-bottom: 35px;
}

.environment.purpose .l-ttlCont.ttl-trouble .p-ttl {
  background: #4e68a7;
  color: #fff;
  display: inline-block;
  padding: 0 2em;
  margin: -40px 0 35px;
}

.environment.purpose .l-ttlCont .p-ttl span {
  font-size: 0.75em;
}

.environment.purpose .l-ttlCont p,
.environment.purpose .l-ttlCont a {
  color: #4e68a7;
}

.environment.purpose .l-ttlCont .l-flexBox {
  justify-content: center;
}

.environment.purpose .l-ttlCont .flex-list li {
  font-size: 1.3em;
  font-weight: bold;
  margin-bottom: 20px;
}

.environment.purpose .l-ttlCont .flex-list li::before {
  content: '';
  background-image: url(../product/environment/purpose/images/icon_box.png);
  background-size: 100%;
  background-repeat: no-repeat;
  width: 38px;
  height: 31px;
  display: inline-block;
  vertical-align: middle;
}

.environment.purpose .l-ttlCont .flex-list li:hover,
.environment.purpose .l-ttlCont .flex-list li a:hover {
  text-decoration: underline #4e68a7;
  opacity: 1;
}

.environment.purpose .l-ttlCont .flex-list li:hover::before {
  background-image: url(../product/environment/purpose/images/icon_box_checked.png);
}

@media screen and (min-width:769px) {
  .environment.purpose .l-ttlCont .flex-list {
    display: flex;
    flex-wrap: wrap;
    width: 700px;
  }

  .environment.purpose .l-ttlCont .flex-list li {
    width: 320px;
  }

  .environment.purpose .l-ttlCont .flex-list li:nth-child(2n) {
    margin-left: 2em;
  }
}

@media screen and (max-width:768px) {
  .environment.purpose .l-ttlCont .p-ttl span {
    font-size: 0.6em;
  }

  .environment.purpose .l-ttlCont .p-ttl h1 {
    font-size: 2em;
    line-height: 1;
  }

  .environment.purpose .l-ttlCont {
    padding: 0 10px 10px;
  }
}

/*目的別（付加価値をプラス）*/
.environment.purpose .l-ttlCont.ttl-value {
  border-color: #e18d32;
  padding: 20px 10px;
}

.environment.purpose .l-ttlCont.ttl-value h1 {
  color: #e18d32;
}

.environment.purpose .l-ttlCont.ttl-value .p-ttl {
  border-top: solid 2px #e3be96;
  border-bottom: solid 2px #e3be96;
}

.environment.purpose .p-ttlh2 h2 {
  color: #e18d32;
}

.environment.purpose .p-ttlh2 h2::before,
.environment.purpose .p-ttlh2 h2::after {
  content: ' ― ';
}

.environment.purpose .flow-list li {
  background: #fff;
  padding: 10px;
  margin-bottom: 30px;
  position: relative;
}

.environment.purpose .flow-list li p {
  padding-left: 1em;
  text-indent: -1em;
}

.environment.purpose .flow-list li::after {
  content: '▼';
  position: absolute;
  right: 50%;
  bottom: -30px;
}

.environment.purpose .flow-list li:last-child {
  margin-bottom: 0;
}

.environment.purpose .flow-list li:last-child::after {
  content: none;
}

.environment.purpose .table-style02 th {
  font-size: 0.9em;
}

@media screen and (min-width:769px) {
  .environment.purpose .l-ttlCont.ttl-value .l-flexBox__textSpc {
    margin-left: 100px;
  }
}

@media screen and (max-width:768px) {
  .environment.purpose .l-ttlCont.ttl-value .p-ttl {
    text-align: center;
  }

  .environment.purpose .l-ttlCont.ttl-value .p-ttl {
    padding: 20px;
  }

  .environment.purpose .l-ttlCont.ttl-value .p-ttl h1 {
    padding-bottom: 0;
    font-size: 1.7em;
  }

  .environment.purpose .l-ttlCont.ttl-value figure {
    width: 70%;
    margin: 0 auto;
  }

  .environment.purpose .p-ttlh2 h2 {
    font-size: 1.2em;
  }

  .environment.purpose .flow-list {
    margin-top: 20px;
  }
}

/*商品ページ　テキストアイコンエリア*/

.environment.product-end .p-ttl-icon {
  display: inline-block;
  padding: 20px;
  border-radius: 50px;
  text-align: center;
  margin-right: 1em;
}

.environment.product-end .p-ttl-icon:last-child {
  margin-right: 0;
}

.environment.product-end .p-ttl-icon.green {
  background: #1dac4b;
}

.environment.product-end .p-ttl-icon.gray {
  background: #8e8e8e;
}

.environment.product-end .p-ttl-icon p {
  color: #fff;
}

@media screen and (min-width:769px) {
  .environment.product-end .l-iconBox {
    margin-top: 10px;
  }

  .environment.product-end .l-ttl-icon__wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

@media screen and (max-width:768px) {
  .environment.product-end .p-ttl-icon {
    padding: 10px 15px;
    margin-bottom: 10px;
  }

  .environment.product-end .p-ttl-icon p {
    font-size: 0.9em;
  }

  .environment.product-end .p-ttl-icon:last-child {
    margin-bottom: 0;
  }
}

/*商品ページ　「主な〇〇」エリア*/
.environment .p-pagefeature__box {
  background: #d6ecdd;
  display: inline-flex;
  padding: 20px;
  margin-bottom: 40px;
}

.environment .p-pagefeature__box .ttl {
  margin-right: 1em;
  font-weight: bold;
  min-width: 6em;
}

@media screen and (max-width:768px) {
  .environment .p-pagefeature__box {
    display: block;
    padding: 15px;
  }
}

/*商品ページ　画像アイコンエリア*/
.environment.product-end .p-icon__wrap ul {
  display: flex;
  flex-wrap: wrap;
}

.environment.product-end .p-icon__wrap .l-icon-guide {
  border: solid 1px #adadad;
  padding: 5px;
}

@media screen and (min-width:769px) {
  .environment.product-end .p-icon__wrap ul {
    margin-bottom: 20px;
  }

  .environment.product-end .p-icon__wrap ul li {
    width: calc(0.08 * 1200px);
    margin-right: 1em;
    margin-bottom: 1em;
  }

  .environment.product-end .p-icon__wrap ul li:nth-child(10n) {
    margin-right: 0;
  }

  .environment.product-end .p-icon__wrap ul li {
    position: relative;
  }

  .environment.product-end .fukidashi {
    display: none;
    width: 200px;
    position: absolute;
    bottom: 110px;
    left: 60px;
    padding: 13px;
    border-radius: 5px;
    background: #3CB2DD;
    color: #fff;
    font-size: 0.9em;
    z-index: 2;
  }

  .environment.product-end .fukidashi:after {
    position: absolute;
    width: 0;
    height: 0;
    left: 0;
    bottom: -19px;
    margin-left: 10px;
    border: solid transparent;
    border-color: rgba(51, 204, 153, 0);
    border-top-color: #3CB2DD;
    border-width: 10px;
    pointer-events: none;
    content: " ";
  }

  .p-iconImg:hover + .fukidashi {
    display: block;
  }

  .environment.product-end .p-icon__wrap .l-icon-guide {
    width: 230px;
  }
}

@media screen and (max-width:768px) {
  .environment.product-end .p-icon__wrap ul {
    margin-bottom: 10px;
  }

  .environment.product-end .p-icon__wrap ul li {
    width: 29%;
    margin-right: 1em;
  }

  .environment.product-end .p-icon__wrap ul li:nth-child(3n) {
    margin-right: 0;
    margin-bottom: 1em;
  }

  .environment.product-end .p-icon__wrap ul li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 1em;
  }

  .environment.product-end .p-icon__wrap ul li figure {
    width: 22%;
    display: inline-block;
    margin-right: 3%;
    vertical-align: middle;
  }

  .environment.product-end .p-icon__wrap ul li p {
    display: inline-block;
    width: 73%;
    vertical-align: middle;
  }

  .environment.product-end .fukidashi {
    font-size: 0.9em;
  }

  .environment.product-end .p-icon__wrap .l-icon-guide {
    width: 75%;
    max-width: 230px;
    margin: auto;
  }
}

/*----生産終了機種----*/
.environment .l-eolSec__box {
  margin-bottom: 2em;
}

.environment .l-eolSec__box .l-flexBox__spc01,
.environment .l-eolSec__box .l-flexBox__spc02 {
  padding: 0 20px 20px;
}

.environment .l-eolSec__box .l-flexBox__spc01 {
  background: #f4ead6;
  position: relative;
  width: 50%;
}

.environment .l-eolSec__box .l-flexBox__spc02 {
  background: #e1f2c1;
  text-align: center;
}

.environment .l-eolSec__box .l-flexBox__spc01 .ttl,
.environment .l-eolSec__box .l-flexBox__spc02 .ttl {
  text-align: center;
  padding: 0.5em;
  margin: 0 -20px 20px;
}

.environment .l-eolSec__box .l-flexBox__spc01 .ttl {
  background: #f0ad26;
}

.environment .l-eolSec__box .l-flexBox__spc02 .ttl {
  background: #77a61e;
}

.environment .l-eolSec__box .l-flexBox__spc01 .ttl p,
.environment .l-eolSec__box .l-flexBox__spc02 .ttl p {
  color: #fff;
  font-weight: bold;
}

.environment .l-eolSec__box .l-flexBox__spc01 .p-name {
  background: #fff;
  padding: 5px 1em;
  margin-bottom: 1em;
}

.environment .l-eolSec__box .l-flexBox__spc01::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  display: inline-block;
  position: absolute;
}

/*現行機種が2つの時*/
.environment .l-eolSec__box .l-flexBox__spc02 .flex {
  display: flex;
}

.environment .l-eolSec__box .l-flexBox__spc02 .flex .item {
  margin-right: 1em;
}

.environment .l-eolSec__box .l-flexBox__spc02 .flex .item:last-child {
  margin-right: 0;
}

@media print, screen and (min-width: 769px) {
  .environment .l-eolSec__box .l-flexBox__spc01 .flex-pc,
  .environment .l-eolSec__box .l-flexBox__spc02 .flex-pc {
    display: flex;
    align-items: center;
  }

  .environment .l-eolSec__box .l-flexBox__spc01 .l-nameSpc {
    margin-left: 1em;
  }

  .environment .l-eolSec__box .l-flexBox__spc01 {
    margin-right: 35px;
  }

  .environment .l-eolSec__box .l-flexBox__spc01::after {
    border-width: 15px 0 15px 15px;
    border-color: transparent transparent transparent #464646;
    right: -27px;
    top: 50%;
  }
}

@media screen and (max-width:768px) {
  .environment .l-eolSec__box .l-flexBox__spc01::after {
    border-width: 15px 15px 0 15px;
    border-color: #464646 transparent transparent transparent;
    right: 50%;
    bottom: -25px;
    transform: translateX(50%);
  }

  .environment .l-eolSec__box .l-flexBox__spc01 .l-nameSpc {
    margin-top: 1em;
  }
}

/*---システムトップぺージ---*/
.environment .lineup--list table th,
.environment .lineup--list table td,
.environment .lineup--list table dd p,
.environment .lineup--list table h3 {
  font-size: 14px;
  font-weight: normal;
}

.environment .lineup--list table th,
.environment .lineup--list table td {
  text-align: center;
}

/*ベース（集塵）*/
.environment .lineup--list table .th01 {
  width: 450px;
  min-width: 450px;
}

.environment .lineup--list table .th02 {
  min-width: 150px;
  width: 150px;
}

.environment .lineup--list table .th03 {
  min-width: 150px;
  width: 150px;
}

.environment .lineup--list table .th04 {
  min-width: 450px;
  width: 450px;
}

/*（水処理）*/
.environment .lineup--list.water .dup-af .th01 {
  min-width: 550px;
  width: 550px;
}

.environment .lineup--list.water .dup-af .th02 {
  min-width: 150px;
  width: 150px;
}

.environment .lineup--list.water table .th00 {
  min-width: 150px;
  width: 150px;
}

.environment .lineup--list.water table .th01 {
  min-width: 425px;
  width: 425px;
}

.environment .lineup--list.water table .th02 {
  min-width: 125px;
  width: 125px;
}

.environment .lineup--list.water table .th03 {
  min-width: 500px;
  width: 500px;
}

/*（排ガス）*/
.environment .lineup--list.gas table .th01 {
  min-width: 500px;
  width: 500px;
}

.environment .lineup--list.gas table .th02 {
  min-width: 150px;
  width: 150px;
}

.environment .lineup--list.gas table .th03 {
  min-width: 400px;
  width: 400px;
}

.environment .lineup--list thead tr {
  border-bottom-color: #fff;
}

.environment .lineup--list thead th {
  border-right-color: #fff;
}

.environment .lineup--list tbody th {
  background: #fff;
}

.environment .lineup--list table dt {
  display: table-cell;
  width: 100px;
  padding: 0;
}

.environment .lineup--list table dd {
  display: table-cell;
  text-align: left;
  vertical-align: middle;
  width: auto;
  padding: 0 0 0 1.5em;
}

/*th色分け*/
.environment .table-style02 thead.th-pink th {
  background: #ffd2d2;
}

.environment .table-style02 thead.th-green th {
  background: #aedd8d;
}

.environment .table-style02 thead.th-orange th {
  background: #fbc47e;
}

.environment .table-style02 thead.th-blue th {
  background: #add0ff;
}

.environment .table-style02 thead.th-yellow th {
  background: #ffe6aa;
}

.environment .table-style02 thead.th-purple th {
  background: #b9aed9;
}

.environment .table-style02 thead.th-gray th {
  background: #b2b4c1;
}

/*風量*/
.environment .lineup--list table .th-furyo {
  text-align: left;
  padding: 0 0 0 45px;
}

.environment .lineup--list table .th-furyo li {
  display: inline-block;
  width: 50px;
  margin-bottom: 0;
}

.environment .lineup--list table .th-furyo li:last-child {
  margin-left: 40px;
}

.environment .lineup--list table .p-furyoSpc {
  background-image: url(../product/environment/dust/images/furyo-dust.png);
  background-repeat: repeat-y;
  background-size: 100%;
  text-align: left;
  padding-left: 0;
  padding-right: 0;
  position: relative;
}

.environment .lineup--list.gas table .p-furyoSpc {
  background-image: url(../product/environment/gas/images/furyo-gas.png);
}

.environment .lineup--list.water table .p-furyoSpc {
  background-image: url(../product/environment/water/images/furyo-water.png);
}

.environment .lineup--list table .p-furyoSpc img {
  height: 40px;
}

.environment .lineup--list table .p-furyoSpc p {
  position: absolute;
  left: 5px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 0.9em;
}

/*（排水）処理工程*/
.environment .syori {
  border-radius: 20px;
  text-align: center;
}

.environment .syori p {
  color: #fff;
  font-size: 0.9em;
}

.environment li.syori {
  padding: 5px 1em;
}

.environment .syori.green {
  background: #06bb80;
}

.environment .syori.pink {
  background: #ea558d;
}

.environment .syori.blue {
  background: #707eca;
}

.environment .syori.yellow {
  background: #eab22d;
}

@media screen and (max-width:768px) {
  .environment .lineup--list .table-scroll table {
    max-width: 1100px;
  }

  .environment .lineup--list table .th01 {
    width: 350px;
    min-width: 350px;
  }

  .environment .lineup--list table .th02 {
    width: 150px;
    min-width: 150px;
  }

  .environment .lineup--list table .th04 {
    width: 400px;
    min-width: 400px;
  }

  .environment .lineup--list table dt {
    width: 70px;
  }
}

/*----排ガスイントロ----*/
.environment .l-gasIntro {
  background: url(../product/environment/gas/images/bg_intro.jpg) no-repeat;
  background-size: cover;
  padding: 40px;
  margin-bottom: 100px;
}

.environment .l-gasIntro p {
  font-size: 1.2em;
}

.environment .l-gasIntro .l-gasIntro__box {
  background: rgba(255, 255, 255, .9);
  padding: 20px;
  text-align: center;
}

.environment .l-gasIntro ul {
  justify-content: center;
}

.environment .l-gasIntro ul li {
  margin-bottom: 0;
  padding: 1em;
  background: #fff;
  font-size: 1.2em;
  color: #5a98d9;
  font-weight: bold;
  border: solid 1px #5a98d9;
}

@media print, screen and (min-width: 769px){
  /*英語ページ*/
  .environment.page-en .l-gasIntro ul li:first-child {
    padding-top: 1.8em;
  }
}

@media screen and (max-width:768px) {
  .environment .l-gasIntro {
    padding: 20px;
    margin-bottom: 50px;
  }

  .environment .l-gasIntro p {
    font-size: 1em;
  }

  .environment .l-gasIntro ul li {
    padding: 0.5em;
    margin-bottom: 0.5em;
  }
}

/*----排ガス3R----*/
.environment .l-3rCont {
  padding: 20px;
}

.environment .l-3rCont .p-ttlSpc {
  background: #77b03d;
  padding: 10px 1em;
}

.environment .l-3rCont .p-ttlSpc .ttl {
  font-size: 1.5em;
  font-weight: bold;
  color: #fff;
}

.environment .l-3rCont .p-descSpc {
  padding: 20px;
}

@media print, screen and (min-width: 769px) {
    .environment .l-3rCont .p-ttlSpc {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
    }

    .environment .l-3rCont .p-ttlSpc .ttl {
      margin-right: 1em;
    }
}

@media screen and (max-width:768px) {
  .environment .l-3rCont {
    padding: 10px;
  }

  .environment .l-3rCont .p-ttlSpc .ttl {
    font-size: 1.2em;
  }
}

/*----排水処理システム----*/
.environment .l-water-system .p-system--ttl {
  background: #a1daf9;
  display: inline-block;
  margin-left: -20px;
  margin-bottom: 1em;
  padding: 5px 1em;
}

.environment .l-water-system .p-system--ttl p {
  font-size: 1.2em;
  font-weight: bold;
}

.environment .l-water-system .p-system--ttl p::before {
  content: '■';
  color: #59b4e6;
  margin-right: 0.3em;
}

@media screen and (max-width:768px) {
  .environment .l-water-system .p-system--ttl p {
    font-size: 1em;
  }
}

/*----体感施設----*/
.environment .p-voiceText {
  font-weight: bold;
  color: #1dac4b;
  font-size: 1.2em;
  margin-bottom: 0.5em;
}

.environment .p-voiceText::before {
  content: '';
  background: url('../product/environment/images/common/voice.png') no-repeat;
  background-size: contain;
  width: 30px;
  height: 30px;
  display: inline-block;
  vertical-align: text-bottom;
  margin-right: 0.5em;
}

/*----トピックス＆困りごと----*/
.environment .l-ttlCont .c-ttlh2 span {
  font-size: 1.2rem;
  color: #333;
  font-weight: normal;
  margin-left: 1em;
}

.environment .l-ttlCont .c-ttlh2 span::before,
.environment .l-ttlCont .c-ttlh2 span::after {
  content: '';
  background: #333;
  width: 0.8em;
  height: 1px;
  display: inline-block;
  vertical-align: middle;
}

.environment .l-ttlCont .c-ttlh2 span::before {
  margin-right: 5px;
}

.environment .l-ttlCont .c-ttlh2 span::after {
  margin-left: 5px;
}

.environment .l-catchCont {
  border: double 3px #ddd;
  padding: 20px;
  text-align: center;
}

.environment .l-catchCont p {
  font-size: 1.5em;
  font-weight: bold;
}

.environment .l-catchCont p.textSmall {
  font-size: 0.9rem;
  font-weight: 100;
}

.environment .l-catchCont .flexBox {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 20px;
}

.environment .l-catchCont .flexBox figure {
  max-width: 170px;
  margin: 0 1em;
}

.environment .l-stepCont {
  border-bottom: dotted 1px #797979;
  padding-bottom: 20px;
  margin-bottom: 50px;
}

.environment .l-stepCont:last-of-type {
  border-bottom: none;
  padding-bottom: 0;
}

.environment .l-stepCont .step--ttl {
  background: #71C48C;
  padding: 5px 1em;
  display: inline-block;
  margin-bottom: 1em;
}

.environment .l-stepCont .step--ttl p {
  color: #fff;
  font-size: 1.2em;
  font-weight: bold;
}

.environment .p-industry .col-item {
  border: solid 1px #f19100;
}

.environment .p-industry .col-item .ttl {
  background: #f19100;
  padding: 3px;
}

.environment .p-industry .col-item .ttl p {
  color: #fff;
  text-align: center;
}

.environment .p-industry .col-item ul {
  padding: 0.5em 1em;
}

@media print, screen and (min-width: 769px) {
  .environment .l-catchCont {
    margin-bottom: 100px;
  }

  .environment .p-industry .col-item:last-of-type ul {
    padding-top: 1.5em;
  }
}

@media screen and (max-width:768px) {
  .environment .l-ttlCont .c-ttlh2 span {
    font-size: 0.8em;
    margin-left: 0;
  }

  .environment .l-catchCont p {
    font-size: 1.2em;
  }

  .environment .l-catchCont .flexBox figure {
    width: calc(1 / 3 * 80%);
    margin: 0 5px;
  }

  .environment .p-industry .col-item ul {
    padding: 0.5em;
  }

  .environment .p-industry .col-item li {
    font-size: 14px;
  }

  .environment .p-industry .col-item:last-of-type {
    width: 100%;
    text-align: center;
    margin-right: 0;
  }
}

/*----トピックス----*/
.environment.topics .p-point__box {
  background: #f1f1f1;
  display: inline-block;
  padding: 20px 35px;
}

.environment.topics .p-point__box h4 {
  margin-bottom: 10px;
  line-height: 1.2;
  padding: 0.5em 0 0.5em 0.8em;
}

.environment.topics .p-point__box li {
  font-weight: bold;
  font-size: 1.2em;
}

.environment.topics .p-point__box li span {
  color: #ff412e;
  text-decoration: underline;
  font-size: 1.3em;
}

@media screen and (max-width:768px) {
  .environment.topics .p-point__box {
    display: block;
    padding: 15px;
  }

  .environment.topics .p-point__box h4 {
    font-size: 1.3em;
  }

  .environment.topics .p-point__box li span {
    font-size: 1.2em;
  }
}

/*----困りごと解決する----*/
@media print, screen and (min-width: 769px) {
  .environment.trouble .p-link03 {
    width: 80%;
    display: block;
  }
}

/*----粉塵火災対策システムページ----*/
.fire-control .p-point__concept{
  background: #eef7f1;
  padding: 20px 30px;
}
.fire-control .p-anchorCont{
  background: #f7f7f7;
  position: relative;
  padding: 20px 0 40px;
}
.fire-control .p-anchorCont .p-ttl{
  text-align: center;
  margin-bottom: 15px;
}
.fire-control .p-anchorCont .p-ttl p{
  font-size: 2rem;
  font-weight: bold;
}
.fire-control .p-anchorCont ul{
  display: flex;
  flex-wrap: wrap;
  width: 675px;
  margin: auto;
}
.fire-control .p-anchorCont ul li{
  margin-bottom: 0;
  text-align: center;
}
.fire-control .p-anchorCont ul li a{
  background: #fff;
  display: block;
  font-size: 18px;
  color: #1dac4b;
  padding: 15px;
  font-weight: bold;
}
@media print, screen and (min-width: 769px) {
  .fire-control .p-anchorCont ul li a{
    width: 215px;
    margin-right: 15px;
    line-height: 1.5;
  }
  .fire-control .p-anchorCont ul li:nth-child(3n) a{
    margin-right: 0;
  }
  .fire-control .p-anchorCont ul li:nth-child(-n+3){
    margin-bottom: 20px;
  }
  .fire-control .l-flexBox .l-flexBox__spc01,
  .fire-control .l-flexBox .l-flexBox__spc02{
    width: 45%;
  }
  .fire-control .p-head__concept{
    font-size: 29px;
    font-weight: bold;
  }

  /* 英語ページ */
  .fire-control.page-en .p-anchorCont ul {
    width: 100%;
    justify-content: center;
  }
  .fire-control.page-en .p-anchorCont ul li a {
    width: 420px;
  }
  .fire-control.page-en .p-anchorCont ul li:nth-child(3n) a {
    margin-right: 20px;
  }
  .fire-control.page-en .p-anchorCont ul li:nth-child(2n) a {
    margin-right: 0;
  }
  .fire-control.page-en .p-anchorCont ul li a {
    margin-right: 20px;
  }
  .fire-control.page-en .l-flexBox.ratio6-4 .l-flexBox__spc01 {
    width: 60%;
  }
  .fire-control.page-en .l-flexBox.ratio6-4 .l-flexBox__spc02 {
    width: 40%;
  }
}

@media screen and (max-width:768px){
  .fire-control .l-secCont__box{
    margin-bottom: 50px;
  }
  .fire-control .p-head__concept{
    font-size: 20px;
    font-weight: bold;
  }
  .fire-control .p-anchorCont{
    padding: 20px 0;
  }
  .fire-control .p-anchorCont .p-ttl{
    margin-bottom: 0;
  }
  .fire-control .p-anchorCont .p-ttl p{
    font-size: 1.5em;
  }
  .fire-control .p-anchorCont ul{
    width: 100%;
    padding: 10px;
  }
  .fire-control .p-anchorCont ul li{
    width: calc(100% / 2 - 5px);
    margin: 0 10px 10px 0;
  }
  .fire-control .p-anchorCont ul li a{
    font-size: 14px;
    padding: 10px;
  }
  .fire-control .p-anchorCont ul li:nth-child(2n){
    margin-right: 0;
  }
  .fire-control .p-point__concept{
    padding: 20px;
  }
  /* 英語ページ */
  .fire-control.page-en .p-anchorCont ul {
    display: block;
  }
  .fire-control.page-en .p-anchorCont ul li {
    width: 100%;
    max-width: 400px;
    margin: 0 auto 10px;
  }
}

/*----------------------------------------
* 床つくりページ　個別
----------------------------------------*/
/*LP*/
.floor header {
  border-bottom-color: #e00012;
}

.floor .l-featureCont .ttl--feature {
  text-align: center;
}

.floor .l-useCont .l-secCont__box {
  padding: 20px;
}

.floor .l-useCont .ttl--use {
  display: inline-block;
  width: 140px;
  margin-left: -20px;
  margin-bottom: 1em;
  padding: 0 30px;
}

/*英語*/
.floor.page-en .l-useCont .ttl--use {
  width: auto;
}

.floor .l-useCont .tsukau .ttl--use {
  background: #4D9191;
}

.floor .l-useCont .miseru .ttl--use {
  background: #B74242;
}

.floor .l-useCont .ttl--use p {
  font-size: 1.2em;
  font-weight: bold;
  color: #fff;
}

.floor .l-useCont .tsukau {
  background: #DCEFEF;
}

.floor .l-useCont .miseru {
  background: #F2D8D8;
}

.floor .l-diamaticCont figure {
  max-width: 380px;
  margin: 0 auto 30px;
}

.floor .p-logoSpc {
  vertical-align: middle;
  margin-left: 0.5em;
}

.floor .p-logoSpc img {
  width: 220px;
}

.floor .l-contact .l-contact__box {
  border-color: #003287;
}

.floor .l-contact .l-contact__title p {
  color: #003287;
}

.floor .l-contact .l-contact__title:after {
  background-color: #003287;
}

.floor .linkbtn02.form {
  background-color: #003287;
}

.floor .linkbtn02.form:hover {
  background-image: url('../images/common/icon/mail-blue2.png');
  background-color: #fff;
  color: #003287;
}

@media screen and (min-width:769px) {
  .floor.lp .l-inner {
    max-width: 970px;
  }

  .floor .l-featureCont li {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 1em;
  }

  .floor .l-featureCont .desc--feature {
    width: 73%;
  }

  .floor .l-featureCont .ttl--feature {
    width: 25%;
    text-align: center;
    margin-right: 2%;
  }
}

@media screen and (max-width:768px) {
  .floor.lp .c-ttlh2 {
    font-weight: bold;
  }

  .floor .l-featureCont .ttl--feature {
    width: 100%;
  }

  .floor .p-logoSpc img {
    width: 150px;
  }
}

/*ブラストラック*/
.floor .secCont-slide.top-slide .l-inner {
  max-width: 970px;
}

.floor .l-floorCont .floor-item .ttl {
  font-weight: bold;
  text-align: center;
  background: #f1f1f1;
  padding: 5px 0;
  margin-bottom: 0.5em;
}

.floor .l-floorCont .floor-item figure {
  margin-bottom: 0.5em;
}

.floor .l-floorCont .floor-item li {
  font-size: 0.9em;
}

@media print, screen and (min-width: 769px) {
    .floor .secCont-slide {
      margin-top: 50px;
    }
}


/*----------------------------------------
* 粉体ページ　個別
----------------------------------------*/

/* header  */
@media print, screen and (min-width: 769px) {
  .powder .gnav > li {
    width: calc(100% / 5);
  }
}

.powder .effectSec .col-item__effect {
  padding: 25px 20px 20px;
  text-align: center;
  position: relative;
}

.powder .effectSec .col-item__effect .item__ttl {
  min-height: 90px;
  border-bottom: solid 1px #ddd;
  padding-bottom: 1em;
  margin-bottom: 1em;
  display: flex;
  align-items: center;
  justify-content: center;
}

.powder .effectSec .col-item__effect .item__ttl p {
  font-size: 1.2em;
  font-weight: bold;
}

.powder .effectSec .col-item__effect::before {
  content: '';
  width: 80px;
  height: 80px;
  display: inline-block;
  border-radius: 200px;
  position: absolute;
  left: 18%;
  top: 15px;
  z-index: -900;
}

.powder .effectSec .col-item__effect.green::before {
  background-color: #c1d5c1;
}

.powder .effectSec .col-item__effect.pink::before {
  background-color: #f0d9d9;
}

.powder .effectSec .col-item__effect.blue1::before {
  background-color: #c3e0e1;
}

.powder .effectSec .col-item__effect.blue2::before {
  background-color: #c7d9ea;
}

.powder .effectSec .col-item__effect.yellow::before {
  background-color: #f7edc9;
}

.powder .effectSec .col-item__effect.pueple::before {
  background-color: #dddaec;
}

@media screen and (max-width:768px) {
  .powder .effectSec .col-item__effect {
    border: solid 1px #ddd;
  }
}

/*粉体第2階層*/
.powder.second .secTop {
  margin-top: 50px;
}

.powder.second .secTop__img,
.powder .c-secTop__img {
  position: relative;
}

.powder.second .secTop .sub-ttl,
.powder .c-secTop__img__sub-ttl {
  position: absolute;
  bottom: -10px;
  background: rgba(0, 0, 0, .7);
  /*background: #999;*/
  padding: .5em 1.5em;
  box-shadow: 4px 4px rgba(0, 0, 0, .4);
  min-width: 160px;
  text-align: center;
  letter-spacing: .2em;
}
.powder .c-secTop__img__sub-ttl {
  bottom: -1.5em;
  right: -1em;
}
.powder.second .secTop .sub-ttl p,
.powder .c-secTop__img__sub-ttl p {
  color: #fff;
  display: block;
}
.powder.second .secTop .sub-ttl.white,
.powder .c-secTop__img__sub-ttl.white {
  background: rgba(255, 255, 255, .9);
}
.powder.second .secTop .sub-ttl.white p,
.powder .c-secTop__img__sub-ttl.white p {
  color: #000;
}

.c-flowItem {
  position: relative;
  padding: 15px;
}
.c-flowItem.is-styleChange {
  display: flex;
}

@media print, screen and (min-width: 769px) {
  .c-flowItem.is-styleChange {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
}

@media screen and (max-width:768px) {
  .c-flowItem.is-styleChange {
    align-items: center;
    gap: 20px;
    border: solid 1px #EEE;
    padding: 10px 15px;
    border-radius: 10px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  }
  .c-flowItem.is-styleChange .c-flowItem__text {
    text-align: left;
    order: 1;
    width: 100%;
  }
  .c-flowItem.is-styleChange .c-flowItem__img {
    min-width: 25%;
    max-width: 25%;
    width: 25%;
    order: 2;
  }
  .col-item.c-flowItem.is-styleChange::after {
    bottom: -16px;
  }
}

.col-item.c-flowItem::after {
  content: '';
  position: absolute;
  transform: translateY(50%);
  bottom: 50%;
  right: -8%;
  width: 0;
  height: 0;
  border: none;
  border-left: 16px solid #ccc;
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
}

.col-item.c-flowItem:last-child::after {
  content: none;
}

.col-item.c-flowItem.c-flowItem--hacchu::before {
  content: "発 注";
  display: block;
  background-color: #e60012;
  color: #fff;
  position: absolute;
  left: -2rem;
  top: 10%;
  writing-mode: vertical-lr;
  font-weight: bold;
  padding: .6em .2em;
  border-radius: 4px;
}

@media screen and (max-width:768px) {
  .col-item.c-flowItem::after {
    transform: translateX(50%);
    right: 50%;
    bottom: -8%;
    width: 0;
    height: 0;
    border: none;
    border-top: 16px solid #ccc;
    border-right: 20px solid transparent;
    border-left: 20px solid transparent;
  }

  .col-item.c-flowItem img {
    max-width: 200px;
  }

  .col-item.c-flowItem.c-flowItem--hacchu::before {
    writing-mode: unset;
    margin: auto;
    position: inherit;
    left: 0;
    right: 0;
    top: 0;
    margin: auto;
    padding: .4em;
  }
}

/*混練機ミックスマラー*/
@media screen and (max-width:768px) {
  .powder table .konren-mix__wd80{
    width: 80px;
  }
}

/*英語ページ*/
.secTop.mainImg .page-en__powder.l-mainDisc--top .p-mainDisc__box p {
  line-height: 1.5;
  padding: 15px;
}

@media print, screen and (min-width: 769px) {
  .page-en__powder.l-mainDisc--top {
    width: 450px;
    right: 3% !important;
  }
}

@media print, screen and (min-width: 769px) {
    .powder.second .secTop .sub-ttl {
      /* left: -15px;*/
      right: 20px;
    }
}

@media screen and (max-width:768px) {
  .powder.second .secTop .sub-ttl {
    right: 0;
  }
  .powder.second .secTop .sub-ttl p,
  .powder .c-secTop__img__sub-ttl p {
    font-size: 1.2rem;
  }

  /* .is-styleChange */
  .powder .c-secTop__img__sub-ttl.is-styleChange {
    width: 100%;
    bottom: 0;
    right: 0;
    box-shadow: none;
    padding: 0.25em 0.5em;
  }
  .powder .c-secTop__img__sub-ttl.is-styleChange p {
    font-size: 1rem;
  }
}


/*----------------------------------------
* LPページ　個別
----------------------------------------*/
/*トップ*/
.lp .secTop {
  margin-top: 128px;
  min-height: 500px;
  background-size: cover;
  background-repeat: no-repeat;
}
@media screen and (min-width:769px) {
  .lp .secTop.height-low {
    min-height: 400px;
  }
}


@media screen and (max-width:768px) {
  .lp .secTop {
    margin-top: 75px;
    min-height: 350px;
    background-size: cover;
    background-position: center;
  }
}

/*各種ダウンロード*/
.l-contact.download .l-colWrap {
  justify-content: space-between;
}

@media screen and (min-width:769px) {
  .l-contact.download .l-colWrap .col-item {
    margin-bottom: 0;
  }
}

@media screen and (max-width:768px) {
  .l-contact.download .l-colWrap .col-item {
    margin-bottom: 20px;
  }

  .l-contact.download .l-colWrap .col-item:last-child {
    margin-bottom: 0;
  }
}

/*ジクサー*/
@media screen and (min-width:769px) {
  .force-sensor.lp .table-style02 table {
    width: 100%;
  }
  /*.force-sensor.lp .logo-kawasaki {
    max-width: 350px;
  }*/
}

@media screen and (min-width:769px) {
  .force-sensor.lp .movie .l-youtubeWrap {
    width: 80%;
  }
}

/*英語ページ*/
.force-sensor.page-en .p-exBox {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.force-sensor.page-en .p-exBox__img {
  margin-top: auto;
}

/*ePVS*/

.epvs.lp .merit .col-item {
  display: flex;
  align-items: center;
  position: relative;
  border: 1px solid #555;
  background: rgba(255, 255, 255, 0.6);
}

.epvs.lp .merit .col-item .No {
  font-style: italic;
  color: #555;
  font-weight: bold;
  font-size: 1.6em;
  width: 15%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

.epvs.lp .merit .col-item .text {
  padding-left: 50px;
}

/*三角矢印*/
.triangle-under {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 40px 75px 0 75px;
  border-color: #333333 transparent transparent transparent;
  margin: 0 auto;
}

.triangle-under2 {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 25px 25px 0 25px;
  border-color: #ccc transparent transparent transparent;
}

/*ePVS導入事例*/

/* .linkbtn_lp */
.linkbtn_lp {
  display: flex;
  align-items: center;
  background: url(../images/common/icon/arrow-black.png) no-repeat center right 10px;
  background-color: #fff;
  /*background-color: #333;*/
  background-size: 5px;
  padding: 1em 1.5em 1em 1.5em;
  min-width: 320px;
  border: 2px solid #333;
  vertical-align: middle;
}

.linkbtn_lp .no {
  line-height: 1.2;
  text-align: center;
}

.linkbtn_lp .no2 {
  font-size: 1.5em;
}

.linkbtn_lp .text {
  padding-left: .8em;
  margin-left: .8em;
  border-left: 2px solid;
  font-size: 1.3em;
}

.linkbtn_lp:hover {
  background-image: url(../images/common/icon/arrow-red.png);
  background-color: #fff;
  border: 2px solid #e60012;
  opacity: 1;
}

.linkbtn_lp:hover * {
  color: #e60012;
}

.linkbtn_lp.active {
  background-color: #333;
  background-image: url(../images/common/icon/arrow-white.png);
}

.linkbtn_lp.active * {
  color: #fff;
}

.linkbtn_lp.active:hover {
  border: 2px solid;
  opacity: .8;
}

/*タイトル*/
.epvs.lp .example .case-title {
  width: 100%;
  min-height: 110px;
  position: relative;
  display: flex;
  align-items: center;
  padding: 20px;
}

.epvs.lp .example .case-title img {
  position: absolute;
  bottom: 0;
  left: 18px;
  z-index: 1;
}

.epvs.lp .example .case-title .case-title__text {
  position: relative;
  z-index: 2;
  margin-left: 140px;
  padding-left: 15px;
  border-left: 6px solid #e20012;
  background: rgba(255, 255, 255, 0.4);
}

.epvs.lp .example .case-title .case-title__text span {
  vertical-align: middle;
}

.epvs.lp .example .case-title .case-title__text .caseNo {
  font-size: .8rem;
  color: #fff;
  display: inline-block;
  background: #e20012;
  padding: .2em .5em .1em;
  border-radius: 10px;
  margin-right: 10px;
}

@media screen and (max-width: 768px) {
  .epvs.lp .example .case-title img {
    opacity: .8;
  }

  .epvs.lp .example .case-title .case-title__text {
    margin-left: 0px;
    width: 100%;
    padding-top: 3px;
    padding-bottom: 3px;
  }
}

.epvs.lp .example .c-ttlh4-2 {
  font-size: 1.4em;
}

/*タグ*/
.epvs.lp .example_result .tag {
  padding: .2em .8em .1em;
  text-align: center;
  background-color: #ccc;
  color: #fff;
  border-radius: 10px;
  font-weight: bold;
  margin-right: 1em;
  display: inline-block;
  min-width: 80px;
}

.epvs.lp .example_result .tag.before {
  background-color: #333;
}

.epvs.lp .example_result .tag.after {
  background-color: #e20012;
}

/*ビフォーアフター*/

.epvs.lp .example_result dt,
.epvs.lp .example_result dd {
  display: flex;
}

.epvs.lp .example_result dt .tag,
.epvs.lp .example_result dd .tag {
  display: flex;
  align-items: center;
  justify-content: center;
}

.epvs.lp .example_result dt {
  margin-bottom: 50px;
  position: relative;
}

.epvs.lp .example_result dt::after {
  content: url(../product/epvs/images/arrow01.png);
  position: absolute;
  bottom: -42px;
  left: 25px;
}

.epvs.lp .example_result_imgSpc {
  display: flex;
  align-items: center;
  margin: 20px 0;
  text-align: center;
  justify-content: center;
}

.epvs.lp .example_result_imgSpc .arrow.pc {
  margin: 0 15px;
}

@media screen and (max-width: 768px) {
  .epvs.lp .example_result .tag {
    margin-right: 0 !important;
  }

  .epvs.lp .example_result dt,
  .epvs.lp .example_result dd {
    display: block;
  }

  .epvs.lp .example_result dt .tag,
  .epvs.lp .example_result dd .tag {
    margin-bottom: 10px;
  }

  .epvs.lp .example_result dt::after {
    content: url(../product/epvs/images/arrow01_sp.png);
    left: 42.5%;
  }

  .epvs.lp .example_result_imgSpc {
    flex-wrap: wrap;
  }

  .epvs.lp .example_result_imgSpc .item {
    width: 100%;
  }

  .epvs.lp .example_result_imgSpc .arrow.sp {
    margin: 15px auto;
  }
}

/*----------------------------------------
* 検査・測定　個別
----------------------------------------*/
/*電気特性検査装置*/
.test-measure-electro .max250 img {
  max-width: 250px;
}

/*耐久性測定装置*/
.test-measure-car .intro {
  padding: 40px 0;
}

.test-measure-car .intro .secCont-link .col-item a h4 {
  color: #f19100;
}

.test-measure-car .intro .secCont-link .col-item a:hover {
  background: rgba(255, 255, 255, .5);
}

.test-measure-car .l-flexBox .itemimage_wrap {
  display: flex;
}

.test-measure-car .l-flexBox figucaption {
  display: block;
  margin-top: 5px;
}

@media screen and (min-width: 769px) {
  .test-measure-car .l-flexBox .itemimage_wrap img {
    max-width: 270px;
  }

  .test-measure-car .max200 img {
    max-width: 200px !important;
  }
}

@media screen and (max-width: 768px) {
  .test-measure-car .l-flexBox .itemimage_wrap {
    flex-wrap: wrap;
  }

  .test-measure-car .l-flexBox .itemimage_wrap figure {
    width: 48%;
    padding: 0 1%;
    margin-bottom: 15px;
  }
}

/*----------------------------------------
* サーボプレス
----------------------------------------*/
/*TOP*/
.p-stackWrap {
  position: relative;
}

.p-stacWrap__imgBox {
  width: 65%;
}

.p-stackWrap__textBox {
  width: 50%;
  position: absolute;
  bottom: 30px;
  right: 0;
  box-shadow: 5px 5px #eee;
  padding: 20px;
}

@media screen and (max-width:768px) {
  .p-stackWrap {
    padding-bottom: 60px;
  }

  .p-stackWrap__textBox {
    width: 92%;
    bottom: 15px;
  }
}

/*パネルリンクに関連タグ*/
.c-panelTextarea .panelTtl.textCut {
  vertical-align: top;
  padding: .01em .4em;
}

.c-panelTextarea .panelTtl.textCut p {
  font-size: 14px;
}

.border-radius-5px {
  border-radius: 5px;
}

.textCut.min-width70 {
  min-width: 70px;
  text-align: center;
}

/*用途事例*/
span.tag.new.red {
  color: #fff;
  background: red;
  font-size: 11px;
  padding: .2em .6em .1em;
  vertical-align: middle;
}

/*製品ページ*/
/*----------------------------------------
* サーボプレス
----------------------------------------*/
.servo-press.application .gif img {
  max-width: 250px;
}

@media screen and (min-width:769px) {
  .product.servo-press .breadcrumb {
    margin-top: 170px;
  }
}

/*----------------------------------------
* 電動シリンダ
----------------------------------------*/
.electric-cylinder.lineup .c-pageTitle .textSmall {
  font-size: .65em;
}

.c-anchorLink-spc.p-Linkorange li {
  border: solid 1px #f19100;
}

.c-anchorLink-spc.p-Linkorange li a {
  background-color: #fff;
  min-height: 5em;
  color: #f19100;
  background-image: url(../images/common/icon/arrow-orange.png);
}

.c-anchorLink-spc.p-Linkorange li a:hover {
  background-color: #f19100;
  color: #fff !important;
  opacity: 1;
  background-image: url(../images/common/icon/arrow-white.png) !important;
}

@media screen and (min-width:769px) {
  .s-precision .breadcrumb {
    margin-top: 170px;
  }
  .electric-cylinder .breadcrumb {
    margin-top: 170px;
  }
}

@media screen and (min-width:769px) {
  .electric-cylinder.Toppage .c-anchorLink-spc.p-Linkorange li {
    width: 31%;
  }
}

@media screen and (min-width:769px) {
  .c-anchorLink-spc.item5 li {
    width: 18.96%;
  }

  .c-anchorLink-spc.item5 li:nth-child(4n) {
    /*! margin-right: 1.3% !important; */
  }

  .c-anchorLink-spc.item5 li:nth-child(5n) {
    margin-right: 0% !important;
  }

  .c-anchorLink-spc.item5 li:nth-child(6n) {
    /*! margin-right: 0 !important; */
  }
}

/*電動シリンダEND_CYAP-D*/
.electric-cylinder .tokucho .img-wrap {
  max-width: 450px;
  margin: auto;
}

@media screen and (min-width:769px) {
  .electric-cylinder .tokucho .text-wrap {
    min-height: 170px;
  }
}

/*電動シリンダTOP_改修*/

/* 冒頭部分 */
.electric-cylinder.Toppage .p-dlTtl {
  font-weight: bold;
  font-size: 1.5em;
}
.electric-cylinder.Toppage .p-introTtl p {
  font-weight: bold;
  line-height: 1.65;
}
.electric-cylinder.Toppage .p-introTtl .sub {
  font-size: 1.7em;
}
.electric-cylinder.Toppage .p-introTtl .main {
  font-size: 2.5em;
}

@media screen and (max-width: 768px) {
  .electric-cylinder.Toppage .p-dlTtl {
    font-size: 1.1em;
  }
  .electric-cylinder.Toppage .p-introTtl .sub {
    font-size: 0.9em;
    margin-top: 5px;
  }
  .electric-cylinder.Toppage .p-introTtl .main {
    font-size: 1.5em;
  }
}

/* 特長 */
.electric-cylinder .tokucho__item {
  padding: 30px 15px;
  position: relative;
  box-shadow: 0 0 4px rgba(0, 0, 0, .15);
}
.electric-cylinder .tokucho__item::before {
  content: "1";
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 70px;
  background: #555;
  color: #fff;
  position: absolute;
  top: -5px;
  left: 15px;
  font-weight: bold;
  font-size: 1.3em;
  line-height: 1;
  border-radius: 3px 3px 0 0;
}
.electric-cylinder .tokucho__item::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 20px 10px 20px;
  border-color: transparent transparent #fff transparent;
  top: 55px;
}
.electric-cylinder .tokucho__item:nth-child(2):before {
  content: "2";
}
.electric-cylinder .tokucho__item:nth-child(3):before {
  content: "3";
}
.electric-cylinder .tokucho__item:nth-child(4):before {
  content: "4";
}
.electric-cylinder .tokucho .text-wrap {
  padding: 15px;
}

@media screen and (min-width:769px) {

}

@media screen and (max-width: 768px) {
  .electric-cylinder .tokucho__item {
    padding-top: 40px;
  }
  .electric-cylinder .tokucho__item::before {
    width: 30px;
    height: 45px;
    font-size: 1.1em;
    padding-bottom: 5px;
  }
  .electric-cylinder .tokucho__item::after {
    border-width: 0 15px 5px 15px;
    top: 40px;
  }
}

/* 続きを読む */

.morereedBox {
  position: relative;
  padding-bottom: 15px;
}
.morereedBox label {
  position: absolute;
  z-index: 1;
  bottom: 0;
  width: 100%;
  height: 230px; /*グラデーションで隠す高さ*/
  cursor: pointer;
  text-align: center;
  background: linear-gradient(to bottom, rgba(255,255,255, 0) 0%, rgba(255,255,255, 0.95) 90%);
}
.morereedBox input:checked + label {
  background: inherit;
}
.morereedBox label:after {
  display: block;
  position: absolute;
  z-index: 2;
  bottom: 20px;
  left: 50%;
  width: 230px;
  content: '続きを読む';
  transform: translate(-50%, 0);
  color: #fff;
  background-color: #555;
  padding: .3em .5em;
  font-size: .85em;
  border-radius: 25px;
}
.morereedBox input {
  display: none;
}
.morereedBox__content {
  overflow: hidden;
  height: 280px;
  transition: all 0.5s;
}
.morereedBox input:checked + label {
  /* display: none ; */ /* ボタンを消すCSS */
}
.morereedBox input:checked + label:after {
  content: '閉じる';
}
.morereedBox input:checked ~ .morereedBox__content {
  height: auto;
  padding-bottom: 60px;
  transition: all 0.5s;
}
@media screen and (max-width: 768px) {
  .morereedBox__content {
    height: 500px;
  }
}

/*英語ページ*/

@media print, screen and (min-width: 769px){
.product.electric-cylinder.page-en .mainImg-index {
  margin-top: 0;
}
}

/*----------------------------------------
* 分散装置ディスパライザー
----------------------------------------*/
@media screen and (max-width: 768px) {
  .disperizer-index h1 {
    line-height: 1.3 !important;
  }
}


/*----------------------------------------
* 製品ページ
----------------------------------------*/
/*見出し*/
.product .c-pageTitle,
.product .c-ttlh2,
.product .c-ttlh3,
.product .c-ttlh3-2,
.product .c-ttlh3-3 {
  font-weight: bold;
}

.product main h1 {
  font-size: 3em;
  line-height: 1.5;
}

.p-ttl_backNum {
  position: relative;
  margin-bottom: 30px;
}

.p-ttl_backNum h2 {
  margin-left: 1.5em;
}

.p-ttl_backNum::before {
  content: '';
  background-repeat: no-repeat;
  width: 120px;
  height: 80px;
  display: inline-block;
  position: absolute;
  z-index: -1;
  transform: translateY(-35%);
}

.p-ttl_backNum.num01::before {
  background-image: url(../product/images/icon/ttl-01.png);
}

.p-ttl_backNum.num02::before {
  background-image: url(../product/images/icon/ttl-02.png);
}

.p-ttl_backNum.num03::before {
  background-image: url(../product/images/icon/ttl-03.png);
}

.p-ttl_backNum.num04::before {
  background-image: url(../product/images/icon/ttl-04.png);
}

@media screen and (min-width:769px) {
  .premium-wrap {
    width: 880px;
    margin: 0 auto;
  }
}

@media screen and (max-width:768px) {
  .product h1 {
    font-size: 22px;
    line-height: 1.3;
  }

  .product main h1 {
    font-size: 1.8em;
    line-height: 1.5;
    padding-bottom: 0.5em;
  }
}

/*ラインアップ*/
.secCont-lineup .p-lineup__list figure {
  border-bottom: solid 1px #ddd;
  padding: 20px;
}

.secCont-lineup .p-lineup__list p {
  padding: 10px 20px;
  font-weight: bold
}

/*ラインアップ（.styleChange）*/
.secCont-lineup .is-styleChange .l-flexBox {
  padding: 30px;
}
.secCont-lineup .p-lineup__list.is-styleChange figure {
  border: none;
  padding: 0;
}
.secCont-lineup .p-lineup__list.is-styleChange p {
  font-weight: normal;
  padding: 0;
}
.secCont-lineup .p-lineup__list_ttl {
  display: flex;
  align-items: center;
  border-bottom: solid 1px #DDD;
  padding-bottom: 15px;
  margin-bottom: 20px;
}
.secCont-lineup .p-lineup__list_ttl h3 {
  margin-right: 1em;
  max-width: 50%;
}
.secCont-lineup .p-lineup__list_ttl .p-desc {
  border: none;
}

@media screen and (max-width:768px) {
  .secCont-lineup .is-styleChange .l-flexBox {
    padding: 0 0 30px;
  }
  .secCont-lineup .p-lineup__list.is-styleChange .l-flexBox__spc01 {
    margin-bottom: 20px;
  }
  .secCont-lineup .p-lineup__list.is-styleChange figure {
    max-width: 300px;
    margin: 0 auto;
  }
  .secCont-lineup .p-lineup__list_ttl h3 {
    max-width: 100%;
  }
  .secCont-lineup .p-lineup__list_ttl {
    display: block;
  }
  .secCont-lineup .p-lineup__list_ttl .p-desc br {
    display: none;
  }
}

/*製品詳細*/
.sec-product .c-box {
  padding: 30px;
}

.sec-product .c-box li {
  margin-bottom: 0;
}

@media screen and (max-width:768px) {
  .sec-product .c-box {
    padding: 15px;
  }
}

/*おすすめ商品*/
.secCont-recommend {
  display: none;
}

.secCont-recommend .col-item a {
  border: solid 1px #DDD;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 20px 20px;
}

.secCont-recommend .col-item a p {
  font-weight: bold;
  text-align: left;
}

.secCont-recommend .col-item a::after {
  content: '\0025e2';
  position: absolute;
  right: 10px;
  bottom: 10px;
  line-height: 1;
  font-size: 10px;
  color: #CCC;
}


@media print, screen and (min-width: 769px){
  .secCont-recommend .col-item {
    width: calc(100% / 3 - 6em);
    text-align: center;
    margin-right: 3em;
  }
  .secCont-recommend .col-item:last-child{
    margin-bottom: 50px!important;
  }
  .secCont-recommend .col-item a{
    height: 100%;
  }
  .secCont-recommend .col-item a figure{
    width: 80%;
    margin: 0 auto;
  }
  .secCont-recommend .col-item a p{
    margin: 0 auto 1em;
  }
}

@media screen and (max-width:768px){
  .secCont-recommend .col-item a{

    padding: 10px;
  }
  .secCont-recommend .col-item a figure{
    width: 40%;
  }
  .secCont-recommend .col-item a p{
    width: 58%;
    order: 2;
    font-size: 0.9rem;
    padding-left: 0.5rem;
  }
}

/*事業部お問い合わせ*/
.l-contact {
  margin-top: 50px;
}
.l-contact .l-contact__box {
  border: solid 3px;
  border-color: #e60012;
  margin: 0 auto;
  padding: 20px 3%;
  max-width: 780px;
}

.l-contact .l-contact__title p {
  color: #e60012;
  font-size: 1.2em;
  font-weight: bold;
}

.l-contact .l-contact__title {
  text-align: center;
  margin-bottom: 1.5em;
  position: relative;
}

.l-contact .l-contact__title:after {
  content: '';
  display: inline-block;
  width: 100px;
  height: 1px;
  background-color: #e60012;
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
}

.l-contact .p-telNum,
.l-contact .p-faxNum {
  font-size: 2.5em;
  font-weight: bold;
  display: inline-block;
}

.l-contact .l-contact__cont {
  text-align: center;
}

.l-contact .l-contact__cont .p-contact__item {
  margin: 0 0 15px;
}

.l-contact .l-contact__cont .p-contact__item:last-child {
  margin-bottom: 0 !important;
}

.l-contact .p-contact__item a::before,
.l-contact .p-contact__item p::before {
  content: '';
  display: inline-block;
  width: 30px;
  height: 30px;
  background-size: 30px;
  background-repeat: no-repeat;
  vertical-align: middle;
  margin-right: 0.3em;
  margin-bottom: 5px;
}
.l-contact .p-contact__item a.pdf::before {
  display: none;
}
.l-contact .p-contact__item a.icon::after{
  margin-left: 0;
}
.l-contact .linkbtn02.form {
  padding: 1em 70px;
  line-height: 1.5;
}
.l-contact .linkbtn02.form:before {
  display: none;
}

/*事業部お問い合わせ TEL&FAX*/
.l-contact .tel-fax .p-telNum::before{
  background-image: url("../images/common/icon/tel.png");
  background-position: inherit;
}
.l-contact .tel-fax .p-faxNum::before{
  background-image: url("../images/common/icon/fax.png");
}
.l-contact .p-contact__item.tel-fax a::before{
  content: none;
}

@media print, screen and (min-width: 769px){
  .l-contact .l-contact__cont {
    display: flex;
    flex-direction: column;
    /* align-items: flex-end; */
  }
  .l-contact .l-contact__cont .p-contact__item .l-colWrap .col-item a.linkbtn02 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
  }
  .l-contact .l-colWrap .col-item {
    margin-bottom: 0;
  }
  .l-contact .l-colWrap .col-item a {
    width: 100%;
    line-height: 1.5;
    font-size: 16px;
  }
  .l-contact .l-colWrap .col-item a.linkbtn02::before {
    display: none;
  }
  .l-contact .tel-fax .p-telNum{
    margin-right: 15px;
  }
  .l-contact .tel-fax .p-faxNum{
    margin-left: 15px;
  }
  .l-contact .tel-fax .p-telNum::before{
    margin-right: 0.2em;
  }
}

@media screen and (max-width:768px) {
  .l-contact .l-contact__box {
    padding: 20px 10px 10px;
  }
  .l-contact .p-telNum,
  .l-contact .p-faxNum {
    font-size: 2em;
    display: block;
  }
  .l-contact .l-contact__cont .p-contact__item {
    margin: 0 0 10px;
  }
  .l-contact .l-contact__cont .p-contact__item .col-item {
    margin-bottom: 10px;
  }
  .l-contact .l-contact__cont a.icon::after {
    content: none;
    margin-left: 0;
  }
  .l-contact .l-contact__title p{
    font-size: 1em;
    line-height: 1.6;
  }
  .l-contact .linkbtn02.form {
    background-size: 1.5em;
    padding: 1em 3em;
    background-position: center left 1.5em;
  }
}

/* 英語ページ */
.l-contact.is-en .l-contact__cont .p-contact__item {
  margin-bottom: 30px;
}

@media print, screen and (min-width: 769px){
  .l-contact {
    margin-top: 80px;
  }
  .l-contact.is-en .l-contact__box {
    padding: 40px;
    max-width: 850px;
  }
}

@media screen and (max-width:768px) {

}

/* お問い合わせフローティング */
.l-contact--floating.fixed {
  position: fixed;
  z-index: 100;
}
.l-contact--floating.fixed {
  bottom: 27px;
  right: 100px;
  margin-top: 0;
}
.l-contact--floating.fixed .p-contact__item {
  padding: 0;
}
.l-contact--floating.fixed a {
  font-size: 18px;
}
.l-contact--floating.fixed .l-contact__title,
.l-contact--floating.fixed .l-contact__title::after,
.l-contact--floating.fixed .p-contact__item.tel-fax {
  display: none;
}
.l-contact--floating.fixed .fixed-none {
  display: none;
}
.l-contact--floating.fixed .l-contact__title span.pc {
  display: inline-block !important;
}
.l-contact--floating.fixed .l-contact__box {
  border: none;
  padding: 0 !important;
}
.l-contact--floating.fixed .p-contact__item a {
  font-weight: bold;
  padding: 10px 10px 10px 30px !important;
  background-position: center left 15px !important;
  border-radius: 8px;
  box-shadow: 0 2px 2px rgb(0 0 0 / 30%);
  font-size: 18px;
}
.l-contact--floating.fixed .p-contact__item.is-onlyFloating {
  display: flex;
}
.l-contact--floating:not(.fixed) .p-contact__item.is-onlyFloating {
  display: none !important;
}
.l-contact--floating.fixed .form.is-iconNone::after {
  display: none !important;
}
.l-contact--floating.fixed .form.is-iconNone {
  background-image: none;
}

@media screen and (max-width:768px) {
  .l-contact--floating.fixed {
    bottom: 0;
    transform: translateX(-50%);
    left: 50%;
    width: 100%;
    background: rgb(255 255 255 / 85%);
    box-shadow: 0 -3px 2px rgb(0 0 0 / 8%);
  }
  .l-contact--floating.fixed .p-contact__item a {
    font-weight: bold;
    padding: 10px 30px 10px 50px !important;
    background-position: center left 15px !important;
    font-size: 0.9em !important;
    width: 70% !important;
    min-width: auto;
    margin: 0 auto;
    box-shadow: none;
  }
  .l-contact--floating.fixed .l-inner {
    padding: 10px !important;
  }
}

/* 横に固定 */
@media print, screen and (min-width: 1720px) {
  .l-contact--floating.fixed.is-option {
    top: auto;
    bottom: 100px;
  }

  .l-contact--floating.fixed.is-option .form {
    width: 250px;
    min-width: 250px;
    padding: 3em 0 1.5em 0 !important;
    writing-mode: initial;
    font-size: 1rem;
    padding: 15px 20px 15px 40px !important;
  }
  .l-contact--floating.fixed.is-option .form::after {
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
  }
}

@media print, screen and (min-width: 769px) {
  .l-contact--floating.fixed .l-contact__cont .p-contact__item:not(.tel-fax) {
    display: flex;
    justify-content: flex-end;
  }
  .l-contact--floating.fixed {
    bottom: auto;
    top: calc(50% - 80px);
    right: 0;
    transform: translateY(-50%);
  }
  .l-contact--floating.fixed.is-item2 {
    display: block;
    top: 50%;
  }
  .l-contact--floating.fixed .l-inner {
    padding: 0;
  }
  .l-contact--floating.fixed .p-contact__item a {
    width: 5em;
    min-width: auto;
    padding: 3em 0 1.5em 0 !important;
    border-radius: 10px 0 0 10px;
    writing-mode: vertical-rl;
    display: flex;
    align-items: center;
    box-shadow: 0 2px 8px rgba(0,0,0,0.4);
    transition: 0.2s;
    background-image: none;
  }
  .l-contact--floating.fixed .p-contact__item a:hover {
    width: 6em;
    padding-right: 1em !important;
    opacity: 1;
    background-image: none;
  }
  .l-contact--floating.fixed a::after {
    content: '';
    display: block;
    width: 1.2em;
    height: 1.2em;
    background: url('../images/common/icon/mail-white.png') no-repeat center;
    background-size: cover;
    position: absolute;
    top: 1em;
  }
  .l-contact--floating a:hover::after {
    background-image: url('../images/common/icon/mail-red.png');
  }

  .l-contact--floating.fixed .form.is-iconNone {
    padding-top: 1.5em !important;
  }


  /* 事業部の色変更 */
  .theme-blue .l-contact--floating a:hover::after {
    background-image: url('../images/common/icon/mail-blue.png');
  }
  .theme-blue2 .l-contact--floating a:hover::after {
    background-image: url('../images/common/icon/mail-blue2.png');
  }
  .theme-pink .l-contact--floating a:hover::after {
    background-image: url('../images/common/icon/mail-red.png');
  }
  .theme-green .l-contact--floating a:hover::after {
    background-image: url('../images/common/icon/mail-green.png');
  }
  .theme-orange .l-contact--floating a:hover::after {
    background-image: url('../images/common/icon/mail-orange.png');
  }
  body.floor .l-contact--floating a:hover::after {
    background-image: url('../images/common/icon/mail-blue2.png');
  }
}

/*エリア別の問い合わせ*/
.contact-area p {
  position: relative;
  display: inline-block;
  width: 75%;
}

.contact-area p::before,
.contact-area p:after {
  content: '';
  position: absolute;
  top: 48%;
  display: inline-block;
  width: 38%;
  height: 1px;
  background-color: #333;
}

.contact-area p:before {
  left: 0;
}

.contact-area p:after {
  right: 0;
}

@media screen and (max-width:768px) {
  .contact-area p {
    width: 100%;
  }
}

/*ビフォーアフター*/
.secCont-ba .img-before,
.secCont-ba .img-after {
  margin: 0 1em;
  position: relative;
}

.secCont-ba .img-before:after {
  content: '▶';
  position: absolute;
  top: 43%;
  right: -2em;
  color: #666;
}

.secCont-ba .col-item {
  margin-bottom: 20px;
}

@media screen and (max-width:768px) {
  .secCont-ba .l-colWrap.item-ba .col-item {
    width: 48%;
    margin-right: 2%;
  }
}

/*ページタイトルの背景が画像*/
.product .mainImg .l-mainDisc {
  padding: 25px;
  background: rgba(255, 255, 255, 0.8);
  display: inline-block;
}
.product .mainImg .l-mainDisc.bg-black {
  background: rgba(0, 0, 0, 0.5);
}

@media screen and (max-width:768px) {
  .product .mainImg {
    padding: 60px 0 40px;
  }
  .product .mainImg .l-mainDisc {
    display: block;
    padding: 15px;
  }
}

/*事業部トップ ページタイトル部分*/
.product .l-mainDisc--top {
  max-width: 570px;
}
.product .l-mainDisc--top .p-mainDisc__box p {
  color: #fff;
  font-size: 1.4em;
  font-weight: bold;
  letter-spacing: 3px;
}

.environment.page-en .l-mainDisc--top {
  max-width: 550px;
}

@media screen and (min-width:769px) {
  .product .mainImg {
    margin-top: 5px;
  }
  .product .mainImg-index{
    margin-top: 160px;
  }
}

@media screen and (max-width:768px) {
  .product .secTop {
    margin-top: 72px;
  }
  .product .l-mainDisc--top .p-mainDisc__box p {
    font-size: 1em;
  }
}

/*事業部トップ イントロ部分*/
.product .l-secCont.intro {
  border-left: solid 10px #e61200;
  padding: 80px 0;
  background: no-repeat center right;
  background-size: 50%;
}
.product .p-intro__item .item--text {
  background-color: #f1f1f1;
  padding: 50px;
}

@media screen and (min-width:769px) {
  .product .p-intro__item {
    width: 45%;
    margin-left: 10%;
  }
  .product .p-intro__item figure {
    margin: 0 0 -50px -30px;
  }
}

@media screen and (max-width:768px) {
  .product .l-secCont.intro {
    background-image: none !important;
    padding: 20px 0 40px;
    border-left-width: 5px;
  }
  .product .p-intro__item .item--text {
    padding: 40px 20px;
  }
}

/*事業部トップ その他*/
.product .l-secCont.bg-gray {
  padding: 50px 0;
}

.product .l-secCont.bg-lightorange {
  padding: 50px 0;
}

.product .l-secCont.bg-lightblue {
  padding: 50px 0;
}

/*事業部トップ　お知らせ部分*/
.secNews {
  margin-top: 50px;
}
.secNews #tags {
  display: flex;
  width: 100%;
}
.secNews #tags li {
  width: calc(100%/4);
  border: solid 1px #DDD;
  border-right: none;
  text-align: center;
  cursor: pointer;
  background: #f5f5f5;
  margin-bottom: 0;
}
.secNews #tags li span {
  display: block;
  padding: 0.5em 1em;
  font-size: 16px;
}
.secNews #tags li:last-child {
  border: solid 1px #DDD;
}
.secNews #tags li .select {
  background: #333;
  color: #FFF;
}
.secNews #choice {
  border: solid 1px #DDD;
  border-top: none;
  border-bottom: none;
}
.secNews #choice dl {
  padding: 20px 50px;
  border-bottom: solid 1px #DDD;
}
.secNews #choice .p-newsBox__item span {
  background: #333;
  display: inline-block;
  width: 90px;
  text-align: center;
  color: #FFF;
  margin-left: 20px;
  border-radius: 20px;
  font-size: 0.8em;
  padding: 4px 1em;
  line-height: 1.2;
}
.secNews #choice .p-newsBox__item.info span {
  background: #108400;
}
.secNews #choice .p-newsBox__item.lineup span {
  background: #df0069;
}
.secNews #choice .p-newsBox__item.exhibition span {
  background: #d85208;
}
.secNews #choice .p-newsBox__item.ir span {
  background: #208fc6;
}

@media print, screen and (min-width: 769px) {
  .secNews #choice dl {
    display: table;
    width: 100%;
  }
  .secNews #choice dl dt,
  .secNews #choice dl dd {
    display: table-cell;
  }
  .secNews #choice dl dt {
    width: 220px;
  }
  .secNews #choice dl dd {
    width: 1090px;
    padding-left: 20px;
  }
  .secNews #choice dl dd figure {
    width: 60px;
    float: left;
    outline: solid 1px #DDD;
    margin: 0 15px 0 0;
  }
}

@media screen and (max-width: 768px) {
  .secNews #choice dl {
    padding: 1em;
  }
  .secNews #choice dl dt {
    margin-bottom: 5px;
  }
  .secNews #choice dl dt span {
    width: 7em;
    margin-left: 1em;
  }
  .secNews #tags li span {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    font-size: 14px;
    padding: 1em;
    line-height: 1.2;
  }
}

/* パネル型 */
.secNews.panel #tags {
  margin-bottom: 30px;
}
.secNews.panel #choice {
  border: none;
}
.secNews.panel #choice dl dt span {
  display: inline-block;
  width: 90px;
  text-align: center;
  color: #FFF;
  margin-left: 20px;
  border-radius: 20px;
  font-size: 12px;
  padding: 2px 1em;
}

@media print, screen and (min-width: 769px) {
  .secNews.panel #choice {
    border: none;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 50px;
  }
  .secNews.panel #choice dl {
    width: 22%;
    display: block;
    border: solid 1px #DDD;
    padding: 20px;
    margin: 0 1.5% 3%;
  }
  .secNews.panel #choice dl dt,
  .secNews.panel #choice dl dd {
    display: block;
    width: 100%;
  }
  .secNews.panel #choice dl dt {
    margin-bottom: 15px;
  }
  .secNews.panel #choice dl dd {
    padding-left: 0;
  }
  .secNews.panel #choice dl dd p {
    font-size: 14px;
  }
  .secNews.panel #choice dl dd figure {
    width: 100%;
    float: none;
    outline: none;
    margin: 0 0 15px 0;
  }
  .secNews.panel .p-newsBox__item {
    width: 22%;
    display: block;
    border: solid 1px #DDD;
    padding: 20px;
    margin: 0 1.5% 3%;
  }
  .secNews.panel .p-newsBox__item__img {
    margin-bottom: 10px;
  }
  .secNews.panel .p-newsBox__item__date {
    margin-bottom: 5px;
  }
}

@media screen and (max-width: 768px) {
  .secNews #choice dl {
    padding: 1em;
  }
  .secNews #choice dl dt {
    margin-bottom: 5px;
  }
  .secNews #choice dl dt span {
    width: 7.5em !important;
    margin-left: 1em;
  }
  .secNews #tags li span {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    font-size: 14px;
    padding: 1em;
    line-height: 1.2;
  }

  /* パネル型 */
  .secNews.panel #choice {
    margin-bottom: 30px;
    border-bottom: solid 1px #DDD;
  }
  .secNews.panel .p-newsBox__item {
    display: flex;
    border: solid 1px #DDD;
    border-bottom: none;
    padding: 1em;
  }
  .secNews.panel .p-newsBox__item__date {
    font-size: 14px;
  }
  .secNews.panel .p-newsBox__item__date span {
    padding: 3px !important;
    line-height: 1;
  }
  .secNews.panel .p-newsBox__item__img {
    width: 30%;
  }
  .secNews.panel .p-newsBox__item__wrap {
    padding-left: 1em;
    width: 70%;
  }
  .secNews.panel .p-newsBox__item__detail p {
    font-size: 14px;
  }
}

/*事業部　お知らせ一覧*/
.secNews .p-newsBox__item span {
  background: #333;
  display: inline-block;
  width: 90px;
  text-align: center;
  color: #FFF;
  margin-left: 20px;
  border-radius: 20px;
  font-size: 0.8em;
  padding: 4px 1em;
  line-height: 1.2;
}
.secNews .p-newsBox__item.noclass span {
  background: #333 !important;
}
.secNews .p-newsBox__item.info span {
  background: #108400;
}
.secNews .p-newsBox__item.lineup span {
  background: #df0069;
}
.secNews .p-newsBox__item.exhibition span {
  background: #d85208;
}
.secNews .p-newsBox__item.ir span {
  background: #208fc6;
}
.sideMenu .side-head {
  display: block;
  background: #555;
  color: #fff;
  padding: 1em;
  font-size: 14px;
}
@media screen and (max-width:768px){
  .secNews .p-newsBox__item span{
    width: 7.5em!important;
  }
}

/*------商品エンドページ------*/

.product-end .l-colWrap .col-item:last-child {
  /*! margin-bottom: 30px; */
}
.product-end .l-secCont.introSec {
  margin-top: 50px;
}
.c-category-ttl {
  padding: 30px 0;
  background: #f7f7f7;
  margin-bottom: 30px;
}
.c-category-ttl h2 {
  font-size: 2.3em;
}
/* .product-end .l-secCont.product-item__Wrap {
  margin-bottom: ;
} */
.flowWrap .col-item {
  position: relative;
}
.flowWrap .col-item .col-p {
  text-align: justify;
}
.flowWrap .col-item:not(:last-child)::after {
  content: '';
  position: absolute;
  top: 45%;
  left: 100%;
  width: 0;
  height: 0;
  border-left: 10px solid #ccc;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  margin-left: 7px;
}

@media screen and (max-width:768px) {
  .product-end .l-secCont.introSec {
    margin-top: 35px;
  }
  .c-category-ttl h2 {
    font-size: 1.4em;
  }
  .flowWrap .col-item {
    position: relative;
  }
  .flowWrap .col-item:not(:last-child)::after {
    content: '';
    position: absolute;
    top: 102%;
    left: 42%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 15px 25px 0 25px;
    border-color: #ccc transparent transparent transparent;
  }
}

/*製品の見出し（写真+ダウンロード）*/
.product-end .l-secCont__box.product-item {
  margin-bottom: 120px;
}
.product-end .product-item__Top {
  border: 1px solid #e7e7e7;
  margin-bottom: 30px;
  padding: 40px 20px;
}
.product-end .product-item__Top .l-colWrap {
  align-items: center;
  justify-content: center;
}
.product-end .product-item__Top .l-colWrap .col-item.imgSpc {
  text-align: center;
  max-width: 350px;
}
.product-end .product-item__Top .l-colWrap .col-item.imgSpc.wide {
  max-width: none;
}
.product-end .product-item__Top .col-item.textSpc .tagWrap {
  margin-bottom: 15px;
}
.product-end .product-item__Top .col-item.textSpc .tagWrap .tag {
  padding: .2em 1em;
  min-width: 6em;
  text-align: center;
  display: inline-block;
  margin-right: 10px;
  margin-bottom: 10px;
  font-size: .9em;
  background: #f2f2f2;
}
.product-end .product-item__Top .col-item.textSpc .tagWrap .tag:last-child {
  margin-right: 0;
}
.product-end .product-item__Top .col-item.textSpc .name {
  margin-bottom: 20px;
}
.product-end .product-item__Top .col-item.textSpc .name .recommend {
  background: #E60012;
  color: #FFF;
  margin-left: 1.5em;
  padding: 0.5em 1em;
  font-size: 0.85em;
  border-radius: 20px;
}
.product-end .product-item__Top .col-item.textSpc .name h3 {
  font-size: 1.8em;
}
.product-end .product-item__Top .col-item.textSpc .name p {
  position: relative;
  margin-bottom: 20px;
}
.product-end .product-item__Top .col-item.textSpc .name p::after {
  content: '';
  display: block;
  width: 4em;
  height: 1px;
  background: #333;
  position: absolute;
  bottom: -10px;
}

.name-item h3 {
  font-size: 1.8em;
}
.name-item p {
  position: relative;
  margin-bottom: 20px;
}
.name-item p::after {
  content: '';
  display: block;
  width: 4em;
  height: 1px;
  background: #333;
  position: absolute;
  bottom: -10px;
}

.product-end .product-item__Top .col-item.textSpc .p-tag-new {
  border: solid 2px #e60012;
  border-radius: 50px;
  display: inline-block;
  padding: 3px 25px;
  margin-bottom: 1rem;
}
.product-end .product-item__Top .col-item.textSpc .p-tag-new p {
  color: #e60012;
}
.product-end .item-spec {
  margin-bottom: 40px;
}
.product-end .l-colWrap.item-spec {
  margin-bottom: inherit;
}
.product-end .item-spec table {
  min-width: 80%;
}
.sightia-font {
  font-family: 'Arial Black', 'Arial';
  font-style: italic;
}
.product-end .product-item__Top .col-item.textSpc .l-colWrap .col-item .linkbtn02 {
  min-width: 100%;
}

.product-end  .product-item__Top--wide {
  padding: 0;
}

.product-item__Top--wide .l-flexBox {
  align-items: center;
}

@media screen and (min-width:769px) {
  .product-end .table-style01 dl {
    width: 600px;
  }
  .product-end .product-item__Top .l-colWrap .col-item {
    margin-bottom: 0;
  }
  .product-end .product-item__Top .l-colWrap .col-item.imgSpc {
    width: 46%;
    margin-right: 5%;
  }

  /*テーブルが大きすぎる時（max500px）*/
  .product-end .item-spec .table-max500 table {
    max-width: 500px;
    min-width: 500px;
    width: 500px;
  }
  .product-end .item-spec .table-max500 table tbody th {
    max-width: 200px;
    min-width: 200px;
    width: 200px;
  }
  .product-end .item-spec .table-max500 table tbody td {
    max-width: 300px;
    min-width: 300px;
    width: 300px;
  }
}

@media screen and (max-width:768px) {
  .product-end .product-item__Top .col-item.textSpc .name h3 {
    font-size: 1.4em;
  }
  .product-end .product-item__Top {
    padding: 30px 20px;
  }
  .product-end .l-secCont__box.product-item {
    margin-bottom: 70px;
  }
}

.l-colWrap.imglink .col-item{
  border: 1px solid #ddd;
  margin-bottom: 50px;
}

.l-colWrap.imglink .col-item:last-child {
  margin-bottom: 50px;
}

.new-icon {
  display: inline-block;
  margin-right: 10px;
  color: #fff;
  background: #e60012;
  padding: 5px 8px;
  font-weight: bold;
}

.c-category-ttl .pre-new{
  display: flex;
  align-items: center;
}

/*-----背景画像指定-----*/
/*表面*/
.surface .mainImg.surface-index {
  background-image: url('../images/bg-img/surface/top.jpg');
}
.surface .l-secCont.intro {
  background-image: url('../product/surface/images/img_intro.jpg');
}
/*表面　英語ページ*/
.surface.is-en .l-secCont.intro {
  background-image: url('../product/surface/images/img_intro_en.jpg');
}
.surface .mainImg.surface-markettec-diecast {
  background-image: url('../images/bg-img/surface/diecast.png');
}
/* 表面（投射材、メディア・コンパウンド） */
.surface.media .mainImg {
  background-image: url('../images/bg-img/surface/top-media.jpg');
}

/*ショットブラスト*/
.surface .mainImg.shotblast-index {
  background-image: url('../product/surface/lineup/apparatus/shotblast/images/img_shotblast-top.jpg');
  margin-top: 0;
}
.shotblast-breadcrumb {
  margin-bottom: 0px;
}

/*エアーブラスト*/
.surface .mainImg.airblast-index {
  background-image: url('../product/surface/lineup/apparatus/airblast/images/img_airblast-top.jpg');
  margin-top: 0;
}
.airblast-breadcrumb {
  margin-bottom: 0px;
}
.surface .mainImg.shotblast-index,
.surface .mainImg.airblast-index{
  min-height: 300px;
}
@media screen and (max-width:768px) {
  .surface .mainImg.shotblast-index{
    min-height: 200px;
  }
  .surface .mainImg.airblast-index {
    background-position: left;
    min-height: 250px;
  }
}
/*環境*/
.environment .mainImg.environment-index {
  background-image: url('../images/bg-img/environment/top.jpg');
}
.environment .l-secCont.intro {
  background-image: url('../product/environment/images/img_intro.jpg');
}

/*粉体*/
.powder .mainImg.powder-index {
  background-image: url('../images/bg-img/powder/top.jpg');
}
.powder .l-secCont.intro {
  background-image: url('../product/powder/images/img-intro.jpg');
}

/*金属軟磁性粉末*/
.magnetic-metal-powder.lp .secTop {
  background-image: url("../images/bg-img/magnetic-metal-powder/top.jpg");
  background-position: 70% bottom;
}



@media screen and (max-width:768px) {
  .magnetic-metal-powder.lp .secTop {
    background-image: url("../images/bg-img/magnetic-metal-powder/top_sp.jpg");
    background-color: rgba(255, 255, 255, 0.45);
    background-blend-mode: lighten;
  }
}

/*ジクサー*/
.force-sensor.lp .secTop {
  background-image: url("../images/bg-img/force-sensor/top.jpg");
  background-position: 60%;
}
.force-sensor.lp .l-secCont.movie {
  background-image: url("../images/bg-img/force-sensor/bg_2.png");
  background-position: center;
  background-repeat: no-repeat;
  background-color: rgba(255, 255, 255, 0.6);
  background-blend-mode: lighten;
}

@media screen and (max-width:768px) {
  .force-sensor.lp .secTop {
    /* background-image: url("../images/bg-img/force-sensor/top_sp.jpg");
    background-color: rgba(255, 255, 255, 0.5);
    background-blend-mode: lighten; */
    background: none;
  }
  .force-sensor.lp .l-secCont.movie {
    background-color: rgba(255, 255, 255, 0.7);
  }
}

/*iot*/
.iot .mainImg {
  background-image: url("../product/iot/images/bg-iot.jpg");
  background-position: 30% center;
  background-color: rgba(255,255,255, 0.2);
  background-blend-mode: lighten
}

/*C-BOX*/
.c-box .secTop {
  background-image: url("../images/bg-img/c-box/top.jpg");
  background-position: center;
}

@media screen and (max-width:768px) {
  .c-box .secTop {
    background-image: url("../images/bg-img/c-box/top_sp.jpg");
  }
}

/*ePVS*/
.epvs.lp .secTop {
  background-image: url("../images/bg-img/epvs/top.jpg");
  background-position: center;
}
.epvs.lp .merit {
  background-image: url("../images/bg-img/epvs/merit.jpg");
  background-repeat: no-repeat;
  background-position: top center;
  background-color: rgba(255, 255, 255, 0.8);
  background-blend-mode: lighten;
}

@media screen and (max-width:768px) {
  .epvs.lp .secTop {
    background-image: url("../images/bg-img/epvs/top_sp.jpg");
    background-color: rgba(255, 255, 255, 0.3);
    background-blend-mode: lighten;
  }
  .epvs.lp .merit {
    background-position: right 20%;
  }
}

/*検査装置*/
.test-measure .mainImg.test-measure-index {
  background-image: url('../images/bg-img/test-measure/top.jpg');
  background-position: right;
}

@media screen and (max-width:768px) {
  .test-measure .mainImg.test-measure-index {
    background-position: 90% bottom;
    background-color: rgba(255, 255, 255, 0.4);
    background-blend-mode: lighten;
  }
}

.test-measure-car .intro {
  background: url('../images/bg-img/test-measure/car/intro.png') center center /contain no-repeat;
  background-color: rgba(255, 255, 255, 0.5);
  background-blend-mode: lighten;
}

/*サーボプレス*/
.servo-press .mainImg.servo-press-index {
  background-image: url('../images/bg-img/servo-press/top.jpg');
  background-position: right;
}

@media screen and (max-width:768px) {
  .servo-press .mainImg.servo-press-index {
    background-image: url('../images/bg-img/servo-press/top_sp.jpg');
    background-position: center;
    background-color: rgba(255, 255, 255, 0.7);
    background-blend-mode: lighten;
  }
}

.servo-press .l-secCont.intro {
  background-image: url('../images/bg-img/servo-press/img_intro.jpg');
}

/*電動シリンダ*/
.electric-cylinder .mainImg.electric-cylinder-index {
  background-image: url('../images/bg-img/electric-cylinder/top.jpg');
  background-position: right;
}

@media screen and (max-width:768px) {
  .electric-cylinder .mainImg.electric-cylinder-index {
    background-position: 83% bottom;
    background-color: rgba(255, 255, 255, 0.4);
    background-blend-mode: lighten;
  }
}
.electric-cylinder .l-secCont.intro {
  background-image: url(../product/electric-cylinder/images/img_intro.jpg);
}

/*分散装置ディスパライザー*/
.disperizer .mainImg.disperizer-index {
  background-image: url('../images/bg-img/test-measure/top.jpg');
}
.disperizer .takujyo {
  background-image: url('../images/bg-img/disperizer/takujyo.jpg');
  background-position: right bottom;
  background-color: rgba(255, 255, 255, 0.3);
  background-blend-mode: lighten;
  background-repeat: no-repeat;
  background-size: contain;
  min-height: 400px;
}

@media screen and (max-width:768px) {
  .disperizer .takujyo {
    background-color: rgba(255, 255, 255, 0.5);
    min-height: 550px;
  }
}

/*画像測定*/
.s-precision .mainImg.s-precision-index {
  background-image: url('../images/bg-img/s-precision/top.jpg');
  background-position: right;
}

@media screen and (max-width:768px) {
  .s-precision .mainImg.s-precision-index {
    background-position: 83% bottom;
    background-color: rgba(0, 0, 0, 0.5);
    background-blend-mode: darken;
  }
}

/*===レーザー機器===*/
.laser .mainImg.laser-index {
  background-image: url('../images/bg-img/laser/top.jpg');
  background-position: right;
}

.laser .mainImg.marker-index {
  background-image: url('../images/bg-img/laser/marker/top.jpg');
  background-position: right;
}

.laser .mainImg.cleaner-index {
  background-image: url('../images/bg-img/laser/cleaner/top.jpg');
  background-position: right;
}

.laser .mainImg.battery-index {
  background-image: url('../images/bg-img/laser/battery/top.jpg');
  background-position: right;
}

.laser .l-secCont.intro {
  background-image: url('../product/laser/images/img_intro.jpg');
}

.p-machineBox + .p-machineBox {
  margin-top: 60px;
}

.p-machineBox__item + .p-machineBox__item {
  margin-top: 60px;
}

.laser .p-machineBox__title {
  border-top: double 4px #cacaca;
  border-bottom: double 4px #cacaca;
  padding: 15px 20px;
  margin-bottom: 2em;
}

.laser .p-machineBox__title h4 {
  font-size: 1.3em;
  margin-right: 1em;
}

.p-katsuyo__cont.sozai {
  border: solid 5px #1a91d9;
}

.p-katsuyo__cont.seihin {
  border: solid 5px #f49e00;
}

.laser .p-katsuyo__title {
  display: block;
  padding: 5px 20px;
}

.laser .sozai .p-katsuyo__title{
  background: #1a91d9;
}

.laser .seihin .p-katsuyo__title{
  background: #f49e00;
}

.laser .p-katsuyo__title p {
  font-size: 1.5em;
  color: #fff;
  font-weight: bold;
}

.laser .p-katsuyo__cont__wrap {
  padding: 7% 4% 3%;
}

.laser .p-katsuyo__cont__item {
  width: 80%;
  text-align: center;
  /*! margin-right: 4%; */
  margin: auto;
}

.laser .p-katsuyo__cont__item:nth-child(2n) {
  /*! margin-right: 0; */
}

.laser .laser-maker__list.first {
  margin-bottom: 0.5em;
}

.laser .laser-maker__list.first::before {
  content: '●';
  margin-right: 0.3em;
  font-size: 0.8em;
  color: #e60012;
}

.p-appeal {
  border: solid 1px #DDD;
  padding: 30px;
}

.p-appeal .col-item {
  margin-bottom: 0;
}

@media screen and (min-width:769px) {
  .laser header .gnav > li {
    width: calc(100%/5);
  }
  .laser header.transform .gnav > li {
    width: auto;
  }
  .laser .p-intro__item {
    padding: 60px 0;
  }

  .laser .p-machine {
    margin-bottom: 90px;
  }

  .laser .p-machineBox__title {
    display: flex;
    align-items: center;
  }

  .laser .p-machineBox__item.l-colWrap.item2 > .col-item {
    width: 47%;
    margin-right: 6%;
  }

  .laser .p-machineBox__ab {
    position: absolute;
    right: 12%;
  }

  .laser .p-katsuyo__wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
  }

  .laser .p-katsuyo__cont.sozai {
    width: 44%;
  }

  .laser .p-katsuyo__cont.seihin {
    width: 44%;
  }

  .laser .p-katsuyo__arrow {
    position: absolute;
    top: 50%;
    right: 50%;
    transform: translate(50%,-50%);
  }

  .laser .p-cleanerMain .l-flexBox__imgSpc {
    width: 38%;
  }
  .laser .p-cleanerMain .l-flexBox__textSpc {
    width: 62%;
  }
}

@media screen and (max-width: 768px) {
  .laser .p-katsuyo__arrow {
    margin: 10px auto;
    width: 70%;
  }
  .laser .p-machine {
    margin-bottom: 50px;
  }
  .laser .p-machineBox {
    margin-bottom: 50px;
  }
  .laser .p-machineBox__title {
    margin: 30px 0 15px;
    padding: 15px 0;
  }
  .laser .p-machineBox__title h4 {
    font-size: 1.2em;
  }
  .laser .mainImg.laser-index {
  background-image: url('../images/bg-img/laser/top_sp.jpg');
}
  .laser .mainImg.marker-index {
    background-image: url('../images/bg-img/laser/marker/top_sp.jpg');
  }
  .laser .mainImg.cleaner-index {
    background-image: url('../images/bg-img/laser/cleaner/top_sp.jpg');
  }
  .laser .mainImg.battery-index {
    background-image: url('../images/bg-img/laser/battery/top_sp.jpg');
  }
  .laser .p-katsuyo__title p {
    font-size: 1.2em;
  }

  .p-appeal .l-flexBox .l-flexBox__imgSpc {
    width: 30% !important;
    margin-bottom: 0;
    margin: auto;
  }

  .p-appeal .col-item + .col-item {
    margin-top: 30px;
  }

}
/*レーザーマーカー比較表*/
.laser .table--hikaku th {
  background: #939393;
  color: #fff;
  width: 170px;
}
.laser .table--hikaku th.thSmall--sp {
  width: 110px;
}
 .laser .table--hikaku th.acc-laser{
  background: #d50000;
  color: #fff;
  font-weight: bold;
  width: 200px;
}
.laser .table--hikaku td.acc-laser {
  background: #ffe1da;
  font-weight: bold;
}

.table-scroll--width


/*他ページ動線*/
.p-laser-link .border-red {
  border: double 3px #e60012;
}

@media screen and (min-width:769px) {
.p-laser-link .linkbtn02{
  font-size: 1.1em;
  min-width: 390px;
}
}

.p-numbk {
  position: relative;
  border-left: 1px solid #888;
  padding: 2rem;
}

.p-numbk .p-numbk__title {
  font-size: 1.5rem;
  padding-left: 4.5rem;
  height: 5rem;
}

.p-numbk .p-numbk__num {
  position: absolute;
  font-size: 5rem;
  color: #ccc;
  line-height: 1;
  left: 0;
  top: 0;
  font-style: italic;
  font-weight: bold;
  border-top: 1px solid #888;
  padding-top: .5rem;
}

@media screen and (max-width:768px) {
  .p-numbk .p-numbk__title {
    padding-left: 2rem;
  }
  .p-numbk .p-numbk__num {
    font-size: 4rem;
  }
}
.p-tableFlow--2col {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.p-tableFlow--flow {
  position: relative;
  padding-top: 40px;
}

.p-tableFlow--flow::before {
  content: '';
  position: absolute;
  transform: translateY(50%);
  top: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 0;
  height: 0;
  border: none;
  border-top: 20px solid #ccc;
  border-left: 24px solid transparent;
  border-right: 24px solid transparent;
}

.p-tableFlow dl {
  border: 1px solid #ddd;
  width: 48%;
  margin: 0 auto;
}

.p-tableFlow dt {
  text-align: center;
  font-weight: bold;
}

.p-tableFlow .p-tableFlow__green {
  background-color: #c1d5c1;
}

.p-tableFlow .p-tableFlow__blue {
  background-color: #c3e0e1;
}

.p-tableFlow .p-tableFlow__blue02 {
  background-color: #c7d9ea;
}

.p-tableFlow .p-tableFlow__purple {
  background-color: #dddaec;
}

.p-tableFlow .p-tableFlow__pink {
  background-color: #f0d9d9;
}

.p-tableFlow--noLink dt {
  padding: .65em 1.2em;
}

.p-tableFlow dt a {
  display: block;
  background-image: url(../images/common/icon/arrow-black.png);
  background-repeat: no-repeat;
  background-position: center right 10px;
  background-size: 5px;
  padding: .65em 1.2em;
}

.p-tableFlow dd {
  padding: 1em 1.2em;
}

@media screen and (max-width:768px) {
  .p-tableFlow dl {
    width: 100%;
  }
}

/*----------------------------------------
* DRACHE
----------------------------------------*/
.secTop--drache {
  background-image: url('../images/bg-img/drache/top.jpg');
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding: 60px 0;
}
.secTop--drache--device {
  background-image: url('../images/bg-img/drache/top_device.jpg') !important;
}
.p-secTop .p-secTop__main {
  position: relative;
  margin: 0 auto;
}
.p-secTop .p-secTop__item {
  margin-top: -30px;
  position: relative;
  z-index: -1;
}

@media (769px <= width <= 1300px )  {
  .p-secTop .p-secTop__main {
    max-width: 55%;
  }
}

@media screen and (min-width:769px) {
  .secTop--drache .c-logo {
    position: absolute;
    top: 10px;
    left: 20px;
    width: 20%;
    max-width: 350px;
  }
}

@media screen and (max-width:768px) {
  .secTop--drache {
    background-image: none;
  }
  .p-secTop {
    position: relative;
    overflow: hidden;
  }
  .p-secTop .p-secTop__item {
    margin: 10px auto 20px;
  }
  .p-secTop .c-sliderWrap {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
  }
  .secTop--drache.p-secTop .slider,
  .secTop--drache.p-secTop .slider .slick-list,
  .secTop--drache.p-secTop .slider .slick-track {
    height: 100%;
  }
  .secTop--drache.p-secTop .slider figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    top: 0;
    left: 0;
    
  }
}

.p-accHead {
  cursor: pointer;
  padding: 40px 0;
}

.p-accHead:hover {
  opacity: .9;
}

@media screen and (max-width:768px) {
  .p-accHead {
    padding: 20px 0;
  }
}

.p-hereArrow {
  position: relative;
  display: inline-block;
}
.p-hereArrow {
  position: relative;
  display: inline-block;
}

.p-hereArrow::after {
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  position: absolute;
  /*! right: -45px; */
  top: calc(50% - 10px);
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23ffffff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M9%2018l6-6-6-6%22%2F%3E%3C%2Fsvg%3E');
  background-size: contain;
  background-repeat: no-repeat;
  transform: translateY(-50%);
  transition: 0.2s;
}

.is-open .p-hereArrow::after {
  transform: translateY(-50%) rotate(90deg);
  top: calc(50% - 10px);
}

.drache-fv {
  display: flex;
  padding-top: 40px;
  padding-bottom: 30px;
  margin-bottom: 60px;
}

.drache-fv__right {
  width: 50%;
  position: relative;
  padding-right: 16vw;
}

.drache-fv__img {
  display: flex;
}

.drache-fv__img__01 img, 
.drache-fv__img__02 img {
  border-radius: 1.25vw;
  width: 100%;
}

.drache-fv__img__01,
.drache-fv__img__02 {
  width: 50%;
}

.drache-fv__img__01 {

}

.drache-fv__img__02 {
  margin-top: 100px;
  margin-left: 4%;
}

.drache-fv__logo {
  position: absolute;
  right: 140px;
  top: 0;
  z-index: 10;
}
.drache-fv__banner {
  position: absolute;
  right: 60px;
  bottom: 90px;
  z-index: 10;
  width: 15vw;
  min-width: 180px;
}

.drache-fv__right .drache-fv__sq {
  position: absolute;
  right: 0;
  bottom: -30px;
  z-index: -2;
  width: 90%;
}

.drache-fv__right .drache-fv__sq img {
  width: 100%;
}

.drache-fv__right .drache-fv__rec {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: -1;
  width: 90%;
}

.drache-fv__right .drache-fv__rec img {
  width: 100%;
}

.drache-fv__left {
  width: 50%;
  position: relative;
}

.drache-fv__body {
  padding-left: 16vw;
  padding-right: 4vw;
}

.drache-fv__copy p {
  font-size: max(32px, 2.25vw);
  font-weight: bold;
  line-height: 1.5;
}

.drache-fv__copy p span {
  color: #0075c2;
}

.drache-fv-appeal {
  position: absolute;
  right: 1vw;
  top: 4vw;
  width: 12.5vw;
}

@media screen and (max-width:1119px) {
  .drache-fv-appeal {
    position: unset;
    text-align: right;
    width: unset;
    margin-top: 10px;
  }
  .drache-fv-appeal img {
    width: 220px;
  }
}

.drache-fv__middle {
  margin-top: 30px;
  position: relative;
}

.drache-fv__illust {
  width: 92%;
}

.drache-fv__text p {
  font-size: max(16px, 1.25vw);
  margin-top: 20px;
  font-weight: bold;

}

.drache-fv__left .drache-fv__sq {
  position: absolute;
  left: 0;
  bottom: 6vw;
  z-index: -2;
  width: 90%;
}

.drache-fv__left .drache-fv__sq img {
  width: 100%;
}

.drache-fv__left .drache-fv__rec {
  position: absolute;
  left: 0;
  bottom: 6vw;
  z-index: -1;
  width: 90%;
}

.drache-fv__left .drache-fv__rec img {
  width: 100%;
}

.drache-movieSec {
  background-color: #fff;
  padding: 50px 80px;
}

@media screen and (max-width:768px) {
  .drache-movieSec {
    padding: 30px 20px;
  }
}

.drache-button {
  display: inline-block;
}

.drache-button a {
  background-color: #F9DC00;
  display: flex;
  align-items: center;
  padding: 16px 20px;
  border-radius: 8px;
}

.drache-button__text {
  margin-left: 20px;
}

.drache-button__text p {
  color: #003C63;
  text-align: center;
  line-height: 1.25;
}

.drache-button__maintext {
  font-size: max(16px, 1.25vw);
  font-weight: bold;
}

.drache-button__icon {
  width: 60px;
}

.drache-button__arrow {
  width: 16px;
  margin-left: 16px;
}

.drache-button--device {
  position: relative;
}

.drache-button--device a {
  padding-left: 60px;
}

.drache-button--device .drache-button__icon {
  position: absolute;
  left: 15px;
  bottom: 0;
  width: 60px;
}

@media screen and (max-width:768px) {
  .drache-fv {
    flex-wrap: wrap;
  }
  .drache-fv__right {
    width: 100%;
    order: 0;
    padding-right: unset;
    padding: 0 5%;
    padding-bottom: 30px;
    margin-bottom: 30px;
  }
  .drache-fv__left {
    width: 100%;
    order: 1;
  }

  .drache-fv__img__01 ,
  .drache-fv__img__02 {
    height: 58vw;
  }

  .drache-fv__img__01 img ,
  .drache-fv__img__02 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .drache-fv__img__02 img {
    object-position: top center;
  }

  .drache-fv__img__02 {
    margin-top: 18vw;
  }

  .drache-fv__banner {
    right: unset;
    left: 5%;
    bottom: -20px;
  }

  .drache-fv__logo {
    right: 5%;
    top: 0;
    width: 40%;
  }

  .drache-fv__body {
    padding-left: 5%;
    padding-right: 5%;
  }

  .drache-fv__copy p {
    font-size: 28px;
    margin-top: 20px;
  }

  .drache-fv__middle {
    margin-top: 10px;
  }

  .drache-fv__illust {
    width: 100%;
  }
  .drache-button {
    
  }
  .drache-button__icon {
    width: 40px;
  }
  .drache-button__text {
    margin-left: 10px;
  }
  .drache-button__subText {
    font-size: 14px;
  }
  .drache-fv__left .drache-fv__sq {
    width: 96%;
  }

  .drache-fv__left .drache-fv__sq {
    display: none;
  }
}

.drache-reason {
  border-radius: 30px;
  border: 3px solid #0075c2;
  background-color: #fff;
  padding: 30px 20px;
  position: relative;
}

.drache-num {
  background-color: #0075c2;
  border-radius: 25px 0 25px 0;
  display: inline-block;
  padding: 0 20px;
  text-align: left;
  position: absolute;
  left: 0;
  top: 0;
}

.drache-num p {
  color: #fff;
}

.drache-reason__img {
  width: 50%;
  margin: 0 auto;
}

.drache-reason__title {
  text-align: center;
  font-weight: bold;
  font-size: 18px;
}

.drache-reason__text {
  text-align: center;
  margin-top: 10px;
}

.drache-faq .c-tabArea li {
  background-color: #fff;
}

.drache-contactBox {
  position: fixed;
  top: calc(50% - 80px);
  transform: translateY(-50%);
  right: 0;
  z-index: 100;
  border-radius: 10px 0 0 10px;
}

.drache-contactBox a {
  width: 5em;
  min-width: auto;
  padding: 1.5rem 1rem;
  background-color: #F9DC00;
  border-radius: 10px 0 0 10px;
  writing-mode: vertical-rl;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4);
  transition: 0.2s;
  background-image: none;
}

.drache-contactBox figure {
  width: 100%;
  margin-bottom: 10px;
}

.drache-contactBox .drache-contactBox__text {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
  color: #003C63;
}

.drache-contactBox .drache-contactBox__free {
  background-color: #fff;
  color: #003C63;
  padding: 0 8px;
  border-radius: 4px;
  writing-mode:horizontal-tb;
  font-size: 14px;
  margin-top: 15px;
}

@media screen and (max-width:768px) {
  .drache-contactBox {
    top: unset;
    bottom: 0;
    transform: unset;
    right: unset;
    left: 0;
    width: 100%;
  }

  .drache-contactBox a {
    width: 70%;
    writing-mode: horizontal-tb;
    margin: 0 auto;
    font-size: 1rem;
    padding: 8px 1rem;
    border-radius: 4px;
    margin-bottom: 15px;
  }

  .drache-contactBox .drache-contactBox__text {
    font-size: 14px;
  }

  .drache-contactBox figure {
    width: 30px;
    margin-bottom: 0;
    margin-right: 1rem;
  }

  .drache-contactBox .drache-contactBox__free {
    margin-top: 0;
    margin-left: 1rem;
  }

  .drache-contactBox .drache-contactBox__free {
    font-size: 12px;
  }
}

/*----------------------------------------
* 産業とSINTO
----------------------------------------*/
.industry .secTop {
  background-color: #000;
}

/*-----背景画像指定-----*/
/*産業とSINTO トップ*/
.industry-index .mainImg {
  background-image: url('../images/bg-img/industry/top.jpg');
}

/*自動車*/
.industry-automotive .mainImg {
  background-image: url('../images/bg-img/industry/automotive/top.jpg');
}

/*EV・電池*/
.industry-ev-battery .mainImg {
  background-image: url('../images/bg-img/industry/ev-battery/top.jpg');
}

/*航空*/
.industry-aviation .mainImg {
  background-image: url('../images/bg-img/industry/aviation/top.jpg');
}

/*電子部品*/
.industry-electro .mainImg {
  background-image: url('../images/bg-img/industry/electro/top.jpg');
}

.industry-electro .masking::after {
  background-color: rgba(0, 0, 0, 0.5) !important;
}

.industry-index .c-modalBox__img {
  background: #12459f;
  border-radius: 100%;
  padding: 10%;
}
.industry-index .pulse-btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  /*! width: 50px; */
  /*! height: 50px; */
  border-radius: 50%;
  /*! background-color: #1da1f2; */
  cursor: pointer;
  transition: box-shadow 0.3s;
  padding: 5%;
}
.industry-index .pulse-btn img {
  width: 100%;
}
.industry-index .pulse-btn::before,
.industry-index .pulse-btn::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  box-sizing: border-box;
  pointer-events: none;
}
.industry-index .pulse-btn:hover {
  box-shadow: 0 0 20px #1da1f2;
}
.industry-index .pulse-btn:hover::before,
.industry-index .pulse-btn:hover::after {
  animation: pulsate 2s linear infinite;
  border: 1px solid #1da1f2;
}
.industry-index .pulse-btn:hover::after {
  animation-delay: 1s;
}

@keyframes pulsate {
  0% {
    transform: scale(1);
    opacity: 1;
  }

  100% {
    transform: scale(1.5);
    opacity: 0;
  }
}

@media print, screen and (min-width: 769px){
  /* .secMainvis */
  .industry-index .secMainvis__imgBox {
    width: 1200px;
    height: 600px;
    background: url("../industry/images/mainvisual.jpg") no-repeat center;
    background-size: contain;
  }
  .industry-index .secMainvis__imgBox {
    position: relative;
  }
  .industry-index .secMainvis__imgBox .icon {
    position: absolute;
    width: 180px;
  }
  .industry-index .secMainvis__imgBox .icon a {

  }
  .industry-index .secMainvis__imgBox .icon a:hover {
    opacity: 1;
  }
  .industry-index .secMainvis__imgBox .icon-automotive {
    top: -10px;
    right: 235px;
  }
  .industry-index .secMainvis__imgBox .icon-ev-battery {
    bottom: 0;
    left: 265px;
  }
  .industry-index .secMainvis__imgBox .icon-aviation {
    top: -10px;
    left: 535px;
  }
  .industry-index .secMainvis__imgBox .icon-rail {
    bottom: 145px;
    right: 45px;
  }
  .industry-index .secMainvis__imgBox .icon-ship {
    top: 10px;
    left: 150px;
  }
  .industry-index .secMainvis__imgBox .icon-kenki {
    top: -5px;
    left: 330px;
  }
  .industry-index .secMainvis__imgBox .icon-electro {
    bottom: -25px;
    left: 505px;
  }
  .industry-index .secMainvis__imgBox .icon-steel {
    bottom: 100px;
    left: 40px;
  }
  .industry-index .secMainvis__imgBox .icon-spring-gear {
    top: 130px;
    left: 60px;
  }
  .industry-index .secMainvis__imgBox .icon-diecast {
    bottom: 15px;
    right: 120px;
  }
  .industry-index .secMainvis__imgBox .icon-manufacture {
    bottom: -15px;
    right: 300px;
  }
  .industry-index .secMainvis__imgBox .icon-energy {
    top: 65px;
    right: 40px;
  }
  .industry-index .secMainvis__imgBox .icon- {
    top: 200px;
    left: 200px;
  }
}
@media screen and (max-width: 768px) {
  .pulse-btn {
    box-shadow: 0 0 20px #1da1f2;
  }

  .pulse-btn::before, .pulse-btn::after {
    animation: pulsate 2s linear infinite;
  }

  .pulse-btn::after {
    animation: pulsate 2s linear infinite;
  }
}

@media screen and (max-width:768px) {
  /* 自動車 */
  .industry-car .mainImg {
    background-image: url('../images/bg-img/industry/car/top_sp.jpg');
    background-size: cover;
  }

  /* EV・電池 */
  .industry-ev-battery .mainImg {
    background-image: url('../images/bg-img/industry/ev-battery/top_sp.jpg');
  }

  /* 航空 */
  .industry-aviation .mainImg {
    background-image: url('../images/bg-img/industry/aviation/top_sp.jpg');
    background-size: cover;
  }

  /* 電子部品 */
  .industry-electro .mainImg {
    background-image: url('../images/bg-img/industry/electro/top_sp.jpg');
  }
}

@media screen and (max-width:768px) {
  .industry .secTop {}
}

/*----------------------------------------
* 中ページスライダー
----------------------------------------*/
.center-large img {
  max-width: 620px;
  height: auto;
  display: inline-block;
}
.center-large img {
  transform: scale(0.7);
  opacity: 0.6;
}
.center-large .slick-current img {
  transform: scale(1);
  opacity: 1;
}
.l-secCont .slick-dots li {
  margin-bottom: 0;
}
.slider{
  opacity: 0;
  transition: opacity .3s linear;
}
.slider.slick-initialized{
  opacity: 1;
}

@media screen and (max-width:768px) {
  .center-large img {
    max-width: 100%;
    transform: scale(1);
    padding: 0 5px;
  }
}

/*----------------------------------------
* サポート
----------------------------------------*/
/*-----背景画像指定-----*/
.support-index .mainImg {
  background-image: url('../images/bg-img/support/top.jpg');
}

/*画像＋文章＋動画*/
@media print, screen and (min-width: 769px){
.p-flexBox--col3 {
  display: flex;
  flex-wrap: wrap;
}
.p-flexBox--col3 .p-flexBox__imgSpc {
  width: 20%;
}
.p-flexBox--col3 .p-flexBox__imgSpc img {
    width: 100%;
}
.p-flexBox--col3 .p-flexBox__textSpc {
  width: 40%;
  padding: 0 2em;
}
.p-flexBox--col3 .p-flexBox__video {
  width: 40%;
}
}

/*TOP*/
.support .l-secCont.introSec {
  min-height: 180px;
}
.support .l-secCont.introSec .bgSpc {
  height: 180px;
  width: 70%;
  position: absolute;
  right: 0;
}
.support .divlink-bg {
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}
.support .divlink-bg.counseling {
  background-image: url(../support/images/bg_counseling.jpg);
}
.support .divlink-bg.training {
  background-image: url(../support/images/bg_training.jpg);
}

@media screen and (max-width:768px) {
  .support .l-secCont.introSec {
    min-height: 300px;
  }
  .support .l-secCont.introSec .bgSpc {
    height: 300px;
  }
}

@media screen and (max-width:768px) {
  .support.system .introSec .l-inner {
    background-image: url(../support/system/images/img_01.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    background-color: rgba(255, 255, 255, 0.3);
    background-blend-mode: lighten;
  }
}

/*サポート体制*/
.support.system .divlink a {
  display: block;
  border: 1px solid #ddd;
}
.support.system .divlink a:hover {
  border: 1px solid #E60012;
  opacity: .9;
}
.support.system .divlink a .l-flexBox .img {
  width: 30%;
  max-width: 130px;
}
.support.system .divlink a .l-flexBox .text {
  width: 70%;
  padding-left: 1.5em;
}
.support.system .after-service .ttl-wrap .ttl {
  font-size: 1.2em;
}

@media print, screen and (min-width: 769px) {
  .support.system .after-service .ttl-wrap .logo {
    max-width: 40%;
  }
  .support.system .after-service .ttl-wrap .ttl {
    font-size: 1.4em;
  }
}

/*各担当者ページ*/
@media print, screen and (min-width: 769px) {
  .support .anchorLink-wrap {
    margin-bottom: 10px;
  }
}
.support .anchorLink-wrap {
  padding: 15px;
  padding-left: 18px;
  border-left: 6px solid #ddd;
}
.support .anchorLink-wrap.first {
  border-color: #4668a8;
}
.support .anchorLink-wrap.second {
  border-color: #f19100;
}
.support .anchorLink-wrap.last {
  border-color: #c30d23;
}
.support .support-tag {
  font-size: .75em;
  vertical-align: middle;
  padding: .2em .4em;
  color: #fff;
  border-radius: 3px;
  margin-right: 10px;
}
.support .support-tag.before {
  background: #4668a8;
}
.support .support-tag.after {
  background: #c30d23;
}

/*----------------------------------------
* 産業とSINTO
----------------------------------------*/
/* 産業とSINTO トップ */
.industry-index .p-contSec a {
  display: block;
  background-size: cover;
  background-color: #DDD;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
}
.industry-index .p-contSec a::after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.industry-index .p-contSec a:hover {
  opacity: 1;
}
.industry-index .p-contSec a:hover h3 {
  background-color: #e00012;
}
.industry-index .p-contSec__detailText {
  background: rgba(255, 255, 255, 0.85);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
  position: relative;
  z-index: 10;
}
.industry-index .p-contSec__detailText h3 {
  line-height: 1.2;
  font-size: 15px;
  margin-bottom: 15px;
  color: #FFF;
  padding: 0.5em 1.5em 0.5em 1em;
  background: url("../images/common/icon/arrow-white.png") no-repeat center right 10px;
  background-size: 0.4em;
  background-color: #333;
}
.industry-index .p-contSec__detailText ul li,
.industry-index .p-contSec__detailText p {
  margin-bottom: 0;
}

/* 背景画像 */
.industry-index #automotive a {
  background-image: url("../industry/images/automotive.jpg");
}
.industry-index #ev-battery a {
  background-image: url("../industry/images/ev-battery.jpg");
}
.industry-index #ship a {
  background-image: url("../industry/images/ship.jpg");
}
.industry-index #aviation a {
  background-image: url("../industry/images/aviation.jpg");
}
.industry-index #rail a {
  background-image: url("../industry/images/rail.jpg");
}
.industry-index #kenki a {
  background-image: url("../industry/images/kenki.jpg");
}
.industry-index #electro a {
  background-image: url("../industry/images/electro.jpg");
}
.industry-index #steel a {
  background-image: url("../industry/images/steel.jpg");
}
.industry-index #diecast a {
  background-image: url("../industry/images/diecast.jpg");
}
.industry-index #spring-gear a {
  background-image: url("../industry/images/spring-gear.jpg");
}
.industry-index #energy a {
  background-image: url("../industry/images/energy.jpg");
}
.industry-index #manufacture a {
  background-image: url("../industry/images/manufacture.jpg");
}

@media print, screen and (min-width: 769px) {
  .industry-index .col-item a {
    min-height: 280px;
  }
  .industry-index .p-contSec a {
    display: flex;
    justify-content: flex-end;
    padding: 20px;
  }
  .industry-index .p-contSec__detailText {
    width: 60%;
    padding: 15px;
  }
  .industry-index .p-contSec__detailText ul li,
  .industry-index .p-contSec__detailText p {
    font-size: 12px;
  }
}

@media screen and (max-width:768px) {
  .industry-index .col-item {
    width: 100%;
    margin-bottom: 0;
  }
  .industry-index .col-item a {
    width: 100%;
    padding: 20px;
  }
  .p-contSec__detailText {
    padding: 15px;
  }
}

/* 産業とSINTO 下層ページ */

/*-----背景画像指定-----*/
/*産業とSINTO トップ*/
.industry-index .mainImg {
  background-image: url('../images/bg-img/industry/top.jpg');
}

/*自動車*/
.industry-automotive .mainImg {
  background-image: url('../images/bg-img/industry/automotive/top.jpg');
}

/*EV・電池*/
.industry-ev-battery .mainImg {
  background-image: url('../images/bg-img/industry/ev-battery/top.jpg');
}

/*航空*/
.industry-aviation .mainImg {
  background-image: url('../images/bg-img/industry/aviation/top.jpg');
}

/*鉄道*/
.industry-railroad .mainImg {
  background-image: url('../images/bg-img/industry/railroad/top.jpg');
}

/*造船*/
.industry-shipbuilding .mainImg {
  background-image: url('../images/bg-img/industry/shipbuilding/top.jpg');
}

/*建設機器*/
.industry-construction .mainImg {
  background-image: url('../images/bg-img/industry/construction/top.jpg');
}

/*電子部品*/
.industry-electro .mainImg {
  background-image: url('../images/bg-img/industry/electro/top.jpg');
}

/*ばね・ギヤ*/
.industry-spring-gear .mainImg {
  background-image: url('../images/bg-img/industry/spring-gear/top.jpg');
}

/*鉄鋼・鍛造・熱処理*/
.industry-steelindustry .mainImg {
  background-image: url('../images/bg-img/industry/steelindustry/top.jpg');
}

/*ものづくり*/
.industry-monozukuri .mainImg {
  background-image: url('../images/bg-img/industry/monozukuri/top.jpg');
}

/*ダイカスト*/
.industry-diecast .mainImg {
  background-image: url('../images/bg-img/industry/diecast/top.jpg');
}


.industry-electro .masking::after {
  background-color: rgba(0, 0, 0, 0.5) !important;
}

@media screen and (max-width:768px) {
  /* 自動車 */
  .industry-car .mainImg {
    background-image: url('../images/bg-img/industry/car/top_sp.jpg');
    background-size: cover;
  }

  /* EV・電池 */
  .industry-ev-battery .mainImg {
    background-image: url('../images/bg-img/industry/ev-battery/top_sp.jpg');
  }

  /* 航空 */
  .industry-aviation .mainImg {
    background-image: url('../images/bg-img/industry/aviation/top_sp.jpg');
    background-size: cover;
  }

  /* 電子部品 */
  .industry-electro .mainImg {
    background-image: url('../images/bg-img/industry/electro/top_sp.jpg');
  }

  /*鉄道*/
  .industry-railroad .mainImg {
    background-image: url('../images/bg-img/industry/railroad/top_sp.jpg');
  }

  /*造船*/
  .industry-shipbuilding .mainImg {
    background-image: url('../images/bg-img/industry/shipbuilding/top_sp.jpg');
  }

  /*建設機器*/
  .industry-construction .mainImg {
    background-image: url('../images/bg-img/industry/construction/top_sp.jpg');
  }

  /*電子部品*/
  .industry-electro .mainImg {
    background-image: url('../images/bg-img/industry/electro/top_sp.jpg');
  }

  /*ばね・ギヤ*/
  .industry-spring-gear .mainImg {
    background-image: url('../images/bg-img/industry/spring-gear/top_sp.jpg');
  }

  /*鉄鋼・鍛造・熱処理*/
  .industry-steelindustry .mainImg {
    background-image: url('../images/bg-img/industry/steelindustry/top_sp.jpg');
  }

  /*ものづくり*/
  .industry-monozukuri .mainImg {
    background-image: url('../images/bg-img/industry/monozukuri/top_sp.jpg');
  }

  /*ダイカスト*/
  .industry-diecast .mainImg {
    background-image: url('../images/bg-img/industry/diecast/top_sp.jpg');
  }
}

/*-----コンテンツ部分-----*/
.industry .p-productDetail__title {
  color: #FFF;
  padding: 0.5em 1em;
  line-height: 1.5;
  background: url("../images/common/stripe-white.png");
  background-size: 5px;
}
.industry .p-productDetail__title--red {
  background-color: #e60012;
}
.industry .p-productDetail__title--gray {
  background-color: #333;
}
.industry .p-productDetail__wrap {
  background: #f1f1f1;
  padding: 20px;
  justify-content: center;
}
.industry .p-productDetail p {
  line-height: 1.2;
  margin-bottom: 10px;
}
.industry .p-productDetail p a.link-arrow {
  background-position: left top 0.4em;
}
.industry .p-productDetail__img {
  margin: 0 -5px;
}
.industry .p-productDetail__img figure {
  margin: 0 -10px 15px;
}
.industry .p-productDetail__img p {
  text-align: center;
}
.industry .p-productDetail.item2 > .col-item {
  position: relative;
}
.industry .p-productDetail.item2 > .col-item:first-child {
  position: relative;
}
.industry .p-productDetail.item2 > .col-item:first-child::after,
.industry .p-productDetail .col-item--arrow::after {
  content: '\25E4';
  position: absolute;
  color: #F59200;
}
.industry .p-productDetail__wrap .col-item {
  background: #FFF;
  padding: 0 15px 15px 15px;
  border: solid 1px #DDD;
}
.industry .p-productDetail .col-item a p span {
  text-decoration: underline;
}
.industry .p-productDetail .col-item a:hover {
  opacity: 1
}
.industry .p-productDetail .col-item a:hover p span {
  text-decoration: none;
}
.industry .p-productDetail__img figure img {
  display: block;
  transition: 0.5s;
}
.industry .p-productDetail__img a figure {
  overflow: hidden;
}
.industry .p-productDetail__wrap .col-item a:hover figure img {
  transform: scale(1.1, 1.1);
}
.industry .p-productDetail .col-item.arrow-none::after {
  display: none !important;
}
.c-cont-descSpc a:hover figure img {
  transform: scale(1.1, 1.1);
}

@media print, screen and (min-width: 769px) {
  .industry .p-productDetail.item2 {
    justify-content: space-between;
  }
  .industry .p-productDetail .col-item {
    margin-bottom: 0;
  }
  .industry .p-productDetail p {
    text-align: center;
  }
  .industry .p-productDetail.item2 > .col-item {
    width: 48.5%;
  }
  .industry .p-productDetail.item2 > .col-item.ratio3-2 {
    width: 62%;
    margin-right: 3%;
  }
  .industry .p-productDetail.item2 > .col-item.ratio3-1 {
    width: 35%;
  }
  .industry .p-productDetail__wrap.item2 > .col-item {
    width: 47%;
  }
  .industry .p-productDetail__wrap.item2 > .col-item {
    margin-right: 6%;
  }
  .industry .p-productDetail__wrap.item2 > .col-item:nth-child(2n),
  .industry .p-productDetail__wrap > .col-item:last-child {
    margin-right: 0;
  }
  .industry .p-productDetail.item2 > .col-item:first-child::after {
    top: 50%;
    transform: translateY(-50%);
    right: -22px;
    transform: translateY(-50%) rotate(135deg);
    font-size: 20px;
    margin-top: 20px;
  }
  .industry .p-productDetail .l-colWrap.item3 > .col-item,
  .industry .p-productDetail .l-colWrap.item3 > .col-item:nth-child(2) {
    width: 30%;
    margin-right: 5%;
  }
  .industry .p-productDetail .l-colWrap.item3 > .col-item:nth-child(3n) {
    margin-right: 0;
  }
  .industry .p-productDetail .col-item--arrow::after {
    top: 50%;
    right: -21px;
    transform: translateY(-50%) rotate(135deg);
    font-size: 20px;
  }
  .industry .l-secCont__box__img figcaption {
    margin: 0;
    padding: 1em 0.5em;
  }
}

@media screen and (max-width:768px) {
  .industry .p-productDetail.item2 > .col-item {
    margin-bottom: 40px;
  }
  .industry .p-productDetail.item2 > .col-item:last-child {
    margin-bottom: 0;
  }
  .industry .p-productDetail.item2 > .col-item:first-child::after,
  .industry .p-productDetail .col-item--arrow::after {
    left: 50%;
    transform: translateX(-50%) rotate(-135deg);
    font-size: 20px;
  }
  .industry .p-productDetail.item2 > .col-item:first-child::after {
    margin-top: -5px;
  }
  .industry .p-productDetail .col-item--arrow::after {
    bottom: -27px;
  }
  .industry .p-productDetail__wrap {
    padding: 15px;
  }
  .industry .p-productDetail__wrap .col-item {
    margin-bottom: 15px;
    padding: 1em;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .industry .p-productDetail__wrap .col-item:last-child {
    margin-bottom: 0;
  }
  .industry .p-productDetail__wrap .col-item--arrow {
    margin-bottom: 30px;
  }
  .industry .p-productDetail__img {
    width: 40%;
  }
  .industry .p-productDetail__text {
    width: 60%;
    padding-left: 1em;
  }
  .industry .p-productDetail__text .link-arrow {
    font-size: 15px;
    line-height: 1.2;
  }
  .industry .p-productDetail__text ul li {
    font-size: 12px;
  }
  .industry .p-productDetail__img figure {
    margin: 0;
  }
  .industry .p-productDetail__img p {
    width: 60%;
    text-align: left;
    font-size: 14px;
    line-height: 1.5;
  }
  .industry .l-secCont__box__img figure img {
    width: 40%;
  }
}

/*----------------------------------------
* IR情報
----------------------------------------*/
.ir-index .p-kabukaSpc--closeboard img {
  padding: 30px;
  background: #fafafa;
  border: solid 1px #DDD;
}
.ir-index .p-kabukaSpc img {
  border: solid 1px #DDD;
  border-radius: 10px;
}

@media print, screen and (min-width: 769px) {
  .ir-index .p-kabukaSpc ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 70px auto 0;
  }
  .ir-index .p-kabukaSpc ul li {
    width: 32%;
    margin-right: 2%;
  }
  .ir-index .p-kabukaSpc ul li:last-child,
  .ir-index .p-kabukaSpc ul li:nth-child(3n) {
    margin-right: 0;
  }
}

@media screen and (max-width:768px) {
  .ir-index .p-kabukaSpc {
    margin-top: 30px;
  }
  .ir-index .p-kabukaSpc ul li {
    margin-bottom: 15px;
  }
}

/* CSR報告書 */
.ir.hokoku .col-item a {
  display: block;
}
.ir.hokoku .col-item a:hover {
  opacity: 1;
}
.ir.hokoku .col-item a:hover p {
  text-decoration: none;
}

/* IR情報（経営方針） */
.ir.management .p-secSuishin .l-colWrap .col-item:nth-child(1)::after {
  content: '';
  display: block;
  background: url("../ir/management/images/sec02_suishin_plus.png") no-repeat center;
  background-size: cover;
  width: 80px;
  height: 80px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -115px;
}

@media print, screen and (min-width: 769px) {
  .ir.management .p-secSuishin .l-colWrap {
  }
  .ir.management .p-secSuishin .l-colWrap .col-item {
    width: 42%;
  }
}

@media screen and (max-width:768px) {

}

.p-page-ir {

}
.p-page-ir .p-msg-top__mainvis {
  position: relative;
}
.p-page-ir .p-msg-top__mainvis figure img {
  width: 100%
}
.p-page-ir .p-msg-top__mainvis__lead {
  position: absolute;
  bottom: 0;
  right: 0;
  padding: 2em;
  width: 50%;
}
.p-page-ir .p-msg-top__mainvis__lead::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: pink;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  background-color: #E60012;
  mix-blend-mode: darken;
}
.p-page-ir .p-msg-top__mainvis__lead p {
  color: #FFF;
  font-size: 2em;
  position: relative;
}
.p-page-ir .p-msg-top__text {
  background-color: #f1f1f1;
  width: 50%;
  margin: 0 0 0 auto;
  padding: 1em 2em;
}

@media screen and (max-width:768px) {
  .p-page-ir .p-msg-top__mainvis__lead,
  .p-page-ir .p-msg-top__text {
    width: 100%;
    padding: 1em;
  }
  .p-page-ir .p-msg-top__mainvis__lead {
  }
  .p-page-ir .p-msg-top__mainvis__lead p {
    font-size: 1.4rem;
  }
  .p-page-ir .p-msg-top__text p {
    font-size: 0.8em;
  }
}

/*----------------------------------------
* 鋳造
----------------------------------------*/
/*-----背景画像指定-----*/
/* 鋳造 */
.foundry .mainImg.foundry-index {
  background-image: url('../images/bg-img/foundry/top.jpg');
}
.foundry .l-secCont.intro {
  background-image: url('../product/foundry/images/img_intro.jpg');
}
.foundry .mainImg.alumi {
  background-image: url('../images/bg-img/foundry/alumi.jpg');
}
.foundry .mainImg.v-pro {
  background-image: url('../images/bg-img/foundry/v-pro.jpg');
}

@media screen and (max-width:768px) {
  .foundry .mainImg.foundry-index {
    background-position: 60% bottom;
  }
  .foundry .mainImg.v-pro {
    background-position: 70% bottom;
  }
}
.foundry .mainImg.self-hard {
  background-image: url('../images/bg-img/foundry/self-hard.jpg');
}
.foundry .mainImg.greensand {
  background-image: url('../images/bg-img/foundry/greensand.jpg');
}

/*鋳造第2階層 各カテゴリTOPページ*/
.foundry.second .mainImg .l-mainDisc {
  background-color: rgba(0, 0, 0, .5);
}
.foundry.second .mainImg .l-mainDisc p {
  color: #fff;
}
.foundry.second .introSec .intro-txt {
  position: relative;
}
.foundry.second .introSec .bg {
  position: absolute;
  background: #f2f2f2;
}
.border-pink {
  border: 1px solid #D0111A;
}
.c-anchorLink-spc.p-Linkpink li {
  border: solid 2px #D0111A;
}
.c-anchorLink-spc.p-Linkpink li a {
  background-color: #fff;
  min-height: 5.5em;
  color: #D0111A;
  font-weight: bold;
  background-image: url(../images/common/icon/arrow-pink.png);
}
.c-anchorLink-spc.p-Linkpink li a:hover {
  background-color: #D0111A;
  color: #fff;
  opacity: 1;
  background-image: url(../images/common/icon/arrow-white.png);
}
.Box__inline-block {
  display: inline-block;
}
.min350px {
  min-width: 350px;
}
.min50 {
  min-width: 50%;
}

@media screen and (max-width:768px) {
  .w100-sp {
    width: 100%;
  }
}

/*生型TOP*/
map .Invalid {
  pointer-events: none;
  cursor: auto;
}
.Image-map {
  position: relative;
}
.Image-map .Image-map__linkbtn .linkbtn {
  display: inline-block;
  position: absolute;
  background: #fff;
  border-radius: 10px;
}
.Image-map .Image-map__linkbtn .linkbtn a {
  display: block;
  padding: 10px;
  position: relative;
  transition: 0.2s;
}
.Image-map .Image-map__linkbtn .linkbtn a:hover {
  opacity: 1;
  box-shadow: 0 2px 15px rgb(0 0 0 / 20%);
  border-radius: 12px;
}
.Image-map .Image-map__linkbtn .linkbtn a::after {
  content: '\0025e2';
  position: absolute;
  right: 5px;
  bottom: 5px;
  line-height: 1;
  font-size: 10px;
  color: #CCC;
  transition: 0.2s;
}
.Image-map .Image-map__linkbtn .linkbtn a:hover::after {
  color: #d0111a;
}
.Image-map .Image-map__linkbtn .linkbtn a.Invalid::after {
  display: none;
}
.Image-map .Image-map__linkbtn .linkbtn.btn01 {
  top: 50px;
  left: 450px;
}
.Image-map .Image-map__linkbtn .linkbtn.btn02 {
  top: 90px;
  left: 700px;
}
.Image-map .Image-map__linkbtn .linkbtn.btn03 {
  top: 350px;
  left: 910px;
}
.Image-map .Image-map__linkbtn .linkbtn.btn04 {
  top: 500px;
  left: 700px;
}
.Image-map .Image-map__linkbtn .linkbtn.btn05 {
  top: 430px;
  left: 400px;
}
.Image-map .Image-map__linkbtn .linkbtn.btn06 {
  top: 350px;
  left: 80px;
}
.Image-map .Image-map__linkbtn .linkbtn.btn07 {
  top: 190px;
  left: 40px;
}

.foundry.greensand.second .item__modal-naka .p-ttl {
  background: #f7f7f7;
  border-radius: 5px;
  padding: 10px 10px 10px 15px;
  margin-bottom: 20px;
}
.foundry.greensand.second .item__modal-naka .p-ttl p {
  font-size: 1.3em;
  font-weight: bold;
  line-height: 1.4;
}
.foundry.greensand.second .item__modal-naka .p-ttl p .textCut {
  font-size: .75em;
  color: #fff;
  border-radius: 5px;
  padding: 4px 15px 3px 15px;
  margin-right: 8px;
}
.foundry.greensand.second .item__modal-naka .p-ttl02 .textSmall {
  font-size: .78em;
}

@media screen and (max-width:768px) {
  .modaal-container.sp-block {
    display: block !important;
  }
}

.foundry.Toppage .vision-main-spc .subttl {
  position: absolute;
  top: 20%;
  left: 0;
  font-size: 1.8em;
  line-height: 1.6;
  font-weight: bold;
  padding: 25px 40px;
  color: #fff;
  background: rgba(0, 0, 0, .5);
}
.foundry.Toppage .vision-main-spc .textWrap {
  position: absolute;
  right: 8%;
  bottom: 10%;
  color: #fff;
}
.foundry.Toppage .vision-main-spc .textWrap p {
  font-size: 1.2em;
  color: #fff;
  background: rgba(0, 0, 0, .6);
  margin-bottom: 10px;
  padding: .1em 30px .15em 30px;
}
.foundry.Toppage .vision-main-spc .marker {
  background: linear-gradient(transparent 50%, #badcad 50%);
  padding: 0 4px;
  font-weight: bold;
}
@media screen and (max-width:768px) {
  .foundry.Toppage .vision-main-spc img {
    opacity: 1;
  }
}

/*生形END*/
@media screen and (min-width:769px) {
  .c-anchorLink-spc.flowchart li {
    font-size: 1.3em;
    font-weight: bold;
  }
  .c-anchorLink-spc.flowchart li:first-child {
    width: 25%;
  }
  .c-anchorLink-spc.flowchart li:nth-child(2) {
    width: 30%;
  }
  .c-anchorLink-spc.flowchart li:nth-child(3) {
    width: 21%;
  }
  .c-anchorLink-spc.flowchart li:nth-child(4) {
    width: 20%;
  }
}

.flowchart-wrap {
  position: relative;
}
.flowchart-wrap .link-btn a {
  position: absolute;
  padding: 5px 2px;
  height: 90px;
  width: 92px;
  background: #D0111A;
  border: 2px solid #fff;
  display: block;
  z-index: 50;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 55%;
}
.flowchart-wrap .link-btn a::after {
  content: "";
  position: absolute;
  display: inline-block;
  height: 10px;
  width: 10px;
  background: url(../images/common/icon/arrow-white03.png)center center/ contain no-repeat;
  bottom: 3px;
  color: #fff;
  backface-visibility: hidden;
}
.flowchart-wrap .link-btn a:hover {
  opacity: 1;
  background: #e388a5;
}
.flowchart-wrap .link-btn p {
  font-size: 16px;
  line-height: 1.4;
  font-weight: bold;
  color: #fff;
}
.flowchart-wrap .link-btn.small p {
  font-size: 14px;
}

/*リンク無効化*/
a.Invalid {
  pointer-events: none;
}
.flowchart-wrap .link-btn a.Invalid {
  background: #990c13;
}
.flowchart-wrap .link-btn a.link-none::after {
  display: none;
}
.flowchart-wrap .link-btn a.Invalid::after {
  display: none;
}
.flowchart-wrap .link-btn.btn01 a {
  left: 15px;
}
.flowchart-wrap .link-btn.btn02 a {
  left: 110px;
}
.flowchart-wrap .link-btn.btn03 a {
  left: 205px;
}
.flowchart-wrap .link-btn.btn04 a {
  left: 395px;
}
.flowchart-wrap .link-btn.btn05 a {
  left: 495px;
}
.flowchart-wrap .link-btn.btn06 a {
  left: 590px;
}
.flowchart-wrap .link-btn.btn07 a {
  left: 820px;
}
.flowchart-wrap .link-btn.btn08 a {
  left: 1000px;
  width: 110px;
}
.link-btn-sp li {
  display: inline-block;
  min-width: 45%;
}

/*砂処理システムボタン追加　210409*/
.flowchart-wrap .link-btn.blue a {
  background: #1e3c72;
}
.flowchart-wrap .link-btn.blue a:hover {
  opacity: 1;
  background: #345fad;
}
.flowchart-wrap .link-btn.green a {
  background: #18a86b;
}
.flowchart-wrap .link-btn.green a:hover {
  opacity: 1;
  background: #49c791;
}
.flowchart-wrap .link-btn.btn09 a {
  top: 28%;
  left: 15px;
}
.flowchart-wrap .link-btn.btn10 a {
  top: 28%;
  left: 316px;
}
.flowchart-wrap .link-btn.btn11 a {
  top: 29%;
  left: 540px;
  width: 140px;
  height: 60px;
}
.flowchart-wrap .link-btn.btn12 a {
  top: 28%;
  left: 685px;
}
.flowchart-wrap .link-btn.btn13 a {
  top: 33%;
  left: 785px;
  width: 100px;
  height: 68px;
  padding-top: 0px;
}
.flowchart-wrap .link-btn.btn14 a {
  top: 28%;
  left: 895px;
  width: 84px;
}
.flowchart-wrap .link-btn.btn15 a {
  top: 26%;
  left: 1075px;
  width: 118px;
  height: 110px;
}

/*自硬性の工程フローチャート*/
@media screen and (min-width:769px) {
  .self-hard .c-anchorLink-spc.flowchart li {
    font-size: 1.2em;
    font-weight: bold;
  }
  .self-hard .c-anchorLink-spc.flowchart li:first-child {
    width: 24%;
    margin-right: 1% !important;
  }
  .self-hard .c-anchorLink-spc.flowchart li:nth-child(2) {
    width: 18%;
    margin-right: 1% !important;
  }
  .self-hard .c-anchorLink-spc.flowchart li:nth-child(3) {
    width: 18%;
    margin-right: 1% !important;
  }
  .self-hard .c-anchorLink-spc.flowchart li:nth-child(4) {
    width: 18%;
    margin-right: 1% !important;
  }
  .self-hard .c-anchorLink-spc.flowchart li:nth-child(5) {
    width: 18%;
    margin-right: 0 !important;
  }
}

.self-hard .flowchart-wrap .link-btn a {
  width: 76px;
}
.self-hard .flowchart-wrap .link-btn p {
  font-size: 15px;
}
.self-hard .flowchart-wrap .link-btn a {
  top: 225px;
  left: 100%;
}
.self-hard .flowchart-wrap .link-btn.btn01 a {
  left: 15px;
}
.self-hard .flowchart-wrap .link-btn.btn02 a {
  left: 105px;
}
.self-hard .flowchart-wrap .link-btn.btn03 a {
  left: 195px;
}
.self-hard .flowchart-wrap .link-btn.btn04 a {
  left: 285px;
}
.self-hard .flowchart-wrap .link-btn.btn05 a {
  top: 100px;
  left: 200px;
  width: 90px;
}
.self-hard .flowchart-wrap .link-btn.btn06 a {
  top: 100px;
  left: 320px;
  width: 90px;
}
.self-hard .flowchart-wrap .link-btn.btn07 a {
  left: 372px;
}
.self-hard .flowchart-wrap .link-btn.btn08 a {
  left: 473px;
  width: 80px;
}
.self-hard .flowchart-wrap .link-btn.btn09 a {
  left: 557px;
  width: 80px;
}
.self-hard .flowchart-wrap .link-btn.btn10 a {
  left: 660px;
  width: 150px;
}
.self-hard .flowchart-wrap .link-btn.btn11 a {
  left: 829px;
}
.self-hard .flowchart-wrap .link-btn.btn12 a {
  left: 925px;
}
.self-hard .flowchart-wrap .link-btn.btn13 a {
  left: 1035px;
  width: 150px;
}
.self-hard .flowchart-wrap .link-btn a.Invalid {
  background: #555;
}

/*アルミ鋳造の工程フローチャート*/
.alumi .flowchart-wrap .link-btn a.Invalid {
  background: #555;
}
.alumi .flowchart-wrap .link-btn a {
  top: 120px;
  left: 100%;
  width: 100px;
}
.alumi .flowchart-wrap .link-btn.btn01 a {
  left: 10px;
}
.alumi .flowchart-wrap .link-btn.btn02 a {
  left: 120px;
}
.alumi .flowchart-wrap .link-btn.btn03 a {
  left: 240px;
}
.alumi .flowchart-wrap .link-btn.btn04 a {
  left: 350px;
}
.alumi .flowchart-wrap .link-btn.btn05 a {
  left: 468px;
  width: 95px;
}
.alumi .flowchart-wrap .link-btn.btn06 a {
  left: 570px;
  width: 95px;
}
.alumi .flowchart-wrap .link-btn.btn07 a {
  top: 240px;
  left: 570px;
  width: 95px;
}
.alumi .flowchart-wrap .link-btn.btn08 a {
  left: 670px;
  width: 95px;
}
.alumi .flowchart-wrap .link-btn.btn09 a {
  left: 774px;
  width: 95px;
}
.alumi .flowchart-wrap .link-btn.btn10 a {
  left: 885px;
}
.alumi .flowchart-wrap .link-btn.btn11 a {
  left: 995px;
  width: 90px;
}
.alumi .flowchart-wrap .link-btn.btn12 a {
  left: 1093px;
  width: 90px;
}

/*鋳造TOP*/
.p-ttl_backttl {
  position: relative;
  padding: 45px 0 0 1.2em;
  margin-bottom: 40px;
  text-align: center;
}
.p-ttl_backttl h2 {
  font-size: 1.8em;
  line-height: 1.4;
}
.p-ttl_backttl::before {
  position: absolute;
  content: "VISION";
  color: #e6e6e6;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  letter-spacing: .1em;
  font-size: 4.2em;
  font-weight: bold;
  display: inline-block;
  z-index: -1;
}

@media screen and (max-width:768px) {
  .p-ttl_backttl {
    padding: 30px 0 0 1em;
  }
  .p-ttl_backttl h2 {
    font-size: 1.3em;
  }
  .p-ttl_backttl::before {
    font-size: 3em;
  }
}
.panel-item-No {
  padding: 15px 20px 40px;
}

.ttl-backNo {
  position: relative;
  text-align: center;
  padding-top: 35px;
  line-height: 1.4;
  font-size: 1rem;
}
.ttl-backNo::before {
  position: absolute;
  display: inline-block;
  content: "";
  color: #e6e6e6;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: -1;
  font-size: 3.4em;
}
.ttl-backNo.no1::before {
  content: "01";
}
.ttl-backNo.no2::before {
  content: "02";
}
.ttl-backNo.no3::before {
  content: "03";
}
.ttl-backNo.no4::before {
  content: "04";
}
.ttl-backNo.no5::before {
  content: "05";
}
.ttl-backNo.no6::before {
  content: "06";
}

.foundry .lineup-list .link-btn a .ttl {
  padding-top: 10px;
  padding-left: .8em;
  border-left: 3px solid #ccc;
}
.foundry .lineup-list .link-btn a:hover > .ttl {
  border-left: 3px solid #D0111A;
}
.foundry .size-map {
  position: relative;
}
.foundry .size-map .linkbtn {
  display: inline-block;
  border-radius: 20px;
  position: absolute;
  top: 20px;
}
.foundry .size-map .linkbtn a {
  padding: 8px 20px 6px 15px;
  display: inline-block;
  background: #fff;
  min-width: 180px;
  border-radius: 20px;
}
.foundry .size-map .linkbtn a:hover > p {
  color: #D0111A;
}
.foundry .size-map .linkbtn.btn01 {
  left: 200px;
}
.foundry .size-map .linkbtn.btn02 {
  left: 550px;
}
.foundry .size-map .linkbtn.btn03 {
  left: 900px;
}
.foundry .size-map .linkbtn.btn04 {
  top: 437px;
  left: 200px;
}

@media screen and (max-width:768px) {
  .foundry .size-map .linkbtn {
    display: none;
  }
}

.foundry .size-tag {
  font-size: 13px;
  margin-right: 10px;
  border-radius: 8px;
  vertical-align: top;
  padding: 1px 10px;
}

/*----------------------------------------
* C-BOX
----------------------------------------*/
.c-box .secTop * {
  color: #68a7ab;
}

.c-box .secFlow dl {
  margin-bottom: 40px;
  border-bottom: solid 1px #DDD;
  position: relative;
}
.c-box .secFlow dl:last-child {
  margin-bottom: 0;
}
.c-box .secFlow dl::after {
  content: '';
  display: block;
  position: absolute;
  border-style: solid;
  border-width: 15px 20px 0 20px;
  border-color: #999 transparent transparent transparent;
  position: absolute;
  bottom: -28px;
  left: 50%;
  transform: translateX(-50%);
}
.c-box .secFlow dl:last-child::after {
  display: none;
}

@media print, screen and (min-width: 769px){

}

@media screen and (max-width:768px) {
  .c-box .secFlow dl {
    margin-bottom: 30px;
  }
  .c-box .secFlow dl::after {
    border-width: 10px 15px 0 15px;
    bottom: -20px;
  }
}

/*----------------------------------------
* 企業情報
----------------------------------------*/
/* 企業情報トップ */
.company-index .p-mainVis {
  position: relative;
  margin-bottom: 50px;
}
.company-index .p-mainVis__copy {
  background: linear-gradient(to right, rgba(224,0,18,0.9) 0%,rgba(224,0,18,0.0) 100%,rgba(0,0,0,0) 100%);
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
}
.company-index .p-mainVis__copy {
  width: 100%;
  padding: 1em 2em;
}
.company-index .p-mainVis__copy p {
  width: 50%;
}
.company-index .p-mainVis__copy img {
  vertical-align: middle;
  filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.3));
}

/*イメージをズームさせるCSS3アニメーション*/
.company-index .slide-animation {
  animation: fadezoom 10s 0s forwards;
}
@keyframes fadezoom {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}

@media screen and (max-width:768px){
  .company-index .p-mainVis__copy {
    padding: 0.5em;
    position: relative;
    background: #E00012;
  }
  .company-index .p-mainVis {
    margin-bottom: 30px;
  }
  .company-index .p-mainVis__copy p {
    width: 100%;
    line-height: 1;
  }
}

/* 沿革 */
.company .secHistory .p-age p {
  background: #e60012;
  text-align: center;
  line-height: 1.2;
  font-weight: bold;
  color: #FFF;
  display: flex;
  align-items: center;
  font-size: 1.2em;
  font-style: italic;
  box-shadow: 0 0 5px rgba(0,0,0,0.3);
}
.company .secHistory .l-secCont__box {
  position: relative;
  margin-bottom: 0;
}
.company .secHistory .l-secCont__box::before {
  content: '';
  display: inline-block;
  width: 5px;
  height: 100%;
  background: #e60012;
  position: absolute;
  left: 50px;
}
.company .p-ageDetail dl {
  display: table;
  padding: 15px 0;
  border-bottom: solid 1px #DDD;
  width: 100%;
}
.company .p-ageDetail dl dt,
.company .p-ageDetail dl dd {
  display: table-cell;
}
.company .p-ageDetail dl dt {
  width: 5em;
  font-weight: bold;
}
.company .p-iconDetail {
  text-align: right;
}
.company .p-iconDetail li {
  display: inline-block;
  margin: 0 0 0 15px;
}
.company .p-iconDetail li p {
  font-size: 16px;
}
.company .p-ageDetail__box {
  margin-bottom: 10px;
}
.p-ageDetail__box:last-child {
  margin-bottom: 0;
}
.company .p-ageDetail__box.style01,
.company .p-ageDetail__box.style02 {
  position: relative;
  padding-left: 1em;
}
.company .p-ageDetail__box.style01::before,
.company .p-ageDetail__box.style02::before {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  background: #DDD;
  position: absolute;
  top: 0.7em;
  left: 0;
}
.company .p-ageDetail__box.style01::before {
  background: #e60012;
}
.company .p-ageDetail__box.style02::before {
  background: #00a0d9;
}
.company .p-ageDetail--img {
  float: right;
  margin: 0 0 1em 1em;
  width: 15%;
}
.company .p-ageDetail--img figure {
  margin-bottom: 5px;
}
.company .p-ageDetail--img figure:last-child {
  margin-bottom: 0;
}

@media print, screen and (min-width: 769px){
  .company .secHistory .p-age {
    position: absolute;
    top: 0;
    left: 0;
  }
  .company .secHistory .p-age p {
    justify-content: center;
    line-height: 1.2;
    width: 100px;
    height: 100px;
    border-radius: 100%;
    align-items: center;
    font-size: 1.2em;
    font-style: italic;
  }
  .company .secHistory .p-age p span {
    margin-right: 2px;
  }
  .company .p-ageDetail {
    margin-left: 120px;
  }
}

@media screen and (max-width: 768px) {
  .company .secHistory .p-age p {
    font-size: 14px;
    padding: 7px 15px;
    border-radius: 30px;
    margin: 0 -10px;
    position: relative;
    z-index: 1;
  }
  .company .secHistory .p-age p span {
    margin-right: 2px;
  }
  .company .secHistory .l-secCont__box::before {
    left: 5px;
  }
  .company .secHistory .l-secCont__box:last-child .p-ageDetail {
    padding-bottom: 0;
  }
  .company .p-ageDetail {
    padding: 0 0 20px 20px;
  }
  .company .p-ageDetail dl {
    padding: 15px 0 15px 5px;
  }
  .company .p-ageDetail dl,
  .company .p-ageDetail dl dt,
  .company .p-ageDetail dl dd {
    display: block;
  }
  .company .p-ageDetail dl dt {
    width: 4.5em;
  }
  .company .p-ageDetail--img {
    width: 35%;
  }
  .company .p-ageDetail__box p {
    font-size: 14px;
  }
}

/* 拠点共通 */
.company .secCompany h3 {
  border-left: solid 5px #CCC;
  padding-left: 0.5em;
  margin-bottom: 15px;
  font-size: 1.15em;
}
.company .secCompany h3 span {
  display: block;
  font-weight: normal;
  font-size: 0.8em;
}
.company .secCompany .p-ttlArea {
  margin-bottom: 30px;
}
.company .secCompany .p-ttlArea span {
  display: inline-block;
  background: #f1f1f1;
  padding: 0 1em;
  min-width: 120px;
  text-align: center;
}
.company .secCompany__item {
  margin-bottom: 50px;
}
.company .secCompany__item__data dl {
  display: table;
  width: 100%;
  margin-bottom: 5px;
}
.company .secCompany__item__data dl dt,
.secComdata dl dd {
  display: table-cell;
}
.company .secCompany__item__data .link-map {
  background: pink;
  display: inline-block;
  padding: 0 0.5em;
  font-size: 0.9em;
  background: #555;
  color: #FFF;
  margin-left: 10px;
  line-height: 1.5;
}

@media print, screen and (min-width: 769px){
  .company .secCompany__item__data dl dt {
    width: 6em;
    position: relative;
  }
  .company .secCompany__item__data dl dt::after {
    content: '：';
    position: absolute;
    right: 0;
  }
  .company .secCompany__item__data dl dd {
    width: 90%;
    padding-left: 0.5em;
  }

  /* 英語ページ */
  .company.page-en .secCompany__item__data dl dt {
    width: 9em;
  }
}

@media screen and (max-width:768px){
  .company .secCompany h3 {
    font-size: 16px;
  }
  .company .secCompany__item {
    border-bottom: solid 1px #DDD;
    padding-bottom: 20px;
    margin-bottom: 20px;
  }
  .company .secCompany__item__data dl {
    margin-bottom: 0;
    position: relative;
    border: solid 1px #DDD;
    border-bottom: none;
  }
  .company .secCompany__item__data dl:last-of-type {
    margin-bottom: 0;
    border-bottom: solid 1px #DDD;
  }
  .company .secCompany__item__data dl dt,
  .company .secCompany__item__data dl dd {
    padding: 1em;
  }
  .company .secCompany__item__data dl dt,
  .company .secCompany__item__data dl dd p {
    font-size: 14px;
  }
  .company .secCompany__item__data dl dt {
    width: 7em;
    position: relative;
    background: #f1f1f1;
    text-align: center;
    border-right: solid 1px #DDD;
  }
  .company .secCompany__item__data dl dd p {
    line-height: 1.5;
  }
  .company .secCompany__item__data__textArea {
    margin-bottom: 20px;
  }

  /* 英語ページ */
  .company.page-en .secCompany__item__data dl dt {
    text-align: left;
  }
}
/* 国内拠点 */
.company .secKyoten-map figure {
  position: relative;
  z-index: -1;
}
.company .secKyoten-map .p-linkArea li {
  margin-bottom: 5px;
}
.company .secKyoten-map .p-linkArea li a {
  position: relative;
  padding-left: 1.5em;
  text-decoration: underline;
  font-size: 14px;
}
.company .secKyoten-map .p-linkArea li a:hover {
  opacity: 1;
  text-decoration: none;
}
.company .secKyoten-map a.color01::before {
  background: #e60012;
}
.company .secKyoten-map a.color02::before {
  background: #ee2bcf;
}
.company .secKyoten-map a.color03::before {
  background: #23a5b0;
}
.company .secKyoten-map a.color04::before {
  background: #0a932e;
}
.company .secKyoten-map a.color05::before {
  background: #e56d00;
}
.company .secKyoten-map a.color06::before {
  background: #0075ea;
}
.company .secKyoten-map .p-linkArea li a::before {
  content: '';
  display: block;
  width: 1em;
  height: 1em;
  position: absolute;
  top: 0.2em;
  left: 0;
  border-radius: 100%;
}
.company .secKyoten-map figure {
  margin: -350px auto 0;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .company .secKyoten-map figure {
    margin-top: -230px;
  }
}

/*----------------------------------------
* お問い合わせ関連
----------------------------------------*/
.c-contact-dept {
  border: solid 1px #DDD;
}
.c-contact-dept h3 {
  font-size: 1em;
  background: #f1f1f1;
  padding: 0.5em 1.5em;
}
.c-contact-dept h3 span {
  display: inline-block;
  background: #333;
  color: #FFF;
  padding: 0 2em;
  font-size: 0.8em;
  vertical-align: middle;
}
.c-contactText {
  padding: 1em 1.5em;
}
.c-contactNum {
  margin-bottom: 10px;
}
.c-contactNum:last-child {
  margin-bottom: 0;
}
.c-contactNum p {
  font-size: 26px;
  font-weight: bold;
  line-height: 1.5;
  margin-right: 1em;
}
.c-contactNum--tel::before,
.c-contactNum--fax::before {
  content: '';
  display: inline-block;
  width: 1em;
  height: 1em;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1em;
  margin-right: 0.5em;
  vertical-align: middle;
}
.c-contactNum p:last-child {
  margin-right: 0;
}
.c-contactNum--area {
  padding: 2px 1em !important;
  font-weight: normal !important;
  font-size: 1em !important;
  background: #555 !important;
  color: #FFF;
}
.c-contactNum--tel::before {
  background-image: url("../images/common/icon/tel.png");
}
.c-contactNum--fax::before {
  background-image: url("../images/common/icon/fax.png");
}

@media print, screen and (min-width: 769px) {
  .c-contactNum {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .c-contact-dept {
    border: solid 1px #DDD;
    margin-bottom: 20px;
    text-align: center;
  }
  .c-contact-dept:nth-child(2n) {
    margin-right: 0;
  }
  .p-linkWid-2 ul {
    display: flex;
    flex-wrap: wrap;
  }
  .p-linkWid-2 ul li {
    width: 32%;
    margin-right: 2%;
  }
  .p-linkWid-2 ul li:nth-child(3n) {
    margin-right: 0;
  }
}

@media screen and (max-width:768px) {
  .c-contact-dept {
    margin-bottom: 15px;
  }
  .c-contactNum {
    margin-bottom: 20px;
    text-align: center;
  }
  .c-contactNum p {
    font-size: 1.5em;
    margin: 0 0 10px 0;
    display: block;
  }
  .c-contactNum p:last-child {
    margin-bottom: 0
  }
  .c-contactNum--area {
    display: block !important;
    margin: 0 0 5px 0 !important;
    padding: 2px 1em !important;
    font-size: 0.9em !important;
    background: #555 !important;
    color: #FFF;
  }
  .c-contact-dept h3,
  .c-contactText {
    padding-left: 1em;
    padding-right: 1em;
  }
}

/*----------------------------------------
* 各施設の紹介
----------------------------------------*/
.facility .l-secCont {
  margin-bottom: 100px;
  border-bottom: solid 5px #f5f5f5;
  padding-bottom: 100px;
}
.facility .l-secCont:last-of-type {
  border-bottom: none;
  padding-bottom: 0;
}
.facility .l-secCont:first-of-type {
  border-bottom: none;
}
.facility .c-ttlh2 {
  border-color: inherit;
  color: #e60012;
}
.facility .c-ttlh3 {
  color: inherit;
}
.facility a.link-map {
  display: inline-block;
  padding: 0 0.5em;
  font-size: 0.9em;
  background: #555;
  color: #FFF;
  margin-left: 10px;
  line-height: 1.5;
}

/* .colorset-blue */
.facility .colorset-blue .p-facilityImg__ttl {
  background-color: rgba(0,133,206,0.8);
}
.facility .colorset-blue .c-ttlh2,
.facility .colorset-blue .list-sq.blue li::before {
  color: #0085CE;
}
.facility .colorset-blue .c-ttlh3-2::before,
.facility .colorset-blue .p-otherDetail__ttl::before {
  background: #0085CE;
}

/* .colorset-green */
.facility .colorset-green .p-facilityImg__ttl {
  background-color: rgba(29,172,75,0.8);
}
.facility .colorset-green .c-ttlh2,
.facility .colorset-green .list-sq.blue li::before {
  color: #1dac4b;
}
.facility .colorset-green .c-ttlh3-2::before,
.facility .colorset-green .p-otherDetail__ttl::before {
  background: #1dac4b;
}

/* .colorset-red */
.facility .colorset-red .p-facilityImg__ttl {
  background-color: rgba(230,0,18,0.8);
}

/* .colorset-green */
.facility .colorset-green .p-facilityImg__ttl {
  background-color: rgba(29,172,75,0.8);
}
.facility .colorset-green .c-ttlh2,
.facility .colorset-green .list-sq.blue li::before {
  color: #1dac4b;
}
.facility .colorset-orange .c-ttlh3-2::before,
.facility .colorset-orange .p-otherDetail__ttl::before {
  background: #f19100;
}

/* .colorset-orange */
.facility .colorset-orange .c-ttlh2 {
  color: #f19100;
}
.facility .colorset-orange .c-ttlh3-2::before,
.facility .colorset-orange .p-otherDetail__ttl::before {
  background: #f19100;
}
.facility .colorset-orange .p-facilityImg__ttl {
  background-color: rgba(241,145,0,0.8);
}

@media screen and (min-width:769px){
  .facility .c-ttlh3 {
    font-size: 24px;
  }
}

@media screen and (max-width:768px){
  .facility .l-secCont {
    margin-bottom: 30px;
    padding-bottom: 30px;
  }

  /* .colorset-blue */
  .facility .colorset-blue .p-facilityImg__ttl {
    background-color: rgba(0,133,206,1);
  }

  /* .colorset-green */
  .facility .colorset-green .p-facilityImg__ttl {
    background-color: rgba(29,172,75,1);
  }

  /* .colorset-red */
  .facility .colorset-red .p-facilityImg__ttl {
    background-color: rgba(230,0,18,1);
  }

  /* .colorset-orange */
  .facility .colorset-orange .p-facilityImg__ttl {
    background-color: rgba(241,145,0,1);
  }
}

/* .p-facilityImg */
.facility .p-facilityImg {
  position: relative;
  margin-bottom: 30px;
}
.facility .p-facilityImg__ttl {
  line-height: 1.2;
  padding: 0.5em 1.5em;
}
.facility .p-facilityImg__ttl h2,
.facility .p-facilityImg__ttl p {
  color: #FFF;
}
.facility .p-facilityImg__ttl p {
  font-weight: bold;
  letter-spacing: 0.1em;
  font-size: 0.7em;
}

@media screen and (min-width:769px){
  .facility .p-facilityImg__ttl {
    position: absolute;
    z-index: 10;
    font-size: 1.4em;
    top: 30px;
    left: 35px;
    background: rgba(0,0,0,0.7);
  }
}

@media screen and (max-width:768px){
  .facility .p-facilityImg {
    margin-bottom: 50px;
  }
  .facility .p-facilityImg__ttl {
    background: url("../images/common/stripe-white.png");
    background-size: 5px;
    background-color: #222;
    padding: 1em 1.5em;
    margin-bottom: 10px;
  }
}

/* slick 調整 */
.facility .p-facilityImg .slider .slick-dots li + li {
  margin-left: 3px;
}
.facility .p-facilityImg .slider .slick-dots li button {
  width: 10px;
  height: 10px;
}
.facility .p-facilityImg .slider .slick-dots li button:before {
  width: 8px;
  height: 8px;
  border: 2px solid #333;
  background-color: #fff;
  font-size: 0;
  border-radius: 100%;
  opacity: 1;
}
.facility .p-facilityImg .slider .slick-dots li.slick-active button:before {
  background-color: #333;
}
.facility .p-facilityImg .slick-dots {
  bottom: 10px;
}
.facility .p-facilityImg .slick-dots li button:before {
  color: #DDD;
  opacity: 1;
}
.facility .p-facilityImg .slick-dots li.slick-active button:before {
  color: #e00012;
}
.facility .p-facilityImg .slick-prev,
.facility .p-facilityImg .slick-next {
  background: #000;
}
.facility .p-facilityImg .slick-prev::before,
.facility .p-facilityImg .slick-next::before {
  color: #FFF;
}
.facility .p-facilityImg .slick-prev {
  left: 0px;
}
.facility .p-facilityImg .slick-next {
  right: 0px;
}

/* Arrows */
.facility .p-facilityImg .slick-prev,
.facility .p-facilityImg .slick-next {
  top: 50%;
  transform: translateY(-50%);
  display: block;
  width: 40px;
  height: 120px;
  padding: 0;
  cursor: pointer;
  border: none;
  outline: none;
  background: #222;
  z-index: 1000;
}
.facility .p-facilityImg .slick-prev:hover,
.facility .p-facilityImg .slick-prev:focus,
.facility .p-facilityImg .slick-next:hover,
.facility .p-facilityImg .slick-next:focus {
  background: #e00012;
}
.facility .p-facilityImg .slick-prev:before,
.facility .p-facilityImg .slick-next:before {
  content: '';
  display: block;
  background: url("../images/common/icon/arrow-white.png") center no-repeat;
  background-size: 0.5em;
  width: 0.8em;
  height: 2em;
  position: relative;
  left: 0.7em;
}
.facility .p-facilityImg .slick-prev:before {
  transform: rotate(180deg);
  left: 0.5em;
}
.facility .p-facilityImg .slick-next:before {
  transform: rotate(0deg);
}

@media screen and (max-width:768px){
  .facility .p-facilityImg .slick-dots {
    bottom: -35px;
  }
  .facility .p-facilityImg .slider .slick-dots li button:before {
    width: 5px;
    height: 5px;
  }
  .facility .p-facilityImg .slick-prev,
  .facility .p-facilityImg .slick-next {
    width: 25px;
    height: 55px;
  }
  .facility .p-facilityImg .slick-prev:before {
    left: 4px;
  }
  .facility .p-facilityImg .slick-prev:before,
  .facility .p-facilityImg .slick-next:before {
    left: 0.3em;
  }
}

/* .p-otherDetail */
.facility .p-otherDetail__item,
.facility .p-otherDetail .col-item {
  border: solid 1px #DDD;
  padding: 0 2em 2em 2em;
}
.facility .p-otherDetail__ttl {
  background: #f1f1f1;
  margin: 0 -2em 2em;
  padding: 0 20px;
  min-height: 4.5em;
  display: flex;
  align-items: center;
  position: relative;
}
.facility .p-otherDetail__ttl h3 {
  line-height: 1.5;
  padding-left: 1em;
  font-size: 1em;
}
.facility .p-otherDetail__ttl::before {
  content: '';
  display: block;
  width: 5px;
  height: 70%;
  background: #E00012;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 1em;
  border-radius: 10px;
}
.facility .p-otherDetail .col-item .l-flexBox__textSpc li,
.facility .p-otherDetail .col-item .l-flexBox__textSpc p {
  font-size: 14px;
}

@media screen and (max-width:768px){
  .facility .p-otherDetaill__item,
  .facility .p-otherDetail .col-item {
    padding: 0 1em 1em 1em;
  }
  .facility .p-otherDetail__ttl {
    min-height: auto;
    padding-top: 10px;
    padding-bottom: 10px;
    margin: 0 -1em 1em;
  }
  .facility .p-otherDetail .l-flexBox .l-flexBox__imgSpc {
    margin-bottom: 20px !important;
  }
}

/* .p-facilityDetail-list */
.facility .p-facilityDetail-list__ttl {
  text-align: center;
}
.facility .p-facilityDetail-list ul li span {
  background: #666;
  color: #FFF;
  line-height: 1.2;
  padding: 8px 10px;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.facility .p-facilityDetail-list ul li:last-child {
  margin-bottom: auto;
}

@media screen and (min-width:769px){
  .facility .p-facilityDetail-list dt {
    vertical-align: middle;
  }
  .facility .p-facilityDetail-list dd {
    padding-bottom: 10px !important;
  }
  .facility .p-facilityDetail-list ul li {
    min-width: 136px;
  }
  .facility .p-facilityDetail-list ul {
    margin-bottom: -0.5em;
  }
}

@media screen and (max-width:768px){
  .facility .p-facilityDetail-list ul {
    display: flex;
    flex-wrap: wrap;
  }
  .facility .p-facilityDetail-list ul li {
    width: 48%;
    font-size: 14px;
  }
}

/*----------------------------------------
* サイトマップ
----------------------------------------*/
@media screen and (max-width:768px) {
  .sitemap .l-contact__box ul li a {
    font-size: 14px;
  }
}


/*----------------------------------------
* 鋳物ってなんだろう？
----------------------------------------*/
/* .imono header */
@media print, screen and (min-width: 769px) {
  .imono header .gnav__menu > li > a span {
    padding: 12px 0.5em;
  }
  .imono header .gnav > li {
    width: calc(100%/7);
    line-height: 1.2
  }
}

/* .imono footer */
.imono .c-footer-imono__spc01 {
  background: #f0f0e1;
}
.imono .c-footer-imono__spc02 ul li a {
  background: url("../images/common/icon/arrow-btn.png") no-repeat center left;
  background-size: 0.9em;
  padding-left: 1.2em;
}

@media print, screen and (min-width: 769px) {
  .imono .c-footer-imono__spc01 {
    padding: 40px 0;
  }
  .imono .c-footer-imono__spc01 .l-inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
  }
  .imono .c-footer-imono__spc01__item01 {
    width: 70%;
  }
  .imono .c-footer-imono__spc01__item02 {
    width: 30%;
  }
  .imono .c-footer-imono__spc01__item03 {
    width: 25%;
  }
  .imono .c-footer-imono__spc01__item03 .linkbtn02 {
    width: 100%;
    min-width: 100%;
  }
  .imono .c-footer-imono__spc02 {
    padding: 60px 0;
  }
  .imono .c-footer-imono__spc02 ul {
    display: flex;
    justify-content: space-between;
  }
}

@media screen and (max-width:768px) {
  .imono .c-footer-imono__spc01,
  .imono .c-footer-imono__spc02 {
    padding: 30px 0;
  }
  .imono .c-footer-imono .l-flexBox__spc01 {
    width: 30% !important;
  }
  .imono .c-footer-imono .l-flexBox__spc02 {
    width: 70% !important;
    margin: 0 0 30px 0;
    padding-left: 1em
  }
  .imono .c-footer-imono .l-flexBox__spc02 p {
    font-size: 0.9rem;
  }
  .imono .c-footer-imono__spc02 ul li {
    margin-bottom: 5px;
  }
  .imono .c-footer-imono__spc02 ul li a {
    font-size: 14px;
    font-weight: bold;
  }
}

/* .imono 共通 */
.imono .c-flowBox .col-item {
  position: relative;
}
.imono .col-item .c-contTextBox {
  position: relative;
}
.imono .l-colWrap.arrow .col-item:last-child::after {
  content: none;
}
.imono .table-style01 dt,
.imono .table-style01 dd p {
  font-size: 14px;
}
.imono figure img {
  width: 100%;
}
.imono .col-item .c-contTextBox p,
.imono .col-item .c-contTextBox li {
  font-size: 0.85rem;
}
.imono .l-colWrap.arrow .col-item::after {
  content: '';
  display: block;
  position: absolute;
  right: -17%;
  top: 50%;
  transform: translateY(-50%);
  background: url("../imono/images/arw.gif") no-repeat center;
  width: 2em;
  height: 2em;
  background-size: 2em;
}

@media print, screen and (min-width: 769px) {
  .imono .col-item .c-contTextBox {
    min-height: 4em;
  }
  .imono .col-item .c-contTextBox.height-auto {
    min-height: auto;
  }
  .imono .col-item .c-contTextBox li {
    line-height: 1.5;
  }
  .imono .l-colWrap.arrow .col-item {
    margin-right: 10%;
    width: 45%;
  }
  .imono .l-colWrap.arrow .col-item:nth-child(2n) {
    margin-right: 0;
  }
}

@media screen and (max-width:768px) {
  .imono .l-colWrap.arrow .col-item {
    margin-bottom: 50px;
  }
  .imono .l-colWrap.arrow .col-item:last-child {
    margin-bottom: 0;
  }
  .imono .l-colWrap.arrow .col-item::after {
    content: '';
    display: block;
    position: absolute;
    right: 50%;
    transform: rotate(90deg);
    background: url("../imono/images/arw.gif") no-repeat center;
    width: 2em;
    height: 2em;
    background-size: 2em;
    top: auto;
    bottom: -35px;
  }
}

/* .imono index */
.imono-index .p-navBtn a {
  position: relative;
}

.imono-index .p-navBtn a .p-navBtn__cap {
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 5px;
}

@media print, screen and (min-width: 769px) {
  .imono-index .p-navBtn {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(3, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
  }
  .imono-index .p-navBtn_01 {
    grid-area: 1 / 1 / 3 / 3;
  }
  .imono-index .p-navBtn_02 {
    grid-area: 1 / 3 / 2 / 5;
  }
  .imono-index .p-navBtn_03 {
    grid-area: 2 / 3 / 3 / 5;
  }
  .imono-index .p-navBtn_04 {
    grid-area: 3 / 1 / 4 / 2;
  }
  .imono-index .p-navBtn_05 {
    grid-area: 3 / 2 / 4 / 3;
  }
  .imono-index .p-navBtn_06 {
    grid-area: 3 / 3 / 4 / 4;
  }
  .imono-index .p-navBtn_07 {
    grid-area: 3 / 4 / 4 / 5;
  }
}

@media screen and (max-width:768px) {
  .imono-index .p-navBtn {
  }
  .imono-index .p-navBtn__item {
    background: #EEE;
  }
  .imono-index .p-navBtn_01 {
    margin: 0 -15px 40px;
  }
  .imono-index .p-navBtn_01 a {
    padding: 0 !important;
  }
  .imono-index .p-navBtn__item a {
    display: block;
    margin-bottom: 2px;
    padding: 10px;
  }
  .imono-index .p-navBtn__item img {
    width: 100%;
  }
}

@media screen and (max-width:768px) {
  .imono .col-item .c-contTextBox {
    margin-bottom: 15px;
  }
}

/* .imono find */

@media print, screen and (min-width: 769px) {
  .imono.find .p-mapArea {
    position: relative;
  }
  .imono.find .p-mapArea__btn {
    position: absolute;
  }
  .imono.find .p-mapArea__btn.btn-01 {
    top: 110px;
    left: 250px;
  }
  .imono.find .p-mapArea__btn.btn-02 {
    top: 45px;
    left: 430px;
  }
  .imono.find .p-mapArea__btn.btn-03 {
    top: 215px;
    left: 555px;
  }
}

@media screen and (max-width:768px) {
  .imono.find .p-mapArea {
    position: relative;
  }
  .imono.find .p-mapArea__btn {
    position: absolute;
    width: 20vw;
  }
  .imono.find .p-mapArea__btn.btn-01 {
    top: 35%;
    left: 20%;
  }
  .imono.find .p-mapArea__btn.btn-02 {
    top: 15%;
    left: 55%;
  }
  .imono.find .p-mapArea__btn.btn-03 {
    top: 65%;
    left: 80%;
  }
}

/* .imono jisseki */
.imono.jisseki table {
  width: 100%;
}
.imono.jisseki table tr,
.imono.jisseki table th,
.imono.jisseki table td {
  border-color: #FFF;
  border-width: 2px;
}
.imono.jisseki table thead th {
  background: #8eb4e3;
  text-align: center;
}
.imono.jisseki table tbody tr {
  border-left: none;
  border-right: none;
}
.imono.jisseki table tbody tr:last-child {
  border-bottom: none;
}
.imono.jisseki table tbody tr:nth-child(2n + 1) {
  background: #dce6f2;
}
.imono.jisseki table tbody tr:nth-child(2n) {
  background: #f1f5fb;
}
.imono.jisseki table tbody th::before,
.imono.jisseki table thead th::before {
  content: none;
}

@media print, screen and (min-width: 769px) {
  .imono.jisseki table thead th::after {
    content: none;
  }
}

@media screen and (max-width:768px) {
  .imono.jisseki table tr,
  .imono.jisseki table th,
  .imono.jisseki table td {
    display: block;
  }
  .imono.jisseki table thead {
    display: none;
  }
  .imono.jisseki table tbody tr {
    padding: 15px 0;
    border-width: 1px;
  }
  .imono.jisseki table tbody tr td {
    padding: 0 1em 0 1.5em;
    position: relative;
    text-indent: -4em;
    margin-left: 4em;
    line-height: 1.5;
    font-size: 14px;
    margin-bottom: 10px;
    border-right: none;
  }
  .imono.jisseki table tbody tr td:last-child {
    margin-bottom: 0;
  }
  .imono.jisseki table tbody tr td::after {
    content: '：';
    position: absolute;
    left: 0;
    text-indent: 0;
    top: 0;
  }
  .imono.jisseki table tbody tr td::before {
    width: 4em;
    display: inline-block;
    text-indent: 0;
    left: 0;
  }
  .imono.jisseki table tbody tr td:nth-child(1)::before {
    content: '日程';
  }
  .imono.jisseki table tbody tr td:nth-child(2)::before {
    content: '名称';
  }
  .imono.jisseki table tbody tr td:nth-child(3)::before {
    content: '場所';
  }
}


/*----------------------------------------
* デジタルIoT
----------------------------------------*/
/* TOP */

/* main */
.iot-index .c-pageTitleSpc h1{
  line-height: 1.5;
}
.iot-index .secTop .mainWrap {
  position: relative;
}
@media screen and (min-width:769px) {
  .iot-index .c-pageTitleSpc {
    position: absolute;
    top: 0;
    left: 0;
  }
}
.iot-index .map-image {
  text-align: center;
}
.iot-index .map-image img {
  max-width: 100%;
  height: auto;
}
.iot-index .description {
  background: rgba(255,255,255,.6);
  box-shadow: 0 0 15px #ddd;
}
.iot-index .d-content {
  background: rgba(255,255,255,.6);
  padding: 45px 25px;
}
.iot-index .d-content.bg2 {
  background: rgba(214,214,214,.5);
}
.iot-index .d-content p {
  color: #333;
}
.iot-index .d-link {
  display: block;
  padding: 4px 1em;
  border: solid #9a9a9a 1px;
  font-size: 1em;
  color: #333;
  position: relative;
  overflow: hidden;
  text-align: center;
  margin-bottom: 8px;
}
.iot-index .d-link.Invalid {
  color: #9a9a9a;
}
.iot-index .d-link:last-child {
  margin-bottom: 0;
}
.iot-index .d-link:hover {
  opacity: 1;
}
.iot-index .d-link:before {
  content:"";
  position: absolute;
  top: 0px;
  left: -97%;
  height: 100%;
  width: 100%;
  background : #333;
  opacity: 0.2;
  transition: .4s;
}
.iot-index .d-link:hover:before {
  left:0;
}
.iot-index .d-link.Invalid:before {
  left: -100%;
}
.iot-index .d-link:after {
  content: "≫";
  display: inline-block;
  position: absolute;
  right: 5px;
  font-size: .9em;
}
.iot-index .d-link.Invalid:after {
  display: none;
}
.iot-index .d-content {
  display: none;
  position: relative;
}
.iot-index .d-content.show {
  display: block;
}
.iot-index .d-def__ttl {
  font-size: 1.6em;
  letter-spacing: .15em;
  line-height: 1.5;
  font-weight: bold;
}
.iot-index .d-def__txt {
  margin-top: 10px;
  position: relative;
  padding-left: 2.5em;
  font-size: .9em;
}
.iot-index .d-def__txt::before {
  content: '';
  display: inline-block;
  width: 1.8em;
  height: 1px;
  background: #333;
  position: absolute;
  left: 0;
  top: 0.8em;
}
@media screen and (min-width:769px) {
  .iot-index .description {
    margin-top: 200px;
  }
}
.iot-index p.d-content__ttl {
  /* color: #e20012; */
  margin-bottom: 15px;
  letter-spacing: .12em;
  font-size: 1.6em;
  font-weight: bold;
  line-height: 1.5;
}
.iot-index p.d-content__ttl.small {
  font-size: 1.36em;
}
.iot-index area:hover {
  opacity: .5!important;
}
@media screen and (max-width:768px) {
  .iot-index .d-def__ttl,.iot-index p.d-content__ttl {
    letter-spacing: normal;
  }
  .iot-index .c-pageTitleSpc h1 {
    margin-bottom: 0;
    padding-bottom: 10px;
  }
}

/* 画像の上に文字 */
.iot-index .link-item .link-item__img {
  position: relative;
}
.iot-index .link-item .link-item__img .img-on-txt {
  position: absolute;
  width: 100%;
  padding: 12px 5px;
  background: rgba(255,255,255,.6);
  text-align: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  font-weight: bold;
  line-height: 1.6;
}
.p-att {
  font-size: 1.1em;
  color: #E70012;
  letter-spacing: .07em;
}
.p-divlink {
  position: relative;
  transition: .35s all;
  padding: 20px;
}
.p-moreReed {
  text-align: right;
}
.p-moreReed .txt {
  color: #949494;
  font-size: .9em;
  display: inline-block;
  padding: 2px 4px;
  border-bottom: 1px dashed;
}

.p-divlink:hover .p-moreReed .txt {
  color: #E70012;
  opacity: 1;
  transition: .35s all;
}
.p-divlink:hover {
  box-shadow: 2px 4px 4px rgb(0 0 0 / 15%);
}

.d-content a.p-moreReed {
  text-align: right;
  display: block;
}
.d-content a.p-moreReed .txt {
  color: #fff;
}
.d-content a.p-moreReed:hover {
  opacity: 1;
}
.d-content a.p-moreReed:hover .txt{
  color: #E70012;
  opacity: 1!important;
  transition: .35s all;
  /* border-bottom: 1px dashed #E70012; */
}

@media screen and (min-width:769px)  {
  .p-divlink .c-ttlh3 {
    color: #333;
  }
  .p-divlink:hover .c-ttlh3 {
    color: #E70012!important;
    transition: .35s;
  }
  .p-moreReed.dtl2 {
    position: absolute;
    bottom: 20px;
    right: 20px;
  }
}

@media screen and (max-width:768px) {
  .p-divlink {
    padding: 20px 5px;
  }
  .p-moreReed.dtl2 {
    margin-top: 10px;
  }
  .p-moreReed .txt {
    color: #E70012;
  }
}

/* 設備稼働モニタ */
.monitor.setsubi .secTop {
  background: none;
  padding-bottom: 0 !important;
}
.monitor.setsubi .secTop .l-inner {
  background: url(../product/iot/monitor/images/mainvis_bgi.svg) right -1px bottom no-repeat;
  background-size: contain;
}
.monitor.setsubi .secTop .l-inner::after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: #e70011;
  position: absolute;
  top: 1px;
  z-index: -1;
  left: 100%;
}
.monitor.setsubi .color-black {
  color: #333 !important;
}
.monitor.setsubi .secTop__device {
  background: url(../product/iot/monitor/images/mainvis_device.png) center no-repeat;
  background-size: contain;
  position: relative;
  width: 100%;
}
.monitor.setsubi .secTop__device__frame {
  padding: 4.9% 3.6% 21.8%;
  position: relative;
}
.monitor.setsubi .secTop__device__frame figure {
  position: relative;
  width: 100%;
  height: 0;
  padding: 0 0 61%;
}
.monitor.setsubi .secTop__device__frame figure img {
  display: block;
  margin-bottom: -63%;
  width: 100%;
  height: auto;
  max-height: initial;
  top: 0;
  position: absolute;
}
.monitor.setsubi .secTop__textArea {
  position: relative;
  padding: 90px 0;
}
.monitor.setsubi .secTop__textArea::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: url("../product/iot/monitor/images/pagett-bgi.png") no-repeat center;
  background-size: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  opacity: 0.3;
  filter: blur(2px);
  z-index: -1;
}
.monitor.setsubi .c-textShadow {
  text-shadow: 0 0 8px #FFF;
  filter: drop-shadow(0 0 8px #FFF);
}
@media screen and (min-width:769px) {
  .monitor.setsubi .secTop {
    padding-bottom: 0 !important;
    overflow: hidden;
  }
  .monitor.setsubi .secTop .l-inner {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
.monitor.setsubi .c-pageTitle-2 h1 .txt-logo {
  font-size: 2.45em;
  color: inherit !important;
}

@media screen and (max-width:768px) {
  .monitor.setsubi .secTop .l-inner {
    background-position: right bottom;
    padding-bottom: 30px;
    background-size: 300px;
    width: 100%;
  }
  .monitor.setsubi .secTop .l-inner::after {
    display: none;
  }
  .monitor.setsubi .c-pageTitle-2 h1 .txt-logo {
    font-size: 2em;
  }
  .monitor.setsubi .secTop__textArea {
    position: relative;
    padding: 0;
    margin-bottom: 50px;
  }
}

@media screen and (min-width:769px) {
  .monitor .secTop {
    background: url(../product/iot/monitor/images/bg-top.jpg) bottom left /cover no-repeat;
  }
}
.monitor .c-pageTitle-2 h1 span{
  color: #fff !important;
}
.monitor .c-pageTitle-2 h1 .txt-logo {
  font-size: 2.45em;
}

@media screen and (max-width:768px) {
  .monitor .secTop {
    background: url(../product/iot/monitor/images/bg-top.jpg) 5% /cover   no-repeat;
  }
  .monitor .c-pageTitle-2 h1 .txt-logo {
    font-size: 2em;
  }
}

.monitor .p-ttl01 {
  font-weight: bold;
  position: relative;
  padding-left: 2.5em;
  font-size: 1.1em;
  padding-top: .8em;
  margin-bottom: 5px;
}
.monitor .p-ttl01 .p-ttl01_txt{
  z-index: 10;
  position: relative;
  letter-spacing: .15em;
}
.monitor .p-ttl01_No {
  position: absolute;
  bottom: 0;
  font-size: 2.8em;
  color: #dadada;
  line-height: 1;
  left: 0;
  font-style: italic;
}
.monitor .p-ttl01 .p-ttl01_txt .color-blue{
  color: #005eab;
}
.op0 {
  opacity: 0;
}
.monitor a.modal{
  position: relative;
  display: block;
}
.monitor a.modal .csv-icon {
  position: absolute;
  z-index: 2;
  right: 5px;
  bottom: 5px;
}
.monitor .csv-icon p {
  letter-spacing: .1em;
}

/* 課題→対応 */
/* .BfAf .ttl {
  display: inline-block;
  padding: 3px 1em 2px 1em;
  background: gray;
  color: #fff;
  border-radius: 5px;
  margin-bottom: 5px;
}
.BfAf .ttl.Bf {
  background: #8a8a8a;
}
.BfAf .ttl.Af {
  background: #E20012;
} */
.BfAf .itemWrap {
  /* border: 1px solid #ddd; */
  padding: 20px;
}
.BfAf .ttl {
  display: inline-block;
  font-weight: bold;
  letter-spacing: .1em;
  margin-bottom: 10px;
  border-bottom: 2px solid;
}
.BfAf .ttl.Bf {
  color: #555;
}
.BfAf .ttl.Af {
  color: #e20012;
  /* border-bottom: 2px solid #e20012; */
}
.BfAf .bf-item .ttl2 {
  color: #555;
  font-weight: bold;
}
.BfAf .itemWrap .bf-item {
  position: relative;
}
.BfAf .itemWrap .bf-item::after {
  content: '';
  position: absolute;
  top: 30px;
  left: 100%;
  width: 0;
  height: 0;
  border-left: 10px solid #e20012;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  margin-left: 7px;
}

@media screen and (min-width:769px) {
  .BfAf .itemWrap {
    background: url(../product/iot/monitor/images/bg-img01.jpg)center left/contain no-repeat;
  }
  .BfAf .itemWrap.dtl2 {
    background: url(../product/iot/monitor/images/bg-img02.jpg)center left/contain no-repeat;
  }
}
@media screen and (max-width: 768px) {
  .BfAf .itemWrap {
    border: 3px solid #f2f2f2;
  }
  .BfAf .itemWrap .bf-item {
    padding-bottom: 10px;
  }
  .BfAf .itemWrap .bf-item::after {
    content: '';
    position: absolute;
    top: 102%;
    left: 15px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 14px 18px 0 18px;
    border-color: #e20012 transparent transparent transparent;
  }
}


/* STEP1～タイトル */
.c-ttlh4-3 {
  font-size: 1.15em;
  line-height: 1.5;
  margin-bottom: 10px;
}
.c-ttlh4-3 .sub {
  font-size: .9em;
  font-style: italic;
  color: #f5a52c;
  margin-bottom: 8px;
  border-bottom: 2px solid;
  display: inline-block;
}

@media screen and (min-width:769px) {
  .c-ttlh4-3 {
    min-height: 4.4em;
    margin-bottom: 5px;
  }
}
/* STEP1～レイアウト */
.flowWrap.step .flow-item{
  padding: 10px 15px;
  /* background: #f5f5f5; */
}

.flowWrap.step .col-item:not(:last-child)::after {
  border-left: 10px solid #f5a52c;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  top: 50px;
}

@media screen and (max-width: 768px) {
  .flowWrap.step .col-item:not(:last-child)::after {
    border-color: #f5a52c transparent transparent transparent;
    top: 102%;
    border-style: solid;
    border-width: 15px 25px 0 25px;
  }
}

/* アメニティメータ */
.amenity .secTop__device {
  background: url(../product/iot/amenity-meter/images/mainvis_device.png) center no-repeat;
  background-size: contain;
  position: relative;
  width: 100%;
}

.amenity .secTop__device__frame {
  padding: 14.9% 3.6% 9.8%;
  position: relative;
}
.amenity .secTop__device__frame figure {
  position: relative;
  width: 100%;
  height: 0;
  padding: 0 0 61%;
}
.amenity .secTop__device__frame figure img {
  display: block;
  margin-bottom: -63%;
  width: 100%;
  height: auto;
  max-height: initial;
  top: 0;
  position: absolute;
}

.icon-flex {
  display: flex;
}

.amenity .secTop {
  background: url(../product/iot/amenity-meter/images/bg-top.jpg) bottom left /cover no-repeat;
}

@media screen and (min-width:769px) {
  .icon-flex li {
    width: 80px;
  }
  
  .icon-flex li + li {
    margin-left: 1rem;
  }
}

@media screen and (max-width:768px) {
  .amenity .secTop {
    padding: 30px 0;
  }

  .amenity .l-inner {
    width: 100%;
  }

  .amenity .secTop__device__frame {
    padding: 4.9% 3.6% 9.8%;
  }

  .amenity .secTop__device__frame figure {
    padding: 0 0 50%;
  }

  .icon-flex {
    max-width: 500px;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .icon-flex li {
    width: 30%;
  }
}

/* WIZNEX*/
.bf-inherit {
  backface-visibility: inherit;
}
.wiznex .secTop {
  background: url(../product/iot/wiznex/images/bg-top.jpg) top center/cover no-repeat;
}

.wiznex .c-pageTitle-2 {
  margin-bottom: 0;
}
.wiznex .c-pageTitle-2 h1 span{
  color: #fff !important;
}

.c-ttlh4-2.bg-gray {
  padding: 10px;
  padding-left: 30px;
  line-height: 1.6;
}
.c-ttlh4-2.bg-gray::before {
  height: 80%;
  left: 15px;
}
.c-ttlh4-2.lh-narrow {
  line-height: 1.6;
}

/* 遠隔モニタリング */
.remote .secTop {
  background: url(../product/iot/remote-monitoring/images/bg-top.jpg) top center/cover no-repeat;
}

.remote .c-pageTitle-2 h1 span{
  color: #fff !important;
}
.remote .c-pageTitle-2 h1 .txt-logo {
  font-size: 2.45em;
}

@media screen and (max-width:768px) {
  .remote .secTop {
    background: url(../product/iot/remote-monitoring/images/bg-top.jpg) 5%/cover   no-repeat;
  }
  .remote .c-pageTitle-2 h1 .txt-logo {
    font-size: 2em;
  }
}
.remote .casestudy-img img{
  border-radius: 15px;
}

@media screen and (min-width:769px) {
  .remote .l-colWrap.casestudy .col-item img {
    width: 80%;
    margin: 0 auto;
  }
}

.remote .l-colWrap.casestudy .col-item:not(:last-child)::after {
  content: '';
  position: absolute;
  top: 35%;
  width: 0;
  height: 0;
  border-left: 15px solid #aaa;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
  right: 4%;
}

@media screen and (max-width: 768px){
.remote .l-colWrap.casestudy .col-item:not(:last-child)::after {
    transform: rotate(90deg);
    left: 50%;
    top: inherit;
    bottom: -33px;
  }
}

/*----------------------------------------
* Project
----------------------------------------*/
/* メインビジュアル部分 */
.p-secTop {
  position: relative;
  overflow: hidden;
}
.p-secTop__bgi {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 100%;
  height: 100%;
}
.p-secTop__bgi img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-secTop__bgi--blur {
  width: calc(100% + 20px);
  margin: 0 -10px;
}
.p-secTop__bgi--blur img {
  filter: blur(5px);
}
.p-secTop__lead {
  font-weight: bold;
  font-size: 2.4rem;
  line-height: 1.5;
}
.p-secTop__lead + .c-pageTitle {
  margin-top: 15px;
}
.p-secTop__textarea .c-subtext {
  font-weight: bold;
  font-size: 1.4rem;
}

@media print, screen and (min-width: 769px) {
  .p-secTop {
    padding: 80px 0;
  }
}

@media screen and (max-width: 768px){
  .p-secTop {
    padding: 60px 0;
  }
  .p-secTop__lead {
    font-size: min(7vw,1.8rem);
  }
  .p-secTop__textarea .c-subtext {
    font-size: min(7vw,1.1rem);
  }
}


/* 目次 */
.p-contTable {
  /* 浮上用のスペースを確保しておくとmargin変化が起きない */
  margin-bottom: 0 !important;
  will-change: transform, opacity;
  transition: box-shadow 0.2s ease, transform 0.1s ease;
  backface-visibility: hidden; /* Chromeのrepaint対策 */
}
.p-contTable__ttl {
  width: 100%;
  padding: 0 30px 0 30px;
  position: relative;
}
.p-contTable__ttl::after {
  content: '';
  display: block;
  position: absolute;
  height: 50%;
  width: calc(100% - 4px);
  border-left: solid 2px #e20012;
  border-right: solid 2px #e20012;
  bottom: 0;
  left: 0;
}
.p-contTable__ttl {
  position: relative;
}
.p-contTable__ttl__wrap {
  background: #FFF;
  position: relative;

}
.p-contTable__ttl__wrap .c-ttl,
.p-contTable__ttl__wrap .c-note {
  color: #e20012;
  font-weight: bold;
  position: relative;
}
.p-contTable__ttl::before {
  content: '';
  display: block;
  background: #e20012;
  width: 100%;
  height: 2px;
  position: absolute;
  top: 50%;
  left: 0%;
}
.p-contTable__ttl__wrap .c-ttl {
  font-size: 1.4rem;
}
.p-contTable__ttl__wrap .c-note {
  position: relative;
  padding-left: 1.75em;
}
.p-contTable__ttl__wrap .c-note::before {
  content: '';
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  background: url(../images/common/icon/mouse.svg) no-repeat center;
  background-size: contain;
  position: absolute;
  top: calc(50% - 0.2em);
  left: 0;
  transform: translateY(-50%);
  filter: brightness(0) saturate(100%) invert(17%) sepia(68%) saturate(4150%) hue-rotate(344deg) brightness(88%) contrast(124%);
}
.p-contTable__linkWrap {
  border: solid 2px #e20012;
  border-top: none;
  padding: 15px 30px 30px 30px;
}
.p-contTable__ttl__wrap {
  display: inline-flex;
  align-items: center;
  gap: 1.5em;
  padding: 0 1em;
}



/* フローティング時 */
.p-contTable.is-floating {
  position: fixed;
  z-index: 5000;
  width: 100%;

  /* box-shadowは初期から透明で用意しておく（repaintを防ぐ） */
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
  transform: translateZ(0); /* GPUレイヤー化で滑らか */
}
.p-contTable.is-floating * {
  color: #FFF !important;
}
.p-contTable.is-floating .l-inner {
  padding: 0;
}
.p-contTable.is-floating .p-contTable__ttl {
  padding: 10px 20px;
}
.p-contTable.is-floating .p-contTable__linkWrap {
  padding: 0;
}
.p-contTable.is-floating .p-contTable__ttl::before,
.p-contTable.is-floating .p-contTable__ttl::after {
  display: none;
}
.p-contTable.is-floating .p-contTable__ttl__wrap {
  background: none;
  padding: 0;
  gap: 10px;
}
.p-contTable.is-floating .p-contTable__ttl__wrap .c-note {
  font-size: 0;
}
.p-contTable.is-floating .p-contTable__ttl__wrap .c-note::before {
  font-size: 1rem;
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(2%) hue-rotate(67deg) brightness(109%) contrast(101%);
}
.p-contTable.is-floating .p-contTable__linkWrap {
  border: none;
}
.p-contTable.is-floating .c-anchorLink-spc {
  margin: 0;
}
.p-contTable.is-floating .c-anchorLink-spc li {
  background: none;
  border: none;
  border-top: solid 1px rgba(255,255,255,0.5);
}
.p-contTable.is-floating .c-anchorLink-spc li a {
  padding: 10px 20px 10px 30px !important;
  min-height: auto;
  font-size: 1rem;
}
.p-contTable.is-floating .c-anchorLink-spc li a::after {
  background-image: url(../images/common/icon/arrow-white.png) !important;
  right: auto;
  left: 15px;
}
.p-contTable.is-floating .c-anchorLink-spc li a.is-current,
.p-contTable.is-floating .c-anchorLink-spc li a:hover {
  background: rgba(0,0,0,0.08) !important;
}
.p-contTable.is-floating .c-anchorLink-spc li a:hover::after {
  filter: none !important;
}
.p-contTable.is-floating .c-anchorLink-spc.flex.item5 > li:nth-child(5n) {
  margin: 0 !important;
}
.p-contTable__placeholder {
  width: 100%;
  height: 0;
  transition: height 0s; /* 高さ変化の即時反映 */
}

.theme-bluegreen .p-contTable.is-floating {
  background: rgba(104,167,171,0.9);
  backdrop-filter: blur(5px);
}

@media print, screen and (min-width: 1720px) {
  .p-contTable.is-floating {
    top: 50%;
    right: 0;
    width: 250px;
    border-radius: 10px 0 0 10px;
    transform: translateY(calc(-50% - 40px));
  }
  .p-contTable.is-floating .c-anchorLink-spc li {
    border-top: solid 1px rgba(255,255,255,0.5);
    width: 100% !important;
  }
  .p-contTable.is-floating .c-anchorLink-spc {
    display: block;
  }
}

@media (min-width: 768px) and (max-width: 1719px) {
  .p-contTable.is-floating {
    background: rgba(0,0,0,0.6) !important;
    bottom: 0;
    padding: 10px;
  }
  .p-contTable.is-floating .p-contTable__wrap {
    display: flex;
    gap: 1em;
  }
  .p-contTable.is-floating .p-contTable__ttl {
    width: 10em;
    padding-top: 5px;
  }
  .p-contTable.is-floating .c-anchorLink-spc > li {
    border: none !important;
    margin: 0 !important;
  }
  .p-contTable.is-floating .c-anchorLink-spc li a.is-current,
  .p-contTable.is-floating .c-anchorLink-spc li a:hover {
    background: rgba(104,167,171,0.8) !important;
  }
  .p-contTable.is-floating .c-anchorLink-spc li a:hover {
    background: rgba(104,167,171,1) !important;
  }
}

@media screen and (max-width: 768px) {
  .p-contTable__ttl {
    padding: 0 20px 0 20px;
    text-align: center;
  }
  .p-contTable__ttl__wrap {
    gap: 1em;
    padding: 0 0.5em;
  }
  .p-contTable__ttl__wrap .c-ttl {
    font-size: min(5vw, 1rem);
  }
  .p-contTable__ttl__wrap .c-note {
    font-size: min(4vw, 0.85rem);
  }
  .p-contTable__linkWrap {
    padding: 10px 20px 20px 20px;
  }
}

/* .p-contFlow */
.p-contFlow__item {
  position: relative;
}
.p-contFlow__item::after {
  content: '\25E2';
  position: absolute;
  line-height: 1;
  color: #AAA;
}
.p-contFlow__item:last-child::after {
  display: none;
}

.p-contFlow__item__tag {
  font-size: 0.85rem;
  font-weight: bold;
  text-align: center;
  background: #FFF;
  padding: 3px 10px;
  border-radius: 8px 8px 0 0;
  border-bottom: solid 2px;
}

.p-contFlow__item__wrap {
  border-top: none;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px;
}
.p-contFlow__item__wrap .c-ttl {
  font-weight: bold;
}
.p-contStep__desc {
  position: relative;
}
.p-contStep__desc::before {
  content: '';
  display: block;
  width: 2px;
  height: 90px;
  border-left: dotted 3px #CCC;
  position: absolute;
  top: -90px;
  left: 50%;
  transform: translateX(-50%);
}

/* 色変更 */
.p-contFlow.is-color-bluegreen .p-contFlow__item__wrap {
  border-color: #68a7ab;
  background-color: #68a7ab;
}
.p-contFlow.is-color-bluegreen .p-contFlow__item__tag {
  color: #68a7ab;
}
.p-contFlow.is-color-bluegreen .p-contFlow__item__wrap .c-ttl {
  color: #FFF;
}
.p-contFlow__item__note {
  background: #f5f5f5;
  padding: 15px;
  border-radius: 10px;
}

@media print, screen and (min-width: 769px) {
  .p-contFlow__item::after {
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(-45deg);
    left: calc(100% - 0.2rem);
    line-height: 1;
    font-size: 1.2rem;
  }
  .p-contFlow__item__tag .c-textNum {
    margin-left: 5px;
  }
}

@media screen and (max-width: 768px) {
  .p-contFlow__item {
    margin-left: 10px;
  }
  .p-contFlow__item::after {
    bottom: -1em;
    left: 50%;
    transform: translateX(-50%) rotate(45deg);
    font-size: 1.2em;
  }
  .p-contFlow__item:has(.p-contFlow__item__note) {
    border: none;
    background: none !important;
  }
  .p-contFlow__item__tag {
    border: solid 2px #68a7ab;
  }
  .p-contFlow__item:has(.p-contFlow__item__note) .p-contFlow__item__wrap {
    background: #68a7ab;
    border: solid 2px #68a7ab;
    border-top: none;
    margin-bottom: 15px;
    border-radius: 10px;
  }
  .p-contFlow__item__wrap {
    justify-content: flex-start;
  }
  .p-contFlow__item__tag {
    position: absolute;
    width: 64px;
    height: 64px;
    border-radius: 100%;
    font-size: 0.8rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    top: -6px;
    left: -20px;
  }
  .p-contFlow__item__tag .c-textNum {
    display: block;
    line-height: 1;
    font-size: 1.4em;
  }
}

/* .p-contFeature */
.p-contFeature {
  background: #FFF;
  border-radius: 20px;
}
.p-contFeature .p-contFeature__item {
  border-bottom: dashed 1px #999;
  padding: 30px;
}
.p-contFeature .p-contFeature__item:last-of-type,
.p-contFeature .p-contFeature__item:last-child {
  border: none;
}
.p-contFeature .p-contFeature__item__top dt {
  display: inline-flex;
  align-items: center;
  background: #888;
  line-height: 1.2;
  text-align: center;
  font-weight: bold;
  font-size: 2rem;
  color: #FFF;
}
.p-contFeature .p-contFeature__item--solve .p-contFeature__item__top dt {
  background: #e60012;
}
.p-contFeature .p-contFeature__item .c-contFeature__tag {
  display: block;
  font-size: 1rem;
  margin-top: 5px;
}

@media print, screen and (min-width: 769px) {
  .p-contFeature .p-contFeature__item__top > dl {
    display: flex;
    gap: 1em;
    align-items: center;
    position: relative;
  }
  .p-contFeature .p-contFeature__item__top dt {
    display: inline-flex;
    flex-direction: column;
    background: #888;
    line-height: 1.2;
    text-align: center;
    font-weight: bold;
    font-size: 2rem;
    min-width: 2.5em;
    max-width: 2.5em;
    width: 2.5em;
    height: 2.5em;
    justify-content: center;
    align-items: center;
    border-radius: 100%;
    color: #FFF;
  }
  .p-contFeature__item .c-textLead {
    margin-bottom: 0;
    line-height: 1.2;
  }
  .p-contFeature__item .c-textLead + p {
    margin-top: 5px;
  }
  .p-contFeature__item p + .c-textLead {
    margin-top: 5px;
  }
  .p-contFeature__intro figure {
    border-radius: 100%;
    overflow: hidden;
  }
  .p-contFeature__intro .c-caption {
    width: 60%;
    margin: -20px auto 0;
  }
}

@media screen and (max-width: 768px) {
  .p-contFeature .p-contFeature__item {
    padding: 20px;
  }
  .p-contFeature .p-contFeature__item__top dl {
    align-items: flex-start;
  }
  .p-contFeature .p-contFeature__item .c-textLead {
    font-size: 1.2rem;
    line-height: 1.2;
  }
  .p-contFeature .p-contFeature__item p + .c-textLead {
    margin-top: 5px;
  }
  .p-contFeature .p-contFeature__item__top dt {
    width: 100%;
    font-size: 1.2em;
    justify-content: center;
    border-radius: 30px;
    padding: 4px 10px;
    gap: 0.25em;
    margin-bottom: 20px;
  }
  .p-contFeature .p-contFeature__item__top .c-contFeature__tag {
    font-size: 0.8em;
  }
  .p-contFeature .p-contFeature__item .c-contFeature__tag {
    margin-top: 0;
  }
  .p-contFeature__intro {
    display: flex;
    align-items: center;
    background: #e0eff0;
    border-radius: 10px;
    overflow: hidden;
  }
  .p-contFeature__intro figure {
    width: 45%;
    min-width: 45%;
    max-width: 45%;
    aspect-ratio: 4/3;
  }
  .p-contFeature__intro figure img {
    object-fit: cover;
    width: 100%;
    height: 100%;
  }
  .p-contFeature__intro .c-caption {
    width: 35%;
    margin: 0 auto;
  }
}

/* アコーディオン */
.p-contAcc__item {
  margin-bottom: 20px;
}
.p-contAcc__item:last-child {
  margin-bottom: 0;
}
.p-contAcc__item__head {
  background: linear-gradient(to bottom, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 50%, rgb(241, 241, 241) 100%);
  padding: 15px 70px 15px 20px;
  border-radius: 8px;
  border: solid 1px #EEE;
  position: relative;
}
.p-contAcc__item__head:hover {
  cursor: pointer;
}
.p-contAcc__item__head:has(.c-tag)::after {
  top: calc(50% + 5px);
}
.p-contAcc__item__head::after {
  content: '';
  width: 0.8em;
  height: 0.8em;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23333%22%20stroke-width%3D%222.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cline%20x1%3D%2212%22%20y1%3D%225%22%20x2%3D%2212%22%20y2%3D%2219%22%3E%3C%2Fline%3E%3Cline%20x1%3D%225%22%20y1%3D%2212%22%20x2%3D%2219%22%20y2%3D%2212%22%3E%3C%2Fline%3E%3C%2Fsvg%3E');
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  font-weight: bold;
  font-size: 2rem;
  filter: brightness(0) saturate(100%) invert(65%) sepia(2%) saturate(0%) hue-rotate(112deg) brightness(84%) contrast(83%);
}
.p-contAcc__item__head p {
  font-weight: bold;
  color: #666;
}
.p-contAcc__item__head__ttl {
  font-size: 1rem;
  line-height: 1.5;
}
.p-contAcc__item__head .c-subtext {
  font-size: 0.85rem;
}
.p-contAcc__item__head .c-tag {
  position: absolute;
  right: 0;
  top: 0;
  background: #888;
  color: #FFF;
  font-size: 0.85rem;
  font-weight: normal;
  padding: 0 0.2em;
  border-radius: 0 8px 0 8px;
  min-width: 6em;
  text-align: center;
}
.p-contAcc__item__content {
  padding-top: 50px;
}
.p-contAcc__item__head.is-open::after {
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23333%22%20stroke-width%3D%222.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cline%20x1%3D%225%22%20y1%3D%2212%22%20x2%3D%2219%22%20y2%3D%2212%22%3E%3C%2Fline%3E%3C%2Fsvg%3E');
  filter: brightness(0) saturate(100%) invert(100%) sepia(1%) saturate(2%) hue-rotate(149deg) brightness(105%) contrast(100%);
}
.p-contAcc__item__head:hover .c-tag {
  color: #FFF !important;
}
.p-contAcc__item__head.is-open .c-subtext {
  color: #FFF !important;
}

@media screen and (max-width: 768px) {
  .p-contAcc__item__content {
    padding-top: 30px;
  }
}

/* アイコン変更 */
/*.p-contAcc__item__head.is-arrow {
  padding-left: 40px;
}
.p-contAcc__item__head.is-arrow::after {
  right: auto;
  left: -10px;
  width: 1.2em;
  height: 1.2em;
  background: #FFF;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: 100%;
  box-shadow: 2px 2px 4px rgba(0,0,0,0.2);
}*/

/* 色変更 */
.p-contAcc--bluegreen .p-contAcc__item__head .c-tag {
  background-color: #68a7ab;
}
.p-contAcc--bluegreen .p-contAcc__item__head:hover p {
  color: #68a7ab;
}
.p-contAcc__item__head.is-open {
  background: #68a7ab;
  border-color: #68a7ab;
}
.p-contAcc__item__head.is-open .c-tag {
  background-color: #FFF;
  color: #68a7ab !important;
}
.p-contAcc__item__head.is-open * {
  color: #FFF !important;
}

@media screen and (max-width: 768px) {
  .p-contAcc__item__head {
    padding: 8px 40px 8px 15px;
    border-radius: 8px;
    border: solid 1px #EEE;
    position: relative;
  }
  .p-contAcc__item__head::after {
    right: 10px;
    width: 20px;
    height: 20px;
  }
  .p-contAcc__item__head .c-tag {
    font-size: 0.8rem;
  }
}

/* レイアウト変更 */
.p-contAcc--style01 > .p-contAcc__item .p-contAcc__item__head {
  font-size: 1.1rem;
  border-color: #DDD;
}
.p-contAcc--style01 > .p-contAcc__item .p-contAcc__item__head.is-open {
  background: #888;
  border-color: #DDD;
}
.p-contAcc--style01 > .p-contAcc__item .p-contAcc__item__head.is-open::after {
  filter: brightness(0) saturate(100%) invert(40%) sepia(21%) saturate(1403%) hue-rotate(181deg) brightness(91%) contrast(87%);
}
.p-contAcc--style01 > .p-contAcc__item .p-contAcc__item__head.is-open {
  background: #f5f5f5;
  color: #4668a8;
  border-radius: 10px 10px 0 0;
  border-bottom: none;
}
.p-contAcc--style01 > .p-contAcc__item .p-contAcc__item__head.is-open * {
  color: #4668a8 !important;
}
.p-contAcc--style01 > .p-contAcc__item .p-contAcc__item__head + .js-acc__content {
  padding: 30px;
  border-radius: 0 0 10px 10px;
}
.p-contAcc--style01 > .p-contAcc__item .p-contAcc__item__head.is-open + .js-acc__content {
  border: solid 1px #DDD;
  border-top: none;
}

@media screen and (max-width: 768px) {
  .p-contAcc--style01 > .p-contAcc__item .p-contAcc__item__head {
    font-size: 1rem;
  }
  .p-contAcc--style01 > .p-contAcc__item .p-contAcc__item__head + .js-acc__content {
    padding: 20px;
  }
}


/* 金属検出機（テクノアイ）*/
.p-contFood_mainvis h1 {
  font-size: 1.4rem !important;
}
.p-contFood_mainvis__textArea {
  position: relative;
  z-index: 0;
}

@media print, screen and (min-width: 769px) {
  .p-contFood_mainvis {
    background: url("../product/food/images/mainvisual_bgi.jpg") no-repeat center;
    padding: 60px;
  }
}

@media screen and (max-width: 768px) {
  .p-contFood_mainvis {
    padding: 30px 5%;
    background: #C7D0D0;
  }
  .p-contFood_mainvis h1 {
    font-size: 1rem !important;
    padding-bottom: 0 !important;
  }
  .p-contFood_mainvis figure {
    margin: -20px -5%;
    z-index: -1;
    position: relative;
  }
  .p-contFood_mainvis .l-flexBox__spc01 {
    margin-bottom: 0
  }
}

/*----------------------------------------
* WPの記事ページ
----------------------------------------*/
.p-newsCont a {
  color: #4668a8;
  word-break: break-all;
  text-decoration: underline;
}
.p-newsCont a:hover {
  opacity: 1;
  text-decoration: none;
}
.p-newsCont h4 {
  margin-bottom: 0.5em;
}

@media print, screen and (min-width: 769px) {

}

@media screen and (max-width: 768px) {

}


/*----------------------------------------
* 英語ページその他
----------------------------------------*/
@media screen and (max-width: 768px) {
  .guide.page-en .table-style01 > dl > dt{
    max-width: 130px;
    min-width: 130px;
  }
}

/*----------------------------------------
* 追加css
----------------------------------------*/
.p-accColor {
  background: #e60012;
  color: #fff;
  padding: 0 10px;
}

/*----------------------------------------
* .p-imgZoom（lightboxでズームするアイコン）
----------------------------------------*/
.p-imgZoom a {
  position: relative;
  display: block;
}
.p-imgZoom a:hover {
  opacity: 1;
}
.p-imgZoom a:hover::after {
  content: '';
  display: block;
  width: 10%;
  height: 13.5%;
  max-width: 3em;
  max-height: 3em;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2230%22%20height%3D%2230%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23FFF%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2211%22%20cy%3D%2211%22%20r%3D%228%22%3E%3C%2Fcircle%3E%3Cline%20x1%3D%2221%22%20y1%3D%2221%22%20x2%3D%2216.65%22%20y2%3D%2216.65%22%3E%3C%2Fline%3E%3Cline%20x1%3D%2211%22%20y1%3D%228%22%20x2%3D%2211%22%20y2%3D%2214%22%3E%3C%2Fline%3E%3Cline%20x1%3D%228%22%20y1%3D%2211%22%20x2%3D%2214%22%20y2%3D%2211%22%3E%3C%2Fline%3E%3C%2Fsvg%3E');
  background-repeat: no-repeat;
  background-position: center;
  background-color: rgba(0,0,0,0.5);
  background-size: 70%;
  position: absolute;
  right: 5px;
  bottom: 5px;
  border-radius: 15%;
}
.p-imgZoom--text::after {
  display: block;
  content: '※クリックすると拡大します';
  font-size: 0.8rem;
  margin-top: 15px;
}

@media screen and (max-width: 768px) {
  .p-imgZoom a::after {
    content: '';
    display: block;
    width: 10%;
    height: 13.5%;
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2230%22%20height%3D%2230%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23FFF%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2211%22%20cy%3D%2211%22%20r%3D%228%22%3E%3C%2Fcircle%3E%3Cline%20x1%3D%2221%22%20y1%3D%2221%22%20x2%3D%2216.65%22%20y2%3D%2216.65%22%3E%3C%2Fline%3E%3Cline%20x1%3D%2211%22%20y1%3D%228%22%20x2%3D%2211%22%20y2%3D%2214%22%3E%3C%2Fline%3E%3Cline%20x1%3D%228%22%20y1%3D%2211%22%20x2%3D%2214%22%20y2%3D%2211%22%3E%3C%2Fline%3E%3C%2Fsvg%3E');
    background-repeat: no-repeat;
    background-position: center;
    background-color: #555;
    background-size: 70%;
    position: absolute;
    right: 5px;
    bottom: 5px;
    border-radius: 15%;
  }
}

/*----------------------------------------
* .p-sliderStyle01（スライドのスタイル変更）
----------------------------------------*/
.p-sliderStyle01 figure {
  position: relative;
}
.p-sliderStyle01 figcaption {
  width: 100%;
  position: absolute;
  bottom: 0;
  background: rgba(0,0,0,0.5);
  font-size: 1.4em;
  color: #FFF;
  padding: 0.8em 1em;
  text-align: left;
}
.p-sliderStyle01 .slick-dots {
  bottom: -20px;
}

@media print, screen and (min-width: 769px) {

}

@media screen and (max-width: 768px) {
  .p-sliderStyle01 figcaption {
    font-size: 1em;
  }
}

/*----------------------------------------
* アイコンをホバーで吹き出し（PCのみ）
----------------------------------------*/
@media print, screen and (min-width: 769px) {
  .p-fukidashi__item {
    position: relative;
  }
  .p-fukidashi__item__txt {
    display: none;
    width: 200px;
    position: absolute;
    top: -60px;
    left: 60px;
    padding: 13px;
    border-radius: 5px;
    background: #3CB2DD;
    font-size: 0.9em;
    z-index: 2;
  }
  .p-fukidashi__item__txt__ttl,
  .p-fukidashi__item__txt p {
    color: #fff;
    line-height: 1.5;
  }
  .p-fukidashi__item__txt__ttl {
    font-size: 1.15em;
  }
  .p-fukidashi__item__txt:after {
    position: absolute;
    width: 0;
    height: 0;
    left: 0;
    bottom: -18px;
    margin-left: 10px;
    border: solid transparent;
    border-color: rgba(51, 204, 153, 0);
    border-top-color: #3CB2DD;
    border-width: 10px;
    pointer-events: none;
    content: " ";
  }
  .p-fukidashi__item__img:hover + .p-fukidashi__item__txt {
    display: block;
  }
  .p-fukidashi__item__img:hover {
    cursor: pointer;
  }
}

/*----------------------------------------
* .p-flowBox
----------------------------------------*/
.p-flowBox__item {
  position: relative;
  margin-bottom: 70px;
}
.p-flowBox__item:not(.col-item):last-child {
  margin-bottom: 0;
}
.p-flowBox__item::after {
  content: '\23F7';
  position: absolute;
  bottom: -40px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 5em;
  color: #e00012;
  line-height: 0;
}
.p-flowBox__item:last-child::after {
  display: none !important;
}
.p-flowBox--icon-mb0 .p-flowBox__item {
  margin-bottom: 30px;
}
.p-flowBox--icon-mb0 .p-flowBox__item::after {
  bottom: -0.05em;
}
.p-flowBox.is-multiply .p-flowBox__item::after {
  content: '';
  display: block;
  height: 100%;
  background-image: url("../images/common/icon/multiply-red.png") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;
  right: -14% !important;
  width: 10% !important;
}
.p-flowBox.is-color-blue .p-flowBox__item::after {
  color: #003289;
}
.p-flowBox.is-multiply.is-multiply--blue .p-flowBox__item::after {
  content: '';
  background-image: url("../images/common/icon/multiply-blue.png") !important;
}
.p-flowBox.is-reverse .p-flowBox__item::after {
  transform: scale(-1, -1) translateX(50%);
}

@media print, screen and (min-width: 769px) {
  .p-flowBox.is-side .p-flowBox__item {
    margin-right: 8%;
  }
  .p-flowBox.is-side.item2 .p-flowBox__item {
    width: 46%;
  }
  .p-flowBox.is-side.item3 .p-flowBox__item {
    width: 30.66%;
  }
  .p-flowBox.is-side.item3 .p-flowBox__item {
    margin-right: 4%;
  }
  .p-flowBox.is-side .p-flowBox__item::after {
    content: '\23F5';
    width: 7%;
    left: auto;
    right: -30px;
    top: 50%;
    bottom: auto;
    transform: translateY(-50%);
    line-height: 0;
    font-size: 70px;
  }
  .p-flowBox.is-side.item3 .p-flowBox__item::after {
    right: -10px;
    font-size: 50px;
  }
  .p-flowBox.is-side .p-flowBox__item:last-child::after {
    display: none;
  }
  .p-flowBox.is-side.is-reverse .p-flowBox__item::after {
    transform: scale(-1, 1) translateY(-50%);
    right: -70px;
  }
}

@media screen and (max-width: 768px) {
  .p-flowBox.l-colWrap .p-flowBox__item {
    margin-bottom: 80px;
  }
  .p-flowBox.l-colWrap .p-flowBox__item:last-child {
    margin-bottom: 0;
  }
  .p-flowBox.is-multiply .p-flowBox__item::after {
    height: 40px;
    bottom: -60px;
    width: 60% !important;
  }
  .p-flowBox.is-side.is-reverse .p-flowBox__item::after {
    transform: scale(-1, -1) translateX(50%);
    right: -70px;
  }
}


/*----------------------------------------
* .p-contComp（比較表）
----------------------------------------*/
@media screen and (max-width: 768px) {
  .p-contComp table {
    max-width: 1000px;
  }
  .p-contComp table tbody th {
    width: 15%;
    font-size: 0.9rem;
  }
  .p-contComp table thead th {
    min-width: 120px;
  }
}

/*----------------------------------------
* .p-page-ir（IR情報）
----------------------------------------*/
.p-page-ir .p-materiality__table th,
.p-page-ir .p-materiality__table td {
  font-size: 12px;
}
.p-page-ir .p-materiality__table thead th {
  background: #777;
  color: #FFF;
  text-align: center;
}
.p-page-ir .p-materiality__table tbody th {
  width: 9em;  
  background: #fbdee0;
  position: relative;
}
.p-page-ir .p-materiality__table tbody th,
.p-page-ir .p-materiality__table tbody td {
  vertical-align: top;
}
.p-page-ir .p-materiality__table tbody th::before {
  display: none;
}
.p-page-ir .p-materiality__table tbody th::after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: none;
  border: 2px #FFF solid;
}
.p-page-ir .p-materiality__table__sdgs li {
  display: inline-block;
  width: 50px;
}

@media print, screen and (min-width: 769px) {
  .p-page-ir .p-materiality__table thead th:nth-child(2),
  .p-page-ir .p-materiality__table thead th:nth-child(3) {
    width: 25%;
  }
}

/* .p-contStep */
.p-contStep__item {
  position: relative;
  padding: 0 0 50px 100px;
}
.p-contStep__item::before {
  content: '';
  display: block;
  width: 2px;
  height: 100%;
  border-left: dashed 2px #68a7ab;
  position: absolute;
  top: 0;
  left: 40px;
}
.p-contStep__item:last-child {
  padding-bottom: 25px;
}
.p-contStep__item:last-child::before {
  display: none;
}
.p-contStep__item .c-textNum {
  position: absolute;
  border: solid 3px #68a7ab;
  background: #FFF;
  display: inline-flex;
  flex-direction: column;
  font-size: 2rem;
  line-height: 1.1;
  font-weight: bold;
  color: #68a7ab;
  width: 80px;
  height: 80px;
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  left: 0;
}
.p-contStep__item .c-textNum__subtext {
  font-size: 0.85rem;
}
.p-contStep {

}

@media screen and (max-width: 768px) {
  .p-contStep__item {
    padding-left: 70px;
  }
  .p-contStep__item * {
    font-size: 0.9rem;
  }
  .p-contStep__item::before {
    left: 30px;
  }
  .p-contStep__item .c-textNum {
    border-width: 2px;
    background: #FFF;
    font-size: 1.4rem;
    width: 60px;
    height: 60px;
  }
  .p-contStep__item .c-textNum__subtext {
    font-size: 0.8rem;
  }
}

/*----------------------------------------
* lightbox上書き
----------------------------------------*/
.lb-dataContainer {
  padding: 0 !important;
  border-radius: 0 0 !important;
}
.lb-data {
  position: relative;
}
.lb-data .lb-close {
  float: none;
  /*! position: absolute; */
  /*! right: 0; */
  /*! top: 0 */
}
.lb-data .lb-details {
  width: 100% !important;
  float: none;
}
.lb-caption {
  margin: -4px -4px 0; 
  background: #FFF;
  display: block;
  padding: 1em 1em;
  border-radius: 0 0 4px 4px
}
.lb-data .lb-close {
  margin-top: 10px;
}
.lb-data .lb-ttl {
  display: block;
  position: relative;
  font-weight: bold;
  font-size: 1.2em;
  margin-bottom: 0.5em;
  padding-left: 1em;
}
.lb-data .lb-ttl::before {
  content: '';
  display: block;
  width: 5px;
  height: 100%;
  background: #E60012;
  position: absolute;
  left: 0;
  border-radius: 20px;
}

/*----------------------------------------
* slickのオプション（.slider--op）
----------------------------------------*/
.slider--op {
  position: relative;
  /*! overflow-x: hidden; */
  /*! overflow-y: hidden; */
}
.slider--op a:hover {
  opacity: 0.9;
}

/* arrow */
.slider--op.slider--arrow01 .slick-prev,
.slider--op.slider--arrow01 .slick-next {
  transition: 0.2s;
}
.slider--op.slider--arrow01 .slick-prev::before,
.slider--op.slider--arrow01 .slick-next::before {
  display: block !important;
  z-index: 100;
  position: absolute;
  background-color:  rgba(0,0,0,0.6) !important;
  opacity: 1;
  content: '';
  width: 40px;
  height: 150px;
  background-size: 50% !important;
  transform: rotate(0);
  box-sizing: border-box;
  padding: 1em;
}
.slider--op.slider--arrow01 .slick-prev::before {
  left: -20px;
}
.slider--op.slider--arrow01 .slick-next::before {
  right: -20px;
}
.slider--op:hover .slick-prev {
  left: 40px;
}
.slider--op:hover .slick-next {
  right: 40px;
}
.slider--op.slider--arrow01 .slick-prev::before,
.slider--op.slider--arrow01 .slick-next::before {
  background: url("../images/common/icon/arrow-white.png") no-repeat center;
  transform: translateY(-50%);
  border-radius: 6px;
}
.slider--op.slider--arrow01 .slick-prev::before {
  transform: translateY(-50%) rotate(180deg);
}
.slider--op.slider--arrow01 .slick-prev:hover::before,
.slider--op.slider--arrow01 .slick-prev:focus::before,
.slider--op.slider--arrow01 .slick-next:hover::before,
.slider--op.slider--arrow01 .slick-next:focus::before {
  background-color: rgba(224,0,18,0.8) !important;
}

/* dot */
.slider--dot {
  
}
.slider--dot .slick-dots {
  bottom: -40px;  
}
.slider--dot .slick-dots li {
  width: 2em;
  margin: 0 0.5em;
}
.slider--dot .slick-dots li button:before {
  content: '';
  display: block;
  font-size: 0;
  width: 100%;
  height: 8px;
  background: #888;
  border-radius: 20px;
}

@media print, screen and (min-width: 769px) {

}

@media screen and (max-width: 768px) {
  /* arrow */
  .slider--op.slider--arrow01 .slick-prev,
  .slider--op.slider--arrow01 .slick-next {
    display: none !important;
  }

  /* dot */
  .slider--dot .slick-dots {
    bottom: -30px;
  }
  .slider--dot .slick-dots li {
    width: 1.5em;
    margin: 0 8px;
  }
  .slider--dot .slick-dots li button:before {
    height: 5px;
  }
}

/*----------------------------------------
* .p-secVerification（検証テストルーム）
----------------------------------------*/
.p-secVerification__wrap {
  border: solid 1px #DDD;
  padding: 30px;
}
.p-secVerification .table-style01 dl {
  max-width: 100%;
} 

@media screen and (max-width: 768px) {
  .p-secVerification__wrap {
    padding-left: 15px;
    padding-right: 15px;
  }
}

/*----------------------------------------
* slickのオプション
----------------------------------------*/
/* 矢印 */
.p-slickOp--arrow .slick-prev:hover::before, .p-slickOp--arrow .slick-next:hover::before {
  background-color: #e00012;
  color: #FFF;
}
.p-slickOp--arrow .slick-prev {
  left: -25px;
}
.p-slickOp--arrow .slick-prev::after {
  left: calc(50% - 2px);
  transform: translateX(-50%) rotateY(-180deg);
}
.p-slickOp--arrow .slick-next {
  right: -25px;
}
.p-slickOp--arrow .slick-next::after {
  left: calc(50% + 2px);
  transform: translateX(-50%);
}
.p-slickOp--arrow .slick-prev, .p-slickOp--arrow .slick-next {
  width: 50px;
  height: 100%;
  display: flex !important;
  align-items: center;
  justify-content: center;
}
.p-slickOp--arrow .slick-prev::before, .p-slickOp--arrow .slick-next::before {
  width: 50px;
  height: 50px;
  border-radius: 100%;
  background: #FFF;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  display: flex !important;
  align-items: center;
  justify-content: center;
  opacity: 1;
  transform: none;
}
.p-slickOp--arrow .slick-prev::after, .p-slickOp--arrow .slick-next::after {
  content: '';
  display: block;
  background: url("../images/common/icon/arrow-white.png") no-repeat center;
  background-size: contain;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 50%;
  filter: brightness(0) saturate(100%) invert(41%) sepia(1%) saturate(1%) hue-rotate(164deg) brightness(97%) contrast(99%);
  transform: translateX(-50%) translateY(-50%);
}
.p-slickOp--arrow .slick-prev::after {
  transform: translateX(-50%) translateY(-50%) rotate(-180deg);
  left: calc(50% - 2px);
}
.p-slickOp--arrow .slick-prev:hover::before,
.p-slickOp--arrow .slick-next:hover::before {
  background-color: #e60012;
  color: #FFF;
}
.p-slickOp--arrow .slick-prev:hover::after,
.p-slickOp--arrow .slick-next:hover::after {
  filter: none;
}
.p-slickOp--arrow .slick-prev {
  left: -25px;
}

.p-slickOp--arrow .slick-next {
  right: -25px;
}

@media print, screen and (min-width: 769px) {
  .p-slickOp--arrow--fade .slick-prev,
  .p-slickOp--arrow--fade .slick-next {
    visibility: hidden;
    transition: 0.2s;
  }
  .p-slickOp--arrow--fade .slick-prev {
    left: -60px;
  }
  .p-slickOp--arrow--fade .slick-next {
    right: -60px;
  }
  .p-slickOp--arrow--fade:has(.slick-slide):hover .slick-prev,
  .p-slickOp--arrow--fade:has(.slick-slide):hover .slick-next {
    visibility: visible;
  }
  .p-slickOp--arrow--fade:has(.slick-slide):hover .slick-prev {
    left: -25px;
  }
  .p-slickOp--arrow--fade:has(.slick-slide):hover .slick-next {
    right: -25px;
  }
}

@media only screen and (max-width: 768px) {
  .p-slickOp--arrow .slick-prev,
  .p-slickOp--arrow .slick-next {
    width: 45px;
  }
  .p-slickOp--arrow .slick-prev {
    left: -15px;
    padding-right: 15px;
  }
  .p-slickOp--arrow .slick-next {
    right: -15px;
    padding-left: 15px;
  }
  .p-slickOp--arrow .slick-prev::after {
    left: calc(50% - 9px);
  }
  .p-slickOp--arrow .slick-next::after {
    left: calc(50% + 9px);
  }
  .p-slickOp--arrow .slick-prev::before, .p-slickOp--arrow .slick-next::before {
    width: 30px;
    height: 30px;
  }
  .p-slickOp--arrow .slick-prev::after, .p-slickOp--arrow .slick-next::after {
    width: 18px;
    height: 18px;
    background-size: contain;
  }
}

/* ドット */
.p-slickOp--dots .slick-dots {
  left: 0;
  bottom: -34px;
  line-height: 1;
}
.p-slickOp--dots .slick-dots li button:before {
  content: "";
  width: 10px;
  height: 10px;
  background: #FFF;
  opacity: 1;
  border: solid 2px #e60012;
  border-radius: 100%;
}
.p-slickOp--dots .slick-dots li.slick-active button:before {
  color: #e60012;
  opacity: 1;
  background-color: #e60012;
}

@media only screen and (max-width: 768px) {
  .p-slickOp--dots {
    padding-bottom: 20px;
  }
  .p-slickOp--dots .slick-dots {
    bottom: -15px;
  }
}

/*----------------------------------------
* WordPressの投稿用
----------------------------------------*/
.p-newsCont .alignleft {
  display: block;
  float: left;
  margin-right: 10px;
  margin-bottom: 1em;
}
.p-newsCont .aligncenter {
  display: block;
  margin:0 auto;
}
.p-newsCont .alignright {
  display: block;
  float: right;
  margin-left: 10px;
  margin-bottom: 1em;
}

/*----------------------------------------
* 特設ページ
----------------------------------------*/
.p-contProgram__wrap {
  margin-bottom: 50px;
}

@media print, screen and (min-width: 769px) {
  .p-contProgram__wrap {
    padding: 70px 0;
  }
}

@media only screen and (max-width: 768px) {
  .p-contProgram {
    margin-left: -15px;
    margin-right: -15px;
  }
  .p-contProgram__wrap {
    margin-bottom: 0;
  }
  .p-contProgram__wrap__item {
    padding: 20px;
    margin-bottom: 20px !important;
  }
  .p-contProgram__wrap__item--lead {
    background: #f5f5f5;
    padding-top: 30px;
    padding-bottom: 30px;
    margin-bottom: 0 !important;
  }
  .p-contProgram__wrap__item .c-text {
    width: 70%;
    margin: 0 auto;
  }
}

/*----------------------------------------
* 動画のコンテンツ
----------------------------------------*/
.p-contMovie__item {
  border: solid 1px #DDD;
  border-bottom: dashed 1px #CCC;
  padding: 30px;
  border-top: none;
  margin-bottom: 0;
}
.p-contMovie .p-contMovie__item:nth-of-type(1){
  border-top: solid 1px #DDD;
}
.p-contMovie__item:last-child {
  margin-bottom: 0;
}
.p-contMovie__item__date {
  font-weight: bold;
  display: flex;
  justify-content: space-between;
  gap: 2em;
  font-size: 1.1rem;
}
.p-contMovie__item__date .c-text {
  line-height: 1;
}
.p-contMovie__item__date .c-text--oa {
  font-size: 0.85rem;
  position: relative;
}
.p-contMovie__item__date .c-text--oa::before {
  content: '';
  display: inline-block;
  width: 1em;
  height: 1em;
  background: url("../images/common/icon/calendar.svg") no-repeat center;
  background-size: contain;
  margin-right: 0.5em;
}
.p-contMovie__item__text .c-lead,
.p-contMovie__item__text .c-name {
  font-weight: bold;
  line-height: 1.5;
}
.p-contMovie__item__text .c-lead + .c-name {
  margin-top: 10px;
}
.p-contMovie__item__text .c-lead {
  font-size: 1.2rem;
}
.p-contMovie__item__text .c-lead::before {
  content: '「';
  margin-left: -0.5em;
}
.p-contMovie__item__text .c-lead::after {
  content: '」';
}
.p-contMovie__item__text .c-name {
  font-size: 1.1rem;
}
.p-contMovie__item__text .c-subtext {
  display: block;
  font-weight: normal;
  font-size: 0.8em;
  color: #666;
  margin-top: 5px;
}
.p-contMovie__item__movie iframe {
  border-radius: 10px;
  overflow: hidden;
}

.p-contMovie__item__ttl + .p-contMovie__item__desc {
  margin-top: 10px;
}
.p-contMovie__item .c-desc {
  background-color: #f5f5f5;
  padding: 8px 15px;
  margin-top: 15px;
}
.p-contMovie__item .c-desc p {
  font-size: 0.9em;
}
.p-contMovie__item .l-secCont__box__box {
  margin-bottom: 20px;
}
.p-contMovie__item .l-secCont__box__box:last-child {
  margin-bottom: 0;
}

@media print, screen and (min-width: 769px) {
  .p-contMovie__item {
    display: grid;
    grid-template-columns: 40% 56%;
    grid-template-rows: auto auto;
    grid-column-gap: 4%;
    grid-row-gap: 5px;
  }
  .p-contMovie .p-contMovie__item:nth-of-type(1) {
    border-radius: 10px 10px 0 0;
  }
  .p-contMovie .p-contMovie__item:last-child {
    border-bottom: solid 1px #DDD;
    border-radius: 0 0 10px 10px;
  }
  .p-contMovie__item__movie {
    grid-area: 1 / 1 / 3 / 2;
  }
  .p-contMovie__item__date {
    grid-area: 1 / 2 / 2 / 3;
    display: flex;
    align-items: flex-end;
  }
  .p-contMovie__item__text {
    grid-area: 2 / 2 / 3 / 3;  
  }
  .p-contMovie__item .c-desc p {
    line-height: 1.2;
  } 
  .p-contMovie__item--noDesc {
    display: grid;
    grid-template-rows: 1fr;
    grid-row-gap: 4%;
  }
  .p-contMovie__item--noDesc .p-contMovie__item__date {
    display: flex;
    align-items: center;
  }
  .p-contMovie__item--noDesc .p-contMovie__item__movie {
    grid-area: 1 / 1 / 2 / 2;
  }
  .p-contMovie__item--noDesc .p-contMovie__item__text {
    grid-area: 1 / 2 / 2 / 3;
  }
}

@media only screen and (max-width: 768px) {
  .p-contMovie__item {
    padding: 0;
    border: none;
    margin-bottom: 40px;
  }
  .p-contMovie__item__movie iframe {
    border-radius: 0 0 10px 10px;
  }
  .p-contMovie__item__text {
    margin-top: 15px;
  }
  .p-contMovie__item__date .c-text--oa::before {
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%) hue-rotate(11deg) brightness(101%) contrast(105%);
  }
  .p-contMovie__item__date {
    color: #FFF;
    background-color: #111;
    padding: 0.6em 1em;
    border-radius: 10px 10px 0 0;
    align-items: center;
    position: relative;
    overflow: hidden;
  }
  .p-contMovie__item__date::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: url("../images/common/stripe-white.png");
    background-size: 10px;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0.5;
  }
  .p-contMovie__item__date span {
    position: relative;
    z-index: 1;
  }
}

.p-merit-panel {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: auto;
  gap: 30px;
}

.p-merit-panel__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 0;
}

.p-merit-panel__head {
  padding: 1rem;
  background-color: #eee;
}

@media only screen and (max-width: 768px) {
  .p-merit-panel {
    grid-template-columns: 1fr;
  }
}

.p-colGrid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: auto;
  gap: 30px;
  margin-bottom: 30px;
}

.p-colGrid__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  gap: 0;
}

.p-colGrid__item--noText {
  grid-row: span 2;
}

.p-colGrid__img img {
  width: 100%;
}

.p-colGrid__title {
  background-color: #f20012;
  color: #fff;
  text-align: center;
  padding: 6px 18px;
}

.p-colGrid__text {
  background-color: #fff;
  padding: 6px 18px;
  font-size: 14px;
}
@media only screen and (max-width: 768px) {
  .p-colGrid {
    grid-template-columns: repeat(2, 1fr);
  }
}
