@charset "utf-8";

/*****  BASE  *****/

body {
  color: #000;
  font: 400 16px/1.6 "Noto Sans KR", "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", HiraKakuPro-W3, "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", verdana, sans-serif;
  min-width: 1080px;
  overflow: auto;
}

body.withnav {
  padding-bottom: 80px;
}

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

a {
  color: #443088;
  text-decoration: none;
}

a:hover {
  color: #00bfff;
  transition: .3s ease;
}


h2 {
  font-size: 28px;
  font-weight: 900;
  line-height: 1.4;
  margin-bottom: .6em ;
}

h3 {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: .6em ;
}

h4 {
  font-weight: 700;
  margin-bottom: .6em ;
}

table {
  margin-bottom: .5em;
  width: 100%;
}


/*****  COMMON  *****/

.mt0 {
  margin-top: 0 !important;
}

.mt1 {
  margin-top: 1em !important;
}

.mt2 {
  margin-top: 2em !important;
}

.mt3 {
  margin-top: 3em !important;
}

.mt4 {
  margin-top: 4em !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.mb1 {
  margin-bottom: 1em !important;
}

.mb15 {
  margin-bottom: 1.5em !important;
}

.mb2 {
  margin-bottom: 2em !important;
}

.mb3 {
  margin-bottom: 3em !important;
}

.mb4 {
  margin-bottom: 4em !important;
}

.lsm05 {
  letter-spacing: -.05em !important;
}

.lsm1 {
  letter-spacing: -.1em !important;
}

.tdu{
  text-decoration: underline;
}

.tac {
  text-align: center !important;
}

.meiryo {
  font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}

.regular {
  font-weight: 400 !important;
}

.bold {
  font-weight: 700 !important;
}

.tips {
  font-size: 14px;
  margin-top: .5em;
}

.indent {
  margin-left: 1em;
  text-indent: -1em;
}

.list-disc {
  list-style: disc;
  margin-left: 1.2em;
}

.btn-nv {
  background-color: #320F78;
  border-radius: 9px;
  color: #fff;
  font-weight: 700;
  display: inline-block;
  padding: 5px;
  text-align: center;
}

.btn-nv:hover {
  background-color: #5F687A;
  color: #fff;
}

.btn-small {
  max-width: 100%;
  width: 190px;
}

.btn-middle {
  max-width: 100%;
  width: 270px;
}

.btn-large {
  max-width: 100%;
  width: 400px;
}

.clearfix {
  zoom: 1;
}

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

.pc {
  display: block !important;
}

.sp {
  display: none !important;
}


/* Parallax */

.js-fadein,
.js-fadein-im {
  opacity : 0;
  transform : translate(0, 30px);
  transition : all 1.2s;
}

.js-scrollin {
  opacity : 1;
  transform : translate(0, 0);
}


#wrapper {
  position: relative;
  width: 100%;
}


/*****  HEADER  *****/

#header {
  margin: auto;
  width: 960px;
}

#h-wrapper {
  overflow: hidden;
}

#h-logo {
  float: left;
  padding: 22px 0;
}

#h-logo a:hover {
  opacity: .7;
}

.h-menubtn {
  display: none;
}

#h-lang {
  background-color: #320F78;
  float: right;
  font-family: "Noto Sans KR", sans-serif;
  padding: 7px 0;
}

#h-lang li {
  border-right: 1px solid #fff;
  float: left;
}

#h-lang li:last-child {
  border-right: 0;
}

#h-lang li a {
  background-color: #320F78;
  color: #fff;
  display: block;
  line-height: 1.1;
  padding: 0 10.5px;
}

#h-lang li a:hover {
  color: #00bfff;
}

#h-gnav {
  clear: both;
}

#h-gnav-list {
  display: flex;
}

#h-gnav-list li {
  border-right: 1px solid #fff;
  text-align: center;
  width: 25%;
}

#h-gnav-list li:last-child {
  border-right: 0;
}

#h-gnav-list li a {
  background-color: #000;
  color: #fff;
  display: block;
  font-weight: 700;
  padding: 5px;
}

#h-gnav-list li a:hover {
  background-color: #5F687A;
}

#h-breadcrumbs {
  color: #443088;
  font-size: 12px;
  padding: 22px 0;
}

#h-breadcrumbs a {
  color: #443088;
}

#h-breadcrumbs a:hover {
  color: #00bfff;
}

.h-breadcrumbs-item {
  display: inline-block;
}

.h-breadcrumbs-item::after {
  content: " ＞ ";
}

.h-breadcrumbs-list .h-breadcrumbs-item:last-child::after {
  content: "";
}


/*****  MAIN CONTENTS  *****/

#contents {
  clear: both;
  margin: auto;
  overflow: hidden;
  padding: 60px 0 40px;
  position: relative;
  width: 960px;
}

.section {
  clear: both;
  margin-bottom: 60px;
}

#contents .section:last-child {
  margin-bottom: 0;
}

.page-title {
  font-size: 36px;
  font-weight: 900;
  line-height: 1.3;
  margin-bottom: .5em;
}

.page-subtitle {
  font-size: 26px;
}

.page-title2 {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: .8em;
}

.page-title2 img {
  margin-right: .8em;
  vertical-align: -50%;
}



/*****  PAGE NAVI   *****/

#page-nav {
  background-color: rgba(255,255,255,.8);
  border-top: 1px solid #707070;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 98;
}

#page-nav-list {
  display: flex;
  justify-content: center;
}

#page-nav-list li {
  width: 120px;
}

#page-nav-list li a {
  color: #000;
  display: block;
  height: 100%;
  padding: 12px 0;
  text-align: center;
}

#page-nav-list li a:hover {
  background-color: #979BFD;
  color: #fff;
  transition: none;
}

#page-nav-list li a:hover path {
  fill: #fff;
}

.page-nav-icon1,
.page-nav-icon2 {
  display: flex;
  line-height: 1;
  margin: 0 auto 5px;
}

.page-nav-icon1 svg,
.page-nav-icon2 svg {
  height: auto;
  width: 100%;
}

.page-nav-icon1 {
  height: 30px;
  width: 25px;
}

.page-nav-icon2 {
  height: 17.2px;
  width: 30px;
}

.page-nav-text {
  display: block;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  margin: auto;
}


/*****  PAGETOP   *****/

#pagetop {
  position: fixed;
  bottom: 35px;
  right: 35px;
  z-index: 99;
}

#pagetop img {
  height: auto;
  width: 30px;
}


/*****  FOOTER  *****/

#footer {
  font-family: "Noto Sans KR", sans-serif;
  line-height: 1.8;
}

footer #footer2 {
  background: #443088;
  color: #fff;
  font-size: 12px;
}

footer #footerInr1 {
  width: 960px;
  margin: 0 auto;
  padding: 15px 0 5px;
}

footer #footerInr1 h1 {
  float: left;
}

#footerMenu {
  text-align: right;
}

#footerMenu ul {
  display: inline;
  padding-left: 5px;
  border-left: 1px solid #fff;
}

#footerMenu li {
  display: inline;
  padding-left: 5px;
  padding-right: 10px;
  border-right: 1px solid #fff;
}

#footerMenu li a {
  color: #fff;
  text-decoration: none;
}

#footerMenu li a:hover {
  color: #00bfff;
  text-decoration: none;
}

footer #copyright {
  text-align: center;
  padding-top: 15px;
}

footer #footerInr2 {
  width: 960px;
  margin: 0 auto;
  text-align: right;
  font-size: 12px;
}

footer #footerInr2 img {
  margin: 10px 5px;
  vertical-align: middle;
}


/*----------------------------------------------
    減速機シリーズ  .reducer
----------------------------------------------*/

#reducer-mainvisual {
  background-color: #081012;
  overflow: hidden;
}

#reducer-mv-inner {
  height: 480px;
  margin: auto;
  overflow: hidden;
  width: 960px;
}

#reducer-mainvisual .bx-wrapper {
  background-color: transparent;
  border: 0;
  box-shadow: none;
  margin-bottom: 0;
}

#reducer-mainvisual .bx-wrapper .bx-pager,
#reducer-mainvisual .bx-wrapper .bx-controls-auto {
  bottom: 20px;
}

#reducer-list {
  display: flex;
  justify-content: space-between;
}

.reducer-box {
  width: 470px;
}

.reducer-image {
  margin-bottom: 22px;
  position: relative;
  text-align: center;
}

.reducer-image a:hover {
  opacity: .7;
}

.reducer-icon {
  position: absolute;
  bottom: -10px;
  left: 0;
}

.reducer-title {
  font-size: 36px;
  line-height: 1;
}

.reducer-subtitle {
  font-size: 26px;
}

.reducer-text {
  font-size: 18px;
  margin-bottom: 2em;
}

.reducer-news {
  color: #253692;
  font-family: "Noto Sans KR", sans-serif;
  margin-top: 3em;
  width: 440px;
}

.reducer-news h3 {
  border-bottom: 1px solid #D3D3D3;
  font-size: 18px;
  font-weight: 400;
}

.reducer-news-item {
  font-size: 14px;
  margin-bottom: 8px;
}

.reducer-news-item a {
  color: #253692;
  display: flex;
  align-items: flex-start;
  line-height: 1.5;
}

.reducer-news-item a:hover {
  color: #00bfff;
}

.reducer-news-item span {
  display: block;
}

.reducer-news-date {
  width: 100px;
}

.reducer-news-category {
  color: #fff;
  text-align: center;
  width: 100px;
}

.reducer-news-title {
  margin-left: 34px;
  width: 206px;
}


/*----------------------------------------------
    サーボモータ用高精度減速機  .servomotorreducers
----------------------------------------------*/

.servomotorreducers #contents {
  padding: 0 0 60px;
}

.servomotorreducers .page-title {
  position: absolute;
  top: 0;
  left: 0;
}

.smr-intro-container {
  overflow: hidden;
  position: relative;
}

.smr-intro-title {
  font-size: 32px;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 0;
  position: absolute;
  bottom: 5px;
  left: 0;
}

.smr-intro-subtitle {
  font-size: 20px;
  font-weight: 700;
}

.smr-intro-figure {
  float: right;
}

.smr-intro-text {
  clear: both;
  margin-top: 25px;
}

.smr-feature-section {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.smr-feature-section-left {
  width: 320px;
}

.smr-type {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: .8em;
}

.smr-type img {
  margin-right: .8em;
  vertical-align: -50%;
}

.smr-tool-box {
  display: flex;
  justify-content: space-between;
}

.smr-tool-btn {
  font-family: "Noto Sans KR", sans-serif;
  margin-bottom: 15px;
  position: relative;
  width: 491px;
}

.smr-tool-btn a {
  background-color: #f7f7f7;
  border: 1px solid #c7c7c7;
  display: block;
}

.smr-tool-btn a:hover {
  border-color: #443088;
  opacity: .7;
}

.smr-tool-btn p {
  line-height: 1;
  position: absolute;
  top: 50%;
  left: 30px;
  text-shadow: 0 0 4px #fff,0 0 8px #fff;
  transform: translateY(-50%);
}

.smr-tool-btn-name {
  color: #443088;
  display: flex;
  align-items: center;
  font-size: 20px;
  font-weight: 700;
}

.smr-tool-btn-name::before {
  content: "";
  background: url(../images/servomotorreducers/icn_link-arrow.svg) no-repeat center left / contain;
  display: block;
  height: 14px;
  margin-right: 10px;
  width: 7px;
}

.smr-tool-btn-text {
  color: #222222;
  display: block;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.2;
  margin-top: 5px;
}

.smr-tool-desc {
  padding-top: 5px;
  width: 439px;
}

.smr-tool-desc-emp {
  font-size: 18px;
  font-weight: 700;
}

.smr-product-box {
  background-color: #F3F3F3;
  display: flex;
  justify-content: space-between;
  margin-bottom: 8px;
  padding: 30px 110px;
}

.smr-product-figure {
  order: 1;
  text-align: center;
  width: 380px;
}

.smr-product-cont {
  font-size: 14px;
  font-weight: 700;
  order: 0;
  width: 344px;
}

.smr-product-motor-watt {
  font-size: 22px;
  font-weight: 400;
}

.smr-product-name {
  border-bottom: 1px solid #707070;
  font-size: 48px;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 4px;
  padding-bottom: 8px;
}

.smr-product-type {
  font-size: 14px;
  font-weight: 700;
}

.smr-product-btnarea {
  display: flex;
  justify-content: space-between;
  margin-top: 8px;
}

.btn-smr-product {
  background-color: #020202;
  border: 1px solid #020202;
  color: #fff;
  display: block;
  font-size: 12px;
  max-width: 100%;
  padding: 2px 4px;
  text-align: center;
}

.btn-smr-product:hover {
  background-color: #FFF;
  color: #020202;
}

.smr-product-btn1 {
  width: 120px;
}

.smr-product-btn2 {
  width: 220px;
}

.smr-product-spec {
  margin-top: 30px;
}

.smr-product-spec-tabbox {
  background-color: #F3F3F3;
  border-radius: 10px 0 0 0;
  display: flex;
}

.smr-product-spec-tabbox.js-ag3-active {
  background-color: #ACACAC;
}

.smr-product-spec-tab {
  background-color: #ACACAC;
  border-radius: 10px 0 0 0;
  color: #fff;
  display: block;
  font-size: 20px;
  font-weight: 700;
  padding: 8px 32px;
  width: 50%;
}

.smr-product-spec-tab:hover {
  color: #fff;
}

.smr-product-spec-tab.js-tab-active {
  color: #000;
}

.tab-apg.js-tab-active {
  background-color: #F3F3F3;
}

.tab-ag3.js-tab-active {
  background-color: #DEDEDE;
}

#smr-product-spec-apg {
  background-color: #F3F3F3;
}

#smr-product-spec-ag3 {
  background-color: #DEDEDE;
}

.smr-product-spec-box {
  display: none;
  padding: 35px;
}

.smr-case-subsec {
  clear: both;
  margin-top: 30px;
  overflow: hidden;
}

.smr-case-subsec-desc {
  float: left;
  width: 274px;
}

.smr-case-space-container {
  display: flex;
  flex-wrap: wrap;
}

.smr-case-space-box {
  margin-bottom: 18px;
  position: relative;
  width: 320px;
}

.smr-case-space-image {
  position: relative;
  z-index: 2;
}

.smr-case-space-image:hover {
  opacity: 0;
  transition: .3s all;
}

.smr-case-space-image_on {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

.smr-case-space-box p {
  font-size: 14px;
  font-weight: 700;
  margin-top: 5px;
}

#smr-movie .smr-type img {
  vertical-align: middle;
}

.smr-movie-container {
  display: flex;
  justify-content: space-between;
}

.smr-movie-box {
  margin-bottom: 20px;
  width: 472px;
}

.smr-movie-caption {
  font-size: 20px;
  font-weight: 700;
  margin-top: 5px;
}


/*----------------------------------------------
    高剛性減速機（共通）  .rc
----------------------------------------------*/

.rc #page-nav-list li a {
  padding: 8px 0;
}


/*----------------------------------------------
    高剛性減速機 大口径中空タイプ  .rc-top
----------------------------------------------*/

.rc-top #contents {
  padding: 60px 0 120px;
}

#rc-mainvisual {
  background-color: #000;
  display: flex;
  line-height: 1;
  width: 100%;
}

.rc-mv-image {
  width: 24%;
}

.rc-mv-image img {
  height: auto;
  width: 100%;
}

.rc-mv-movie {
  width: 76%;
}

.rc-mv-movie video {
  height: auto;
  width: 100%;
}

.rc-top .page-title {
  line-height: 1.1;
  position: absolute;
  top: 60px;
  left: 0;
}

.rc-top h2 {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: .6em ;
}

.rc-intro-container {
  display: flex;
  justify-content: space-between;
}

.rc-intro-left {
  margin-top: 110px;
  width: 331px;
}

.rc-intro-right {
  position: relative;
}

.rc-intro-image {
  position: relative;
  z-index: 2;
}

.rc-intro-image:hover {
  opacity: 0;
  transition: .3s all;
}

.rc-intro-image_on {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

#rc-use h2 {
  margin-bottom: 1em;
}

.rc-use-container {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 60px;
}

.rc-use-box {
  margin-bottom: 20px;
  position: relative;
  width: 320px;
}

.rc-use-image {
  position: relative;
  z-index: 2;
}

.rc-use-image:hover {
  opacity: 0;
  transition: .3s all;
}

.rc-use-image_on {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
}

.rc-use-image img,
.rc-use-image_on img {
  height: 240px;
  width: auto;
}

.rc-use-box p {
  font-weight: 700;
  margin-top: 5px;
}

.rc-use-movie-btnarea {
  margin-top: 1.5em;
}

.rc-use-movie-btnarea .btn-nv {
  margin-bottom: 20px;
  margin-right: 32px;
}

.rc-possibility-container {
  display: flex;
  line-height: 0;
}

.rc-possibility-image {
  width: 37.5%;
}

.rc-possibility-image img {
  height: auto;
  max-height: 337.5px;
  width: 100%;
}

.rc-possibility-movie {
  width: 62.5%;
}

.rc-possibility-movie video {
  height: auto;
  width: 100%;
}


/*----------------------------------------------
    サンプル品 無償提供キャンペーン  .rc-campaign
----------------------------------------------*/

.rc-campaign #contents {
  padding: 10px 0 120px;
}

.rc-campaign .page-title2 img {
  vertical-align: -40%;
}

.rc-campaign-subsec {
  border-top: 1px solid #707070;
  margin-top: 30px;
  padding-top: 10px;
}

.rc-campaign-subsec h3 {
  font-size: 16px;
}

.rc-campaign-flow {
  display: table;
  font-size: 14px;
  width: 100%;
}

.rc-campaign-flow-row {
  display: table-row;
}

.rc-campaign-flow dt {
  border: 1px solid #443088;
  color: #443088;
  display: table-cell;
  padding: 8px;
  text-align: center;
  vertical-align: middle;
  width: 190px;
}

.rc-campaign-flow dd {
  display: table-cell;
  font-family: "Noto Sans KR", sans-serif;
  padding: 0 1em;
  vertical-align: middle;
}

.rc-campaign-flow-arrow {
  padding: 10px 0;
  text-align: center;
  width: 190px;
}


/*----------------------------------------------
    用途事例  .rc-case
----------------------------------------------*/

.rc-case #contents {
  padding: 10px 0 60px;
}

.rc-case-movie {
  margin-top: 2em;
}

.rc-case-movie video {
  height: auto;
  width: 100%;
}

.rc-case-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 15px;
}

.rc-case-image {
  width: 600px;
}

.rc-case-desc {
  font-size: 20px;
  font-weight: 700;
  width: 320px;
}

.rc-case-desc p {
  border-top: 1px solid #707070;
  padding-top: 5px;
}

.rc-case .rc-use-container {
  margin-bottom: 0;
}


/*----------------------------------------------
    お問い合わせ  .rc-contactus
----------------------------------------------*/

.rc-contactus #contents {
  padding: 10px 0 120px;
}

.section--divert {
  font-family: "Noto Sans KR", sans-serif;
  margin-bottom: 30px;
}

.section--divert h3 {
  border-left: 4px solid #443088;
  font-size: 20px;
  font-weight: normal;
  padding-left: 10px;
  margin-bottom: 20px;
}


/*----------------------------------------------
    サンプル品のお申込みフォーム  .rc-contactus2
----------------------------------------------*/

.rc-contactus2 #contents {
  padding: 10px 0 120px;
}


/*----------------------------------------------
    各種ダウンロード  .rc-download
----------------------------------------------*/

.rc-download #contents {
  padding: 10px 0 120px;
}

.rc-download-btnlist {
  display: flex;
  justify-content: space-between;
  margin: 2em 0;
}

.rc-download-btnlist .btn-nv {
  max-width: 100%;
  width: 180px;
}

#rc-download-size h3 {
  position: relative;
  z-index: 2;
}

.rc-download-size-table {
  margin: -2em 0 1em;
  position: relative;
  z-index: 1;
}

.rc-download-cad-table th {
  background-color: #707070;
  color: #fff;
  padding: 8px;
  text-align: center;
  vertical-align: middle;
}

.rc-download-cad-table td {
  font-size: 20px;
  padding: 10px;
  text-align: center;
  vertical-align: middle;
  width: 25%;
}

.rc-download-cad-table tr:nth-of-type(even) {
  background-color: #F2F2F2;
}

.rc-download-cad-table .btn-dl {
  background-color: #320F78;
  border: 1px solid #320F78;
  border-radius: 9px;
  color: #fff;
  font-size: 22px;
  font-weight: 700;
  display: block;
  padding: 3px;
  text-align: center;
}

.rc-download-cad-table .btn-dl:hover {
  background-color: #fff;
  color: #320F78;
}

.rc-download-cad-table .btn-dl::after {
  content: url(../images/common/icon/icn_download2_wh.svg);
  margin-left: .5em;
}

.rc-download-cad-table .btn-dl:hover::after {
  content: url(../images/common/icon/icn_download2.svg);
}

.rc-download-container {
  display: flex;
  justify-content: space-between;
}

#rc-download-catalog,
#rc-download-manual {
  width: 420px;
}

#rc-download-catalog p,
#rc-download-manual p {
  font-size: 14px;
}

.rc-download-catalog-image a:hover {
  opacity: .7;
  transition: .3s all;
}


/*----------------------------------------------
    よくある質問FAQ  .rc-faq
----------------------------------------------*/

.rc-faq #contents {
  padding: 10px 0 120px;
}

.rc-faq-btnlist {
  display: flex;
  justify-content: space-between;
  margin: 2em 0;
}

.rc-faq-btnlist .btn-nv {
  max-width: 100%;
  min-width: 180px;
}

.rc-faq-section {
  font-family: "Noto Sans KR", sans-serif;
}

.rc-faq-section h3 {
  border-bottom: 1px solid #707070;
  margin-bottom: 1em;
  padding-bottom: 5px;
}

.rc-faq-qa {
  margin-bottom: 2.5em;
}

.rc-faq-question {
  color: #443088;
  font-weight: 700;
  margin-bottom: .8em;
}

.rc-faq-answer {
  font-size: 14px;
}

.rc-faq-answer,
.rc-faq-question {
  line-height: 1.5;
  padding-left: 36px;
  position: relative;
}

.rc-faq-answer::before,
.rc-faq-question::before {
  display: block;
  font-family: "Noto Sans KR", "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", HiraKakuPro-W3, "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", verdana, sans-serif;
  font-size: 26px;
  font-weight: 700;
  position: absolute;
  top: -.5em;
}

.rc-faq-question::before {
  content: "Q.";
  left: 0;
}

.rc-faq-answer::before {
  content: "A.";
  left: 3px;
}

#rc-faq-contact {
  font-family: "Noto Sans KR", sans-serif;
}

#rc-faq-contact h4 {
  margin-left: 1em;
  text-indent: -1em;
}

#rc-faq-contact p {
  font-size: 14px;
  margin-left: 1em;
}


/*----------------------------------------------
    構造・特長  .rc-feature
----------------------------------------------*/

.rc-feature #contents {
  overflow: visible;
  padding: 10px 0 120px;
}

.rc-feature-structure-parts {
  height: 400px;
  margin: 1.5em auto;
  position: relative;
}

.structure-parts {
  position: absolute;
}

.parts-on {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
}

.structure-parts:hover .parts-off {
  opacity: 0;
}

.structure-parts:hover .parts-on {
  opacity: 1;
}

.parts01 {
  top: 97px;
  left: 0;
  z-index: 13;
}

.parts02 {
  position: absolute;
  top: 165px;
  left: 66px;
  z-index: 12;
}

.parts03 {
  top: 0;
  left: 105px;
  z-index: 11;
}

.parts04 {
  top: 74px;
  left: 236px;
  z-index: 5;
}

.parts05 {
  top: 102px;
  left: 286px;
  z-index: 9;
}

.parts06 {
  top: 0;
  left: 390px;
  z-index: 7;
}

.parts07 {
  top: 120px;
  left: 442px;
  z-index: 8;
}

.parts08 {
  top: 86px;
  left: 506px;
  z-index: 6;
}

.parts09 {
  top: 0;
  left: 570px;
  z-index: 5;
}

.parts10 {
  top: 29px;
  left: 678px;
  z-index: 4;
}

.parts11 {
  top: 17px;
  left: 758px;
  z-index: 3;
}

.parts12 {
  position: absolute;
  top: 9px;
  left: 842px;
  z-index: 2;
}

.parts13 {
  top: 33px;
  left: 867px;
  z-index: 1;
}

.parts13 img {
  max-height: inherit;
  max-width: inherit;
}


.rc-feature-container {
  display: flex;
  justify-content: space-between;
}

.rc-feature-left {
  width: 466px;
}

.rc-feature-right {
  width: 466px;
}

#rc-feature-diameter > h2,
#rc-feature-diameter > p {
  position: relative;
  z-index: 2;
}

.rc-feature-diameter-image {
  margin-top: -85px;
  position: relative;
  z-index: 1;
}

.rc-feature-diameter-container {
  display: flex;
  justify-content: space-between;
  margin: .5em auto;
  width: 720px;
}

.rc-feature-diameter-caption {
  font-weight: 900;
  line-height: 1.3;
}

.rc-feature-diameter-caption .caption-frame {
  font-size: 22px;
}

.rc-feature-diameter-caption .caption-num {
  font-size: 57px;
}

.rc-feature-diameter-caption .caption-size {
  color: #707070;
  font-size: 20px;
}


/*----------------------------------------------
    製品情報  .rc-products
----------------------------------------------*/

.rc-products #contents {
  padding: 10px 0 120px;
}

.rc-products-btnlist {
  display: flex;
  margin: 2em 0;
}

.rc-products-btnlist .btn-nv {
  margin-right: 5px;
  max-width: 100%;
  min-width: 184px;
  padding: 5px 20px;
}

.rc-products-model-table th,
.rc-products-model-table td {
  border: 1px solid #b9b9b9;
  font-family: "Noto Sans KR", sans-serif;
  font-size: 14px;
  padding: 6px;
  text-align: left;
  vertical-align: top;
}

.rc-products-model-table th {
  background-color: #eee;
}

.rc-products-flow-container {
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px;
}

.rc-products-flow-box {
  background-color: #C3C4C4;
  display: flex;
  font-size: 14px;
  padding: 0 10px 10px;
  width: 130px;
}

.flow-num {
  line-height: 1.1;
  padding-top: 5px;
  width: 30px;
}

.flow-num1 {
  font-size: 28px;
  font-weight: 900;
}

.flow-num2 {
  font-size: 20px;
  font-weight: 700;
}

.flow-text {
  padding-top: 10px;
  width: 100px;
}

.rc-products-container {
  display: flex;
  justify-content: space-between;
}

#rc-products-catalog,
#rc-products-contact {
  width: 420px;
}

.rc-products-catalog-image a:hover {
  opacity: .7;
  transition: .3s all;
}

.rc-products-contact-sec {
  font-family: "Noto Sans KR", sans-serif;
}

.rc-products-contact-sec h4 {
  font-size: 20px;
}

.rc-products-contact-link {
  font-size: 14px;
}



