@charset "UTF-8";
/* CSS Document */
/* CSS Document */
body {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  -webkit-text-size-adjust: 100%;
  /* iPhone用 */
  font-size: 18px;
  font-size: 1.8rem;
  height: 100%;
  width: 100%;
  padding-top: 0 !important;
  -webkit-font-smoothing: antialiased;
  color: #292929;
  letter-spacing: 0.025em;
  line-height: 1.6em; }

@media (max-width: 767px) {
  body {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4em; } }
html {
  height: 100%;
  font-size: 62.5%; }

@media screen and (min-width: 768px) and (max-width: 1024px) {
  html {
    font-size: 55%; } }
.pc_only {
  display: block; }

.sp_only {
  display: none !important; }

@media (max-width: 767px) {
  .pc_only {
    display: none; }

  .sp_only {
    display: block !important; } }
/* 共通
-----------------------------------------*/
#contents {
  position: relative; }

@media (min-width: 768px) {
  #contents {
    min-width: 1200px; } }
.inner {
  width: 1000px;
  margin: 0 auto;
  position: relative; }

.flex-box {
  width: 100%;
  -js-display: flex;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-justify-content: space-between;
  /* Safari */
  justify-content: space-between; }
  .flex-box .col-2 {
    width: 47%;
    display: block; }
  .flex-box .col-3 {
    width: 33.33333%;
    /* 未対応ブラウザ用フォールバック */
    width: -webkit-calc(100% / 3);
    width: calc(100% / 3);
    display: block; }

.page.top .bg-gray, .page.contact .bg-gray {
  background: #f7f7f7; }

.page .bg-border {
  border-color: #dcdcdc transparent #dcdcdc transparent;
  border-style: solid;
  border-width: 1px; }

.bg-gray {
  background: #eeefef; }

.bg-shadow-charm {
  position: relative; }
  .bg-shadow-charm:before {
    content: "";
    background: -webkit-radial-gradient(ellipse at center, rgba(140, 140, 140, 0.25) 40%, rgba(0, 0, 0, 0) 70%);
    background: radial-gradient(ellipse at center, rgba(140, 140, 140, 0.25) 40%, rgba(0, 0, 0, 0) 70%);
    bottom: -35px;
    left: 18%;
    height: 180px;
    width: 64%;
    position: absolute;
    z-index: -2; }

@media (max-width: 767px) {
  .bg-shadow-charm:before {
    content: "";
    bottom: -25px;
    left: 7%;
    height: 120px;
    width: 86%; } }
.btn {
  text-align: center;
  vertical-align: top;
  overflow: hidden;
  position: relative; }
  .btn a {
    font-size: 16px;
    font-size: 1.6rem;
    color: #FFF;
    position: relative;
    transition: all 0.35s;
    padding: 6px 14px 7px 0;
    background: #0d6cb5; }
    .btn a:before {
      content: "";
      width: 8px;
      height: 20px;
      background: url(../img/common/charm/arrow-white.png) no-repeat;
      background-size: auto 100%;
      position: absolute;
      right: 11px;
      top: 11px;
      transition: all 0.2s; }
    .btn a:hover {
      background: rgba(13, 108, 181, 0.8);
      opacity: 1; }
      .btn a:hover:before {
        right: 8px; }

@media (max-width: 767px) {
  .inner {
    width: 100%;
    margin: 0 auto;
    padding: 0 6%; }

  .flex-box {
    width: 100%;
    display: block; }
    .flex-box .col-2 {
      width: 100%; }
    .flex-box .col-3 {
      width: 100%; } }
/* クリアー */
.clearfix {
  zoom: 1; }

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

/* リンク
----------------------------*/
a {
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
  text-decoration: none;
  display: block;
  color: #292929; }

a:hover {
  opacity: 0.5; }

/* ナビゲーション
----------------------------*/
#header {
  height: 130px;
  width: 100%;
  position: fixed;
  z-index: 10000;
  background-color: rgba(255, 255, 255, 0.85);
  top: 0; }

.h-shadow {
  height: 130px;
  width: 100%;
  -webkit-box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.2);
  /* Safari, Chrome用 */
  box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.2);
  /* CSS3草案 */
  top: 0;
  position: absolute; }

header {
  width: 100%;
  margin: 0 auto;
  padding: 0 1.5%;
  height: 130px; }
  header .logo-box {
    display: inline-block;
    float: left;
    position: relative;
    padding-top: 35px; }
    header .logo-box a img.logo {
      height: 70px; }
  header .link-block {
    float: right; }
    header .link-block .language {
      text-align: right;
      position: relative;
      top: -6px; }
      header .link-block .language li {
        display: inline-block;
        margin: 0 2px; }
        header .link-block .language li a {
          line-height: 1.5em;
          background: #9fc238;
          font-size: 14px;
          font-size: 1.4rem;
          color: #FFF;
          font-family: "Roboto", sans-serif;
          font-weight: 500;
          width: 30px;
          text-align: center; }
          header .link-block .language li a:hover {
            background: #ff9837;
            opacity: 1; }
    header .link-block p.tel {
      margin: 6px 0;
      overflow: hidden;
      position: relative; }
      header .link-block p.tel:before {
        content: "";
        position: absolute;
        display: block;
        width: 220px;
        height: 30px;
        right: 0;
        top: 0;
        z-index: 1; }
      header .link-block p.tel a {
        color: #0d6cb5;
        font-size: 24px;
        font-size: 2.4rem;
        font-weight: 500;
        -webkit-font-smoothing: unset;
        display: inline-block;
        float: right; }
        header .link-block p.tel a span {
          display: none; }
        header .link-block p.tel a:hover {
          opacity: 1;
          color: #ff9837; }
    header .link-block #menu {
      position: relative;
      float: right;
      line-height: 2.8rem;
      width: auto;
      top: 2px;
      display: inline-block;
      margin-top: 5px; }
      header .link-block #menu ul {
        text-align: right; }
        header .link-block #menu ul li {
          position: relative;
          display: inline-block;
          text-align: center;
          color: #0d6cb5;
          font-weight: 500;
          line-height: 1.3em;
          cursor: pointer; }
          header .link-block #menu ul li a {
            color: #0d6cb5; }
          header .link-block #menu ul li span {
            color: #999999;
            font-size: 11px;
            font-size: 1.1rem;
            display: block;
            font-family: "Roboto", sans-serif; }
          header .link-block #menu ul li:not(:nth-child(4)) {
            margin: 0 40px 0 0;
            padding-bottom: 10px; }

@media (min-width: 768px) {
  #header, header {
    min-width: 1200px; }

  header #menu {
    display: block; }
    header #menu ul li ol.language {
      display: none; }

  .slicknav_menu {
    display: none !important; } }
@media (max-width: 767px) {
  #menu {
    display: none !important; }

  #header {
    height: 85px;
    width: 100%;
    position: fixed;
    z-index: 10000;
    top: 0; }

  .h-shadow {
    height: 85px; }

  header {
    padding: 0;
    height: 85px; }
    header .logo-box {
      position: absolute;
      top: 40px;
      left: 8px;
      width: auto;
      padding: 0; }
      header .logo-box a span {
        display: none; }
      header .logo-box a img.logo {
        height: 36px; }
    header .link-block {
      float: none; }
      header .link-block p.tel {
        margin: 0; }
        header .link-block p.tel:before {
          display: none; }
        header .link-block p.tel a {
          display: block;
          width: 100%;
          padding: 5px 0 4px;
          color: #FFF;
          background: #0d6cb5;
          font-size: 18px;
          font-size: 1.8rem;
          text-align: center; }
          header .link-block p.tel a span {
            display: inline-block;
            font-size: 11px;
            font-size: 1.1rem;
            letter-spacing: 0;
            margin-right: 10px; }
          header .link-block p.tel a:hover {
            background: #ff9837;
            opacity: 1;
            color: #FFF; } }
/* footer
----------------------------*/
footer {
  height: 418px;
  position: relative;
  background: #0d6cb5;
  color: #FFF; }
  footer .footer-block {
    max-width: 1200px;
    margin: 0 auto;
    padding: 64px 0 48px;
    display: block;
    overflow: hidden; }
  footer .contents-block {
    width: 100%;
    -js-display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-justify-content: space-between;
    /* Safari */
    justify-content: space-between; }
  footer h2 {
    font-size: 20px;
    font-size: 2rem;
    display: block;
    padding-bottom: 8px;
    margin-bottom: 8px;
    border-bottom: 1px solid #FFF;
    font-weight: normal; }
  footer .adress-block {
    display: block;
    width: 28%;
    vertical-align: top; }
    footer .adress-block p, footer .adress-block a {
      font-size: 16px;
      font-size: 1.6rem;
      color: #FFF; }
  footer .link-block {
    display: block;
    width: 60%; }
    footer .link-block p {
      font-size: 12px;
      font-size: 1.2rem;
      margin: 16px 0 5px;
      line-height: 1em; }
    footer .link-block #nav {
      width: 100%;
      display: block;
      padding: 0 15px;
      overflow: hidden; }
      footer .link-block #nav li, footer .link-block #nav a {
        font-size: 12px;
        font-size: 1.2rem;
        color: #FFF; }
      footer .link-block #nav a {
        display: inline-block; }
      footer .link-block #nav li {
        display: block; }
        footer .link-block #nav li.block {
          display: inline-block;
          float: left;
          margin-right: 30px; }
          footer .link-block #nav li.block.mini {
            width: 190px;
            margin-right: 20px; }
          footer .link-block #nav li.block.tenpao {
            width: 120px;
            margin-right: 20px; }
          footer .link-block #nav li.block:last-child {
            float: right;
            margin-right: 0; }
      footer .link-block #nav ul.mini {
        display: block;
        width: 100%;
        float: left; }
        footer .link-block #nav ul.mini li.block {
          vertical-align: top;
          margin-right: 0; }
          footer .link-block #nav ul.mini li.block li {
            display: inline-block;
            margin-left: 10px; }
          footer .link-block #nav ul.mini li.block:last-child {
            float: left; }
  footer .copyright {
    width: 100%;
    display: block;
    font-weight: normal;
    font-size: 14px;
    font-size: 1.4rem;
    text-align: left;
    margin-top: 40px; }
    footer .copyright span {
      font-size: 15px;
      font-size: 1.5rem; }

@media (min-width: 768px) {
  footer {
    min-width: 1100px; } }
@media (max-width: 767px) {
  footer {
    height: auto; }
    footer .footer-block {
      max-width: auto;
      padding: 6% 6% 2%; }
    footer .contents-block {
      width: 100%;
      display: block; }
    footer h2 {
      font-size: 15px;
      font-size: 1.5rem;
      padding-bottom: 6px; }
    footer .adress-block {
      width: 100%;
      margin-bottom: 8%; }
      footer .adress-block p, footer .adress-block a {
        font-size: 12px;
        font-size: 1.2rem; }
    footer .link-block {
      width: 100%; }
      footer .link-block p {
        font-size: 12px;
        font-size: 1.2rem;
        margin: 12px 0 8px; }
      footer .link-block #nav {
        width: 100%;
        padding: 0; }
        footer .link-block #nav li, footer .link-block #nav a {
          font-size: 12px;
          font-size: 1.2rem; }
        footer .link-block #nav a {
          display: inline-block; }
        footer .link-block #nav li {
          display: block; }
          footer .link-block #nav li.block {
            width: 50%;
            margin-right: 0; }
            footer .link-block #nav li.block.mini {
              width: 100%;
              margin-right: 0;
              margin-top: 5px; }
            footer .link-block #nav li.block li {
              margin-bottom: 6px; }
            footer .link-block #nav li.block:last-child {
              width: 100%;
              float: left;
              clear: left;
              margin-right: 0;
              margin-top: 12px; }
              footer .link-block #nav li.block:last-child li {
                width: 50%;
                float: left; }
        footer .link-block #nav ul.mini {
          width: 100%;
          float: none;
          margin: 5px 0 15px;
          overflow: hidden;
          padding-left: 0; }
          footer .link-block #nav ul.mini li.block {
            width: 100%;
            vertical-align: top; }
            footer .link-block #nav ul.mini li.block li {
              width: auto;
              display: inline-block;
              margin-bottom: 0; }
            footer .link-block #nav ul.mini li.block:last-child {
              clear: none;
              width: 100%;
              margin: 0; }
    footer .copyright {
      font-size: 10px;
      font-size: 1rem;
      margin-top: 15px; }
      footer .copyright span {
        font-size: 11px;
        font-size: 1.1rem; } }
@media (max-width: 360px) {
  footer .copyright {
    letter-spacing: 0.01em;
    margin-top: 10px; }
    footer .copyright span {
      font-size: 10px;
      font-size: 1rem; } }
/* pagetop
--------------------------------------------------------*/
#pagetop {
  position: fixed;
  bottom: 15px;
  right: 15px;
  z-index: 500; }
  #pagetop a {
    display: block;
    width: 50px;
    height: 50px;
    position: relative;
    background: #0d6cb5;
    outline: none;
    border: none; }
    #pagetop a:before {
      content: '';
      display: block;
      position: absolute;
      background: #FFF;
      width: 21px;
      height: 3px;
      -webkit-transform: rotate(35deg);
      transform: rotate(35deg);
      right: 7px;
      top: 22px;
      transition: all 0.3s ease-out; }
    #pagetop a:after {
      content: '';
      display: block;
      position: absolute;
      background: #FFF;
      width: 21px;
      height: 3px;
      -webkit-transform: rotate(-35deg);
      transform: rotate(-35deg);
      left: 7px;
      top: 22px;
      transition: all 0.3s ease-out; }
    #pagetop a:hover:before, #pagetop a:hover:after {
      top: 18px; }

#pagetop.static {
  position: absolute;
  bottom: 433px; }

@media (max-width: 767px) {
  #pagetop {
    bottom: 10px;
    right: 10px; }
    #pagetop a {
      display: block;
      width: 50px;
      height: 50px;
      position: relative;
      background: #0d6cb5;
      outline: none;
      border: none; }
      #pagetop a:before {
        content: '';
        display: block;
        position: absolute;
        background: #FFF;
        width: 21px;
        height: 3px;
        -webkit-transform: rotate(35deg);
        transform: rotate(35deg);
        right: 7px;
        top: 22px;
        transition: all 0.3s ease-out; }
      #pagetop a:after {
        content: '';
        display: block;
        position: absolute;
        background: #FFF;
        width: 21px;
        height: 3px;
        -webkit-transform: rotate(-35deg);
        transform: rotate(-35deg);
        left: 7px;
        top: 22px;
        transition: all 0.3s ease-out; }
      #pagetop a:hover:before, #pagetop a:hover:after {
        top: 18px; }

  #pagetop.static {
    bottom: 10px; }
    #pagetop.static a {
      background: #292929; } }
.fadeinup {
  opacity: 0; }

.fadeinup.animated {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both; }

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
/* CSS Document */
/* 共通 
---------------------------------------------------------------*/
.page.top h2 {
  margin-top: 100px;
  font-size: 24px;
  font-size: 2.4rem;
  text-align: center;
  letter-spacing: 0.05em;
  position: relative;
  color: #717071;
  margin-bottom: 35px;
  font-weight: 500;
  line-height: 1em; }
  .page.top h2 span {
    font-size: 10px;
    font-size: 1rem;
    display: block;
    color: #0d6cb5;
    font-family: "Roboto", sans-serif;
    font-weight: 700; }

@media (max-width: 767px) {
  .page.top h2 {
    margin-top: 70px;
    margin-bottom: 25px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.2em; } }
/* mv
----------------------------------------------------------------*/
.page.top .mv {
  display: block; }
  .page.top .mv .slider {
    height: 760px; }
  .page.top .mv .slider-mv .slick-slide {
    background-repeat: no-repeat;
    height: 760px;
    background-position: center;
    background-size: cover; }
  .page.top .mv h1 {
    font-size: 24px;
    font-size: 2.4rem;
    color: #FFF;
    text-align: center;
    padding-top: 340px;
    font-weight: 500; }
    .page.top .mv h1 span.border-charm {
      display: block;
      margin: 20px auto;
      width: 470px;
      height: 1px;
      background: #FFF; }
    .page.top .mv h1 span.en {
      font-family: "Roboto", sans-serif;
      font-weight: 500;
      font-size: 25px;
      font-size: 2.5rem; }
  .page.top .mv .inner {
    position: static; }
  .page.top .mv .business-type {
    width: 1000px;
    position: absolute;
    z-index: 1;
    bottom: 30px; }
    .page.top .mv .business-type.flex-box li {
      width: 235px;
      height: 85px;
      padding: 10px 0;
      background: rgba(255, 255, 255, 0.5);
      display: block;
      text-align: center;
      border-bottom: 5px solid #0d6cb5; }
      .page.top .mv .business-type.flex-box li span {
        color: #0d6cb5; }
      .page.top .mv .business-type.flex-box li h2 {
        color: #0d6cb5;
        margin-bottom: 6px;
        margin-top: 0; }
      .page.top .mv .business-type.flex-box li:first-child, .page.top .mv .business-type.flex-box li:nth-child(4) {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.3em; }
      .page.top .mv .business-type.flex-box li:nth-child(2), .page.top .mv .business-type.flex-box li:nth-child(3) {
        font-size: 17px;
        font-size: 1.7rem;
        line-height: 1.4em; }
        .page.top .mv .business-type.flex-box li:nth-child(2) h2, .page.top .mv .business-type.flex-box li:nth-child(3) h2 {
          margin-bottom: 9px; }
      .page.top .mv .business-type.flex-box li:first-child {
        -webkit-animation-delay: 0.2s;
        animation-delay: 0.2s; }
      .page.top .mv .business-type.flex-box li:nth-child(2) {
        -webkit-animation-delay: 0.35s;
        animation-delay: 0.35s; }
      .page.top .mv .business-type.flex-box li:nth-child(3) {
        -webkit-animation-delay: 0.5s;
        animation-delay: 0.5s; }
      .page.top .mv .business-type.flex-box li:nth-child(4) {
        -webkit-animation-delay: 0.65s;
        animation-delay: 0.65s; }

@media (max-width: 1450px) {
  .page.top .mv .slider {
    height: 700px; }
  .page.top .mv .slider-mv .slick-slide {
    height: 700px; } }
@media (max-width: 1300px) {
  .page.top .mv .slider {
    height: 665px; }
  .page.top .mv .slider-mv .slick-slide {
    background-repeat: no-repeat;
    height: 665px;
    background-position: top center; }
  .page.top .mv h1 {
    font-size: 24px;
    font-size: 2.4rem;
    padding-top: 320px;
    font-weight: 500; }
    .page.top .mv h1 span.border-charm {
      display: block;
      margin: 20px auto;
      width: 470px;
      height: 1px;
      background: #FFF; }
    .page.top .mv h1 span.en {
      font-family: "Roboto", sans-serif;
      font-weight: 500;
      font-size: 25px;
      font-size: 2.5rem; }
  .page.top .mv .business-type {
    position: absolute;
    bottom: 30px; }
    .page.top .mv .business-type.flex-box li {
      width: 235px;
      height: 85px;
      padding: 10px 0;
      background: rgba(255, 255, 255, 0.5);
      display: block;
      text-align: center;
      border-bottom: 5px solid #0d6cb5; }
      .page.top .mv .business-type.flex-box li span {
        color: #0d6cb5; }
      .page.top .mv .business-type.flex-box li h2 {
        color: #0d6cb5;
        margin-bottom: 6px;
        margin-top: 0; }
      .page.top .mv .business-type.flex-box li:first-child, .page.top .mv .business-type.flex-box li:nth-child(4) {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.3em; }
      .page.top .mv .business-type.flex-box li:nth-child(2), .page.top .mv .business-type.flex-box li:nth-child(3) {
        font-size: 17px;
        font-size: 1.7rem;
        line-height: 1.4em; }
        .page.top .mv .business-type.flex-box li:nth-child(2) h2, .page.top .mv .business-type.flex-box li:nth-child(3) h2 {
          margin-bottom: 9px; } }
@media (max-width: 767px) {
  .page.top .mv .slider {
    height: 460px; }
  .page.top .mv .slider-mv .slick-slide {
    height: 470px;
    background-position: top center; }
  .page.top .mv h1 {
    font-size: 18px;
    font-size: 1.8rem;
    padding-top: 170px; }
    .page.top .mv h1 span.border-charm {
      margin: 10px auto;
      width: 75%; }
    .page.top .mv h1 span.en {
      font-size: 19px;
      font-size: 1.9rem; }
  .page.top .mv .business-type {
    position: absolute;
    bottom: 15px; }
    .page.top .mv .business-type.flex-box {
      width: 88%; }
      .page.top .mv .business-type.flex-box li {
        vertical-align: top;
        width: 45%;
        height: 62px;
        padding: 6px 0 0;
        display: inline-block;
        border-bottom: 3px solid #0d6cb5;
        margin: 0 2%; }
        .page.top .mv .business-type.flex-box li h2 {
          font-size: 16px;
          font-size: 1.6rem;
          color: #0d6cb5;
          margin-bottom: 4px;
          margin-top: 0; }
        .page.top .mv .business-type.flex-box li:first-child, .page.top .mv .business-type.flex-box li:nth-child(2) {
          margin-bottom: 10px; }
        .page.top .mv .business-type.flex-box li:first-child, .page.top .mv .business-type.flex-box li:nth-child(4) {
          font-size: 11px;
          font-size: 1.1rem;
          line-height: 1.3em; }
        .page.top .mv .business-type.flex-box li:nth-child(2), .page.top .mv .business-type.flex-box li:nth-child(3) {
          font-size: 13px;
          font-size: 1.3rem;
          line-height: 1.4em; }
          .page.top .mv .business-type.flex-box li:nth-child(2) h2, .page.top .mv .business-type.flex-box li:nth-child(3) h2 {
            margin-bottom: 9px; } }
@media (max-width: 360px) {
  .page.top .mv .slider {
    height: 480px; } }
/* slide-product
----------------------------------------------------------------*/
.page.top .slide-product {
  display: block; }
  .page.top .slide-product h2 {
    margin-top: 140px; }
  .page.top .slide-product .slider {
    margin: 40px auto;
    width: 1000px;
    height: 300px; }
  .page.top .slide-product .slider-pd .slick-slide {
    width: 225px;
    min-height: 300px;
    margin: 0 12.5px;
    background: #FFF;
    display: block;
    overflow: hidden;
    z-index: 0; }
    .page.top .slide-product .slider-pd .slick-slide .list-frame {
      width: 225px;
      height: 225px;
      display: block;
      position: relative;
      overflow: hidden;
      transition: all 0.4s; }
      .page.top .slide-product .slider-pd .slick-slide .list-frame img {
        width: 225px;
        height: auto; }
    .page.top .slide-product .slider-pd .slick-slide .product-caption {
      background: #FFF;
      width: 100%;
      display: block;
      color: #595858;
      padding: 15px 0 0;
      text-align: center;
      position: relative;
      font-weight: 500;
      min-height: 75px;
      z-index: 1;
      height: 100%;
      line-height: 1.3em;
      border-style: solid;
      border-width: 1px;
      border-color: #dcdcdc #FFF #FFF #FFF; }
      .page.top .slide-product .slider-pd .slick-slide .product-caption small {
        font-size: 14px;
        font-size: 1.4rem;
        display: block;
        font-weight: normal; }

@media (max-width: 767px) {
  .page.top .slide-product h2 {
    margin-top: 90px; }
  .page.top .slide-product .slider {
    margin: 25px auto;
    width: 100% !important;
    height: 280px;
    padding: 0 20%; }
  .page.top .slide-product .slider-pd .slick-slide {
    width: 100%;
    min-height: 280px;
    margin: 0; }
    .page.top .slide-product .slider-pd .slick-slide .list-frame {
      width: 100%;
      height: 220px; }
      .page.top .slide-product .slider-pd .slick-slide .list-frame img {
        width: 100%; }
    .page.top .slide-product .slider-pd .slick-slide .product-caption {
      padding: 10px 0 0;
      min-height: 60px; }
      .page.top .slide-product .slider-pd .slick-slide .product-caption small {
        font-size: 12px;
        font-size: 1.2rem; } }
@media (max-width: 360px) {
  .page.top .slide-product .slider {
    height: 250px;
    padding: 0 22%; }
  .page.top .slide-product .slider-pd .slick-slide {
    min-height: 250px; }
    .page.top .slide-product .slider-pd .slick-slide .list-frame {
      width: 100%;
      height: 178px; }
    .page.top .slide-product .slider-pd .slick-slide .product-caption {
      padding: 15px 0 0;
      min-height: 50px; } }
/* slide-product
----------------------------------------------------------------*/
.page.top .business-list {
  overflow: hidden;
  padding-bottom: 50px;
  margin-bottom: 50px; }
  .page.top .business-list .flex-box {
    background-color: #f7f7f7;
    flex-wrap: wrap;
    justify-content: flex-start; }
    @media (max-width: 767px) {
      .page.top .business-list .flex-box {
        background-color: #fff; } }
    .page.top .business-list .flex-box div:first-child {
      -webkit-animation-delay: 0.3s;
      animation-delay: 0.3s; }
    .page.top .business-list .flex-box div:nth-child(2) {
      -webkit-animation-delay: 0.4s;
      animation-delay: 0.4s; }
    .page.top .business-list .flex-box div:nth-child(3) {
      -webkit-animation-delay: 0.5s;
      animation-delay: 0.5s; }
    .page.top .business-list .flex-box div:nth-child(4) {
      -webkit-animation-delay: 0.6s;
      animation-delay: 0.6s; }
    .page.top .business-list .flex-box div:nth-child(5) {
      -webkit-animation-delay: 0.6s;
      animation-delay: 0.7s; }
    .page.top .business-list .flex-box div:nth-child(6) {
      -webkit-animation-delay: 0.8s;
      animation-delay: 0.8s; }
    @media (min-width: 767px) {
      .page.top .business-list .flex-box div:nth-child(n+4) {
        border-top: none; } }
    .page.top .business-list .flex-box .col-3 {
      margin: 0;
      padding: 0;
      border-color: #dcdcdc #dcdcdc #dcdcdc transparent;
      border-style: solid;
      border-width: 1px 1px 1px 0;
      overflow: hidden; }
      .page.top .business-list .flex-box .col-3.fourth {
        border-color: #dcdcdc transparent #dcdcdc transparent; }
      .page.top .business-list .flex-box .col-3 a h3 {
        background: rgba(255, 255, 255, 0.75);
        text-align: center;
        margin: 0 auto;
        position: relative;
        padding: 5px 0 0;
        font-size: 24px;
        font-size: 2.4rem;
        width: 190px;
        height: 40px;
        top: 305px;
        color: #595858;
        font-weight: normal;
        z-index: 1;
        transition: all 0.4s; }
      .page.top .business-list .flex-box .col-3 a .list-frame {
        margin-top: -40px;
        width: 100%;
        height: 364px;
        display: block;
        background-repeat: no-repeat;
        background-position: top center;
        background-size: cover;
        transition: all 0.4s;
        overflow: hidden; }
      .page.top .business-list .flex-box .col-3 a .product-name {
        background: #FFF;
        width: 100%;
        display: block;
        color: #595858;
        padding: 20px 0 0;
        text-align: center;
        position: relative;
        height: 120px;
        line-height: 1.3em;
        border-top: 1px solid #dcdcdc; }
        .page.top .business-list .flex-box .col-3 a .product-name span.caption {
          font-size: 14px;
          font-size: 1.4rem;
          display: block;
          margin-top: 10px;
          padding: 0 10px; }
      .page.top .business-list .flex-box .col-3 a:hover {
        opacity: 1;
        background: #0d6cb5; }
        .page.top .business-list .flex-box .col-3 a:hover h3 {
          background: white;
          color: #0d6cb5; }
        .page.top .business-list .flex-box .col-3 a:hover .list-frame {
          opacity: 0.7;
          transform: scale(1.15); }
        .page.top .business-list .flex-box .col-3 a:hover .product-name {
          color: #0d6cb5; }
      .page.top .business-list .flex-box .col-3 a.form-link {
        width: 60%;
        line-height: 1.6em;
        margin: 15px auto 0;
        font-size: 16px;
        font-size: 1.6rem;
        color: #FFF;
        position: relative;
        transition: all 0.35s;
        padding: 6px 14px 7px 0;
        background: #0d6cb5; }
        @media (max-width: 767px) {
          .page.top .business-list .flex-box .col-3 a.form-link {
            font-size: 12px;
            font-size: 1.2rem;
            margin: 11px auto 0; } }
        .page.top .business-list .flex-box .col-3 a.form-link::before {
          content: "";
          width: 6px;
          height: 16px;
          transition: all 0.2s;
          position: absolute;
          right: 16px;
          top: 10px;
          background: url(../img/common/charm/arrow-white.png) no-repeat;
          background-size: auto 100%; }
          @media (max-width: 767px) {
            .page.top .business-list .flex-box .col-3 a.form-link::before {
              top: 8px; } }
        .page.top .business-list .flex-box .col-3 a.form-link:hover {
          opacity: 0.5; }
          .page.top .business-list .flex-box .col-3 a.form-link:hover::before {
            right: 12px; }
    .page.top .business-list .flex-box span.box-fade {
      width: 100%;
      height: 300px;
      display: block;
      background: #FFF;
      position: absolute;
      z-index: -1;
      bottom: -70px; }
      .page.top .business-list .flex-box span.box-fade.animated {
        animation-name: reasonImgCover;
        animation-duration: 1s;
        animation-delay: 1s;
        animation-fill-mode: forwards; }
  .page.top .business-list .btn {
    margin: 100px auto 0;
    line-height: 2em; }
    .page.top .business-list .btn a {
      width: 30%;
      margin: 0 auto; }
      .page.top .business-list .btn a:before {
        top: 15px; }

@media (max-width: 767px) {
  .page.top .business-list {
    padding-bottom: 0px;
    margin-bottom: 0px; }
    .page.top .business-list .flex-box div {
      -webkit-animation-delay: 0.3s !important;
      animation-delay: 0.3s !important; }
    .page.top .business-list .flex-box.bg-shadow-charm:before {
      display: none; }
    .page.top .business-list .flex-box .col-3 {
      width: 76%;
      margin: 0 auto 30px;
      border-color: #dcdcdc #dcdcdc #dcdcdc #dcdcdc !important;
      border-width: 1px; }
      .page.top .business-list .flex-box .col-3.third {
        border-color: #dcdcdc #dcdcdc #dcdcdc #dcdcdc !important; }
      .page.top .business-list .flex-box .col-3 a h3 {
        padding: 5px 0 0;
        font-size: 18px;
        font-size: 1.8rem;
        width: 150px;
        height: 35px;
        top: 205px; }
      .page.top .business-list .flex-box .col-3 a .list-frame {
        margin-top: -35px;
        width: 100%;
        height: 250px; }
      .page.top .business-list .flex-box .col-3 a .product-name {
        padding: 18px 0 0;
        text-align: center;
        position: relative;
        height: 100px;
        line-height: 1.3em; }
        .page.top .business-list .flex-box .col-3 a .product-name span.caption {
          font-size: 12px;
          font-size: 1.2rem;
          display: block;
          margin-top: 8px;
          letter-spacing: 0; }
    .page.top .business-list .flex-box span.box-fade {
      display: none; }
    .page.top .business-list .btn {
      margin: 50px 0 0; }
      .page.top .business-list .btn a {
        font-size: 14px;
        font-size: 1.4rem;
        width: 76%;
        color: #FFF;
        position: relative;
        transition: all 0.35s;
        padding: 6px 14px 7px 0;
        background: #0d6cb5; }
        .page.top .business-list .btn a:before {
          top: 10px; } }
@keyframes reasonImgCover {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }
/* information
----------------------------------------------------------------*/
.page.top .info .inner {
  padding: 70px 25px 75px;
  overflow: hidden; }
.page.top .info ul {
  display: block;
  min-height: 200px; }
  .page.top .info ul li {
    display: block;
    border-bottom: 1px solid #b4b4b4; }
    .page.top .info ul li:not(:last-child) {
      margin-bottom: 8px; }
    .page.top .info ul li a {
      display: inline-block;
      padding: 10px 60px 18px; }
      .page.top .info ul li a span {
        display: inline-block;
        vertical-align: top;
        transition: all 0.3s; }
        .page.top .info ul li a span.date {
          font-family: "Roboto", sans-serif;
          font-weight: 300; }
        .page.top .info ul li a span.icon {
          text-align: center;
          background: #0d6cb5;
          padding: 2px 0 3px;
          letter-spacing: -0.03em;
          color: #FFF;
          min-width: 74px;
          margin: 0 10px;
          list-style: 0;
          font-size: 13px;
          font-size: 1.3rem;
          line-height: 1em;
          position: relative;
          top: 4px; }
        .page.top .info ul li a span.title {
          color: #0d6cb5;
          width: 100%;
          display: block;
          text-align: justify; }
.page.top .info .btn {
  float: right;
  margin: 15px 0 0; }
  .page.top .info .btn a {
    width: 150px; }

@media (max-width: 767px) {
  .page.top .info .inner {
    padding: 7% 6% 6%; }
  .page.top .info ul {
    min-height: 100px; }
    .page.top .info ul li:not(:last-child) {
      margin-bottom: 10px; }
    .page.top .info ul li a {
      display: inline-block;
      padding: 5px 5px 12px; }
      .page.top .info ul li a span.icon {
        min-width: 60px;
        margin: 0 8px;
        list-style: 0;
        font-size: 11px;
        font-size: 1.1rem;
        top: 3px; }
      .page.top .info ul li a span.title {
        font-size: 13px;
        font-size: 1.3rem;
        margin-top: 5px; }
  .page.top .info .btn {
    margin: 20px 0 0; }
    .page.top .info .btn a {
      font-size: 14px;
      font-size: 1.4rem;
      width: 120px;
      color: #FFF;
      position: relative;
      transition: all 0.35s;
      padding: 6px 14px 7px 0;
      background: #0d6cb5; }
      .page.top .info .btn a:before {
        content: "";
        width: 6px;
        height: 16px;
        right: 10px;
        top: 8px; } }
/* about-gucf
----------------------------------------------------------------*/
.page.top .about-gucf .flex-box {
  width: 1100px;
  margin: 0 auto 50px; }
  .page.top .about-gucf .flex-box .col-2 {
    width: 515px; }
  .page.top .about-gucf .flex-box div:first-child {
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s; }
  .page.top .about-gucf .flex-box div:nth-child(2) {
    -webkit-animation-delay: 0.6s;
    animation-delay: 0.6s; }
  .page.top .about-gucf .flex-box .accordion li .sub-tab {
    display: block; }
  .page.top .about-gucf .flex-box .single-block {
    padding: 30px;
    margin-bottom: 75px;
    font-size: 14px;
    font-size: 1.4rem;
    text-align: justify;
    letter-spacing: 0; }
    .page.top .about-gucf .flex-box .single-block h3 {
      color: #0d6cb5;
      font-size: 24px;
      font-size: 2.4rem;
      margin-bottom: 25px;
      text-align: center;
      font-weight: normal; }
      .page.top .about-gucf .flex-box .single-block h3.variation {
        text-align: justify;
        line-height: 1.5em; }
    .page.top .about-gucf .flex-box .single-block dl dt {
      color: #0d6cb5; }
    .page.top .about-gucf .flex-box .single-block dl dd {
      margin: 0 0 30px 0; }
    .page.top .about-gucf .flex-box .single-block .photo-flame {
      width: 190px;
      height: 140px;
      overflow: hidden;
      position: relative;
      border: 1px solid #0d6cb5;
      margin: 0 auto 30px;
      cursor: pointer;
      transition: all 0.3s; }
      .page.top .about-gucf .flex-box .single-block .photo-flame .trim-image-deformation {
        width: 100%;
        height: 100%;
        position: absolute;
        transition: all 0.4s;
        background-position: left center;
        background-size: cover;
        background-repeat: no-repeat;
        background-image: url(../img/page-top/img_l.jpg); }
      .page.top .about-gucf .flex-box .single-block .photo-flame p {
        display: inline-block;
        height: 22px;
        position: absolute;
        bottom: 10px;
        left: 10px;
        background: #FFF;
        transition: all 0.4s; }
        .page.top .about-gucf .flex-box .single-block .photo-flame p span.arrow {
          display: inline-block;
          width: 22px;
          height: 100%;
          background: #0d6cb5;
          position: relative; }
          .page.top .about-gucf .flex-box .single-block .photo-flame p span.arrow img {
            height: 15px;
            position: absolute;
            left: 5px;
            top: 3px; }
        .page.top .about-gucf .flex-box .single-block .photo-flame p small {
          font-size: 16px;
          font-size: 1.6rem;
          color: #0d6cb5;
          margin: 0 5px 0 8px;
          line-height: 1em;
          display: inline-block;
          position: relative;
          top: -5px; }
      .page.top .about-gucf .flex-box .single-block .photo-flame:hover {
        opacity: 1;
        background: #0d6cb5; }
        .page.top .about-gucf .flex-box .single-block .photo-flame:hover .trim-image-deformation {
          opacity: 0.7;
          transform: scale(1.15); }
        .page.top .about-gucf .flex-box .single-block .photo-flame:hover p {
          opacity: 0.7; }
    .page.top .about-gucf .flex-box .single-block.bg-shadow-charm:before {
      bottom: -25px;
      height: 100px; }

@media (max-width: 767px) {
  .page.top .about-gucf .flex-box {
    width: 88%;
    margin: 0 auto 70px; }
    .page.top .about-gucf .flex-box .col-2 {
      width: 100%; }
    .page.top .about-gucf .flex-box div {
      -webkit-animation-delay: 0s;
      animation-delay: 0s; }
    .page.top .about-gucf .flex-box .accordion li .sub-tab {
      display: none; }
    .page.top .about-gucf .flex-box .accordion li.default .sub-tab {
      display: block; }
    .page.top .about-gucf .flex-box .accordion {
      width: 100%;
      margin: 0; }
    .page.top .about-gucf .flex-box .accordion li {
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
    .page.top .about-gucf .flex-box .accordion li .sub-tab {
      display: none; }
    .page.top .about-gucf .flex-box .accordion li.default .sub-tab {
      display: block; }
    .page.top .about-gucf .flex-box .link {
      height: auto;
      padding: 0;
      cursor: pointer;
      display: block;
      position: relative;
      -webkit-transition: all 0.4s ease;
      -o-transition: all 0.4s ease;
      transition: all 0.4s ease; }
    .page.top .about-gucf .flex-box .accordion li .single-block.open h3:before {
      -webkit-transform: rotate(-90deg);
      transform: rotate(-90deg); }
    .page.top .about-gucf .flex-box .single-block {
      -webkit-animation-delay: 0.3s;
      animation-delay: 0.3s;
      padding: 0;
      margin-bottom: 20px;
      font-size: 12px;
      font-size: 1.2rem; }
      .page.top .about-gucf .flex-box .single-block.bg-shadow-charm:before {
        display: none; }
      .page.top .about-gucf .flex-box .single-block h3 {
        font-size: 18px;
        font-size: 1.8rem;
        margin-bottom: 0;
        padding: 5.5% 6%;
        position: relative; }
        .page.top .about-gucf .flex-box .single-block h3:before {
          content: "";
          width: 18px;
          height: 18px;
          right: 20px;
          top: 19px;
          position: absolute;
          background: url(../img/common/charm/arrow-triangle.svg);
          background-repeat: no-repeat;
          background-size: auto 10px;
          background-position: center;
          display: block;
          transition: all 0.4s;
          z-index: 1;
          -webkit-transform: rotate(90deg);
          transform: rotate(90deg); }
        .page.top .about-gucf .flex-box .single-block h3:after {
          content: "";
          width: 18px;
          height: 18px;
          right: 20px;
          top: 19px;
          position: absolute;
          background: #0d6cb5;
          display: block; }
        .page.top .about-gucf .flex-box .single-block h3.variation {
          font-size: 15px;
          font-size: 1.5rem;
          text-align: justify;
          line-height: 1.4em;
          letter-spacing: -0.025em; }
          .page.top .about-gucf .flex-box .single-block h3.variation:before {
            top: 26px; }
          .page.top .about-gucf .flex-box .single-block h3.variation:after {
            top: 26px; }
      .page.top .about-gucf .flex-box .single-block .sub-tab {
        padding: 0 6% 6%;
        line-height: 1.7em; }
      .page.top .about-gucf .flex-box .single-block dl dt {
        color: #0d6cb5; }
      .page.top .about-gucf .flex-box .single-block dl dd {
        margin: 0 0 15px 0; }
      .page.top .about-gucf .flex-box .single-block .photo-flame {
        width: 170px;
        height: 105px;
        margin: 5px auto 15px; }
        .page.top .about-gucf .flex-box .single-block .photo-flame p {
          height: 20px;
          bottom: 5px;
          left: 5px; }
          .page.top .about-gucf .flex-box .single-block .photo-flame p span.arrow {
            display: inline-block;
            width: 22px;
            height: 100%;
            background: #0d6cb5;
            position: relative; }
            .page.top .about-gucf .flex-box .single-block .photo-flame p span.arrow img {
              height: 15px;
              position: absolute;
              left: 5px;
              top: 3px; }
          .page.top .about-gucf .flex-box .single-block .photo-flame p small {
            font-size: 13px;
            font-size: 1.3rem;
            color: #0d6cb5;
            margin: 0 5px 0 8px;
            line-height: 1em;
            display: inline-block;
            position: relative;
            top: -5px; }
        .page.top .about-gucf .flex-box .single-block .photo-flame:hover {
          opacity: 1;
          background: #0d6cb5; }
          .page.top .about-gucf .flex-box .single-block .photo-flame:hover img.trim-image-deformation {
            opacity: 0.7;
            transform: scale(1.15); }
          .page.top .about-gucf .flex-box .single-block .photo-flame:hover p {
            opacity: 0.7; }
      .page.top .about-gucf .flex-box .single-block.bg-shadow-charm:before {
        bottom: -25px;
        height: 100px; } }
#darkbox_close:after {
  position: absolute;
  right: 0;
  top: 0;
  font-size: 26px;
  font-size: 2.6rem;
  cursor: pointer;
  color: #FFF;
  content: "×";
  font-weight: 100;
  line-height: 1em;
  transition: all 0.3s; }
#darkbox_close:hover {
  opacity: 1; }
  #darkbox_close:hover:after {
    color: #0d6cb5 !important; }

.page.top .link-block {
  margin-bottom: 100px; }
.page.top .btn-block {
  width: 1100px;
  margin: 0 auto;
  -js-display: flex;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-justify-content: space-between;
  /* Safari */
  justify-content: space-between; }
  @media (max-width: 767px) {
    .page.top .btn-block {
      display: block;
      width: 76%;
      margin: 0 auto; } }
  .page.top .btn-block .ipros {
    height: auto; }
    @media (max-width: 767px) {
      .page.top .btn-block .ipros {
        margin-bottom: 30px; } }
  @media (max-width: 767px) {
    .page.top .btn-block .contact-gucf .btn-box .logo-block {
      margin-bottom: 15px; } }
  .page.top .btn-block .btn-box {
    width: 515px;
    height: 100%;
    padding: 20px;
    border: solid 1px #0d6cb5;
    -js-display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex; }
    @media (max-width: 767px) {
      .page.top .btn-block .btn-box {
        width: 100%;
        display: block;
        padding: 15px; } }
    .page.top .btn-block .btn-box .logo-block {
      width: 40%;
      padding-right: 20px;
      -js-display: flex;
      display: -webkit-box;
      display: -moz-box;
      display: -webkit-box;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center; }
      @media (max-width: 767px) {
        .page.top .btn-block .btn-box .logo-block {
          width: 100%;
          padding-left: 0;
          margin-bottom: 10px; } }
      .page.top .btn-block .btn-box .logo-block img {
        width: auto;
        height: 60px; }
        @media (max-width: 767px) {
          .page.top .btn-block .btn-box .logo-block img {
            height: 50px; } }
    .page.top .btn-block .btn-box .txt-block {
      width: 60%; }
      @media (max-width: 767px) {
        .page.top .btn-block .btn-box .txt-block {
          width: 100%;
          text-align: center; } }
      .page.top .btn-block .btn-box .txt-block h3 {
        color: #717071;
        line-height: 1.75em;
        font-weight: normal;
        display: inline-block;
        border-bottom: solid 2px #0d6cb5;
        margin-bottom: 5px; }
        @media (max-width: 767px) {
          .page.top .btn-block .btn-box .txt-block h3 {
            font-weight: bold;
            margin-bottom: 10px;
            border-bottom: solid 1px #0d6cb5; } }
      .page.top .btn-block .btn-box .txt-block p {
        font-size: 14px;
        font-size: 1.4rem;
        color: #717071; }
        @media (max-width: 767px) {
          .page.top .btn-block .btn-box .txt-block p {
            font-size: 12px;
            font-size: 1.2rem; } }

/* CSS Document */
/* 共通 
-------------------------------------*/
.page.product, .page.factory, .page.company, .page.contact, .page.link, .page.info, .page.sitemap {
  color: #717071;
  padding-top: 140px; }
  .page.product h1, .page.factory h1, .page.company h1, .page.contact h1, .page.link h1, .page.info h1, .page.sitemap h1 {
    font-size: 40px;
    font-size: 4rem;
    margin: 70px auto;
    text-align: center;
    font-weight: normal;
    color: #717071; }
.page.product, .page.info, .page.factory {
  margin-bottom: 130px; }
.page.factory h1, .page.contact h1 {
  margin: 70px auto 50px; }
.page .page-top ul.bread {
  padding-left: 1.5%; }
  .page .page-top ul.bread li, .page .page-top ul.bread a {
    color: #717071; }
  .page .page-top ul.bread li {
    font-size: 12px;
    font-size: 1.2rem;
    display: inline-block; }
    .page .page-top ul.bread li:not(:last-child) {
      margin-right: 22px; }
  .page .page-top ul.bread a {
    position: relative; }
    .page .page-top ul.bread a:before {
      content: "";
      position: absolute;
      top: 11px;
      right: -12px;
      border-top: 1px solid #717071;
      border-right: 1px solid #717071;
      width: 7px;
      height: 7px;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg); }
    .page .page-top ul.bread a:hover {
      text-decoration: underline; }
.page .buy-box {
  margin-top: 90px;
  -js-display: flex;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-justify-content: space-between;
  /* Safari */
  justify-content: space-between; }
  @media (max-width: 767px) {
    .page .buy-box {
      display: block;
      padding: 0 6%; } }
  .page .buy-box .buy-block {
    width: 30%;
    border: solid 1px #0d6cb5;
    text-align: center; }
    @media (max-width: 767px) {
      .page .buy-box .buy-block {
        width: 90%;
        margin: 0 auto 30px; } }
    .page .buy-box .buy-block a {
      width: 100%;
      height: 100%; }
    .page .buy-box .buy-block .buy-for {
      font-size: 20px;
      font-size: 2rem;
      line-height: 1.6em;
      color: #fff;
      font-weight: bold;
      background-color: #0d6cb5;
      padding: 14px 0 20px; }
      @media (max-width: 767px) {
        .page .buy-box .buy-block .buy-for {
          font-size: 16px;
          font-size: 1.6rem;
          padding: 10px 0 12px; } }
    .page .buy-box .buy-block .buy-content {
      font-size: 18px;
      font-size: 1.8rem;
      color: #717071;
      padding: 16px 0 22px; }
      @media (max-width: 767px) {
        .page .buy-box .buy-block .buy-content {
          font-size: 14px;
          font-size: 1.4rem; } }
      .page .buy-box .buy-block .buy-content .buy-small {
        font-size: 14px;
        font-size: 1.4rem; }
        @media (max-width: 767px) {
          .page .buy-box .buy-block .buy-content .buy-small {
            font-size: 12px;
            font-size: 1.2rem; } }
      .page .buy-box .buy-block .buy-content.elenaonline-logo img {
        width: 83.33% !important;
        height: auto; }
      .page .buy-box .buy-block .buy-content.elenaonline-logo .buy-small {
        padding-bottom: 10px; }
      .page .buy-box .buy-block .buy-content.elenaonline-logo .last-txt {
        padding-top: 12px; }
      .page .buy-box .buy-block .buy-content.elena-logo img {
        width: 43.66% !important;
        height: auto; }
      .page .buy-box .buy-block .buy-content.elena-logo .buy-small {
        padding-bottom: 5px; }
      .page .buy-box .buy-block .buy-content.elena-logo .last-txt {
        padding-top: 8px; }
      .page .buy-box .buy-block .buy-content.gucf-logo img {
        width: 38% !important;
        height: auto;
        padding-top: 10px; }
      .page .buy-box .buy-block .buy-content.gucf-logo .last-txt {
        padding-top: 16px; }

@media (max-width: 767px) {
  .page.product, .page.factory, .page.company, .page.contact, .page.link, .page.info, .page.sitemap {
    padding-top: 85px; }
    .page.product h1, .page.factory h1, .page.company h1, .page.contact h1, .page.link h1, .page.info h1, .page.sitemap h1 {
      font-size: 22px;
      font-size: 2.2rem;
      margin: 40px auto 45px; }
  .page.product, .page.info, .page.factory {
    margin-bottom: 50px; }
  .page.factory h1, .page.contact h1 {
    margin: 40px auto 25px; }
  .page .page-top ul.bread {
    padding-left: 10px;
    padding-top: 10px; }
    .page .page-top ul.bread li {
      display: block;
      font-size: 10px;
      font-size: 1rem;
      line-height: 1.6em;
      letter-spacing: 0; }
      .page .page-top ul.bread li:not(:last-child) {
        margin-right: 15px; }
    .page .page-top ul.bread a {
      display: inline-block; }
      .page .page-top ul.bread a:before {
        content: "";
        top: 6px;
        right: -12px;
        width: 6px;
        height: 6px; } }
@media (max-width: 360px) {
  .page.product h1, .page.factory h1, .page.company h1, .page.company h1, .page.link h1, .page.info h1 {
    font-size: 18px;
    font-size: 1.8rem; } }
/* CSS Document */
/* 製品ページ
---------------------------------------------------------------*/
.page.product .page-top h1 img.logo {
  width: 200px;
  display: block;
  margin: 15px auto -30px; }
.page.product .page-top p {
  text-align: center;
  font-size: 14px;
  font-size: 1.4rem; }
  .page.product .page-top p.block {
    font-size: 14px;
    font-size: 1.4rem;
    width: 850px;
    display: block;
    margin: 0 auto 100px; }
    .page.product .page-top p.block b {
      font-size: 18px;
      font-size: 1.8rem;
      color: #0d6cb5;
      display: block;
      margin-bottom: 10px; }
    .page.product .page-top p.block span {
      font-size: 12px;
      font-size: 1.2rem; }
.page.product .page-top .top-img {
  margin-top: 70px; }
  .page.product .page-top .top-img .img-block.img-large {
    max-width: 1048px;
    height: 480px;
    margin: 0 auto; }
    .page.product .page-top .top-img .img-block.img-large .img-flame {
      width: 100%;
      height: 480px;
      background-repeat: no-repeat;
      background-position: center;
      background-size: cover; }

.page.product .inner h1 {
  color: #717071;
  font-size: 40px;
  font-size: 4rem;
  font-weight: normal;
  text-align: center; }
  .page.product .inner h1.half {
    font-size: 5.0rem; }
.page.product .inner h2 {
  color: #717071;
  font-size: 40px;
  font-size: 4rem;
  font-weight: 500;
  text-align: center;
  margin: 10px 0 20px; }
.page.product .inner h3 {
  color: #717071;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 500;
  text-align: center;
  margin: 14px 0;
  padding-left: 8px; }
.page.product .inner h4 {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: 500;
  position: relative;
  padding-left: 22px;
  text-align: center;
  margin: 12px 0; }
  .page.product .inner h4::before {
    content: '';
    width: 14px;
    position: absolute;
    top: 13px;
    left: 0px; }
.page.product .inner h5 {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  color: #0d6cb5;
  margin: 12px 0;
  text-align: center; }
.page.product .inner h6 {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  margin: 12px 0;
  text-align: center; }

.page.product .product-list h2 {
  font-size: 40px;
  font-size: 4rem;
  text-align: center;
  font-weight: normal;
  margin: 100px auto 75px;
  color: #717071; }
  .page.product .product-list h2.tenpao {
    font-size: 24px;
    font-size: 2.4rem;
    margin: 80px auto 25px; }
.page.product .product-list dl {
  display: flex;
  flex-wrap: wrap;
  max-width: 1048px;
  width: 100%;
  margin: 0 auto 75px; }
  .page.product .product-list dl dt {
    width: 14%;
    color: #0d6cb5;
    text-align: end; }
    .page.product .product-list dl dt::after {
      content: ':';
      width: 100%;
      height: 100%;
      color: #717071;
      margin-left: 4px; }
  .page.product .product-list dl dd {
    width: 35%;
    margin-left: 4px; }
.page.product .product-list .product-img {
  padding: 75px 0 25px;
  max-width: 1048px;
  width: 100%;
  margin: 0 auto; }
  .page.product .product-list .product-img a {
    display: inline-block; }
  .page.product .product-list .product-img p.category {
    text-align: left;
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 15px;
    color: #717071;
    transition: all 0.3s; }
    .page.product .product-list .product-img p.category span.arrow {
      display: inline-block;
      width: 18px;
      height: 18px;
      background: #B71D25;
      position: relative;
      margin-right: 10px;
      top: 3px; }
      .page.product .product-list .product-img p.category span.arrow img {
        height: 10px;
        position: absolute;
        left: 5px;
        top: 4px; }
  .page.product .product-list .product-img .img-block.img-large {
    height: 480px;
    width: 1048px; }
    .page.product .product-list .product-img .img-block.img-large .img-flame {
      width: 100%;
      height: 480px;
      border: 1px solid #717071;
      background-repeat: no-repeat;
      background-position: center;
      background-size: cover; }
  .page.product .product-list .product-img__flex {
    display: flex;
    flex-wrap: wrap;
    gap: 20px; }
    .page.product .product-list .product-img__flex .img-block {
      vertical-align: top;
      display: inline-block;
      width: calc((100% / 4) - 15px); }
      .page.product .product-list .product-img__flex .img-block.no-margin {
        margin: 0; }
      .page.product .product-list .product-img__flex .img-block .img-flame {
        width: 100%;
        height: 230px;
        border: 1px solid #717071;
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        display: block;
        transition: all 0.3s; }
      .page.product .product-list .product-img__flex .img-block p {
        display: block;
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.4em;
        margin: 5px 0 20px;
        color: #717071; }
  .page.product .product-list .product-img.tenpao {
    padding: 80px 0 50px; }
    .page.product .product-list .product-img.tenpao .img-block p {
      text-align: center;
      font-size: 18px;
      font-size: 1.8rem;
      margin: 10px 0 30px; }
  .page.product .product-list .product-img a:hover {
    opacity: 1; }
    .page.product .product-list .product-img a:hover p.category {
      opacity: 0.8;
      text-decoration: underline; }
    .page.product .product-list .product-img a:hover .img-block .img-flame {
      border: 1px solid rgba(113, 112, 113, 0.5); }
.page.product .product-list img.chart {
  width: 100%; }

@media screen and (min-width: 767px) and (max-width: 1200px) {
  .page.product .page-top h1, .page.product .page-top P, .page.product .page-top .top-img {
    padding: 0 2%; }
  .page.product .page-top p.block {
    width: 100%; }

  .page.product .product-list .product-img {
    padding: 75px 2% 25px; }
    .page.product .product-list .product-img .img-block.img-large {
      width: 100%;
      margin: 0 auto; } }
@media (max-width: 767px) {
  .page.product {
    padding-top: 65px; }

  .page.product .page-top h1, .page.product .page-top P, .page.product .page-top .top-img {
    padding: 0 6%; }
  .page.product .page-top p.block {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.6em;
    width: auto;
    margin: 0 auto 50px; }
    .page.product .page-top p.block b {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.7em; }
    .page.product .page-top p.block span {
      font-size: 11px;
      font-size: 1.1rem; }
  .page.product .page-top p small {
    font-size: 12px;
    font-size: 1.2rem;
    padding: 0 6%; }
  .page.product .page-top .top-img {
    margin-top: 40px; }
    .page.product .page-top .top-img .img-block.img-large {
      height: 246px;
      width: 100%; }
      .page.product .page-top .top-img .img-block.img-large .img-flame {
        width: 100%;
        height: 246px;
        background-repeat: no-repeat;
        background-position: center; }

  .page.product .inner h1 {
    font-size: 2.2rem !important; }
    .page.product .inner h1.half {
      font-size: 3.2rem !important; }

  .page.product .product-list h2, .page.product .product-list dl {
    padding: 0 6%; }
  .page.product .product-list h2 {
    font-size: 22px;
    font-size: 2.2rem;
    margin: 40px auto 35px;
    color: #717071; }
    .page.product .product-list h2.tenpao {
      font-size: 20px;
      font-size: 2rem;
      margin: 50px auto 25px; }
  .page.product .product-list dl {
    margin-bottom: 40px; }
    .page.product .product-list dl dt {
      width: 38%; }
    .page.product .product-list dl dd {
      width: 50%; }
  .page.product .product-list .product-img {
    padding: 40px 6% 10px; }
    .page.product .product-list .product-img p.category {
      text-align: left;
      font-size: 16px;
      font-size: 1.6rem;
      margin-bottom: 15px;
      transition: all 0.3s; }
      .page.product .product-list .product-img p.category span.arrow {
        display: inline-block;
        width: 18px;
        height: 18px;
        position: relative;
        margin-right: 10px;
        top: 3px; }
        .page.product .product-list .product-img p.category span.arrow img {
          height: 10px;
          position: absolute;
          left: 5px;
          top: 4px; }
    .page.product .product-list .product-img .img-block.img-large {
      height: 246px;
      width: 100%; }
      .page.product .product-list .product-img .img-block.img-large .img-flame {
        width: 100%;
        height: 246px;
        border: 1px solid #717071;
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover; }
    .page.product .product-list .product-img__flex {
      gap: 10px; }
      .page.product .product-list .product-img__flex .img-block {
        width: calc((100% / 2) - 5px); }
        .page.product .product-list .product-img__flex .img-block .img-flame {
          width: 100%;
          height: 150px; }
        .page.product .product-list .product-img__flex .img-block p {
          font-size: 12px;
          font-size: 1.2rem;
          margin: 3px 0 15px; }
    .page.product .product-list .product-img.tenpao {
      padding: 40px 0 20px; }
      .page.product .product-list .product-img.tenpao .img-block p {
        font-size: 14px;
        font-size: 1.4rem;
        margin: 5px 0 20px; } }
@media (max-width: 360px) {
  .page.product .product-list h2 {
    font-size: 18px;
    font-size: 1.8rem; }
  .page.product .product-list .product-img {
    padding: 30px 0 10px; }
    .page.product .product-list .product-img a .img-block {
      width: 125px; }
      .page.product .product-list .product-img a .img-block .img-flame {
        width: 125px;
        height: 125px; }
      .page.product .product-list .product-img a .img-block p {
        font-size: 11px;
        font-size: 1.1rem; } }
.page.product .product-description {
  padding: 75px 0 5px; }
  .page.product .product-description .product-img {
    padding: 0 0 35px; }
    .page.product .product-description .product-img .name {
      margin-right: 35px;
      min-width: 180px;
      color: #FFF;
      text-align: center;
      display: inline-block;
      vertical-align: top;
      height: 230px;
      background: #009ac1;
      overflow: hidden; }
      .page.product .product-description .product-img .name h2 {
        font-weight: 500;
        font-size: 40px;
        font-size: 4rem;
        background: #0d6cb5;
        padding: 50px 0; }
        .page.product .product-description .product-img .name h2.deformation-of {
          font-size: 34px;
          font-size: 3.4rem;
          padding: 50px 20px;
          letter-spacing: -0.025em; }
      .page.product .product-description .product-img .name p {
        font-family: "Roboto", sans-serif;
        background: #009ac1;
        font-weight: 500;
        padding: 20px 0;
        line-height: 1.65em;
        font-size: 20px;
        font-size: 2rem; }
        .page.product .product-description .product-img .name p small {
          font-size: 14px;
          font-size: 1.4rem;
          display: block; }
    .page.product .product-description .product-img.product-img__flex {
      display: flex;
      gap: 20px;
      justify-content: center; }
      .page.product .product-description .product-img.product-img__flex .img-flame {
        width: 230px;
        height: 230px;
        border: 1px solid #717071;
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        display: inline-block; }
  .page.product .product-description img.img-plug {
    margin: 10px auto 20px;
    display: block; }
  .page.product .product-description .product-specification {
    padding: 20px 60px 40px;
    background: #FFF;
    margin-bottom: 70px; }
    .page.product .product-description .product-specification .product-img {
      padding: 0 0 35px;
      margin: 0 auto !important; }
    .page.product .product-description .product-specification table {
      width: 100%; }
      .page.product .product-description .product-specification table th, .page.product .product-description .product-specification table td {
        font-size: 14px;
        font-size: 1.4rem;
        font-weight: normal;
        text-align: center;
        border: #dcdcdc 1px solid;
        padding: 4px 0 5px;
        min-width: 110px; }
      .page.product .product-description .product-specification table .c-blue {
        color: #0d6cb5; }
      .page.product .product-description .product-specification table .t-left {
        text-align: left;
        padding-left: 20px; }
      .page.product .product-description .product-specification table tr.b-blue, .page.product .product-description .product-specification table th.b-blue, .page.product .product-description .product-specification table td.b-blue {
        background: rgba(13, 108, 181, 0.1); }
    .page.product .product-description .product-specification table th, .page.product .product-description .product-specification p.sub-text {
      font-size: 14px;
      font-size: 1.4rem; }
      .page.product .product-description .product-specification table th span, .page.product .product-description .product-specification p.sub-text span {
        color: #ff9837; }

@media only screen and (min-width: 767px) and (max-width: 1200px) {
  .page.product .product-description {
    padding: 75px 2%; } }
@media (max-width: 767px) {
  .page.product .product-description {
    padding: 8% 6%; }
    .page.product .product-description .product-img {
      padding: 0 0 25px; }
      .page.product .product-description .product-img .name {
        margin-right: 0;
        margin-bottom: 25px;
        width: 100%;
        min-width: auto;
        display: block;
        height: auto; }
        .page.product .product-description .product-img .name h2 {
          font-weight: 500;
          font-size: 20px;
          font-size: 2rem;
          background: #0d6cb5;
          padding: 10px 0 13px; }
          .page.product .product-description .product-img .name h2.deformation-of {
            font-size: 20px;
            font-size: 2rem;
            padding: 10px 0 13px; }
        .page.product .product-description .product-img .name p {
          padding: 5px 0;
          font-size: 15px;
          font-size: 1.5rem; }
          .page.product .product-description .product-img .name p small {
            font-size: 12px;
            font-size: 1.2rem;
            display: inline-block;
            margin-left: 10px; }
      .page.product .product-description .product-img.product-img__flex {
        gap: 10px;
        flex-wrap: wrap; }
        .page.product .product-description .product-img.product-img__flex .img-flame {
          width: 150px;
          height: 150px; }
    .page.product .product-description img.img-plug {
      width: 100%; }
    .page.product .product-description .product-specification {
      padding: 1% 5% 5%;
      margin-bottom: 30px;
      overflow-x: auto;
      -webkit-overflow-scrolling: touch; }
      .page.product .product-description .product-specification::-webkit-scrollbar {
        height: 7px; }
      .page.product .product-description .product-specification::-webkit-scrollbar-track {
        border-radius: 7px;
        background: #CCC; }
      .page.product .product-description .product-specification::-webkit-scrollbar-thumb {
        border-radius: 7px;
        background: #B71D25; }
      .page.product .product-description .product-specification table {
        background: #FFF;
        margin-top: -5px;
        width: 450px; }
        .page.product .product-description .product-specification table th, .page.product .product-description .product-specification table td {
          font-size: 10px;
          font-size: 1rem;
          padding: 3px 0 4px;
          letter-spacing: -0.025em;
          min-width: auto; }
        .page.product .product-description .product-specification table td img {
          width: 55px; }
        .page.product .product-description .product-specification table .t-left {
          padding-left: 5px; }
      .page.product .product-description .product-specification p.sub-text {
        font-size: 11px;
        font-size: 1.1rem;
        margin-top: 5px; } }
@media (max-width: 360px) {
  .page.product .product-description .product-img .img-flame {
    width: 125px;
    height: 125px;
    margin: 0 10px 0 0; }
  .page.product .product-description .product-specification p.sub-text {
    font-size: 10px;
    font-size: 1rem; } }
.page.product .product-detail {
  padding: 90px 0 80px;
  /** =======================
   * Contenedor Principal
   ===========================*/ }
  .page.product .product-detail h2 {
    font-size: 40px;
    font-size: 4rem;
    text-align: center;
    font-weight: normal;
    margin: 0 auto;
    color: #717071; }
  .page.product .product-detail .product-number {
    text-align: center;
    color: #0d6cb5;
    margin: 25px auto;
    font-size: 14px;
    font-size: 1.4rem; }
  .page.product .product-detail .accordion {
    width: 100%;
    margin: 0; }
  .page.product .product-detail .accordion li {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    .page.product .product-detail .accordion li:not(:last-child) {
      border-bottom: 18px solid #FFF; }
    .page.product .product-detail .accordion li .link {
      cursor: pointer;
      display: block;
      position: relative;
      -webkit-transition: all 0.4s ease;
      -o-transition: all 0.4s ease;
      transition: all 0.4s ease; }
      .page.product .product-detail .accordion li .link:hover h3 {
        background: #d6d6d6; }
      .page.product .product-detail .accordion li .link h3 {
        -webkit-transition: all 0.4s ease;
        -o-transition: all 0.4s ease;
        transition: all 0.4s ease;
        font-size: 24px;
        font-size: 2.4rem;
        color: #0d6cb5;
        font-weight: normal;
        background: #eeefef;
        height: 75px;
        padding: 22px 0 0;
        text-align: center;
        position: relative; }
        .page.product .product-detail .accordion li .link h3:before {
          content: "";
          width: 21px;
          height: 21px;
          position: absolute;
          right: 25px;
          top: 28px;
          background: url(../img/common/charm/arrow-triangle.svg);
          background-repeat: no-repeat;
          background-size: auto 13px;
          background-position: center;
          display: block;
          transition: all 0.4s;
          z-index: 1;
          -webkit-transform: rotate(90deg);
          transform: rotate(90deg); }
        .page.product .product-detail .accordion li .link h3:after {
          content: "";
          width: 21px;
          height: 21px;
          position: absolute;
          right: 25px;
          top: 28px;
          background: #0d6cb5;
          display: block; }
        .page.product .product-detail .accordion li .link h3.pdf {
          height: auto;
          padding: 0; }
          .page.product .product-detail .accordion li .link h3.pdf a {
            height: 75px;
            padding: 22px 0 0;
            color: #0d6cb5; }
            .page.product .product-detail .accordion li .link h3.pdf a:hover {
              opacity: 1; }
          .page.product .product-detail .accordion li .link h3.pdf:before {
            content: "";
            width: 28px;
            height: 32px;
            position: absolute;
            right: 22px;
            top: 23px;
            background: url(../img/common/charm/icon-pdf.svg);
            background-repeat: no-repeat;
            background-size: auto 100%;
            background-position: center;
            display: block;
            -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
            z-index: 0; }
          .page.product .product-detail .accordion li .link h3.pdf:after {
            content: "";
            display: none; }
    .page.product .product-detail .accordion li.open .link h3 {
      background: #d6d6d6; }
      .page.product .product-detail .accordion li.open .link h3:before {
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg); }
      .page.product .product-detail .accordion li.open .link h3.pdf:before {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg); }
  .page.product .product-detail .accordion li .sub-tab {
    display: none; }
  .page.product .product-detail .accordion li.default .sub-tab {
    display: block; }
  .page.product .product-detail .sub-tab {
    border: 1px solid;
    border-color: transparent #dcdcdc #dcdcdc;
    padding: 35px 60px 40px;
    font-size: 14px;
    font-size: 1.4rem; }
    .page.product .product-detail .sub-tab p {
      line-height: 1.7em; }
    .page.product .product-detail .sub-tab img {
      margin: 0 auto 30px;
      display: block; }
    .page.product .product-detail .sub-tab .box-block {
      margin-top: 20px;
      border: #dcdcdc 1px solid;
      padding: 20px 25px; }
      .page.product .product-detail .sub-tab .box-block dl {
        padding: 0;
        margin: 0; }
        .page.product .product-detail .sub-tab .box-block dl dd {
          margin: 0 0 5px 0;
          line-height: 1.3em; }
        .page.product .product-detail .sub-tab .box-block dl dt {
          font-size: 18px;
          font-size: 1.8rem;
          font-weight: 500;
          margin: 0 0 8px 0; }
    .page.product .product-detail .sub-tab ol {
      padding-left: 15px; }
      .page.product .product-detail .sub-tab ol li {
        padding-left: 5px;
        list-style: decimal;
        display: list-item;
        line-height: 1.6em;
        margin-bottom: 10px;
        border-bottom: none !important; }
        .page.product .product-detail .sub-tab ol li:not(:last-child) {
          margin-bottom: 20px; }
        .page.product .product-detail .sub-tab ol li b {
          display: block;
          line-height: 1.7em; }
        .page.product .product-detail .sub-tab ol li span.deformation-01 {
          display: block;
          position: relative;
          margin: 16px 0 0; }
          .page.product .product-detail .sub-tab ol li span.deformation-01:before {
            content: "1.";
            position: absolute;
            left: -20px; }
    .page.product .product-detail .sub-tab table {
      width: 100%;
      margin: 10px 0; }
      .page.product .product-detail .sub-tab table th, .page.product .product-detail .sub-tab table td {
        font-weight: normal;
        text-align: center;
        border: #dcdcdc 1px solid;
        padding: 3px 0 4px;
        min-width: 100px; }
      .page.product .product-detail .sub-tab table tr.b-blue {
        background: rgba(13, 108, 181, 0.1); }

@media (max-width: 767px) {
  .page.product .product-detail {
    padding: 45px 0 40px;
    /** =======================
     * Contenedor Principal
     ===========================*/ }
    .page.product .product-detail h2 {
      font-size: 22px;
      font-size: 2.2rem; }
    .page.product .product-detail .product-number {
      margin: 8px auto 22px;
      font-size: 10px;
      font-size: 1rem; }
    .page.product .product-detail .accordion li:not(:last-child) {
      border-bottom: 14px solid #FFF; }
    .page.product .product-detail .accordion li .link h3 {
      font-size: 18px;
      font-size: 1.8rem;
      height: 56px;
      padding: 16px 0 0; }
      .page.product .product-detail .accordion li .link h3:before {
        content: "";
        width: 18px;
        height: 18px;
        right: 20px;
        top: 19px;
        background-size: auto 10px; }
      .page.product .product-detail .accordion li .link h3:after {
        content: "";
        width: 18px;
        height: 18px;
        right: 20px;
        top: 19px; }
      .page.product .product-detail .accordion li .link h3.pdf a {
        height: 60px;
        padding: 18px 0 0; }
      .page.product .product-detail .accordion li .link h3.pdf:before {
        content: "";
        width: 24px;
        height: 28px;
        right: 17px;
        top: 18px; }
    .page.product .product-detail .sub-tab {
      padding: 5%;
      font-size: 12px;
      font-size: 1.2rem; }
      .page.product .product-detail .sub-tab p {
        line-height: 1.7em; }
      .page.product .product-detail .sub-tab img {
        margin: 0 auto 20px;
        width: 90%; }
      .page.product .product-detail .sub-tab .box-block {
        margin-top: 15px;
        padding: 3% 5% 3% 6%; }
        .page.product .product-detail .sub-tab .box-block dl dt {
          font-size: 14px;
          font-size: 1.4rem;
          margin: 0 0 5px 0; }
      .page.product .product-detail .sub-tab ol {
        padding-left: 10px; }
        .page.product .product-detail .sub-tab ol li {
          padding-left: 5px;
          margin-bottom: 5px; }
          .page.product .product-detail .sub-tab ol li:not(:last-child) {
            margin-bottom: 15px; }
          .page.product .product-detail .sub-tab ol li b {
            line-height: 1.6em; }
          .page.product .product-detail .sub-tab ol li span.deformation-01 {
            margin: 16px 0 0; }
            .page.product .product-detail .sub-tab ol li span.deformation-01:before {
              left: -15px; }
      .page.product .product-detail .sub-tab table {
        margin: 5px 0; }
        .page.product .product-detail .sub-tab table th, .page.product .product-detail .sub-tab table td {
          padding: 2px 0 3px;
          min-width: 15px;
          font-size: 10px;
          font-size: 1rem; } }
.page.product .contact-btn {
  padding: 50px 2%; }
  .page.product .contact-btn p {
    max-width: 1048px;
    width: 100%;
    margin: 0 auto; }
    .page.product .contact-btn p a {
      background: url(../img/page-product/img-contact-btn.jpg) #f3b522;
      background-repeat: no-repeat;
      background-position: left top;
      background-size: auto 100%;
      color: #292929;
      font-size: 28px;
      font-size: 2.8rem;
      text-align: center;
      padding: 50px 0 52px 100px;
      font-weight: 500; }
      .page.product .contact-btn p a:hover {
        letter-spacing: 0.05em;
        background: url(../img/page-product/img-contact-btn.jpg) #ff9837;
        background-repeat: no-repeat;
        　background-position: left top;
        　background-size: auto 100%;
        opacity: 1; }
      .page.product .contact-btn p a span.arrow {
        display: inline-block;
        width: 22px;
        height: 22px;
        background: #B71D25;
        position: relative;
        margin-left: 20px;
        transition: all 0.3s; }
        .page.product .contact-btn p a span.arrow img {
          height: 15px;
          position: absolute;
          left: 5px;
          top: 3px; }
      .page.product .contact-btn p a:hover span.arrow {
        margin-left: 25px; }

@media (max-width: 767px) {
  .page.product .contact-btn {
    padding: 30px 6%; }
    .page.product .contact-btn p a {
      height: 70px;
      background: url(../img/page-product/img-contact-btn.jpg) #f3b522;
      background-repeat: no-repeat;
      background-position: -10px top;
      background-size: auto 100%;
      font-size: 13px;
      font-size: 1.3rem;
      text-align: left;
      padding: 15px 0 15px 45%;
      position: relative; }
      .page.product .contact-btn p a:hover {
        letter-spacing: 0.025em;
        background-position: -10px top;
        background-size: auto 100%; }
      .page.product .contact-btn p a span.arrow {
        width: 18px;
        height: 18px;
        margin-left: 10px;
        transition: all 0.3s;
        position: relative;
        top: -6px; }
        .page.product .contact-btn p a span.arrow img {
          height: 10px;
          left: 5px;
          top: 4px; }
      .page.product .contact-btn p a:hover span.arrow {
        margin-left: 10px; } }
/* CSS Document */
/*ページトップ*/
.aoc {
  text-align: center;
  margin: 0 auto; }
  .aoc .block {
    line-height: 2.6em;
    margin-bottom: 75px !important; }
  .aoc h3 {
    font-size: 24px;
    font-size: 2.4rem;
    text-align: center; }
  .aoc .bread {
    text-align: left; }
  .aoc .cautionary-note {
    text-align: left;
    max-width: 1048px;
    margin-top: 15px; }

.page.product.aoc .page-top h1 {
  margin: 75px 0; }
.page.product.aoc .page-top p {
  font-size: 14px;
  font-size: 1.4rem; }
.page.product.aoc .page-top .aoc-reed p {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 0 5px;
  padding: 0;
  text-align: center; }

.page.product .product-list.aoc {
  /*グレー背景*/ }
  .page.product .product-list.aoc:not(.no-margin) {
    margin-top: 70px; }
  .page.product .product-list.aoc h2 {
    line-height: 1.6em;
    margin: 0 0 40px; }
    .page.product .product-list.aoc h2.second-h2 {
      margin-top: 75px; }
    .page.product .product-list.aoc h2.dp__h2 {
      margin-bottom: 60px; }
  .page.product .product-list.aoc h3 {
    margin: 40px; }
  .page.product .product-list.aoc .aoc-usb {
    margin-bottom: 0; }
  .page.product .product-list.aoc .aoc-ul-mb {
    margin-bottom: 40px; }
  .page.product .product-list.aoc .aoc-reed {
    margin-bottom: 40px; }
    .page.product .product-list.aoc .aoc-reed p {
      font-size: 14px;
      font-size: 1.4rem;
      padding: 0;
      text-align: center;
      line-height: 2.6; }
      .page.product .product-list.aoc .aoc-reed p .tablet_only {
        display: none; }
  .page.product .product-list.aoc .aoc-image {
    margin-bottom: 4px; }
  .page.product .product-list.aoc .title {
    margin: 70px 0; }
  .page.product .product-list.aoc .product-img {
    margin: 0 auto;
    padding: 75px 0 0;
    text-align: left;
    max-width: 1200px; }
    .page.product .product-list.aoc .product-img.optical-connector {
      padding-bottom: 70px; }
  .page.product .product-list.aoc .img-block {
    padding: 0;
    width: 100%;
    height: 100%; }
    .page.product .product-list.aoc .img-block .img-flame {
      width: 100%;
      height: 200px;
      background-repeat: no-repeat;
      background-size: cover; }
      .page.product .product-list.aoc .img-block .img-flame.img-long {
        max-width: 1000px;
        width: 100%;
        margin: 0 auto;
        border: 1px solid #717071;
        background-color: #fff;
        background-position: center;
        background-size: 60%; }
    .page.product .product-list.aoc .img-block p {
      margin: 15px auto 0;
      padding: 0;
      text-align: left;
      width: fit-content; }
  .page.product .product-list.aoc .img-block__flex {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 30px; }
    .page.product .product-list.aoc .img-block__flex .img-block {
      padding: 0;
      width: 200px;
      height: 260px;
      border: 1px solid #717071;
      background-color: #fff; }
      .page.product .product-list.aoc .img-block__flex .img-block .img-flame {
        height: 185px;
        width: 90%;
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center;
        margin: 4% auto; }
    .page.product .product-list.aoc .img-block__flex p {
      text-align: center;
      color: #fff;
      margin-bottom: 15px;
      background-color: #717071;
      padding: 15px;
      margin: 0;
      width: 100%; }
    .page.product .product-list.aoc .img-block__flex.dp__img .img-block.height p {
      height: 88px; }
    .page.product .product-list.aoc .img-block__flex.dp__img .img-block .img-flame {
      height: 155px; }
    .page.product .product-list.aoc .img-block__flex.normal {
      height: 100%; }
      .page.product .product-list.aoc .img-block__flex.normal .img-block {
        height: 100%; }
        .page.product .product-list.aoc .img-block__flex.normal .img-block .img-flame {
          margin: 0;
          background-size: cover;
          width: 100%; }
  .page.product .product-list.aoc .aoc-text {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 0 40px;
    padding: 0;
    text-align: center; }
  .page.product .product-list.aoc .fontex-table {
    margin-bottom: 60px;
    background-color: #fff; }
  .page.product .product-list.aoc .aoc-only {
    margin: 0 auto; }
  .page.product .product-list.aoc .product-description {
    background: none;
    padding: 0; }
    .page.product .product-list.aoc .product-description h2 {
      margin: 0;
      padding: 75px 0;
      line-height: 1.6em; }
    .page.product .product-list.aoc .product-description h3 {
      margin: 40px 0; }
    .page.product .product-list.aoc .product-description .aoc-usb {
      margin-bottom: 0; }
    .page.product .product-list.aoc .product-description .aoc-text {
      font-size: 14px;
      font-size: 1.4rem;
      margin: 0 0 40px;
      padding: 0;
      text-align: center; }
    .page.product .product-list.aoc .product-description .aoc-image {
      margin-bottom: 40px; }
    .page.product .product-list.aoc .product-description .product-img {
      margin: 0;
      padding: 0;
      text-align: left; }
    .page.product .product-list.aoc .product-description .img-block {
      padding: 0; }
      .page.product .product-list.aoc .product-description .img-block p {
        margin: 15px 0 0;
        padding: 0;
        text-align: left; }
      .page.product .product-list.aoc .product-description .img-block .SDI-table {
        font-size: 14px;
        font-size: 1.4rem; }
        .page.product .product-list.aoc .product-description .img-block .SDI-table td {
          vertical-align: top; }
        .page.product .product-list.aoc .product-description .img-block .SDI-table .SDI-list {
          padding-left: 20px; }
    .page.product .product-list.aoc .product-description .product-specification {
      padding: 40px 60px;
      max-width: 1048px;
      margin: 0 auto; }
      .page.product .product-list.aoc .product-description .product-specification.table-gray {
        background-color: #eeefef; }
      .page.product .product-list.aoc .product-description .product-specification .aoc-table td {
        min-width: 95px; }
    .page.product .product-list.aoc .product-description .aoc-table-text {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.6em;
      padding: 0;
      text-align: left;
      padding-bottom: 80px; }
    .page.product .product-list.aoc .product-description .fontex-table-gray {
      padding-bottom: 60px; }
    .page.product .product-list.aoc .product-description .aoc-only {
      margin: 0 auto; }

/*AOC Responsive*/
@media only screen and (min-width: 767px) and (max-width: 1200px) {
  .page.product .product-list.aoc .product-img {
    padding: 75px 2% 0; }
    .page.product .product-list.aoc .product-img .second-h2 {
      margin-top: 60px; }
  .page.product .product-list.aoc .aoc-reed p .tablet_only {
    display: block; }
  .page.product .product-list.aoc .aoc-reed p .tablet_none {
    display: none; }
  .page.product .product-list.aoc .img-block__flex .img-block {
    width: 160px;
    height: 100%; }
    .page.product .product-list.aoc .img-block__flex .img-block p {
      padding: 10px; }
    .page.product .product-list.aoc .img-block__flex .img-block .img-flame {
      height: 155px; }
  .page.product .product-list.aoc .img-block__flex.dp__img .img-block.height p {
    height: 73px; }
  .page.product .product-list.aoc .aoc-btn-block .aoc-btn {
    height: 65px; }
    .page.product .product-list.aoc .aoc-btn-block .aoc-btn a::before {
      top: 23px; }
  .page.product .cautionary-note {
    padding: 0 2%; } }
@media (max-width: 767px) {
  /*	ページトップ*/
  .page.product.aoc .page-top {
    margin-top: 0; }
    .page.product.aoc .page-top h1 {
      margin: 40px 0;
      line-height: 1.5em; }
    .page.product.aoc .page-top p {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.6em; }
    .page.product.aoc .page-top .aoc-ul li {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.6em;
      margin-bottom: 10px;
      letter-spacing: -0.025em; }

  /*	白背景*/
  .page.product .product-list.aoc {
    /*h2(見出し)*/
    /*リード文*/
    /*テキスト*/
    /*h3(構造)*/
    /*画像*/
    /*ボタン*/
    /*表*/ }
    .page.product .product-list.aoc:not(.no-margin) {
      margin-top: 30px; }
    .page.product .product-list.aoc h2 {
      font-size: 20px;
      font-size: 2rem;
      margin-bottom: 10px; }
      .page.product .product-list.aoc h2.second-h2 {
        margin-top: 20px; }
      .page.product .product-list.aoc h2 .aoc-specification {
        font-size: 10px;
        font-size: 1rem; }
    .page.product .product-list.aoc .aoc-ul li {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.6em;
      margin-bottom: 10px;
      letter-spacing: -0.025em; }
    .page.product .product-list.aoc .title {
      margin: 20px 0; }
    .page.product .product-list.aoc .aoc-text {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.6em; }
    .page.product .product-list.aoc h3 {
      font-size: 16px;
      font-size: 1.6rem;
      margin: 20px 0; }
    .page.product .product-list.aoc .product-img {
      padding: 20px 6%; }
      .page.product .product-list.aoc .product-img h2 {
        padding: 20px 0; }
        .page.product .product-list.aoc .product-img h2.dp__h2 {
          margin-bottom: 20px; }
      .page.product .product-list.aoc .product-img p {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.6em; }
      .page.product .product-list.aoc .product-img.optical-connector {
        padding-bottom: 40px; }
      .page.product .product-list.aoc .product-img .img-block .img-flame.img-long {
        height: 80px; }
    .page.product .product-list.aoc .img-block__flex {
      gap: 15px; }
      .page.product .product-list.aoc .img-block__flex .img-block {
        width: 150px;
        height: 100%; }
        .page.product .product-list.aoc .img-block__flex .img-block .img-flame {
          height: 150px;
          background-position: center; }
      .page.product .product-list.aoc .img-block__flex.dp__img .img-block.height:last-child p {
        padding: 22%; }
      .page.product .product-list.aoc .img-block__flex.dp__img .img-block .img-flame {
        height: 155px; }
    .page.product .product-list.aoc .aoc-btn-block {
      padding: 45px 0 0; }
    .page.product .product-list.aoc .aoc-btn {
      width: 47%;
      height: 50px; }
      .page.product .product-list.aoc .aoc-btn:nth-of-type(-n+2) a::before {
        right: 5px;
        top: 17px;
        background-size: auto 9px; }
      .page.product .product-list.aoc .aoc-btn:nth-of-type(2) a::before {
        top: 21px; }
      .page.product .product-list.aoc .aoc-btn:nth-of-type(3) a::before {
        width: 21px;
        height: 24px;
        right: 16px;
        top: 15px; }
      .page.product .product-list.aoc .aoc-btn a {
        font-size: 18px;
        font-size: 1.8rem; }
    .page.product .product-list.aoc .btn-center {
      margin-top: 5.75%;
      width: 100%;
      height: 60px;
      order: 1; }
      .page.product .product-list.aoc .btn-center span {
        line-height: 1em; }
      .page.product .product-list.aoc .btn-center span:nth-child(2) {
        font-size: 12px;
        font-size: 1.2rem; }
    .page.product .product-list.aoc .product-specification {
      padding: 0; }
      .page.product .product-list.aoc .product-specification table {
        margin-top: 0;
        width: 100%; }

  .aoc .cautionary-note {
    padding: 0 6%; }

  .page.product .product-list.aoc .product-description {
    /*h2(見出し)*/
    /*h3(構造)*/
    /*テキスト*/
    /*リード文*/
    /*画像*/
    /*　↓　SDI　↓　*/
    /*仕様一覧注記*/
    /*表*/ }
    .page.product .product-list.aoc .product-description h2 {
      padding: 20px 0; }
      .page.product .product-list.aoc .product-description h2 .aoc-specification {
        font-size: 10px;
        font-size: 1rem; }
    .page.product .product-list.aoc .product-description h3 {
      font-size: 16px;
      font-size: 1.6rem;
      margin: 20px 0; }
    .page.product .product-list.aoc .product-description .aoc-text {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.6em; }
    .page.product .product-list.aoc .product-description .aoc-ul li {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.6em;
      margin-bottom: 10px;
      letter-spacing: -0.025em; }
    .page.product .product-list.aoc .product-description .img-block p {
      margin: 5px 0 20px; }
    .page.product .product-list.aoc .product-description .product-img .aoc-specification p {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.7em; }
    .page.product .product-list.aoc .product-description .product-img .aoc-specification table {
      margin: 0;
      width: 100%; }
    .page.product .product-list.aoc .product-description .aoc-table-text {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.7em; }
    .page.product .product-list.aoc .product-description .product-specification {
      margin-top: 40px;
      padding: 0%; }
      .page.product .product-list.aoc .product-description .product-specification table {
        margin-top: 0;
        width: 100%;
        margin-bottom: 40px; } }
/*ここまで*/
.page.product .product-list.left-text .inner.fadeinup p {
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 15px; }

.page.product .product-list.aoc .product-img {
  text-align: left; }

.page.product .product-description.aoc-white {
  background-color: #fff; }

.aoc-specification {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6em;
  margin-top: 20px; }

.img-block-aoc {
  vertical-align: top;
  display: inline-block;
  margin: 0 20px 0 0;
  width: 400px; }
  .img-block-aoc.no-margin {
    margin: 0; }

.img-flame-aoc {
  margin: 0 auto;
  width: 600px;
  height: 230px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  display: block;
  transition: all 0.3s; }

.aoc-btn-block {
  padding: 80px 0 0; }

.aoc-btn {
  width: 30%;
  height: 75px;
  background-color: #B71D25;
  margin: 0 auto; }
  .aoc-btn:nth-of-type(-n+3) a::before {
    content: "";
    width: 21px;
    height: 21px;
    position: absolute;
    right: 5px;
    top: 28px;
    background: url(../img/common/charm/arrow-triangle.svg);
    background-repeat: no-repeat;
    background-size: auto 13px;
    background-position: center;
    display: block;
    transition: all 0.4s;
    z-index: 1;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg); }
  .aoc-btn a {
    width: 100%;
    height: 100%;
    color: #fff;
    font-size: 24px;
    font-size: 2.4rem;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -webkit-justify-content: center;
    -webkit-align-items: center;
    justify-content: center;
    align-items: center;
    position: relative; }

.btn-center {
  width: 36%; }
  .btn-center span {
    text-align: center;
    line-height: 0.8em; }
  .btn-center span:nth-child(2) {
    font-size: 14px;
    font-size: 1.4rem;
    color: #f3b522;
    font-weight: bold; }

#accordion .sub-tab.aoc-accordion dd {
  margin-inline-start: 0; }

/*buttn*/
#specification-list {
  margin-top: -70px;
  padding-top: 70px; }

/*アコーディオン内画像*/
.page.product .product-detail .sub-tab .aoc-only {
  margin: 0 auto;
  display: auto; }
  .page.product .product-detail .sub-tab .aoc-only.pc_only {
    display: block; }
  .page.product .product-detail .sub-tab .aoc-only.sp_only {
    display: none; }

.page.product .product-detail.aoc-mobile-accordion {
  margin-bottom: 40px; }

/*AOC Responsive*/
@media (max-width: 767px) {
  .page.product .product-list.aoc .inner .aoc-image .aoc-only {
    max-width: 100%;
    height: auto; }
  .page.product .product-list.aoc .product-description .inner .aoc-image .aoc-only {
    max-width: 100%;
    height: auto; }

  /*資料変更注記*/
  .page.product .product-list.left-text .inner.fadeinup p {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.7em; }

  /*アコーディオン*/
  .page.product .product-detail .sub-tab .aoc-only.pc_only {
    display: none; }
  .page.product .product-detail .sub-tab .aoc-only.sp_only {
    display: block; } }
/*ここまで*/
@media (max-width: 320px) {
  .page.product .product-list.aoc .product-img .img-block {
    width: 134px; }
    .page.product .product-list.aoc .product-img .img-block:nth-of-type(even) {
      margin-right: 0; }
    .page.product .product-list.aoc .product-img .img-block .img-flame {
      width: 134px;
      height: 134px; } }
/* CSS Document */
/*ページトップ*/
.everpro {
  text-align: center;
  margin: 0 auto; }
  .everpro .block {
    line-height: 2.6em;
    margin-bottom: 40px; }
  .everpro h3 {
    font-size: 24px;
    font-size: 2.4rem;
    text-align: center; }
  .everpro .page-top .bread {
    text-align: left; }
  .everpro .page-top .top-img .img-block.img-large .img-flame {
    background-position: 0 -260px !important; }
  .everpro .page-top h1 {
    margin: 75px 0; }
  .everpro .page-top p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.6em;
    margin-bottom: 1em; }
  .everpro .cautionary-note {
    text-align: left;
    max-width: 1048px;
    margin-top: 15px; }

.product-list.everpro {
  /*グレー背景*/ }
  .product-list.everpro b {
    line-height: 1.6em;
    color: #0d6cb5;
    display: block;
    font-size: 22px;
    font-size: 2.2rem;
    margin-bottom: 30px; }
  .product-list.everpro:not(.no-margin) {
    margin-top: 40px; }
  .product-list.everpro h2 {
    line-height: 1.6em;
    margin: 0 0 40px; }
    .product-list.everpro h2.second-h2 {
      margin-top: 75px; }
    .product-list.everpro h2.dp__h2 {
      margin-bottom: 60px; }
  .product-list.everpro h3 {
    margin: 40px; }
  .product-list.everpro .title {
    margin: 70px 0; }
  .product-list.everpro .product-img {
    margin: 0 auto;
    padding: 0 !important;
    text-align: left;
    max-width: 1200px; }
    .product-list.everpro .product-img.optical-connector {
      padding-bottom: 70px; }
  .product-list.everpro .img-block {
    padding: 0;
    width: 100%;
    height: 100%; }
    .product-list.everpro .img-block .img-flame {
      width: 100%;
      height: 200px;
      background-repeat: no-repeat;
      background-size: cover; }
      .product-list.everpro .img-block .img-flame.img-long {
        max-width: 1000px;
        width: 100%;
        margin: 0 auto;
        border: 1px solid #717071; }
    .product-list.everpro .img-block p {
      margin: 15px auto 0;
      padding: 0;
      text-align: left;
      width: fit-content; }
  .product-list.everpro .img-block__flex {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 30px; }
    .product-list.everpro .img-block__flex .img-block {
      padding: 0;
      width: calc((100% / 2) - 15px);
      height: 418px;
      border: 1px solid #717071; }
    .product-list.everpro .img-block__flex p {
      text-align: center;
      color: #fff;
      margin-bottom: 15px;
      background-color: #717071;
      padding: 15px;
      margin: 0;
      width: 100%; }
    .product-list.everpro .img-block__flex .img-flame {
      background-position: center;
      height: 357px; }
  .product-list.everpro .aoc-btn__flex {
    display: flex;
    max-width: 1048px;
    gap: 10px; }
    .product-list.everpro .aoc-btn__flex .aoc-btn {
      width: calc((100% / 3) - 10px); }
      .product-list.everpro .aoc-btn__flex .aoc-btn a {
        font-size: 16px;
        font-size: 1.6rem; }
  .product-list.everpro .aoc-text {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 0 40px;
    padding: 0;
    text-align: center; }
  .product-list.everpro .fontex-table {
    margin-bottom: 60px;
    background-color: #fff; }
  .product-list.everpro .aoc-only {
    margin: 0 auto; }
  .product-list.everpro .product-description {
    background: none;
    padding: 0; }
    .product-list.everpro .product-description h2 {
      margin: 0;
      padding: 75px 0;
      line-height: 1.6em; }
    .product-list.everpro .product-description h3 {
      margin: 40px 0; }
    .product-list.everpro .product-description .aoc-usb {
      margin-bottom: 0; }
    .product-list.everpro .product-description .aoc-text {
      font-size: 14px;
      font-size: 1.4rem;
      margin: 0 0 40px;
      padding: 0;
      text-align: center; }
    .product-list.everpro .product-description .aoc-image {
      margin-bottom: 40px; }
    .product-list.everpro .product-description .product-img {
      margin: 0;
      padding: 0;
      text-align: left; }
    .product-list.everpro .product-description .img-block {
      padding: 0; }
      .product-list.everpro .product-description .img-block p {
        margin: 15px 0 0;
        padding: 0;
        text-align: left; }
      .product-list.everpro .product-description .img-block .SDI-table {
        font-size: 14px;
        font-size: 1.4rem; }
        .product-list.everpro .product-description .img-block .SDI-table td {
          vertical-align: top; }
        .product-list.everpro .product-description .img-block .SDI-table .SDI-list {
          padding-left: 20px; }
    .product-list.everpro .product-description .product-specification {
      padding: 40px 60px;
      max-width: 1048px;
      margin: 0 auto; }
      .product-list.everpro .product-description .product-specification.table-gray {
        background-color: #eeefef; }
      .product-list.everpro .product-description .product-specification .aoc-table td {
        min-width: 95px; }
    .product-list.everpro .product-description .aoc-table-text {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.6em;
      padding: 0;
      text-align: left;
      padding-bottom: 80px; }
    .product-list.everpro .product-description .fontex-table-gray {
      padding-bottom: 60px; }
    .product-list.everpro .product-description .aoc-only {
      margin: 0 auto; }

/*AOC Responsive*/
@media only screen and (min-width: 767px) and (max-width: 1200px) {
  .everpro .top-img .img-block.img-large .img-flame {
    background-position: center; }
  .everpro .product-list .product-img {
    padding: 0 2% !important; }
    .everpro .product-list .product-img .img-block__flex {
      gap: 30px; }
      .everpro .product-list .product-img .img-block__flex .img-block {
        width: calc((100% / 2) - 15px);
        height: 356px; }
        .everpro .product-list .product-img .img-block__flex .img-block p {
          height: 60px; }
        .everpro .product-list .product-img .img-block__flex .img-block .img-flame {
          background-position: center;
          height: 294px; }
  .everpro .aoc-btn__flex {
    padding: 80px 2% 0; } }
@media (max-width: 767px) {
  /*	ページトップ*/
  .everpro .block {
    margin-bottom: 50px; }
  .everpro .page-top {
    margin-top: 0; }
    .everpro .page-top .top-img .img-block.img-large .img-flame {
      background-position: bottom !important; }
    .everpro .page-top h1 {
      margin: 40px 0 20px;
      line-height: 1.5em; }
    .everpro .page-top p {
      font-size: 14px;
      font-size: 1.4rem; }
    .everpro .page-top .block {
      margin-bottom: 0; }
  .everpro .product-list {
    margin-top: 30px !important;
    /*画像*/
    /*ボタン*/
    /*表*/ }
    .everpro .product-list b {
      font-size: 18px;
      font-size: 1.8rem;
      margin-bottom: 0; }
    .everpro .product-list .product-img {
      padding: 20px 6% !important; }
      .everpro .product-list .product-img p {
        font-size: 14px;
        font-size: 1.4rem; }
      .everpro .product-list .product-img.optical-connector {
        padding-bottom: 40px; }
    .everpro .product-list .img-block__flex {
      gap: 15px; }
      .everpro .product-list .img-block__flex .img-block {
        width: calc((100% / 2) - 8px);
        height: 252px; }
        .everpro .product-list .img-block__flex .img-block p {
          height: 70px; }
        .everpro .product-list .img-block__flex .img-block .img-flame {
          height: 180px;
          background-position: center; }
    .everpro .product-list .aoc-btn-block {
      padding: 45px 0 0; }
    .everpro .product-list .aoc-btn__flex {
      flex-direction: column; }
      .everpro .product-list .aoc-btn__flex .aoc-btn {
        width: 58%; }
        .everpro .product-list .aoc-btn__flex .aoc-btn a {
          font-size: 12px;
          font-size: 1.2rem; }
    .everpro .product-list .aoc-btn {
      width: 47%;
      height: 50px; }
      .everpro .product-list .aoc-btn:nth-of-type(-n+3) a::before {
        right: 5px;
        top: 17px;
        background-size: auto 9px; }
      .everpro .product-list .aoc-btn:nth-of-type(2) a::before {
        top: 21px; }
      .everpro .product-list .aoc-btn a {
        font-size: 18px;
        font-size: 1.8rem; }
    .everpro .product-list .btn-center {
      margin-top: 5.75%;
      width: 100%;
      height: 60px;
      order: 1; }
      .everpro .product-list .btn-center span {
        line-height: 1em; }
      .everpro .product-list .btn-center span:nth-child(2) {
        font-size: 12px;
        font-size: 1.2rem; }
    .everpro .product-list .product-specification {
      padding: 0; }
      .everpro .product-list .product-specification table {
        margin-top: 0;
        width: 100%; }

  /*	白背景*/
  .aoc .cautionary-note {
    padding: 0 6%; }

  .page.product .product-list.aoc .product-description {
    /*h2(見出し)*/
    /*h3(構造)*/
    /*テキスト*/
    /*リード文*/
    /*画像*/
    /*　↓　SDI　↓　*/
    /*仕様一覧注記*/
    /*表*/ }
    .page.product .product-list.aoc .product-description h2 {
      padding: 20px 0; }
      .page.product .product-list.aoc .product-description h2 .aoc-specification {
        font-size: 10px;
        font-size: 1rem; }
    .page.product .product-list.aoc .product-description h3 {
      font-size: 16px;
      font-size: 1.6rem;
      margin: 20px 0; }
    .page.product .product-list.aoc .product-description .aoc-text {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.6em; }
    .page.product .product-list.aoc .product-description .aoc-ul li {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.6em;
      margin-bottom: 10px;
      letter-spacing: -0.025em; }
    .page.product .product-list.aoc .product-description .img-block p {
      margin: 5px 0 20px; }
    .page.product .product-list.aoc .product-description .product-img .aoc-specification p {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.7em; }
    .page.product .product-list.aoc .product-description .product-img .aoc-specification table {
      margin: 0;
      width: 100%; }
    .page.product .product-list.aoc .product-description .aoc-table-text {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.7em; }
    .page.product .product-list.aoc .product-description .product-specification {
      margin-top: 40px;
      padding: 0%; }
      .page.product .product-list.aoc .product-description .product-specification table {
        margin-top: 0;
        width: 100%;
        margin-bottom: 40px; } }
/*ここまで*/
.page.product .product-list.left-text .inner.fadeinup p {
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 15px; }

.page.product .product-list.aoc .product-img {
  text-align: left; }

.page.product .product-description.aoc-white {
  background-color: #fff; }

.aoc-specification {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6em;
  margin-top: 20px; }

.img-block-aoc {
  vertical-align: top;
  display: inline-block;
  margin: 0 20px 0 0;
  width: 400px; }
  .img-block-aoc.no-margin {
    margin: 0; }

.img-flame-aoc {
  margin: 0 auto;
  width: 600px;
  height: 230px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  display: block;
  transition: all 0.3s; }

.aoc-btn-block {
  padding: 80px 0 0; }

.aoc-btn {
  width: 30%;
  height: 75px;
  background-color: #B71D25;
  margin: 0 auto; }
  .aoc-btn:nth-of-type(-n+3) a::before {
    content: "";
    width: 21px;
    height: 21px;
    position: absolute;
    right: 5px;
    top: 28px;
    background: url(../img/common/charm/arrow-triangle.svg);
    background-repeat: no-repeat;
    background-size: auto 13px;
    background-position: center;
    display: block;
    transition: all 0.4s;
    z-index: 1;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg); }
  .aoc-btn a {
    width: 100%;
    height: 100%;
    color: #fff;
    font-size: 24px;
    font-size: 2.4rem;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -webkit-justify-content: center;
    -webkit-align-items: center;
    justify-content: center;
    align-items: center;
    position: relative; }

.btn-center {
  width: 36%; }
  .btn-center span {
    text-align: center;
    line-height: 0.8em; }
  .btn-center span:nth-child(2) {
    font-size: 14px;
    font-size: 1.4rem;
    color: #f3b522;
    font-weight: bold; }

#accordion .sub-tab.aoc-accordion dd {
  margin-inline-start: 0; }

/*buttn*/
#specification-list {
  margin-top: -70px;
  padding-top: 70px; }

/*アコーディオン内画像*/
.page.product .product-detail .sub-tab .aoc-only {
  margin: 0 auto;
  display: auto; }
  .page.product .product-detail .sub-tab .aoc-only.pc_only {
    display: block; }
  .page.product .product-detail .sub-tab .aoc-only.sp_only {
    display: none; }

.page.product .product-detail.aoc-mobile-accordion {
  margin-bottom: 40px; }

/*AOC Responsive*/
@media (max-width: 767px) {
  .page.product .product-list.aoc .inner .aoc-image .aoc-only {
    max-width: 100%;
    height: auto; }
  .page.product .product-list.aoc .product-description .inner .aoc-image .aoc-only {
    max-width: 100%;
    height: auto; }

  /*資料変更注記*/
  .page.product .product-list.left-text .inner.fadeinup p {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.7em; }

  /*アコーディオン*/
  .page.product .product-detail .sub-tab .aoc-only.pc_only {
    display: none; }
  .page.product .product-detail .sub-tab .aoc-only.sp_only {
    display: block; } }
/*ここまで*/
@media (max-width: 320px) {
  .page.product .product-list.aoc .product-img .img-block {
    width: 134px; }
    .page.product .product-list.aoc .product-img .img-block:nth-of-type(even) {
      margin-right: 0; }
    .page.product .product-list.aoc .product-img .img-block .img-flame {
      width: 134px;
      height: 134px; } }
/* CSS Document */
#dosmono h1 {
  margin: 115px auto 0; }
#dosmono h2 {
  margin: 75px auto;
  line-height: 1em; }
#dosmono h3 {
  text-align: center;
  margin: 0 0 40px; }
#dosmono .dos-h3 {
  margin-top: 35px; }
#dosmono .product-description {
  padding-bottom: 0; }
  #dosmono .product-description .product-img {
    padding-bottom: 0; }
#dosmono .product-specification {
  padding: 40px 60px; }
  #dosmono .product-specification .dosmono_72languages {
    text-align: left;
    padding-left: 15px; }
  #dosmono .product-specification .dos-small {
    font-size: 10px;
    font-size: 1rem;
    text-align: left;
    border: none; }
  #dosmono .product-specification.dosmono-appearance {
    padding: 25px; }
    #dosmono .product-specification.dosmono-appearance .dosmono-appearance-img {
      width: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      #dosmono .product-specification.dosmono-appearance .dosmono-appearance-img .appearance-img-left {
        width: 49%;
        margin: 0;
        text-align: center; }
        #dosmono .product-specification.dosmono-appearance .dosmono-appearance-img .appearance-img-left h3 {
          margin: 0 auto 25px; }
        #dosmono .product-specification.dosmono-appearance .dosmono-appearance-img .appearance-img-left img {
          margin: 0 auto; }
      #dosmono .product-specification.dosmono-appearance .dosmono-appearance-img .appearance-img-right {
        width: 49%;
        margin: 0;
        text-align: center; }
        #dosmono .product-specification.dosmono-appearance .dosmono-appearance-img .appearance-img-right h3 {
          margin: 0 auto 25px; }
        #dosmono .product-specification.dosmono-appearance .dosmono-appearance-img .appearance-img-right img {
          margin: 0 auto; }
        #dosmono .product-specification.dosmono-appearance .dosmono-appearance-img .appearance-img-right ul {
          display: table;
          width: 100%;
          margin: 0 auto; }
          #dosmono .product-specification.dosmono-appearance .dosmono-appearance-img .appearance-img-right ul li {
            width: 50%;
            display: table-cell;
            margin: 0 auto; }
#dosmono .product-img {
  padding: 0 0 40px; }
  #dosmono .product-img .img-block {
    position: relative;
    width: 220px;
    height: 300px;
    margin-right: 28px; }
    #dosmono .product-img .img-block:first-child {
      margin-left: 15px; }
    #dosmono .product-img .img-block:last-child {
      margin-right: 0; }
      #dosmono .product-img .img-block:last-child .img-flame::after {
        content: none; }
    #dosmono .product-img .img-block .img-flame {
      width: 220px;
      height: 220px; }
      #dosmono .product-img .img-block .img-flame::after {
        content: url(../img/page-product/product_dosmono_arrow_01_pc.png);
        position: absolute;
        top: 33%;
        right: -27px; }
    #dosmono .product-img .img-block .dosmono-nblock {
      position: absolute;
      left: -15px;
      top: -10px;
      width: 40px;
      height: 40px; }
    #dosmono .product-img .img-block .nblock-01 {
      background: url(../img/page-product/product_dosmono_no_01.png); }
    #dosmono .product-img .img-block .nblock-02 {
      background: url(../img/page-product/product_dosmono_no_02.png); }
    #dosmono .product-img .img-block .nblock-03 {
      background: url(../img/page-product/product_dosmono_no_03.png); }
    #dosmono .product-img .img-block .nblock-04 {
      background: url(../img/page-product/product_dosmono_no_04.png); }
    #dosmono .product-img .img-block .nblock-05 {
      background: url(../img/page-product/product_dosmono_no_05.png); }
    #dosmono .product-img .img-block .nblock-06 {
      background: url(../img/page-product/product_dosmono_no_06.png); }
    #dosmono .product-img .img-block .nblock-07 {
      background: url(../img/page-product/product_dosmono_no_07.png); }
    #dosmono .product-img .img-block .nblock-08 {
      background: url(../img/page-product/product_dosmono_no_08.png); }
    #dosmono .product-img .img-block .nblock-09 {
      background: url(../img/page-product/product_dosmono_no_09.png); }
    #dosmono .product-img .img-block .nblock-10 {
      background: url(../img/page-product/product_dosmono_no_10.png); }
    #dosmono .product-img .img-block .nblock-11 {
      background: url(../img/page-product/product_dosmono_no_11.png); }
    #dosmono .product-img .img-block .nblock-12 {
      background: url(../img/page-product/product_dosmono_no_12.png); }
    #dosmono .product-img .img-block.dos-img-block {
      width: 480px; }
      #dosmono .product-img .img-block.dos-img-block .img-flame {
        width: 480px; }
    #dosmono .product-img .img-block p .dos-check {
      background: url(../img/page-product/product_dosmono_check_01.png);
      width: 16px;
      height: 11px;
      display: inline-block; }
      @media (max-width: 767px) {
        #dosmono .product-img .img-block p .dos-check {
          background: url(../img/page-product/product_dosmono_check_02.png);
          background-size: contain; } }
  #dosmono .product-img.dos-example {
    padding-bottom: 0; }
    #dosmono .product-img.dos-example .img-block {
      height: 220px; }
      #dosmono .product-img.dos-example .img-block .img-flame::after {
        top: 45%; }
      #dosmono .product-img.dos-example .img-block:nth-child(3) .img-flame::after {
        content: none; }
    #dosmono .product-img.dos-example table {
      margin: 40px 0 0 15px; }
      #dosmono .product-img.dos-example table tr td {
        font-size: 14px;
        font-size: 1.4rem;
        vertical-align: top;
        text-align: left; }
      #dosmono .product-img.dos-example table tr .dos-example-nomber {
        padding-top: 6px; }
      #dosmono .product-img.dos-example table tr .dos-example {
        padding: 0 0 20px 20px; }
#dosmono .buy-box {
  -ms-flex-pack: distribute;
  justify-content: space-around; }
#dosmono .dos-btn-block {
  padding: 80px 0;
  margin: 0 auto;
  width: 100%;
  text-align: center; }
  #dosmono .dos-btn-block .dos-btn {
    display: inline-block;
    width: 300px;
    padding: 20px 0;
    background-color: #0d6cb5; }
    #dosmono .dos-btn-block .dos-btn a {
      width: 100%;
      height: 100%;
      color: #fff;
      font-size: 24px;
      font-size: 2.4rem;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -moz-justify-content: center;
      -ms-justify-content: center;
      -webkit-justify-content: center;
      -webkit-align-items: center;
      justify-content: center;
      align-items: center;
      position: relative; }
      #dosmono .dos-btn-block .dos-btn a::before {
        content: "";
        width: 28px;
        height: 32px;
        position: absolute;
        right: 35px;
        top: -1px;
        background: url(../img/common/charm/icon-pdf.svg);
        background-repeat: no-repeat;
        background-size: auto 100%;
        background-position: center;
        display: block;
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
        z-index: 0; }

@media (max-width: 767px) {
  #dosmono .page-top .inner {
    padding: 0; }
    #dosmono .page-top .inner h1 {
      width: 100%;
      margin: 13px 0 0 0; }
      #dosmono .page-top .inner h1 img {
        width: 100%; }
  #dosmono .product-list h2 {
    font-size: 20px;
    font-size: 2rem;
    margin: 60px auto; }
  #dosmono .product-list h3 {
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 20px; }
  #dosmono .product-specification {
    padding: 25px; }
    #dosmono .product-specification.dosmono-appearance {
      display: block; }
      #dosmono .product-specification.dosmono-appearance .dosmono-appearance-img {
        width: 100%;
        text-align: center;
        display: block; }
        #dosmono .product-specification.dosmono-appearance .dosmono-appearance-img .appearance-img-left {
          width: 100%; }
          #dosmono .product-specification.dosmono-appearance .dosmono-appearance-img .appearance-img-left img {
            width: 100%; }
        #dosmono .product-specification.dosmono-appearance .dosmono-appearance-img .appearance-img-right {
          width: 100%;
          display: inline-block;
          text-align: center;
          margin-top: 50px; }
          #dosmono .product-specification.dosmono-appearance .dosmono-appearance-img .appearance-img-right img {
            width: 100%; }
  #dosmono .product-img {
    text-align: center;
    padding-bottom: 0; }
    #dosmono .product-img .img-block {
      width: 100%;
      height: auto;
      padding-bottom: 75px;
      margin: 0; }
      #dosmono .product-img .img-block:first-child {
        margin: 0; }
      #dosmono .product-img .img-block .img-flame {
        margin: 0 auto;
        width: 100%;
        height: 180px;
        background-size: 180px; }
        #dosmono .product-img .img-block .img-flame::after {
          content: url(../img/page-product/product_dosmono_arrow_02.png);
          top: auto;
          right: 46.5%;
          bottom: 6%;
          transform: scale(0.6); }
      #dosmono .product-img .img-block:last-child .img-flame::after {
        content: url(../img/page-product/product_dosmono_arrow_02.png); }
      #dosmono .product-img .img-block.dos-img-block {
        width: 100%; }
        #dosmono .product-img .img-block.dos-img-block .img-flame {
          width: 100%;
          height: 180px;
          background-size: 100%; }
      #dosmono .product-img .img-block p {
        text-align: left;
        margin: 15px 0 0; }
        #dosmono .product-img .img-block p strong {
          font-size: 14px;
          font-size: 1.4rem; }
      #dosmono .product-img .img-block.dos-noarrow {
        padding-bottom: 0; }
        #dosmono .product-img .img-block.dos-noarrow .img-flame::after {
          content: none; }
    #dosmono .product-img.dos-example {
      height: auto; }
      #dosmono .product-img.dos-example .img-block {
        height: auto;
        padding-bottom: 80px; }
        #dosmono .product-img.dos-example .img-block .img-flame::after {
          top: auto; }
        #dosmono .product-img.dos-example .img-block.dos-example-block {
          width: 43%;
          height: auto;
          float: left;
          padding-bottom: 40px; }
          #dosmono .product-img.dos-example .img-block.dos-example-block .img-flame {
            width: 100%;
            height: auto;
            padding-top: 100%;
            background-size: 90%; }
            #dosmono .product-img.dos-example .img-block.dos-example-block .img-flame::after {
              content: url(../img/page-product/product_dosmono_arrow_01_sp.png);
              top: 15%;
              right: -40px; }
          #dosmono .product-img.dos-example .img-block.dos-example-block:last-of-type {
            float: right; }
            #dosmono .product-img.dos-example .img-block.dos-example-block:last-of-type .img-flame::after {
              content: none; }
  #dosmono .dos-btn-block {
    padding: 20px 0 40px; }
    #dosmono .dos-btn-block .dos-btn a {
      font-size: 18px;
      font-size: 1.8rem; }
      #dosmono .dos-btn-block .dos-btn a::before {
        width: 28px;
        height: 25px;
        top: -1px;
        right: 50px; }
    #dosmono .dos-btn-block.last {
      padding-bottom: 0; } }
@media (max-width: 320px) {
  #dosmono .product-img.dos-example .img-block.dos-example-block .img-flame {
    background-size: 85%; }
  #dosmono .dos-btn-block .dos-btn {
    width: 260px; }
    #dosmono .dos-btn-block .dos-btn a::before {
      top: -1px;
      right: 36px; } }
/* CSS Document */
/*新製品(スキャナー)スタイル-------------------------------------------------*/
.scanner_description {
  background: #eeefef; }

.scanner_mv {
  margin: 115px auto 0; }

.scanner_inner {
  width: 1000px;
  margin: 0 auto;
  position: relative;
  padding-top: 50px;
  padding-bottom: 22px; }

.scanner_inner-last {
  width: 1000px;
  margin: 0 auto;
  padding-bottom: 70px; }

.function {
  background-color: #fff;
  padding: 40px 60px; }

.function_inner {
  margin-top: 0;
  margin-bottom: 0; }

/*pc only flex*/
@media (min-width: 768px) {
  .function_inner .flex-pc {
    display: flex; }

  .function_inner .size-flex-pc {
    display: flex;
    align-items: center; } }
.function_inner .flex-pc .left,
.function_inner .flex-pc .right {
  width: 50%; }

.function_inner .size-flex {
  display: flex;
  align-items: center; }

.function_inner .size-flex-pc .left,
.function_inner .size-flex-pc .right {
  width: 50%; }

.text-block {
  margin-bottom: 40px; }

/*pc only flex*/
@media (min-width: 768px) {
  .text-block:last-of-type {
    margin-bottom: 0; }

  .text-block-mb:last-of-type {
    margin-bottom: 0; } }
.text-block-mb {
  margin-bottom: 80px; }

.function_inner .title {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 25px;
  margin-top: 0; }

.function_inner .text {
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 0;
  line-height: 25px; }

.function_inner .under {
  background: linear-gradient(transparent 70%, #F9DC96 0%); }

.function_inner .size-title {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 35px;
  margin-top: 0;
  line-height: 0; }

.function_inner .size-text {
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 0;
  line-height: 30px;
  margin-bottom: 0; }

.scanner_h2 h2 {
  margin: 75px auto;
  line-height: 1em;
  text-align: center;
  font-size: 40px;
  font-size: 4rem;
  font-weight: normal; }

.scanner_h2-1 h2 {
  margin: 75px auto;
  line-height: 1em;
  text-align: center;
  font-size: 40px;
  font-size: 4rem;
  font-weight: normal; }

.movie {
  margin-bottom: 100px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around; }

.movie_block {
  position: relative;
  margin-bottom: 70px; }

/*
.movie_flame iframe{
    border: 1px solid #0d6cb5;
    padding: 30px;
    background-color: #FFF;
}
*/
.movie_flame img {
  border: 1px solid #0d6cb5;
  padding: 30px;
  box-sizing: border-box;
  background-color: #FFF; }

.movie_flame a {
  height: 284px; }

.movie_number {
  position: absolute;
  left: -15px;
  top: -10px;
  width: 40px;
  height: 40px; }

.movie_block .m01 {
  background: url("../img/page-product/product_scanner_01.png"); }

.movie_block .m02 {
  background: url("../img/page-product/product_scanner_02.png"); }

.movie_block .m03 {
  background: url("../img/page-product/product_scanner_03.png"); }

.movie_block .m04 {
  background: url("../img/page-product/product_scanner_04.png"); }

.movie_title {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold; }

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

.page .scanner .buy-box {
  justify-content: center; }

/*スマホスタイル*/
@media (max-width: 767px) {
  .inner {
    padding: 0; }

  .scanner_inner {
    width: 100%;
    padding-top: 6px;
    padding-bottom: 60px; }

  .scanner_inner-last {
    width: 100%;
    padding-top: 6px;
    padding-bottom: 30px; }

  .scanner_description .scanner_inner {
    width: 100%;
    padding-top: 40px;
    padding-bottom: 22px; }

  .scanner_mv {
    margin: 13px auto 0; }

  .scanner_mv img {
    width: 100%; }

  .function {
    padding: 25px 25px;
    width: 330px;
    box-sizing: border-box;
    margin: 0 auto; }

  .function_inner .flex-pc .left,
  .function_inner .flex-pc .right {
    width: 100%; }

  .function_inner .size-flex-pc .left,
  .function_inner .size-flex-pc .right {
    width: 100%; }

  .function_inner .size-flex-pc .left {
    margin-bottom: 40px; }

  .function_inner .size-flex-pc .left img {
    width: 100%; }

  .text-block-mb,
  .text-block {
    margin-bottom: 35px; }

  .text-block:last-of-type {
    margin-bottom: 5px; }

  .function_inner .title,
  .function_inner .size-title {
    margin-bottom: 15px; }

  .function_inner .size-text {
    line-height: 25px; }

  .scanner_h2 h2 {
    margin: 45px auto;
    margin-top: 40px;
    /*      margin-bottom: 30px;*/
    font-size: 20px;
    font-size: 2rem; }

  .product-detail-new .scanner_h2-1 h2 {
    margin: 60px auto;
    /*      margin-bottom: 25px;*/
    font-size: 20px;
    font-size: 2rem; }

  .movie {
    width: 330px;
    margin: 0 auto; }

  .movie_block {
    margin-bottom: 50px; }

  .movie_block:last-of-type {
    margin-bottom: 0; }

  .movie_flame img {
    width: 100%; }

  .movie_flame a {
    height: 235.45px; }

  .movie_flame a:active,
  .movie_flame a:hover,
  .movie_flame a:focus {
    outline: unset; }

  .movie_title {
    margin-top: 10px; } }
/* CSS Document */
/* stock
----------------------------------------------------------------*/
.page.stock {
  padding: 140px 0 5px;
  width: 100%;
  color: #717071;
  margin-bottom: 130px; }
  .page.stock .inner {
    padding: 0 calc((100% - 1048px) /2);
    width: 100%; }
    .page.stock .inner h1 {
      font-size: 40px;
      font-size: 4rem;
      margin: 70px auto;
      text-align: center;
      font-weight: normal;
      color: #717071;
      line-height: 3.2rem; }
    .page.stock .inner .block {
      font-size: 14px;
      font-size: 1.4rem;
      max-width: 850px;
      width: 100%;
      display: block;
      margin: 0 auto 75px;
      text-align: center; }
      .page.stock .inner .block P:not(last-child) {
        margin-bottom: 10px; }
  .page.stock .st {
    max-width: 1048px;
    margin: 0 auto; }
    .page.stock .st .inner .st_list {
      display: flex;
      flex-wrap: wrap;
      gap: 10px 0;
      justify-content: flex-start; }
      .page.stock .st .inner .st_list li {
        width: calc(100% / 4); }
        .page.stock .st .inner .st_list li a {
          width: fit-content; }
          .page.stock .st .inner .st_list li a::before {
            content: '・'; }
        .page.stock .st .inner .st_list li::hover {
          opacity: 0.5; }
  .page.stock.stocklist .st__list .inner .st__list--wrap {
    width: 100%;
    max-width: 1048px;
    margin: 0 auto; }
    .page.stock.stocklist .st__list .inner .st__list--wrap .st__select {
      width: fit-content;
      margin: 0 0 20px auto;
      position: relative; }
      .page.stock.stocklist .st__list .inner .st__list--wrap .st__select::after {
        content: "";
        position: absolute;
        right: 15px;
        top: 49%;
        width: 10px;
        height: 10px;
        border-top: 2px solid #666;
        border-left: 2px solid #666;
        transform: translateY(-50%) rotate(-135deg); }
      .page.stock.stocklist .st__list .inner .st__list--wrap .st__select select {
        border-radius: 0;
        background-color: #fff;
        border: 1px solid;
        -webkit-appearance: none;
        appearance: none;
        padding: 2px 34px 2px 10px;
        cursor: pointer; }
    .page.stock.stocklist .st__list .inner .st__list--wrap .table__wrap {
      overflow-x: auto; }
    .page.stock.stocklist .st__list .inner .st__list--wrap .wp-block-table {
      margin: 0; }
      .page.stock.stocklist .st__list .inner .st__list--wrap .wp-block-table table {
        border-collapse: collapse;
        width: 100%;
        max-width: 1048px;
        white-space: nowrap; }
        .page.stock.stocklist .st__list .inner .st__list--wrap .wp-block-table table thead {
          background: #aaa;
          color: #fff;
          text-align: center; }
        .page.stock.stocklist .st__list .inner .st__list--wrap .wp-block-table table tr:nth-child(even) {
          background: #f7f7f7; }
        .page.stock.stocklist .st__list .inner .st__list--wrap .wp-block-table table th, .page.stock.stocklist .st__list .inner .st__list--wrap .wp-block-table table td {
          border: 1px solid #666;
          padding: 10px 20px;
          white-space: nowrap;
          line-height: 1.3; }
  .page.stock.stocklist .st__list .inner .btn {
    width: 190px;
    display: block;
    margin: 50px auto 0; }
    .page.stock.stocklist .st__list .inner .btn a {
      padding: 6px 0px 6px 7px; }
      .page.stock.stocklist .st__list .inner .btn a::before {
        left: 11px;
        transform: rotate(-180deg); }
    .page.stock.stocklist .st__list .inner .btn:hover a:before {
      left: 8px; }

@media screen and (min-width: 767px) and (max-width: 1200px) {
  .page.stock .inner {
    padding: 0 2%; }
  .page.stock .st {
    max-width: 1048px;
    margin: 0 auto; }
    .page.stock .st .inner .st_list li {
      width: calc(100% / 3); } }
@media (max-width: 767px) {
  .page.stock {
    margin: 0 auto 50px;
    padding: 65px 0 4%; }
    .page.stock .inner {
      padding: 0 6%; }
      .page.stock .inner h1 {
        margin: 40px 0;
        font-size: 22px;
        font-size: 2.2rem; }
      .page.stock .inner .block {
        font-size: 14px;
        font-size: 1.4rem;
        margin: 40px 0;
        line-height: 1.6em; }
    .page.stock .st {
      max-width: 1048px;
      margin: 0 auto; }
      .page.stock .st .inner .st_list li {
        width: calc(100% / 2); }
    .page.stock.stocklist .st__list .inner .btn {
      width: 190px;
      display: block;
      margin: 50px auto 0; }
      .page.stock.stocklist .st__list .inner .btn a {
        padding: 10px 0px 11px 7px; }
        .page.stock.stocklist .st__list .inner .btn a::before {
          left: 11px;
          transform: rotate(-180deg); } }
/* CSS Document */
/*ページトップ*/
.storhm {
  text-align: center;
  margin: 0 auto; }
  .storhm .block {
    line-height: 2.6em;
    margin-bottom: 75px; }
  .storhm h3 {
    font-size: 24px;
    font-size: 2.4rem;
    text-align: center; }
  .storhm .page-top .bread {
    text-align: left; }
  .storhm .page-top h1 {
    margin: 75px 0; }
  .storhm .page-top p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.6em;
    margin-bottom: 1em; }
  .storhm .cautionary-note {
    text-align: left;
    max-width: 1048px;
    margin-top: 15px; }

.product-list.storhm {
  /*グレー背景*/ }
  .product-list.storhm:not(.no-margin) {
    margin-top: 70px; }
  .product-list.storhm h2 {
    line-height: 1.6em;
    margin: 0 0 40px; }
    .product-list.storhm h2.second-h2 {
      margin-top: 75px; }
    .product-list.storhm h2.dp__h2 {
      margin-bottom: 60px; }
  .product-list.storhm h3 {
    margin: 40px; }
  .product-list.storhm .title {
    margin: 70px 0; }
  .product-list.storhm .product-img {
    margin: 0 auto;
    padding: 75px 0 0;
    text-align: left;
    max-width: 1200px; }
    .product-list.storhm .product-img.optical-connector {
      padding-bottom: 70px; }
  .product-list.storhm .img-block {
    padding: 0;
    width: 100%;
    height: 100%; }
    .product-list.storhm .img-block .img-flame {
      width: 100%;
      height: 200px;
      background-repeat: no-repeat;
      background-size: cover; }
      .product-list.storhm .img-block .img-flame.img-long {
        max-width: 1000px;
        width: 100%;
        margin: 0 auto;
        border: 1px solid #717071; }
    .product-list.storhm .img-block p {
      margin: 15px auto 0;
      padding: 0;
      text-align: left;
      width: fit-content; }
  .product-list.storhm .img-block__flex {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 30px; }
    .product-list.storhm .img-block__flex .img-block {
      padding: 0;
      width: calc((100% / 4) - 23px);
      height: 318px;
      border: 1px solid #717071; }
    .product-list.storhm .img-block__flex p {
      text-align: center;
      color: #fff;
      margin-bottom: 15px;
      background-color: #717071;
      padding: 15px;
      margin: 0;
      width: 100%;
      height: 116px; }
    .product-list.storhm .img-block__flex .img-flame {
      background-position: center; }
  .product-list.storhm .aoc-text {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 0 40px;
    padding: 0;
    text-align: center; }
  .product-list.storhm .fontex-table {
    margin-bottom: 60px;
    background-color: #fff; }
  .product-list.storhm .aoc-only {
    margin: 0 auto; }
  .product-list.storhm .product-description {
    background: none;
    padding: 0; }
    .product-list.storhm .product-description h2 {
      margin: 0;
      padding: 75px 0;
      line-height: 1.6em; }
    .product-list.storhm .product-description h3 {
      margin: 40px 0; }
    .product-list.storhm .product-description .aoc-usb {
      margin-bottom: 0; }
    .product-list.storhm .product-description .aoc-text {
      font-size: 14px;
      font-size: 1.4rem;
      margin: 0 0 40px;
      padding: 0;
      text-align: center; }
    .product-list.storhm .product-description .aoc-image {
      margin-bottom: 40px; }
    .product-list.storhm .product-description .product-img {
      margin: 0;
      padding: 0;
      text-align: left; }
    .product-list.storhm .product-description .img-block {
      padding: 0; }
      .product-list.storhm .product-description .img-block p {
        margin: 15px 0 0;
        padding: 0;
        text-align: left; }
      .product-list.storhm .product-description .img-block .SDI-table {
        font-size: 14px;
        font-size: 1.4rem; }
        .product-list.storhm .product-description .img-block .SDI-table td {
          vertical-align: top; }
        .product-list.storhm .product-description .img-block .SDI-table .SDI-list {
          padding-left: 20px; }
    .product-list.storhm .product-description .product-specification {
      padding: 40px 60px;
      max-width: 1048px;
      margin: 0 auto; }
      .product-list.storhm .product-description .product-specification.table-gray {
        background-color: #eeefef; }
      .product-list.storhm .product-description .product-specification .aoc-table td {
        min-width: 95px; }
    .product-list.storhm .product-description .aoc-table-text {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.6em;
      padding: 0;
      text-align: left;
      padding-bottom: 80px; }
    .product-list.storhm .product-description .fontex-table-gray {
      padding-bottom: 60px; }
    .product-list.storhm .product-description .aoc-only {
      margin: 0 auto; }

/*AOC Responsive*/
@media only screen and (min-width: 767px) and (max-width: 1200px) {
  .storhm .product-list .product-img {
    padding-top: 0 !important; }
    .storhm .product-list .product-img .img-block__flex {
      gap: 10px; }
      .storhm .product-list .product-img .img-block__flex .img-block {
        width: calc((100% / 4) - 8px);
        height: 336px; }
        .storhm .product-list .product-img .img-block__flex .img-block p {
          height: 130px; }
        .storhm .product-list .product-img .img-block__flex .img-block .img-flame {
          background-position: initial; } }
@media (max-width: 767px) {
  /*	ページトップ*/
  .storhm .block {
    margin-bottom: 50px; }
  .storhm .page-top {
    margin-top: 0; }
    .storhm .page-top h1 {
      margin: 40px 0 20px;
      line-height: 1.5em; }
    .storhm .page-top p {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.6em; }
    .storhm .page-top .block {
      margin-bottom: 0; }
  .storhm .product-list {
    /*画像*/
    /*ボタン*/
    /*表*/ }
    .storhm .product-list:not(.no-margin) {
      margin-top: 30px; }
    .storhm .product-list .product-img {
      padding: 20px 6%; }
      .storhm .product-list .product-img p {
        font-size: 14px;
        font-size: 1.4rem; }
      .storhm .product-list .product-img.optical-connector {
        padding-bottom: 40px; }
    .storhm .product-list .img-block__flex {
      gap: 15px; }
      .storhm .product-list .img-block__flex .img-block {
        width: calc((100% / 2) - 8px);
        height: 100%; }
        .storhm .product-list .img-block__flex .img-block p {
          height: 108px; }
        .storhm .product-list .img-block__flex .img-block .img-flame {
          height: 150px;
          background-position: left; }
    .storhm .product-list .aoc-btn-block {
      padding: 45px 0 0; }
    .storhm .product-list .aoc-btn {
      width: 47%;
      height: 50px; }
      .storhm .product-list .aoc-btn:nth-of-type(-n+2) a::before {
        right: 5px;
        top: 17px;
        background-size: auto 9px; }
      .storhm .product-list .aoc-btn:nth-of-type(2) a::before {
        top: 21px; }
      .storhm .product-list .aoc-btn:nth-of-type(3) a::before {
        width: 21px;
        height: 24px;
        right: 16px;
        top: 15px; }
      .storhm .product-list .aoc-btn a {
        font-size: 18px;
        font-size: 1.8rem; }
    .storhm .product-list .btn-center {
      margin-top: 5.75%;
      width: 100%;
      height: 60px;
      order: 1; }
      .storhm .product-list .btn-center span {
        line-height: 1em; }
      .storhm .product-list .btn-center span:nth-child(2) {
        font-size: 12px;
        font-size: 1.2rem; }
    .storhm .product-list .product-specification {
      padding: 0; }
      .storhm .product-list .product-specification table {
        margin-top: 0;
        width: 100%; }

  /*	白背景*/
  .aoc .cautionary-note {
    padding: 0 6%; }

  .page.product .product-list.aoc .product-description {
    /*h2(見出し)*/
    /*h3(構造)*/
    /*テキスト*/
    /*リード文*/
    /*画像*/
    /*　↓　SDI　↓　*/
    /*仕様一覧注記*/
    /*表*/ }
    .page.product .product-list.aoc .product-description h2 {
      padding: 20px 0; }
      .page.product .product-list.aoc .product-description h2 .aoc-specification {
        font-size: 10px;
        font-size: 1rem; }
    .page.product .product-list.aoc .product-description h3 {
      font-size: 16px;
      font-size: 1.6rem;
      margin: 20px 0; }
    .page.product .product-list.aoc .product-description .aoc-text {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.6em; }
    .page.product .product-list.aoc .product-description .aoc-ul li {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.6em;
      margin-bottom: 10px;
      letter-spacing: -0.025em; }
    .page.product .product-list.aoc .product-description .img-block p {
      margin: 5px 0 20px; }
    .page.product .product-list.aoc .product-description .product-img .aoc-specification p {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.7em; }
    .page.product .product-list.aoc .product-description .product-img .aoc-specification table {
      margin: 0;
      width: 100%; }
    .page.product .product-list.aoc .product-description .aoc-table-text {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.7em; }
    .page.product .product-list.aoc .product-description .product-specification {
      margin-top: 40px;
      padding: 0%; }
      .page.product .product-list.aoc .product-description .product-specification table {
        margin-top: 0;
        width: 100%;
        margin-bottom: 40px; } }
/*ここまで*/
.page.product .product-list.left-text .inner.fadeinup p {
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 15px; }

.page.product .product-list.aoc .product-img {
  text-align: left; }

.page.product .product-description.aoc-white {
  background-color: #fff; }

.aoc-specification {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6em;
  margin-top: 20px; }

.img-block-aoc {
  vertical-align: top;
  display: inline-block;
  margin: 0 20px 0 0;
  width: 400px; }
  .img-block-aoc.no-margin {
    margin: 0; }

.img-flame-aoc {
  margin: 0 auto;
  width: 600px;
  height: 230px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  display: block;
  transition: all 0.3s; }

.aoc-btn-block {
  padding: 80px 0 0; }

.aoc-btn {
  width: 30%;
  height: 75px;
  background-color: #B71D25;
  margin: 0 auto; }
  .aoc-btn:nth-of-type(-n+3) a::before {
    content: "";
    width: 21px;
    height: 21px;
    position: absolute;
    right: 5px;
    top: 28px;
    background: url(../img/common/charm/arrow-triangle.svg);
    background-repeat: no-repeat;
    background-size: auto 13px;
    background-position: center;
    display: block;
    transition: all 0.4s;
    z-index: 1;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg); }
  .aoc-btn a {
    width: 100%;
    height: 100%;
    color: #fff;
    font-size: 24px;
    font-size: 2.4rem;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -webkit-justify-content: center;
    -webkit-align-items: center;
    justify-content: center;
    align-items: center;
    position: relative; }

.btn-center {
  width: 36%; }
  .btn-center span {
    text-align: center;
    line-height: 0.8em; }
  .btn-center span:nth-child(2) {
    font-size: 14px;
    font-size: 1.4rem;
    color: #f3b522;
    font-weight: bold; }

#accordion .sub-tab.aoc-accordion dd {
  margin-inline-start: 0; }

/*buttn*/
#specification-list {
  margin-top: -70px;
  padding-top: 70px; }

/*アコーディオン内画像*/
.page.product .product-detail .sub-tab .aoc-only {
  margin: 0 auto;
  display: auto; }
  .page.product .product-detail .sub-tab .aoc-only.pc_only {
    display: block; }
  .page.product .product-detail .sub-tab .aoc-only.sp_only {
    display: none; }

.page.product .product-detail.aoc-mobile-accordion {
  margin-bottom: 40px; }

/*AOC Responsive*/
@media (max-width: 767px) {
  .page.product .product-list.aoc .inner .aoc-image .aoc-only {
    max-width: 100%;
    height: auto; }
  .page.product .product-list.aoc .product-description .inner .aoc-image .aoc-only {
    max-width: 100%;
    height: auto; }

  /*資料変更注記*/
  .page.product .product-list.left-text .inner.fadeinup p {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.7em; }

  /*アコーディオン*/
  .page.product .product-detail .sub-tab .aoc-only.pc_only {
    display: none; }
  .page.product .product-detail .sub-tab .aoc-only.sp_only {
    display: block; } }
/*ここまで*/
@media (max-width: 320px) {
  .page.product .product-list.aoc .product-img .img-block {
    width: 134px; }
    .page.product .product-list.aoc .product-img .img-block:nth-of-type(even) {
      margin-right: 0; }
    .page.product .product-list.aoc .product-img .img-block .img-flame {
      width: 134px;
      height: 134px; } }
/* CSS Document */
#metalground img {
  width: 100%;
  height: auto; }
#metalground .center-txt {
  text-align: center;
  font-size: 14px;
  font-size: 1.4rem;
  margin-bottom: 75px; }
  #metalground .center-txt li {
    margin-bottom: 5px; }
    @media (max-width: 767px) {
      #metalground .center-txt li {
        line-height: 1.6em;
        margin-bottom: 10px; } }
  @media (max-width: 767px) {
    #metalground .center-txt {
      font-size: 12px;
      font-size: 1.2rem;
      margin-bottom: 40px; } }
#metalground .product-list h2 {
  margin: 75px 0;
  line-height: 1em; }
  @media (max-width: 767px) {
    #metalground .product-list h2 {
      font-size: 20px;
      font-size: 2rem;
      margin: 60px auto;
      padding: 0; } }
#metalground h3 {
  margin: 0 0 40px;
  text-align: center; }
  @media (max-width: 767px) {
    #metalground h3 {
      margin: 0 0 20px; } }
#metalground .bg-white {
  background: #fff; }
#metalground h1 {
  margin: 115px 0 0 0; }
@media (max-width: 767px) {
  #metalground .page-top .inner {
    padding: 0; }
    #metalground .page-top .inner h1 {
      margin: 13px 0 0 0; } }
#metalground .appearance {
  -js-display: flex;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex; }
  @media (max-width: 767px) {
    #metalground .appearance {
      display: block; } }
  #metalground .appearance h3 {
    margin: 0 0 25px; }
    @media (max-width: 767px) {
      #metalground .appearance h3 {
        margin: 25px 0; } }
#metalground .appearance-left {
  width: 50%;
  margin-right: 30px;
  text-align: center; }
  @media (max-width: 767px) {
    #metalground .appearance-left {
      width: 100%;
      margin-right: 0; } }
  #metalground .appearance-left img {
    width: 62%; }
    @media (max-width: 767px) {
      #metalground .appearance-left img {
        width: 100%; } }
  @media (max-width: 767px) {
    #metalground .appearance-left h3:first-child {
      margin: 0 0 25px; } }
#metalground .appearance-right {
  width: 50%;
  margin-left: 30px; }
  @media (max-width: 767px) {
    #metalground .appearance-right {
      width: 100%;
      margin-left: 0; } }
#metalground .appearance.wrench .appearance-left {
  width: 50%;
  margin-right: 30px;
  text-align: center; }
  @media (max-width: 767px) {
    #metalground .appearance.wrench .appearance-left {
      width: 100%;
      margin-right: 0; } }
  #metalground .appearance.wrench .appearance-left .wrench-01 img {
    width: 100%; }
  #metalground .appearance.wrench .appearance-left .wrench-02 {
    -js-display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-justify-content: space-between;
    /* Safari */
    justify-content: space-between; }
    #metalground .appearance.wrench .appearance-left .wrench-02 img {
      width: 49%;
      height: 49%; }
#metalground .appearance.wrench .appearance-right {
  width: 50%;
  margin-left: 30px; }
  @media (max-width: 767px) {
    #metalground .appearance.wrench .appearance-right {
      width: 100%;
      margin-left: 0; } }
  #metalground .appearance.wrench .appearance-right .drawing-txt {
    font-size: 14px;
    font-size: 1.4rem;
    padding-bottom: 15px; }
    #metalground .appearance.wrench .appearance-right .drawing-txt:last-child {
      padding: 15px 0 0; }
    @media (max-width: 767px) {
      #metalground .appearance.wrench .appearance-right .drawing-txt {
        font-size: 12px;
        font-size: 1.2rem; } }
  #metalground .appearance.wrench .appearance-right .drawing-01 {
    -js-display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    /* Safari */
    justify-content: space-between;
    box-sizing: border-box;
    padding: 0 60px; }
    @media (max-width: 767px) {
      #metalground .appearance.wrench .appearance-right .drawing-01 {
        padding: 0 30px; } }
    #metalground .appearance.wrench .appearance-right .drawing-01 img {
      width: 40%;
      height: 40%; }
      @media (max-width: 767px) {
        #metalground .appearance.wrench .appearance-right .drawing-01 img {
          width: 45%;
          height: 45%; } }
  #metalground .appearance.wrench .appearance-right .drawing-02 {
    padding: 0 60px; }
    @media (max-width: 767px) {
      #metalground .appearance.wrench .appearance-right .drawing-02 {
        padding: 0 30px; } }
    #metalground .appearance.wrench .appearance-right .drawing-02 img {
      width: 100%; }
#metalground .product-description {
  padding: 0 0 80px; }
  @media (max-width: 767px) {
    #metalground .product-description {
      padding: 0 0 40px; } }
  #metalground .product-description h2 {
    margin: 0;
    padding: 75px 0;
    line-height: 1.6em; }
    @media (max-width: 767px) {
      #metalground .product-description h2 {
        padding: 20px 0; } }
  @media (max-width: 767px) {
    #metalground .product-description.bg-white {
      padding: 0; } }
  #metalground .product-description.bg-white h2 {
    margin: 75px 0;
    padding: 0;
    line-height: 1em; }
    @media (max-width: 767px) {
      #metalground .product-description.bg-white h2 {
        margin: 0;
        padding: 20px 0; } }
  #metalground .product-description .product-specification {
    margin: 0;
    padding: 40px 60px; }
    @media (max-width: 767px) {
      #metalground .product-description .product-specification {
        padding: 25px; } }
    #metalground .product-description .product-specification table {
      width: 100%; }
      @media (max-width: 767px) {
        #metalground .product-description .product-specification table {
          margin-top: 0; } }
      #metalground .product-description .product-specification table td {
        min-width: 35px; }
        @media (max-width: 767px) {
          #metalground .product-description .product-specification table td {
            min-width: 80px; } }
    @media (max-width: 767px) {
      #metalground .product-description .product-specification .appearance-left table td {
        min-width: 115px; }
      #metalground .product-description .product-specification .appearance-right table td {
        min-width: 35px; }
      #metalground .product-description .product-specification .wrench-specification td {
        min-width: 120px; } }
  #metalground .product-description.bg-white .product-specification {
    padding: 0; }
  #metalground .product-description .table-text {
    padding-top: 5px;
    padding-bottom: 75px; }
    @media (max-width: 767px) {
      #metalground .product-description .table-text {
        padding-bottom: 60px; } }
    #metalground .product-description .table-text li {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.6em;
      padding: 0;
      text-align: left; }
      @media (max-width: 767px) {
        #metalground .product-description .table-text li {
          font-size: 12px;
          font-size: 1.2rem; } }

@media (max-width: 767px) {
  .page.product #metalground .product-description .product-specification.overflow-clear {
    overflow: visible; } }
/* CSS Document */
/* factory
----------------------------------------------------------------*/
.page.factory .page-top p b {
  font-size: 18px;
  font-size: 1.8rem;
  text-align: center;
  color: #0d6cb5;
  display: block; }

.page.factory .f-box {
  margin-top: 50px; }
  .page.factory .f-box .bg-gray {
    padding: 30px 0 75px; }
  .page.factory .f-box .inner {
    padding: 0 100px; }
    .page.factory .f-box .inner p {
      font-size: 14px;
      font-size: 1.4rem; }
    .page.factory .f-box .inner img {
      width: 100%;
      display: block;
      margin: 40px auto; }
  .page.factory .f-box h2 {
    font-size: 42px;
    font-size: 4.2rem;
    text-align: center;
    font-weight: normal;
    margin: 100px auto 50px;
    padding-left: 5px;
    letter-spacing: 0.2em; }
  .page.factory .f-box .flex-box {
    width: 900px !important;
    margin: 0 auto 100px; }
    .page.factory .f-box .flex-box .col-3 {
      width: 33.1%; }
      .page.factory .f-box .flex-box .col-3:first-child {
        -webkit-animation-delay: 0.2s;
        animation-delay: 0.2s; }
      .page.factory .f-box .flex-box .col-3:nth-child(2) {
        -webkit-animation-delay: 0.35s;
        animation-delay: 0.35s; }
      .page.factory .f-box .flex-box .col-3:nth-child(3) {
        -webkit-animation-delay: 0.5s;
        animation-delay: 0.5s; }
      .page.factory .f-box .flex-box .col-3 img {
        width: 100%;
        height: auto; }
      .page.factory .f-box .flex-box .col-3 p {
        margin: 15px auto;
        display: block;
        text-align: center;
        font-size: 24px;
        font-size: 2.4rem; }

@media (max-width: 767px) {
  .page.factory .page-top p b {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.7em;
    padding: 0 6%; }

  .page.factory .f-box {
    margin-top: 25px; }
    .page.factory .f-box .bg-gray {
      padding: 20px 0 40px; }
    .page.factory .f-box .inner {
      padding: 0 6%; }
      .page.factory .f-box .inner p {
        font-size: 12px;
        font-size: 1.2rem; }
      .page.factory .f-box .inner img {
        margin: 20px auto; }
    .page.factory .f-box h2 {
      font-size: 22px;
      font-size: 2.2rem;
      margin: 50px auto 40px;
      padding-left: 2px; }
    .page.factory .f-box .flex-box {
      width: 88% !important;
      margin: 0 auto 50px; }
      .page.factory .f-box .flex-box .col-3 {
        width: 100%;
        -webkit-animation-delay: 0.2s;
        animation-delay: 0.2s;
        margin-bottom: 40px; }
        .page.factory .f-box .flex-box .col-3 img {
          width: 60%;
          margin: 0 20%; }
        .page.factory .f-box .flex-box .col-3 p {
          font-size: 16px;
          font-size: 1.6rem;
          margin: 10px auto 0; } }
.page.factory .contact-btn {
  padding: 50px 0; }
  .page.factory .contact-btn p a {
    background: url(../img/page-factory/img-contact-btn.png) #a4cdec;
    background-repeat: no-repeat;
    background-position: 0 top;
    background-size: auto 100%;
    color: #292929;
    font-size: 28px;
    font-size: 2.8rem;
    text-align: center;
    padding: 50px 0 52px 80px;
    font-weight: 500;
    position: relative;
    display: block; }
    .page.factory .contact-btn p a img {
      height: 40px;
      position: absolute;
      top: 45px;
      right: 50px;
      display: inline-block; }
    .page.factory .contact-btn p a:hover {
      letter-spacing: 0.05em;
      background: url(../img/page-factory/img-contact-btn.png) #77b2de;
      background-repeat: no-repeat;
      background-position: 0 top;
      background-size: auto 100%;
      opacity: 1; }

@media (max-width: 767px) {
  .page.factory .contact-btn {
    padding: 30px 0; }
    .page.factory .contact-btn p a {
      height: 70px;
      background-repeat: no-repeat;
      background-position: -10px top;
      background-size: auto 100%;
      font-size: 13px;
      font-size: 1.3rem;
      text-align: left;
      padding: 15px 0 15px 40%;
      position: relative; }
      .page.factory .contact-btn p a:hover {
        background-position: -10px top;
        letter-spacing: 0.025em; }
      .page.factory .contact-btn p a img {
        height: 25px;
        top: 22px;
        right: 15px; } }
/* CSS Document */
/* company
----------------------------------------------------------------*/
.page.company .c-box {
  margin: 30px auto 130px;
  padding: 70px 0 5px;
  overflow: hidden; }
  .page.company .c-box .inner {
    padding: 0 calc((100% - 1048px) /2);
    width: 100%; }
    .page.company .c-box .inner p.office {
      text-align: center;
      font-size: 18px;
      font-size: 1.8rem;
      color: #0d6cb5;
      margin-bottom: 15px;
      font-weight: 800; }
      .page.company .c-box .inner p.office span.arrow {
        display: inline-block;
        width: 18px;
        height: 18px;
        background: #B71D25;
        position: relative;
        margin-right: 10px;
        top: 3px; }
        .page.company .c-box .inner p.office span.arrow img {
          height: 10px;
          position: absolute;
          left: 5px;
          top: 4px; }
    .page.company .c-box .inner .overview {
      font-size: 15px;
      font-size: 1.5rem;
      text-align: center; }
    .page.company .c-box .inner .comapny-info {
      padding: 35px 60px 40px;
      background: #FFF;
      margin: 25px auto 70px;
      width: 80%; }
    .page.company .c-box .inner table {
      font-size: 16px;
      font-size: 1.6rem;
      width: 100%;
      margin: 0 auto; }
      .page.company .c-box .inner table th, .page.company .c-box .inner table td {
        padding: 21px 0 20px;
        line-height: 1.4em;
        border-bottom: 1px solid #b4b4b4; }
      .page.company .c-box .inner table th {
        padding: 21px 35px 20px 15px;
        width: 180px;
        text-align: right;
        vertical-align: top; }
      .page.company .c-box .inner table td {
        padding-right: 18px; }
        .page.company .c-box .inner table td a {
          color: #717071; }
          .page.company .c-box .inner table td a:hover {
            opacity: 1;
            color: #0d6cb5; }
  .page.company .c-box .access__title {
    text-align: center;
    font-size: 40px;
    font-size: 4rem;
    margin: 100px auto 75px;
    font-weight: normal;
    text-align: center;
    color: #717071; }
    .page.company .c-box .access__title span.arrow {
      display: inline-block;
      width: 18px;
      height: 18px;
      background: #B71D25;
      position: relative;
      margin-right: 10px;
      top: 3px; }
      .page.company .c-box .access__title span.arrow img {
        height: 10px;
        position: absolute;
        left: 5px;
        top: 4px; }
  .page.company .c-box .access__flex {
    display: flex;
    gap: 8%;
    margin-bottom: 25px;
    justify-content: center;
    font-size: 14px;
    font-size: 1.4rem; }
    .page.company .c-box .access__flex address {
      font-style: normal; }
  .page.company .c-box .access .g-map {
    width: 100%;
    height: 300px;
    margin-bottom: 70px; }

.inner {
  width: 100% !important; }

@media screen and (min-width: 767px) and (max-width: 1200px) {
  .page.company .c-box .inner {
    padding: 0 2%; } }
@media (max-width: 767px) {
  .page.company {
    padding-top: 65px; }
    .page.company .c-box {
      margin: 20px auto 50px;
      padding: 0 0 4%; }
      .page.company .c-box .inner {
        padding: 0 6%; }
        .page.company .c-box .inner p.office {
          font-size: 16px;
          font-size: 1.6rem; }
        .page.company .c-box .inner .overview {
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 1.6em; }
        .page.company .c-box .inner .comapny-info {
          padding: 2.5% 0 5%;
          width: 100%;
          margin: 25px auto 50px; }
        .page.company .c-box .inner table {
          font-size: 14px;
          font-size: 1.4rem; }
          .page.company .c-box .inner table th, .page.company .c-box .inner table td {
            padding: 8px 5px 8px;
            width: 100% !important;
            float: left;
            line-height: 1.55em; }
          .page.company .c-box .inner table tr:last-child th {
            border-bottom: 1px solid #b4b4b4; }
          .page.company .c-box .inner table th {
            padding: 12px 5px 8px;
            text-align: left; }
          .page.company .c-box .inner table td {
            border: none; }
            .page.company .c-box .inner table td a {
              display: inline-block;
              margin-right: 15px;
              margin-bottom: 0; }
      .page.company .c-box .access .access__title {
        font-size: 22px;
        font-size: 2.2rem;
        margin: 40px 0; }
      .page.company .c-box .access__flex {
        flex-direction: column;
        gap: 12px;
        margin-bottom: 25px;
        font-size: 14px;
        font-size: 1.4rem; }
        .page.company .c-box .access__flex address {
          margin-bottom: 12px; }
        .page.company .c-box .access__flex .access-list li {
          margin-bottom: 10px; }
      .page.company .c-box .access .g-map {
        margin-bottom: 50px; } }
/* CSS Document */
/* contact-form
----------------------------------------------------------------*/
.page.contact .page-top p {
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center; }
  .page.contact .page-top p b {
    border-bottom: solid 2px rgba(113, 112, 113, 0.3);
    padding-bottom: 2px;
    margin-bottom: 4px;
    display: inline-block; }
.page.contact .page-top .tel-box {
  display: block;
  margin: 20px auto 60px;
  text-align: center; }
  .page.contact .page-top .tel-box p {
    display: inline-block;
    margin: 0 15px;
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold; }
  .page.contact .page-top .tel-box p, .page.contact .page-top .tel-box a {
    color: #0d6cb5;
    font-family: 'Poppins', sans-serif; }
  .page.contact .page-top .tel-box a:hover {
    opacity: 1; }

.page.contact .contact-form {
  margin: 30px auto 130px;
  padding: 60px 0 20px; }
  .page.contact .contact-form .inner table {
    font-size: 14px;
    font-size: 1.4rem;
    width: 740px;
    margin: 0 auto; }
    .page.contact .contact-form .inner table th, .page.contact .contact-form .inner table td {
      padding: 21px 0 20px;
      line-height: 2em;
      border-bottom: 1px solid #b4b4b4; }
    .page.contact .contact-form .inner table tr.choice th, .page.contact .contact-form .inner table tr.choice td {
      border-bottom: none; }
    .page.contact .contact-form .inner table th {
      padding: 21px 35px 20px 15px;
      width: 270px;
      text-align: right;
      vertical-align: top; }
      .page.contact .contact-form .inner table th span {
        color: #ff9837;
        float: left;
        display: inline-block; }
    .page.contact .contact-form .inner table td {
      padding-right: 18px;
      /* IE */
      /* Edge */ }
      .page.contact .contact-form .inner table td input {
        border: #dddddd solid 1px;
        padding: 5px 0 5px 12px !important;
        border-radius: 0;
        line-height: 1.8em;
        width: 100%; }
        .page.contact .contact-form .inner table td input.wide {
          width: 99% !important; }
        .page.contact .contact-form .inner table td input.middle {
          width: 80% !important; }
        .page.contact .contact-form .inner table td input.short {
          width: 48% !important; }
          .page.contact .contact-form .inner table td input.short.right {
            margin-left: 2%; }
        .page.contact .contact-form .inner table td input.checkbox-input {
          display: none !important; }
        .page.contact .contact-form .inner table td input[type='checkbox'] {
          width: auto; }
      .page.contact .contact-form .inner table td input::placeholder {
        color: rgba(113, 112, 113, 0.5); }
      .page.contact .contact-form .inner table td input:-ms-input-placeholder {
        color: rgba(113, 112, 113, 0.5); }
      .page.contact .contact-form .inner table td input::-ms-input-placeholder {
        color: rgba(113, 112, 113, 0.5); }
      .page.contact .contact-form .inner table td input:focus::-webkit-input-placeholder {
        color: transparent; }
      .page.contact .contact-form .inner table td input:focus::-ms-input-placeholder {
        color: transparent; }
      .page.contact .contact-form .inner table td input:focus::placeholder {
        color: transparent; }
      .page.contact .contact-form .inner table td input:focus:-ms-input-placeholder {
        color: transparent; }
      .page.contact .contact-form .inner table td input:focus::-ms-input-placeholder {
        color: transparent; }
      .page.contact .contact-form .inner table td input:focus {
        outline: 0; }
      .page.contact .contact-form .inner table td span.mwform-checkbox-field-text a {
        display: inline-block;
        color: #fe985a;
        text-decoration: underline;
        margin-right: 5px; }
        .page.contact .contact-form .inner table td span.mwform-checkbox-field-text a:hover {
          opacity: 0.5; }
      .page.contact .contact-form .inner table td select.source {
        padding: 5px 60px 5px 12px;
        background: #FFF;
        height: auto;
        -webkit-box-shadow: 2px 2px 0 #eee inset;
        box-shadow: 2px 2px 0 #eee inset;
        border: #dddddd solid 1px;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        border-radius: 0;
        font-size: 1em;
        width: 48%;
        background-image: url(../img/page-contact/ico_select_arrow.png);
        background-position: 98% center;
        background-repeat: no-repeat;
        background-size: 32px auto;
        cursor: pointer; }
      .page.contact .contact-form .inner table td select:focus {
        outline: 0; }
      .page.contact .contact-form .inner table td ::-ms-expand {
        /* select要素のデザインを無効にする（IE用） */
        display: none; }
      .page.contact .contact-form .inner table td textarea {
        border-radius: 0;
        width: 100%;
        height: 270px;
        border: #dddddd solid 1px;
        padding: 5px 12px !important;
        -webkit-box-shadow: 2px 2px 0 #eee inset;
        box-shadow: 2px 2px 0 #eee inset; }
        .page.contact .contact-form .inner table td textarea:focus {
          outline: 0; }
      .page.contact .contact-form .inner table td label.mfp_checked, .page.contact .contact-form .inner table td label.mfp_not_checked {
        padding: 1px 3px !important;
        border: none !important; }
      .page.contact .contact-form .inner table td .checkbox-parts {
        padding-left: 12px;
        position: relative;
        margin-right: 12px;
        top: 0 !important; }
        .page.contact .contact-form .inner table td .checkbox-parts:before {
          content: "";
          display: block;
          position: absolute;
          top: 3px;
          left: 3px;
          width: 15px;
          height: 15px;
          border: 1px solid #dddddd;
          border-radius: 0;
          background: #FFF; }
      .page.contact .contact-form .inner table td label.mfp_checked .checkbox-parts:after {
        content: "";
        display: block;
        position: absolute;
        top: 0px;
        left: 8.5px;
        width: 7px;
        height: 14px;
        transform: rotate(40deg);
        border-bottom: 3px solid #B71D25;
        border-right: 3px solid #B71D25; }
    .page.contact .contact-form .inner table .half {
      display: flex;
      gap: 5%; }
      .page.contact .contact-form .inner table .half__td {
        width: 50%; }
    .page.contact .contact-form .inner table .choice {
      width: 740px; }
      .page.contact .contact-form .inner table .choice th {
        vertical-align: middle; }
      .page.contact .contact-form .inner table .choice td {
        width: 470px; }
  .page.contact .contact-form .inner .contact-action {
    width: fit-content;
    margin: 0 auto; }
    .page.contact .contact-form .inner .contact-action span {
      font-size: 16px;
      font-size: 1.6rem;
      color: #FFF;
      position: relative;
      transition: all 0.35s;
      width: 190px;
      height: 37px;
      display: block;
      margin: 0 auto; }
      .page.contact .contact-form .inner .contact-action span::before {
        content: "";
        width: 8px;
        height: 20px;
        background: url(../img/common/charm/arrow-white.png) no-repeat;
        background-size: auto 100%;
        position: absolute;
        right: 13px;
        top: 13px;
        transition: all 0.3s; }
      .page.contact .contact-form .inner .contact-action span .contact__btn {
        margin: 0 auto;
        display: block;
        width: 190px;
        border: none;
        background: #B71D25;
        padding: 11px 23px; }
        .page.contact .contact-form .inner .contact-action span .contact__btn.btn__correction {
          margin-top: 50px;
          background-color: #b4b4b4; }
      .page.contact .contact-form .inner .contact-action span.correction__wrap::before {
        left: 13px;
        transform: rotate(180deg); }
    .page.contact .contact-form .inner .contact-action span:hover:before {
      right: 8px; }
    .page.contact .contact-form .inner .contact-action span.correction__wrap:hover::before {
      left: 8px; }
  .page.contact .contact-form .inner .btn {
    margin: 0 auto;
    display: block;
    width: 190px;
    padding: 0;
    border: none; }
    .page.contact .contact-form .inner .btn span {
      font-size: 16px;
      font-size: 1.6rem;
      width: 100%;
      color: #FFF;
      display: block;
      position: relative;
      transition: all 0.35s;
      padding: 6px 10px 8px 0;
      background: #B71D25; }
      .page.contact .contact-form .inner .btn span:before {
        content: "";
        width: 8px;
        height: 20px;
        background: url(../img/common/charm/arrow-white.png) no-repeat;
        background-size: auto 100%;
        position: absolute;
        right: 13px;
        top: 11px;
        transition: all 0.3s; }
    .page.contact .contact-form .inner .btn:hover span:before {
      right: 8px; }
    .page.contact .contact-form .inner .btn:focus {
      outline: 0; }

.page.contact .mw_wp_form_complete {
  max-width: 1048px;
  margin: 10vw auto;
  text-align: center; }
  .page.contact .mw_wp_form_complete p {
    margin-bottom: 20px; }
  .page.contact .mw_wp_form_complete .btn a {
    margin: 50px auto 0;
    width: 190px;
    padding: 5px 0 7px 8px;
    display: block;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: normal; }
    .page.contact .mw_wp_form_complete .btn a:before {
      content: "";
      width: 8px;
      height: 16px;
      left: 12px;
      top: 12px;
      transform: rotate(-180deg); }
    .page.contact .mw_wp_form_complete .btn a:hover::before {
      left: 7.5px; }

form#mailformpro #mfp_hidden {
  overflow: hidden;
  width: 1px;
  height: 1px;
  padding: 0px;
  margin: 0px; }

div.mfp_buttons {
  display: table !important;
  margin: 50px auto 40px; }

div.mfp_buttons button#mfp_button_cancel {
  float: left;
  padding: 6px 0 8px 10px; }

div.mfp_buttons button#mfp_button_cancel:before {
  transform: scale(-1, 1);
  right: auto !important;
  left: 13px; }

div.mfp_buttons button#mfp_button_cancel:hover:before {
  left: 8px;
  right: auto; }

@media (max-width: 767px) {
  .page.contact .page-top {
    padding: 0 6%; }
    .page.contact .page-top h1 {
      margin: 40px auto 45px; }
    .page.contact .page-top p {
      font-size: 14px;
      font-size: 1.4rem; }
      .page.contact .page-top p b {
        border-bottom: solid 2px rgba(113, 112, 113, 0.3);
        padding-bottom: 10px;
        margin-bottom: 10px;
        display: inline-block; }
    .page.contact .page-top .tel-box {
      display: block;
      margin: 15px auto 30px;
      text-align: center; }
      .page.contact .page-top .tel-box p {
        margin: 0 7px;
        font-size: 16px;
        font-size: 1.6rem; }

  .page.contact .contact-form {
    margin: 20px auto 50px;
    padding: 8% 6%; }
    .page.contact .contact-form .inner table {
      font-size: 14px;
      font-size: 1.4rem;
      width: 100%; }
      .page.contact .contact-form .inner table tr {
        border-bottom: 1px solid #b4b4b4; }
        .page.contact .contact-form .inner table tr.border-t {
          border-top: none; }
      .page.contact .contact-form .inner table th, .page.contact .contact-form .inner table td {
        padding: 6px 0 12px;
        width: 100% !important;
        float: left;
        line-height: 1.8em;
        border-bottom: none; }
      .page.contact .contact-form .inner table th {
        padding: 22px 5px 0;
        text-align: left; }
        .page.contact .contact-form .inner table th span {
          margin-right: 10px; }
      .page.contact .contact-form .inner table td {
        padding-right: 0;
        /* IE */
        /* Edge */ }
        .page.contact .contact-form .inner table td input {
          width: 100%;
          font-size: 1.6em !important;
          font-size: 16px !important;
          border-radius: 0; }
          .page.contact .contact-form .inner table td input.wide {
            width: 100% !important; }
          .page.contact .contact-form .inner table td input.middle {
            width: 80% !important; }
          .page.contact .contact-form .inner table td input.short {
            width: 48% !important; }
            .page.contact .contact-form .inner table td input.short.right {
              margin-left: 2%; }
            .page.contact .contact-form .inner table td input.short.tel {
              width: 100% !important; }
          .page.contact .contact-form .inner table td input.checkbox-input {
            display: none !important; }
        .page.contact .contact-form .inner table td .mwform-checkbox-field label input {
          width: auto; }
        .page.contact .contact-form .inner table td input::placeholder {
          font-size: 14px;
          font-size: 1.4rem; }
        .page.contact .contact-form .inner table td input:-ms-input-placeholder {
          font-size: 14px;
          font-size: 1.4rem; }
        .page.contact .contact-form .inner table td input::-ms-input-placeholder {
          font-size: 14px;
          font-size: 1.4rem; }
        .page.contact .contact-form .inner table td input:focus::-webkit-input-placeholder {
          color: transparent; }
        .page.contact .contact-form .inner table td input:focus::-ms-input-placeholder {
          color: transparent; }
        .page.contact .contact-form .inner table td input:focus::placeholder {
          color: transparent; }
        .page.contact .contact-form .inner table td input:focus:-ms-input-placeholder {
          color: transparent; }
        .page.contact .contact-form .inner table td input:focus::-ms-input-placeholder {
          color: transparent; }
        .page.contact .contact-form .inner table td input:focus {
          outline: 0; }
        .page.contact .contact-form .inner table td span.mwform-checkbox-field-text a {
          display: inline-block;
          color: #fe985a;
          text-decoration: underline;
          margin-right: 5px; }
          .page.contact .contact-form .inner table td span.mwform-checkbox-field-text a:hover {
            opacity: 0.5; }
        .page.contact .contact-form .inner table td select.source {
          padding: 5px 60px 5px 12px;
          background: #FFF;
          height: auto;
          -webkit-box-shadow: 2px 2px 0 #eee inset;
          box-shadow: 2px 2px 0 #eee inset;
          border: #dddddd solid 1px;
          -webkit-appearance: none;
          -moz-appearance: none;
          appearance: none;
          border-radius: 0;
          font-size: 1.6em;
          width: 100%;
          background-image: url(../img/page-contact/ico_select_arrow.png);
          background-position: 98% center;
          background-repeat: no-repeat;
          background-size: 32px auto;
          cursor: pointer; }
        .page.contact .contact-form .inner table td select:focus {
          outline: 0; }
        .page.contact .contact-form .inner table td ::-ms-expand {
          /* select要素のデザインを無効にする（IE用） */
          display: none; }
        .page.contact .contact-form .inner table td textarea {
          font-size: 1.6em !important;
          font-size: 16px !important;
          width: 100%;
          height: 240px;
          border: #dddddd solid 1px;
          padding: 2px 5px !important;
          -webkit-box-shadow: 1px 1px 0 #eee inset;
          box-shadow: 1px 1px 0 #eee inset; }
        .page.contact .contact-form .inner table td label.mfp_checked, .page.contact .contact-form .inner table td label.mfp_not_checked {
          font-size: 12px; }
      .page.contact .contact-form .inner table .unnecessary {
        min-height: 40px; }
      .page.contact .contact-form .inner table .choice {
        width: 100%; }
        .page.contact .contact-form .inner table .choice td {
          width: 100%; }
        .page.contact .contact-form .inner table .choice:last-child th, .page.contact .contact-form .inner table .choice:last-child td {
          border-bottom: none; }
    .page.contact .contact-form .inner .btn {
      margin: 0 auto !important;
      display: block;
      width: 190px !important;
      padding: 0;
      border: none; }
      .page.contact .contact-form .inner .btn span {
        font-size: 15px;
        font-size: 1.5rem;
        padding: 11px 10px 12px 0; }
    .page.contact .contact-form .contact-action span .contact__btn {
      border-radius: 0; }

  .page.contact .mw_wp_form_complete {
    padding: 0 6%; }
    .page.contact .mw_wp_form_complete .btn a {
      padding: 15px 0 15px 14px; }
      .page.contact .mw_wp_form_complete .btn a:before {
        height: 20px;
        left: 12px;
        top: 16px;
        transform: rotate(-180deg); }

  form#mailformpro .sp-m {
    margin: 6px 0 12px !important; }

  form#mailformpro select {
    font-size: 16px !important; }

  div.mfp_buttons {
    display: block !important;
    margin: 20px auto !important; }

  div.mfp_buttons button#mfp_button_cancel {
    padding: 11px 0 12px 10px;
    margin-left: 15px !important; }

  div.mfp_buttons button#mfp_button_send {
    padding: 11px 10px 12px 0; }

  div.mfp_buttons button#mfp_button_cancel:before {
    transform: scale(-1, 1);
    right: auto !important;
    left: 13px; }

  div.mfp_buttons button#mfp_button_cancel:hover:before {
    left: 8px;
    right: auto; }

  div.mfp_buttons button {
    font-size: 1.5em !important;
    font-size: 15px !important;
    margin: 0 10px !important;
    width: 40% !important; } }
.page.contact .thanks {
  padding: 120px 0 70px;
  margin: 70px auto 130px; }
  .page.contact .thanks p.text {
    text-align: center;
    line-height: 1.8em; }
  .page.contact .thanks p.btn {
    margin: 50px auto;
    display: block; }
    .page.contact .thanks p.btn a {
      width: 190px;
      display: inline-block; }
      .page.contact .thanks p.btn a:hover:before {
        right: 8px; }

/* CSS Document */
/* info
----------------------------------------------------------------*/
.page.info .info-common {
  padding: 75px 0 50px;
  max-width: 1048px;
  margin: 0 auto; }
  @media (max-width: 767px) {
    .page.info .info-common {
      padding: 20px 6% 20px; } }
  .page.info .info-common .inner {
    display: table; }
    @media (max-width: 767px) {
      .page.info .info-common .inner {
        display: block; } }
    .page.info .info-common .inner .contents-block {
      display: table-cell;
      width: 730px;
      padding-right: 30px;
      overflow: hidden; }
      @media (max-width: 767px) {
        .page.info .info-common .inner .contents-block {
          display: block;
          width: 100%;
          padding: 0; } }
      .page.info .info-common .inner .contents-block li, .page.info .info-common .inner .contents-block .single-box {
        width: 100%;
        display: block; }
        .page.info .info-common .inner .contents-block li img, .page.info .info-common .inner .contents-block .single-box img {
          width: 100%;
          height: auto; }
        .page.info .info-common .inner .contents-block li h2, .page.info .info-common .inner .contents-block .single-box h2 {
          text-align: justify;
          font-size: 26px;
          font-size: 2.6rem;
          margin: 12px 0 0;
          font-weight: normal;
          position: relative;
          line-height: 1.7em; }
        .page.info .info-common .inner .contents-block li .date-block, .page.info .info-common .inner .contents-block .single-box .date-block {
          display: block;
          width: 100%; }
          .page.info .info-common .inner .contents-block li .date-block span, .page.info .info-common .inner .contents-block .single-box .date-block span {
            display: inline-block; }
            .page.info .info-common .inner .contents-block li .date-block span.date, .page.info .info-common .inner .contents-block .single-box .date-block span.date {
              font-size: 16px;
              font-size: 1.6rem;
              letter-spacing: 0;
              font-family: "Roboto", sans-serif;
              font-weight: 300;
              color: #E60012; }
            .page.info .info-common .inner .contents-block li .date-block span.icon, .page.info .info-common .inner .contents-block li .date-block span.icon a, .page.info .info-common .inner .contents-block .single-box .date-block span.icon, .page.info .info-common .inner .contents-block .single-box .date-block span.icon a {
              font-size: 14px;
              font-size: 1.4rem;
              line-height: 1em; }
            .page.info .info-common .inner .contents-block li .date-block span.icon, .page.info .info-common .inner .contents-block .single-box .date-block span.icon {
              padding: 5px 0;
              letter-spacing: -0.03em;
              color: #FFF;
              min-width: 58px;
              margin: 0 5px;
              list-style: none;
              background: #B71D25;
              font-size: 12px;
              font-size: 1.2rem;
              text-align: center; }
        .page.info .info-common .inner .contents-block li .text-block, .page.info .info-common .inner .contents-block .single-box .text-block {
          text-align: justify;
          margin: 40px 0;
          line-height: 1.8em; }
        .page.info .info-common .inner .contents-block li .btn span, .page.info .info-common .inner .contents-block .single-box .btn span {
          width: 150px;
          padding: 4px 0;
          display: block;
          border-radius: 20px;
          font-size: 16px;
          font-size: 1.6rem;
          font-weight: normal; }
          .page.info .info-common .inner .contents-block li .btn span:before, .page.info .info-common .inner .contents-block .single-box .btn span:before {
            content: "";
            width: 8px;
            height: 16px;
            right: 12px;
            top: 9px; }
        .page.info .info-common .inner .contents-block li:last-child, .page.info .info-common .inner .contents-block .single-box:last-child {
          background: url(../img/common/charm-green-border.png), url(../img/common/charm-green-border.png);
          background-size: 70px auto;
          background-position: top left,bottom left;
          background-repeat: repeat-x; }
        .page.info .info-common .inner .contents-block li.icon-pdf a h2, .page.info .info-common .inner .contents-block .single-box.icon-pdf a h2 {
          color: #fe985a;
          text-decoration: underline;
          background-image: url(../img/page-info/icon-pdf.svg);
          background-position: right center;
          background-repeat: no-repeat;
          background-size: auto 27px;
          padding-right: 35px; }
    .page.info .info-common .inner .side-bar-block {
      display: table-cell;
      width: 270px;
      padding: 10px 0 0 50px;
      vertical-align: top; }
      @media (max-width: 767px) {
        .page.info .info-common .inner .side-bar-block {
          display: block;
          width: 100%;
          padding: 0; } }
      .page.info .info-common .inner .side-bar-block .sidebar-contents {
        display: block;
        margin-bottom: 50px; }
        .page.info .info-common .inner .side-bar-block .sidebar-contents h3 {
          font-size: 18px;
          font-size: 1.8rem;
          display: block;
          position: relative;
          margin-bottom: 15px;
          padding: 0 0 5px 5px;
          border-bottom: 2px solid #B71D25; }
          .page.info .info-common .inner .side-bar-block .sidebar-contents h3 span {
            font-size: 10px;
            font-size: 1rem;
            display: inline-block;
            color: #B71D25;
            font-family: "Roboto", sans-serif;
            font-weight: 700;
            margin-left: 10px; }
        .page.info .info-common .inner .side-bar-block .sidebar-contents ul li {
          font-size: 14px;
          font-size: 1.4rem;
          display: block;
          margin-bottom: 12px; }
          .page.info .info-common .inner .side-bar-block .sidebar-contents ul li a {
            display: inline-block;
            color: #717071;
            text-decoration: underline;
            position: relative;
            padding-left: 8px; }
            .page.info .info-common .inner .side-bar-block .sidebar-contents ul li a:hover {
              color: #B71D25;
              opacity: 1; }
  .page.info .info-common.list .inner .contents-block li {
    border-bottom: 1px solid #b4b4b4; }
    .page.info .info-common.list .inner .contents-block li a {
      color: #717071;
      display: block;
      padding: 10px 0 18px; }
      .page.info .info-common.list .inner .contents-block li a h2 {
        transition: all 0.5s;
        font-size: 18px;
        font-size: 1.8rem;
        margin-top: 0;
        line-height: 2.7rem;
        font-weight: 400; }
      .page.info .info-common.list .inner .contents-block li a:hover {
        opacity: 0.5; }
  .page.info .info-common.list .pagenavi {
    margin-top: 75px;
    display: block;
    text-align: center;
    position: relative; }
    @media (max-width: 767px) {
      .page.info .info-common.list .pagenavi {
        margin-top: 30px;
        margin-bottom: 40px; } }
    .page.info .info-common.list .pagenavi .pagenavi-prev, .page.info .info-common.list .pagenavi .pagenavi-next {
      width: 22px;
      height: 22px;
      background: rgba(89, 88, 88, 0.3);
      display: inline-block;
      transition: all 0.4s;
      position: relative;
      top: 4px; }
      .page.info .info-common.list .pagenavi .pagenavi-prev:after, .page.info .info-common.list .pagenavi .pagenavi-next:after {
        content: "";
        width: 22px;
        height: 22px;
        position: absolute;
        right: 0;
        top: 0;
        background: url(../img/common/charm/arrow-triangle.svg);
        background-repeat: no-repeat;
        background-size: auto 12px;
        background-position: center;
        display: block;
        z-index: 1; }
      .page.info .info-common.list .pagenavi .pagenavi-prev:hover, .page.info .info-common.list .pagenavi .pagenavi-next:hover {
        opacity: 1;
        background: #0d6cb5; }
    .page.info .info-common.list .pagenavi #wp-pagenavi a {
      display: inline-block; }
    .page.info .info-common.list .pagenavi .pagenavi-prev {
      transform: scale(-1, 1);
      margin-right: 10px; }
    .page.info .info-common.list .pagenavi .pagenavi-next {
      margin-left: 10px; }
    .page.info .info-common.list .pagenavi .pagenavi-number, .page.info .info-common.list .pagenavi .page, .page.info .info-common.list .pagenavi .current {
      font-family: 'Poppins';
      display: inline-block;
      margin: 0 14px;
      border-radius: 15px;
      transition: all 0.5;
      font-weight: 500;
      cursor: pointer;
      color: #b4b4b4; }
      .page.info .info-common.list .pagenavi .pagenavi-number:hover, .page.info .info-common.list .pagenavi .page:hover, .page.info .info-common.list .pagenavi .current:hover {
        opacity: 0.5; }
    .page.info .info-common.list .pagenavi .current {
      color: #B71D25; }
    .page.info .info-common.list .pagenavi .nextpostslink, .page.info .info-common.list .pagenavi .previouspostslink {
      display: inline-block;
      margin: 0 14px;
      color: #717071; }
    .page.info .info-common.list .pagenavi .last {
      color: #b4b4b4; }
  .page.info .info-common.single .inner .contents-block .single-box {
    display: block;
    margin-bottom: 40px; }
    .page.info .info-common.single .inner .contents-block .single-box .date-block {
      padding: 8px 15px 0; }
    .page.info .info-common.single .inner .contents-block .single-box h1 {
      color: #717071;
      font-size: 30px;
      font-size: 3rem;
      font-weight: 500;
      padding: 0 15px 20px;
      border-bottom: 1px solid #b4b4b4;
      line-height: 1.7em;
      text-align: left;
      margin: 50px 0; }
    .page.info .info-common.single .inner .contents-block .single-box h2 {
      color: #717071;
      font-size: 26px;
      font-size: 2.6rem;
      font-weight: 500;
      padding: 0 15px 12px;
      border-bottom: 1px dashed #b4b4b4;
      line-height: 1.7em;
      margin: 10px 0 20px; }
    .page.info .info-common.single .inner .contents-block .single-box h3 {
      color: #717071;
      font-size: 24px;
      font-size: 2.4rem;
      font-weight: 500;
      margin: 14px 0;
      border-left: solid 4px #B71D25;
      padding-left: 8px; }
    .page.info .info-common.single .inner .contents-block .single-box h4 {
      font-size: 22px;
      font-size: 2.2rem;
      font-weight: 500;
      position: relative;
      padding-left: 22px;
      margin: 12px 0; }
      .page.info .info-common.single .inner .contents-block .single-box h4::before {
        content: '';
        width: 14px;
        border-bottom: 3px solid #B71D25;
        position: absolute;
        top: 13px;
        left: 0px; }
    .page.info .info-common.single .inner .contents-block .single-box h5 {
      font-size: 20px;
      font-size: 2rem;
      font-weight: bold;
      color: #0d6cb5;
      margin: 12px 0; }
    .page.info .info-common.single .inner .contents-block .single-box h6 {
      font-size: 20px;
      font-size: 2rem;
      font-weight: bold;
      margin: 12px 0; }
    .page.info .info-common.single .inner .contents-block .single-box p {
      margin-bottom: 30px; }
      .page.info .info-common.single .inner .contents-block .single-box p a {
        text-decoration: underline;
        display: inline-block;
        margin: 0 2px;
        color: #717071; }
    .page.info .info-common.single .inner .contents-block .single-box img {
      max-width: 90%;
      margin: 50px 0;
      display: block; }
      @media (max-width: 767px) {
        .page.info .info-common.single .inner .contents-block .single-box img {
          max-width: 100%; } }
    .page.info .info-common.single .inner .contents-block .single-box .text-block {
      margin: 40px 15px 0;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 2em; }
      .page.info .info-common.single .inner .contents-block .single-box .text-block li {
        background: #FFF;
        display: block;
        margin-bottom: 10px; }
      .page.info .info-common.single .inner .contents-block .single-box .text-block ul li {
        list-style: disc;
        position: relative;
        padding-left: 16px; }
        .page.info .info-common.single .inner .contents-block .single-box .text-block ul li:before {
          content: "";
          width: 6px;
          height: 6px;
          border-radius: 50px;
          background: #B71D25;
          position: absolute;
          left: 2px;
          top: 13px; }
      .page.info .info-common.single .inner .contents-block .single-box .text-block ol {
        padding-left: 0;
        margin: 0 0 0 1.2em; }
        .page.info .info-common.single .inner .contents-block .single-box .text-block ol li {
          list-style: decimal;
          display: list-item; }

.page.info .btn a {
  margin: 50px auto 0;
  width: 190px;
  padding: 5px 0 7px 8px;
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal; }
  .page.info .btn a:before {
    content: "";
    width: 8px;
    height: 16px;
    left: 12px;
    top: 12px;
    transform: rotate(-180deg); }
  .page.info .btn a:hover:before {
    left: 7.5px; }

@media screen and (min-width: 767px) and (max-width: 1200px) {
  .page.info .info-common {
    padding: 20px 2% 20px; }
    .page.info .info-common.list .inner .contents-block li a {
      padding: 10px 0 23px; }
      .page.info .info-common.list .inner .contents-block li a .date {
        font-size: 18px;
        font-size: 1.8rem; }
      .page.info .info-common.list .inner .contents-block li a h2 {
        font-size: 1.8rem; } }
@media (max-width: 767px) {
  .page.info .date-block span.date {
    font-size: 14px;
    font-size: 1.4rem; }
  .page.info .date-block span.icon, .page.info .date-block span.icon a {
    font-size: 12px;
    font-size: 1.2rem; }
  .page.info .btn a {
    padding: 15px 0 15px 14px; }
    .page.info .btn a:before {
      height: 20px;
      left: 12px;
      top: 16px;
      transform: rotate(-180deg); }
  .page.info .info-common.list .inner .contents-block li:not(last-child) {
    margin-bottom: 10px; }
  .page.info .info-common.list .inner .contents-block li a {
    padding: 5px 5px 12px; }
    .page.info .info-common.list .inner .contents-block li a .date {
      font-size: 14px;
      font-size: 1.4rem; }
    .page.info .info-common.list .inner .contents-block li a .icon {
      font-size: 1.1rem;
      min-width: 60px; }
    .page.info .info-common.list .inner .contents-block li a h2 {
      margin-top: 5px;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 2rem; }
  .page.info .info-common.single .inner .contents-block .single-box h1 {
    font-size: 26px;
    font-size: 2.6rem;
    padding: 0 10px 15px;
    line-height: 1.7em;
    margin: 30px 0; }
  .page.info .info-common.single .inner .contents-block .single-box h2 {
    font-size: 22px;
    font-size: 2.2rem;
    padding: 0 15px 12px;
    line-height: 1.7em;
    margin: 10px 0 20px; }
  .page.info .info-common.single .inner .contents-block .single-box h3 {
    font-size: 20px;
    font-size: 2rem; }
  .page.info .info-common.single .inner .contents-block .single-box h4 {
    font-size: 18px;
    font-size: 1.8rem;
    position: relative; }
  .page.info .info-common.single .inner .contents-block .single-box h5 {
    font-size: 16px;
    font-size: 1.6rem;
    margin: 12px 0; }
  .page.info .info-common.single .inner .contents-block .single-box h6 {
    font-size: 16px;
    font-size: 1.6rem;
    margin: 12px 0; } }
/* CSS Document */
/* factory
----------------------------------------------------------------*/
.page.link .bg-gray {
  margin: 30px auto 130px;
  padding: 75px 0 20px; }
  .page.link .bg-gray .inner {
    padding: 0 40px; }
    .page.link .bg-gray .inner ul {
      display: block; }
      .page.link .bg-gray .inner ul li {
        display: inline-block;
        vertical-align: top;
        margin-bottom: 50px; }
        .page.link .bg-gray .inner ul li a {
          line-height: 1.4em;
          width: 410px;
          margin: 0 20px;
          color: #717071; }
          .page.link .bg-gray .inner ul li a p.name {
            text-align: left;
            font-size: 18px;
            font-size: 1.8rem;
            margin-bottom: 15px;
            font-weight: 500; }
            .page.link .bg-gray .inner ul li a p.name span.arrow {
              display: inline-block;
              width: 18px;
              height: 18px;
              background: #0d6cb5;
              position: relative;
              margin-right: 10px;
              top: 3px; }
              .page.link .bg-gray .inner ul li a p.name span.arrow img {
                height: 10px;
                position: absolute;
                left: 5px;
                top: 4px; }
          .page.link .bg-gray .inner ul li a .img-flame {
            width: 100%;
            height: 116px;
            border: 1px solid #0d6cb5;
            margin-bottom: 10px; }
            .page.link .bg-gray .inner ul li a .img-flame.elena {
              padding-top: 18px;
              /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#278bce+0,eff2f7+100 */
              background: #278bce;
              /* Old browsers */
              background: -moz-linear-gradient(45deg, #278bce 0%, #eff2f7 80%);
              /* FF3.6-15 */
              background: -webkit-linear-gradient(45deg, #278bce 0%, #eff2f7 80%);
              /* Chrome10-25,Safari5.1-6 */
              background: linear-gradient(45deg, #278bce 0%, #eff2f7 80%);
              /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
              filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#278bce', endColorstr='#eff2f7',GradientType=1 );
              /* IE6-9 fallback on horizontal gradient */ }
              .page.link .bg-gray .inner ul li a .img-flame.elena img {
                height: 80px;
                margin: 0 auto;
                display: block; }
            .page.link .bg-gray .inner ul li a .img-flame.sk-tech {
              padding-top: 0;
              background: #1e1d30F; }
              .page.link .bg-gray .inner ul li a .img-flame.sk-tech img {
                width: 100%;
                margin: 0 auto;
                display: block; }
          .page.link .bg-gray .inner ul li a:hover p.name {
            text-decoration: underline;
            color: #0d6cb5; }

@media (max-width: 767px) {
  .page.link .bg-gray {
    margin: 20px auto 50px;
    padding: 12% 0 2%; }
    .page.link .bg-gray .inner {
      padding: 0 12%; }
      .page.link .bg-gray .inner ul li {
        display: block;
        margin-bottom: 12%; }
        .page.link .bg-gray .inner ul li a {
          line-height: 1.4em;
          width: 100%;
          margin: 0; }
          .page.link .bg-gray .inner ul li a p.name {
            font-size: 16px;
            font-size: 1.6rem;
            margin-bottom: 10px; }
          .page.link .bg-gray .inner ul li a .img-flame {
            height: auto;
            margin-bottom: 5px; }
            .page.link .bg-gray .inner ul li a .img-flame.elena {
              padding: 5% 0 6%; }
              .page.link .bg-gray .inner ul li a .img-flame.elena img {
                height: 56px; }
            .page.link .bg-gray .inner ul li a .img-flame.sk-tech {
              padding-top: 0;
              overflow: hidden; } }
/* CSS Document */
/* maker
----------------------------------------------------------------*/
.page.maker {
  padding: 140px 0 5px;
  overflow: hidden;
  color: #717071;
  margin-bottom: 130px; }
  .page.maker .inner {
    padding: 0 calc((100% - 1048px) /2);
    width: 100%; }
    .page.maker .inner .top-img {
      margin-top: 70px; }
      .page.maker .inner .top-img .img-block.img-large {
        max-width: 1048px;
        height: 480px;
        margin: 0 auto; }
        .page.maker .inner .top-img .img-block.img-large .img-flame {
          width: 100%;
          height: 480px;
          background-repeat: no-repeat;
          background-position: 0 -64px;
          background-size: cover; }
    .page.maker .inner h1 {
      font-size: 40px;
      font-size: 4rem;
      margin: 70px auto;
      text-align: center;
      font-weight: normal;
      color: #717071; }
    .page.maker .inner .block {
      font-size: 14px;
      font-size: 1.4rem;
      max-width: 850px;
      width: 100%;
      display: block;
      margin: 0 auto 75px;
      text-align: center; }
      .page.maker .inner .block P:not(last-child) {
        margin-bottom: 10px; }
  .page.maker .maker-detail {
    padding: 0 0 80px; }
    .page.maker .maker-detail.ac-mobile-accordion {
      margin-bottom: 0; }
    .page.maker .maker-detail .accordion {
      width: 100%;
      margin: 0; }
      .page.maker .maker-detail .accordion .accordion__unit {
        width: 100%; }
        .page.maker .maker-detail .accordion .accordion__unit:not(:last-child) {
          margin-bottom: 18px; }
        .page.maker .maker-detail .accordion .accordion__unit .link {
          cursor: pointer;
          display: block;
          position: relative;
          -webkit-transition: all 0.4s ease;
          -o-transition: all 0.4s ease;
          transition: all 0.4s ease; }
          .page.maker .maker-detail .accordion .accordion__unit .link h3 {
            -webkit-transition: all 0.4s ease;
            -o-transition: all 0.4s ease;
            transition: all 0.4s ease;
            font-size: 24px;
            font-size: 2.4rem;
            color: #717071;
            font-weight: normal;
            background: #eeefef;
            height: 75px;
            padding: 22px 0 0;
            text-align: center;
            position: relative; }
            .page.maker .maker-detail .accordion .accordion__unit .link h3::before {
              content: "";
              width: 22px;
              height: 18px;
              position: absolute;
              right: 25px;
              top: 22px;
              display: block;
              transition: all 0.4s;
              z-index: 1;
              border-bottom: 2px solid; }
            .page.maker .maker-detail .accordion .accordion__unit .link h3::after {
              content: "";
              width: 22px;
              height: 22px;
              position: absolute;
              right: 34px;
              top: 28px;
              border-right: 2px solid;
              display: block; }
          .page.maker .maker-detail .accordion .accordion__unit .link:hover h3 {
            background: #d6d6d6; }
        .page.maker .maker-detail .accordion .accordion__unit .sub-tab {
          display: none; }
          .page.maker .maker-detail .accordion .accordion__unit .sub-tab .accordion__list li::before {
            content: '';
            display: inline-block;
            width: 8px;
            /* 大きさ */
            height: 8px;
            /* 大きさ */
            margin-right: 20px;
            border-top: 3px solid #B71D25;
            /* 線の太さ・色 */
            border-left: 3px solid #B71D25;
            /* 線の太さ・色 */
            transform: rotate(135deg);
            -webkit-transform: rotate(135deg); }
          .page.maker .maker-detail .accordion .accordion__unit .sub-tab .list__flex {
            display: flex;
            flex-wrap: wrap; }
            .page.maker .maker-detail .accordion .accordion__unit .sub-tab .list__flex li {
              width: 50%; }
        .page.maker .maker-detail .accordion .accordion__unit.open .link h3:after {
          display: none;
          transition-timing-function: ease-in-out; }
    .page.maker .maker-detail .sub-tab {
      border: 1px solid;
      border-color: transparent #dcdcdc #dcdcdc;
      padding: 35px 60px 40px;
      font-size: 14px;
      font-size: 1.4rem; }
  .page.maker .contact-btn {
    padding: 50px 0; }
    .page.maker .contact-btn p {
      max-width: 1048px;
      width: 100%;
      margin: 0 auto; }
      .page.maker .contact-btn p a {
        background: url(../img/page-maker/img-contact-btn.jpg) #f3b522;
        background-repeat: no-repeat;
        background-position: left top;
        background-size: auto 100%;
        color: #292929;
        font-size: 28px;
        font-size: 2.8rem;
        text-align: center;
        padding: 50px 0 52px 200px;
        font-weight: 500; }
        .page.maker .contact-btn p a:hover {
          letter-spacing: 0.05em;
          background: url(/"../img/page-maker/img-contact-btn.jpg");
          background-color: #ff9837;
          background-repeat: no-repeat;
          background-position: left top;
          background-size: auto 100%;
          opacity: 1; }
        .page.maker .contact-btn p a span.arrow {
          display: inline-block;
          width: 22px;
          height: 22px;
          background: #B71D25;
          position: relative;
          margin-left: 20px;
          transition: all 0.3s; }
          .page.maker .contact-btn p a span.arrow img {
            height: 15px;
            position: absolute;
            left: 5px;
            top: 3px; }
        .page.maker .contact-btn p a:hover span.arrow {
          margin-left: 25px; }

@media screen and (min-width: 767px) and (max-width: 1200px) {
  .page.maker .inner {
    padding: 0 6%; } }
@media (max-width: 767px) {
  .page.maker {
    margin: 0 auto 50px;
    padding: 65px 0 4%; }
    .page.maker .inner {
      padding: 0 6%; }
      .page.maker .inner .top-img {
        margin-top: 40px; }
        .page.maker .inner .top-img .img-block.img-large {
          height: 246px;
          width: 100%; }
          .page.maker .inner .top-img .img-block.img-large .img-flame {
            width: 100%;
            height: 246px;
            background-repeat: no-repeat;
            background-position: center; }
      .page.maker .inner h1 {
        margin: 40px 0;
        font-size: 22px;
        font-size: 2.2rem; }
      .page.maker .inner .block {
        font-size: 14px;
        font-size: 1.4rem;
        margin: 40px 0;
        line-height: 1.6em; }
    .page.maker .maker-detail {
      padding-bottom: 20px; }
      .page.maker .maker-detail .accordion .accordion__unit .link h3 {
        font-size: 1.8rem;
        height: 56px;
        padding: 16px 0 0; }
        .page.maker .maker-detail .accordion .accordion__unit .link h3::before {
          content: "";
          width: 18px;
          height: 18px;
          right: 20px;
          top: 11px;
          background-size: auto 10px; }
        .page.maker .maker-detail .accordion .accordion__unit .link h3::after {
          content: "";
          width: 18px;
          height: 18px;
          right: 27px;
          top: 19px; }
      .page.maker .maker-detail .accordion .accordion__unit .sub-tab {
        padding: 5%;
        font-size: 1.2rem; }
        .page.maker .maker-detail .accordion .accordion__unit .sub-tab .accordion__list li::before {
          margin-right: 8px; }
    .page.maker .contact-btn {
      padding: 30px 0; }
      .page.maker .contact-btn p a {
        height: 70px;
        background: url(../img/page-maker/img-contact-btn.jpg) #f3b522;
        background-repeat: no-repeat;
        background-position: -10px top;
        background-size: auto 100%;
        font-size: 13px;
        font-size: 1.3rem;
        text-align: left;
        padding: 15px 0 15px 38%;
        position: relative; }
        .page.maker .contact-btn p a:hover {
          letter-spacing: 0.025em;
          background-position: -10px top;
          background-size: auto 100%; }
        .page.maker .contact-btn p a span.arrow {
          width: 18px;
          height: 18px;
          margin-left: 10px;
          transition: all 0.3s;
          position: relative;
          top: -6px; }
          .page.maker .contact-btn p a span.arrow img {
            height: 10px;
            left: 5px;
            top: 4px; }
        .page.maker .contact-btn p a:hover span.arrow {
          margin-left: 10px; } }
/* CSS Document */
/* maker
----------------------------------------------------------------*/
.page.nf {
  padding: 140px 0 5px;
  overflow: hidden;
  color: #717071;
  margin-bottom: 130px; }
  .page.nf .inner {
    padding: 0 calc((100% - 1048px) /2);
    width: 100%; }
    .page.nf .inner h1 {
      font-size: 40px;
      font-size: 4rem;
      margin: 70px auto;
      text-align: center;
      font-weight: normal;
      color: #717071; }
    .page.nf .inner .block {
      font-size: 14px;
      font-size: 1.4rem;
      max-width: 850px;
      width: 100%;
      display: block;
      margin: 0 auto 75px;
      text-align: center; }
      .page.nf .inner .block P:not(last-child) {
        margin-bottom: 10px; }
    .page.nf .inner .btn {
      margin: 0 auto;
      display: block;
      width: 190px;
      padding: 0;
      border: none; }
      .page.nf .inner .btn a {
        font-size: 16px;
        font-size: 1.6rem;
        width: 100%;
        color: #FFF;
        display: block;
        position: relative;
        transition: all 0.35s;
        padding: 6px 10px 8px 0;
        background: #B71D25; }
        .page.nf .inner .btn a:before {
          content: "";
          width: 8px;
          height: 20px;
          background: url(../img/common/charm/arrow-white.png) no-repeat;
          background-size: auto 100%;
          position: absolute;
          left: 13px;
          top: 11px;
          transform: rotate(-180deg);
          transition: all 0.3s; }
      .page.nf .inner .btn:hover a:before {
        left: 8px; }
      .page.nf .inner .btn:focus {
        outline: 0; }

@media screen and (min-width: 767px) and (max-width: 1200px) {
  .page.nf .inner {
    padding: 0 2%; } }
@media (max-width: 767px) {
  .page.nf {
    margin: 0 auto 50px;
    padding: 65px 0 4%; }
    .page.nf .inner {
      padding: 0 6%; }
      .page.nf .inner h1 {
        margin: 40px 0;
        font-size: 22px;
        font-size: 2.2rem; }
      .page.nf .inner .block {
        font-size: 14px;
        font-size: 1.4rem;
        margin: 0 0 40px;
        line-height: 1.6em; }
      .page.nf .inner .btn a {
        padding: 12px 0 12px 14px; }
        .page.nf .inner .btn a:before {
          height: 20px;
          left: 12px;
          top: 12px;
          transform: rotate(-180deg); } }
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

/* Slider */
.slick-loading .slick-mv {
  background: #fff url("./ajax-loader.gif") center center no-repeat; }

/* Icons */
@font-face {
  font-family: "slick";
  src: url("./fonts/slick.eot");
  src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal; }
/* Arrows */
/* Arrows */
.slide-product .slick-prev,
.slide-product .slick-next {
  background: rgba(89, 88, 88, 0.3);
  position: absolute;
  display: block;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  top: 127px;
  border: none;
  transition: all 0.3s ease-out;
  width: 26px;
  height: 46px;
  margin: 0; }
  .slide-product .slick-prev:hover, .slide-product .slick-prev:focus,
  .slide-product .slick-next:hover,
  .slide-product .slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent;
    opacity: 1;
    background: rgba(89, 88, 88, 0.7); }
.slide-product .slick-prev {
  left: -5%; }
  .slide-product .slick-prev:before {
    content: '';
    display: block;
    position: absolute;
    background: #FFF;
    width: 20px;
    height: 3px;
    -webkit-transform: rotate(-50deg);
    transform: rotate(-50deg);
    right: 3px;
    top: 14px; }
  .slide-product .slick-prev:after {
    content: '';
    display: block;
    position: absolute;
    background: #FFF;
    width: 19px;
    height: 3px;
    -webkit-transform: rotate(50deg);
    transform: rotate(50deg);
    right: 3px;
    top: 28px; }
.slide-product .slick-next {
  right: -5%; }
  .slide-product .slick-next:before {
    content: '';
    display: block;
    position: absolute;
    background: #FFF;
    width: 20px;
    height: 3px;
    -webkit-transform: rotate(50deg);
    transform: rotate(50deg);
    right: 3px;
    top: 14px; }
  .slide-product .slick-next:after {
    content: '';
    display: block;
    position: absolute;
    background: #FFF;
    width: 19px;
    height: 3px;
    -webkit-transform: rotate(-50deg);
    transform: rotate(-50deg);
    right: 3px;
    top: 28px; }

@media (max-width: 767px) {
  .slide-product .slick-prev,
  .slide-product .slick-next {
    top: 120px;
    border: none;
    transition: all 0.3s ease-out;
    width: 26px;
    height: 46px;
    margin: 0; }
    .slide-product .slick-prev:hover, .slide-product .slick-prev:focus,
    .slide-product .slick-next:hover,
    .slide-product .slick-next:focus {
      outline: none;
      background: transparent;
      color: transparent;
      opacity: 1;
      background: rgba(89, 88, 88, 0.7); }
  .slide-product .slick-prev {
    left: 5%; }
    .slide-product .slick-prev:before {
      content: '';
      display: block;
      position: absolute;
      background: #FFF;
      width: 20px;
      height: 3px;
      -webkit-transform: rotate(-50deg);
      transform: rotate(-50deg);
      right: 3px;
      top: 14px; }
    .slide-product .slick-prev:after {
      content: '';
      display: block;
      position: absolute;
      background: #FFF;
      width: 19px;
      height: 3px;
      -webkit-transform: rotate(50deg);
      transform: rotate(50deg);
      right: 3px;
      top: 28px; }
  .slide-product .slick-next {
    right: 5%; }
    .slide-product .slick-next:before {
      content: '';
      display: block;
      position: absolute;
      background: #FFF;
      width: 20px;
      height: 3px;
      -webkit-transform: rotate(50deg);
      transform: rotate(50deg);
      right: 3px;
      top: 14px; }
    .slide-product .slick-next:after {
      content: '';
      display: block;
      position: absolute;
      background: #FFF;
      width: 19px;
      height: 3px;
      -webkit-transform: rotate(-50deg);
      transform: rotate(-50deg);
      right: 3px;
      top: 28px; } }
.mv .slick-prev,
.mv .slick-next {
  position: absolute;
  display: block;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  bottom: -40px;
  transition: all 0.3s ease-out;
  border-radius: 0;
  width: 9px;
  height: 9px;
  transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  margin-top: 0 !important;
  padding: 0; }
  .mv .slick-prev:hover, .mv .slick-prev:focus,
  .mv .slick-next:hover,
  .mv .slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent;
    border-color: #0d6cb5; }
.mv .slick-prev {
  left: 42%;
  border-right: 1px solid #292929;
  border-bottom: 1px solid #292929;
  border-left: none;
  border-top: none; }
.mv .slick-next {
  right: 42%;
  border-left: 1px solid #292929;
  border-top: 1px solid #292929;
  border-right: none;
  border-bottom: none; }

@media (max-width: 767px) {
  .mv .slick-prev,
  .mv .slick-next {
    bottom: -30px;
    width: 8px;
    height: 8px; }
  .mv .slick-prev {
    left: 30%; }
  .mv .slick-next {
    right: 30%; } }
/* Dots */
.mv .slick-dots {
  list-style: none;
  display: block;
  padding: 0;
  margin: 20px 0 0 0;
  text-align: center; }
  .mv .slick-dots li {
    position: relative;
    display: inline-block;
    height: 12px;
    width: 12px;
    border-radius: 25px;
    margin: 0 8px 0;
    padding: 0;
    cursor: pointer;
    background: #FFF;
    border-color: #717071;
    border-style: solid;
    border-width: 1px;
    transition: all 0.3s ease-out; }
    .mv .slick-dots li.slick-active {
      background: rgba(13, 108, 181, 0.2);
      border-color: #0d6cb5; }
    .mv .slick-dots li button {
      display: none; }
    .mv .slick-dots li:hover {
      background: rgba(13, 108, 181, 0.2); }

@media (max-width: 767px) {
  .mv .slick-dots {
    margin: 15px 0 0 0; }
    .mv .slick-dots li {
      height: 10px;
      width: 10px;
      margin: 0 8px 0; } }
/*!
 * SlickNav Responsive Mobile Menu v1.0.7
 * (c) 2016 Josh Cope
 * licensed under MIT
 */
.slicknav_menu {
  *zoom: 1; }

.slicknav_menu .slicknav_menutxt {
  display: none; }

.slicknav_menu .slicknav_no-text {
  margin: 0; }

/* .menu-btn
--------------------------------------------------------*/
.menu-btn {
  width: 60px;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 10000; }

.menu-btn-inner {
  display: block;
  position: relative;
  height: 28px; }

.slicknav_icon {
  display: block;
  padding: 12px;
  cursor: pointer;
  width: 30px;
  height: 25px;
  position: relative; }

.slicknav_icon,
.slicknav_icon span,
.slicknav_open .slicknav_icon:after {
  transition: all .2s;
  box-sizing: border-box; }

.slicknav_btn:hover {
  opacity: 1; }

.slicknav_icon span {
  display: inline-block;
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px; }

.slicknav_icon span:nth-of-type(1) {
  top: 0;
  background: #0d6cb5; }

.slicknav_icon span:nth-of-type(2) {
  top: 10.5px;
  background: #0d6cb5; }

.slicknav_icon span:nth-of-type(3) {
  bottom: 0;
  background: #0d6cb5; }

/* animation */
.slicknav_icon span:nth-of-type(2)::after {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 3px;
  transition: all .2s; }

.slicknav_open .slicknav_icon span:nth-of-type(1) {
  -webkit-transform: translateY(20px) scale(0);
  transform: translateY(20px) scale(0); }

.slicknav_open .slicknav_icon span:nth-of-type(2) {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 10px; }

.slicknav_open .slicknav_icon span:nth-of-type(2)::after {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  background: #0d6cb5; }

.slicknav_open .slicknav_icon span:nth-of-type(3),
.slicknav_open .slicknav_icon:after {
  -webkit-transform: translateY(-20px) scale(0);
  transform: translateY(-20px) scale(0); }

.slicknav_menu:before {
  content: " ";
  display: table; }

.slicknav_menu:after {
  content: " ";
  display: table;
  clear: both; }

.slicknav_nav {
  clear: both;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.85);
  position: absolute;
  top: 135px;
  padding: 15px 0;
  -webkit-box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.2);
  /* Safari, Chrome用 */
  box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.2);
  /* CSS3草案 */ }
  .slicknav_nav ul {
    display: block;
    overflow: scroll;
    max-height: 460px; }
  .slicknav_nav li {
    font-size: 16px;
    font-size: 1.6rem;
    text-align: center; }
    .slicknav_nav li a {
      text-align: center;
      color: #0d6cb5;
      font-weight: 500;
      line-height: 1.3em;
      padding: 14px 0 6px; }
      .slicknav_nav li a span {
        color: #999999;
        font-size: 10px;
        font-size: 1rem;
        display: block;
        font-family: "Roboto", sans-serif; }
    .slicknav_nav li:last-child ol.language {
      text-align: center;
      position: relative;
      padding: 20px 0 12px; }
      .slicknav_nav li:last-child ol.language li {
        display: inline-block;
        margin: 0 5px; }
        .slicknav_nav li:last-child ol.language li a {
          line-height: 1.2em;
          background: #9fc238;
          font-size: 14px;
          font-size: 1.4rem;
          color: #FFF;
          font-family: "Roboto", sans-serif;
          font-weight: 500;
          width: 50px;
          text-align: center;
          padding: 6px 0 6px 2px;
          letter-spacing: 0.1em; }
          .slicknav_nav li:last-child ol.language li a:hover {
            background: #ff9837;
            opacity: 1; }

.slicknav_nav .slicknav_item {
  cursor: pointer; }

.slicknav_nav .slicknav_item a {
  display: inline; }

.slicknav_nav .slicknav_row {
  display: block; }

.slicknav_nav a {
  display: block; }

.slicknav_nav .slicknav_parent-link a {
  display: inline; }

.slicknav_brand {
  float: left; }

.slicknav_menu {
  font-size: 16px;
  box-sizing: border-box;
  z-index: 100001;
  display: block;
  position: fixed;
  width: 100%;
  right: 0;
  top: -50px; }

.slicknav_menu.active {
  height: 100%;
  background: rgba(31, 38, 84, 0.95); }

.slicknav_menu * {
  box-sizing: border-box; }

.slicknav_menu .slicknav_menutxt {
  color: #fff;
  font-weight: bold;
  text-shadow: 0 1px 3px #000; }

.slicknav_btn {
  position: relative;
  display: block;
  vertical-align: middle;
  float: right;
  line-height: 1.125em;
  cursor: pointer;
  padding: 14px;
  text-decoration: none;
  top: 82px; }

.slicknav_nav .slicknav_item a:before {
  display: none; }
.slicknav_nav .slicknav_item a:after {
  display: none; }

.slicknav_nav .slicknav_txtnode {
  margin-left: 15px; }

.slicknav_nav .slicknav_item a {
  padding: 0;
  margin: 0; }

.slicknav_nav .slicknav_parent-link a {
  padding: 0;
  margin: 0; }

.slicknav_nav .slicknav_arrow {
  display: none; }

/*　dropmenu submenu　*/
#menu li .submenu {
  　list-style: none;
  position: absolute;
  z-index: -1;
  top: 100%;
  height: 0; }
  #menu li .submenu .category {
    opacity: 0;
    height: 0;
    top: -100px;
    position: relative; }

#menu li:hover .submenu {
  z-index: 9999;
  left: -23vw;
  margin: -1px 0 0;
  width: 730px;
  height: 330px;
  background-color: rgba(255, 255, 255, 0.85);
  -webkit-box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.2);
  /* Safari, Chrome用 */
  box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.2);
  /* CSS3草案 */
  padding: 20px 17px; }
  #menu li:hover .submenu .category {
    opacity: 1;
    height: auto;
    top: 0; }
    #menu li:hover .submenu .category.dosmo {
      top: 20px; }
      #menu li:hover .submenu .category.dosmo .dosmo-span {
        margin-left: 30px;
        color: #0d6cb5;
        font-size: 1.5rem; }

#menu li .submenu .category {
  display: inline-block;
  width: 30%;
  margin: 0 10px !important; }
  #menu li .submenu .category:first-child {
    width: 31%; }
  #menu li .submenu .category.aoc {
    width: 31%; }
  #menu li .submenu .category span.category-t {
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid #0d6cb5;
    color: #0d6cb5;
    font-weight: bold; }
#menu li .submenu li {
  margin: 0 !important;
  padding: 0;
  width: auto;
  font-weight: 500;
  float: left;
  text-align: left; }
  #menu li .submenu li span.arrow {
    display: inline-block;
    width: 18px;
    height: 18px;
    background: #0d6cb5;
    position: relative;
    margin-right: 10px;
    top: 3px; }
    #menu li .submenu li span.arrow img {
      height: 10px;
      position: absolute;
      left: 5px;
      top: 4px; }
  #menu li .submenu li a {
    color: #0d6cb5;
    font-size: 15px;
    font-size: 1.5rem;
    padding: 6px 0;
    margin: 0 !important;
    text-align: left;
    line-height: 1.6em;
    display: inline-block;
    width: 100%;
    position: relative; }
    #menu li .submenu li a:hover {
      opacity: 0.5;
      text-decoration: underline; }
    #menu li .submenu li a.charm {
      padding-left: 12px; }
      #menu li .submenu li a.charm:before {
        content: "";
        width: 4px;
        height: 18px;
        position: absolute;
        left: 0;
        top: 12px;
        background: #0d6cb5; }
  #menu li .submenu li:first-child .mini {
    overflow: hidden;
    margin: 5px 0 10px; }
    #menu li .submenu li:first-child .mini li {
      width: auto;
      display: inline-block;
      vertical-align: top; }
      #menu li .submenu li:first-child .mini li:first-child {
        padding-top: 0; }
      #menu li .submenu li:first-child .mini li:nth-child(6) {
        clear: left; }
      #menu li .submenu li:first-child .mini li a {
        padding: 2px 10px 0 0;
        width: 42px; }
  #menu li .submenu li:not(:nth-child(5)) {
    padding-bottom: 4px !important; }
#menu li .submenu ul.aoc li:first-child {
  width: 100%; }
#menu li .submenu ul.aoc li:nth-child(2), #menu li .submenu ul.aoc li:nth-child(3), #menu li .submenu ul.aoc li:nth-child(4), #menu li .submenu ul.aoc li:nth-child(5) {
  width: 50%; }

#fade li ul, #fade li .category {
  visibility: hidden;
  opacity: 0;
  transition: 0s; }

#fade li:hover ul, #fade li:hover .category {
  visibility: visible;
  opacity: 1; }

#fade li ul li a, #fade li .category li a {
  visibility: hidden;
  opacity: 0;
  transition: .3s; }

#fade li:hover ul li a, #fade li:hover .category ul li a {
  visibility: visible;
  opacity: 1; }

#dvi {
  margin-top: -70px;
  padding-top: 70px; }

#dp {
  margin-top: -70px;
  padding-top: 70px; }

#usb {
  margin-top: -70px;
  padding-top: 70px; }

#sdi {
  margin-top: -70px;
  padding-top: 70px; }

@media (max-width: 767px) {
  .slicknav_nav .submenu .category {
    display: block;
    width: 100%;
    margin: 0 !important; }
    .slicknav_nav .submenu .category:first-child {
      width: 100%; }
    .slicknav_nav .submenu .category.aoc {
      width: 100%; }
    .slicknav_nav .submenu .category.dosmo .dosmo-span {
      margin-left: 30px;
      color: #0d6cb5;
      font-size: 1.5rem; }
    .slicknav_nav .submenu .category span.category-t {
      font-size: 16px;
      font-size: 1.6rem;
      text-align: center;
      border-bottom: none;
      color: #0d6cb5;
      font-weight: bold;
      margin-right: 18px; }
  .slicknav_nav .submenu li {
    display: block;
    margin: 0 !important;
    padding: 0;
    width: 100%;
    text-align: left !important;
    float: left; }
    .slicknav_nav .submenu li span.arrow {
      display: inline-block;
      width: 18px;
      height: 18px;
      background: #0d6cb5;
      position: relative;
      margin-right: 10px;
      top: 3px; }
      .slicknav_nav .submenu li span.arrow img {
        height: 10px;
        position: absolute;
        left: 5px;
        top: 4px; }
    .slicknav_nav .submenu li a {
      color: #0d6cb5;
      font-size: 15px;
      font-size: 1.5rem;
      padding: 14px 0 6px 18px;
      margin: 0 !important;
      text-align: left;
      line-height: 1.6em; }
      .slicknav_nav .submenu li a.p-none {
        padding: 14px 0 6px; }
    .slicknav_nav .submenu li:first-child {
      width: 100%; }
      .slicknav_nav .submenu li:first-child .mini {
        background-color: rgba(13, 108, 181, 0.9); }
        .slicknav_nav .submenu li:first-child .mini li {
          width: auto;
          display: inline-block;
          vertical-align: top;
          width: 25%;
          border-color: transparent #418fbb #418fbb transparent;
          border-style: solid;
          border-width: 1px; }
          .slicknav_nav .submenu li:first-child .mini li:first-child {
            padding-top: 0; }
          .slicknav_nav .submenu li:first-child .mini li:nth-child(4), .slicknav_nav .submenu li:first-child .mini li:nth-child(8) {
            border-color: transparent transparent #418fbb transparent; }
          .slicknav_nav .submenu li:first-child .mini li:nth-child(9), .slicknav_nav .submenu li:first-child .mini li:nth-child(10) {
            border-color: transparent #418fbb transparent transparent; }
          .slicknav_nav .submenu li:first-child .mini li a {
            font-size: 14px;
            font-size: 1.4rem;
            padding: 7px 0 7px 18px;
            color: #FFF; }
    .slicknav_nav .submenu li:not(:nth-child(4)) {
      padding-bottom: 0px; } }
/* sitemap
----------------------------------------------------------------*/
.page.sitemap .c-box {
  margin: 30px auto 130px;
  padding: 70px 0 5px; }
  .page.sitemap .c-box .inner {
    padding: 0 40px; }
    .page.sitemap .c-box .inner p {
      text-align: center;
      font-size: 24px;
      font-size: 2.4rem;
      margin-bottom: 25px;
      font-weight: normal; }
    .page.sitemap .c-box .inner .bg_white {
      padding: 35px 50px 40px;
      background: #FFF;
      margin-bottom: 70px; }
    .page.sitemap .c-box .inner table {
      font-size: 16px;
      font-size: 1.6rem;
      width: 100%;
      margin: 0 auto; }
      .page.sitemap .c-box .inner table th, .page.sitemap .c-box .inner table td {
        padding: 21px 0 20px;
        line-height: 1.4em;
        border-bottom: 1px solid #b4b4b4; }
      .page.sitemap .c-box .inner table tr:last-child th, .page.sitemap .c-box .inner table tr:last-child td {
        border-bottom: none; }
      .page.sitemap .c-box .inner table th {
        padding: 21px 35px 20px 15px;
        width: 220px;
        text-align: left;
        vertical-align: top; }
        .page.sitemap .c-box .inner table th span.arrow {
          display: inline-block;
          width: 18px;
          height: 18px;
          background: #0d6cb5;
          position: relative;
          margin-right: 10px;
          top: 3px; }
          .page.sitemap .c-box .inner table th span.arrow img {
            height: 10px;
            position: absolute;
            left: 5px;
            top: 4px; }
        .page.sitemap .c-box .inner table th span.ml-30 {
          margin-left: 30px; }
          @media (max-width: 767px) {
            .page.sitemap .c-box .inner table th span.ml-30 {
              margin-left: 0; } }
        .page.sitemap .c-box .inner table th a {
          display: inline-block; }
          .page.sitemap .c-box .inner table th a:hover {
            opacity: 1;
            color: #0d6cb5; }
      .page.sitemap .c-box .inner table td {
        padding-right: 18px; }
        .page.sitemap .c-box .inner table td.pc_only {
          display: table-cell; }
        .page.sitemap .c-box .inner table td ul.ac-list li {
          margin-bottom: 10px; }
        .page.sitemap .c-box .inner table td li {
          display: inline-block;
          min-width: 24%; }
        .page.sitemap .c-box .inner table td a {
          color: #717071;
          margin-bottom: 10px;
          position: relative;
          padding-left: 20px; }
          .page.sitemap .c-box .inner table td a:before {
            content: "…";
            color: #0d6cb5;
            position: absolute;
            left: 0;
            top: 0;
            font-size: 14px;
            font-size: 1.4rem; }
          .page.sitemap .c-box .inner table td a:hover {
            opacity: 1;
            color: #0d6cb5;
            font-weight: bold; }
      .page.sitemap .c-box .inner table.other th {
        width: 50%; }

@media (max-width: 767px) {
  .page.sitemap .c-box {
    margin: 20px auto 50x;
    padding: 10% 0 4%; }
    .page.sitemap .c-box .inner {
      padding: 0 6%; }
      .page.sitemap .c-box .inner p {
        font-size: 18px;
        font-size: 1.8rem; }
      .page.sitemap .c-box .inner .bg_white {
        padding: 5% 6% 8%;
        margin-bottom: 50px; }
      .page.sitemap .c-box .inner table {
        font-size: 13px;
        font-size: 1.3rem; }
        .page.sitemap .c-box .inner table th, .page.sitemap .c-box .inner table td {
          padding: 12px 5px 5px;
          width: 100%;
          float: left;
          line-height: 1.55em; }
        .page.sitemap .c-box .inner table tr:last-child th {
          border-bottom: 1px solid #b4b4b4; }
        .page.sitemap .c-box .inner table th {
          padding: 12px 5px;
          text-align: left; }
        .page.sitemap .c-box .inner table td {
          border: none; }
          .page.sitemap .c-box .inner table td.pc_only {
            display: none; }
          .page.sitemap .c-box .inner table td ul.ac-list li {
            margin-bottom: 15px;
            font-size: 14px;
            font-size: 1.4rem; }
          .page.sitemap .c-box .inner table td li {
            display: inline-block;
            min-width: 32%; }
          .page.sitemap .c-box .inner table td a {
            display: inline-block;
            margin-right: 15px;
            margin-bottom: 0; }
        .page.sitemap .c-box .inner table.other th {
          width: 50% !important; } }
h1.half {
  font-size: 5.0rem !important; }

@media screen and (max-width: 767px) {
  h1.half {
    font-size: 3.2rem !important; } }
.page {
  -webkit-font-smoothing: subpixel-antialiased; }
  .page .page-top ul.bread {
    padding-left: 2%; }

#header {
  filter: drop-shadow(0px 2px 10px rgba(0, 0, 0, 0.2));
  height: calc(27px + 27px + 66px); }
  #header header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 27px 2%;
    max-width: 1000px;
    height: 100%;
    width: 100vw; }
    #header header .logo-box {
      display: flex;
      align-items: flex-end;
      gap: 12px;
      float: none;
      position: static;
      padding-top: 0;
      line-height: 0.5; }
      #header header .logo-box img.logo {
        height: 60px !important; }
      #header header .logo-box h1 {
        font-weight: 500;
        line-height: 1;
        font-size: 1.6rem; }
    #header header .link-block {
      float: none;
      display: flex;
      flex-direction: column;
      height: 91px;
      justify-content: space-between; }
      #header header .link-block p {
        margin: 0;
        font-family: 'Poppins', sans-serif; }
        #header header .link-block p a {
          font-weight: 400;
          color: #292929; }
      #header header .link-block #menu {
        float: none;
        display: block;
        margin: 0; }
        #header header .link-block #menu:hover .submenu, #header header .link-block #menu li:hover .submenu {
          display: flex;
          top: 31px;
          left: -317px;
          transform: translateX(-50%);
          width: 1153px;
          padding: 0; }
          #header header .link-block #menu:hover .submenu img, #header header .link-block #menu li:hover .submenu img {
            max-width: 250px;
            width: 100%;
            height: 100%;
            object-fit: cover; }
          #header header .link-block #menu:hover .submenu .submenu__link, #header header .link-block #menu li:hover .submenu .submenu__link {
            padding: 35px 10px 30px;
            display: flex;
            flex-wrap: wrap;
            gap: 15px 0; }
            #header header .link-block #menu:hover .submenu .submenu__link .category, #header header .link-block #menu li:hover .submenu .submenu__link .category {
              width: 236px;
              margin: 0 20px !important; }
              #header header .link-block #menu:hover .submenu .submenu__link .category:last-child, #header header .link-block #menu li:hover .submenu .submenu__link .category:last-child {
                margin-left: 28px !important; }
              #header header .link-block #menu:hover .submenu .submenu__link .category .category-t, #header header .link-block #menu li:hover .submenu .submenu__link .category .category-t {
                color: #B71D25;
                border-bottom-color: #B71D25;
                cursor: default;
                font-size: 18px;
                font-size: 1.8rem; }
              #header header .link-block #menu:hover .submenu .submenu__link .category ul, #header header .link-block #menu li:hover .submenu .submenu__link .category ul {
                width: 235px; }
                #header header .link-block #menu:hover .submenu .submenu__link .category ul li, #header header .link-block #menu li:hover .submenu .submenu__link .category ul li {
                  width: 100%;
                  white-space: nowrap;
                  text-align: left; }
                  #header header .link-block #menu:hover .submenu .submenu__link .category ul li a, #header header .link-block #menu li:hover .submenu .submenu__link .category ul li a {
                    color: #717071 !important;
                    font-weight: 400; }
        #header header .link-block #menu #fade {
          background-color: #B71D25;
          padding: 9px 40px;
          display: flex;
          gap: 40px; }
          #header header .link-block #menu #fade li, #header header .link-block #menu #fade li a {
            color: #fff;
            margin: 0;
            padding-bottom: 0;
            font-size: 1.6rem; }
          #header header .link-block #menu #fade li:hover .category {
            visibility: visible; }

.page.top .mv {
  position: sticky;
  z-index: 100;
  padding-top: 120px;
  height: 720px; }
  .page.top .mv .slider-mv .slick-slide {
    height: 560px; }
    .page.top .mv .slider-mv .slick-slide.mv-02 {
      background-position: bottom; }
  .page.top .mv .slider-mv .slick-arrow {
    bottom: 160px; }
    .page.top .mv .slider-mv .slick-arrow:hover {
      border-color: #B71D25; }
  .page.top .mv .slick-dots li.slick-active {
    background: #fff;
    border-color: #B71D25; }
  .page.top .mv .slick-dots li:hover {
    background: rgba(182, 29, 38, 0.2); }
.page.top .business-list .flex-box .col-3 a h3 {
  width: 260px; }
.page.top .business-list .flex-box .col-3 a .list-frame {
  background-position: bottom; }
.page.top .business-list .flex-box .col-3 a:hover {
  background: #717071; }
  .page.top .business-list .flex-box .col-3 a:hover h3 {
    color: #0d6cb5; }
  .page.top .business-list .flex-box .col-3 a:hover .product-name {
    color: rgba(89, 88, 88, 0.7); }
.page.top h2 span {
  color: #E60012; }
.page.top .info .inner {
  padding: 70px calc((100% - 1048px) / 2) 75px; }
.page.top .info ul {
  max-width: 1048px;
  margin: 0 auto; }
  .page.top .info ul li a {
    width: 100%; }
    .page.top .info ul li a span.date {
      color: #E60012; }
    .page.top .info ul li a span.icon {
      background: #B71D25;
      padding: 5px 0px;
      min-width: 58px;
      margin: 0 5px;
      font-size: 12px;
      font-size: 1.2rem; }
    .page.top .info ul li a span.title {
      color: #717071; }
.page.top .about-gucf .flex-box {
  width: 1048px; }
  .page.top .about-gucf .flex-box .col-2 {
    width: 100%; }
  .page.top .about-gucf .flex-box #accordion-01 li .single-block {
    padding: 70px 25px 75px; }
  .page.top .about-gucf .flex-box #accordion-01 li .sub-tab {
    text-align: center; }
    .page.top .about-gucf .flex-box #accordion-01 li .sub-tab .firstline {
      display: block; }

.btn a {
  background: #B71D25 !important; }

footer {
  background: #B71D25;
  height: fit-content; }
  footer .footer-block #pagetop a {
    background: #B71D25; }
  footer .footer-block .contents-block {
    display: block;
    margin: 0 auto;
    max-width: 1048px; }
    footer .footer-block .contents-block h1 {
      margin-top: 0;
      color: #fff;
      text-align: left;
      font-weight: 400;
      font-size: 2rem;
      border-bottom: none;
      display: block;
      padding-bottom: 8px;
      margin-bottom: 8px; }
    footer .footer-block .contents-block .footer__flex {
      display: flex;
      justify-content: space-between; }
      footer .footer-block .contents-block .footer__flex p {
        font-size: 1.6rem; }
        footer .footer-block .contents-block .footer__flex p a {
          color: #fff; }
          footer .footer-block .contents-block .footer__flex p a.icon {
            width: 25px;
            height: 25px;
            margin-top: 20px;
            display: flex;
            gap: 10px;
            align-items: center; }
            footer .footer-block .contents-block .footer__flex p a.icon img {
              width: 25px; }
      footer .footer-block .contents-block .footer__flex .link-block {
        display: flex;
        margin-bottom: 0;
        flex-wrap: wrap;
        gap: 10px 0px;
        width: 62%; }
        footer .footer-block .contents-block .footer__flex .link-block p {
          font-size: 1.2rem;
          width: 18%;
          margin-top: 8px; }
        footer .footer-block .contents-block .footer__flex .link-block_flex {
          display: flex;
          gap: 14px; }
          footer .footer-block .contents-block .footer__flex .link-block_flex p.contact-stock a {
            margin-bottom: 23px; }
          footer .footer-block .contents-block .footer__flex .link-block_flex #nav {
            padding: 0;
            display: flex;
            flex-wrap: wrap; }
            footer .footer-block .contents-block .footer__flex .link-block_flex #nav li.block.mini {
              margin-right: 0;
              width: calc(100% / 3); }
              footer .footer-block .contents-block .footer__flex .link-block_flex #nav li.block.mini p {
                width: 100%; }
              footer .footer-block .contents-block .footer__flex .link-block_flex #nav li.block.mini:first-child {
                width: 38%; }
              footer .footer-block .contents-block .footer__flex .link-block_flex #nav li.block.mini:nth-child(2) {
                width: 32%; }
              footer .footer-block .contents-block .footer__flex .link-block_flex #nav li.block.mini:nth-child(3) {
                width: 30%; }
              footer .footer-block .contents-block .footer__flex .link-block_flex #nav li.block.mini .block ul li::before {
                content: "・";
                width: 100%;
                height: 100%; }
  footer .footer-block .copyright {
    max-width: 1048px;
    margin: 8px auto 0; }

@media screen and (max-width: 1450px) {
  .page.top .mv {
    height: 720px; }
    .page.top .mv .slider-mv .slick-slide {
      height: 560px; }
    .page.top .mv .slider-mv .slick-arrow {
      bottom: 102px; } }
@media screen and (max-width: 1300px) {
  .page.top .mv {
    height: 616px; }
    .page.top .mv .slider-mv .slick-slide {
      height: 495px; }
    .page.top .mv .slider-mv .slick-arrow {
      bottom: 132px; } }
@media screen and (min-width: 767px) and (max-width: 1200px) {
  #header header .link-block #menu #fade {
    padding: 9px 20px;
    gap: 19px; }
    #header header .link-block #menu #fade li a {
      font-size: 1.4rem; }
    #header header .link-block #menu #fade li:hover .submenu {
      width: 767px;
      top: 29px;
      left: -155%; }
      #header header .link-block #menu #fade li:hover .submenu img {
        width: 27%; }
      #header header .link-block #menu #fade li:hover .submenu .submenu__link .category {
        margin: 0 12px !important; }

  .page.top .mv {
    width: 100vw; }
    .page.top .mv .slick-prev {
      left: 40%; }
    .page.top .mv .slick-next {
      right: 40%; }
  .page.top .business-list {
    width: 100vw; }
  .page.top .bg-gray {
    width: 100vw; }
  .page.top .info .inner {
    max-width: 1048px;
    padding: 70px 2% 75px; }
  .page.top .about-gucf .flex-box {
    max-width: 1200px;
    width: 100%; }
    .page.top .about-gucf .flex-box #accordion-01 {
      padding: 0 2%; }
      .page.top .about-gucf .flex-box #accordion-01 li .single-block {
        max-width: 1048px;
        width: 100%;
        padding: 70px 2% 75px;
        margin: 0 auto 75px; }

  footer {
    width: 100vw; }
    footer .footer-block {
      padding: 64px 2% 48px; }
      footer .footer-block .contents-block .footer__flex .link-block_flex {
        gap: 12px; }
        footer .footer-block .contents-block .footer__flex .link-block_flex #nav {
          width: 542px; }
          footer .footer-block .contents-block .footer__flex .link-block_flex #nav li.block.mini:first-child {
            width: 46%; }
          footer .footer-block .contents-block .footer__flex .link-block_flex #nav li.block.mini:nth-child(2) {
            width: 36%; }
          footer .footer-block .contents-block .footer__flex .link-block_flex #nav li.block.mini:nth-child(3) {
            width: 46%; } }
@media (min-width: 768px) {
  #contents {
    min-width: 100%; }

  #header, header {
    min-width: 100%; }

  footer {
    min-width: 100%; } }
@media screen and (max-width: 767px) {
  .slicknav_icon span:nth-of-type(2) {
    top: 10.5px; }
  .slicknav_icon span:nth-child(-n+3) {
    background: #B71D25; }

  .slicknav_nav {
    padding: 15px 0 25px; }
    .slicknav_nav .slicknav_row {
      display: block;
      width: fit-content;
      display: flex;
      gap: 8px; }
    .slicknav_nav .slicknav_arrow {
      display: block !important;
      width: fit-content;
      display: block;
      color: #B71D25;
      height: 100%;
      font-size: 2rem;
      margin-top: 1.5px; }
    .slicknav_nav .submenu {
      padding: 5px 0; }
      .slicknav_nav .submenu img {
        visibility: hidden; }
      .slicknav_nav .submenu li a {
        padding: 7px 0 5px;
        color: #B71D25;
        text-align: center;
        font-weight: lighter;
        font-size: 14px;
        font-size: 1.4rem; }
    .slicknav_nav li a {
      color: #B71D25;
      padding-left: 6%;
      text-align: left; }

  .slicknav_btn {
    top: 62px; }

  .slicknav_nav {
    top: 120px; }

  .slicknav_open .slicknav_icon span:nth-of-type(2)::after {
    background: #B71D25; }
  .slicknav_open .submenu {
    display: block; }
    .slicknav_open .submenu img {
      display: none; }
    .slicknav_open .submenu__link {
      line-height: 0; }
      .slicknav_open .submenu__link .category .submenu li a {
        padding: 8px 0 0px 18px; }
      .slicknav_open .submenu__link .category ul {
        padding-left: 20%; }
        .slicknav_open .submenu__link .category ul li a {
          text-align: left; }
      .slicknav_open .submenu__link .category .slicknav_item {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        padding-left: 10%; }
        .slicknav_open .submenu__link .category .slicknav_item span {
          font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif; }
          .slicknav_open .submenu__link .category .slicknav_item span.category-t {
            color: #B71D25;
            font-weight: lighter;
            font-size: 1.4rem;
            width: fit-content;
            margin-right: 0px; }
          .slicknav_open .submenu__link .category .slicknav_item span.slicknav_arrow {
            display: block;
            color: #B71D25;
            height: 100%;
            font-size: 1.6rem; }

  #header {
    height: fit-content; }
    #header header {
      padding: 0;
      flex-direction: column-reverse;
      height: 70px; }
      #header header .logo-box {
        margin-bottom: 17px;
        padding-left: 14px; }
        #header header .logo-box img.logo {
          height: 36px !important; }
      #header header .link-block {
        display: none;
        width: 100%;
        height: 32px; }
        #header header .link-block p a {
          color: #fff;
          font-weight: 500;
          background: #B71D25; }
          #header header .link-block p a:hover {
            opacity: 0.6; }

  .page.top .mv {
    padding-top: 70px; }
    .page.top .mv .slider-mv .slick-slide.mv-01 {
      background-position-x: 90%; }
    .page.top .mv .slider-mv .slick-arrow {
      bottom: -56px; }
    .page.top .mv .slick-dots {
      margin-top: 6px; }
  .page.top .business-list .flex-box .col-3 a .list-frame:not(.list-frame__last) {
    background-position: 0 -22px; }
  .page.top .business-list .flex-box .col-3 a .product-name {
    font-size: 14px;
    font-size: 1.4rem; }
    .page.top .business-list .flex-box .col-3 a .product-name span.caption {
      font-size: 1.3rem !important; }
  .page.top .business-list .flex-box .col-3 a:hover .list-frame {
    transform: scale(1.3); }
  .page.top .info .inner {
    padding: 7% 6% 6%; }
    .page.top .info .inner .title {
      font-size: 1.4rem !important; }
  .page.top .about-gucf .flex-box {
    width: calc(100% - 12%); }
    .page.top .about-gucf .flex-box .accordion li .sub-tab {
      display: block; }
    .page.top .about-gucf .flex-box #accordion-01 li .single-block {
      padding: 7% 6% 6% !important; }
    .page.top .about-gucf .flex-box #accordion-01 li .sub-tab {
      text-align: left;
      padding: 0;
      font-size: 14px;
      font-size: 1.4rem; }

  footer .footer-block #pagetop.static a {
    background: #292929; }
  footer .footer-block .contents-block h2 {
    font-size: 1.8rem; }
  footer .footer-block .contents-block .footer__flex {
    flex-direction: column; }
    footer .footer-block .contents-block .footer__flex p {
      font-size: 14px;
      font-size: 1.4rem; }
    footer .footer-block .contents-block .footer__flex .link-block {
      width: 100%;
      padding-top: 30px;
      gap: 4px;
      flex-direction: column; }
      footer .footer-block .contents-block .footer__flex .link-block p {
        width: fit-content;
        font-size: 12px;
        font-size: 1.2rem; }
      footer .footer-block .contents-block .footer__flex .link-block_flex {
        flex-direction: column;
        width: 100%;
        gap: 12px; }
        footer .footer-block .contents-block .footer__flex .link-block_flex p.contact-stock a {
          margin-bottom: 19px; }
        footer .footer-block .contents-block .footer__flex .link-block_flex #nav {
          flex-direction: column; }
          footer .footer-block .contents-block .footer__flex .link-block_flex #nav .block.mini {
            width: 100% !important; }
            footer .footer-block .contents-block .footer__flex .link-block_flex #nav .block.mini ul {
              display: flex;
              flex-direction: column; }
  footer .footer-block .copyright {
    margin-top: 15px; } }
@media screen and (max-width: 360px) {
  .page.top .mv .slider-mv .slick-arrow {
    bottom: -36px; }
  .page.top .business-list .flex-box .col-3 a h3 {
    width: 100%; } }
