@charset "UTF-8";
*,
*::before,
*::after {
  box-sizing: border-box;
}

html, body,
h1, h2, h3, h4, h5, h6,
a, p, span,
em, small, strong,
sub, sup,
mark, del, ins, strike,
abbr, dfn,
blockquote, q, cite,
code, pre,
ol, ul, li, dl, dt, dd,
div, section, article,
main, aside, nav,
header, hgroup, footer,
img, figure, figcaption,
address, time,
audio, video,
canvas, iframe,
details, summary,
fieldset, form, label, legend,
table, caption,
tbody, tfoot, thead,
tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  line-height: 1;
}

body {
  min-height: 100vh;
  scroll-behavior: smooth;
}

main {
  display: block;
}

h1,
h2,
h3,
h4,
h5,
h6,
a,
p,
li,
dt,
dd,
th,
td,
small,
figcaption,
time {
  line-height: 1.75;
}

img {
  display: block;
}

small,
figcaption,
time {
  display: block;
}

ul,
ol {
  padding: 0;
  list-style: none;
}

a {
  color: inherit;
  text-decoration: none;
}

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

hr {
  display: block;
  margin: 1em 0;
  padding: 0;
  height: 1px;
  border: 0;
  border-top: 1px solid #ddd;
}

input,
button,
textarea,
select {
  font: inherit;
}
input:focus,
button:focus,
textarea:focus,
select:focus {
  outline: none;
}

button {
  cursor: pointer;
}

@media screen and (max-width: 1024px) {
  * .pc {
    display: none;
  }
}
@media screen and (min-width: 1025px) {
  * .sp {
    display: none;
  }
}
body {
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-size: 14px;
  color: #333;
  line-height: 1.75;
  letter-spacing: 0.05em;
  font-weight: 500;
}

@media screen and (max-width: 1024px) {
  main {
    padding-top: 60px;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 500;
}

.xlTx {
  margin-bottom: 2em;
  font-size: 41px;
}

.lgTx {
  margin-bottom: 2em;
  font-size: 30px;
}

.mdTx {
  margin-bottom: 2em;
  font-size: 26px;
}

.smTx {
  margin-bottom: 1em;
  font-size: 22px;
}

.xsTx {
  margin-bottom: 1em;
  font-size: 18px;
}

.center {
  text-align: center;
}

.fz18 {
  font-size: 18px;
}

.fz34 {
  font-size: 34px;
  margin-bottom: 1em;
}

.medium {
  font-weight: 500;
}

.bold {
  font-weight: 700;
}

.blue {
  color: #37357d;
}

.noto {
  font-family: "Noto Sans JP", sans-serif;
}

a {
  transition: all 0.2s linear;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

table {
  width: 100%;
}

th,
td {
  border: 1px solid #ccc;
  text-align: center;
  padding: 10px;
}

th {
  background: #ebeaf2;
  color: #37357d;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.2;
  padding: 15px 10px;
}

.flex {
  display: flex;
}

@media screen and (max-width: 1024px) {
  .flexHalf {
    flex-direction: column;
  }
}
.flexHalf > * {
  flex: 1;
}
.flexHalf > *:first-child {
  margin-right: 60px;
}
@media screen and (max-width: 1024px) {
  .flexHalf > *:first-child {
    margin: 0 0 30px 0;
  }
}
.flexHalf img {
  height: auto;
}

.centerImg {
  margin: 0 auto;
  height: auto;
}

.centerBox {
  text-align: center;
}

.inner {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
  line-height: 0;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .inner {
    max-width: 90%;
    min-width: 90%;
  }
}

.mediaTx {
  flex: 1;
}

.card {
  flex-direction: column;
}

.bdrs {
  border-radius: 1000px;
}

.bgBlue {
  background: #37357d;
  color: #fff;
}

.secTtlBigEn {
  font-size: 20px;
  color: #37357d;
  text-align: center;
  margin-bottom: 3em;
}
.secTtlBigEn .en {
  font-size: 41px;
  display: block;
  letter-spacing: 0.15em;
}

.btn:hover {
  opacity: 0.7;
}

.rectangularBtn {
  position: relative;
  display: block;
  text-align: center;
}
.rectangularBtn:hover::before {
  right: 15px;
}
.rectangularBtn::before {
  content: "";
  width: 7px;
  height: 7px;
  position: absolute;
  top: calc(50% - 4px);
  right: 20px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transition: all 0.2s linear;
  transform: rotate(45deg);
}

.pageHeader {
  background-color: #e2e0e0;
  background-size: cover;
  background-position: center;
}

.pageHeaderTtl {
  padding: 60px 0;
  font-size: 37px;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.2;
}
@media screen and (max-width: 1024px) {
  .pageHeaderTtl {
    padding: 40px 0;
  }
}
.pageHeaderTtl .en {
  font-size: 16px;
  position: relative;
  display: inline-block;
  padding-left: 30px;
}
.pageHeaderTtl .en::before {
  content: "/";
  position: absolute;
  left: 13px;
  top: 0;
}

.breadcrumbs {
  margin-top: 15px;
}
.breadcrumbs * {
  color: #636363;
}
.breadcrumbs .flex {
  align-items: center;
  flex-wrap: wrap;
}
.breadcrumbs a:hover {
  text-decoration: underline;
}
.breadcrumbs a span {
  color: #37357d;
}
.breadcrumbs .arrow {
  margin: 0 6px;
  font-size: 13px;
  position: relative;
  top: -2px;
}
.page-template-page .breadcrumbs span:nth-child(3) a, .page-template-page-strength_temp .breadcrumbs span:nth-child(3) a, .page-template-page-recruit_temp .breadcrumbs span:nth-child(3) a {
  pointer-events: none;
}
.page-template-page .breadcrumbs span:nth-child(3) a span, .page-template-page-strength_temp .breadcrumbs span:nth-child(3) a span, .page-template-page-recruit_temp .breadcrumbs span:nth-child(3) a span {
  color: #636363;
}

.pageContents > * {
  margin-top: 60px;
}

.rectangularTtl {
  margin-bottom: 30px;
  font-size: 24px;
  background: #ebeaf2;
  padding: 0.4em 0.8em;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
  .rectangularTtl {
    padding: 0.6em 0.8em;
    line-height: 1.2;
  }
}

.borderBottomTtl {
  letter-spacing: 0.1em;
  margin-bottom: 30px;
  font-size: 24px;
  border-bottom: 2px solid #37357d;
}

.ttlBlueTable {
  border: 1px solid #ccc;
  margin-top: 15px;
}
.ttlBlueTable dl {
  align-items: center;
  position: relative;
}
.ttlBlueTable dl + dl {
  border-top: 1px solid #ccc;
}
@media screen and (max-width: 1024px) {
  .ttlBlueTable dl + dl {
    border: none;
  }
}
@media screen and (max-width: 1024px) {
  .ttlBlueTable dl {
    flex-direction: column;
    border-bottom: none;
  }
}
.ttlBlueTable dl::before {
  content: "";
  width: 300px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #ebeaf2;
  border-right: 1px solid #ccc;
}
@media screen and (max-width: 1024px) {
  .ttlBlueTable dl::before {
    display: none;
  }
}
.ttlBlueTable dt {
  padding: 20px 0;
  width: 300px;
  position: relative;
  color: #37357d;
  text-align: center;
  font-size: 18px;
}
@media screen and (max-width: 1024px) {
  .ttlBlueTable dt {
    padding: 15px 0;
    background: #ebeaf2;
    width: 100%;
  }
}
.ttlBlueTable dd {
  padding: 20px;
  flex: 1;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .ttlBlueTable dd {
    padding: 15px;
    width: 100%;
  }
}
.ttlBlueTable .iframeWrap {
  overflow: hidden;
  height: 300px;
  width: 100%;
  margin-top: 15px;
}
@media screen and (max-width: 1024px) {
  .ttlBlueTable .iframeWrap {
    height: 165px;
  }
}
.ttlBlueTable iframe {
  width: 600px;
  height: 800px;
  margin-top: -240px;
}
@media screen and (max-width: 1024px) {
  .ttlBlueTable iframe {
    width: 100%;
    height: 600px;
    margin-top: -210px;
  }
}
.ttlBlueTable li:not(:last-child) {
  margin-bottom: 30px;
}

.ttlBlueLineTable {
  border-bottom: 1px solid #ccc;
  margin-top: 30px;
}
@media screen and (max-width: 1024px) {
  .ttlBlueLineTable {
    border: none;
  }
}
.ttlBlueLineTable dl {
  border-top: 1px solid #ccc;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  .ttlBlueLineTable dl {
    flex-direction: column;
    border: none;
  }
}
.ttlBlueLineTable dt,
.ttlBlueLineTable dd {
  padding: 20px 0;
}
.ttlBlueLineTable dt {
  font-weight: 700;
  width: 200px;
  position: relative;
  color: #37357d;
}
@media screen and (max-width: 1024px) {
  .ttlBlueLineTable dt {
    width: 100%;
    text-align: center;
    background: #ebeaf2;
    padding: 15px 0;
  }
}
.ttlBlueLineTable dd {
  flex: 1;
}
@media screen and (max-width: 1024px) {
  .ttlBlueLineTable dd {
    text-align: left;
    padding: 15px 0;
    width: 100%;
  }
}
.ttlBlueLineTable .iframeWrap {
  overflow: hidden;
  height: 300px;
  width: 100%;
  margin-top: 15px;
}
@media screen and (max-width: 1024px) {
  .ttlBlueLineTable .iframeWrap {
    height: 165px;
  }
}
.ttlBlueLineTable iframe {
  width: 600px;
  height: 800px;
  margin-top: -240px;
}
@media screen and (max-width: 1024px) {
  .ttlBlueLineTable iframe {
    width: 100%;
    height: 600px;
    margin-top: -210px;
  }
}
.ttlBlueLineTable li:not(:last-child) {
  margin-bottom: 30px;
}

.timelineTable {
  position: relative;
  padding: 10px 0;
}
.timelineTable::before {
  content: "";
  width: 1px;
  height: 100%;
  position: absolute;
  top: 0;
  left: calc(140px + 50px);
  background: #ccc;
}
@media screen and (max-width: 1024px) {
  .timelineTable::before {
    left: calc(100px + 25px);
  }
}
.timelineTable dl {
  align-items: center;
  position: relative;
}
.timelineTable dl:not(:last-child) {
  margin-bottom: 50px;
}
@media screen and (max-width: 1024px) {
  .timelineTable dl:not(:last-child) {
    margin-bottom: 30px;
  }
}
.timelineTable dt {
  width: 140px;
  text-align: right;
  margin-right: 100px;
  font-weight: 700;
  color: #37357d;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .timelineTable dt {
    width: 100px;
    margin-right: 50px;
  }
}
.timelineTable dt::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 10px;
  background: #37357d;
  position: absolute;
  top: calc(50% - 5px);
  left: calc(140px + 46px);
}
@media screen and (max-width: 1024px) {
  .timelineTable dt::before {
    left: calc(100px + 20px);
  }
}
.timelineTable dd {
  flex: 1;
}

.txLink {
  color: #008de2;
  word-break: break-all;
}
.txLink:hover {
  text-decoration: underline;
}

.pageMenus {
  background: #ebeaf2;
  margin: 40px 0;
  padding: 45px 0;
}
.pageMenus ul {
  flex-wrap: wrap;
  margin: 0 -15px;
}
@media screen and (max-width: 1024px) {
  .pageMenus ul {
    flex-direction: column;
    margin-top: -20px;
    align-items: center;
  }
}
.pageMenus li {
  width: 25%;
  padding: 0 15px;
}
@media screen and (max-width: 1024px) {
  .pageMenus li {
    width: 100%;
    max-width: 450px;
    margin-top: 20px;
  }
}
.pageMenus li:nth-child(n+5) {
  margin-top: 30px;
}
@media screen and (max-width: 1024px) {
  .pageMenus li:nth-child(n+5) {
    margin-top: 20px;
  }
}
.pageMenus a {
  font-size: 18px;
  height: 100%;
  padding: 1.25em 30px 1.25em 10px;
  background: #fff;
  border: 2px solid #37357d;
  color: #37357d;
  position: relative;
  align-items: center;
  justify-content: center;
}
.pageMenus a:hover {
  background: #37357d;
  color: #fff;
}
.pageMenus a:hover::before {
  border-top-color: #fff;
  border-right-color: #fff;
}
.pageMenus a::before {
  content: "";
  width: 10px;
  height: 10px;
  border-top: 2px solid #37357d;
  border-right: 2px solid #37357d;
  transform: rotate(45deg);
  position: absolute;
  right: 15px;
  top: calc(50% - 4px);
  transition: all 0.2s linear;
}
.pageMenus span {
  line-height: 1.4;
  display: block;
  text-align: center;
}
.pageMenus .current a {
  background: #37357d;
  color: #fff;
}
.pageMenus .current a::before {
  border-top-color: #fff;
  border-right-color: #fff;
}

.mainColumn {
  flex: 1;
  margin-right: 50px;
}

.sidebar {
  width: 250px;
}
.sidebar li {
  margin-bottom: 10px;
}
.sidebar a {
  border: 1px solid #37357d;
  color: #37357d;
  padding: 20px 0;
  font-size: 18px;
  display: block;
  text-align: center;
  position: relative;
}
.sidebar a:hover {
  background: #37357d;
  color: #fff;
}
.sidebar a:hover::before {
  border-top-color: #fff;
  border-right-color: #fff;
}
.sidebar a::before {
  content: "";
  width: 7px;
  height: 7px;
  position: absolute;
  top: calc(50% - 4px);
  right: 10px;
  border-top: 2px solid #37357d;
  border-right: 2px solid #37357d;
  transition: all 0.2s linear;
  transform: rotate(45deg);
}
.sidebar .current a {
  background: #37357d;
  color: #fff;
}
.sidebar .current a::before {
  border-top-color: #fff;
  border-right-color: #fff;
}

#wpPagenavi {
  margin: 60px 0;
}
#wpPagenavi .wp-pagenavi {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
#wpPagenavi .wp-pagenavi * {
  border: none;
  width: 36px;
  height: 36px;
  display: block;
  margin: 0 3px;
  text-align: center;
  line-height: 36px;
  padding: 0;
}
#wpPagenavi a:hover {
  background: #37357d;
  color: #fff;
}
#wpPagenavi .current {
  background: #37357d;
  color: #fff;
}

.emphasisTtl {
  background: url(../img/stripe.png);
  background-size: 8px;
  padding: 0.5em 0.5em 0.5em 90px;
  font-size: 30px;
  font-weight: 700;
  color: #222;
  position: relative;
  margin-bottom: 40px;
}
.emphasisTtl::before {
  content: "";
  width: 50px;
  height: 50px;
  background: url(../img/icon_warning_min.png) no-repeat center;
  background-size: 100% auto;
  position: absolute;
  left: 20px;
  top: calc(50% - 25px);
}

.iconTtl {
  font-size: 24px;
  font-weight: 700;
  padding: 18px 0 18px 80px;
  margin-bottom: 1em;
  background-position: left center;
  background-size: 55px auto;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1024px) {
  .iconTtl {
    line-height: 1.2;
  }
}

.right {
  text-align: right;
}

@media screen and (max-width: 1024px) {
  .scroll {
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
  }
  .scroll table {
    table-layout: fixed;
  }
  .scroll th,
.scroll td {
    width: 180px;
  }
}

.separatorTtlEnJa {
  font-size: 29px;
  font-family: "Noto Sans JP", sans-serif;
  margin-bottom: 1.5em;
  line-height: 1;
}
.separatorTtlEnJa .en {
  font-size: 12px;
  position: relative;
  display: inline-block;
  padding-left: 30px;
  font-weight: 500;
}
.separatorTtlEnJa .en::before {
  content: "/";
  position: absolute;
  left: 13px;
  top: 0;
}

.topBottomBorderTtl {
  font-size: 24px;
  padding: 20px;
  border-top: 1px solid #37357d;
  border-bottom: 1px solid #37357d;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.3;
  margin-bottom: 1em;
}

.bottomContact {
  text-align: center;
  margin-top: 60px;
}
.bottomContact a {
  display: inline-block;
  font-size: 24px;
  font-weight: 700;
  padding: 0.75em 3em;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .bottomContact a {
    padding: 0.75em;
    line-height: 1.2;
  }
}
.bottomContact a:hover {
  opacity: 0.7;
}
.bottomContact a:hover::before {
  right: 25px;
}
.bottomContact a::before {
  content: "";
  width: 10px;
  height: 10px;
  position: absolute;
  top: calc(50% - 4px);
  right: 30px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transition: all 0.2s linear;
  transform: rotate(45deg);
}
@media screen and (max-width: 1024px) {
  .bottomContact a::before {
    display: none;
  }
}

.alignleft {
  float: left;
}

.alignright {
  float: right;
}

.aligncenter {
  margin: 0 auto;
}

.underlineTitle {
  font-size: 24px;
  color: #37357d;
  border-bottom: 2px solid #ddd;
  padding-bottom: 0.5em;
  margin-bottom: 1.5em;
  position: relative;
}
.underlineTitle::before {
  content: "";
  width: 140px;
  height: 2px;
  background: #37357d;
  position: absolute;
  bottom: -2px;
  left: 0;
}

@media screen and (max-width: 1024px) {
  #spSiteHeader {
    width: 100%;
    height: 60px;
    padding-left: 5%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999999;
    background: #fff;
    border-bottom: 1px solid #eee;
    justify-content: space-between;
    align-items: center;
  }
  #spSiteHeader .logo {
    display: block;
    line-height: 1;
    align-items: center;
  }
  #spSiteHeader .logo img {
    width: 140px;
    display: block;
  }
  #spSiteHeader #spSearchBtn {
    width: 60px;
    height: 60px;
    background: #ebeaf2 url(../img/sp_search.png) no-repeat top 10px center;
    background-size: 20px auto;
    border: none;
    font-size: 12px;
    transition: all 0.2s linear;
    position: relative;
    padding-top: 30px;
  }
  #spSiteHeader #spSearchBtn:hover {
    opacity: 0.7;
  }
  #spSiteHeader #spSearchBtn::before {
    transition: all 0.2s linear;
  }
  #spSiteHeader .searchWrap {
    padding: 20px 5%;
    width: 100%;
    position: absolute;
    top: 60px;
    left: 0;
    background: #ebeaf2;
    display: none;
  }
  #spSiteHeader .searchWrap .inner {
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    display: block;
  }
  #spSiteHeader .searchWrap .searchBox {
    display: block;
    width: 100%;
    position: relative;
    margin: 0 auto;
  }
  #spSiteHeader .searchWrap .searchTx {
    width: 100%;
    border: none;
    background: #fff;
    border-radius: 500px;
    padding: 10px 20px;
  }
  #spSiteHeader .searchWrap .searchBtn {
    width: 16px;
    position: absolute;
    top: 12px;
    right: 12px;
  }
  #spSiteHeader .batsu {
    display: none;
  }
  #spSiteHeader .parentNav {
    align-items: center;
  }
  #spSiteHeader .mainLink {
    font-size: 12px;
    flex-direction: column;
    align-items: center;
  }
  #spSiteHeader #spNav {
    width: 60px;
    height: 60px;
    background: transparent;
    border: none;
    position: relative;
    background: #37357d;
  }
  #spSiteHeader #spNav span {
    width: 20px;
    position: relative;
    display: block;
    height: 16px;
    border-top: 2px solid #fff;
    transition: all 0.2s linear;
    margin: 0 auto;
  }
  #spSiteHeader #spNav span::before, #spSiteHeader #spNav span::after {
    content: "";
    width: 20px;
    height: 2px;
    background: #fff;
    position: absolute;
    right: 0;
    transition: all 0.2s linear;
  }
  #spSiteHeader #spNav span::before {
    top: 5px;
  }
  #spSiteHeader #spNav span::after {
    bottom: 0;
  }
  #spSiteHeader #spNav.active span {
    border: none;
  }
  #spSiteHeader #spNav.active span::before {
    transform: rotate(45deg);
    top: 7px;
  }
  #spSiteHeader #spNav.active span::after {
    transform: rotate(-45deg);
    bottom: 7px;
  }
  #spSiteHeader .dropdown {
    border-top: 1px solid #eee;
    background: #f8f8f8;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 100vh;
    padding-bottom: 210px;
    border-bottom: 10px solid #37357d;
    display: none;
    overflow: scroll;
  }
  #spSiteHeader .mainMenu {
    margin-bottom: 30px;
  }
  #spSiteHeader .mainMenu a {
    color: #37357d;
    display: block;
  }
  #spSiteHeader .mainMenu a:hover {
    opacity: 0.7;
  }
  #spSiteHeader .mainTtl {
    color: #37357d;
    padding: 10px 20px;
    font-weight: 700;
    font-size: 18px;
    border-bottom: 1px solid #a5a5a5;
    position: relative;
  }
  #spSiteHeader .mainTtl::before {
    content: "";
    width: 20px;
    height: 2px;
    background: #37357d;
    position: absolute;
    top: 27px;
    right: 20px;
  }
  #spSiteHeader .mainTtl::after {
    content: "";
    width: 2px;
    height: 20px;
    background: #37357d;
    position: absolute;
    top: 18px;
    right: 29px;
    transition: all 0.2s linear;
  }
  #spSiteHeader .mainTtl.active::after {
    opacity: 0;
  }
  #spSiteHeader .mainTtlLink {
    color: #37357d;
    padding: 10px 20px;
    font-weight: 700;
    font-size: 18px;
    border-bottom: 1px solid #a5a5a5;
  }
  #spSiteHeader .subMenu {
    display: none;
    margin: 20px 0;
  }
  #spSiteHeader .subMenu a {
    font-size: 16px;
    padding: 4px 20px 4px 40px;
    position: relative;
  }
  #spSiteHeader .subMenu a::before {
    content: "";
    width: 6px;
    height: 6px;
    border-top: 2px solid #37357d;
    border-right: 2px solid #37357d;
    transform: rotate(45deg);
    position: absolute;
    left: 20px;
    top: calc(50% - 3px);
    transition: all 0.2s linear;
  }
  #spSiteHeader .subTtl {
    color: #37357d;
    padding: 10px 20px;
    font-size: 16px;
    border-bottom: 1px solid #a5a5a5;
  }
  #spSiteHeader .contact {
    display: block;
    padding: 10px 20px;
    font-size: 20px;
    width: 80%;
    margin: 0 auto;
    text-align: center;
  }
}
@media screen and (max-width: 1024px) and (max-width: 1024px) {
  #spSiteHeader .contact {
    width: 94%;
    max-width: 330px;
  }
}
@media screen and (max-width: 1024px) {
  #siteHeader {
    display: none;
  }
}
@media screen and (min-width: 1025px) {
  #spSiteHeader {
    display: none;
  }

  #siteHeader {
    width: 100%;
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
  }
  #siteHeader .headerUtils {
    height: 53px;
    border-bottom: 1px solid #ddd;
  }
  #siteHeader .headerUtils > .flex {
    align-items: center;
    justify-content: space-between;
    height: 100%;
  }
  #siteHeader .logo {
    margin-right: auto;
    align-items: center;
  }
  #siteHeader .logo a {
    display: block;
  }
  #siteHeader .logo a:hover {
    opacity: 0.7;
  }
  #siteHeader .logo img {
    height: 30px;
  }
  #siteHeader .headerUtil {
    align-items: center;
  }
  #siteHeader .headerUtil dl {
    margin-right: 20px;
    align-items: center;
  }
  #siteHeader .headerUtil dt {
    background: #c12314;
    color: #fff;
    border-radius: 4px;
    font-size: 12px;
    line-height: 1.2;
    padding: 2px 3px;
    font-weight: 700;
    margin-right: 5px;
  }
  #siteHeader .headerUtil dd {
    position: relative;
    top: 2px;
    font-size: 13px;
    font-weight: 700;
  }
  #siteHeader .headerUtil #searchBtn {
    background: #ebeaf2 url(../img/search.png) no-repeat center left 12px;
    background-size: 15px auto;
    border: none;
    font-size: 12px;
    padding: 12px 12px 12px 34px;
    margin-right: 10px;
    transition: all 0.2s linear;
    position: relative;
  }
  #siteHeader .headerUtil #searchBtn:hover {
    opacity: 0.7;
  }
  #siteHeader .headerUtil #searchBtn::before {
    transition: all 0.2s linear;
  }
  #siteHeader .headerUtil #searchBtn.active::before {
    content: "";
    width: 0;
    height: 0;
    border: 5px solid transparent;
    border-top: 8px solid #ebeaf2;
    position: absolute;
    bottom: -12px;
    left: calc(50% - 5px);
  }
  #siteHeader .headerUtil .contact {
    font-size: 12px;
    padding: 10px;
    line-height: 1.5;
  }
  #siteHeader .searchWrap {
    background: #ebeaf2;
    height: 0;
    opacity: 0;
    transition: all 0.2s linear;
  }
  #siteHeader .searchWrap > .flex {
    align-items: center;
    justify-content: flex-end;
    height: 0;
  }
  #siteHeader .searchWrap .searchField {
    position: relative;
  }
  #siteHeader .searchWrap .searchTx {
    border: none;
    background: #fff;
    border-radius: 500px;
    padding: 5px 20px;
    width: 330px;
  }
  #siteHeader .searchWrap .searchBtn {
    width: 16px;
    position: absolute;
    top: 8px;
    right: 14px;
  }
  #siteHeader .searchWrap .batsu {
    width: 17px;
    height: 17px;
    background: url(../img/batsu.png) no-repeat center;
    background-size: auto 17px;
    margin-left: 20px;
    border: none;
    transition: all 0.2s linear;
  }
  #siteHeader .searchWrap .batsu:hover {
    opacity: 0.7;
  }
  #siteHeader .searchWrap.active {
    border-bottom: 1px solid #ddd;
    padding: 5px 0;
    height: auto;
    opacity: 1;
  }
  #siteHeader .searchWrap.active > .flex {
    height: auto;
  }
  #siteHeader .mainMenu {
    position: static;
  }
  #siteHeader a {
    letter-spacing: 0;
  }
  #siteHeader .normal {
    flex: 1;
    transition: all 0.2s linear;
  }
  #siteHeader .normal:hover {
    background: #ebeaf2;
  }
  #siteHeader .normal:hover .subMenu {
    visibility: visible;
    opacity: 1;
  }
  #siteHeader .normal::before {
    content: "";
    width: 1px;
    height: 14px;
    position: absolute;
    top: calc(50% - 7px);
    left: 0;
    background: #ddd;
  }
  #siteHeader .normal:last-child::after {
    content: "";
    width: 1px;
    height: 14px;
    position: absolute;
    top: calc(50% - 7px);
    right: 0;
    background: #ddd;
  }
  #siteHeader .mainLink {
    flex-direction: column;
    align-items: center;
    font-size: 15px;
    font-weight: 700;
    padding: 16px 0 20px;
  }
  #siteHeader .mainLink .en {
    font-size: 10px;
    transform: scale(0.9, 0.9);
    transform-origin: center;
    color: #bbb;
  }
  #siteHeader .subMenu {
    left: 0;
    width: 100%;
    padding: 40px 0;
    background: rgba(235, 234, 242, 0.95);
    visibility: hidden;
    position: absolute;
    transition: all 0.2s linear;
    opacity: 0;
    z-index: 99999;
    box-shadow: 0 3px 7px rgba(0, 0, 0, 0.2);
  }
  #siteHeader .subMenu .flex {
    flex-wrap: wrap;
    margin: 0 -20px;
  }
  #siteHeader .subMenu .flexChild {
    width: 25%;
    padding: 0 20px;
  }
  #siteHeader .subMenu .flexChild:nth-child(n+5) {
    margin-top: 20px;
  }
  #siteHeader .subMenu .parentLink {
    display: block;
    color: #37357d;
    font-size: 18px;
    font-weight: 700;
    padding-bottom: 0.5em;
    margin-bottom: 0.5em;
    border-bottom: 1px solid #ddd;
  }
  #siteHeader .subMenu .childLink {
    font-size: 14px;
    display: block;
    padding: 10px 10px 10px 0;
    color: #37357d;
  }
  #siteHeader .subMenu a:hover {
    text-decoration: underline;
  }
}
#siteFooter {
  padding-top: 60px;
}
#siteFooter .footerMenus {
  padding: 60px 0;
  background: #ebeaf2;
}
@media screen and (max-width: 1024px) {
  #siteFooter .footerMenus {
    padding: 40px 0;
  }
}
@media screen and (max-width: 1024px) {
  #siteFooter .footerMenus .inner {
    width: 100%;
    max-width: 100%;
    min-width: 100%;
  }
}
#siteFooter .footerContact {
  text-align: center;
}
@media screen and (max-width: 1024px) {
  #siteFooter .footerContact {
    width: 90%;
    margin: 0 auto;
    flex-direction: column;
  }
}
#siteFooter .footerContact > li {
  flex: 1;
}
#siteFooter .footerContact > li:first-child {
  margin-right: 30px;
}
@media screen and (max-width: 1024px) {
  #siteFooter .footerContact > li:first-child {
    margin: 0 0 15px 0;
  }
}
#siteFooter .footerContact > li > * {
  padding: 20px 0;
  height: 100%;
  background: #fff;
  border: 2px solid #37357d;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
#siteFooter .footerContact p {
  font-size: 24px;
  color: #37357d;
  font-weight: 700;
}
@media screen and (max-width: 1024px) {
  #siteFooter .footerContact p {
    line-height: 1.2;
  }
}
#siteFooter .footerContact span {
  display: block;
  font-size: 19px;
  font-weight: 500;
}
#siteFooter .footerContact a:hover {
  opacity: 0.7;
}
#siteFooter .footerContact .contact li {
  margin: 0 10px;
}
@media screen and (max-width: 1024px) {
  #siteFooter .footerContact .contact li {
    margin: 0 5px;
  }
}
#siteFooter .footerContact .contact dt {
  color: #fff;
  background: #d5382a;
  margin: 5px 0;
}
@media screen and (max-width: 1024px) {
  #siteFooter .footerContact .contact dd {
    line-height: 1.2;
  }
}
@media screen and (max-width: 1024px) {
  #siteFooter .footerContact .contact a {
    font-size: 12px;
    letter-spacing: 0;
    font-weight: 700;
    line-height: 1.2;
  }
}
#siteFooter nav {
  justify-content: space-between;
  margin-top: 60px;
}
@media screen and (max-width: 1024px) {
  #siteFooter nav {
    margin-top: 40px;
    flex-direction: column;
  }
}
#siteFooter nav * {
  color: #37357d;
}
#siteFooter nav a:hover {
  text-decoration: underline;
}
#siteFooter nav dt {
  font-size: 18px;
  font-weight: 700;
}
@media screen and (max-width: 1024px) {
  #siteFooter nav dt {
    padding: 10px 20px;
    font-weight: 700;
    font-size: 18px;
    border-bottom: 1px solid #a5a5a5;
    position: relative;
  }
  #siteFooter nav dt::before {
    content: "";
    width: 20px;
    height: 2px;
    background: #222;
    position: absolute;
    top: 27px;
    right: 20px;
  }
  #siteFooter nav dt::after {
    content: "";
    width: 2px;
    height: 20px;
    background: #222;
    position: absolute;
    top: 18px;
    right: 29px;
    transition: all 0.2s linear;
  }
  #siteFooter nav dt.active::after {
    opacity: 0;
  }
}
#siteFooter nav dd {
  margin-top: 15px;
}
@media screen and (max-width: 1024px) {
  #siteFooter nav dd {
    display: none;
  }
  #siteFooter nav dd a {
    font-size: 10px;
    position: relative;
    display: block;
    padding-left: 10px;
  }
}
@media screen and (max-width: 1024px) and (max-width: 1024px) {
  #siteFooter nav dd a {
    font-size: 16px;
    padding: 4px 20px 4px 40px;
  }
}
@media screen and (max-width: 1024px) {
  #siteFooter nav dd a:hover::before {
    border-top-color: #37357d;
    border-right-color: #37357d;
  }
}
@media screen and (max-width: 1024px) {
  #siteFooter nav dd a::before {
    content: "";
    width: 3px;
    height: 3px;
    border-top: 1px solid #37357d;
    border-right: 1px solid #37357d;
    transform: rotate(45deg);
    position: absolute;
    left: 0;
    top: calc(50% - 1px);
    transition: all 0.2s linear;
  }
}
@media screen and (max-width: 1024px) and (max-width: 1024px) {
  #siteFooter nav dd a::before {
    content: "";
    width: 6px;
    height: 6px;
    border-top: 2px solid #37357d;
    border-right: 2px solid #37357d;
    left: 20px;
    top: calc(50% - 3px);
  }
}
#siteFooter nav .otherMenu a {
  font-size: 16px;
  color: #37357d;
  font-weight: 700;
  margin-bottom: 4px;
  display: block;
}
@media screen and (max-width: 1024px) {
  #siteFooter nav .otherMenu a {
    font-weight: 500;
    padding: 10px 20px;
    border-bottom: 1px solid #a5a5a5;
  }
}
#siteFooter nav .otherMenuBanner {
  margin-top: 10px;
}
#siteFooter nav .otherMenuBanner a {
  font-weight: 500;
  font-size: 12px;
  color: #505050;
  text-align: center;
  width: 132px;
  line-height: 1.2;
}
#siteFooter nav .otherMenuBanner img {
  margin-bottom: 5px;
}
#siteFooter .footerUtils {
  padding: 50px 0;
  background: #37357d;
}
@media screen and (max-width: 1024px) {
  #siteFooter .footerUtils {
    background: #ebeaf2;
    padding: 0;
  }
}
#siteFooter .footerUtils * {
  color: #fff;
}
#siteFooter .footerUtils .inner {
  justify-content: space-between;
}
@media screen and (min-width: 1025px) {
  #siteFooter .footerUtils .otherBanner {
    display: none;
  }
}
@media screen and (max-width: 1024px) {
  #siteFooter .footerUtils .otherBanner {
    justify-content: center;
    width: 100%;
    margin-bottom: 20px;
  }
}
#siteFooter .footerUtils .otherBanner li {
  margin: 10px;
}
#siteFooter .footerUtils .otherBanner span {
  color: #404040;
  font-size: 12px;
  line-height: 1.2;
  display: block;
  margin-top: 5px;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  #siteFooter .footerUtils .company {
    display: none;
  }
}
#siteFooter .footerUtils .company img {
  width: 125px;
}
#siteFooter .footerUtils .company h6 {
  margin: 15px 0;
  font-size: 24px;
}
#siteFooter .footerUtils .company .en {
  font-size: 14px;
  display: block;
}
#siteFooter .footerUtils .company a {
  margin-right: 10px;
}
#siteFooter .footerUtils .company a:hover {
  opacity: 0.7;
}
#siteFooter .footerUtils .banner {
  width: calc(100% - 350px);
}
@media screen and (max-width: 1024px) {
  #siteFooter .footerUtils .banner {
    display: none;
  }
}
#siteFooter .footerUtils .banner a {
  display: block;
}
#siteFooter .footerUtils .banner a:hover {
  opacity: 0.7;
}
#siteFooter small {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 10px;
  color: #37357d;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  #siteFooter small {
    padding: 4px 0;
    background: #37357d;
    color: #fff;
  }
}

#hero {
  width: 100%;
  overflow: hidden;
}
#hero .slick-slide {
  margin: 0 15px;
}
@media screen and (max-width: 1024px) {
  #hero .slick-slide {
    margin: 0;
  }
}
#hero .slick-slide a {
  display: block;
}
#hero .slick-slide a:hover {
  opacity: 0.7;
}
#hero .slick-slide img {
  width: 100%;
  max-width: none;
}
#hero .slick-arrow {
  z-index: 9999;
  width: 40px;
  height: 40px;
}
#hero .slick-arrow::before {
  content: "";
  width: 100%;
  height: 100%;
  border-radius: 100px;
  background: #37357d;
  display: block;
  opacity: 1;
}
#hero .slick-arrow::after {
  content: "";
  width: 12px;
  height: 12px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: calc(50% - 6px);
}
#hero .slick-prev {
  left: 3%;
}
#hero .slick-prev::after {
  left: 16px;
  transform: rotate(-135deg);
}
#hero .slick-next {
  right: 3%;
}
#hero .slick-next::after {
  right: 16px;
  transform: rotate(45deg);
}

#news .inner {
  padding: 15px 0;
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 1024px) {
  #news .inner {
    flex-direction: column;
    position: relative;
  }
}
#news a:hover {
  opacity: 0.7;
}
#news h2 {
  font-size: 14px;
  color: #37357d;
  font-weight: 700;
  margin-right: 30px;
}
@media screen and (max-width: 1024px) {
  #news dl {
    flex-direction: column;
    width: 100%;
  }
}
#news dt {
  margin-right: 15px;
}
#news dd a {
  color: #37357d;
  border-bottom: 1px solid #37357d;
  padding-bottom: 2px;
}
@media screen and (max-width: 1024px) {
  #news time {
    position: absolute;
    top: 15px;
    left: 75px;
  }
}
#news .bkTxLink {
  margin-left: auto;
  position: relative;
  padding-right: 15px;
}
@media screen and (max-width: 1024px) {
  #news .bkTxLink {
    margin: 5px 0 0;
    text-align: right;
  }
}
#news .bkTxLink::before {
  content: "";
  width: 5px;
  height: 5px;
  position: absolute;
  top: calc(50% - 2px);
  right: 0;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  transition: all 0.2s linear;
  transform: rotate(45deg);
}

.newProductsBanner a {
  display: block;
  max-width: 600px;
  margin: 10px auto 60px;
}
@media screen and (max-width: 1024px) {
  .newProductsBanner a {
    max-width: 420px;
    margin: 0 auto 40px;
  }
}
.newProductsBanner a:hover {
  opacity: 0.7;
}

#productHeader {
  background-color: #f5f5f8;
  background-image: url(../img/products_main_min.jpg);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}
@media screen and (max-width: 1024px) {
  #productHeader {
    background-image: url(../img/products_main_min_sp.jpg);
  }
}

#products {
  padding: 60px 0;
}
#products .productList {
  margin-bottom: 60px;
}
@media screen and (max-width: 1024px) {
  #products .productList {
    flex-direction: column;
    width: 90%;
    max-width: 360px;
    margin: 0 auto 60px;
  }
}
#products .productList li {
  flex: 1;
}
#products .productList li:not(:last-child) {
  margin-right: 12px;
}
@media screen and (max-width: 1024px) {
  #products .productList li:not(:last-child) {
    margin: 0 0 30px 0;
  }
}
#products .cardTx {
  text-align: center;
}
#products h3 {
  font-size: 18px;
  color: #666;
  margin-top: 5px;
}
#products .tabs {
  position: relative;
}
#products .tabs input[name=tabItem] {
  display: none;
}
#products .tabs .tabItem {
  cursor: pointer;
  transition: all 0.2s linear;
}
#products .tabs .tabsBtn {
  margin-bottom: 15px;
}
#products .tabs label {
  flex: 1;
  border: 2px solid #37357d;
  color: #37357d;
  font-size: 18px;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  padding: 10px 0 14px;
  margin: 0 2px;
  text-align: center;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  #products .tabs label {
    padding: 10px 5px;
    text-align: center;
    line-height: 1.2;
    margin: 0 1px;
    font-size: 16px;
  }
}
#products .tabs label:hover {
  color: #fff;
  background: #37357d;
}
#products .tabs label::before {
  content: "";
  width: 0;
  height: 0;
  border: 8px solid transparent;
  border-top: 12px solid #37357d;
  position: absolute;
  bottom: -18px;
  left: calc(50% - 8px);
  transition: all 0.2s linear;
  opacity: 0;
}
#products .tabs #tab01:checked ~ .tabsBtn [for=tab01],
#products .tabs #tab02:checked ~ .tabsBtn [for=tab02],
#products .tabs #tab03:checked ~ .tabsBtn [for=tab03],
#products .tabs #tab04:checked ~ .tabsBtn [for=tab04] {
  background: #37357d;
  color: #fff;
  position: relative;
}
#products .tabs #tab01:checked ~ .tabsBtn [for=tab01]::before,
#products .tabs #tab02:checked ~ .tabsBtn [for=tab02]::before,
#products .tabs #tab03:checked ~ .tabsBtn [for=tab03]::before,
#products .tabs #tab04:checked ~ .tabsBtn [for=tab04]::before {
  opacity: 1;
}
#products .tabs .tabContent {
  background: #ebeaf2;
  display: none;
}
#products .tabs #tab01:checked ~ #tab01Content,
#products .tabs #tab02:checked ~ #tab02Content,
#products .tabs #tab03:checked ~ #tab03Content,
#products .tabs #tab04:checked ~ #tab04Content {
  display: block;
  animation: show 0.2s linear;
}
#products .tabs ul {
  padding: 26px 13px;
  flex-wrap: wrap;
}
@media screen and (max-width: 1024px) {
  #products .tabs ul {
    padding: 16px 8px;
    flex-direction: column;
  }
}
#products .tabs li {
  width: calc(100% / 3);
  padding: 0 13px;
}
@media screen and (max-width: 1024px) {
  #products .tabs li {
    width: 100%;
    padding: 0 8px;
  }
}
@media screen and (max-width: 1024px) {
  #products .tabs li + li {
    margin-top: 16px;
  }
}
#products .tabs li:nth-child(n+4) {
  margin-top: 26px;
}
@media screen and (max-width: 1024px) {
  #products .tabs li:nth-child(n+4) {
    margin-top: 16px;
  }
}
#products .tabs a {
  background: #fff;
  padding: 15px;
}
#products a:hover {
  opacity: 0.7;
}
#products .media {
  align-items: center;
}
#products .mediaImg {
  width: 35%;
}
@media screen and (max-width: 1024px) {
  #products .mediaImg {
    width: 30%;
  }
}
#products .mediaTx {
  flex: 1;
  margin-left: 15px;
}
#products h4 {
  font-size: 18px;
  color: #37357d;
  line-height: 1.4;
}
#products .lgTx {
  line-height: 1.2;
  color: #37357d;
  margin-bottom: 0.5em;
}
#products .childCats {
  margin-top: 20px;
  flex-wrap: wrap;
}
#products .childCats li {
  margin: 0 8px 8px 0;
}
#products .childCats a {
  padding: 0.5em 1em;
  font-size: 12px;
}
#products #tab02Content.motion h4 a,
#products #tab03Content.motion h4 a {
  line-height: 1;
}
#products #tab02Content.motion li ul,
#products #tab03Content.motion li ul {
  padding: 0;
}
#products #tab02Content.motion li ul a,
#products #tab03Content.motion li ul a {
  font-size: 14px;
  color: #008de2;
}
#products #tab02Content.motion li li,
#products #tab03Content.motion li li {
  width: 100%;
  padding: 0;
  margin-top: 0;
}
#products #tab02Content.motion .media,
#products #tab03Content.motion .media {
  height: 100%;
  padding: 15px;
  background: #fff;
  align-items: stretch;
}
#products #tab02Content.motion a,
#products #tab03Content.motion a {
  padding: 0;
}

#examplesOfProducts ul {
  flex-wrap: wrap;
}
@media screen and (max-width: 1024px) {
  #examplesOfProducts ul {
    justify-content: center;
  }
}
#examplesOfProducts li {
  width: 25%;
}
@media screen and (max-width: 1024px) {
  #examplesOfProducts li {
    margin-top: 40px;
    width: 50%;
    max-width: 210px;
  }
}
#examplesOfProducts li:nth-child(n+5) {
  margin-top: 40px;
}
#examplesOfProducts a {
  display: block;
}
#examplesOfProducts a:hover {
  opacity: 0.7;
}
#examplesOfProducts .cardImg {
  width: 70%;
  height: 0;
  padding-top: 70%;
  position: relative;
  overflow: hidden;
  margin: 0 auto;
}
#examplesOfProducts img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#examplesOfProducts h3 {
  text-align: center;
  margin-top: 15px;
  font-size: 18px;
  color: #666;
}
@media screen and (max-width: 1024px) {
  #examplesOfProducts h3 {
    line-height: 1.4;
    font-size: 14px;
  }
}

#newsBlc {
  padding-top: 60px;
}
#newsBlc ul {
  padding-left: 50px;
}
@media screen and (max-width: 1024px) {
  #newsBlc ul {
    padding-left: 0;
  }
}
#newsBlc a:hover {
  opacity: 0.7;
}
#newsBlc li a {
  color: #37357d;
  line-height: 1;
  border-bottom: 1px solid #ccc;
  display: block;
  padding: 12px 0;
  position: relative;
}
#newsBlc li a:hover::before {
  right: 10px;
}
#newsBlc li a::before {
  content: "";
  width: 7px;
  height: 7px;
  position: absolute;
  top: calc(50% - 3px);
  right: 15px;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  transition: all 0.2s linear;
  transform: rotate(45deg);
}
@media screen and (max-width: 1024px) {
  #newsBlc dl {
    flex-direction: column;
    width: 100%;
  }
}
#newsBlc dt {
  margin-right: 60px;
  color: #37357d;
}
#newsBlc dd {
  text-decoration: underline;
}
#newsBlc .rectangularBtn {
  padding: 20px 0;
  width: 100%;
  max-width: 330px;
  margin: 50px auto 0;
  font-size: 18px;
}

.fixedPage p + p {
  margin-top: 1em;
}

#about_simotecHeader {
  background-color: #f5f5f8;
  background-image: url(../img/company_main_min.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
#about_simotecHeader .simotecGroup .ttlBlueTable {
  margin-top: 15px;
}
#about_simotecHeader .simotecGroup .ttlBlueTable dl::before {
  width: 200px;
}
@media screen and (max-width: 1024px) {
  #about_simotecHeader .simotecGroup .ttlBlueTable dl::before {
    display: none;
  }
}
#about_simotecHeader .simotecGroup .ttlBlueTable dt {
  width: 200px;
}
@media screen and (max-width: 1024px) {
  #about_simotecHeader .simotecGroup .ttlBlueTable dt {
    width: 100%;
  }
}

@media screen and (max-width: 1024px) {
  #about_simotecContents .message {
    margin-top: 20px;
  }
}
#about_simotecContents .message .name {
  margin-top: 30px;
  text-align: right;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .message .name {
    margin-top: 20px;
  }
}
#about_simotecContents .message .name span {
  margin: 5px 0 0 15px;
  font-size: 24px;
  display: inline-block;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .offices {
    margin-top: 20px;
  }
}
#about_simotecContents .offices section {
  margin-bottom: 90px;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .offices section {
    margin-bottom: 60px;
  }
}
#about_simotecContents .offices .cont {
  padding: 0 40px;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .offices .cont {
    padding: 0;
  }
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .offices .adr {
    padding: 0 15px;
  }
}
#about_simotecContents .offices .adr span {
  margin-right: 15px;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .offices .adr span {
    margin-right: 0;
    display: block;
  }
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .offices ul {
    padding: 0 15px;
    flex-direction: column;
  }
}
#about_simotecContents .offices ul li:first-child {
  margin-right: 15px;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .offices ul li:first-child {
    margin-right: 0;
  }
}
#about_simotecContents .offices ul a:hover {
  text-decoration: underline;
}
#about_simotecContents .offices .gmap {
  margin-top: 20px;
}
#about_simotecContents .offices iframe {
  width: 100%;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .offices iframe {
    height: 165px;
  }
}
#about_simotecContents .offices .group dl,
#about_simotecContents .offices .overseasBase dl {
  padding: 30px 0;
  border-top: 1px solid #ccc;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .offices .group dl,
#about_simotecContents .offices .overseasBase dl {
    border: none;
    flex-direction: column;
    padding: 0 0 40px 0;
  }
  #about_simotecContents .offices .group dl:last-child,
#about_simotecContents .offices .overseasBase dl:last-child {
    padding: 0;
  }
}
#about_simotecContents .offices .group dl:last-child,
#about_simotecContents .offices .overseasBase dl:last-child {
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .offices .group dl:last-child,
#about_simotecContents .offices .overseasBase dl:last-child {
    border: none;
  }
}
#about_simotecContents .offices .group dt,
#about_simotecContents .offices .overseasBase dt {
  width: 210px;
  font-weight: 700;
  color: #37357d;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .offices .group dt,
#about_simotecContents .offices .overseasBase dt {
    width: 100%;
    text-align: center;
    background: #ebeaf2;
    padding: 20px 0;
    margin-bottom: 20px;
  }
}
#about_simotecContents .offices .group dt span,
#about_simotecContents .offices .overseasBase dt span {
  display: block;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .offices .group dt span,
#about_simotecContents .offices .overseasBase dt span {
    display: inline-block;
    margin-left: 15px;
  }
}
#about_simotecContents .offices .group dd,
#about_simotecContents .offices .overseasBase dd {
  flex: 1;
}
#about_simotecContents .offices .group .gmap,
#about_simotecContents .offices .overseasBase .gmap {
  max-width: 600px;
}
#about_simotecContents .offices .group iframe,
#about_simotecContents .offices .overseasBase iframe {
  height: 295px;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .offices .group iframe,
#about_simotecContents .offices .overseasBase iframe {
    height: 165px;
  }
}
#about_simotecContents .csr section {
  margin-top: 60px;
}
#about_simotecContents .csr .txFlex {
  padding: 40px;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .csr .txFlex {
    padding: 0;
    margin-top: 40px;
    flex-direction: column;
  }
}
#about_simotecContents .csr .txFlex .ttl {
  font-size: 24px;
  width: 350px;
  background: #ebeaf2;
  justify-content: center;
  align-items: center;
  position: relative;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .csr .txFlex .ttl {
    background: #ebeaf2;
    padding: 60px 0;
    width: 100%;
  }
}
#about_simotecContents .csr .txFlex .ttl::before {
  content: "";
  width: 40px;
  height: 2px;
  background: #37357d;
  position: absolute;
  top: calc(50% + 35px);
  left: calc(50% - 20px);
}
#about_simotecContents .csr .txFlex .cont {
  padding: 50px;
  flex: 1;
  background: #f5f5f8;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .csr .txFlex .cont {
    padding: 30px;
  }
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .csr .medium {
    line-height: 1.2;
  }
}
#about_simotecContents .csr .rule dt {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  color: #37357d;
  margin: 20px 0;
}
#about_simotecContents .csr .csr01_02 img {
  width: 100%;
  max-width: 900px;
  margin: 60px auto 90px;
  height: auto;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .csr .csr01_02 img {
    max-width: 390px;
    margin: 40px auto;
  }
}
#about_simotecContents .csr .csr02_intro .intro {
  font-size: 19px;
  font-weight: bold;
  color: #37357d;
  text-align: center;
  padding: 70px 20px;
  background: url(../img/csr02.jpg) no-repeat center;
  background-size: cover;
}
#about_simotecContents .csr .graph {
  margin-top: 40px;
}
#about_simotecContents .csr .graph dl {
  border-top: 1px solid #ddd;
  border-right: 1px solid #ddd;
  border-left: 1px solid #ddd;
  align-items: center;
  position: relative;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .csr .graph dl {
    flex-direction: column;
    border: none;
  }
}
#about_simotecContents .csr .graph dl:last-child {
  border-bottom: 1px solid #ddd;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .csr .graph dl:last-child {
    border-bottom: none;
  }
}
#about_simotecContents .csr .graph dl::before {
  content: "";
  width: 180px;
  height: 100%;
  background: #ebeaf2;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .csr .graph dl::before {
    display: none;
  }
}
#about_simotecContents .csr .graph dt {
  position: relative;
  padding: 20px 0;
  width: 180px;
  color: #37357d;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .csr .graph dt {
    width: 100%;
    background: #ebeaf2;
  }
}
#about_simotecContents .csr .graph dd {
  padding: 20px;
  flex: 1;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .csr .csr02_03 .flex {
    flex-direction: column;
  }
}
#about_simotecContents .csr .csr02_03 dl {
  flex: 1;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  border-left: 1px solid #ddd;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .csr .csr02_03 dl {
    flex-direction: column;
    border: none;
  }
}
#about_simotecContents .csr .csr02_03 dl:last-child {
  border-right: 1px solid #ddd;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .csr .csr02_03 dl:last-child {
    border: none;
  }
}
#about_simotecContents .csr .csr02_03 dt {
  background: #ebeaf2;
  color: #37357d;
  font-weight: bold;
  text-align: center;
  padding: 20px 0;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .csr .csr02_03 dt {
    background: #ebeaf2;
  }
}
#about_simotecContents .csr .csr02_03 dd {
  padding: 20px 30px;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .csr .csr02_03 dd {
    padding: 20px;
  }
}
#about_simotecContents .csr .csr02_04 .scroll {
  margin-top: 40px;
}
#about_simotecContents .csr .csr02_04 th {
  font-size: 14px;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .csr .csr02_04 tr:first-child th:last-child {
    width: 540px;
  }
}
#about_simotecContents .iso section {
  margin-top: 60px;
}
#about_simotecContents .iso .media {
  align-items: center;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .iso .media {
    flex-direction: column;
  }
}
#about_simotecContents .iso .mediaTx {
  flex: 1;
  background: #f5f5f8;
  padding: 50px;
  margin-right: 30px;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .iso .mediaTx {
    margin-right: 0;
    padding: 20px;
    margin-bottom: 40px;
  }
}
#about_simotecContents .iso .mediaImg {
  max-width: 420px;
  width: 100%;
}
#about_simotecContents .iso .mediaImg img {
  height: auto;
}
#about_simotecContents .iso .rule dt {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  color: #37357d;
  margin: 20px 0;
}
#about_simotecContents .iso .txFlex {
  padding: 40px;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .iso .txFlex {
    padding: 0;
    margin-top: 40px;
    flex-direction: column;
  }
}
#about_simotecContents .iso .txFlex .ttl {
  font-size: 24px;
  width: 350px;
  background: #ebeaf2;
  justify-content: center;
  align-items: center;
  position: relative;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .iso .txFlex .ttl {
    background: #ebeaf2;
    padding: 60px 0;
    width: 100%;
  }
}
#about_simotecContents .iso .txFlex .ttl::before {
  content: "";
  width: 40px;
  height: 2px;
  background: #37357d;
  position: absolute;
  top: calc(50% + 35px);
  left: calc(50% - 20px);
}
#about_simotecContents .iso .txFlex .cont {
  padding: 50px;
  flex: 1;
  background: #f5f5f8;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .iso .txFlex .cont {
    padding: 30px;
  }
}
#about_simotecContents .iso .graph {
  margin-top: 40px;
}
#about_simotecContents .iso .graph dl {
  border-top: 1px solid #ddd;
  border-right: 1px solid #ddd;
  border-left: 1px solid #ddd;
  align-items: center;
  position: relative;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .iso .graph dl {
    flex-direction: column;
    border: none;
  }
}
#about_simotecContents .iso .graph dl:last-child {
  border-bottom: 1px solid #ddd;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .iso .graph dl:last-child {
    border-bottom: none;
  }
}
#about_simotecContents .iso .graph dl::before {
  content: "";
  width: 180px;
  height: 100%;
  background: #ebeaf2;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .iso .graph dl::before {
    display: none;
  }
}
#about_simotecContents .iso .graph dt {
  position: relative;
  padding: 20px 0;
  width: 180px;
  color: #37357d;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .iso .graph dt {
    width: 100%;
    background: #ebeaf2;
  }
}
#about_simotecContents .iso .graph dd {
  padding: 20px;
  flex: 1;
}
#about_simotecContents .privacy .inner > * {
  margin-bottom: 30px;
}
#about_simotecContents .privacy ol {
  counter-reset: number;
  padding-left: 1.25em;
}
@media screen and (max-width: 1024px) {
  #about_simotecContents .privacy ol {
    padding-left: 0;
  }
}
#about_simotecContents .privacy ol li {
  counter-increment: number;
  padding-left: 25px;
  position: relative;
}
#about_simotecContents .privacy ol li::before {
  content: counter(number) ".";
  position: absolute;
  left: 0;
  top: -3px;
  color: #37357d;
  font-weight: bold;
  font-size: 16px;
}
#about_simotecContents .privacy ol li + li {
  margin-top: 30px;
}

#strengthHeader {
  background-color: #f5f5f8;
  background-image: url(../img/strength_main.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

@media screen and (max-width: 1024px) {
  #strengthContents h3 {
    font-size: 30px;
    margin: -20px 0;
    line-height: 1.4;
  }
}
#strengthContents .three_technology section {
  margin-top: 60px;
}
#strengthContents img {
  margin-top: 30px;
  height: auto;
}
@media screen and (max-width: 1024px) {
  #strengthContents img {
    width: 100%;
    max-width: 360px;
  }
}
#strengthContents .wp-image-571 {
  margin: 30px auto 0;
}
#strengthContents .three_technology04 h5 {
  padding-left: 1em;
  font-size: 21px;
  font-weight: 700;
}
#strengthContents .global_network section {
  margin-top: 60px;
}
#strengthContents .global_network h5 {
  margin-top: 40px;
}
#strengthContents .global_network h6 {
  font-size: 20px;
}
#strengthContents .global_network ul.flex {
  margin-bottom: 40px;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  #strengthContents .global_network ul.flex {
    flex-wrap: wrap;
  }
}
#strengthContents .global_network ul.flex li {
  width: calc(25% - 20px);
}
@media screen and (max-width: 768px) {
  #strengthContents .global_network ul.flex li {
    width: calc(50% - 8px);
  }
}
#strengthContents .global_network .blueBtn {
  background: #0a4a90 url(../img/blank_blue.svg) no-repeat right 12px bottom 12px;
  background-size: 22px;
  color: #fff;
  display: block;
  font-size: 18px;
  text-align: center;
  max-width: 315px;
  margin: 60px auto 100px;
  width: 100%;
  line-height: 1.4;
  padding: 20px 0;
  font-weight: 799;
}
#strengthContents .global_network .blueBtn:hover {
  opacity: 0.7;
}
#strengthContents .design_capacity section {
  margin-top: 60px;
}
#strengthContents .design_capacity .underlineTitle {
  margin: 40px 0 0;
}
#strengthContents .design_capacity h6 {
  font-size: 20px;
}
#strengthContents .design_capacity ul.flex {
  margin-bottom: 40px;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  #strengthContents .design_capacity ul.flex {
    flex-wrap: wrap;
  }
}
#strengthContents .design_capacity ul.flex li {
  width: calc(25% - 20px);
}
@media screen and (max-width: 768px) {
  #strengthContents .design_capacity ul.flex li {
    width: calc(50% - 8px);
  }
}
#strengthContents .design_capacity .design_capacity05 ul.flex {
  flex-wrap: wrap;
  margin-bottom: 100px;
}
#strengthContents .design_capacity .design_capacity05 ul.flex li {
  width: calc(33% - 20px);
}
@media screen and (max-width: 768px) {
  #strengthContents .design_capacity .design_capacity05 ul.flex li {
    width: calc(50% - 8px);
  }
}
#strengthContents .technical_capabilities section {
  margin-top: 60px;
}
#strengthContents .technical_capabilities h5 {
  margin-top: 40px;
}
#strengthContents .technical_capabilities ul {
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  #strengthContents .technical_capabilities ul {
    flex-direction: column;
    align-items: center;
  }
}
#strengthContents .technical_capabilities li {
  width: calc(50% - 15px);
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  #strengthContents .technical_capabilities li {
    width: 100%;
    max-width: 360px;
  }
}
#strengthContents .technical_capabilities header {
  justify-content: space-between;
  border-bottom: 2px solid #ccc;
  padding-bottom: 25px;
  min-height: 120px;
}
@media screen and (max-width: 768px) {
  #strengthContents .technical_capabilities header {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 400px) {
  #strengthContents .technical_capabilities header {
    flex-direction: column;
    align-items: center;
  }
  #strengthContents .technical_capabilities header .tx {
    width: 100%;
  }
  #strengthContents .technical_capabilities header .icon {
    margin-top: 10px;
  }
}
#strengthContents .technical_capabilities header * {
  font-size: 14px;
}
#strengthContents .technical_capabilities header img {
  margin-top: 0;
}
#strengthContents .technical_capabilities .year {
  width: 80px;
  padding: 2px 0;
  text-align: center;
  color: #37357d;
  border: 2px solid rgba(55, 53, 125, 0.5);
  font-weight: 700;
}
#strengthContents .technical_capabilities h6 {
  font-weight: 700;
  margin-top: 8px;
}
#strengthContents .technical_capabilities .wp-image-943 {
  width: 179px;
}
#strengthContents .technical_capabilities .wp-image-944 {
  width: 290px;
}
#strengthContents .technical_capabilities .wp-image-945 {
  width: 83px;
}
#strengthContents .technical_capabilities .wp-image-946 {
  width: 290px;
}
#strengthContents .technical_capabilities .wp-image-947 {
  width: 74px;
}
#strengthContents .technical_capabilities .wp-image-948 {
  width: 290px;
}
#strengthContents .technical_capabilities .wp-image-1139 {
  width: 80px;
}
#strengthContents .ttlAndImg {
  position: relative;
}
@media screen and (max-width: 1024px) {
  #strengthContents .ttlAndImg {
    margin-top: 60px;
    display: flex;
    align-items: flex-start;
  }
}
@media screen and (max-width: 1024px) {
  #strengthContents .ttlAndImg h4 {
    margin-right: 10px;
  }
}
#strengthContents .ttlAndImg ul {
  flex: 1;
  position: absolute;
  left: 380px;
  top: -12px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .ttlAndImg ul {
    position: relative;
    top: auto;
    left: auto;
    margin-top: -28px;
  }
}
#strengthContents .ttlAndImg li {
  margin-right: 8px;
}
#strengthContents .ttlAndImg img {
  margin: 0 auto 8px;
  width: 50px;
}
#strengthContents .ttlAndImg span {
  color: #37357d;
  font-size: 10px;
  display: block;
  text-align: center;
  letter-spacing: 0;
}
#strengthContents .bigDotList {
  margin-top: 15px;
}
#strengthContents .bigDotList li {
  padding-left: 20px;
  position: relative;
}
#strengthContents .bigDotList li::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 100px;
  background: #37357d;
  position: absolute;
  top: 7px;
  left: 2px;
}
#strengthContents .rectangularBorderTtl {
  display: inline-block;
  padding: 2px 15px;
  border: 1px solid #37357d;
  color: #37357d;
  font-weight: 700;
  font-size: 20px;
}
#strengthContents .mechatronics h6 {
  font-size: 20px;
  color: #37357d;
}
#strengthContents .mechatronics .underlineTitle {
  margin-bottom: 1em;
}
#strengthContents .mechatronics01 > section + section {
  margin-top: 60px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .mechatronics01 > section + section {
    margin-top: 40px;
  }
}
@media screen and (max-width: 1024px) {
  #strengthContents .mechatronics03 ul {
    flex-direction: column;
  }
}
#strengthContents .mechatronics03 li {
  flex: 1;
}
@media screen and (max-width: 1024px) {
  #strengthContents .mechatronics03 li {
    flex: initial;
    width: 100%;
    max-width: 360px;
  }
  #strengthContents .mechatronics03 li + li {
    margin-top: 20px;
  }
}
#strengthContents .mechatronics03 dt {
  color: #37357d;
  font-size: 20px;
}
#strengthContents .mechatronics03 dt span {
  background: #37357d;
  border-radius: 100px;
  color: #fff;
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-right: 10px;
  font-size: 16px;
  line-height: 24px;
  padding-left: 7px;
}
#strengthContents .mechatronics03 dd {
  padding-left: 34px;
}
#strengthContents .mechatronics04 section + section {
  margin-top: 15px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .mechatronics04 .media {
    flex-direction: column;
  }
}
#strengthContents .mechatronics04 .memo {
  font-size: 12px;
  margin-top: 20px;
}
#strengthContents .mechatronics04 .mediaImg {
  width: 336px;
}
#strengthContents .mechatronics05 section + section {
  margin-top: 15px;
}
#strengthContents .mechatronics05 ul.flex {
  justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  #strengthContents .mechatronics05 ul.flex {
    flex-direction: column;
  }
}
#strengthContents .mechatronics05 ul.flex li {
  width: calc(100% / 3 - 25px);
}
@media screen and (max-width: 1024px) {
  #strengthContents .mechatronics05 ul.flex li {
    width: 100%;
    max-width: 360px;
  }
}
#strengthContents .mechatronics05 ul.flex span {
  font-size: 12px;
  color: #707070;
  display: block;
  margin-top: 10px;
}
#strengthContents .mechatronics06 section {
  margin-top: 15px;
}
#strengthContents .mechatronics06 .bigDotList {
  margin-top: 0;
}
#strengthContents .mechatronics06 ul.flex {
  margin-left: -20px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .mechatronics06 ul.flex {
    flex-direction: column;
    margin-left: 0;
  }
}
#strengthContents .mechatronics06 ul.flex li {
  width: calc(100% / 3);
  padding: 0 20px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .mechatronics06 ul.flex li {
    width: 100%;
    max-width: 360px;
    padding: 0;
  }
}
#strengthContents .mechatronics07 {
  margin: 120px 0;
}
#strengthContents .mechatronics07 > section + section {
  margin-top: 60px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .mechatronics07 > section + section {
    margin-top: 40px;
  }
}
#strengthContents .mechatronics09 section + section {
  margin-top: 15px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .mechatronics09 section + section {
    margin-top: 30px;
  }
}
#strengthContents .mechatronics09 .media {
  align-items: flex-start;
  margin-top: 15px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .mechatronics09 .media {
    flex-direction: column;
    align-items: center;
  }
}
#strengthContents .mechatronics09 .mediaImg {
  width: 228px;
}
#strengthContents .mechatronics09 .mediaImg img {
  margin-top: 0;
}
@media screen and (max-width: 1024px) {
  #strengthContents .mechatronics09 .mediaImg img {
    margin-bottom: 30px;
  }
}
#strengthContents .mechatronics09 .mediaTx {
  max-width: 430px;
  margin-left: 25px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .mechatronics09 .mediaTx {
    margin-left: 0;
  }
}
#strengthContents .mechatronics09 .mediaTx dl {
  flex: 1;
}
#strengthContents .mechatronics09 .mediaTx dl:first-child {
  margin-right: 2px;
}
#strengthContents .mechatronics09 .mediaTx dt {
  color: #37357d;
  background: #ebeaf2;
  text-align: center;
  padding: 5px 0;
  margin-bottom: 2px;
}
#strengthContents .mechatronics09 .mediaTx li {
  text-align: center;
  padding: 8px 0;
}
#strengthContents .mechatronics09 .mediaTx li:nth-child(odd) {
  background: #fafafc;
}
#strengthContents .mechatronics09 .memo {
  color: #333333;
  font-size: 12px;
  margin-top: 10px;
}
#strengthContents .mechatronics10 section + section {
  margin-top: 15px;
}
#strengthContents .mechatronics10 img {
  max-width: 644px;
}
#strengthContents .mechatronics10 span {
  display: block;
  font-size: 12px;
  color: #707070;
  margin-top: 15px;
}
#strengthContents .mechatronics11 > section + section {
  margin-top: 60px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .mechatronics11 > section + section {
    margin-top: 40px;
  }
}
#strengthContents .mechatronics13 > section + section {
  margin-top: 15px;
}
#strengthContents .mechatronics13 .bigDotList {
  margin-top: 0;
}
#strengthContents .mechatronics13 ul.flex {
  margin: 0 0 120px -20px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .mechatronics13 ul.flex {
    flex-direction: column;
    margin-left: 0;
  }
}
#strengthContents .mechatronics13 ul.flex li {
  width: calc(100% / 3);
  padding: 0 20px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .mechatronics13 ul.flex li {
    width: 100%;
    max-width: 360px;
    padding: 0;
  }
}
#strengthContents .magnet h6 {
  font-size: 20px;
  color: #37357d;
}
#strengthContents .magnet .underlineTitle {
  margin-bottom: 1em;
}
#strengthContents .magnet .mediaImg img {
  margin-top: 0;
}
#strengthContents .magnet .blueBtn {
  background: #0a4a90 url(../img/blank_blue.svg) no-repeat right 12px bottom 12px;
  background-size: 22px;
  color: #fff;
  display: block;
  font-size: 18px;
  text-align: center;
  max-width: 315px;
  margin: 30px auto 100px;
  width: 100%;
  line-height: 1.4;
  padding: 20px 0;
  font-weight: 799;
}
#strengthContents .magnet .blueBtn:hover {
  opacity: 0.7;
}
#strengthContents .magnet01 section + section {
  margin-top: 60px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .magnet02 .media {
    flex-direction: column;
  }
}
#strengthContents .magnet02 .mediaImg {
  max-width: 335px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .magnet02 .mediaImg {
    margin-top: 20px;
  }
}
#strengthContents .magnet02 .wp-image-1172 {
  margin-top: 40px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .magnet02 .wp-image-1172 {
    max-width: none;
    width: 800px;
  }
}
@media screen and (max-width: 1024px) {
  #strengthContents .magnet04 img {
    max-width: none;
    width: 850px;
  }
}
#strengthContents .magnet05 section + section {
  margin-top: 60px;
}
#strengthContents .magnet05 .ttlAndImg ul {
  left: 535px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .magnet05 .ttlAndImg ul {
    left: auto;
  }
}
@media screen and (max-width: 1024px) {
  #strengthContents .magnet06 .media {
    flex-direction: column;
  }
}
#strengthContents .magnet06 .mediaImg {
  max-width: 335px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .magnet06 .mediaImg {
    margin-top: 20px;
  }
}
@media screen and (max-width: 1024px) {
  #strengthContents .magnet07 .media {
    flex-direction: column;
  }
}
#strengthContents .magnet07 .mediaImg {
  max-width: 446px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .magnet07 .mediaImg {
    margin-top: 20px;
  }
}
#strengthContents .magnet09 > section {
  margin-top: 30px;
}
#strengthContents .magnet09 .bigDotList {
  margin-top: 0;
}
@media screen and (max-width: 1024px) {
  #strengthContents .magnet10 .media {
    flex-direction: column;
  }
}
#strengthContents .magnet10 .mediaImg {
  max-width: 446px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .magnet10 .mediaImg {
    margin-top: 20px;
  }
}
@media screen and (max-width: 1024px) {
  #strengthContents .magnet11 img {
    max-width: none;
    width: 500px;
  }
}
#strengthContents .magnet13 {
  margin-top: 60px;
}
#strengthContents .magnet13 section + section {
  margin-top: 60px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .magnet14 .media {
    flex-direction: column;
  }
}
#strengthContents .magnet14 .mediaImg {
  max-width: 335px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .magnet14 .mediaImg {
    margin-top: 20px;
  }
}
#strengthContents .magnet16 {
  margin-bottom: 120px;
}
#strengthContents .thermal h6 {
  font-size: 20px;
  color: #37357d;
}
#strengthContents .thermal .rectangularBorderTtl {
  width: 100%;
  max-width: 270px;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  #strengthContents .thermal .rectangularBorderTtl {
    max-width: none;
  }
}
#strengthContents .thermal .underlineTitle {
  margin-bottom: 1em;
}
#strengthContents .thermal .mediaImg img {
  margin-top: 0;
}
#strengthContents .thermal ol {
  margin: 20px 0;
}
#strengthContents .thermal ol li {
  padding-left: 34px;
  text-indent: -34px;
}
#strengthContents .thermal ol li + li {
  margin-top: 10px;
}
#strengthContents .thermal ol span {
  text-indent: 0;
  display: inline-block;
  font-size: 16px;
  width: 24px;
  height: 24px;
  border-radius: 24px;
  background: #37357d;
  color: #fff;
  line-height: 24px;
  padding-left: 6px;
  margin-right: 10px;
}
#strengthContents .thermal00 {
  margin-bottom: 100px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .thermal00 {
    margin-top: 60px;
  }
  #strengthContents .thermal00 img {
    width: 450px;
    max-width: none;
  }
}
#strengthContents .thermal01 > section + section {
  margin-top: 60px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .thermal01 > section + section {
    margin-top: 40px;
  }
}
#strengthContents .thermal03 img,
#strengthContents .thermal11 img {
  max-width: 538px;
  margin-bottom: 30px;
}
#strengthContents .thermal05 > section + section,
#strengthContents .thermal13 > section + section {
  margin-top: 80px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .thermal05 > section + section,
#strengthContents .thermal13 > section + section {
    margin-top: 50px;
  }
}
@media screen and (max-width: 1024px) {
  #strengthContents .thermal05 .media,
#strengthContents .thermal13 .media {
    flex-direction: column;
  }
}
#strengthContents .thermal05 .media section,
#strengthContents .thermal13 .media section {
  margin-top: 20px;
}
#strengthContents .thermal05 .media .bigDotList,
#strengthContents .thermal13 .media .bigDotList {
  margin-top: 0;
}
#strengthContents .thermal05 .mediaImg,
#strengthContents .thermal13 .mediaImg {
  max-width: 335px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .thermal05 .mediaImg,
#strengthContents .thermal13 .mediaImg {
    margin-top: 15px;
  }
}
#strengthContents .thermal09 {
  margin-top: 80px;
}
#strengthContents .thermal09 > section + section {
  margin-top: 60px;
}
@media screen and (max-width: 1024px) {
  #strengthContents .thermal09 > section + section {
    margin-top: 40px;
  }
}
#strengthContents .thermal13 {
  margin-bottom: 120px;
}

#flowHeader {
  background-color: #f5f5f8;
  background-image: url(../img/flow_main_min.jpg);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}
@media screen and (max-width: 1024px) {
  #flowHeader {
    background-image: url(../img/flow_main_min_sp.jpg);
  }
}

#flowContents .intro h3 {
  text-align: center;
  line-height: 1.4;
  margin-bottom: 1.5em;
}
@media screen and (max-width: 1024px) {
  #flowContents .intro h3 {
    text-align: left;
    font-size: 30px;
  }
}
#flowContents .intro ul {
  justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  #flowContents .intro ul {
    flex-direction: column;
    align-items: center;
  }
}
#flowContents .intro li {
  width: calc(100% / 3 - 30px);
  background: #ebeaf2;
  border-radius: 20px;
  padding: 20px 15px;
  flex-direction: column;
  align-items: center;
  display: flex;
}
@media screen and (max-width: 1024px) {
  #flowContents .intro li {
    width: 100%;
    max-width: 300px;
  }
  #flowContents .intro li + li {
    margin-top: 20px;
  }
}
#flowContents .intro img {
  width: auto;
  height: 64px;
}
#flowContents .intro h4 {
  margin-top: 1em;
  font-size: 22px;
  margin-top: 1em;
  line-height: 1.4;
  text-align: center;
}
#flowContents .flow .inner > section {
  margin-top: 60px;
}
#flowContents .flow h4 {
  font-size: 23px;
}
#flowContents .flow li {
  margin-top: 40px;
  background: #ebeaf2;
  padding: 20px 20px 20px 0;
}
#flowContents .flow .mediaImg {
  width: 94px;
  height: 94px;
  margin: -30px 42px 0;
  background: #37357d;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
}
@media screen and (max-width: 1024px) {
  #flowContents .flow .mediaImg {
    width: 74px;
    height: 74px;
    margin: -30px 10px 0;
  }
}
#flowContents .flow .mediaImg::before {
  content: "";
  width: 0;
  height: 0;
  border: 37px solid transparent;
  border-top: 20px solid #37357d;
  position: absolute;
  bottom: -57px;
  left: 0;
}
#flowContents .flow .mediaImg p {
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 10px;
}
#flowContents .flow .mediaImg p span {
  font-size: 24px;
}
#flowContents .flow .mediaImg img {
  width: auto;
  height: 30px;
}
#flowContents .flow .mediaTx {
  background: #fff;
  padding: 20px 30px;
}
@media screen and (max-width: 1024px) {
  #flowContents .flow .mediaTx {
    padding: 15px;
  }
}
#flowContents .flow .mediaTx a {
  display: inline-block;
  font-weight: 700;
  padding: 1em 3em;
  position: relative;
  margin-top: 15px;
}
@media screen and (max-width: 1024px) {
  #flowContents .flow .mediaTx a {
    padding: 1em 2em;
  }
}
#flowContents .flow .mediaTx a:hover {
  opacity: 0.7;
}
#flowContents .flow .mediaTx a::before {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  top: calc(50% - 4px);
  right: 15px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}
#flowContents .flow h5 {
  color: #37357d;
  font-weight: 700;
  margin-bottom: 1em;
  font-size: 18px;
  line-height: 1.2;
}

#examples_of_productsHeader,
#industryHeader,
#motionHeader,
#caseHeader {
  background-color: #f5f5f8;
  background-image: url(../img/search_main_min.jpg);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}
@media screen and (max-width: 1024px) {
  #examples_of_productsHeader,
#industryHeader,
#motionHeader,
#caseHeader {
    background-image: url(../img/search_main_min_sp.jpg);
  }
}

#examples_of_productsContents .intro p {
  color: #37357d;
  font-size: 16px;
}
@media screen and (max-width: 1024px) {
  #examples_of_productsContents .product .media {
    flex-direction: column;
    align-items: center;
  }
}
#examples_of_productsContents .product .mediaImg {
  width: 100%;
  max-width: 280px;
}
#examples_of_productsContents .product .mediaImg img {
  height: auto;
}
#examples_of_productsContents .product .mediaTx {
  flex: 1;
  margin-left: 40px;
}
@media screen and (max-width: 1024px) {
  #examples_of_productsContents .product .mediaTx {
    padding: 0 5%;
    margin: 30px 0 0;
  }
}
#examples_of_productsContents .product dt {
  margin: 30px 0 10px;
  font-size: 18px;
  color: #666;
  padding-top: 15px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  border-top: 1px solid #ddd;
  position: relative;
}
#examples_of_productsContents .product dt::before {
  content: "";
  width: 70px;
  height: 2px;
  background: #666;
  position: absolute;
  top: -1px;
  left: 0;
}
#examples_of_productsContents .product ul {
  flex-wrap: wrap;
}
#examples_of_productsContents .product li {
  margin-right: 40px;
}
#examples_of_productsContents .product a {
  color: #008de2;
}
#examples_of_productsContents .product a:hover {
  text-decoration: underline;
}

#industryContents .industry .media {
  padding: 20px;
}
@media screen and (max-width: 1024px) {
  #industryContents .industry .media {
    flex-direction: column;
    align-items: center;
    padding: 10px 10px 30px;
  }
}
#industryContents .industry .mediaImg {
  width: 100%;
  max-width: 175px;
}
@media screen and (max-width: 1024px) {
  #industryContents .industry .mediaImg {
    max-width: 280px;
  }
}
#industryContents .industry .mediaImg img {
  height: auto;
}
#industryContents .industry .mediaTx {
  flex: 1;
  margin-left: 40px;
}
@media screen and (max-width: 1024px) {
  #industryContents .industry .mediaTx {
    margin: 20px 0 0;
  }
}
#industryContents .industry dt {
  margin-bottom: 15px;
  font-size: 18px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
}
@media screen and (max-width: 1024px) {
  #industryContents .industry dt {
    text-align: center;
  }
}
#industryContents .industry ul {
  flex-wrap: wrap;
}
@media screen and (max-width: 1024px) {
  #industryContents .industry ul {
    flex-direction: column;
  }
}
#industryContents .industry li {
  margin-right: 50px;
}
@media screen and (max-width: 1024px) {
  #industryContents .industry li {
    margin-right: 0;
  }
}
#industryContents .industry a {
  color: #008de2;
}
#industryContents .industry a:hover {
  text-decoration: underline;
}
#industryContents .industry span {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #fff;
  font-size: 10px;
  letter-spacing: 0;
  padding: 2px 4px;
  border-radius: 3px;
  margin-left: 4px;
  position: relative;
  top: -2px;
  display: inline-block;
}
#industryContents .industry span.purple {
  background: #5250a8;
}
#industryContents .industry span.blue {
  background: #4f84be;
}
#industryContents .industry span.beige {
  background: #b58e87;
}

#motionContents .motion .media {
  padding: 20px;
}
@media screen and (max-width: 1024px) {
  #motionContents .motion .media {
    flex-direction: column;
    align-items: center;
    padding: 10px 10px 30px;
  }
}
#motionContents .motion .mediaImg {
  width: 100%;
  max-width: 175px;
}
@media screen and (max-width: 1024px) {
  #motionContents .motion .mediaImg {
    max-width: 280px;
  }
}
#motionContents .motion .mediaImg img {
  height: auto;
}
#motionContents .motion .mediaTx {
  flex: 1;
  margin-left: 40px;
}
@media screen and (max-width: 1024px) {
  #motionContents .motion .mediaTx {
    margin: 20px 0 0;
  }
}
#motionContents .motion dt {
  margin-bottom: 15px;
  font-size: 18px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
}
@media screen and (max-width: 1024px) {
  #motionContents .motion dt {
    text-align: center;
  }
}
#motionContents .motion ul {
  flex-wrap: wrap;
}
@media screen and (max-width: 1024px) {
  #motionContents .motion ul {
    flex-direction: column;
  }
}
#motionContents .motion li {
  margin-right: 50px;
}
@media screen and (max-width: 1024px) {
  #motionContents .motion li {
    margin-right: 0;
  }
}
#motionContents .motion a {
  color: #008de2;
}
#motionContents .motion a:hover {
  text-decoration: underline;
}

#caseContents .case .media {
  padding: 20px;
}
@media screen and (max-width: 1024px) {
  #caseContents .case .media {
    flex-direction: column;
    align-items: center;
    padding: 10px 10px 30px;
  }
}
#caseContents .case .mediaImg {
  width: 100%;
  max-width: 175px;
}
@media screen and (max-width: 1024px) {
  #caseContents .case .mediaImg {
    max-width: 280px;
  }
}
#caseContents .case .mediaImg img {
  height: auto;
}
#caseContents .case .mediaTx {
  flex: 1;
  margin-left: 40px;
}
@media screen and (max-width: 1024px) {
  #caseContents .case .mediaTx {
    margin: 20px 0 0;
  }
}
#caseContents .case dt {
  margin-bottom: 15px;
  font-size: 18px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
}
@media screen and (max-width: 1024px) {
  #caseContents .case dt {
    text-align: center;
  }
}
#caseContents .case ul {
  flex-wrap: wrap;
}
@media screen and (max-width: 1024px) {
  #caseContents .case ul {
    flex-direction: column;
  }
}
#caseContents .case li {
  margin-right: 50px;
}
@media screen and (max-width: 1024px) {
  #caseContents .case li {
    margin-right: 0;
  }
}
#caseContents .case a {
  color: #008de2;
}
#caseContents .case a:hover {
  text-decoration: underline;
}

#technicalHeader {
  background-color: #f5f5f8;
  background-image: url(../img/technical_main_min.jpg);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}
@media screen and (max-width: 1024px) {
  #technicalHeader {
    background-image: url(../img/technical_main_min_sp.jpg);
  }
  #technicalHeader .en {
    font-size: 10px;
    line-height: 1.5;
  }
  #technicalHeader .en::before {
    font-size: 16px;
    top: 7px;
  }
}

@media screen and (max-width: 1024px) {
  #technicalContents .inner {
    margin-top: 40px;
    flex-direction: column;
  }
}
@media screen and (max-width: 1024px) {
  #technicalContents .mainColumn {
    margin-right: 0;
    order: 2;
  }
}
#technicalContents .postList a {
  padding: 30px 0;
}
#technicalContents .postList a:hover {
  opacity: 0.7;
}
#technicalContents .postList li {
  border-bottom: 1px solid #ccc;
}
#technicalContents .postList li:first-child a {
  padding-top: 0;
}
#technicalContents .postList .mediaImg {
  width: 150px;
}
@media screen and (max-width: 1024px) {
  #technicalContents .postList .mediaImg {
    width: 100px;
  }
}
#technicalContents .postList .mediaTx {
  margin-left: 40px;
}
@media screen and (max-width: 1024px) {
  #technicalContents .postList .mediaTx {
    margin-left: 20px;
  }
}
#technicalContents .postList .cat {
  color: #37357d;
  background: #ebeaf2;
  display: inline-block;
  font-weight: 700;
  padding: 0 10px;
  border-radius: 5px;
  margin-bottom: 20px;
}
#technicalContents .postList h3 {
  color: #37357d;
  margin-bottom: 10px;
  font-size: 23px;
}
@media screen and (max-width: 1024px) {
  #technicalContents .postList h3 {
    font-size: 18px;
  }
}
#technicalContents .postList .more {
  display: inline-block;
  padding: 0.3em 3em;
  margin-top: 20px;
  position: relative;
}
@media screen and (max-width: 1024px) {
  #technicalContents .postList .more {
    padding: 0.5em 3em;
  }
}
#technicalContents .postList .more::before {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  right: 20px;
  top: calc(50% - 4px);
  transition: all 0.2s linear;
}
@media screen and (max-width: 1024px) {
  #technicalContents .sidebar {
    width: 100%;
    max-width: 390px;
    order: 1;
    margin: 0 auto 60px;
  }
}

.technicalEntryPost {
  padding-bottom: 40px;
  border-bottom: 1px solid #ccc;
  margin-bottom: 40px;
}
.technicalEntryPost .entryHeader {
  margin-bottom: 30px;
}
.technicalEntryPost .entryHeader .lgTx {
  font-weight: 700;
  color: #37357d;
  border-bottom: 2px solid #ccc;
  padding-bottom: 0.5em;
  margin-bottom: 0.5em;
}
.technicalEntryPost .entryHeader .cat {
  color: #37357d;
  background: #ebeaf2;
  display: inline-block;
  font-weight: 700;
  padding: 0 10px;
  border-radius: 5px;
  margin: 20px 0;
}
.technicalEntryPost .entry > section + section {
  margin-top: 90px;
}
.technicalEntryPost .entry section section {
  margin-top: 60px;
}
.technicalEntryPost .entry p + p {
  margin-top: 30px;
}
.technicalEntryPost .entry table {
  margin: 40px 0;
}
.technicalEntryPost .entry table .emphasis {
  font-weight: 700;
  border-bottom: 1px solid #000;
}
.technicalEntryPost .entry img {
  height: auto;
}
.technicalEntryPost .entry h5 {
  font-weight: 700;
  margin-bottom: 0.75em;
}
.postid-10 .technicalEntryPost th {
  width: 25%;
}
@media screen and (max-width: 1024px) {
  .postid-10 .technicalEntryPost th {
    width: 180px;
  }
}
.postid-10 .technicalEntryPost td:first-child {
  font-size: 18px;
}
.postid-10 .technicalEntryPost td:nth-child(2) {
  text-align: left;
}
.postid-10 .technicalEntryPost .wp-image-14 {
  width: 100%;
  max-width: 590px;
  margin: 0 auto;
}
.postid-10 .technicalEntryPost .wp-image-15 {
  width: 100%;
  max-width: 318px;
  margin: 0 auto;
}
.postid-10 .technicalEntryPost .wp-image-16 {
  width: 100%;
  max-width: 460px;
  margin: 0 auto;
}

.previousNext {
  margin-bottom: 60px;
}
.previousNext a {
  font-size: 18px;
  display: block;
  text-align: center;
  position: relative;
  padding: 20px 0;
}
.previousNext ul li {
  flex: 1;
  margin: 0 15px;
}
@media screen and (max-width: 1024px) {
  .previousNext ul li {
    margin: 0;
  }
}
.previousNext ul a {
  border: 2px solid #37357d;
  color: #37357d;
}
.previousNext ul a:hover {
  background: #37357d;
  color: #fff;
}
.previousNext ul a:hover::before {
  border-top-color: #fff;
  border-right-color: #fff;
}
@media screen and (max-width: 1024px) {
  .previousNext .previous a {
    border-top: 2px solid #37357d;
    border-right: 1px solid #37357d;
    border-bottom: 2px solid #37357d;
    border-left: 2px solid #37357d;
  }
}
.previousNext .previous a::before {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 2px solid #37357d;
  border-right: 2px solid #37357d;
  transform: rotate(-135deg);
  position: absolute;
  left: 15px;
  top: calc(50% - 4px);
  transition: all 0.2s linear;
}
@media screen and (max-width: 1024px) {
  .previousNext .next a {
    border-top: 2px solid #37357d;
    border-right: 2px solid #37357d;
    border-bottom: 2px solid #37357d;
    border-left: 1px solid #37357d;
  }
}
.previousNext .next a::before {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 2px solid #37357d;
  border-right: 2px solid #37357d;
  transform: rotate(45deg);
  position: absolute;
  right: 15px;
  top: calc(50% - 4px);
  transition: all 0.2s linear;
}
.previousNext .back {
  margin: 30px auto 0;
  width: 80%;
  max-width: 500px;
}
@media screen and (max-width: 1024px) {
  .previousNext .back {
    width: 100%;
    margin-top: 15px;
  }
}
.previousNext .back:hover {
  opacity: 0.7;
}
.previousNext .back::before {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(-135deg);
  position: absolute;
  left: 15px;
  top: calc(50% - 4px);
  transition: all 0.2s linear;
}

.postid-639 .technicalEntryPost .flex {
  align-items: flex-start;
}
@media screen and (max-width: 1024px) {
  .postid-639 .technicalEntryPost .flex {
    flex-direction: column;
    align-items: center;
  }
}
.postid-639 .technicalEntryPost .flex img {
  margin-right: 20px;
}
@media screen and (max-width: 1024px) {
  .postid-639 .technicalEntryPost .flex img {
    margin: 0 0 10px 0;
  }
}
.postid-639 .technicalEntryPost .flex p {
  margin-top: 0;
}

#productContents #newProduct {
  margin-top: 20px;
}
#productContents #newProduct h3 {
  font-size: 29px;
  text-align: center;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  margin-bottom: 1em;
}
#productContents #newProduct h4 {
  text-align: center;
  font-size: 16px;
  margin-top: 10px;
}
#productContents .slick-slide {
  margin: 0 5px;
}
@media screen and (max-width: 1024px) {
  #productContents .slick-slide img {
    width: 100%;
  }
}
#productContents .slick-slide a {
  display: block;
}
#productContents .slick-slide a:hover {
  opacity: 0.7;
}
#productContents .slick-arrow {
  z-index: 9999;
  width: 40px;
  height: 40px;
}
#productContents .slick-arrow::before {
  content: "";
  width: 14px;
  height: 14px;
  border-top: 2px solid #37357d;
  border-right: 2px solid #37357d;
  position: absolute;
  top: calc(50% - 25px);
}
#productContents .slick-prev {
  left: -16px;
}
#productContents .slick-prev::before {
  left: 16px;
  transform: rotate(-135deg);
}
#productContents .slick-next {
  right: -16px;
}
#productContents .slick-next::before {
  right: 16px;
  transform: rotate(45deg);
}
#productContents #products {
  padding: 0;
}
@media screen and (max-width: 1024px) {
  #productContents #products {
    padding: 30px 0;
  }
}
#productContents .catList section + section {
  margin-top: 60px;
}
#productContents .catList .parentCat ul {
  flex-wrap: wrap;
}
@media screen and (max-width: 1024px) {
  #productContents .catList .parentCat ul {
    flex-direction: column;
  }
}
#productContents .catList .parentCat ul li {
  margin-right: 40px;
}
@media screen and (max-width: 1024px) {
  #productContents .catList .parentCat ul li {
    margin-right: 0;
  }
}
#productContents .catList .parentCat ul li a {
  color: #008de2;
}
#productContents .catList .parentCat ul li a:hover {
  text-decoration: underline;
}
#productContents .catList .media {
  padding: 20px;
}
@media screen and (max-width: 1024px) {
  #productContents .catList .media {
    flex-direction: column;
    align-items: center;
  }
}
#productContents .catList .mediaImg {
  width: 175px;
}
@media screen and (max-width: 1024px) {
  #productContents .catList .mediaImg {
    width: 100%;
    max-width: 250px;
  }
}
#productContents .catList .mediaTx {
  flex: 1;
  margin-left: 40px;
}
@media screen and (max-width: 1024px) {
  #productContents .catList .mediaTx {
    margin-left: 0;
  }
}
#productContents .catList h4 a {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 0.75em;
  display: block;
}
@media screen and (max-width: 1024px) {
  #productContents .catList h4 a {
    line-height: 1.4;
    margin-top: 1em;
  }
}
#productContents .catList h4 a:hover {
  text-decoration: underline;
}

.productEntryPost .entryHeader h3 {
  font-size: 30px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #37357d;
  margin-bottom: 1em;
  padding-bottom: 0.5em;
  border-bottom: 2px solid #ddd;
}
@media screen and (max-width: 1024px) {
  .productEntryPost .entryHeader h3 {
    padding-bottom: 0.75em;
    line-height: 1.2;
  }
}
.productEntryPost .entry section {
  margin-bottom: 60px;
}
.productEntryPost .entry h1,
.productEntryPost .entry h2,
.productEntryPost .entry h3,
.productEntryPost .entry h4,
.productEntryPost .entry h5,
.productEntryPost .entry h6 {
  font-weight: 500;
  margin-bottom: 1em;
}
.productEntryPost .entry p:empty {
  display: none;
}
.productEntryPost .entry p + p {
  margin-top: 2em;
}
.productEntryPost .entry table {
  margin-bottom: 20px;
}
.productEntryPost .entry th,
.productEntryPost .entry td {
  color: #37357d;
}
.productEntryPost .entry th {
  font-weight: normal;
  background: #ebeaf2;
}
.productEntryPost .entry img {
  height: auto;
}
.productEntryPost .entry .intro .fz18 {
  margin-bottom: 1.75em;
}
@media screen and (max-width: 1024px) {
  .productEntryPost .entry .intro .fz18 {
    text-align: center;
  }
}
@media screen and (max-width: 1024px) {
  .productEntryPost .entry .intro .media {
    flex-direction: column;
    align-items: center;
  }
}
.productEntryPost .entry .intro .mediaImg {
  width: 290px;
}
.productEntryPost .entry .intro .mediaTx {
  flex: 1;
  margin-left: 60px;
}
@media screen and (max-width: 1024px) {
  .productEntryPost .entry .intro .mediaTx {
    margin: 60px 0 0;
  }
}
.productEntryPost .entry .intro li {
  padding-left: 1em;
  text-indent: -1em;
}
.productEntryPost .entry .btn {
  display: inline-block;
  font-size: 18px;
  font-weight: 70;
  padding: 5px 40px 5px 30px;
}
.productEntryPost .singleNav ul {
  flex-wrap: wrap;
}
@media screen and (max-width: 1024px) {
  .productEntryPost .singleNav ul {
    flex-direction: column;
  }
}
.productEntryPost .singleNav ul::after {
  content: "";
  width: calc(100% / 3);
  height: 0;
  display: block;
}
.productEntryPost .singleNav li {
  flex: 1;
  flex-basis: 30%;
  padding: 0 30px;
}
@media screen and (max-width: 1024px) {
  .productEntryPost .singleNav li {
    flex-basis: 100%;
    padding: 0 10px;
  }
}
.productEntryPost .singleNav a {
  color: #008de2;
}
.productEntryPost .singleNav a:hover {
  text-decoration: underline;
}
.productEntryPost .singleNav .current a {
  color: #333;
}
.productEntryPost .m03-01 img {
  width: 80%;
}
.productEntryPost .m03-01 img + img {
  margin-top: 10px;
}

@media screen and (max-width: 1024px) {
  .productTaxonomyDesc {
    width: 100%;
    max-width: 100%;
    min-width: 100%;
  }
}
.productTaxonomyDesc h3 {
  font-size: 37px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 1024px) {
  .productTaxonomyDesc h3 {
    width: 90%;
    margin: 0 auto 0.5em;
    line-height: 1.2;
    font-size: 34px;
  }
}
.productTaxonomyDesc .media {
  background: #ebeaf2;
  padding: 35px;
}
@media screen and (max-width: 1024px) {
  .productTaxonomyDesc .media {
    flex-direction: column;
    align-items: center;
    padding: 40px 5%;
  }
}
.productTaxonomyDesc .mediaImg {
  width: 100%;
  max-width: 300px;
}
@media screen and (max-width: 1024px) {
  .productTaxonomyDesc .mediaImg {
    max-width: 330px;
  }
}
.productTaxonomyDesc .mediaTx {
  flex: 1;
  margin-left: 35px;
}
@media screen and (max-width: 1024px) {
  .productTaxonomyDesc .mediaTx {
    margin: 30px 0 0;
  }
}
.productTaxonomyDesc .mediaTx p {
  font-size: 16px;
}

.termList section + section {
  margin-top: 60px;
}
@media screen and (max-width: 1024px) {
  .termList section {
    margin-top: 60px;
  }
}
.termList h4 {
  font-size: 24px;
  font-weight: 700;
  padding-left: 1em;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 1024px) {
  .termList h4 {
    line-height: 1.2;
    padding-left: 0;
    margin-bottom: 1em;
  }
}
.termList .media {
  border: 1px solid #ddd;
  padding: 60px;
}
@media screen and (max-width: 1024px) {
  .termList .media {
    padding: 0;
    flex-direction: column;
    align-items: center;
  }
}
.termList .mediaImg {
  width: 250px;
}
@media screen and (max-width: 1024px) {
  .termList .mediaImg {
    width: 100%;
    max-width: 330px;
    padding: 40px;
  }
}
.termList .mediaTx {
  flex: 1;
  margin-left: 60px;
}
@media screen and (max-width: 1024px) {
  .termList .mediaTx {
    padding: 0 5%;
    margin: 0;
  }
}
.termList dt {
  margin: 30px 0 10px;
  font-size: 18px;
  color: #666;
  padding-top: 15px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  border-top: 1px solid #ddd;
  position: relative;
}
.termList dt::before {
  content: "";
  width: 70px;
  height: 2px;
  background: #666;
  position: absolute;
  top: -1px;
  left: 0;
}
.termList ul {
  flex-wrap: wrap;
}
@media screen and (max-width: 1024px) {
  .termList ul {
    margin-bottom: 30px;
    flex-direction: column;
  }
}
.termList li {
  margin-right: 40px;
}
@media screen and (max-width: 1024px) {
  .termList li {
    margin-right: 0;
  }
}
.termList a {
  color: #008de2;
}
.termList a:hover {
  text-decoration: underline;
}

.productEntryList h4 {
  font-size: 24px;
  position: relative;
  border-top: 1px solid #ddd;
  font-weight: 700;
  padding-top: 20px;
}
.productEntryList h4::before {
  content: "";
  width: 140px;
  height: 2px;
  background: #37357d;
  position: absolute;
  top: -1px;
  left: 0;
}
.productEntryList ul {
  flex-wrap: wrap;
  margin: 0 -15px;
}
@media screen and (max-width: 1024px) {
  .productEntryList ul {
    margin: 0 -8px;
  }
}
.productEntryList li {
  width: 25%;
  padding: 0 15px;
  margin-top: 30px;
}
@media screen and (max-width: 1024px) {
  .productEntryList li {
    width: 50%;
    padding: 0 8px;
  }
}
.productEntryList a {
  height: 100%;
  justify-content: space-between;
}
.productEntryList a:hover {
  opacity: 0.7;
}
.productEntryList h5 {
  font-weight: 700;
  margin-top: 1.2em;
  font-size: 1em;
  line-height: 1.4;
}

.productNav ul {
  flex-wrap: wrap;
}

#searchHeader {
  background-color: #f5f5f8;
  background-image: url(../img/search_main_min.jpg);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}
@media screen and (max-width: 1024px) {
  #searchHeader {
    background-image: url(../img/search_main_min_sp.jpg);
  }
}

#searchContents .inner {
  margin-top: 25px;
}
#searchContents .searchResults {
  color: #37357d;
}
#searchContents .parentheses:first-child {
  position: relative;
  top: -5px;
  left: -3px;
}
#searchContents .bold {
  font-size: 18px;
  font-weight: 700;
}
#searchContents dl {
  padding: 40px 0;
  border-bottom: 2px solid #ddd;
}
@media screen and (max-width: 1024px) {
  #searchContents dl {
    padding: 30px 0;
  }
}
#searchContents dt a {
  font-size: 24px;
  color: #37357d;
}
#searchContents dt a:hover {
  text-decoration: underline;
}
#searchContents dd {
  line-height: 1.4;
  margin-top: 10px;
}

#newsHeader {
  background-color: #f5f5f8;
  background-image: url(../img/news_main_min.jpg);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}
@media screen and (max-width: 1024px) {
  #newsHeader {
    background-image: url(../img/news_main_min_sp.jpg);
  }
}

#newsContents .inner {
  margin-top: 0;
}
#newsContents .postList li {
  border-bottom: 1px solid #ccc;
}
#newsContents .postList a {
  padding: 30px 0 35px;
  display: block;
}
#newsContents .postList a:hover {
  opacity: 0.7;
}
#newsContents .postList time {
  color: #f8b427;
  font-weight: 700;
}
#newsContents .postList h3 {
  font-size: 24px;
  color: #37357d;
  margin: 0.25em 0 0.5em;
}
@media screen and (max-width: 1024px) {
  #newsContents .postList h3 {
    font-size: 18px;
  }
}
#newsContents .postList .more {
  display: inline-block;
  padding: 0.3em 3em;
  margin-top: 20px;
  position: relative;
}
@media screen and (max-width: 1024px) {
  #newsContents .postList .more {
    padding: 0.5em 3em;
    display: block;
    margin: 20px auto 0;
    width: 180px;
    text-align: center;
  }
}
#newsContents .postList .more::before {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  right: 20px;
  top: calc(50% - 4px);
  transition: all 0.2s linear;
}
#newsContents .newsEntryPost {
  margin-top: 30px;
}
#newsContents .newsEntryPost time {
  color: #f8b427;
  font-weight: 700;
}
#newsContents .newsEntryPost h3 {
  font-weight: 700;
  font-size: 30px;
  color: #37357d;
  margin: 0.2em 0 0.5em;
  padding-bottom: 0.75em;
  border-bottom: 2px solid #ccc;
}
@media screen and (max-width: 1024px) {
  #newsContents .newsEntryPost h3 {
    font-size: 18px;
  }
}
#newsContents .entry > section {
  margin-top: 40px;
}
#newsContents .entry h1,
#newsContents .entry h2,
#newsContents .entry h3,
#newsContents .entry h4,
#newsContents .entry h5,
#newsContents .entry h6 {
  font-size: 24px;
  color: #37357d;
  background: #ebeaf2;
  padding: 10px 20px;
  margin-bottom: 1em;
}
#newsContents .entry p + p {
  margin-top: 30px;
}
#newsContents .entry img {
  height: auto;
}
#newsContents .entry .alignleft {
  margin: 0 40px 20px 0;
}
@media screen and (max-width: 1024px) {
  #newsContents .entry .alignleft {
    float: none;
    margin: 0 auto;
  }
}
#newsContents .previousNext {
  margin-top: 80px;
  padding-top: 40px;
  border-top: 1px solid #ccc;
}

#recruitHeader {
  background-color: #f5f5f8;
  background-image: url(../img/recruit_main_min.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media screen and (max-width: 1024px) {
  #recruitHeader {
    background-color: #f5f5f8;
    background-image: url(../img/recruit_main_sp_min.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }
}

#recruitContents .newGraduate section {
  margin-top: 60px;
}
#recruitContents .newGraduate .intro {
  font-size: 24px;
  color: #333;
  font-weight: bold;
}
#recruitContents .newGraduate .jobDetail h5 {
  font-weight: bold;
  font-size: 18px;
  margin-bottom: 1em;
}
#recruitContents .requirements .rectangularBtn {
  width: 100%;
  max-width: 500px;
  margin: 60px auto;
  font-size: 18px;
  padding: 25px 0;
}
#recruitContents .interview .prof {
  align-items: center;
  padding: 60px;
  background: rgba(235, 234, 242, 0.5);
}
@media screen and (max-width: 1024px) {
  #recruitContents .interview .prof {
    padding: 40px 15px;
    position: relative;
    background: transparent;
    flex-direction: column;
    align-items: center;
  }
  #recruitContents .interview .prof::before {
    content: "";
    width: 100vw;
    height: 100%;
    background: rgba(235, 234, 242, 0.5);
    position: absolute;
    top: 0;
    left: -5vw;
  }
}
#recruitContents .interview .prof .mediaImg {
  width: 200px;
  position: relative;
}
#recruitContents .interview .prof .mediaTx {
  position: relative;
  margin-left: 60px;
}
@media screen and (max-width: 1024px) {
  #recruitContents .interview .prof .mediaTx {
    width: 100%;
    max-width: 450px;
    margin: 30px 0 0 0;
    flex: initial;
  }
}
#recruitContents .interview .prof dl * {
  font-size: 24px;
  color: #333;
  font-weight: bold;
}
#recruitContents .interview .prof .origin {
  margin-top: 15px;
  padding-top: 15px;
  position: relative;
  font-size: 18px;
  color: #333;
  border-top: 2px solid #ddd;
}
#recruitContents .interview .prof .origin::before {
  content: "";
  width: 70px;
  height: 2px;
  background: #666;
  position: absolute;
  top: -2px;
  left: 0;
}
#recruitContents .interview section {
  margin-top: 60px;
}
#recruitContents .interview h5 {
  font-size: 18px;
  margin-bottom: 1.5em;
}
#recruitContents .interview .advice {
  padding: 0 40px;
}
@media screen and (max-width: 1024px) {
  #recruitContents .interview .advice {
    padding: 0;
  }
}
#recruitContents .interview .advice .media {
  border: 1px solid #ddd;
  align-items: center;
  padding: 40px;
}
@media screen and (max-width: 1024px) {
  #recruitContents .interview .advice .media {
    flex-direction: column;
    align-items: center;
    padding: 30px 20px;
  }
}
#recruitContents .interview .advice h6 {
  text-align: center;
  font-size: 24px;
  position: relative;
  padding-bottom: 15px;
}
@media screen and (max-width: 1024px) {
  #recruitContents .interview .advice h6 {
    padding-bottom: 10px;
    margin-bottom: 40px;
  }
}
#recruitContents .interview .advice h6::before {
  content: "";
  width: 40px;
  height: 2px;
  background: #37357d;
  position: absolute;
  left: calc(50% - 20px);
  bottom: 0;
}
#recruitContents .interview .advice .mediaTx {
  margin-left: 60px;
}
@media screen and (max-width: 1024px) {
  #recruitContents .interview .advice .mediaTx {
    margin: 0;
    padding: 0 10px;
  }
}
#recruitContents .interview .interview02 {
  margin-top: 90px;
}

#new_productsHeader {
  background-image: url(../img/newproducts_main_min.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media screen and (max-width: 1024px) {
  #new_productsHeader {
    background-image: url(../img/newproducts_main_min_sp.jpg);
  }
}

#new_productsContents {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
  line-height: 0;
  position: relative;
}
@media screen and (max-width: 1024px) {
  #new_productsContents {
    max-width: 90%;
    min-width: 90%;
  }
}
#new_productsContents img {
  max-width: none;
  width: 100%;
}

.home .newProductsBanner {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  flex-direction: row;
}

@media screen and (max-width: 767px) {
  .home .newProductsBanner {
    flex-direction: column;
  }
}
.home .newProductsBanner a {
  max-width: 490px;
  width: 100%;
  background-color: #37357e;
  color: #fff;
  font-size: 22px;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .home .newProductsBanner a {
    font-size: 18px;
    margin-bottom: 0;
  }

  .home .newProductsBanner .catalogLink {
    margin-bottom: 60px;
  }
}

/*# sourceMappingURL=style.css.map */
