@charset "UTF-8";
/* CSS Document */

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section
{ display: block;}

/* !Reseting
---------------------------------------------------------- */
body {
	font-family: "BridgestoneTypeTP-Regular", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Sans", sans-serif;
	font-size: 14px;
	-webkit-text-size-adjust: none;
	line-height: 1.64;
	color: #333;
  min-width: 980px;
  max-height: 999999px; /* For Android Chrome: Font Size Auto Resize */
}
body, div, pre, p, blockquote, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, th, td
{ margin: 0; padding: 0;}
input, textarea
{ margin: 0; font-size: 100%;}
label
{ cursor: pointer;}
table
{ border-collapse: collapse; border-spacing: 0; font-size: 100%;}
fieldset, img, hr
{ border: 0;}
img
{ vertical-align: top;}
address, caption, cite, code, dfn, em, th, var
{ font-style: normal; font-weight: normal;}
ol, ul, li
{ list-style: none;}
caption, th
{ text-align: left;}
h1, h2, h3, h4, h5, h6
{ font-size: 100%; font-weight: normal;}
q:after, q:before
{ content:'';}
a, input
{ outline: none; }
abbr, acronym
{ border: 0;}
figure
{ margin: 0;}

/* !Reset Module
---------------------------------------------------------- */
.reset div, .reset dl, .reset dt, .reset dd, .reset ul, .reset ol, .reset li, .reset h1, .reset h2, .reset h3, .reset h4, .reset h5, .reset h6,
.reset pre, .reset form, .reset fieldset, .reset p, .reset blockquote, .reset th, .reset td
{ margin: 0; padding: 0;}
.reset input, .reset textarea
{ margin: 0; font-size: 100%;}
.reset table
{ border-collapse: collapse; border-spacing: 0; font-size: 100%;}
.reset fieldset, .reset img, .reset abbr, .reset acronym
{ border: 0;}
.reset address, .reset caption, .reset cite, .reset code, .reset dfn, .reset em, .reset th, .reset var
{ font-style: normal; font-weight: normal;}
.reset ol, .reset ul
{ list-style: none;}
.reset caption, .reset th
{ text-align: left;}
.reset h1, .reset h2, .reset h3, .reset h4, .reset h5, .reset h6
{ font-size: 100%; font-weight: normal;}
.reset a, .reset input
{ /* outline: none; */ }
.reset q:after, .reset q:before
{ content:'';}
input::-ms-clear,
input::-ms-reveal {
    visibility:hidden
}

/* !Clearfix
---------------------------------------------------------- */
.clearfix,
#contentsIn {
	display: block;
	min-height: 1%;
}
.clearfix:after,
#contentsIn:after {
	clear: both;
	content:".";
	display: block;
	height: 0;
	visibility: hidden;
}



/* ::::::::::::::::::::::::::::::::: COMMON ::::::::::::::::::::::::::::::::: */

#wrapper * {
  outline: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-appearance: none;
  /*font-feature-settings : "palt";*/
  letter-spacing: 0.02em;
}

#wrapper {
  /* letter-spacing: 0.02em;*/
  line-height: 2;
  background: #111 !important;
  text-align: center;
  position: relative;
  padding-bottom: 0 !important;
  overflow: hidden;
}

#wrapper a {
  text-decoration: none;
  color: #fff;
}

#wrapper p {
  font-size: 15px;
  color: #fff;
}

#wrapper h1,
#wrapper h2,
#wrapper h3,
#wrapper h4,
#wrapper h5,
#wrapper h6,
#wrapper table,
#wrapper ul,
#wrapper ol {
  color: #fff;
}

*.en {
  font-family: "Poppins", sans-serif !important;
  font-weight: 300;
}

body {
  background: #111;
}

body.fixed {
  position: fixed;
  width: 100%;
  height: 100%;
}

button {
  padding: 0;
  height: 0;
  border: none;
}

#wrapper *.hidden {
  transition: opacity 0.7s ease 0.1s, transform 0.7s ease 0.1s;
  opacity: 0;
  transform: translate(10px, 20px) rotateY(-15deg);
}

#wrapper *.hidden.show {
  opacity: 1;
  transform: translate(0, 0) rotateY(0);
}

/* header */
body:not(.top):not(.tetote) header.mainHeader {
  background-color: rgba(17, 17, 17, 0.85);
}
header.mainHeader {
  position: fixed;
  z-index: 999;
  width: 100%;
  left: 0;
  top: 0;
  transition: background-color 0.3s ease-out;
  will-change: background-color;
}

header.mainHeader a {
  color: #fff;
  text-decoration: none;
}

header.mainHeader div.inner {
  padding: 30px 30px 20px 30px;
  display: flex;
  justify-content: space-between;
  gap: 0 4vw;
  transition: padding 0.3s ease-out;
}

header.mainHeader div.left {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

header.mainHeader div.right {
  display: flex;
  justify-content: flex-end;
  font-size: 16px;
  font-weight: 400;
}

header.mainHeader p.siteTitle {
  padding: 0 23px 0 0;
}

header.mainHeader p.contact a {
  display: block;
  background: #444;
  padding: 3px 15px;
  background-color: #444444;
  border-radius: 5px;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.05em;
  color: #ffffff;
}

header.mainHeader div.menuList {
  display: flex;
  justify-content: flex-start;
  gap: 0 1.9305vw;
  padding: 0 2.3166vw 0 0;
}

header.mainHeader div.menuList .menuListInner {
  display: flex;
  gap: 0 1.9305vw;
}

header.mainHeader div.menuList .menuListItem {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 0;
  font-size: 14px;
  letter-spacing: 0;
}

header.mainHeader div.menuList .menuParentItem > .menuParent {
  color: #fff;
  text-decoration: none;
  border-bottom: 2px solid rgba(0, 0, 0, 0);
  background: rgba(0, 0, 0, 0);
}

@media screen and (min-width: 1001px) {
  header.mainHeader .headerLogo {
    flex: 1 0 0;
  }
  header.mainHeader #spMenuBtn {
    display: none;
  }

  header.mainHeader div.menuList .menuListItem {
    padding-top: 5px;
    margin: 0 0 -30px;
    /*
     minWidth: 1001px ~ maxWidth: 1280px
     minFontSize: 11px ~ maxFontSize: 14px
    */
    font-size: clamp(0.75rem, 0.3015rem + 0.7168vw, 0.875rem);
  }

  header.mainHeader p.contact a {
    /*
     minWidth: 1001px ~ maxWidth: 1280px
     minFontSize: 11px ~ maxFontSize: 14px
    */
    font-size: clamp(0.75rem, 0.3015rem + 0.7168vw, 0.875rem);
  }

  header.mainHeader div.menuList .menuListItem.top {
    display: none;
  }

  header.mainHeader div.menuList .menuParentItem > .menuParent:hover {
    cursor: pointer;
  }

  header.mainHeader div.menuList .menuListItem.menuParentItem:hover > .menuParent {
    border-bottom: 2px solid #fff;
  }

  header.mainHeader div.menuList .menuParentItem > .innerMenuListWrap {
    display: none;
    position: absolute;
    top: 28px;
    left: 50%;
    padding-top: 28px;
    z-index: 1000000;
  }

  header.mainHeader div.menuList .menuParentItem > .innerMenuListWrap > .innerMenuList {
    position: relative;
    box-sizing: border-box;
    width: 180px;
    padding: 0 20px;
    background: #494e50;
    border-radius: 5px;
    text-align: left;
    left: -50%;
  }

  header.mainHeader div.menuList .menuParentItem > .innerMenuListWrap > .innerMenuList::before {
    content: "";
    position: absolute;
    top: -7px;
    left: calc(50% - 7px);
    display: block;
    width: 14px;
    height: 7px;
    background: url(/products/softrobotics/img/common/img_inner_menu.svg) center bottom no-repeat;
    background-size: contain;
  }

  header.mainHeader div.menuList .menuListInner:first-child .menuParentItem > .innerMenuListWrap > .innerMenuList::before {
    left: calc(50% - 7px);
  }

  header.mainHeader div.menuList .menuParentItem > .innerMenuListWrap > .innerMenuList > li {
    line-height: 50px;
    font-size: 15px;
  }

  header.mainHeader div.menuList .menuParentItem > .innerMenuListWrap > .innerMenuList > li > a {
    display: block;
  }

  header.mainHeader div.menuList .menuParentItem > .innerMenuListWrap > .innerMenuList > li:not(:last-child) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  }

  header.mainHeader div.menuList .menuParentItem:hover > .innerMenuListWrap {
    display: block;
    opacity: 1;
  }

  header.mainHeader div.menuList .menuParentItem > .innerMenuListWrap:hover {
    display: block;
  }

  header.mainHeader div.menuList .menuListItem.menuParentItem.current > .menuParent {
    border-bottom: 2px solid #fff;
  }
}

@media screen and (max-width: 1000px) {
  header.mainHeader .inner {
    padding: 30px 30px 20px 30px;
  }
  header.mainHeader .contact a {
    margin-top: 33px;
    border: none;
  }

  header.mainHeader.menu-open .contact a {
    display: inline-block;
    background: none;
    border-radius: 0;
    padding: 15px 9px;
    font-size: 14px;
    line-height: 1.5;
    border-top: 1px solid;
    border-bottom: 1px solid #fff;
  }

  header.mainHeader div.right {
    top: 70px;
    transition: background-color 0.3s ease-out, opacity 0.3s ease-out;
    will-change: background-color, opacity;
  }
}
@media screen and (max-width: 768px) {
  header.mainHeader .inner {
    padding: 15px 20px;
  }
}
.headerLogo {
  img {
    width: 100%;
    height: auto;
  }
}

header.mainHeader.scroll {
  background: rgba(17, 17, 17, 0.85);
}

body.index header.mainHeader p.pageTitle {
  display: flex;
  flex-direction: column;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s linear, visibility 0.3s linear;
}

body.index header.mainHeader p.pageTitle a {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

body.index header.mainHeader.scroll p.pageTitle {
  opacity: 1;
  visibility: visible;
}

.headerLogoMain {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  padding-top: 13px;
  transition: opacity 0.3s ease-out, visibility 0.3s ease-out;
  will-change: opacity, visibility;
}

.headerLogoSub {
  position: absolute;
  top: 28px;
  left: 20px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease-out, visibility 0.3s ease-out;
  will-change: opacity, visibility;
}

.headerLogoLink img {
  width: 100%;
  height: auto;
}

.mainHeader.scroll .headerLogoMain {
  opacity: 0;
  visibility: hidden;
}

.mainHeader.scroll .headerLogoSub {
  opacity: 1;
  visibility: visible;
}

@media screen and (min-width: 769px) {
  .headerLogoSub {
    top: 28px;
  }
}
@media screen and (min-width: 1001px) {
  .headerLogoMain {
    gap: 20px;
    padding-top: 9px;
  }
  .headerLogoSub {
    left: 30px;
    width: 16vw;
    top: 45%;
    max-width: 192px;
  }
}
@media screen and (min-width: 1280px) {
  .headerLogoMain {
    padding-top: 9px;
  }
  .headerLogoSub {
    top: 39px;
    left: 30px;
  }
}

/* section */
#wrapper section {
  text-align: left;
}

#wrapper section div.commonWidth {
  width: 86%;
  max-width: 1400px;
  margin: 0 auto;
}

#wrapper section div.commonWidth.w100per {
  width: 100%;
}

#wrapper section.pageKV {
  padding: 270px 0 208px;
  position: relative;
}

#wrapper section.pageKV h1 {
  font-size: 90px;
  line-height: 1.5;
  padding: 0 0 20px;
  position: relative;
  z-index: 11;
}

#wrapper section.pageKV p.lead {
  font-size: 34px;
  position: relative;
  z-index: 11;
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.pageKV p.kv {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 10;
}

#wrapper section.pageKV.news {
  padding: 227px 0 50px;
  position: relative;
}

#wrapper section.pageKV.news h1 {
  padding-bottom: 50px;
}

#wrapper section.pageKV.news p.lead {
  font-size: 19px;
}

#wrapper section.pageKV.about {
  background: #252b2d;
}

#wrapper section.pageKV.technology {
  background: #33393b;
}

#wrapper section.pageKV.technology p.kv {
  border-radius: 0 0 0 140px;
  overflow: hidden;
}

#wrapper section.pageKV div.commonWidth {
  transition: opacity 0.7s ease;
  opacity: 0;
}

#wrapper section.pageKV.on div.commonWidth {
  opacity: 1;
}

#wrapper section.newsArchive {
  background: #33393b;
  position: relative;
  padding: 0 0 150px;
}

#wrapper section.newsArchive::before {
  height: 110px;
  width: 100%;
  content: "";
  left: 0;
  top: 0;
  position: absolute;
  background: #111;
}

#wrapper section.newsArchive.document {
  padding-top: 90px;
}

#wrapper section.newsArchive.document::before {
  display: none;
}

#wrapper section div.newsArchiveWrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  width: 100%;
  position: relative;
}

#wrapper section div.newsArchiveWrap.document {
  width: 100%;
}

#wrapper section div.newsArchiveWrap div.block {
  width: 30%;
  margin: 0 5% 50px 0;
}

#wrapper section div.newsArchiveWrap div.block:nth-child(3n) {
  margin-right: 0;
}

#wrapper section div.newsArchiveWrap.index div.block {
  margin-bottom: 40px;
}

#wrapper section div.newsArchiveWrap a {
  display: block;
}

#wrapper section div.newsArchiveWrap a p.img {
  margin: 0 0 33px;
  border-radius: 30px;
  overflow: hidden;
  transition: transform 0.3s ease;
  width: 100%;
  aspect-ratio: 16/10.6;
}

#wrapper section div.newsArchiveWrap a:hover p.img {
  transform: scale(0.95);
}

#wrapper section div.newsArchiveWrap a p.img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#wrapper section div.newsArchiveWrap a p.date {
  display: inline-block;
  font-weight: 200;
  color: #888;
  padding: 0 0 10px;
  margin-right: 14px;
}

#wrapper section div.newsArchiveWrap a h2 {
  font-size: 22px;
  line-height: 1.7;
  padding: 0 0 15px;
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section div.newsArchiveWrap a p.lead {
  color: #888;
  padding: 0 0 15px;
}

#wrapper section div.newsArchiveWrap a p.mark {
  font-weight: 500;
  padding: 0 0 0 25px;
  background: url(/products/softrobotics/img/common/mark_link2.svg) no-repeat left center;
  background-size: 10px 10px;
  font-size: 16px;
}

#wrapper section div.newsArchiveWrap a p.mark span {
  border-bottom: 1px solid #fff;
}

#wrapper section ul.pagenation {
  font-size: 18px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

#wrapper section ul.pagenation li {
  padding: 0 20px 10px 0;
}

#wrapper section ul.pagenation li a {
  padding: 0 5px 5px;
}

#wrapper section ul.pagenation li a:hover {
  color: #ccc;
}

#wrapper section ul.pagenation li.current a {
  font-weight: 500;
  border-bottom: 1px solid #fff;
}

#wrapper section.newsSingle {
}

#wrapper section.newsSingle iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}

#wrapper section.newsSingle div.inner {
  width: 700px;
  margin: 0 auto;
  padding: 240px 0 150px;
}

#wrapper section.newsSingle div.titleWrap {
  margin: 0 0 70px;
  padding: 0 0 40px;
  border-bottom: 1px solid #aaa;
}

#wrapper section.newsSingle div.titleWrap p.date {
  padding: 0 0 15px;
  color: #888;
  display: inline-block;
  margin-right: 14px;
}

#wrapper section.newsSingle div.titleWrap .category {
  display: inline-block;
  padding: 0 0 15px;
}

#wrapper section.newsSingle div.titleWrap .category ul li {
  display: inline-block;
  margin-right: 3px;
}

#wrapper section.newsSingle div.titleWrap .category ul li a {
  display: block;
  padding: 5px 12px;
  border: 1px solid #4c5153;
  border-radius: 3px;
  color: #888;
  line-height: 1;
  font-size: 12px;
}

#wrapper section.newsSingle div.titleWrap .category ul li a:hover {
  opacity: 0.7;
}

#wrapper section.newsSingle div.titleWrap h1 {
  font-size: 41px;
  line-height: 1.6;
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.newsSingle div.contentWrap {
}

#wrapper section.newsSingle div.contentWrap p,
#wrapper section.newsSingle div.contentWrap table,
#wrapper section.newsSingle div.contentWrap ul,
#wrapper section.newsSingle div.contentWrap ol {
  font-size: 19px;
  margin: 0 0 45px;
}

#wrapper section.newsSingle div.contentWrap a {
  text-decoration: underline;
}

#wrapper section.newsSingle div.contentWrap a:hover {
  color: #ccc;
}

#wrapper section.newsSingle div.contentWrap strong {
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.newsSingle div.contentWrap table {
  width: 100%;
}

#wrapper section.newsSingle div.contentWrap table th,
#wrapper section.newsSingle div.contentWrap table td {
  text-align: left;
  vertical-align: top;
  border-top: 1px solid #aaa;
  border-bottom: 1px solid #aaa;
  padding: 15px 10px 15px 0;
}

#wrapper section.newsSingle div.contentWrap table th {
  font-weight: bold;
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.newsSingle div.contentWrap h2 {
  font-size: 35px;
  line-height: 1.6;
  padding: 0 0 40px;
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.newsSingle div.contentWrap h3 {
  font-size: 31px;
  line-height: 1.7;
  padding: 0 0 40px;
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.newsSingle div.contentWrap h4 {
  font-size: 26px;
  line-height: 1.8;
  padding: 0 0 40px;
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.newsSingle div.contentWrap h5 {
  font-size: 22px;
  line-height: 1.9;
  padding: 0 0 40px;
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.newsSingle div.contentWrap h6 {
  font-size: 20px;
  line-height: 2;
  padding: 0 0 40px;
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.newsSingle div.contentWrap ul {
  padding: 0 0 0 20px;
}

#wrapper section.newsSingle div.contentWrap ul li {
  list-style-type: disc;
}

#wrapper section.newsSingle div.contentWrap ol {
  padding: 0 0 0 20px;
  counter-reset: item;
}

#wrapper section.newsSingle div.contentWrap ol li {
  list-style-type: inherit;
  position: relative;
}

#wrapper section.newsSingle div.contentWrap ol li:before {
  counter-increment: item;
  content: counter(item) ".";
  position: absolute;
  left: -20px;
  top: 0;
}

#wrapper section.newsSingle div.snsWrap {
  padding: 60px 0 100px;
}

#wrapper section.newsSingle div.snsWrap h2 {
  font-size: 50px;
  font-weight: 200;
  padding: 0 0 0 45px;
  margin-bottom: -50px;
}

#wrapper section.newsSingle div.snsWrap div.base {
  background: #252b2d;
  border-radius: 30px;
  padding: 30px 0;
}

#wrapper section.newsSingle div.snsWrap div.base ul {
  display: flex;
  justify-content: center;
}

#wrapper section.newsSingle div.snsWrap div.base ul li {
  padding: 0;
  margin: 0 -10px;
}

#wrapper section.newsSingle div.snsWrap ul li a {
  display: block;
  transition: transform 0.4s ease, background 0.4s ease;
  background: rgba(0, 0, 0, 0);
  border-radius: 50%;
  padding: 20px;
}

#wrapper section.newsSingle div.snsWrap ul li a:hover {
  transform: scale(0.8);
  background: rgba(0, 0, 0, 1);
}

#wrapper section.newsSingle p.btnBack {
  font-size: 19px;
  font-weight: 200;
}

#wrapper section.newsSingle p.btnBack a {
  padding: 0 0 0 60px;
  margin: 0 -5px;
  line-height: 40px;
  background: url(/products/softrobotics/img/common/mark_link3.svg) no-repeat left 5px center;
  background-size: 40px 40px;
  display: inline-block;
  transition: background 0.3s ease;
}

#wrapper section.newsSingle p.btnBack a:hover {
  background-position: left center;
}

#wrapper section.aboutMain {
  background: #33393b;
  padding: 140px 0 150px;
}

#wrapper section.aboutMain.value {
  /* background: #252B2D; */
  background: transparent;
}

#wrapper section.aboutMain div.aboutContent {
  display: flex;
  justify-content: space-between;
}

#wrapper section.aboutMain div.aboutContent div.left {
  width: 270px;
}

#wrapper section.aboutMain div.aboutContent div.right {
  width: calc(100% - 275px);
}

#wrapper section.aboutMain div.videoWrap {
  padding: 20px 0 0;
}

#wrapper section.aboutMain .linkButtonWrap {
  max-width: 350px;
  margin-top: 80px;
}

#wrapper section.aboutMain .linkButton {
  display: grid;
  grid-template-columns: 1fr 17px;
  align-items: center;
  padding: 28px 30px;
  gap: 30px;
  border-radius: 12px;
  border: 2px solid var(--cccccc, #ccc);
  background: rgba(0, 0, 0, 0.3);
  font-size: 18px;
  font-weight: 500;
  line-height: 1.777;
  letter-spacing: 0.03em;
  color: #fff;
  transition: opacity 0.3s ease;
  .icon {
    display: grid;
    place-items: center;
  }
}
#wrapper section.aboutMain .linkButton:hover {
  opacity: 0.7;
}

#wrapper section.aboutMain .linkButton .icon {
  display: grid;
  place-items: center;
}

#wrapper section.aboutMain div.detail {
  padding: 10px 0 10px;
}

#wrapper section.aboutMain div.detail h3 {
  font-size: 40px;
  font-weight: 500;
  padding: 0 0 40px;
  position: relative;
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.aboutMain div.detail h3 span {
  background: #111;
  padding: 0 40px 0 0;
  position: relative;
}

#wrapper section.aboutMain div.detail h3::before {
  position: absolute;
  content: "";
  left: 0;
  top: 40px;
  border-top: 1px solid #fff;
  width: 100%;
}

#wrapper section.aboutMain div.detail p {
  font-size: 17px;
}

#wrapper section.aboutMain button.videoThumb {
  background: none;
  position: relative;
  border-radius: 30px;
  overflow: hidden;
  cursor: pointer;
  border: none;
  padding: 0;
  width: auto;
  height: auto;
}

#wrapper section.aboutMain button.videoThumb span.img img {
  max-width: 100%;
  height: auto;
  transition: opacity 0.3s ease;
  border-radius: 30px;
}

#wrapper section.aboutMain button.videoThumb:hover span.img img {
  opacity: 0.7;
  border-radius: 30px;
}

#wrapper section.aboutMain button.videoThumb span.mark {
  position: absolute;
  inset: 0;
  display: grid;
  align-items: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  margin: auto;
  background-color: rgba(0, 0, 0, 0.2);
  border: 3px solid #fff;
  border-radius: 50%;
  box-shadow: 0px 1.6px 16px 0px rgba(0, 0, 0, 0.3);
  transition: transform 0.4s ease;
}
#wrapper section.aboutMain button.videoThumb span.mark img {
  width: 32px;
  height: 32px;
  max-width: 100%;
  height: auto;
}

#wrapper section.aboutMain button.videoThumb:hover span.mark {
  transform: scale(0.8);
}

#wrapper section.aboutMain h2 {
  font-size: 35px;
  padding: 0 0 0 70px;
  position: relative;
  line-height: 1.4;
}

#wrapper section.aboutMain h2::before {
  width: 50px;
  border-top: 1px solid #fff;
  position: absolute;
  content: "";
  left: 0;
  top: 25px;
}

#wrapper section.aboutMain p {
  font-size: 22px;
  padding: 0 0 40px;
  line-height: 2.4;
}

#wrapper section.pageBottomLink {
  background: #252b2d;
  padding: 0 0 180px;
  position: relative;
}

#wrapper section.pageBottomLink::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background: #000;
  border-radius: 0 70px 70px 0;
  width: 93%;
  height: 33vw;
}

#wrapper section.pageBottomLink div.inner {
  position: relative;
  width: 93%;
  height: 33vw;
  z-index: 15;
}

#wrapper section.pageBottomLink ul.en {
  position: absolute;
  left: 12%;
  top: 5vw;
  z-index: 15;
  font-size: 28px;
  width: 300px;
}

#wrapper section.pageBottomLink ul.en li {
  padding: 0 0 10px;
}

#wrapper section.pageBottomLink ul.en li a {
  border-bottom: 1px solid #fff;
  padding: 0 5px 5px 0;
  display: block;
  background: url(/products/softrobotics/img/common/mark_link4.svg) no-repeat right 5px center;
  background-size: 22px 16px;
  transition: all 0.3s ease;
}

#wrapper section.pageBottomLink ul.en li a.outer {
  background-image: url(/products/softrobotics/img/common/mark_outer.svg);
}

#wrapper section.pageBottomLink ul.en li a:hover {
  background-position: right center;
}

#wrapper section.pageBottomLink p.img {
  width: 93%;
  margin-top: -27vw;
  position: relative;
  z-index: 10;
}

#wrapper section.pageBottomLink p.img img {
  width: 100%;
  height: auto;
}

#wrapper section.topKV {
  height: 100vh;
  min-height: 600px;
  max-height: 1100px;
  background: url(/products/softrobotics/img/top/kv.jpg) no-repeat center center;
  background-size: cover;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

#wrapper section.topKV div.titleWrap {
  text-align: center;
}

#wrapper section.topKV div.titleWrap h1 {
  padding: 0 0 20px;
}

#wrapper section.topKV div.titleWrap p.lead {
  font-size: 20px;
}

#wrapper section.topKV div.titleWrap p.lead .leadSubTxt {
  font-size: 15px;
}

#wrapper section.topKV .bnrGDA {
  position: absolute;
  left: 47px;
  bottom: 53px;
  width: 162px;
}

#wrapper section.topKV .cvBtnUnit,
#wrapper section.topKV .cvBtnUnit * {
  box-sizing: border-box;
}

#wrapper section.topKV .cvBtnUnit {
  position: fixed;
  right: 0px;
  bottom: 53px;
  padding: 20px 0 20px 20px;
  width: 310px;
  height: 140px;
  background: rgba(0, 0, 0, 0.8);
  border-radius: 20px 0 0 20px;
  z-index: 100;
  transition: right 0.5s ease;
}

#wrapper section.topKV .cvBtnUnit:has(input[type="checkbox"]:checked) {
  right: -310px;
}

#wrapper section.topKV .cvBtnUnit .cvnBtnUnitClose {
  position: absolute;
  right: 0;
  top: 50%;
  display: block;
  width: 45px;
  height: 15px;
  border-left: solid 1px #fff;
  transform: translateY(-50%);
}

#wrapper section.topKV .cvBtnUnit .cvnBtnUnitClose input {
  position: absolute;
  left: 0;
  opacity: 0;
}

#wrapper section.topKV .cvBtnUnit .cvnBtnUnitClose label {
  display: block;
  width: 100%;
  height: 100%;
  background: url(/products/softrobotics/img/top/ico_cv-close.png) center center no-repeat;
  background-size: contain;
  content: "";
  cursor: pointer;
}

#wrapper section.topKV .cvBtnUnit .cvnBtnUnitClose label:hover {
  opacity: 0.7;
}

#wrapper section.topKV .cvBtnList {
  display: flex;
  height: 100%;
  flex-direction: column;
  justify-content: space-between;
}

#wrapper section.topKV .cvBtnUnit a {
  position: relative;
  display: block;
  width: 230px;
  padding-left: 59px;
  line-height: 40px;
  height: 40px;
  border-radius: 20px;
  border: solid 1px #fff;
  font-size: 18px;
  color: #fff;
}

#wrapper section.topKV .cvBtnUnit a::before {
  position: absolute;
  left: 27px;
  top: 50%;
  display: block;
  width: 16px;
  height: 13px;
  background: url(/products/softrobotics/img/top/ico_cv-arrow.png) center center no-repeat;
  background-size: contain;
  content: "";
  transform: translateY(-50%);
  transition: left 0.3s ease;
}

#wrapper section.topKV .cvBtnUnit a:hover::before {
  left: 32px;
}

#wrapper section.topKV p.scroll {
  width: 70px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 16%;
  margin: 0 auto;
  animation: scrollBtn 2s linear 0s infinite;
}

#load {
  background: #000;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: 15;
  transition: all 0.7s ease 0.1s;
}

#load.off {
  opacity: 0;
  visibility: hidden;
}

#load span {
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  width: 35px;
  height: 35px;
  border: 3px solid rgba(0, 0, 0, 0);
  border-top-color: #555;
  border-radius: 50%;
  animation: spinLoad 0.4s linear 0s infinite;
  transform-origin: center;
}

#load.page {
  background: none;
}

#load.page span {
  top: 60%;
  bottom: auto;
}

@keyframes spinLoad {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

@keyframes scrollBtn {
  0% {
    opacity: 1;
    transform: translateY(0);
  }

  50% {
    opacity: 0.5;
    transform: translateY(8px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

#wrapper section p.btnMore a {
  transition: all 0.3s ease;
}

#wrapper section p.btnMore a:hover {
  background-position: right center !important;
}

#wrapper .topConceptModelBanner {
  padding-bottom: 82px;
}

#wrapper .topConceptModelBanner .link img {
  width: 100%;
  max-width: 100%;
  height: auto;
  transition: transform 0.3s ease;
}

#wrapper .topConceptModelBanner .link:hover img {
  transform: scale(0.95);
}

#wrapper section.topSection {
  background: #33393b;
  padding: 100px 0 0;
}

#wrapper section.topSection.pages {
  padding: 54px 0 355px;
}

#wrapper section.topSection.pages.mission {
  padding-top: 184px;
}

#wrapper section.topSection h2 {
  font-weight: 200;
}

#wrapper section.topSection h2.news {
  display: inline-flex;
  flex-direction: column;
  font-size: 70px;
  line-height: 1.5;
  padding: 0 0 50px;
}

#wrapper section.topSection h2.news > .sub {
  margin-top: -6px;
  font-size: 15px;
  letter-spacing: 2px;
}

#wrapper section.topSection p.btnMore {
  font-size: 19px;
  font-weight: 200;
}

#wrapper section.topSection p.btnMore.right {
  text-align: right;
}

#wrapper section.topSection p.btnMore a {
  padding: 0 65px 0 0;
  line-height: 40px;
  background: url(/products/softrobotics/img/common/mark_link1.svg) no-repeat right 5px center;
  background-size: 40px 40px;
  display: inline-block;
}

#wrapper section.topSection div.aboutWrap {
  padding: 150px 0 150px;
  position: relative;
}

#wrapper section.topSection div.aboutWrap p.img0 {
  background: none;
  position: relative;
  border-radius: 30px;
  overflow: hidden;
  width: calc(100% - 310px);
  margin: 0 0 0 auto;
  padding: 0;
  display: block;
  transition: transform 1s ease;
}

#wrapper section.topSection div.aboutWrap p.img0 img {
  width: 100%;
  height: auto;
}

#wrapper section.topSection div.aboutWrap span.img {
  width: 100%;
  display: block;
}

#wrapper section.topSection div.aboutWrap span.img img {
  width: 100%;
  height: auto;
}

#wrapper section.topSection div.aboutWrap span.mark {
  position: absolute;
  width: 100px;
  height: 100px;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

#wrapper section.topSection div.aboutWrap div.title {
  position: absolute;
  display: flex;
  justify-content: center;
  flex-direction: column;
  left: 15px;
  top: 0;
  height: 100%;
  z-index: 10;
}

#wrapper section.topSection div.aboutWrap h2 {
  display: inline-flex;
  flex-direction: column;
  font-size: 110px;
  line-height: 1.5;
  margin: 0 0 0 -15px;
}

#wrapper section.topSection div.aboutWrap h2 > .sub {
  margin-top: -16px;
  font-size: 18px;
  letter-spacing: 2px;
}

#wrapper section.topSection div.aboutWrap p.lead {
  font-size: 28px;
  line-height: 1.7;
  padding: 38px 0 35px;
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.topSection div.techWrap {
  padding: 0 0 120px;
  position: relative;
}

#wrapper section.topSection div.techWrap div.title {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  position: relative;
  z-index: 10;
}

#wrapper section.topSection div.techWrap h2 {
  display: inline-flex;
  flex-direction: column;
  font-size: 110px;
  line-height: 1.5;
  margin: 0 -25px 38px 0;
}

#wrapper section.topSection div.techWrap h2 > .sub {
  margin-top: -18px;
  font-size: 18px;
  letter-spacing: 2px;
}

#wrapper section.topSection div.techWrap p.lead {
  font-size: 28px;
  line-height: 1.7;
  padding: 0 90px 35px 0;
}

#wrapper section.topSection div.techWrap ul.imgList {
  margin: -150px 0 0;
}

#wrapper section.topSection div.techWrap ul.imgList img {
  width: 100%;
  height: auto;
}

#wrapper section.topSection div.techWrap ul.imgList li {
  overflow: hidden;
  position: relative;
  transition: transform 1s ease;
}

#wrapper section.topSection div.techWrap ul.imgList li.img1 {
  width: 60%;
  border-radius: 70px;
  z-index: 2;
}

#wrapper section.topSection div.techWrap ul.imgList li.img2 {
  width: 48%;
  border-radius: 60px;
  margin: -110px 0 0 47%;
}

#wrapper section.topSection div.techWrap ul.imgList li.img3 {
  width: 30%;
  border-radius: 50px;
  position: absolute;
  right: 0;
  top: 35%;
}

#wrapper section.topSection div.specialWrap {
  width: 93%;
  padding: 0 0 200px;
}

#wrapper section.topSection div.specialWrap div.img {
  overflow: hidden;
  margin: 0 0 55px;
  position: relative;
}

#wrapper section.topSection div.specialWrap div.img span.bg {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 1;
}

#wrapper section.topSection div.specialWrap div.img span.bg::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 1;
  border-radius: 0 70px 70px 0;
  box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.6) inset;
  width: 100%;
  height: 100%;
}

#wrapper section.topSection div.specialWrap div.img img {
  width: 100%;
  height: auto;
}

#wrapper section.topSection div.specialWrap div.img img.main {
  position: relative;
  z-index: 2;
}

#wrapper section.topSection div.specialWrap div.img img.bg {
  border-radius: 0 70px 70px 0;
}

#wrapper section.topSection div.specialWrap div.bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#wrapper section.topSection div.specialWrap div.bottom p.txt {
  font-size: 28px;
  padding: 0 3% 0 8%;
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.topSection div.contactWrap,
#l-lp .c-lp__download-contact .topSection div.contactWrap {
  margin: 0;
  position: relative;
  height: 385px;
}

#wrapper section.topSection div.contactWrap div.inner,
#l-lp .c-lp__download-contact .topSection div.contactWrap div.inner {
  box-sizing: border-box;
  position: relative;
  z-index: 2;
  width: calc(86% - 180px);
  height: 100%;
  max-width: 1240px;
  padding: 57px 0 89px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

#l-lp .c-lp__download-contact .topSection div.contactWrap div.inner {
  color: #fff;
  text-align: left;
}

#wrapper section.topSection div.contactWrap p.img,
#l-lp .c-lp__download-contact .topSection div.contactWrap p.img {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  padding: 70px 0 70px;
  text-align: right;
  z-index: 2;
}

#wrapper section.topSection div.contactWrap p.img img,
#l-lp .c-lp__download-contact .topSection div.contactWrap p.img img {
  height: auto;
}

#wrapper section.topSection div.contactWrap::before,
#l-lp .c-lp__download-contact .topSection div.contactWrap::before {
  width: 86%;
  max-width: 1400px;
  height: 385px;
  margin: 0 auto;
  background: #000;
  position: absolute;
  left: 0;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  content: "";
  border-radius: 70px;
}

#wrapper section.topSection div.contactWrap h2,
#l-lp .c-lp__download-contact .topSection div.contactWrap h2 {
  display: inline-flex;
  flex-direction: column;
  font-size: 80px;
  line-height: 1.4;
  padding: 0 70px 0 0;
}

#wrapper section.topSection div.contactWrap h2 > span.sub,
#l-lp .c-lp__download-contact .topSection div.contactWrap h2 > span.sub {
  margin-top: 2px;
  font-size: 15px;
  letter-spacing: 2px;
}

#wrapper section.topSection div.contactWrap p.btn,
#l-lp .c-lp__download-contact .topSection div.contactWrap p.btn {
}

#wrapper section.topSection div.contactWrap p.btn a,
#l-lp .c-lp__download-contact .topSection div.contactWrap p.btn a {
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
  box-sizing: border-box;
  display: block;
  width: 350px;
  border-bottom: 1px solid #fff;
  padding: 11px 100px 22px 0;
  background: url(/products/softrobotics/img/common/mark_link1.svg) no-repeat right 5px top 7px;
  background-size: 40px 40px;
  font-size: 19px;
  font-weight: normal;
  transition: all 0.3s ease;
}

#l-lp .c-lp__download-contact .topSection div.contactWrap p.btn a {
  color: #fff;
  text-decoration: none;
}

#wrapper section.topSection div.contactWrap p.btn a:hover,
#l-lp .c-lp__download-contact .topSection div.contactWrap p.btn a:hover {
  background-position: right top 7px !important;
}

#wrapper section.topSection div.snsWrap {
  padding: 150px 0 170px;
  text-align: center;
}

#wrapper section.topSection div.snsWrap h2 {
  font-size: 40px;
  padding: 0 0;
}

#wrapper section.topSection div.snsWrap ul {
  display: flex;
  justify-content: center;
}

#wrapper section.topSection div.snsWrap ul li {
  padding: 0;
  margin: 0 -5px;
}

#wrapper section.topSection div.snsWrap ul li a {
  display: block;
  transition: transform 0.4s ease, background 0.4s ease;
  background: rgba(0, 0, 0, 0);
  border-radius: 50%;
  padding: 20px;
}

#wrapper section.topSection div.snsWrap ul li a:hover {
  transform: scale(0.8);
  background: rgba(0, 0, 0, 1);
}

#wrapper section.topSection div.snsWrap ul + p {
  margin-top: 60px;
}

#wrapper section.topSection div.snsWrap .sitemapLink {
  text-decoration: none;
  transition: all 0.3s ease;
}

#wrapper section.topSection div.snsWrap .sitemapLink:hover {
  opacity: 0.7;
}

.c-category__section {
  padding: 0 0 80px 0;
}

/* special */

#wrapper section.specialKV {
  padding: 100px 0 0;
  position: relative;
}

#wrapper section.specialKV img {
  width: 100%;
  height: auto;
}

#wrapper section.specialKV p.bg {
}

#wrapper section.specialKV ul.main {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
}

#wrapper section.specialKV ul.main li {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
  transition: opacity 0.9s ease, transform 0.9s cubic-bezier(0.25, 1, 0.5, 1);
  opacity: 0;
}

#wrapper section.specialKV ul.main li.sld1 {
  transform: translateX(-10%);
}

#wrapper section.specialKV ul.main li.sld2 {
  transform: translateX(15%);
  transition-delay: 0.4s;
}

#wrapper section.specialKV ul.main li.sld3 {
  transform: translateX(-20%);
  transition-delay: 0.8s;
}

#wrapper section.specialKV ul.main li.on {
  transform: translateX(0%);
  opacity: 1;
}

#wrapper section.specialContent {
  background: #fff url(/products/softrobotics/img/special/bg.jpg) repeat center top;
  background-size: 640px 400px;
  padding: 125px 0 110px;
}

#wrapper section.specialContent h2,
#wrapper section.specialContent p {
  color: #111;
}

#wrapper section.specialContent h2 {
  font-size: 54px;
  font-weight: 700;
  line-height: 1.3;
  padding: 0 0 40px;
  position: relative;
  font-family: "UD新ゴB", "UD Shin Go Bold", sans-serif;
}

#wrapper section.specialContent h2 span.mark {
  position: absolute;
  left: -40px;
  top: -50px;
}

#wrapper section.specialContent h2 span.line {
  display: inline-block;
  position: relative;
  z-index: 2;
  padding: 0 0 7px;
}

#wrapper section.specialContent h2 span.line::after {
  border-bottom: 7px solid #009fdd;
  position: absolute;
  width: 0%;
  content: "";
  left: 0;
  bottom: 0;
  transition: width 1s cubic-bezier(0.76, 0, 0.24, 1) 0.5s;
}

#wrapper section.specialContent h2.red span.line::after {
  border-color: #d84f81;
}

#wrapper section.specialContent h2.purple span.line::after {
  border-color: #e2882c;
}

#wrapper section.specialContent p.img img {
  width: 100%;
  height: auto;
}

#wrapper section.specialContent p.sub {
  font-size: 22px;
  font-weight: 500;
  padding: 0 0 30px;
  font-family: "UD新ゴM", "UD Shin Go Medium", sans-serif;
}

#wrapper section.specialContent p.strong {
  font-size: 25px;
  font-weight: 600;
  font-family: "UD新ゴDB", "UD Shin Go DemiBold", sans-serif;
}

#wrapper section.specialContent div.commonWidth {
  display: flex;
  justify-content: space-between;
}

#wrapper section.specialContent div.left {
  width: 50%;
}

#wrapper section.specialContent div.right {
  width: 45%;
}

#wrapper section.specialContent:nth-child(odd) {
  background-image: url(/products/softrobotics/img/special/bg_even.jpg);
}

#wrapper section.specialContent:nth-child(odd) div.commonWidth {
  flex-direction: row-reverse;
}

#wrapper section.specialContent:nth-child(odd) div.left {
  width: 45%;
}

#wrapper section.specialContent div.commonWidth.show h2 span.line::after {
  width: 100%;
}

#wrapper section.specialContent div.contactWrap {
  background: #fff;
  border-radius: 30px;
  border: 3px solid #000;
  width: 100%;
  padding: 20px;
  box-shadow: 10px 10px 0px 0px #ffef25;
  margin: 20px 0 40px;
}

#wrapper section.specialContent div.contactWrap div.inner {
  background: #212121;
  border-radius: 10px;
  border: 3px solid #000;
  position: relative;
}

#wrapper section.specialContent div.contactWrap div.top {
  width: 60%;
  padding: 0 0 0 40%;
}

#wrapper section.specialContent div.contactWrap div.bottom {
  position: absolute;
  left: 2%;
  bottom: 0;
  width: 40%;
}

#wrapper section.specialContent div.contactWrap a {
  display: block;
}

#wrapper section.specialContent div.contactWrap a p.mark {
  color: #fff;
  font-size: 18px;
  padding: 45px 15% 65px 15%;
  transition: opacity 0.3s ease;
}

#wrapper section.specialContent div.contactWrap a p.mark span {
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
  border-bottom: 2px solid #fff;
  padding: 0 0 23px;
  display: block;
  background: url(/products/softrobotics/img/common/mark_link1.svg) no-repeat right top;
  background-size: 40px 40px;
  font-size: 19px;
}

#wrapper section.specialContent div.contactWrap a p.img {
  transition: transform 0.3s ease;
  transform-origin: center bottom;
}

#wrapper section.specialContent div.contactWrap a:hover p.img {
  transform: scale(1.05);
}

#wrapper section.specialContent div.contactWrap a:hover p.mark {
  opacity: 0.7;
}

#wrapper section.specialContent div.contactWrap h2 {
  margin: -3px -3px 0 0;
  padding: 0;
}

#wrapper section.specialContent div.contactWrap h2 img {
  width: 100%;
  height: auto;
}

#wrapper section.pageKV.sitemap {
  padding-top: 227px;
  padding-bottom: 84px;
}

#wrapper .pageTitleSub {
  display: block;
  font-size: 18px;
  margin-top: -11px;
  letter-spacing: 1.2px;
}

#wrapper.sitemapBg {
  background-color: #252b2d !important;
}

@media screen and (max-width: 979px) {
  #wrapper section.pageKV.sitemap {
    padding-bottom: 40px;
  }
  #wrapper .pageTitleSub {
    font-size: 14px;
    margin-top: -4px;
  }
}

/* other */
p.specialBtn {
  z-index: 998;
  position: fixed;
  right: 80px;
  bottom: 0;
}

p.specialBtn a {
  transition: transform 0.3s ease, opacity 0.3s ease;
  display: block;
  transform-origin: right bottom;
}

p.specialBtn a:hover {
  transform: scale(1.05);
  opacity: 0.9;
}

/* modal */
#modal {
  position: fixed;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  left: 0;
  top: 0;
  z-index: 2000;
  display: flex;
  justify-content: center;
  align-items: center;
  visibility: hidden;
  opacity: 0;
  transition: visibility 0.4s linear, opacity 0.4s linear;
}

#modal.on {
  visibility: visible;
  opacity: 1;
}

#modal div.inner {
  position: relative;
  width: 70%;
}

#modal div.youTube {
}

#modal div.youTube {
  position: relative;
  width: 100%;
  padding: 56.3% 0 0;
  background: #333;
}

#modal div.youTube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#modal button#modalClose {
  position: absolute;
  right: -70px;
  top: -40px;
  background: none;
  border: none;
  width: 50px;
  height: 50px;
  cursor: pointer;
}

/* ::::::::::::::::::::::::::::::::: LARGE PC ::::::::::::::::::::::::::::::::: */
@media screen and (min-width: 1500px) {
}

/* ::::::::::::::::::::::::::::::::: SMALL PC ::::::::::::::::::::::::::::::::: */
@media screen and (max-width: 1400px) {
  #wrapper section.specialKV {
    width: 120%;
    margin: 0 -10%;
  }

  #wrapper section.specialContent p br {
    display: none;
  }
}

@media screen and (max-width: 1200px) {
  #wrapper section.topSection div.contactWrap div.inner,
  #l-lp .c-lp__download-contact .topSection div.contactWrap div.inner {
    width: calc(86% - 120px);
  }

  #wrapper section.topSection div.contactWrap h2,
  #l-lp .c-lp__download-contact .topSection div.contactWrap h2 {
    padding: 0 50px 0 0;
  }

  #wrapper section.topSection div.contactWrap p.btn a,
  #l-lp .c-lp__download-contact .topSection div.contactWrap p.btn a {
    padding: 0 70px 20px 0;
  }

  #wrapper section.topKV div.titleWrap h1 img {
    width: 880px;
    height: auto;
  }

  #wrapper section.aboutMain p br {
    display: none;
  }

  #wrapper section.specialContent h2 {
    font-size: 45px;
  }
}

/* ::::::::::::::::::::::::::::::::: PC ::::::::::::::::::::::::::::::::: */
@media screen and (min-width: 980px) {
  /* .sp {
        display: none !important;
    } */

  .hoverAlpha {
    transition: opacity 0.3s ease;
  }

  .hoverAlpha:hover {
    opacity: 0.7;
  }
  .sp {
    display: none !important;
  }
}
@media screen and (min-width: 1001px) {
  header.mainHeader button#spMenuBtn {
    display: none !important;
  }
  .headerSp {
    display: none;
  }
}

/* ::::::::::::::::::::::::::::::::: TA-SP ::::::::::::::::::::::::::::::::: */
@media screen and (max-width: 1000px) {
  .headerPc {
    display: none;
  }
  /* header */
  header.mainHeader {
  }

  header.mainHeader a {
  }

  header.mainHeader div.inner {
    padding: 15px 20px;
  }

  header.mainHeader div.left {
  }

  header.mainHeader div.right {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    position: fixed;
    z-index: 999;
    left: 0;
    width: 100%;
    height: calc(100% - 70px);
    padding: 73px 8.5% 0;
    background: rgba(17, 17, 17, 0.92);
    align-items: flex-start;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s linear;
    overflow-y: auto;
  }

  header.mainHeader p.siteTitle {
    padding: 0 16px 0 0;
    height: 18px;
  }

  header.mainHeader p.pageTitle {
    height: 15px;
  }

  header.mainHeader p.pageTitle img {
    width: 38.89vw;
    max-width: 140px;
    height: auto;
  }

  header.mainHeader p.contact {
    letter-spacing: 0.05em;
    padding: 0 0 30px;
  }

  header.mainHeader p.contact a {
    display: inline-block;
    background: none;
    border-radius: 0;
    padding: 15px 9px;
    font-size: 14px;
    line-height: 1.5;
    border-top: 1px solid;
    border-bottom: 1px solid #fff;
  }

  header.mainHeader p.contact a.pc {
    display: none;
  }

  header.mainHeader p.contact a.sp {
    display: block !important;
  }

  header.mainHeader div.menuList {
    display: flex;
    padding: 0 0 15px;
    text-align: left;
    font-size: 38px;
    letter-spacing: 0.05em;
  }

  header.mainHeader div.menuList .menuListInner {
    display: block;
  }

  header.mainHeader div.menuList .menuListInner:first-child {
    margin-right: 35px;
  }

  header.mainHeader div.menuList .menuListItem {
    padding: 0;
    font-weight: 200;
    font-size: 14px;
  }

  header.mainHeader div.menuList .menuListItem:not(:first-child) {
    margin-top: 33px;
  }

  header.mainHeader div.menuList .menuParentItem .innerMenuList {
    margin-top: 13px;
  }

  header.mainHeader div.menuList .menuParentItem .innerMenuList li {
    position: relative;
    padding-left: 18px;
    font-size: 12px;
  }

  header.mainHeader div.menuList .menuParentItem .innerMenuList li:not(:first-child) {
    margin-top: 10px;
  }

  header.mainHeader div.menuList .menuParentItem .innerMenuList li::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    display: block;
    width: 10px;
    height: 1px;
    background-color: #fff;
  }

  header.mainHeader ul.menuList li.current a {
  }

  header.mainHeader.scroll {
  }

  header.mainHeader.on {
    background: rgba(17, 17, 17, 0.92);
  }

  header.mainHeader.on div.right {
    opacity: 1;
    visibility: visible;
  }

  header.mainHeader button#spMenuBtn {
    width: 40px;
    height: 40px;
    background: none;
    border: none;
    cursor: pointer;
    position: relative;
  }

  header.mainHeader button#spMenuBtn span {
    width: 28px;
    border-top: 1px solid #fff;
    position: absolute;
    left: 6px;
    top: 16px;
    transition: transform 0.2s ease, top 0.2s ease;
  }

  header.mainHeader button#spMenuBtn span.line2 {
    top: 24px;
  }

  header.mainHeader button#spMenuBtn.on {
  }

  header.mainHeader button#spMenuBtn.on span.line1 {
    transform: rotate(45deg);
    top: 20px;
  }

  header.mainHeader button#spMenuBtn.on span.line2 {
    transform: rotate(-45deg);
    top: 20px;
  }
  .siteTitle > .pc {
    display: none !important;
  }
}
@media screen and (max-width: 979px) {
  .pc {
    display: none !important;
  }
  /* section */
  #wrapper section {
  }

  #wrapper section div.commonWidth {
    width: 83%;
  }

  #wrapper section.pageKV {
    padding: 150px 0 60px;
  }

  #wrapper section.pageKV h1 {
    font-size: 52px;
    line-height: 1.5;
    padding: 0 0 10px;
    margin: -80px 0 0;
  }

  #wrapper section.pageKV p.lead {
    font-size: 20px;
  }

  #wrapper section.pageKV p.kv {
    position: relative;
  }

  #wrapper section.pageKV.news {
    padding-bottom: 24px;
  }

  #wrapper section.pageKV.news h1 {
    padding-bottom: 24px;
  }

  #wrapper section.pageKV.news p.lead {
    font-size: 17px;
  }

  #wrapper section.pageKV.about {
    padding-top: 0;
  }

  #wrapper section.pageKV.about p.kv {
    width: 80vw;
    text-align: right;
    padding: 0 0 4vw;
    margin: 0 0 0 10vw;
  }

  #wrapper section.pageKV.about p.kv img {
    width: 85%;
    max-width: 500px;
    height: auto;
  }

  #wrapper section.pageKV.technology {
    padding-top: 0;
  }

  #wrapper section.pageKV.technology p.kv {
    border-radius: 0 0 0 30px;
    margin: -22px 0 40px 16.5vw;
    width: 75.5vw;
    text-align: right;
    padding: 0;
  }

  #wrapper section.pageKV.technology p.kv img {
    width: 100%;
    height: auto;
  }

  #wrapper section.newsArchive {
    padding: 0 0 120px;
  }

  #wrapper section.newsArchive::before {
    height: 28vw;
  }

  #wrapper section.newsArchive.document {
    padding-top: 0;
  }

  #wrapper section.newsArchive.document::before {
    display: block;
    height: 28vw;
  }

  #wrapper section div.newsArchiveWrap {
    display: block;
    width: 100%;
    padding: 0 0 15px;
  }

  #wrapper section div.newsArchiveWrap div.block {
    width: 100%;
    margin: 0 0% 50px 0;
  }

  #wrapper section div.newsArchiveWrap.index {
    padding: 0;
    margin: 0 0 -20px;
  }

  #wrapper section div.newsArchiveWrap.index div.block {
    margin-bottom: 50px;
  }

  #wrapper section div.newsArchiveWrap a {
  }

  #wrapper section div.newsArchiveWrap a p.img {
    margin: 0 0 25px;
  }

  #wrapper section div.newsArchiveWrap a p.img img {
  }

  #wrapper section div.newsArchiveWrap a p.date {
    padding: 0 0 5px;
  }

  #wrapper section div.newsArchiveWrap a h2 {
    font-size: 18px;
    line-height: 1.7;
    padding: 0 0 10px;
  }

  #wrapper section div.newsArchiveWrap a p.lead {
  }

  #wrapper section div.newsArchiveWrap a p.mark {
  }

  #wrapper section div.newsArchiveWrap a p.mark span {
  }

  #wrapper section ul.pagenation {
  }

  #wrapper section ul.pagenation li {
  }

  #wrapper section ul.pagenation li a {
  }

  #wrapper section ul.pagenation li a:hover {
  }

  #wrapper section ul.pagenation li.current a {
  }

  #wrapper section.newsSingle {
  }

  #wrapper section.newsSingle div.inner {
    width: 80%;
    padding: 130px 0 110px;
  }

  #wrapper section.newsSingle div.titleWrap {
    margin: 0 0 45px;
    padding: 0 0 40px;
  }

  #wrapper section.newsSingle div.titleWrap p.date {
    padding: 0 0 10px;
  }

  #wrapper section.newsSingle div.titleWrap h1 {
    font-size: 28px;
    line-height: 1.6;
  }

  #wrapper section.newsSingle div.contentWrap {
  }

  #wrapper section.newsSingle div.contentWrap p,
  #wrapper section.newsSingle div.contentWrap table,
  #wrapper section.newsSingle div.contentWrap ul,
  #wrapper section.newsSingle div.contentWrap ol {
    font-size: 15px;
    margin: 0 0 35px;
  }

  #wrapper section.newsSingle div.contentWrap a {
  }

  #wrapper section.newsSingle div.contentWrap a:hover {
  }

  #wrapper section.newsSingle div.contentWrap table th,
  #wrapper section.newsSingle div.contentWrap table td {
  }

  #wrapper section.newsSingle div.contentWrap table th {
  }

  #wrapper section.newsSingle div.contentWrap h2 {
    font-size: 26px;
    line-height: 1.6;
    padding: 0 0 30px;
  }

  #wrapper section.newsSingle div.contentWrap h3 {
    font-size: 23px;
    line-height: 1.7;
    padding: 0 0 30px;
  }

  #wrapper section.newsSingle div.contentWrap h4 {
    font-size: 21px;
    line-height: 1.8;
    padding: 0 0 30px;
  }

  #wrapper section.newsSingle div.contentWrap h5 {
    font-size: 18px;
    line-height: 1.9;
    padding: 0 0 30px;
  }

  #wrapper section.newsSingle div.contentWrap h6 {
    font-size: 16px;
    line-height: 2;
    padding: 0 0 30px;
  }

  #wrapper section.newsSingle div.contentWrap ul {
  }

  #wrapper section.newsSingle div.contentWrap ul li {
  }

  #wrapper section.newsSingle div.contentWrap ol {
  }

  #wrapper section.newsSingle div.contentWrap ol li {
  }

  #wrapper section.newsSingle div.contentWrap ol li:before {
  }

  #wrapper section.newsSingle div.snsWrap {
    padding: 10px 0 60px;
  }

  #wrapper section.newsSingle div.snsWrap h2 {
    font-size: 36px;
    padding: 0 0 0 25px;
    margin-bottom: -30px;
  }

  #wrapper section.newsSingle div.snsWrap div.base {
  }

  #wrapper section.newsSingle div.snsWrap div.base ul {
  }

  #wrapper section.newsSingle div.snsWrap div.base ul li {
    margin: 0 -15px;
  }

  #wrapper section.newsSingle p.btnBack {
  }

  #wrapper section.newsSingle p.btnBack a {
  }

  #wrapper section.aboutMain {
    padding: 70px 0 80px;
  }

  #wrapper section.aboutMain.value {
  }

  #wrapper section.aboutMain div.aboutContent {
    display: block;
  }

  #wrapper section.aboutMain div.aboutContent div.left {
    width: 100%;
  }

  #wrapper section.aboutMain div.aboutContent div.right {
    width: 100%;
  }

  #wrapper section.aboutMain div.videoWrap {
  }

  #wrapper section.aboutMain div.linkButtonWrap {
    margin-top: 60px;
  }

  #wrapper section.aboutMain .linkButton {
    padding: 18px 20px;
    border-radius: 15px;
    font-size: 16px;
    line-height: 1.875;
  }

  #wrapper section.aboutMain div.detail {
  }

  #wrapper section.aboutMain div.detail h3 {
    font-size: 28px;
    padding: 0 0 30px;
  }

  #wrapper section.aboutMain div.detail h3 span {
    padding: 0 20px 0 0;
  }

  #wrapper section.aboutMain div.detail h3::before {
    top: 28px;
  }

  #wrapper section.aboutMain div.detail p {
    font-size: 15px;
  }

  #wrapper section.aboutMain button.videoThumb {
  }

  #wrapper section.aboutMain button.videoThumb span.img img {
  }

  #wrapper section.aboutMain button.videoThumb span.mark {
    width: 60px;
    height: 60px;
    box-shadow: 0px 1.2px 12px 0px rgba(0, 0, 0, 0.3);
  }

  #wrapper section.aboutMain button.videoThumb span.mark img {
    width: 24px;
    height: auto;
  }

  #wrapper section.aboutMain h2 {
    font-size: 30px;
    padding: 0 0 40px 45px;
  }

  #wrapper section.aboutMain h2::before {
    width: 30px;
    top: 20px;
  }

  #wrapper section.aboutMain p {
    font-size: 17px;
    padding: 0 0 30px;
    line-height: 2;
  }

  #wrapper section.pageBottomLink {
    padding: 0 0 120px;
  }

  #wrapper section.pageBottomLink::before {
    height: calc(100% - 120px - 12vw);
    width: 90%;
    border-radius: 0 30px 30px 0;
  }

  #wrapper section.pageBottomLink div.inner {
    width: 90%;
    height: auto;
    padding: 0 0 35vw;
  }

  #wrapper section.pageBottomLink ul.en {
    position: relative;
    left: 0;
    top: 0;
    font-size: 24px;
    width: 230px;
    padding: 40px 0 0 10vw;
  }

  #wrapper section.pageBottomLink p.img {
    width: 90%;
    margin-top: -25vw;
  }

/*   #wrapper section.topKV {
    position: relative;
    height: auto;
    min-height: inherit;
    max-height: inherit;
    background: #000;
    display: block;
  } */

  #wrapper section.topKV div.titleWrap {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    text-align: left;
    padding: 33vw 0 5px;
    margin: 0 auto;
    width: 90%;
  }

  #wrapper section.topKV div.titleWrap h1 {
    padding: 0 0 5vw;
  }

  #wrapper section.topKV div.titleWrap h1 img {
    width: 100%;
    max-width: 600px;
  }

  #wrapper section.topKV div.titleWrap p.lead {
    font-size: 16px;
  }

  #wrapper section.topKV div.titleWrap p.lead .leadSubTxt {
    font-size: 12px;
    line-height: 1.7;
    display: inline-block;
  }

  #wrapper section.topKV .bnrGDA {
    position: absolute;
    left: 20px;
    bottom: 15px;
    width: 70px;
  }

  #wrapper section.topKV .bnrGDA img {
    width: 100%;
    height: auto;
  }

  #wrapper section.topKV .cvBtnUnit {
    bottom: 15px;
    padding: 13px 0 13px 13px;
    width: 200px;
    height: 90px;
    border-radius: 13px 0 0 13px;
  }

  #wrapper section.topKV .cvBtnUnit:has(input[type="checkbox"]:checked) {
    right: -200px;
  }

  #wrapper section.topKV .cvBtnUnit .cvnBtnUnitClose {
    width: 30px;
    height: 9px;
  }

  #wrapper section.topKV .cvBtnUnit a {
    width: 148px;
    padding-left: 39px;
    line-height: 26px;
    height: 26px;
    border-radius: 13px;
    font-size: 11px;
  }

  #wrapper section.topKV .cvBtnUnit a::before {
    left: 18px;
    width: 10px;
    height: 8px;
  }

  #wrapper section.topKV p.scroll {
    width: 50px;
    bottom: 16%;
  }

  #wrapper section.topKV p.scroll img {
    width: 50px;
    height: 50px;
  }

  #wrapper section.topKV .kv img {
    width: 100%;
    height: auto;
  }

  #wrapper .topConceptModelBanner {
    padding-bottom: 58px;
  }

  #wrapper section.topSection {
    padding: 60px 0 0;
  }

  #wrapper section.topSection.pages {
    padding: 64px 0 114px;
  }

  #wrapper section.topSection h2 {
  }

  #wrapper section.topSection h2.news {
    font-size: 38px;
    line-height: 1.5;
    padding: 0 0 25px;
  }

  #wrapper section.topSection h2.news > .sub {
    margin-top: 0;
    font-size: 12px;
    letter-spacing: normal;
  }

  #wrapper section.topSection p.btnMore {
    font-size: 16px;
  }

  #wrapper section.topSection p.btnMore.right {
  }

  #wrapper section.topSection p.btnMore a {
  }

  #wrapper section.topSection div.aboutWrap {
    padding: 60px 0 70px;
    position: relative;
  }

  #wrapper section.topSection div.aboutWrap p.img0 {
    width: 100%;
    margin: 30px 0 0;
  }

  #wrapper section.topSection div.aboutWrap span.img {
  }

  #wrapper section.topSection div.aboutWrap span.img img {
  }

  #wrapper section.topSection div.aboutWrap span.mark {
    width: 60px;
    height: 60px;
  }

  #wrapper section.topSection div.aboutWrap span.mark img {
    width: 60px;
    height: auto;
  }

  #wrapper section.topSection div.aboutWrap div.title {
    position: relative;
    display: block;
    left: 0;
  }

  #wrapper section.topSection div.aboutWrap h2 {
    font-size: 45px;
    line-height: 1.5;
    margin: 0;
  }

  #wrapper section.topSection div.aboutWrap h2 > .sub {
    margin-top: -4px;
    font-size: 14px;
  }

  #wrapper section.topSection div.aboutWrap p.lead {
    font-size: 20px;
    line-height: 1.7;
    padding: 19px 0 20px;
  }

  #wrapper section.topSection div.techWrap {
    padding: 0 0 150px;
  }

  #wrapper section.topSection div.techWrap div.title {
    display: block;
  }

  #wrapper section.topSection div.techWrap h2 {
    font-size: 45px;
    line-height: 1.5;
    margin: 0;
    padding: 0 0 10px;
  }

  #wrapper section.topSection div.techWrap h2 > .sub {
    margin-top: -4px;
    font-size: 14px;
  }

  #wrapper section.topSection div.techWrap p.lead {
    font-size: 20px;
    line-height: 1.7;
    padding: 13px 0 55px;
  }

  #wrapper section.topSection div.techWrap ul.imgList {
    margin: 0 0 35px;
    position: relative;
  }

  #wrapper section.topSection div.techWrap ul.imgList img {
  }

  #wrapper section.topSection div.techWrap ul.imgList li {
  }

  #wrapper section.topSection div.techWrap ul.imgList li.img1 {
    width: 65%;
    border-radius: 30px;
    margin: 0 0 0 -3%;
  }

  #wrapper section.topSection div.techWrap ul.imgList li.img2 {
    width: 50%;
    border-radius: 25px;
    margin: -50px 0 0 50%;
  }

  #wrapper section.topSection div.techWrap ul.imgList li.img3 {
    width: 45%;
    border-radius: 20px;
    position: absolute;
    right: -20%;
    top: 0%;
  }

  #wrapper section.topSection div.specialWrap {
    width: 90%;
    padding: 0 0 123px;
  }

  #wrapper section.topSection div.specialWrap div.img {
    margin: 0 0 30px;
  }

  #wrapper section.topSection div.specialWrap div.img span.bg {
  }

  #wrapper section.topSection div.specialWrap div.img span.bg::after {
    border-radius: 0 30px 30px 0;
    box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.6) inset;
  }

  #wrapper section.topSection div.specialWrap div.img img {
  }

  #wrapper section.topSection div.specialWrap div.img img.main {
  }

  #wrapper section.topSection div.specialWrap div.img img.bg {
    border-radius: 0 30px 30px 0;
  }

  #wrapper section.topSection div.specialWrap div.bottom {
    align-items: flex-start;
  }

  #wrapper section.topSection div.specialWrap div.bottom p.txt {
    font-size: 20px;
    padding: 0 0 0 10%;
  }

  #wrapper section.topSection div.contactWrap,
  #l-lp .c-lp__download-contact .topSection div.contactWrap {
    height: 425px;
  }

  #wrapper section.topSection div.contactWrap div.inner,
  #l-lp .c-lp__download-contact .topSection div.contactWrap div.inner {
    justify-content: flex-end;
    width: 67%;
    max-width: 1240px;
    padding: 0 0 60px;
  }

  #wrapper section.topSection div.contactWrap p.img,
  #l-lp .c-lp__download-contact .topSection div.contactWrap p.img {
    top: -170px;
    transform: translateY(0);
    padding: 70px 0 50px;
  }

  #wrapper section.topSection div.contactWrap p.img img,
  #l-lp .c-lp__download-contact .topSection div.contactWrap p.img img {
  }

  #wrapper section.topSection div.contactWrap::before,
  #l-lp .c-lp__download-contact .topSection div.contactWrap::before {
    width: 83%;
    height: 425px;
    border-radius: 30px;
  }

  #wrapper section.topSection div.contactWrap h2,
  #l-lp .c-lp__download-contact .topSection div.contactWrap h2 {
    font-size: 40px;
    line-height: 1.4;
    padding: 0 0 25px;
  }

  #wrapper section.topSection div.contactWrap h2 > span.sub,
  #l-lp .c-lp__download-contact .topSection div.contactWrap h2 > span.sub {
    margin-top: 8px;
  }

  #wrapper section.topSection div.contactWrap p.btn,
  #l-lp .c-lp__download-contact .topSection div.contactWrap p.btn {
  }

  #wrapper section.topSection div.contactWrap p.btn a,
  #l-lp .c-lp__download-contact .topSection div.contactWrap p.btn a {
    box-sizing: border-box;
    display: block;
    width: 100%;
    padding: 7px 40px 18px 0;
    background-position: right top;
    font-size: 16px;
  }

  #wrapper section.topSection div.snsWrap {
    padding: 52px 0 80px;
  }

  #wrapper section.topSection div.snsWrap h2 {
    font-size: 30px;
    padding: 0 0 5px;
  }

  #wrapper section.topSection div.snsWrap ul {
  }

  #wrapper section.topSection div.snsWrap ul li {
    margin: 0 -15px;
  }

  /* special */

  #wrapper section.specialKV {
    padding: 70px 0 0;
  }

  #wrapper section.specialKV img {
  }

  #wrapper section.specialKV p.bg {
  }

  #wrapper section.specialKV ul.main {
  }

  #wrapper section.specialKV ul.main li {
  }

  #wrapper section.specialContent {
    padding: 70px 0 60px;
  }

  #wrapper section.specialContent h2,
  #wrapper section.specialContent p {
  }

  #wrapper section.specialContent h2 {
    font-size: 36px;
    line-height: 1.3;
    padding: 0 0 35px;
  }

  #wrapper section.specialContent h2 span.mark {
    left: -30px;
    top: -30px;
    width: 80px;
  }

  #wrapper section.specialContent h2 span.mark img {
    width: 80px;
    height: auto;
  }

  #wrapper section.specialContent h2 span.line {
    padding: 0 0 5px;
  }

  #wrapper section.specialContent h2 span.line::after {
    border-bottom: 5px solid #009fdd;
  }

  #wrapper section.specialContent h2.red span.line::after {
    border-color: #d84f81;
  }

  #wrapper section.specialContent h2.purple span.line::after {
    border-color: #e2882c;
  }

  #wrapper section.specialContent p.img img {
  }

  #wrapper section.specialContent p.sub {
    font-size: 16px;
  }

  #wrapper section.specialContent p.strong {
    font-size: 19px;
    line-height: 1.8;
  }

  #wrapper section.specialContent div.commonWidth {
    display: block;
  }

  #wrapper section.specialContent div.left {
    width: 100%;
    padding: 0 0 30px;
  }

  #wrapper section.specialContent div.right {
    width: 100%;
    text-align: center;
  }

  #wrapper section.specialContent div.right img {
    max-width: 450px;
  }

  #wrapper section.specialContent:nth-child(odd) {
  }

  #wrapper section.specialContent:nth-child(odd) div.commonWidth {
  }

  #wrapper section.specialContent:nth-child(odd) div.left {
    width: 100%;
  }

  #wrapper section.specialContent div.contactWrap {
    width: auto;
    border-radius: 20px;
    padding: 10px;
    box-shadow: 5px 5px 0px 0px #ffef25;
    margin: 0 0 20px;
  }

  #wrapper section.specialContent div.contactWrap div.inner {
  }

  #wrapper section.specialContent div.contactWrap div.top {
    width: 100%;
    padding: 0;
  }

  #wrapper section.specialContent div.contactWrap div.bottom {
    position: relative;
    left: 0;
    width: 75%;
    max-width: 400px;
    margin: 0 auto;
  }

  #wrapper section.specialContent div.contactWrap a {
  }

  #wrapper section.specialContent div.contactWrap a p.mark {
    font-size: 15px;
    padding: 20px 5% 30px;
  }

  #wrapper section.specialContent div.contactWrap a p.mark span {
    background-position: right top;
    padding-bottom: 15px;
    font-size: 16px;
    line-height: 40px;
  }

  #wrapper section.specialContent div.contactWrap h2 {
    margin: -3px 0 0 -3px;
    max-width: 250px;
  }

  #wrapper section.specialContent div.contactWrap h2 img {
  }

  /* other */
  p.specialBtn {
    right: 15px;
  }

  p.specialBtn img {
    width: 240px;
    height: auto;
  }

  /* modal */
  #modal {
  }

  #modal div.inner {
    width: 90%;
  }

  #modal div.youTube {
  }

  #modal div.youTube {
  }

  #modal div.youTube iframe {
  }

  #modal button#modalClose {
    right: 0;
    top: -60px;
    width: 40px;
    height: 40px;
  }

  #modal button#modalClose img {
    width: 40px;
    height: 40px;
  }
}

/* ::::::::::::::::::::::::::::::::: SP ::::::::::::::::::::::::::::::::: */
@media screen and (max-width: 599px) {
  #wrapper section.specialKV {
    width: 132vw;
    margin: 0 -17vw 0 -15vw;
  }
}

.pagenation .current_page {
  border-bottom: 1px solid;
}

.c-category__section {
  padding: 0 0 86px 0;
}

.c-category__inner {
  width: 86%;
  height: 45px;
  max-width: 1400px;
  margin: 0 auto;
  text-align: left;
}

.c-category__inner a {
  display: inline-block;
  margin-right: 10px;
  padding: 5px 27px;
  border: 1px solid #4c5153;
  border-radius: 8px;
  font-family: "UD新ゴM", "UD Shin Go Medium", sans-serif;
  color: #888 !important;
  font-size: 16px;
}

.c-category__inner a:hover {
  opacity: 0.7;
}

.c-category__inner a.current {
  background-color: #4c5153;
  color: #fff !important;
}

#wrapper section.pageKV.document {
  padding: 227px 0 40px;
}

@media screen and (max-width: 979px) {
  #wrapper section.pageKV.document {
    padding-bottom: 26px;
  }

  .c-category__section {
    padding-bottom: 31px;
  }

  .c-category__inner {
    width: 83%;
    height: auto;
  }

  .c-category__inner a {
    padding: 2px 12px;
    margin-right: 4px;
    margin-bottom: 9px;
    border-radius: 4px;
    font-size: 12px;
  }
}

/* ダウンロード */

#wrapper section.pageKV.contact {
  padding: 140px 0 50px;
  background: #252b2d;
}

#wrapper section.pageKV.contact div.commonWidth {
  display: flex;
  max-width: 770px;
}

#wrapper section.pageKV.contact p.kv {
  border-radius: 0 0 0 140px;
  overflow: hidden;
}

#wrapper section.pageKV.contact h1 {
  padding: 0 40px 0 0;
  font-size: 50px;
  flex-shrink: 0;
  line-height: 1;
}

#wrapper section.pageKV.contact .pageTitleSub {
  font-size: 16px;
  padding-top: 30px;
}

#wrapper section.pageKV.contact p.lead {
  font-size: 15px;
  line-height: 32px;
}

.c-contact {
  padding-bottom: 178px;
  background: #252b2d;
}

.c-contact__form {
  width: 77.78%;
  max-width: 700px;
  height: auto;
  margin: 0 auto;
}

.c-contact__iframe {
  width: 100%;
  height: calc(100vh - 230px);
  border-radius: 70px;
}

@media screen and (max-width: 979px) {
  #wrapper section.pageKV.contact {
    padding-top: 75px;
    padding-bottom: 27px;
  }

  #wrapper section.pageKV.contact div.commonWidth {
    display: block;
  }

  #wrapper section.pageKV.contact p.kv {
    border-radius: 0 0 0 30px;
    margin: 0 0 40px 16.5vw;
    width: 75.5vw;
    text-align: right;
    padding: 0;
  }

  #wrapper section.pageKV.contact p.kv img {
    width: 100%;
    height: auto;
  }

  #wrapper section.pageKV.contact h1 {
    margin-top: 0;
    padding: 0 0 30px;
  }

  #wrapper section.pageKV.contact .pageTitleSub {
    padding-top: 15px;
  }

  #wrapper section.pageKV.contact p.lead {
    width: 100%;
    font-size: 15px;
  }

  .c-contact {
    padding-bottom: 117px;
  }

  .c-contact__iframe {
    border-radius: 15px;
  }
}

/* news 関連ニュース */
.c-article__relation {
  border-top: 1px solid #aaa;
  margin: 50px 0 30px 0;
  padding: 50px 0 0 0;
}

.c-article__relation--inner {
  display: flex;
  flex-wrap: wrap;
}

.c-article__relation--card {
  box-sizing: border-box;
  text-decoration: none !important;
  /* padding: 10px; */
  transition: all 0.3s ease 0s;
  margin: 0 55px 10px 0;
  width: calc(33.33333333% - 10px);
}
.c-article__relation-column .c-article__relation--card:not(:nth-child(3n)) {
  margin-right: 10px;
}

.c-article__relation--card:nth-child(3n) {
  margin-right: 0;
}

.c-article__relation--img {
  width: 100%;
  border-radius: 20px;
  margin-bottom: 32px;
}

.c-article__relation--date {
  color: #888;
  font-size: 15px;
  margin-bottom: 9px;
}

.c-article__relation--title {
  color: #fff;
  font-size: 22px;
  line-height: 1.75;
  margin-bottom: 18px;
}
.c-article__relation-column .c-article__relation--title {
  font-size: 16px;
}

@media screen and (max-width: 979px) {
  .c-article__relation--inner {
    display: block;
  }

  .c-article__relation--img {
    width: 100%;
    margin-bottom: 22px;
  }

  .c-article__relation--card {
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
  }

  .c-article__relation--card + .c-article__relation--card {
    margin-top: 45px;
  }

  .c-article__relation--title {
    font-size: 16px;
    line-height: 32px;
    margin-bottom: 12px;
  }
}

.c-select__section {
  width: 86%;
  margin: auto;
  max-width: 1400px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.c-select__inner {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin: 0 0 30px 0;
  text-align: right;
  width: 100%;
  height: 40px;
  position: relative;
}

.c-select {
  width: 200px;
  height: 40px;
  border-radius: 30px;
  padding: 0 20px;
  background-color: #4c5153;
  border: #4c5153;
  color: #aaa;
}

.c-select__inner::before {
  content: "";
  position: absolute;
  width: 15px;
  height: 2px;
  background-color: #aaa;
  top: 20px;
  right: 30px;
  transform: rotate(45deg);
}

.c-select__inner::after {
  content: "";
  position: absolute;
  width: 15px;
  height: 2px;
  background-color: #aaa;
  top: 20px;
  right: 20px;
  transform: rotate(-45deg);
}

.c-select .is-none {
  display: none;
}

/* サイトマップ */
.c-sitemap {
  width: 86%;
  margin: auto;
  max-width: 1400px;
  margin-bottom: 100px;
}

.c-sitemap__inner {
  width: 92.7%;
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
}

.c-sitemap__column {
  box-sizing: border-box;
  width: 50%;
  padding-left: 3.9%;
}

.c-sitemap__column.last {
  padding-left: 7.6%;
}

.c-sitemap__block {
  padding: 10px 0 0 0;
  margin-bottom: 53px;
}

.c-sitemap__title {
  width: 100%;
  position: relative;
}

.c-sitemap__title--text {
  display: inline-flex;
  flex-direction: column;
  font-size: 41px !important;
  line-height: 1.75;
  padding: 0;
}

.c-sitemap__title--sub {
  font-size: 18px;
  margin-top: -7px;
}

.c-sitemap__title--ib {
  display: inline-block;
  white-space: nowrap;
}

.c-sitemap__link--wrap {
  padding-top: 21px;
}

.c-sitemap__link {
  position: relative;
  display: block;
  padding: 0 0 0 33px;
  font-size: 16px;
}

.c-sitemap__link::before {
  content: "";
  background-color: #fff;
  position: absolute;
  width: 20px;
  height: 1px;
  top: 50%;
  left: 0;
  translate: translateY(50%);
}

.c-sitemap__link + .c-sitemap__link {
  margin-top: 1px;
}

.c-sitemap__link--small {
  display: block;
  padding: 0 0 0 5%;
}

.c-sitemap__contact {
  box-sizing: border-box;
  width: 100%;
  padding-top: 59px;
  padding-bottom: 61px;
  padding-left: 3.9%;
  margin-top: 50px;
  border-top: 1px solid #444;
}

@media screen and (max-width: 979px) {
  .c-sitemap__inner {
    display: block;
    width: 97.3%;
  }

  .c-sitemap__column,
  .c-sitemap__column.last {
    width: 100%;
    padding-left: 0;
  }

  .c-sitemap__title--text {
    font-size: 26px !important;
  }

  .c-sitemap__title--sub {
    font-size: 15px;
  }

  .c-sitemap__block {
    padding-top: 0;
    margin-bottom: 31px;
  }

  .c-sitemap__link {
    padding-left: 18px;
    font-size: 13px;
  }

  .c-sitemap__link::before {
    width: 10px;
  }

  .c-sitemap__link + .c-sitemap__link {
    margin-top: -1px;
  }

  .c-sitemap__contact {
    padding-top: 25px;
    padding-bottom: 12px;
    padding-left: 0;
    margin-top: 57px;
  }

  .c-sitemap__link--wrap {
    padding-top: 8px;
  }
}

/* サブメニュー */
.l-sub_title {
  width: 86%;
  max-width: 1400px;
  margin: auto;
  margin-bottom: 30px;
  position: relative;
}

.c-sub-title__text {
  padding: 0 0 0 8%;
  display: flex;
  align-items: center;
  font-size: 24px;
}

.c-sub-title__text::before {
  content: "";
  background-color: #fff;
  position: absolute;
  width: 5%;
  height: 1px;
  left: 2px;
}

/* 関連するホワイトペーパー */
.c-wp {
  width: 100%;
  background-color: #4c5153;
}

.c-wp__inner {
  display: block;
  padding: 10px 20px 20px 20px;
  text-decoration: none !important;
}

.c-wp__inner:hover {
  opacity: 0.6;
}

.c-wp__title--inner {
}

.c-wp__title {
  font-size: 22px;
  color: #fff;
}

.c-wp__flexbox {
  display: flex;
  justify-content: space-between;
}

.c-wp__inner--left {
  width: 60%;
}

.c-wp__desc {
  color: #fff;
}

.c-wp__inner--right {
  width: 38%;
}

.c-wp__img {
  width: 100%;
  border-radius: 20px;
}

@media screen and (max-width: 979px) {
  .c-wp__flexbox {
    display: block;
    width: 100%;
  }

  .c-wp__inner--left {
    width: 100%;
    margin-bottom: 10px;
  }

  .c-wp__inner--right {
    width: 70%;
    margin: auto;
  }
}

#wrapper section.newsSingle div.contentWrap div.low {
  padding: 0 5%;
  text-align: center;
}

#wrapper section.newsSingle div.contentWrap div.low h2,
#wrapper section.newsSingle div.contentWrap div.low h3,
#wrapper section.newsSingle div.contentWrap div.low h4,
#wrapper section.newsSingle div.contentWrap div.low h5 {
  display: inline-block;
  border-bottom: solid 1px;
  padding: 0 0 5px 0;
  margin: 0 0 20px 0;
}

#wrapper section.newsSingle div.contentWrap p img,
#wrapper section.newsSingle div.contentWrap div.low p img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

#wrapper section.newsSingle div.contentWrap div.low p {
  font-size: 16px;
  text-align: left;
}

.c-document__block {
  width: 86%;
  max-width: 1400px;
  margin: auto;
  margin-bottom: 74px;
}

.c-document__block:hover {
  opacity: 0.8;
}

.c-document__block--title {
  width: 100%;
  margin: 0 0 5px 0;
}

.c-document__flexbox {
  display: flex;
  justify-content: space-between;
}

.c-document__flexbox__left {
  width: 40%;
  height: 246px;
}

.c-document__flexbox__left > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 30px;
}

.c-document__flexbox__right {
  width: 54.5%;
}

.c-document__flexbox__right .c-document__block--title + p {
  color: #888 !important;
}

.c-document__link {
  width: 100%;
  margin-top: 24px;
}

.c-document__link--text {
  display: inline-block;
  position: relative;
  /* font-family: "UD新ゴM", "UD Shin Go Medium", sans-serif; */
  font-size: 16px !important;
  font-weight: bold;
  text-align: left;
  letter-spacing: 1px;
  line-height: 1.78;
}

.c-document__link--text::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 3px;
  background-color: #fff;
}

.c-sub-title__new {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 18px;
}

.c-sub-title__new > p {
  margin-bottom: 5px;
}

p.c-sub-title__new--text {
  display: block;
  padding: 6px 19px;
  margin-right: 20px;
  background-color: #fff;
  border-radius: 12px;
  font-size: 13px !important;
  color: #33393b !important;
  line-height: 1;
}

p.c-sub-title__category {
  display: block;
  padding: 6px 11px;
  margin-right: 11px;
  border: 1px solid #4c5153;
  border-radius: 4px;
  font-size: 12px !important;
  color: #888 !important;
  line-height: 1;
}

p.c-sub-title__category:last-child {
  margin-right: 0;
}

.c-index__inner {
  width: 86%;
  max-width: 1400px;
  margin: auto;
  padding-left: 40px;
  margin-bottom: 35px;
}

.c-index__inner > li {
  list-style-type: disc;
}

.c-index__inner .current {
  color: #7f8181 !important;
}

.c-download {
  padding-bottom: 30px !important;
}

.c-download__lead {
  width: 86%;
  max-width: 1400px;
  margin: auto;
  margin-bottom: 40px;
  color: #fff;
  font-size: 19px;
}
.c-document__title {
  font-size: 41px !important;
}

@media screen and (max-width: 979px) {
  .c-document__title {
    font-size: 28px !important;
  }

  .c-document__block {
    width: 83%;
    margin-bottom: 45px;
  }

  .c-document__block--title {
    display: block;
    margin-bottom: -2px;
  }

  p.c-sub-title__new--text {
    margin-right: 15px;
  }

  .c-sub-title__new {
    margin-bottom: 13px;
  }

  .c-document__flexbox {
    display: block;
  }

  .c-document__flexbox__left {
    position: relative;
    width: 100%;
    height: auto;
    padding-top: 67.11%;
    margin-bottom: 20px;
  }

  .c-document__flexbox__left > img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
  }

  .c-document__flexbox__right {
    width: 100%;
  }

  .c-document__title {
    margin: 0 !important;
  }

  .c-document__link {
    margin-top: 3px;
  }
}

#l-lp {
  outline: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-appearance: none;
  line-height: 2;
}

.l-lp__inner {
  width: 86%;
  max-width: 1400px;
  margin: 0 auto;
}

.l-lp__kv {
  padding: 150px 0 44px 0;
}

.l-lp__kv--content {
  position: relative;
}

.l-lp__kv--title {
  position: relative;
  padding: 81px 5% 60px 7%;
  text-align: left;
  color: #fff;
  max-width: 1000px;
}

.l-lp__kv--title > h1 {
  font-size: 34px;
  margin-bottom: 31px;
  line-height: 75px;
}

.l-lp__kv--title > p {
  font-size: 15px;
}

.l-lp__kv--img {
  position: absolute;
  top: -37px;
  right: 0;
  width: 23.46vw;
  margin-bottom: 20px;
}

.l-lp__kv--img > img {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 25px 0 0 25px;
}

.c-lp__contact {
  margin-top: 32px;
}

.c-lp__contact-inner {
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
  box-sizing: border-box;
  display: block;
  width: 350px;
  border-bottom: 1px solid #fff;
  padding: 11px 100px 22px 0;
  background: url(/products/softrobotics/img/common/mark_link1.svg) no-repeat right 5px top 8px;
  background-size: 40px 40px;
  color: #fff;
  font-size: 19px;
  font-weight: normal;
  text-decoration: none;
  text-align: left;
  transition: all 0.3s ease;
}

.c-lp__contact-inner:hover {
  background-position: right top 8px !important;
}

@media screen and (max-width: 979px) {
  .c-lp__contact {
    width: 100%;
    max-width: 350px;
  }
  .l-lp__kv--content {
    display: block;
    width: 100%;
  }

  .l-lp__kv {
    padding: 247px 0 89px 0;
  }

  .l-lp__kv--title {
    padding: 0 8.2%;
  }

  .l-lp__kv--title > h1 {
    margin-bottom: 15px;
    font-size: 28px;
    line-height: 53px;
  }

  .l-lp__kv--title > h1 br {
    display: none;
  }

  .l-lp__kv--img {
    top: -247px;
    width: 44.5vw;
  }

  .l-lp__kv--img > img {
    border-top-left-radius: 0;
    border-bottom-left-radius: 14px;
  }

  .l-lp__kv--contact {
    position: relative;
    width: 100%;
    right: 0;
    max-width: 350px;
    margin: 11px 0 0;
    width: 79.5%;
  }

  .c-lp__contact-inner {
    width: 100%;
    padding-right: 45px;
    font-size: 16px;
    background-position-x: right;
  }
}

/* l-lp__task */
.l-lp_wrap {
  width: 100%;
  margin-bottom: 160px;
  position: relative;
  background-color: #252b2d;
}

.l-lp__task {
  max-width: 1400px;
  margin: 0 auto;
  position: relative;
  margin-bottom: 40px;
}

.l-lp__task--inner {
  padding: 100px 10%;
}

.l-lp__task--title {
  color: #fff;
  font-size: 30px;
  text-align: center;
  margin-bottom: 130px;
}

.l-lp__task--card {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 100px;
}

.c-case__block {
  width: calc(33.3333333% - 100px / 3);
  margin-right: 50px;
  position: relative;
  display: flex;
}

.c-case__block:nth-child(3n) {
  margin: 0;
}

.c-case__icon {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  background-color: #fff;
  width: 150px;
  height: 150px;
  border-radius: 50%;
}

.c-case__icon > p {
  color: #000000;
  padding: 10px 0 10px 0;
  font-size: 18px;
}

.c-case__icon > .l-lp2__phase {
  padding: 10px 0 0 0;
}

.c-case__icon > .l-lp2__phase--text {
  padding: 0 0 0 0;
}

.c-case__icon > img {
  width: 50px;
}

.l-lp2 > img {
  width: 50px;
  height: 50px;
}

.c-case__desc {
  color: #fff;
  padding: 95px 10% 50px 10%;
  border: solid 1px #fff;
  border-radius: 30px;
  font-size: 22px;
  text-align: left;
}

.l-lp__task--desc {
  color: #fff;
  font-size: 30px;
}

.l-lp__task::before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -40px;
  border: 40px solid transparent;
  border-top: 30px solid #252b2d;
}

.l-lp__task--img {
  position: absolute;
  bottom: -119px;
  right: 0;
  width: 22vw;
  max-width: 350px;
  min-width: 150px;
}

.l-lp__task--img > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media screen and (max-width: 979px) {
  .l-lp_wrap {
    margin-bottom: 140px;
  }
  .l-lp__task--inner {
    padding: 73px 8.2%;
  }
  .l-lp__task--title {
    font-size: 18px;
    line-height: 32px;
  }
  .l-lp__task--card {
    display: block;
    margin-bottom: 38px;
  }

  .l-lp__task--desc {
    font-size: 18px;
  }

  .c-case__block {
    width: 100%;
    margin-bottom: 100px;
  }

  .c-case__desc {
    width: 100%;
    text-align: center;
  }
}

/* lp__pr */
.l-lp__pr {
}

.l-lp__pr--inner {
}

.c-pr__block {
  padding: 57px 4.8% 67px 7%;
  margin-bottom: 52px;
  background-color: #252b2e;
  border-radius: 0 40px 40px 0;
  text-align: left;
  color: #fff;
  width: 81.2%;
  max-width: 1300px;
}

.c-pr__block--title {
  color: #fff;
}

.c-pr__block--title > h2 {
  font-size: 26px;
  margin-bottom: 30px;
}

.c-pr__block--flexbox {
  display: flex;
  justify-content: space-between;
}

.c-pr__block--desc {
  margin-right: 37px;
  font-size: 16px;
}

.c-pr__block--desc > p {
  margin-top: -8px;
}

.c-pr__block--img {
  width: 33%;
  flex-shrink: 0;
}

.c-pr__block--img > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 25px;
}

@media screen and (max-width: 979px) {
  .c-pr__block {
    width: 75.2%;
    padding: 54px 8.2% 59px;
    margin-bottom: 41px;
    border-radius: 0 30px 30px 0;
  }

  .c-pr__block--title > h2 {
    margin-bottom: 27px;
    font-size: 18px;
    line-height: 32px;
  }

  .c-pr__block--flexbox {
    display: block;
  }

  .c-pr__block--desc {
    width: 100%;
    margin-right: 0;
    margin-bottom: 26px;
  }

  .c-pr__block--img {
    width: 100%;
  }
}

.c-lp__download-link {
  width: 100%;
  padding-top: 76px;
}

.c-lp__download-link--inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 86%;
  max-width: 1400px;
  padding: 73px 20px 80px;
  margin: 0 auto;
  background-color: #000;
  border-radius: 40px;
}

.c-lp__download-link--title {
  text-align: left;
  color: #fff;
  font-size: 30px;
  margin-bottom: 19px;
}

.c-lp__download-link--desc {
  color: #fff;
  text-align: left;
  font-size: 16px;
}

@media screen and (max-width: 979px) {
  .c-lp__download-link {
    padding-top: 20px;
  }

  .c-lp__download-link--inner {
    width: 67%;
    padding: 63px 30px 68px;
    border-radius: 30px;
  }

  .c-lp__download-link--title {
    margin-bottom: 15px;
    font-size: 20px;
    line-height: 34px;
    text-align: center;
  }

  .c-lp__download-link__contact {
    margin-top: 18px;
  }
}

.c-lp__download-contact {
  padding: 128px 0 344px;
  background-color: #252b2e;
}

.l-lp__article {
  position: relative;
  background-color: #252b2e;
}

.l-lp__article::before {
  height: 325px;
  width: 100%;
  content: "";
  left: 0;
  top: 0;
  position: absolute;
  background: #111;
}

.l-lp__article--inner {
  position: relative;
  width: 86%;
  max-width: 1400px;
  padding: 104px 0 100px;
  margin: 0 auto;
}

.l-lp__article--title {
  color: #fff;
  font-size: 30px;
  text-align: left;
  margin-bottom: 56px;
}

.c-lp__article {
  width: calc(33.3% - 36.33px);
}

.c-lp__article > p {
  font-weight: 100;
}

.c-lp__article > .c-article__relation--date {
  font-weight: 200;
  color: #888;
  text-align: left;
}

.c-lp__article > .c-article__relation--title {
  text-align: left;
}

.c-article__relation--lead {
  color: #888;
  font-size: 15px;
  text-align: left;
}

.c-pr2__block--flexbox {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.c-pr2__block--flexbox .c-case__icon--inner {
  flex-shrink: 0;
  flex-grow: 0;
}

.c-pr2__block--flexbox .c-pr__block--desc {
  flex-grow: 1;
}

.c-case__icon--inner {
  margin-right: 15px;
}

.c-case__icon--inner > .c-case__icon {
  position: static;
  text-align: center;
  transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
}

.l-lp-2__box {
  width: 60%;
}

@media screen and (max-width: 979px) {
  .c-lp__download-contact {
    padding: 104px 0 110px;
  }
  .l-lp__article::before {
    height: 216px;
  }

  .l-lp__article--inner {
    width: 83.6%;
    padding: 72px 0 50px;
  }

  .l-lp__article--title {
    margin-bottom: 26px;
    font-size: 18px;
    line-height: 32px;
  }

  .c-pr2__block--flexbox {
    display: block;
  }
  .l-lp-2__box {
    width: 100%;
    margin-bottom: 20px;
  }
  .c-case__icon--inner {
    margin-right: 0px;
    display: flex;
    justify-content: center;
    margin-bottom: 15px;
  }
  .c-case__icon--inner > .c-case__icon {
    width: 130px;
    height: 130px;
  }

  .c-case__icon--inner > .c-case__icon p {
    font-size: 16px;
  }

  .c-lp__article {
    width: 100%;
  }

  .c-lp__article + .c-lp__article {
    margin-top: 45px;
  }

  .c-lp__article > .c-article__relation--date {
    margin-bottom: 0;
  }
}

.l-lp__detail {
  display: flex;
  justify-content: end;
  margin-top: 26px;
}

/* .l-lp__detail--link {
    text-decoration: none;
    color: #fff;
} */

.l-lp__detail--link {
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
  box-sizing: border-box;
  display: block;
  /* width: 350px; */
  padding: 11px 60px 22px 0;
  background: url(/products/softrobotics/img/common/mark_link1.svg) no-repeat right top 8px;
  background-size: 40px 40px;
  color: #fff;
  font-size: 19px;
  font-weight: normal;
  text-decoration: none;
}

#wrapper section.downloadSingle div.inner {
  width: 700px;
  margin: 0 auto;
  padding: 240px 0 150px;
}

#wrapper section.downloadSingle div.titleWrap {
  margin: 0 0 31px;
  padding: 0 0 24px;
  border-bottom: 1px solid #aaa;
}

#wrapper section.downloadSingle div.titleWrap .category {
  padding: 0 0 18px;
}

#wrapper section.downloadSingle div.titleWrap .category ul li {
  display: inline-block;
  margin-right: 3px;
}

#wrapper section.downloadSingle div.titleWrap .category ul li a {
  display: block;
  padding: 5px 12px;
  border: 1px solid #4c5153;
  border-radius: 3px;
  color: #888;
  line-height: 1;
  font-size: 12px;
}

#wrapper section.downloadSingle div.titleWrap .category ul li a.recommend {
  display: block;
  display: block;
  padding: 5px 17px;
  margin-right: 20px;
  background-color: #fff;
  border-radius: 13px;
  font-size: 14px !important;
  color: #33393b !important;
  line-height: 1;
}

#wrapper section.downloadSingle div.titleWrap .category ul li a:hover {
  opacity: 0.7;
}

#wrapper section.downloadSingle div.titleWrap h1 {
  font-size: 35px;
  line-height: 1.878;
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.downloadSingle div.contentWrap p,
#wrapper section.downloadSingle div.contentWrap table,
#wrapper section.downloadSingle div.contentWrap ul,
#wrapper section.downloadSingle div.contentWrap ol {
  font-size: 16px;
  margin: 0 0 45px;
}

#wrapper section.downloadSingle div.contentWrap img {
  width: 100%;
  height: auto;
  max-width: 100%;
}

#wrapper section.downloadSingle div.contentWrap img + p {
  margin-top: 30px;
}

#wrapper section.downloadSingle div.contentWrap iframe {
  width: 100%;
  height: calc(100vh - 230px);
  margin-top: 40px;
  border-radius: 70px;
}

#wrapper section.downloadSingle div.contentWrap a {
  text-decoration: underline;
}

#wrapper section.downloadSingle div.contentWrap a:hover {
  color: #ccc;
}

#wrapper section.downloadSingle div.contentWrap strong {
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.downloadSingle div.contentWrap table {
  width: 100%;
}

#wrapper section.downloadSingle div.contentWrap table th,
#wrapper section.downloadSingle div.contentWrap table td {
  text-align: left;
  vertical-align: top;
  border-top: 1px solid #aaa;
  border-bottom: 1px solid #aaa;
  padding: 15px 10px 15px 0;
}

#wrapper section.downloadSingle div.contentWrap table th {
  font-weight: bold;
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.downloadSingle div.contentWrap h2 {
  font-size: 35px;
  line-height: 1.6;
  padding: 0 0 40px;
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.downloadSingle div.contentWrap h3 {
  font-size: 31px;
  line-height: 1.7;
  padding: 0 0 40px;
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.downloadSingle div.contentWrap h4 {
  font-size: 26px;
  line-height: 1.8;
  padding: 0 0 40px;
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.downloadSingle div.contentWrap h5 {
  font-size: 22px;
  line-height: 1.9;
  padding: 0 0 40px;
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.downloadSingle div.contentWrap h6 {
  font-size: 20px;
  line-height: 2;
  padding: 0 0 40px;
  font-family: "UD新ゴR", "UD Shin Go Regular", sans-serif;
}

#wrapper section.downloadSingle div.contentWrap ul {
  padding: 0 0 0 20px;
}

#wrapper section.downloadSingle div.contentWrap ul li {
  list-style-type: disc;
}

#wrapper section.downloadSingle div.contentWrap ol {
  padding: 0 0 0 20px;
  counter-reset: item;
}

#wrapper section.downloadSingle div.contentWrap ol li {
  list-style-type: inherit;
  position: relative;
}

#wrapper section.downloadSingle div.contentWrap ol li:before {
  counter-increment: item;
  content: counter(item) ".";
  position: absolute;
  left: -20px;
  top: 0;
}

#wrapper section.downloadSingle div.snsWrap {
  padding: 84px 0 109px;
}

#wrapper section.downloadSingle div.snsWrap h2 {
  font-size: 50px;
  font-weight: 200;
  padding: 0 0 0 45px;
  margin-bottom: -50px;
}

#wrapper section.downloadSingle div.snsWrap div.base {
  background: #252b2d;
  border-radius: 30px;
  padding: 30px 0;
}

#wrapper section.downloadSingle div.snsWrap div.base ul {
  display: flex;
  justify-content: center;
}

#wrapper section.downloadSingle div.snsWrap div.base ul li {
  padding: 0;
  margin: 0 -10px;
}

#wrapper section.downloadSingle div.snsWrap ul li a {
  display: block;
  transition: transform 0.4s ease, background 0.4s ease;
  background: rgba(0, 0, 0, 0);
  border-radius: 50%;
  padding: 20px;
}

#wrapper section.downloadSingle div.snsWrap ul li a:hover {
  transform: scale(0.8);
  background: rgba(0, 0, 0, 1);
}

#wrapper section.downloadSingle p.btnBack {
  font-size: 19px;
  font-weight: 200;
}

#wrapper section.downloadSingle p.btnBack a {
  padding: 0 0 0 60px;
  margin: 0 -5px;
  line-height: 40px;
  background: url(/products/softrobotics/img/common/mark_link3.svg) no-repeat left 5px center;
  background-size: 40px 40px;
  display: inline-block;
  transition: background 0.3s ease;
}

#wrapper section.downloadSingle p.btnBack a:hover {
  background-position: left center;
}

@media screen and (max-width: 979px) {
  .l-lp__detail {
    margin-top: 17px;
  }

  #wrapper section.downloadSingle div.inner {
    width: 83%;
    padding: 130px 0 110px;
  }

  #wrapper section.downloadSingle div.titleWrap {
    margin: 0 0 30px;
    padding: 0 0 20px;
  }

  #wrapper section.downloadSingle div.titleWrap h1 {
    font-size: 22px;
    line-height: 1.8;
  }

  #wrapper section.downloadSingle div.titleWrap .category ul li {
    margin-bottom: 5px;
  }

  #wrapper section.downloadSingle div.titleWrap .category ul li a.recommend {
    margin-right: 0;
  }

  #wrapper section.downloadSingle div.contentWrap p,
  #wrapper section.downloadSingle div.contentWrap table,
  #wrapper section.downloadSingle div.contentWrap ul,
  #wrapper section.downloadSingle div.contentWrap ol {
    font-size: 15px;
    margin: 0 0 20px;
  }

  #wrapper section.downloadSingle div.contentWrap iframe {
    border-radius: 15px;
  }

  #wrapper section.downloadSingle div.contentWrap h2 {
    font-size: 26px;
    line-height: 1.6;
    padding: 0 0 30px;
  }

  #wrapper section.downloadSingle div.contentWrap h3 {
    font-size: 23px;
    line-height: 1.7;
    padding: 0 0 30px;
  }

  #wrapper section.downloadSingle div.contentWrap h4 {
    font-size: 21px;
    line-height: 1.8;
    padding: 0 0 30px;
  }

  #wrapper section.downloadSingle div.contentWrap h5 {
    font-size: 18px;
    line-height: 1.9;
    padding: 0 0 30px;
  }

  #wrapper section.downloadSingle div.contentWrap h6 {
    font-size: 16px;
    line-height: 2;
    padding: 0 0 30px;
  }

  #wrapper section.downloadSingle div.snsWrap {
    padding: 50px 0 60px;
  }

  #wrapper section.downloadSingle div.snsWrap h2 {
    font-size: 36px;
    padding: 0 0 0 25px;
    margin-bottom: -30px;
  }

  #wrapper section.downloadSingle div.snsWrap div.base ul li {
    margin: 0 -15px;
  }
}

#wrapper section.downloadSingle div.contentWrap div.low {
  padding: 0 5%;
  text-align: center;
}

#wrapper section.downloadSingle div.contentWrap div.low h2,
#wrapper section.downloadSingle div.contentWrap div.low h3,
#wrapper section.downloadSingle div.contentWrap div.low h4,
#wrapper section.downloadSingle div.contentWrap div.low h5 {
  display: inline-block;
  border-bottom: solid 1px;
  padding: 0 0 5px 0;
  margin: 0 0 20px 0;
}

#wrapper section.downloadSingle div.contentWrap p img,
#wrapper section.downloadSingle div.contentWrap div.low p img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

#wrapper section.downloadSingle div.contentWrap div.low p {
  font-size: 16px;
  text-align: left;
}

.moreBtn {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 28px auto 0;
  border: none;
  background: transparent;
  font-family: "UD新ゴM", "UD Shin Go Medium", sans-serif;
  color: #fff !important;
  font-size: 19px !important;
}

.moreBtn:hover {
  cursor: pointer;
  opacity: 0.7;
}

.moreBtn::before {
  content: "";
  display: block;
  width: 23px;
  height: 14px;
  margin-right: 22px;
  background: url("/products/softrobotics/img/common/ico_arrow_down.svg") center center no-repeat;
  background-size: contain;
}

@media screen and (max-width: 979px) {
  .moreBtn {
    margin-top: 10px;
    font-size: 18px !important;
  }

  .moreBtn::before {
    margin-right: 16px;
  }
}

/* snsWrap ============================= */
#wrapper section.topSection div.snsWrap {
  padding: 60px 0 45px;
}

#wrapper section.topSection div.snsWrap ul {
  margin-top: 15px;
}
@media screen and (max-width: 979px) {
  #wrapper section.topSection div.snsWrap ul {
    margin-top: 10px;
  }
}

#wrapper section.topSection div.snsWrap ul li {
  margin: 0 15px;
}

#wrapper section.topSection div.snsWrap ul li a {
  background: #000;
  padding: 0;
}

@media screen and (max-width: 979px) {
  #wrapper section.topSection div.snsWrap ul li a img {
    width: 60px;
    height: 60px;
  }
}

/* TETOTEバナー */
.c-bannerTetote {
  position: fixed;
  bottom: 20px;
  left: 20px;
  z-index: 11;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 230px;
  height: 85px;
  padding: 0px 20px;
  border-radius: 15px;
  border: 2px solid #ccc;
  background: url(../img/common/bg_banner_tetote.png) #000 no-repeat top left / 100%;
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.5);
  text-decoration: none;
  transition: opacity 0.3s ease;
  box-sizing: border-box;
  &::before {
    content: "";
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  .contents {
    display: grid;
    justify-content: center;
    align-items: center;
    gap: 5px;
    img {
      width: 100%;
      height: auto;
    }
  }
  .title {
    font-size: 12px;
    font-weight: 500;
    line-height: 183.333%;
    letter-spacing: 0.6px;
    color: #fff;
    font-feature-settings: "palt";
  }
}
@media screen and (min-width: 769px) {
  .c-bannerTetote {
    bottom: 90px;
    right: 20px;
    left: auto;
  }
}
@media (any-hover: hover) {
  .c-bannerTetote:hover {
    opacity: 0.7;
  }
}
/*
 /softrobotics/のtopページ以外はpageTopへ戻るボタンを初期表示時から表示しておく
 ・common/js/framework.js, common_renew/js/framework_rw.jsでfadeIn & fadeOutしてるため、
 しかたなくimportantを設定しています。
 */
body:not(.top) .pageTop {
  display: block !important;
  opacity: 0.85 !important;
}
body:not(.top) .pageTop:hover {
  opacity: 1 !important;
}



/* !Adjust
---------------------------------------------------------- */
.subcategory-list {
  margin: 0;
  font-family: 'BridgestoneType', 'Arial', 'Helvetica', 'Osaka', 'sans-serif';
}

.container,
.footer .copyright,
.footer .copyright, .footer .copyright .copyright-container {
  width: 100%;
  min-width: auto;
}