@charset "UTF-8";
/*!
Theme Name: amt_website_jp_2026
Theme URI:
Author: 
Author URI: 
Description: アムト株式会社企業サイト（日本語）2026年リニューアル用
Version: 1.0
License: 
License URI:
Tags:

◆00：基本設定
◆10：レイアウト設定
 ◆11 ボディー 
 ◆12 ヘッダー 
 ◆13 グローバルナビ 
 ◆14 キービジュアル 
 ◆15 コンテンツ 
 ◆16 トピックパス 
 ◆17 メインコンテンツ 
 ◆18 サブコンテンツ 
 ◆19 フッター 
 ◆20 サイドバーメニュー 
◆40：各コンテンツ
◆70：WordPress専用
◆80：絶対表記
◆90：プリント用
*/
/* CSS Document */
html {
  font: 16px/1.75 "Noto Sans JP", "游ゴシック", "YuGothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  /* 基本文字設定 */
  *font-size: small;
  /* Win IE7およびWin IE6標準準拠モード向け */
  *font: x-small;
  /* Win IE 5-5.5､6(後方互換モード)向け */
  letter-spacing: 0.072em;
  background-color: #FFF;
  color: #000000;
  font-weight: 400; }
  @media screen and (max-width: 600px) {
    html {
      font-size: 4.267vw; } }

/*==============================================
◆00：基本設定
==============================================*/
* {
  outline: none; }

/*リンク*/
a {
  outline: none;
  text-decoration: none;
  display: inline-block;
  color: #1558D6;
  transition: all 300ms ease-in-out; }
  a[href^="tel:"] {
    pointer-events: none; }
    @media screen and (max-width: 600px) {
      a[href^="tel:"] {
        pointer-events: auto; } }
  a:after {
    text-decoration: none; }
  a:hover, a:focus {
    opacity: 0.8; }
    a:hover img, a:focus img {
      opacity: 0.8; }
  a:focus-visible {
    outline: dotted 1px #000000;
    outline-offset: -2px;
    color: #F2F2F2;
    box-shadow: 0 0 0 2px #000000; }
  a img {
    background: url(image/share/transparent.png);
    transition: all 300ms ease-in-out; }
  .main-wpcontent a {
    text-decoration: underline; }

button:focus-visible {
  outline: dotted 1px #000;
  outline-offset: 2px;
  box-shadow: 0 0 0 2px #FFF; }

textarea:focus,
input:focus {
  box-shadow: 0 0 3px 1px inset #FFF; }

/*--見出し--*/
#main-h1 {
  margin: 0 auto 20px;
  padding: 0; }
  @media screen and (max-width: 600px) {
    #main-h1 {
      margin-bottom: 4vw; } }
  #main-h1__inner {
    max-width: 1000px;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 0; }
    @media screen and (max-width: 1080px) {
      #main-h1__inner {
        width: auto; } }
    @media screen and (max-width: 600px) {
      #main-h1__inner {
        height: auto; } }
  #main-h1--title img {
    width: 100%;
    height: auto; }

.main-wpcontent h2 {
  font-size: 32px;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0.072em;
  text-align: justify;
  text-justify: inter-ideograph;
  margin: 60px 0;
  padding: 0;
  text-align: center;
  color: #00ABEB;
  overflow: hidden; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h2 {
      font-size: 5.867vw;
      line-height: 1.5;
      margin-top: 16vw;
      margin-bottom: 10.6666666667vw; } }
  .main-wpcontent h2.style-none {
    border: none;
    padding: 0; }
  .main-wpcontent h2.has-text-align-left {
    text-align: justify;
    text-justify: inter-ideograph; }
  .main-wpcontent h2.has-text-align-center {
    text-align: center; }
  .main-wpcontent h2.has-text-align-right {
    text-align: right; }

.main-wpcontent h3 {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.072em;
  text-align: justify;
  text-justify: inter-ideograph;
  color: #000000;
  margin: 45px 0 20px;
  padding: 20px 5px;
  box-sizing: border-box;
  border-top: 1px solid;
  border-bottom: 1px solid;
  border-color: #00ABEB;
  overflow: hidden; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h3 {
      line-height: 1.5;
      font-size: 5.333vw;
      margin-top: 8vw;
      margin-bottom: 6vw;
      padding: 2.667vw 0; } }
  .main-wpcontent h3.has-text-align-left {
    text-align: justify;
    text-justify: inter-ideograph; }
  .main-wpcontent h3.has-text-align-center {
    text-align: center; }
  .main-wpcontent h3.has-text-align-right {
    text-align: right; }

.main-wpcontent h4 {
  position: relative;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: justify;
  text-justify: inter-ideograph;
  color: #000000;
  margin: 0 0 5px;
  padding: 0;
  overflow: hidden; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h4 {
      font-size: 4.267vw;
      margin-top: 16vw;
      margin-bottom: 1.3vw; } }
  .main-wpcontent h4.has-text-align-left {
    text-align: justify;
    text-justify: inter-ideograph; }
  .main-wpcontent h4.has-text-align-center {
    text-align: center; }
  .main-wpcontent h4.has-text-align-right {
    text-align: right; }

.main-wpcontent h5 {
  position: relative;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.072em;
  color: #000000;
  text-align: left;
  margin: 0 0 4px;
  padding: 0; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h5 {
      font-size: 4.267vw;
      margin-top: 0;
      margin-bottom: 1.3vw; } }
  .main-wpcontent h5.has-text-align-left {
    text-align: left; }
  .main-wpcontent h5.has-text-align-center {
    text-align: center; }
  .main-wpcontent h5.has-text-align-right {
    text-align: right; }

.main-wpcontent h6 {
  position: relative;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.072em;
  color: #000000;
  text-align: left;
  margin: 0 0 4px;
  padding: 0; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h6 {
      font-size: 4.267vw;
      margin-top: 0;
      margin-bottom: 1.3vw; } }
  .main-wpcontent h6.has-text-align-left {
    text-align: left; }
  .main-wpcontent h6.has-text-align-center {
    text-align: center; }
  .main-wpcontent h6.has-text-align-right {
    text-align: right; }

.main-wpcontent h2 + h3,
.main-wpcontent h2 + section > h3:first-child,
.main-wpcontent > h2:first-child,
h2:first-child,
h2 + table {
  margin-top: 0; }

.main-wpcontent h3 + h4,
.main-wpcontent h3 + section > h4:first-child,
.main-wpcontent > h3:first-child,
h3:first-child,
h3 + table {
  margin-top: 0; }

.main-wpcontent h4 + h5,
.main-wpcontent h4 + section > h5:first-child,
.main-wpcontent > h4:first-child,
h4:first-child,
h4 + table {
  margin-top: 0; }

.main-wpcontent h5 + h6,
.main-wpcontent h5 + section > h6:first-child,
.main-wpcontent > h5:first-child,
h5:first-child,
h5 + table {
  margin-top: 0; }

.main-wpcontent h6 + h7,
.main-wpcontent h6 + section > h7:first-child,
.main-wpcontent > h6:first-child,
h6:first-child,
h6 + table {
  margin-top: 0; }

/* セクション */
section {
  margin: 90px 0; }
  @media screen and (max-width: 600px) {
    section {
      margin-top: 16vw;
      margin-bottom: 16vw; } }
  section:first-child {
    margin-top: 0; }
  section:last-child {
    margin-bottom: 0; }

/*--リスト--*/
.main-wpcontent ul, .main-wpcontent ol, .main-wpcontent dl {
  text-align: justify;
  text-justify: inter-ideograph;
  margin: 20px 0;
  padding: 0; }
  @media screen and (max-width: 600px) {
    .main-wpcontent ul, .main-wpcontent ol, .main-wpcontent dl {
      margin: 6vw 0; } }

.main-wpcontent ul > li dl, .main-wpcontent ul > li ul, .main-wpcontent ul > li ol, .main-wpcontent ol > li dl, .main-wpcontent ol > li ul, .main-wpcontent ol > li ol, .main-wpcontent dl dd dl, .main-wpcontent dl dd ul, .main-wpcontent dl dd ol {
  margin: 15px 0 0; }
  @media screen and (max-width: 600px) {
    .main-wpcontent ul > li dl, .main-wpcontent ul > li ul, .main-wpcontent ul > li ol, .main-wpcontent ol > li dl, .main-wpcontent ol > li ul, .main-wpcontent ol > li ol, .main-wpcontent dl dd dl, .main-wpcontent dl dd ul, .main-wpcontent dl dd ol {
      margin-top: 4vw; } }

.main-wpcontent ul {
  list-style-type: none;
  color: #000000; }
  .main-wpcontent ul > li {
    line-height: 1.5;
    position: relative;
    margin: 0 0 0 1.333em;
    padding: 0 0 15px 0; }
    @media screen and (max-width: 600px) {
      .main-wpcontent ul > li {
        padding-bottom: 4vw; } }
    .main-wpcontent ul > li ol {
      list-style: decimal; }
    .main-wpcontent ul > li::before {
      position: absolute;
      content: "";
      display: block;
      background-color: #000000;
      width: 0.3em;
      height: 0.3em;
      border-radius: 50%;
      left: -0.75em;
      top: 0.6em; }
    .main-wpcontent ul > li:last-child {
      padding-bottom: 0; }

ol {
  list-style-type: decimal;
  color: #000000; }
  .main-wpcontent ol > li {
    line-height: 1.5;
    position: relative;
    margin: 0 0 0 1.333em;
    padding: 0 0 15px 0; }
    @media screen and (max-width: 600px) {
      .main-wpcontent ol > li {
        padding-bottom: 4vw; } }
    .main-wpcontent ol > li ol {
      list-style: decimal; }
    .main-wpcontent ol > li:last-child {
      padding-bottom: 0; }

.main-wpcontent dl dt {
  font-weight: 700;
  margin: 0 0 0.5em;
  padding: 0; }
.main-wpcontent dl dd {
  margin: 0;
  padding: 0; }
  .main-wpcontent dl dd:last-child {
    margin-bottom: 0; }

/* --TABLE-- */
table {
  min-width: 100%;
  font-size: 100%;
  margin: 0 auto;
  background-color: #DFDFDF; }
  table caption {
    font-size: 1em;
    line-height: 1.5;
    text-align: left;
    margin-bottom: 5px; }
  table tr {
    position: relative;
    border: 1px solid #DFDFDF; }
  table th, table td {
    text-align: left;
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0.072em;
    vertical-align: top;
    color: #000000;
    overflow-wrap: break-word;
    padding: 20px;
    box-sizing: border-box; }
    @media screen and (max-width: 600px) {
      table th, table td {
        padding: 2.667vw;
        min-width: 37.333vw;
        max-width: 120vw;
        font-size: 4.267vw; } }
  table th {
    font-weight: 700;
    background-color: #F2F2F2;
    width: 110px; }
    table th[scope="row"] {
      background-color: #F2F2F2; }
      @media screen and (max-width: 600px) {
        table th[scope="row"] {
          min-width: inherit; } }
  table td {
    background-color: #FFF; }
  table dl:last-child,
  table ul:last-child,
  table p:last-child {
    margin-bottom: 0; }

.responsive-table {
  width: 100%;
  overflow-y: hidden;
  overflow-x: auto;
  margin: 0 0 10px; }
  @media screen and (max-width: 600px) {
    .responsive-table {
      margin-bottom: 2.667vw; } }
  .responsive-table::-webkit-scrollbar {
    height: 10px; }
  .responsive-table::-webkit-scrollbar-track {
    background: #FFF;
    border-radius: 5px; }
  .responsive-table::-webkit-scrollbar-thumb {
    background: #00ABEB;
    border-radius: 5px; }
  @media screen and (max-width: 1080px) {
    .responsive-table table th {
      white-space: nowrap; } }

/* --OTHER TAGS-- */
abbr, acronym {
  border-bottom: 1px dotted;
  cursor: help; }

blockquote {
  background-color: #FFF;
  border: 1px solid #00ABEB;
  font-style: normal;
  font-weight: 400;
  text-align: justify;
  padding: 20px 30px;
  margin-top: 20px;
  margin-bottom: 20px; }
  @media screen and (max-width: 600px) {
    blockquote {
      margin-top: 3vw;
      margin-bottom: 3vw;
      padding: 3.2vw 4vw; } }
  blockquote dl:last-child,
  blockquote ul:last-child,
  blockquote p:last-child {
    margin-bottom: 0; }

small {
  font-size: 70%; }

em {
  font-weight: bold;
  font-style: normal;
  color: #c00; }

strong {
  font-weight: bold;
  font-style: normal;
  border-style: none; }

code {
  color: #000000;
  padding: 0;
  background: #FFF;
  border-radius: 0; }

pre {
  margin: 0;
  white-space: pre;
  tab-size: 2; }

p {
  text-align: justify;
  text-justify: inter-ideograph;
  background-image: url(image/share/transparent.png);
  letter-spacing: 0.072em;
  line-height: 1.75;
  color: #000000;
  font-size: 1em;
  font-weight: 400;
  margin-bottom: 24px; }
  @media screen and (max-width: 600px) {
    p {
      font-size: 4.267vw;
      margin-bottom: 6.4vw;
      line-height: 1.5; } }
  p:last-child {
    margin-bottom: 0; }

hr {
  display: block;
  margin-top: 40px;
  margin-bottom: 40px; }
  @media screen and (max-width: 600px) {
    hr {
      margin-top: 6vw;
      margin-bottom: 6vw; } }

figure {
  margin: 20px auto;
  padding: 0; }
  @media screen and (max-width: 600px) {
    figure {
      margin-top: 6vw;
      margin-bottom: 6vw; } }

figcaption {
  font-size: 14px;
  text-align: center;
  letter-spacing: 0;
  line-height: 1.5;
  color: #000000;
  margin: 10px 0 0;
  padding: 0; }
  @media screen and (max-width: 600px) {
    figcaption {
      font-size: 3.2vw;
      margin-top: 2.667vw; } }

address {
  font-style: normal; }

details {
  padding: 0 0 20px; }
  @media screen and (max-width: 600px) {
    details {
      padding-bottom: 5.333vw; } }
  details:hovar, details:focus, details:focus-visible {
    outline: dotted 1px #000;
    outline-offset: 2px;
    box-shadow: 0 0 0 2px #F2F2F2;
    opacity: 0.8; }
  details > summary {
    position: relative;
    font-size: 1.2em;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0;
    color: #FFF;
    margin: 0 0 20px;
    padding: 20px 80px 20px 40px;
    background-color: #00ABEB;
    list-style: none; }
    details > summary::-webkit-details-marker {
      display: none; }
    details > summary:hover {
      cursor: pointer; }
    details > summary:focus-visible {
      outline: dotted 1px #fff;
      outline-offset: -2px;
      box-shadow: 0 0 0 2px #231815; }
    @media screen and (max-width: 600px) {
      details > summary {
        font-size: 4.8vw;
        margin-bottom: 5.333vw;
        padding: 2.667vw 12vw 2.667vw 4vw; } }
    .main-wpcontent details > summary + h1, .main-wpcontent details > summary + h2, .main-wpcontent details > summary + h3, .main-wpcontent details > summary + h4, .main-wpcontent details > summary + h5, .main-wpcontent details > summary + h6 {
      margin-top: 40px; }
      @media screen and (max-width: 600px) {
        .main-wpcontent details > summary + h1, .main-wpcontent details > summary + h2, .main-wpcontent details > summary + h3, .main-wpcontent details > summary + h4, .main-wpcontent details > summary + h5, .main-wpcontent details > summary + h6 {
          margin-top: 6vw; } }
    details > summary::before, details > summary::after {
      position: absolute;
      top: 0;
      bottom: 0;
      right: 30px;
      margin: auto;
      content: "";
      width: 25px;
      height: 3px;
      background-color: #FFF;
      transition: all 300ms ease-in-out; }
      @media screen and (max-width: 600px) {
        details > summary::before, details > summary::after {
          right: 4vw;
          width: 4vw;
          height: 2px; } }
    details > summary::after {
      transform: rotate(90deg); }
  details[open] > summary::after {
    transform: rotate(180deg); }

/* clearfix */
.clearfix:after {
  content: " ";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0; }

.pc-none {
  display: none; }
  @media screen and (max-width: 600px) {
    .pc-none {
      display: block; } }

.sp-none {
  display: block; }
  @media screen and (max-width: 600px) {
    .sp-none {
      display: none; } }

@media screen and (max-width: 600px) {
  .pc-br {
    display: none; } }

.sp-br {
  display: none; }
  @media screen and (max-width: 600px) {
    .sp-br {
      display: inline-block; } }

.fw_bold {
  font-weight: 700; }

.ib {
  display: inline-block; }

@media screen and (max-width: 600px) {
  .sp-ib {
    display: inline-block; } }

.radius-50 {
  border-radius: 9999px; }

.mb00 {
  margin-bottom: 0 !important; }
  .mb00 + * {
    margin-top: 0 !important; }

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

.mt10 {
  margin-top: 10px !important; }
  @media screen and (max-width: 600px) {
    .mt10 {
      margin-top: 2.667vw !important; } }

.mt20 {
  margin-top: 20px !important; }
  @media screen and (max-width: 600px) {
    .mt20 {
      margin-top: 5.333vw !important; } }

.pt00 {
  padding-top: 0 !important; }

.pt05 {
  padding-top: 5px !important; }
  @media screen and (max-width: 600px) {
    .pt05 {
      padding-top: 1.333vw !important; } }

.pt10 {
  padding-top: 10px !important; }
  @media screen and (max-width: 600px) {
    .pt10 {
      padding-top: 2.667vw !important; } }

.pb00 {
  padding-bottom: 0 !important; }

.pb05 {
  padding-bottom: 5px !important; }
  @media screen and (max-width: 600px) {
    .pb05 {
      padding-bottom: 1.333vw !important; } }

.pb10 {
  padding-bottom: 10px !important; }
  @media screen and (max-width: 600px) {
    .pb10 {
      padding-bottom: 2.667vw !important; } }

/*==============================================
◆10：レイアウト設定
==============================================*/
/* ◆11 ボディー */
body {
  background-color: #FFF;
  color: #000000; }

#mainScroll {
  position: relative;
  margin: 0 auto;
  padding: 0;
  z-index: 300;
  /*  overflow-x: hidden;
    overflow-y: visible;*/ }

#mainScroll.blur {
  -ms-filter: blur(4px);
  filter: blur(4px); }
  @media screen and (max-width: 600px) {
    #mainScroll.blur {
      -ms-filter: none;
      filter: none; } }

/* ◆12 ヘッダー */
#header {
  position: sticky;
  margin: 0;
  padding: 0;
  top: 0;
  left: 0;
  z-index: 400;
  width: 100%;
  background-color: #FFF;
  box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.2);
  color: #000000; }
  @media screen and (max-width: 1080px) {
    #header {
      height: auto; } }
  @media screen and (max-width: 600px) {
    #header {
      box-shadow: 0 0.8vw 0.8vw 0 rgba(0, 0, 0, 0.2); } }
  #header__inner {
    width: 1000px;
    padding: 18px 0 10px;
    margin: 0 auto; }
    @media screen and (max-width: 1080px) {
      #header__inner {
        padding: 0 0 0 40px;
        width: auto; } }
    @media screen and (max-width: 600px) {
      #header__inner {
        padding: 0 0 0 5.333vw; } }
  #header a:focus-visible {
    /*      outline: 1px dotted $c_header_text;
          outline-offset: 0;
          opacity: 1;*/ }

#header-top {
  display: flex;
  height: 60px;
  justify-content: space-between; }
  @media screen and (max-width: 1080px) {
    #header-top {
      align-content: center;
      align-items: center; } }
  @media screen and (max-width: 600px) {
    #header-top {
      height: 16vw; } }
  #header-top #header-top-identityarea {
    flex: 0 0 300px; }
    @media screen and (max-width: 600px) {
      #header-top #header-top-identityarea {
        flex: 0 0 61.333vw; } }
    #header-top #header-top-identityarea a img {
      width: 100%;
      height: auto; }

#header-top-infoarea {
  display: flex;
  height: 60px;
  gap: 0 30px;
  flex: 0 0 510px;
  justify-content: flex-end; }
  @media screen and (max-width: 1080px) {
    #header-top-infoarea {
      display: none; } }
  #header-top-infoarea .header-top-infoarea--telfax dl div {
    display: flex;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    /* 150% */
    letter-spacing: 0; }
  #header-top-infoarea .header-top-infoarea--time dl {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    /* 150% */
    letter-spacing: 0; }
  #header-top-infoarea .header-top-infoarea--contact {
    flex: 0 0 220px; }
    #header-top-infoarea .header-top-infoarea--contact a {
      display: flex;
      justify-content: center;
      align-content: center;
      align-items: center;
      gap: 0 5px;
      padding: 10px 0;
      background-color: #003F98;
      font-size: 14px;
      font-weight: 700;
      line-height: 1.5;
      /* 150% */
      letter-spacing: 0;
      color: #FFF; }
      #header-top-infoarea .header-top-infoarea--contact a::before {
        content: "";
        display: inline-block;
        width: 21px;
        height: 21px;
        background: url("image/share/icon-contact.svg") no-repeat center center;
        background-size: contain; }

/*
#lang-area {
  position: relative;
  z-index: 200;
  &--button {
    font-size: 12px;
    font-weight: $fw_bold;
    line-height: 1;
    letter-spacing: $f_letter;
    text-align: center;
    color: $c_header_bg;
    background-color: $c_header_text;
    width: 100%;
    height: 40px;
    border-radius: 20px;
    @include hover-transition(300ms,all);
    &:focus-visible {
      outline: dotted 2px $c_header_bg;
      outline-offset: -3px;
    }
    &::before {
      display: inline-block;
      content: "";
      margin-right: 10px;
      line-height: 1;
      width: 26px;
      height: 26px;
      vertical-align: middle;
      -webkit-mask-image: url("image/share/icon-language.svg");
      -webkit-mask-size: contain;
      -webkit-mask-repeat: no-repeat;
      -webkit-mask-position: center;
      mask-image: url("image/share/icon-language.svg");
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center;
      background-color: currentColor;
    }
    &::after {
      display: inline-block;
      content: "";
      margin-left: 7px;
      line-height: 1;
      width: 14px;
      height: 8px;
      vertical-align: middle;
      -webkit-mask-image: url("image/share/icon-arrow-up-w.svg");
      -webkit-mask-size: contain;
      -webkit-mask-repeat: no-repeat;
      -webkit-mask-position: center;
      mask-image: url("image/share/icon-arrow-up-w.svg");
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center;
      background-color: currentColor;
      @include transform (rotate3d(1, 0, 0, 180deg));
      @include hover-transition(300ms,all);
    }
    &.active {
      border-radius: 20px 20px 0 0;
      &::after {
        @include transform (rotate3d(1, 0, 0, 0));
      }
    }
  }
  &--select {
    opacity: 0;
    visibility: hidden;
    display: none;
    position: absolute;
    top: 40px;
    background-color: $c_header_text;
    border-radius: 0 0 20px 20px;
    width: 100%;
    margin: 0;
    padding: 0;
    @include hover-transition(300ms,all);
    &.active {
      opacity: 1;
      visibility: visible;
      display: block;
    }
    > li {
      margin: 0;
      padding: 0;
      a {
        display: block;
        font-size: 12px;
        font-weight: $fw_normal;
        line-height: 1;
        letter-spacing: $f_letter;
        text-align: center;
        color: $c_header_bg;
        width: 100%;
        padding: 10px;
        &:focus-visible {
          outline: dotted 2px $c_header_bg;
          color: $c_header_bg;
          outline-offset: -3px;
          box-shadow: none;
        }
      }
      &:last-child {
        a {
          &:last-child {
            border-radius: 0 0 20px 20px;
          }
        }
      }
      &.lang-area--select {
        &--jp {
          display: none;
          a {}
        }
        &--en {
          a {
            cursor: none;
            pointer-events: none;
            color: $c_gray2;
          }
        }
        &--cn {
          a {
            
          }
        }
      }
    }
  }
}
#search-area {
  position: relative;
  z-index: 100;
  margin-top: 10px;
  #searchform {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
    background-color: $c_header_text;
    border-radius: 20px;
    &--s {
      flex: 1 1 100%;
      font-size: 14px;
      font-weight: $fw_normal;
      line-height: 1;
      letter-spacing: $f_letter;
      color: $c_header_bg;
      height: 40px;
      padding: 0 0 0 20px;
      border-radius: 20px 0 0 20px;
      &::placeholder {
        font-size: 14px;
        color: $c_gray;
      }
      &:focus-visible {
        outline: dotted 2px $c_header_bg;
        outline-offset: -3px;
        box-shadow: none;
      }
    }
    &--submit {
      flex: 0 0 40px;
      width: 40px;
      height: 40px;
      margin: 0 20px 0 0;
      line-height: 1;
      font-size: 0;
      color: $c_header_bg;
      display: flex;
      justify-content: center;
      align-items: center;
      align-content: center;
      &::before {
        content: "";
        display: block;
        width: 21px;
        height: 21px;
        vertical-align: middle;
        -webkit-mask-image: url("image/share/icon-search.svg");
        -webkit-mask-size: contain;
        -webkit-mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-image: url("image/share/icon-search.svg");
        mask-size: contain;
        mask-repeat: no-repeat;
        mask-position: center;
        background-color: currentColor;
      }
      &:focus-visible {
        outline: dotted 2px $c_header_bg;
        outline-offset: -3px;
        box-shadow: none;
      }
    }
  }
}
#contact-area {
  flex: 0 0 144px;
  height: 100%;
  @include mq('md') {
    display: none;
  }
  a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    align-content: center;
    background-color: #FDB52C;
    height: 100%;
    width: 144px;
    .contact-area {
      &--img {}
      &--text {
        font-size: 14px;
        font-weight: $fw_normal;
        line-height: 1;
        letter-spacing: $f_letter;
        text-align: center;
        color: $c_white;
        margin: 10px 0 0;
      }
    }
  }
}
*/
#menu-button--close,
#menu-button {
  position: relative;
  display: none;
  width: 60px;
  height: 60px;
  background-color: #00ABEB;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  border-radius: 0;
  transition: all 300ms ease-in-out;
  /*  font-size: 12px;
    line-height: 1;
    color: $line-color;
    font-weight: $fw_bold;*/ }
  #menu-button--close:hover,
  #menu-button:hover {
    cursor: pointer; }
  @media screen and (max-width: 1080px) {
    #menu-button--close,
    #menu-button {
      display: block; } }
  @media screen and (max-width: 600px) {
    #menu-button--close,
    #menu-button {
      width: 16vw;
      height: 16vw;
      font-size: 3.2vw; } }
  #menu-button--close .top-main--menu--line,
  #menu-button--close .menu--line,
  #menu-button .top-main--menu--line,
  #menu-button .menu--line {
    position: absolute;
    display: block;
    width: 30px;
    height: 2px;
    background-color: #FFF;
    left: 50%;
    top: 30px;
    border-radius: 99999px;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    transition: all 300ms ease-in-out;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0); }
    @media screen and (max-width: 600px) {
      #menu-button--close .top-main--menu--line,
      #menu-button--close .menu--line,
      #menu-button .top-main--menu--line,
      #menu-button .menu--line {
        top: 8vw;
        width: 8vw;
        height: 2px; } }
  #menu-button--close .top-main--menu--line--top,
  #menu-button--close .menu--line--top,
  #menu-button .top-main--menu--line--top,
  #menu-button .menu--line--top {
    -webkit-transform: translate(-50%, -9px);
    transform: translate(-50%, -9px); }
    @media screen and (max-width: 600px) {
      #menu-button--close .top-main--menu--line--top,
      #menu-button--close .menu--line--top,
      #menu-button .top-main--menu--line--top,
      #menu-button .menu--line--top {
        -webkit-transform: translate(-50%, -2.6665vw);
        transform: translate(-50%, -2.6665vw); } }
  #menu-button--close .top-main--menu--line--bottom,
  #menu-button--close .menu--line--bottom,
  #menu-button .top-main--menu--line--bottom,
  #menu-button .menu--line--bottom {
    -webkit-transform: translate(-50%, 9px);
    transform: translate(-50%, 9px); }
    @media screen and (max-width: 600px) {
      #menu-button--close .top-main--menu--line--bottom,
      #menu-button--close .menu--line--bottom,
      #menu-button .top-main--menu--line--bottom,
      #menu-button .menu--line--bottom {
        -webkit-transform: translate(-50%, 2.6665vw);
        transform: translate(-50%, 2.6665vw); } }
  #menu-button--close.active .menu--line--top,
  #menu-button.active .menu--line--top {
    -webkit-transform: translate(-50%, 0) rotate(30deg);
    transform: translate(-50%, 0) rotate(30deg); }
  #menu-button--close.active .menu--line--middle,
  #menu-button.active .menu--line--middle {
    opacity: 0; }
  #menu-button--close.active .menu--line--bottom,
  #menu-button.active .menu--line--bottom {
    -webkit-transform: translate(-50%, 0) rotate(-30deg);
    transform: translate(-50%, 0) rotate(-30deg); }

#menu-button--close .menu--line--top {
  -webkit-transform: translate(-50%, 0) rotate(30deg);
  transform: translate(-50%, 0) rotate(30deg); }
#menu-button--close .menu--line--middle {
  opacity: 0; }
#menu-button--close .menu--line--bottom {
  -webkit-transform: translate(-50%, 0) rotate(-30deg);
  transform: translate(-50%, 0) rotate(-30deg); }

/* ◆13 グローバルナビ */
#global-area {
  margin: 0;
  padding: 0; }
  @media screen and (max-width: 1080px) {
    #global-area {
      display: none; } }
  #global-area__inner {
    padding: 0;
    margin: 0; }

.global-nav-submenu--list {
  position: absolute;
  width: 166px;
  max-height: 0;
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
  background-color: #F2F2F2;
  transition: max-height 1s ease, opacity 0s ease,visibility 1s linear; }
  .global-nav-submenu--list * {
    height: 0; }
  .global-nav-submenu--list > li a {
    display: block;
    padding: 15px 0;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.5;
    /* 150% */
    letter-spacing: 0;
    text-align: center;
    color: #000000;
    border-bottom: 1px solid #CCC; }
    .global-nav-submenu--list > li a:hover {
      background-color: #CBE3EC; }
  .global-nav-submenu--list > li:last-child > a {
    margin: 0; }

#global-nav {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center; }
  #global-nav > li {
    flex: 0 1 166px;
    text-align: center;
    margin: 0;
    border-right: 1px solid #CCC; }
    #global-nav > li > a {
      display: flex;
      flex-direction: column;
      width: 100%;
      height: 44px;
      align-items: center;
      font-size: 16px;
      font-weight: 700;
      line-height: 1.5;
      /* 150% */
      letter-spacing: 0;
      color: #000000;
      box-sizing: border-box;
      transition: none; }
  #global-nav > li:last-child {
    border: none; }
  #global-nav > li:hover > a {
    background-color: #00ABEB;
    color: #FFF; }
  #global-nav > li.has-submenu {
    position: relative; }
    #global-nav > li.has-submenu > a::after {
      content: "";
      display: inline-block;
      width: 20px;
      height: 20px;
      margin: 0;
      background: url("image/share/icon-submenu-down.svg") center center no-repeat;
      background-size: contain; }
    #global-nav > li.has-submenu:hover > a::after {
      background: url("image/share/icon-submenu-down-white.svg") center center no-repeat;
      background-size: contain; }
    #global-nav > li.has-submenu:hover > .global-nav-submenu--list {
      opacity: 1;
      visibility: visible;
      pointer-events: auto;
      max-height: 500px; }
      #global-nav > li.has-submenu:hover > .global-nav-submenu--list * {
        height: auto;
        overflow: visible; }
    #global-nav > li.has-submenu button {
      display: none; }

#global-area-sp {
  display: none; }
  @media screen and (max-width: 1080px) {
    #global-area-sp {
      display: block;
      position: fixed;
      top: 0;
      right: -700px;
      max-width: 400px;
      width: 100%;
      height: 100vh;
      padding: 0 0 35px;
      z-index: 1100;
      background-color: #F2F2F2;
      transition: all 0 ease-in-out;
      overflow: hidden;
      text-align: center;
      overflow-y: auto;
      overflow-x: hidden;
      box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.2);
      opacity: 0; } }
  @media screen and (max-width: 600px) {
    #global-area-sp {
      max-width: inherit;
      padding-bottom: 9.333vw; } }
  #global-area-sp::-webkit-scrollbar {
    width: 2px; }
  #global-area-sp::-webkit-scrollbar-track {
    background: #FFF;
    border-radius: 1px; }
  #global-area-sp::-webkit-scrollbar-thumb {
    background: #F2F2F2;
    border-radius: 1px; }
  #global-area-sp.active {
    opacity: 1;
    right: 0; }
  #global-area-sp__inner {
    position: relative;
    padding: 0;
    min-height: 100%; }
  #global-area-sp #identity-area-sp {
    position: sticky;
    top: 0;
    padding: 0 0 0 20x;
    display: flex;
    justify-content: space-between;
    align-items: center;
    align-content: center;
    z-index: 300;
    background-color: #FFF;
    color: #000000;
    box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.2); }
    @media screen and (max-width: 600px) {
      #global-area-sp #identity-area-sp {
        padding: 0 0 0 5.333vw;
        height: 16vw;
        box-shadow: 0 0.8vw 0.8vw 0 rgba(0, 0, 0, 0.2); } }
    #global-area-sp #identity-area-sp a {
      flex: 0 0 220px; }
      #global-area-sp #identity-area-sp a img {
        width: 100%;
        height: auto; }
      @media screen and (max-width: 600px) {
        #global-area-sp #identity-area-sp a {
          flex: 0 0 58.667vw; } }
  #global-area-sp a:focus-visible {
    outline: dotted 2px #000000;
    outline-offset: -3px;
    color: #000000;
    box-shadow: none;
    opacity: 1; }

#global-nav-sp {
  position: relative;
  z-index: 200;
  padding: 0;
  margin: 0 0 30px; }
  @media screen and (max-width: 600px) {
    #global-nav-sp {
      margin-bottom: 0 0 8vw; } }
  #global-nav-sp > li {
    text-align: justify;
    text-justify: inter-ideograph;
    margin: 0;
    padding: 0;
    border-top: 1px solid #CCC; }
    #global-nav-sp > li:last-child {
      border-bottom: 1px solid #CCC; }
      @media screen and (max-width: 600px) {
        #global-nav-sp > li:last-child {
          border-top: 0.267vw solid #CCC; } }
    @media screen and (max-width: 600px) {
      #global-nav-sp > li {
        border-top: 0.267vw solid #CCC; } }
    #global-nav-sp > li > a {
      position: relative;
      margin: 0;
      padding: 10px 20px;
      width: 100%;
      box-sizing: border-box;
      font-size: 16px;
      letter-spacing: 0;
      line-height: 1.5;
      font-weight: 700;
      color: #000000; }
      @media screen and (max-width: 600px) {
        #global-nav-sp > li > a {
          padding: 2.667vw 5.333vw;
          font-size: 4.267vw; } }
      #global-nav-sp > li > a:hover {
        color: #FFF;
        background-color: #00ABEB; }
        @media screen and (max-width: 600px) {
          #global-nav-sp > li > a:hover {
            opacity: 1; } }
      #global-nav-sp > li > a .global-nav-sp {
        /*        &--jp {}
                &--en {
                  font-size: 12px;
                  font-weight: $fw_normal;
                  line-height: 1;
                  letter-spacing: $f_letter;
                  margin: 10px 0 0;
                  color: #46B1F4;
                  @include mq('sm') {
                    font-size: 3.2vw;
                    margin-top: 2.667vw;
                  }
                 }*/ }
        #global-nav-sp > li > a .global-nav-sp--child {
          position: absolute;
          top: 50%;
          right: 20px;
          width: 25px;
          height: 25px;
          -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%); }
          @media screen and (max-width: 600px) {
            #global-nav-sp > li > a .global-nav-sp--child {
              right: 5.333vw;
              width: 6.667vw;
              height: 6.667vw; } }
          #global-nav-sp > li > a .global-nav-sp--child:focus-visible {
            outline: dotted 1px #000000;
            outline-offset: 2px;
            color: #000000;
            box-shadow: none; }
          #global-nav-sp > li > a .global-nav-sp--child::before, #global-nav-sp > li > a .global-nav-sp--child::after {
            content: "";
            display: block;
            position: absolute;
            width: 14px;
            height: 2px;
            background-color: #000000;
            transition: all 300ms ease-in-out;
            left: 50%;
            top: 50%;
            -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
            @media screen and (max-width: 600px) {
              #global-nav-sp > li > a .global-nav-sp--child::before, #global-nav-sp > li > a .global-nav-sp--child::after {
                width: 3.7333vw;
                height: 0.533vw; } }
          #global-nav-sp > li > a .global-nav-sp--child::before {
            -webkit-transform: translate(-50%, -50%) rotate(90deg);
            transform: translate(-50%, -50%) rotate(90deg); }
          #global-nav-sp > li > a .global-nav-sp--child.active::before {
            opacity: 0;
            -webkit-transform: translate(0, -50%) rotate(0);
            transform: translate(0, -50%) rotate(0); }
    #global-nav-sp > li > ul {
      display: none;
      margin: 0;
      padding: 0;
      background-color: #CBE3EC; }
      #global-nav-sp > li > ul > li {
        margin: 0;
        border-bottom: 1px solid #CCC; }
        @media screen and (max-width: 600px) {
          #global-nav-sp > li > ul > li {
            border-bottom: 0.267vw solid #CCC; } }
        #global-nav-sp > li > ul > li:last-child {
          border: none; }
        #global-nav-sp > li > ul > li > a {
          width: 100%;
          box-sizing: border-box;
          font-size: 14px;
          letter-spacing: 0;
          line-height: 1.5;
          font-weight: 700;
          color: #000000;
          padding: 10px 20px; }
          @media screen and (max-width: 600px) {
            #global-nav-sp > li > ul > li > a {
              font-size: 3.7333vw;
              padding: 2.667vw 5.333vw; } }
          #global-nav-sp > li > ul > li > a:hover {
            color: #00ABEB; }
            @media screen and (max-width: 600px) {
              #global-nav-sp > li > ul > li > a:hover {
                opacity: 1; } }
          #global-nav-sp > li > ul > li > a:focus-visible {
            outline: dotted 1px #000000;
            outline-offset: -3px;
            color: #000000;
            box-shadow: none;
            opacity: 0.8; }

.global-subarea-sp {
  padding: 0 40px; }
  .global-subarea-sp a {
    display: flex;
    padding: 20px 0;
    align-items: center;
    justify-content: center;
    color: #FFF;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0; }
    @media screen and (max-width: 600px) {
      .global-subarea-sp a {
        padding: 2.667vw 5.333vw;
        font-size: 4.267vw; } }
    .global-subarea-sp a::after {
      content: "";
      display: inline-block;
      margin: 0 0 0 10px;
      width: 27px;
      height: 27px;
      background-size: contain; }
      @media screen and (max-width: 600px) {
        .global-subarea-sp a::after {
          margin-left: 2.667vw;
          width: 7.2vw;
          height: 7.2vw; } }

#global-area-infoarea-sp {
  display: flex;
  justify-content: center;
  gap: 0 30px; }
  @media screen and (max-width: 600px) {
    #global-area-infoarea-sp {
      gap: 0 8vw; } }
  #global-area-infoarea-sp .global-area-infoarea-sp--telfax dl div {
    display: flex;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    /* 150% */
    letter-spacing: 0; }
    @media screen and (max-width: 600px) {
      #global-area-infoarea-sp .global-area-infoarea-sp--telfax dl div {
        font-size: 4.267vw; } }
    #global-area-infoarea-sp .global-area-infoarea-sp--telfax dl div dd a {
      color: #000000; }
  #global-area-infoarea-sp .global-area-infoarea-sp--time dl {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    /* 150% */
    letter-spacing: 0; }
    @media screen and (max-width: 600px) {
      #global-area-infoarea-sp .global-area-infoarea-sp--time dl {
        font-size: 4.267vw; } }

/*
#lang-area-sp {
  position: relative;
  z-index: 200;
  margin: 40px 20px 0;
  padding: 0;
  @include mq('sm') {
    margin: 10.667vw $padding_sp 0;
  }
  &--button {
    font-size: 12px;
    font-weight: $fw_bold;
    line-height: 1;
    letter-spacing: $f_letter;
    text-align: center;
    color: $c_header_bg;
    background-color: $c_header_text;
    width: 100%;
    height: 40px;
    border-radius: 20px;
    //@include hover-transition(300ms,all);
    @include mq('sm') {
      font-size: 3.2vw;
      height: 10.667vw;
      border-radius: 5.333vw;
    }
    &:focus-visible {
      outline: dotted 2px $c_header_bg;
      outline-offset: -3px;
    }
    &::before {
      display: inline-block;
      content: "";
      margin-right: 10px;
      line-height: 1;
      width: 26px;
      height: 26px;
      vertical-align: middle;
      -webkit-mask-image: url("image/share/icon-language.svg");
      -webkit-mask-size: contain;
      -webkit-mask-repeat: no-repeat;
      -webkit-mask-position: center;
      mask-image: url("image/share/icon-language.svg");
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center;
      background-color: currentColor;
      @include mq('sm') {
        width: 6.933vw;
        height: 6.933vw;
        margin-right: 2.667vw;
      }
    }
    &::after {
      display: inline-block;
      content: "";
      margin-left: 7px;
      line-height: 1;
      width: 14px;
      height: 8px;
      vertical-align: middle;
      -webkit-mask-image: url("image/share/icon-arrow-up-w.svg");
      -webkit-mask-size: contain;
      -webkit-mask-repeat: no-repeat;
      -webkit-mask-position: center;
      mask-image: url("image/share/icon-arrow-up-w.svg");
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center;
      background-color: currentColor;
      @include transform (rotate3d(1, 0, 0, 180deg));
      @include hover-transition(300ms,all);
      @include mq('sm') {
        width: 3.733vw;
        height: 2.133vw;
        margin-left: 1.867vw;
      }
    }
    &.active {
      border-radius: 20px 20px 0 0;
      @include mq('sm') {
        border-radius: 5.333vw 5.333vw 0 0;
      }
      &::after {
        @include transform (rotate3d(1, 0, 0, 0));
      }
    }
  }
  &--select {
    opacity: 0;
    visibility: hidden;
    display: none;
    position: absolute;
    top: 40px;
    background-color: $c_header_text;
    border-radius: 0 0 20px 20px;
    width: 100%;
    margin: 0;
    padding: 0;
    @include hover-transition(300ms,all);
    @include mq('sm') {
      top: 10.667vw;
      border-radius: 0 0 5.333vw 5.333vw;
    }
    &.active {
      opacity: 1;
      visibility: visible;
      display: block;
    }
    > li {
      margin: 0;
      padding: 0;
      a {
        display: block;
        font-size: 12px;
        font-weight: $fw_normal;
        line-height: 1;
        letter-spacing: $f_letter;
        text-align: center;
        color: $c_header_bg;
        width: 100%;
        padding: 10px;
        @include mq('sm') {
          font-size: 3.2vw;
          padding: 2.667vw;
        }
        &:focus-visible {
          outline: dotted 2px $c_header_bg;
          color: $c_header_bg;
          outline-offset: -3px;
          box-shadow: none;
        }
      }
      &:last-child {
        a {
          border-radius: 0 0 20px 20px;
          @include mq('sm') {
            border-radius: 0 0 5.333vw 5.333vw;
          }
        }
      }
      &.lang-area-sp--select {
        &--jp {
          display: none;
          a {}
        }
        &--en {
          a {
            cursor: none;
            pointer-events: none;
            color: $c_gray2;
          }
        }
        &--cn {
          a {
            
          }
        }
      }
    }
  }
}
#search-area-sp {
  position: relative;
  z-index: 100;
  margin-top: 15px;
  padding: 0 20px;
  @include mq('sm') {
    margin-top: 4vw;
    padding: 0 $padding_sp;
  }
  #searchform-sp {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
    background-color: $c_header_text;
    border-radius: 20px;
    @include mq('sm') {
      border-radius: 5.333vw;
    }
    &--s {
      flex: 1 1 100%;
      font-size: 14px;
      font-weight: $fw_normal;
      line-height: 1;
      letter-spacing: $f_letter;
      color: $c_header_bg;
      height: 40px;
      padding: 0 0 0 20px;
      border-radius: 20px 0 0 20px;
      text-align: left;
      @include mq('sm') {
        font-size: 3.733vw;
        height: 10.667vw;
        padding: 0 0 0 5.333vw;
      border-radius: 5.333vw 0 0 5.333vw;
      }
      &::placeholder {
        font-size: 14px;
        color: $c_gray;
        @include mq('sm') {
          font-size: 3.733vw;
        }
      }
      &:focus-visible {
        outline: dotted 2px $c_header_bg;
        outline-offset: -3px;
        box-shadow: none;
      }
    }
    &--submit {
      flex: 0 0 40px;
      width: 40px;
      height: 40px;
      margin: 0 20px 0 0;
      line-height: 1;
      font-size: 0;
      color: $c_header_bg;
      display: flex;
      justify-content: center;
      align-items: center;
      align-content: center;
      @include mq('sm') {
        flex: 0 0 10.667vw;
        width: 10.667vw;
        height: 10.667vw;
        margin-right: 5.333vw;
      }
      &::before {
        content: "";
        display: block;
        width: 21px;
        height: 21px;
        vertical-align: middle;
        -webkit-mask-image: url("image/share/icon-search.svg");
        -webkit-mask-size: contain;
        -webkit-mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-image: url("image/share/icon-search.svg");
        mask-size: contain;
        mask-repeat: no-repeat;
        mask-position: center;
        background-color: currentColor;
        @include mq('sm') {
          width: 5.6vw;
          height: 5.6vw;
        }
      }
      &:focus-visible {
        outline: dotted 2px $c_header_bg;
        outline-offset: -3px;
        box-shadow: none;
      }
    }
  }
}
*/
#bottom-area-sp {
  display: none; }
  @media screen and (max-width: 1080px) {
    #bottom-area-sp {
      display: block;
      position: fixed;
      bottom: 0;
      left: 0;
      width: 100%;
      z-index: 400; } }

#bottom-nav-sp .bottom-nav-sp--list {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 60px;
  background: #003F98; }
  @media screen and (max-width: 600px) {
    #bottom-nav-sp .bottom-nav-sp--list {
      height: 16vw; } }
  #bottom-nav-sp .bottom-nav-sp--list a {
    display: flex;
    gap: 0 5px;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0;
    color: #FFF; }
    @media screen and (max-width: 600px) {
      #bottom-nav-sp .bottom-nav-sp--list a {
        font-size: 3.734vw;
        gap: 0 1.333vw; } }
    #bottom-nav-sp .bottom-nav-sp--list a::before {
      content: "";
      display: inline-block;
      width: 21px;
      height: 21px;
      background-image: url("image/share/icon-contact.svg");
      background-size: contain; }
      @media screen and (max-width: 600px) {
        #bottom-nav-sp .bottom-nav-sp--list a::before {
          width: 5.6vw;
          height: 5.6vw; } }

/* ◆14 キービジュアル */
/* ◆15 コンテンツ */
#contents-area {
  position: relative; }

/* ◆16 トピックパス */
#breadcrumb__outer {
  max-width: 1000px;
  margin: 0 auto 40px;
  padding: 0;
  box-sizing: border-box; }
  @media screen and (max-width: 1080px) {
    #breadcrumb__outer {
      padding-left: 40px;
      padding-right: 40px; } }
  @media screen and (max-width: 600px) {
    #breadcrumb__outer {
      padding-left: 5.333vw;
      padding-right: 5.333vw;
      margin-bottom: 12vw; } }

#breadcrumb {
  margin: 0;
  padding: 0;
  font-size: 13px;
  font-weight: 400;
  text-align: left;
  line-height: 1.5;
  letter-spacing: 0.072em;
  color: #000000; }
  @media screen and (max-width: 600px) {
    #breadcrumb {
      font-size: 3.2vw;
      line-height: 2; } }
  #breadcrumb > span::before {
    content: "＞";
    display: inline-block;
    padding: 0 4px; }
  #breadcrumb > span:first-child::before,
  #breadcrumb > span span::before {
    content: none; }
  @media screen and (max-width: 600px) {
    #breadcrumb > span img {
      width: 6.4vw;
      height: auto; } }
  #breadcrumb a {
    text-decoration: underline; }

/* ◆17 メインコンテンツ */
#main-area {
  position: relative;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 0 90px;
  font-size: 16px;
  line-height: 1.75;
  z-index: 20; }
  @media screen and (max-width: 1080px) {
    #main-area {
      width: auto;
      padding: 0 40px 90px; } }
  @media screen and (max-width: 600px) {
    #main-area {
      font-size: 4.267vw;
      padding: 0 5.333vw 21.333vw; } }

/* ◆18 サブコンテンツ */
/* ◆19 フッター */
#footer {
  /*  position: relative;*/
  background-color: #F2F2F2;
  color: #000000;
  margin: 0;
  padding: 20px 0 10px;
  z-index: 30;
 /*
a {
  color: $c_footer_text;
  &:focus-visible {
    outline: dotted 1px $c_footer_text;
    //outline-offset: -2px;
    color: $c_footer_text;
    box-shadow: 0 0 0 2px $c_footer_text;
  }
}*/ }
  @media screen and (max-width: 1080px) {
    #footer {
      padding: 20px 0 70px; } }
  @media screen and (max-width: 600px) {
    #footer {
      padding: 9.333vw 0 18.667vw; } }
  #footer__inner {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    padding: 0; }
    @media screen and (max-width: 600px) {
      #footer__inner {
        padding: 0 5.333vw; } }
    #footer__inner .footer-logo {
      width: 270px; }
      @media screen and (max-width: 1080px) {
        #footer__inner .footer-logo {
          margin: 0 auto; } }
      @media screen and (max-width: 600px) {
        #footer__inner .footer-logo {
          width: 60vw; } }
      #footer__inner .footer-logo img {
        width: 100%;
        height: auto; }
    @media screen and (max-width: 1080px) {
      #footer__inner .footer-address {
        text-align: center; } }
    @media screen and (max-width: 600px) {
      #footer__inner .footer-address {
        font-size: 3.733vw; } }
    #footer__inner .footer-infoarea {
      display: none; }
      @media screen and (max-width: 1080px) {
        #footer__inner .footer-infoarea {
          display: flex;
          justify-content: center;
          gap: 0 30px;
          margin: 21px auto 40px; } }
      @media screen and (max-width: 600px) {
        #footer__inner .footer-infoarea {
          gap: 0 8vw;
          margin: 5.6vw auto 10.667vw; } }
      #footer__inner .footer-infoarea--telfax dl div {
        display: flex;
        font-size: 16px;
        font-weight: 700;
        line-height: 1.5;
        /* 150% */
        letter-spacing: 0; }
        @media screen and (max-width: 600px) {
          #footer__inner .footer-infoarea--telfax dl div {
            font-size: 4.267vw; } }
        #footer__inner .footer-infoarea--telfax dl div dd a {
          color: #000000; }
      #footer__inner .footer-infoarea--time dl {
        font-size: 16px;
        font-weight: 700;
        line-height: 1.5;
        /* 150% */
        letter-spacing: 0; }
        @media screen and (max-width: 600px) {
          #footer__inner .footer-infoarea--time dl {
            font-size: 4.267vw; } }

/*#footer-nav {
  display: flex;
  justify-content: space-between;
  gap: 0 60px;
  > li {
    font-size: 16px;
    font-weight: $fw_normal;
    line-height: 1.75;
    letter-spacing: $f_letter;
    margin: 0;
    padding: 0;
    a {
      text-align: left;
      color: $c_footer_text;
      &[target="_blank"] {
        &::after {
          display: inline-block;
          content: "";
          background: url("image/share/icon-blank.svg") center center no-repeat;
          background-size: contain;
          width: 16px;
          height: 16px;
          vertical-align: middle;
          margin: 0 0 0 10px;
        }
      }
    }
    > a {
      color: #46B1F4;
      font-weight: $fw_bold;
    }
    &.footer-nav {
      &--news {}
      &--company {}
      &--products {}
      &--development {}
      &--others {
      }
    }
    > dl {
      margin: 0;
      padding: 0;
      dt {
        margin: 0;
        padding: 0;
        a {
          color: #46B1F4;
          font-weight: $fw_bold;
        }
      }
      dd {
        margin: 0;
        padding: 0 0 0 1.2em;
        position: relative;
        &::before {
          position: absolute;
          content: "";
          display: block;
          width: 0.9em;
          height: 1px;
          background-color: $c_white;
          vertical-align: middle;
          left: 0;
          top: 50%;
          @include translate(0,-50%);
        }
        a {}
      }
    }
    > ul {
      margin: 0;
      padding: 0;
      li {
        margin: 0;
        padding: 0;
        & + li {
          margin-top: 25px;
        }
        a {
          color: #46B1F4;
          font-weight: $fw_bold;
        }
      }
    }
  }
}*/
#copyright {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: f_letter;
  color: #000000;
  text-align: center;
  margin: 30px auto 0; }
  @media screen and (max-width: 600px) {
    #copyright {
      font-size: 3.2vw; } }

/* ◆20 サイドバーメニュー */
/*==============================================
◆40：各コンテンツ
==============================================*/
/*
%link-button{
  text-decoration: none;
  margin: 0 auto;
  padding: 10px 50px;
  border: 1px solid $c_first;
  background-color: $c_white;
  border-radius: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  color: $c_text;
  font-size: round($main_font_size * 0.875 );//14
  font-weight: $fw_normal;
  line-height: 1.5;  150% 
  @include mq('sm'){
    padding: 2.667vw 13.333vw;
    border: 0.267vw solid $c_first;
    border-radius: 5.333vw;
    gap: 2.667vw;
    font-size: 3.733vw;//14
  }
  &::after{
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    font-size: round($main_font_size * 1);
    background: url("image/top/icon-top-arrow.svg") no-repeat center center;
    background-size: contain;
    @include mq('sm'){
    }
  }
}
*/
#news-title {
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.072em;
  text-align: justify;
  text-justify: inter-ideograph;
  color: #000000;
  margin: 0 0 5px;
  padding: 20px 5px;
  box-sizing: border-box;
  border-top: 1px solid;
  border-bottom: 1px solid;
  border-color: #00ABEB;
  overflow: hidden; }
  @media screen and (max-width: 600px) {
    #news-title {
      line-height: 1.5;
      font-size: 4.8vw;
      margin-bottom: 0.133vw;
      padding: 2.667vw 0; } }
  #news-title.has-text-align-left {
    text-align: justify;
    text-justify: inter-ideograph; }
  #news-title.has-text-align-center {
    text-align: center; }
  #news-title.has-text-align-right {
    text-align: right; }

#news-archive--area {
  margin: 0 0 30px; }
  @media screen and (max-width: 600px) {
    #news-archive--area {
      margin-bottom: 8vw; } }
  #news-archive--area .news-archive--area--category {
    margin: 0 0 0 5px; }
    @media screen and (max-width: 600px) {
      #news-archive--area .news-archive--area--category {
        margin-left: 1.333vw; } }
    #news-archive--area .news-archive--area--category > a {
      text-decoration: underline;
      display: inline-block;
      font-size: 14px;
      font-weight: 400;
      line-height: 1.5;
      letter-spacing: 0;
      text-align: center;
      color: #1558D6;
      transition: all 300ms ease-in-out;
      margin: 0; }
      @media screen and (max-width: 600px) {
        #news-archive--area .news-archive--area--category > a {
          font-size: 3.733vw; } }
      #news-archive--area .news-archive--area--category > a + a {
        margin-left: 5px; }
        @media screen and (max-width: 600px) {
          #news-archive--area .news-archive--area--category > a + a {
            margin-left: 1.333vw; } }
  #news-archive--area .news-archive--area--date {
    font-size: 14px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0;
    color: #000000;
    vertical-align: middle; }
    @media screen and (max-width: 600px) {
      #news-archive--area .news-archive--area--date {
        font-size: 3.733vw; } }

.pagenation-area {
  margin: 50px auto 0; }
  @media screen and (max-width: 600px) {
    .pagenation-area {
      margin-top: 13.333vw; } }
  .pagenation-area__inner .post-navigation__list {
    display: flex;
    justify-content: center;
    align-items: center;
    list-style: none;
    padding: 0;
    margin: 0;
    gap: 20px; }
    @media screen and (max-width: 600px) {
      .pagenation-area__inner .post-navigation__list {
        gap: 2.667vw; } }
  .pagenation-area__inner .post-navigation__item {
    flex: 0 1 200px;
    padding: 0;
    margin: 0; }
    .pagenation-area__inner .post-navigation__item::before {
      content: none; }
    .pagenation-area__inner .post-navigation__item a {
      text-decoration: none;
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 20px;
      padding: 10px 0;
      border: 1px solid #00ABEB;
      font-size: 14px;
      font-weight: 700;
      line-height: 1.5;
      letter-spacing: 0;
      color: #000000; }
      @media screen and (max-width: 600px) {
        .pagenation-area__inner .post-navigation__item a {
          gap: 2.667vw;
          padding: 2.667vw;
          font-size: 3.733vw;
          border: 0.267vw solid #00ABEB; } }

.post-navigation__prev a::before {
  content: "";
  display: inline-block;
  width: 21px;
  height: 21px;
  font-size: 16px;
  background: url("image/share/icon-pagination-arrow-prev.svg") no-repeat center center;
  background-size: contain; }
  @media screen and (max-width: 600px) {
    .post-navigation__prev a::before {
      width: 5.6vw;
      height: 5.6vw; } }

.post-navigation__next a::after {
  content: "";
  display: inline-block;
  width: 21px;
  height: 21px;
  font-size: 16px;
  background: url("image/share/icon-pagination-arrow-next.svg") no-repeat center center;
  background-size: contain; }
  @media screen and (max-width: 600px) {
    .post-navigation__next a::after {
      width: 5.6vw;
      height: 5.6vw; } }

/*#news-archive--category {
  margin: 30px 0 60px;
  padding: 0;
  @include mq('sm') {
    margin: 8vw 0 16vw;
  }
  nav {}
}
#news-archive--category--list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 20px 30px;
  margin: 0;
  padding: 0;
  @include mq('sm') {
    gap: 4vw;
  }
  > li {
    margin: 0;
    padding: 0;
    &::before {
      display: none;
    }
    > a {
      display: flex;
      justify-content: center;
      align-items: center;
      align-content: center;
      padding: 0 25px;
      height: 30px;
      font-size: round($main_font_size * 1);//16
      font-weight:  $fw_bold;
      line-height: 1;
      letter-spacing: $f_letter;
      text-decoration: none;
      text-align: center;
      color: $c_black;
      border: 1px solid $c_blue;
      border-radius: 9999px;
      @include hover-transition(300ms,all);
      background-color: $c_white;
      @include mq('sm') {
        padding: 0 4vw;
        height: 6.4vw;
        font-size: 3.733vw;
      }
      &:where(li.current-cat *),
      &:where(li:hover *) {
        background-color: $c_blue;
        color: $c_white;
      }
      &:where(li.cat-item-news *) {
        border-color: $c_news;
      }
      &:where(li.cat-item-news.current-cat *),
      &:where(li.cat-item-news:hover *) {
        background-color: $c_news;
      }
      &:where(li.cat-item-briefing *) {
        border-color: $c_briefing;
      }
      &:where(li.cat-item-briefing.current-cat *),
      &:where(li.cat-item-briefing:hover *) {
        background-color: $c_briefing;
      }
      &:where(li.cat-item-pressrelease *) {
        border-color: $c_pressrelease;
      }
      &:where(li.cat-item-pressrelease.current-cat *),
      &:where(li.cat-item-pressrelease:hover *) {
        background-color: $c_pressrelease;
      }
    }
  }
}*/
#news-archive--list {
  border-top: 1px solid #DFDFDF;
  margin: 0 auto 60px;
  padding: 0; }
  @media screen and (max-width: 600px) {
    #news-archive--list {
      border-top: 0.267vw solid #DFDFDF;
      margin-bottom: 16vw; } }
  #top-info #news-archive--list {
    margin: 0 auto 50px; }
    @media screen and (max-width: 600px) {
      #top-info #news-archive--list {
        margin-bottom: 10.667vw; } }
  #news-archive--list > li {
    display: flex;
    gap: 30px;
    position: relative;
    margin: 0;
    padding: 20px 0;
    border-bottom: 1px solid #DFDFDF;
    transition: all 300ms ease-in-out; }
    @media screen and (max-width: 600px) {
      #news-archive--list > li {
        flex-direction: column;
        gap: 2.667vw;
        padding: 5.333vw 0;
        border-bottom: 0.226vw solid #DFDFDF; } }
    #news-archive--list > li:hover {
      background-color: #b0e0e6; }
    #news-archive--list > li::before {
      display: none; }
    #news-archive--list > li::after {
      /*      position: absolute;
            display: block;
            content: "";
            top: 0;
            bottom: 0;
            right: 30px;
            line-height: 1;
            width: 32px;
            vertical-align: middle;
            -webkit-mask-image: url("image/share/icon-btn.svg");
            -webkit-mask-size: contain;
            -webkit-mask-repeat: no-repeat;
            -webkit-mask-position: center;
            mask-image: url("image/share/icon-btn.svg");
            mask-size: contain;
            mask-repeat: no-repeat;
            mask-position: center;
            background-color: currentColor;
            @include mq('sm') {
              right: 0;
              width: 8vw;
            }*/ }
    #news-archive--list > li .news-archive--list--date {
      flex: 0 0 86px;
      font-size: 16px;
      font-weight: 700;
      line-height: 1.5;
      letter-spacing: 0;
      text-align: justify;
      text-justify: inter-ideograph;
      color: #000000; }
      @media screen and (max-width: 600px) {
        #news-archive--list > li .news-archive--list--date {
          flex: 0 0 auto;
          font-size: 3.733vw; } }
    #news-archive--list > li .news-archive--list--title {
      font-size: 16px;
      line-height: 1.5;
      letter-spacing: 0;
      font-weight: 700;
      text-align: justify;
      text-justify: inter-ideograph;
      color: #000000; }
      @media screen and (max-width: 600px) {
        #news-archive--list > li .news-archive--list--title {
          font-size: 3.733vw;
          line-height: 1.714; } }
    #news-archive--list > li .news-archive--list--link {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0; }

/*
.title-area{
  margin: 0 auto 50px;
  @include mq('sm') {
    margin-bottom: 7.467vw;
  }
  &--jp{
    text-align: center;
    color: $c_first;
    font-size: round($main_font_size *  1.875 );//30
    font-weight: $fw_bold;
    line-height: 1.2;
    letter-spacing: $f_letter;
    margin: 0 0 5px;
    @include mq('sm') {
      font-size: 6.4vw;
      line-height: normal;
      margin-bottom: 1.333vw;
    }
  }
  &--en{
    text-align: center;
    color: $c_gray3;
    font-size: round($main_font_size * 0.875 );//14
    font-weight: $fw_bold;
    line-height: 1.2;
    letter-spacing: $f_letter;
    @include mq('sm') {
      font-size: 3.2vw;
      line-height: normal;
    }
  }
}
*/
#top-main {
  margin: 0;
  padding: 0; }
  #top-main__inner {
    max-width: 1000px;
    margin: 0 auto;
    position: relative; }
    @media screen and (max-width: 1080px) {
      #top-main__inner {
        padding: 0 40px; } }
    @media screen and (max-width: 600px) {
      #top-main__inner {
        padding: 0; } }
    #top-main__inner img {
      width: 100%;
      height: auto; }

#top-slide-list .top-slide-list--img a {
  display: block; }
  #top-slide-list .top-slide-list--img a img {
    width: 100%;
    height: auto; }

#top-slide-list .slick-dots {
  bottom: -25px; }
  @media screen and (max-width: 600px) {
    #top-slide-list .slick-dots {
      bottom: -6.667vw; } }
  #top-slide-list .slick-dots li {
    margin: 0 3px; }
    @media screen and (max-width: 600px) {
      #top-slide-list .slick-dots li {
        margin: 0 0.267vw; } }
    #top-slide-list .slick-dots li button::before {
      font-size: 14px;
      color: #DFDFDF;
      opacity: 1; }
      @media screen and (max-width: 600px) {
        #top-slide-list .slick-dots li button::before {
          margin: 0;
          font-size: 3.2vw; } }
  #top-slide-list .slick-dots li.slick-active button::before {
    color: #767676; }

#top-main__inner .prev-arrow, #top-main__inner .next-arrow {
  z-index: 1;
  position: absolute;
  top: 50%;
  transition: all .3s ease;
  cursor: pointer;
  width: 50px;
  height: 60px;
  display: none !important;
  align-content: center;
  align-items: center;
  justify-content: center;
  transition: all 300ms ease-in-out; }
  @media screen and (max-width: 600px) {
    #top-main__inner .prev-arrow, #top-main__inner .next-arrow {
      display: flex;
      width: 8vw;
      height: 10.667vw; } }
  #top-main__inner .prev-arrow::before, #top-main__inner .next-arrow::before {
    content: "";
    display: none;
    width: 30px;
    height: 40px;
    background: url("image/top/icon-slide-arrow.svg") no-repeat;
    background-size: contain;
    transition: all 300ms ease-in-out; }
    @media screen and (max-width: 600px) {
      #top-main__inner .prev-arrow::before, #top-main__inner .next-arrow::before {
        display: block;
        width: 6.4vw;
        height: 8.533vw;
        opacity: 0.8; } }

#top-main__inner .prev-arrow {
  transform: translateY(-50%) rotate(180deg);
  left: -60px; }
  @media screen and (max-width: 600px) {
    #top-main__inner .prev-arrow {
      left: 0; } }
#top-main__inner .next-arrow {
  transform: translateY(-50%);
  right: -60px; }
  @media screen and (max-width: 600px) {
    #top-main__inner .next-arrow {
      right: 0; } }
#top-main__inner:hover .prev-arrow {
  display: flex !important;
  left: 0; }
  #top-main__inner:hover .prev-arrow::before {
    display: block;
    opacity: 0.5; }
  #top-main__inner:hover .prev-arrow:hover::before {
    opacity: 1; }
#top-main__inner:hover .next-arrow {
  display: flex !important;
  right: 0; }
  #top-main__inner:hover .next-arrow::before {
    display: block;
    opacity: 0.5; }
  #top-main__inner:hover .next-arrow:hover::before {
    opacity: 1; }

#top-info {
  margin: 0;
  padding: 60px 0 80px;
  background-color: #FFF; }
  @media screen and (max-width: 600px) {
    #top-info {
      padding: 10.667vw 0 21.333vw; } }
  #top-info__inner {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 40px; }
    @media screen and (max-width: 600px) {
      #top-info__inner {
        padding: 0 5.333vw; } }
    #top-info__inner h2 {
      font-size: 32px;
      font-weight: 700;
      line-height: 1.5;
      letter-spacing: 0.072em;
      text-align: justify;
      text-justify: inter-ideograph;
      margin: 0 0 40px;
      padding: 0;
      text-align: center;
      color: #00ABEB;
      overflow: hidden; }
      @media screen and (max-width: 600px) {
        #top-info__inner h2 {
          font-size: 5.333vw;
          line-height: 1.5;
          margin-top: 0;
          margin-bottom: 5.333vw; } }
    #top-info__inner #top-info--linkarea {
      text-align: center; }
      #top-info__inner #top-info--linkarea a {
        position: relative;
        font-size: 16px;
        font-weight: 700;
        line-height: 3;
        color: #00ABEB;
        background-color: #FFF;
        border: 2px solid #00ABEB;
        display: inline-flex;
        justify-content: center;
        align-content: center;
        align-items: center;
        gap: 12px;
        padding: 0 30px;
        box-sizing: border-box;
        border-radius: 0; }
        @media screen and (max-width: 600px) {
          #top-info__inner #top-info--linkarea a {
            line-height: 1.5;
            font-size: 3.733vw;
            padding: 2.667vw 12vw;
            min-width: inherit;
            gap: 2.667vw; } }
        #top-info__inner #top-info--linkarea a:hover {
          opacity: 0.8; }
        #top-info__inner #top-info--linkarea a::after {
          content: "";
          display: inline-block;
          width: 12px;
          height: 12px;
          background: url("image/share/icon-button-arrow-blue.svg") no-repeat center center;
          background-size: contain; }

#products-category--list > li .products-category-pdf--price > a, #products-category--list > li .products-category-pdf--catalog > a, .products-item--contents .products-item-textarea .products-item-pdf--price > a, .products-item--contents .products-item-textarea .products-item-pdf--catalog > a {
  text-decoration: none;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.06em;
  color: #FFF;
  display: flex;
  justify-content: center;
  align-content: center;
  align-items: center;
  gap: 10px;
  padding: 20px 0;
  box-sizing: border-box;
  border-radius: 0; }
  @media screen and (max-width: 600px) {
    #products-category--list > li .products-category-pdf--price > a, #products-category--list > li .products-category-pdf--catalog > a, .products-item--contents .products-item-textarea .products-item-pdf--price > a, .products-item--contents .products-item-textarea .products-item-pdf--catalog > a {
      font-size: 3.733vw;
      padding: 4.267vw 0;
      min-width: inherit; } }
  #products-category--list > li .products-category-pdf--price > a::after, #products-category--list > li .products-category-pdf--catalog > a::after, .products-item--contents .products-item-textarea .products-item-pdf--price > a::after, .products-item--contents .products-item-textarea .products-item-pdf--catalog > a::after {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    background: url("image/share/icon-button-arrow-white.svg") no-repeat center center;
    background-size: contain; }
    @media screen and (max-width: 600px) {
      #products-category--list > li .products-category-pdf--price > a::after, #products-category--list > li .products-category-pdf--catalog > a::after, .products-item--contents .products-item-textarea .products-item-pdf--price > a::after, .products-item--contents .products-item-textarea .products-item-pdf--catalog > a::after {
        width: 3.2vw;
        height: 3.2vw; } }

#products-category--list {
  margin: 0;
  padding: 0; }
  #products-category--list > li {
    margin: 0;
    padding: 0;
    list-style: none; }
    #products-category--list > li::before {
      content: none; }
    #products-category--list > li .products-category-pdf {
      margin: 50px 0;
      padding: 20px 15px;
      max-width: 1000px;
      display: flex;
      justify-content: space-between;
      background-color: #F2F2F2;
      font-size: 16px;
      line-height: 1.75;
      font-weight: 400;
      letter-spacing: 0; }
      @media screen and (max-width: 1080px) {
        #products-category--list > li .products-category-pdf {
          flex-wrap: wrap;
          gap: 30px; } }
      @media screen and (max-width: 600px) {
        #products-category--list > li .products-category-pdf {
          margin: 8vw 0;
          padding: 5.333vw 4vw;
          font-size: 4.267vw; } }
      #products-category--list > li .products-category-pdf--description {
        flex: 0 1 480px; }
        @media screen and (max-width: 1080px) {
          #products-category--list > li .products-category-pdf--description {
            flex: 1 1 480px; } }
        #products-category--list > li .products-category-pdf--description p {
          margin: 0; }
      #products-category--list > li .products-category-pdf--data {
        flex: 0 1 470px;
        display: flex;
        gap: 0 25px; }
        @media screen and (max-width: 1080px) {
          #products-category--list > li .products-category-pdf--data {
            flex: 1 1 470px;
            justify-content: center; } }
        @media screen and (max-width: 600px) {
          #products-category--list > li .products-category-pdf--data {
            margin: 4vw;
            flex-direction: column;
            gap: 5.333vw; } }
      #products-category--list > li .products-category-pdf--price {
        flex: 0 0 214px; }
        @media screen and (max-width: 600px) {
          #products-category--list > li .products-category-pdf--price {
            flex: 0 0 auto; } }
        #products-category--list > li .products-category-pdf--price > a {
          background-color: #00ABEB; }
      #products-category--list > li .products-category-pdf--catalog {
        flex: 0 0 231px; }
        @media screen and (max-width: 600px) {
          #products-category--list > li .products-category-pdf--catalog {
            flex: 0 0 auto; } }
        #products-category--list > li .products-category-pdf--catalog > a {
          background-color: #0087B9; }

.main-wpcontent .products-category-itemlist {
  margin: 0;
  padding: 0; }
  .main-wpcontent .products-category-itemlist > li {
    margin: 0;
    padding: 0;
    margin: 50px 0 90px; }
    .main-wpcontent .products-category-itemlist > li::before {
      content: none; }
    @media screen and (max-width: 600px) {
      .main-wpcontent .products-category-itemlist > li {
        margin: 10vw 0 0; } }

.products-item--contents {
  display: flex;
  gap: 30px; }
  @media screen and (max-width: 1000px) {
    .products-item--contents {
      flex-direction: column; } }
  @media screen and (max-width: 600px) {
    .products-item--contents {
      gap: 4vw; } }
  .products-item--contents .products-item-imgarea {
    flex: 1 1 500px; }
    @media screen and (max-width: 1000px) {
      .products-item--contents .products-item-imgarea {
        flex: 0 0 auto;
        width: 500px;
        margin: 0 auto; } }
    @media screen and (max-width: 600px) {
      .products-item--contents .products-item-imgarea {
        width: 100%; } }
    .products-item--contents .products-item-imgarea img {
      width: 100%;
      height: auto; }
  .products-item--contents .products-item-textarea {
    flex: 0 0 470px; }
    @media screen and (max-width: 1000px) {
      .products-item--contents .products-item-textarea {
        flex: 0 0 auto;
        width: 500px;
        margin: 0 auto; } }
    @media screen and (max-width: 600px) {
      .products-item--contents .products-item-textarea {
        width: 100%; } }
    .products-item--contents .products-item-textarea .products-item-pdf {
      display: flex;
      gap: 0 25px; }
      @media screen and (max-width: 600px) {
        .products-item--contents .products-item-textarea .products-item-pdf {
          margin: 4vw 0;
          flex-direction: column;
          gap: 5.333vw; } }
      .products-item--contents .products-item-textarea .products-item-pdf--price {
        flex: 1 0 213px; }
        @media screen and (max-width: 600px) {
          .products-item--contents .products-item-textarea .products-item-pdf--price {
            flex: 0 0 auto; } }
        .products-item--contents .products-item-textarea .products-item-pdf--price > a {
          background-color: #00ABEB; }
      .products-item--contents .products-item-textarea .products-item-pdf--catalog {
        flex: 1 0 230px; }
        @media screen and (max-width: 600px) {
          .products-item--contents .products-item-textarea .products-item-pdf--catalog {
            flex: 0 0 auto; } }
        .products-item--contents .products-item-textarea .products-item-pdf--catalog > a {
          background-color: #0087B9; }

.products-contact {
  background: url(image/products/bg-contact.jpg) no-repeat center center;
  background-size: cover;
  padding: 40px 20px; }
  @media screen and (max-width: 1080px) {
    .products-contact {
      background-position: left; } }
  @media screen and (max-width: 600px) {
    .products-contact {
      padding: 10.337vw 5.333vw;
      background-position: left; } }
  .products-contact__inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-content: center;
    align-items: center; }
  .products-contact--text {
    text-align: center;
    font-size: 20px;
    line-height: 1.5;
    letter-spacing: 0.072em;
    color: #FFF;
    font-weight: 700;
    margin: 0 auto 15px; }
    @media screen and (max-width: 600px) {
      .products-contact--text {
        font-size: 4.8vw;
        margin-bottom: 8vw; } }
  .products-contact--info {
    display: flex;
    gap: 0 60px;
    justify-content: center; }
    @media screen and (max-width: 1080px) {
      .products-contact--info {
        gap: 30px;
        flex-wrap: wrap; } }
    @media screen and (max-width: 600px) {
      .products-contact--info {
        gap: 8vw; } }
    .products-contact--info dl {
      margin: 0;
      flex: 0 0 406px; }
      @media screen and (max-width: 1080px) {
        .products-contact--info dl {
          flex: 0 0 327px; } }
      @media screen and (max-width: 600px) {
        .products-contact--info dl {
          flex: auto; } }
      .products-contact--info dl .products-info--tel {
        display: flex;
        align-items: baseline;
        font-size: 46px;
        line-height: 1;
        font-weight: 700;
        letter-spacing: 0.05em;
        color: #FFF;
        margin: 0 0 10px; }
        @media screen and (max-width: 1080px) {
          .products-contact--info dl .products-info--tel {
            justify-content: center; } }
        .products-contact--info dl .products-info--tel dt {
          margin: 0;
          font-size: 34px;
          vertical-align: bottom;
          letter-spacing: 0; }
          @media screen and (max-width: 600px) {
            .products-contact--info dl .products-info--tel dt {
              font-size: 6.4vw; } }
        @media screen and (max-width: 1080px) {
          .products-contact--info dl .products-info--tel dd {
            font-size: 34px; } }
        @media screen and (max-width: 600px) {
          .products-contact--info dl .products-info--tel dd {
            font-size: 6.4vw; } }
      .products-contact--info dl .products-info--time {
        display: flex;
        font-size: 20px;
        line-height: 1;
        font-weight: 400;
        letter-spacing: 0.05em;
        color: #FFF; }
        @media screen and (max-width: 1080px) {
          .products-contact--info dl .products-info--time {
            justify-content: center; } }
        @media screen and (max-width: 600px) {
          .products-contact--info dl .products-info--time {
            font-size: 4.267vw; } }
        .products-contact--info dl .products-info--time dt {
          margin: 0;
          font-weight: 400; }
        .products-contact--info dl .products-info--time dd {
          letter-spacing: 0.1em; }
    .products-contact--info .products-info--contact {
      flex: 0 0 300px; }
      @media screen and (max-width: 600px) {
        .products-contact--info .products-info--contact {
          flex: 1 0 300px; } }
      .products-contact--info .products-info--contact a {
        text-decoration: none;
        display: flex;
        gap: 0 10px;
        padding: 22px 0;
        background: #FFF;
        justify-content: center;
        align-content: center;
        align-items: baseline;
        font-size: 22px;
        line-height: 1.5;
        letter-spacing: 0;
        color: #000000;
        font-weight: 700; }
        @media screen and (max-width: 600px) {
          .products-contact--info .products-info--contact a {
            gap: 2.667vw;
            padding: 5.333vw;
            font-size: 4.267vw; } }
        .products-contact--info .products-info--contact a::after {
          content: "";
          display: inline-block;
          width: 15px;
          height: 15px;
          background: url("image/products/icon-button-arrow-black.svg") no-repeat center center;
          background-size: contain; }
          @media screen and (max-width: 600px) {
            .products-contact--info .products-info--contact a::after {
              width: 3.2vw;
              height: 3.2vw; } }

#company #company-summary table td a {
  text-decoration: none;
  color: #000000; }
#company #company-group a {
  text-decoration: none;
  color: #000000; }

#access table td a {
  text-decoration: none;
  color: #000000; }
#access iframe {
  width: 100%; }

/*
//tahnks
#thanks {
  p {
    font-size: round($main_font_size * 1);//14
    font-weight: $fw_normal;
    line-height: 2.214;
    letter-spacing: $f_letter;
    @include justify;
    @include mq('sm') {
      font-size: 3.733vw;
      line-height: 1.714;
    }
  }
}
*/
@media screen and (max-width: 600px) {
  .wp-block-file a#careerhistory-file {
    font-size: 4.267vw; } }
.wp-block-file a.careerhistory-file--button {
  padding: 1px 10px;
  font-size: 10px;
  margin: 0 0 0 5px; }
  @media screen and (max-width: 600px) {
    .wp-block-file a.careerhistory-file--button {
      font-size: 2.667vw;
      padding: 0.267vw 0.8vw;
      margin-left: 1.333vw; } }

#main-wpcontent .wpcf7-form p {
  margin-bottom: 0; }
#main-wpcontent .wpcf7-form table {
  margin: 30px 0; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form table {
      margin: 8vw 0; } }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form table tr {
      display: flex;
      flex-direction: column; } }
  #main-wpcontent .wpcf7-form table tr th {
    width: 350px; }
    @media screen and (max-width: 1080px) {
      #main-wpcontent .wpcf7-form table tr th {
        width: 120px; } }
    @media screen and (max-width: 600px) {
      #main-wpcontent .wpcf7-form table tr th {
        width: 100%; } }
    #main-wpcontent .wpcf7-form table tr th p {
      font-weight: 700; }
    #main-wpcontent .wpcf7-form table tr th label {
      white-space: normal; }
#main-wpcontent .wpcf7-form label {
  margin: 0 5px 0 0;
  text-align: justify;
  text-justify: inter-ideograph; }
#main-wpcontent .wpcf7-form em {
  color: #c00;
  font-weight: 700;
  font-style: normal; }
#main-wpcontent .wpcf7-form input[type="text"],
#main-wpcontent .wpcf7-form input[type="email"],
#main-wpcontent .wpcf7-form input[type="tel"],
#main-wpcontent .wpcf7-form textarea {
  padding: 5px;
  background-color: #FFF;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  box-sizing: border-box;
  width: 100%;
  border: 1px solid #767676;
  border-radius: 3px; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form input[type="text"],
    #main-wpcontent .wpcf7-form input[type="email"],
    #main-wpcontent .wpcf7-form input[type="tel"],
    #main-wpcontent .wpcf7-form textarea {
      font-size: 4.267vw;
      padding: 3.733vw 4vw; } }
#main-wpcontent .wpcf7-form textarea {
  line-height: 1.75;
  height: 250px; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form textarea {
      height: 133.333vw; } }
#main-wpcontent .wpcf7-form input[type="checkbox"] + .wpcf7-list-item-label {
  position: relative;
  margin: 0;
  padding: 0 0 0 1.5em; }
  #main-wpcontent .wpcf7-form input[type="checkbox"] + .wpcf7-list-item-label:hover {
    cursor: pointer; }
  #main-wpcontent .wpcf7-form input[type="checkbox"] + .wpcf7-list-item-label::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    border: 1px solid #000000;
    width: 1.1em;
    height: 1.1em;
    box-sizing: border-box; }
#main-wpcontent .wpcf7-form input[type="checkbox"]:focus + .wpcf7-list-item-label::before {
  box-shadow: 0 0 3px 1px inset #F2F2F2; }
#main-wpcontent .wpcf7-form input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  line-height: 1;
  box-sizing: border-box;
  width: 1.25em;
  height: 0.75em;
  border-left: 3px solid #003F98;
  border-bottom: 3px solid #003F98;
  -webkit-transform: translate(0, -0.2em) rotate(-45deg);
  transform: translate(0, -0.2em) rotate(-45deg); }
#main-wpcontent .wpcf7-form input[type="radio"] {
  -webkit-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit; }
  #main-wpcontent .wpcf7-form input[type="radio"] ~ .wpcf7-list-item-label {
    position: relative;
    margin: 0;
    padding: 0 0 0 1.5em; }
    #main-wpcontent .wpcf7-form input[type="radio"] ~ .wpcf7-list-item-label:hover {
      cursor: pointer; }
    #main-wpcontent .wpcf7-form input[type="radio"] ~ .wpcf7-list-item-label::before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      margin: auto;
      border: 1px solid #767676;
      background-color: #FFF;
      width: 1.1em;
      height: 1.1em;
      border-radius: 50%;
      box-sizing: border-box; }
  #main-wpcontent .wpcf7-form input[type="radio"]:checked ~ .wpcf7-list-item-label::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0.2em;
    margin: auto;
    border: 1px solid #003F98;
    background-color: #003F98;
    width: 0.7em;
    height: 0.7em;
    border-radius: 50%;
    box-sizing: border-box; }
#main-wpcontent .wpcf7-form .wpcf7-list-item {
  margin: 0; }
#main-wpcontent .wpcf7-form input[type="submit"] {
  line-height: 1.4;
  color: #000000;
  background-color: #F2F2F2;
  border: 1px solid #000000;
  border-radius: 3px;
  display: inline-block;
  padding: 4px 3px;
  transition: all 300ms ease-in-out; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form input[type="submit"] {
      font-size: 3.733vw;
      padding: 2.667vw;
      min-width: inherit; } }
  #main-wpcontent .wpcf7-form input[type="submit"]:hover {
    background-color: #DFDFDF; }
  #main-wpcontent .wpcf7-form input[type="submit"]:disabled {
    color: #767676;
    border-color: #F2F2F2;
    border: 1px solid #767676;
    opacity: 0.5; }
#main-wpcontent .wpcf7-form .wpcf7-spinner {
  display: none; }
#main-wpcontent .wpcf7-form input[type="text"].contactform-family {
  width: 80px;
  margin-right: 1em; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form input[type="text"].contactform-family {
      width: 21.333vw; } }
#main-wpcontent .wpcf7-form span.contactform-unit {
  vertical-align: bottom; }

.name-contents {
  display: flex;
  gap: 10px; }
  @media screen and (max-width: 1080px) {
    .name-contents {
      flex-direction: column; } }
  @media screen and (max-width: 600px) {
    .name-contents {
      gap: 2.667vw 0; } }
  .name-contents div p {
    display: flex;
    align-content: center;
    align-items: center; }
    .name-contents div p label {
      flex: 0 1 35px; }
      @media screen and (max-width: 600px) {
        .name-contents div p label {
          flex: 0 0 10.667vw; } }
    .name-contents div p span {
      flex: 0 1 240px; }
      @media screen and (max-width: 600px) {
        .name-contents div p span {
          flex: auto; } }

.address-contents div p {
  display: block;
  text-align: left; }
.address-contents div.address-num p {
  display: flex;
  align-content: center;
  align-items: center;
  gap: 0 5px; }
  @media screen and (max-width: 600px) {
    .address-contents div.address-num p {
      gap: 0 1.333vw;
      flex-wrap: wrap; } }
  .address-contents div.address-num p span {
    flex: 0 0 90px; }
    @media screen and (max-width: 600px) {
      .address-contents div.address-num p span {
        flex: 0 0 32vw; } }
  .address-contents div.address-num p span.contact-example {
    flex: 0 0 auto;
    color: #CCC; }
    @media screen and (max-width: 600px) {
      .address-contents div.address-num p span.contact-example {
        flex: 0 0 100%; } }

.tel-contents p, .fax-contents p {
  display: flex;
  align-content: center;
  align-items: center;
  gap: 0 5px; }
  .tel-contents p span, .fax-contents p span {
    flex: 0 1 150px; }

.contactform-submit__outer {
  text-align: center;
  margin: 100px 0 0; }
  @media screen and (max-width: 600px) {
    .contactform-submit__outer {
      margin-top: 26.667vw; } }
  .contactform-submit__outer p {
    text-align: center;
    justify-content: center; }

.privacy-link p {
  text-align: center; }
  .privacy-link p a {
    color: #000000; }
    .privacy-link p a:hover {
      color: #1558D6; }

.contact-submit {
  margin: 50px auto; }
  @media screen and (max-width: 600px) {
    .contact-submit {
      margin: 13.333vw 0; } }
  .contact-submit--checkbox {
    margin: 0 auto 20px; }
    @media screen and (max-width: 600px) {
      .contact-submit--checkbox {
        margin-bottom: 2.667vw; } }
  .contact-submit p {
    text-align: center; }

#main-wpcontent .wpcf7-form .dPrivacy {
  margin: 40px 0;
  width: 100%;
  height: 300px;
  padding: 30px;
  background-color: #FFF;
  box-sizing: border-box;
  overflow: hidden;
  overflow-y: scroll;
  overflow-x: hidden;
  border: 1px solid #00ABEB; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form .dPrivacy {
      margin: 6vw 0;
      height: 80vw;
      padding: 8vw; } }
  #main-wpcontent .wpcf7-form .dPrivacy::-webkit-scrollbar {
    width: 3px; }
  #main-wpcontent .wpcf7-form .dPrivacy::-webkit-scrollbar-track {
    background: #FFF;
    border-radius: 1px; }
  #main-wpcontent .wpcf7-form .dPrivacy::-webkit-scrollbar-thumb {
    background: #00ABEB;
    border-radius: 1px; }
  #main-wpcontent .wpcf7-form .dPrivacy li::before {
    content: none; }
  #main-wpcontent .wpcf7-form .dPrivacy > p {
    margin-bottom: 1.75em; }

/*==============================================
◆70：WordPress専用
==============================================*/
:root {
  --anchor-offset: 202px;
  /* PC */ }

@media screen and (max-width: 1080px) {
  :root {
    --anchor-offset: 120px;
    /* タブレット */ } }
@media screen and (max-width: 600px) {
  :root {
    --anchor-offset: 29.333vw;
    /* スマホ */ } }
.main-wpcontent {
  text-align: justify;
  font-size: 16px;
  line-height: 1.5;
  max-width: 1000px;
  padding: 0; }
  @media screen and (max-width: 600px) {
    .main-wpcontent {
      font-size: 4.267vw; } }
  .main-wpcontent section {
    scroll-margin-top: var(--anchor-offset); }
  .main-wpcontent p {
    margin: 0 0 24px; }
    @media screen and (max-width: 600px) {
      .main-wpcontent p {
        margin-bottom: 6.4vw; } }

/* WP5以降 用 */
/* wp-includes/css/dlist/block-library/style.css 参照 変更の部分だけ抜き出し。 */
.alignleft {
  float: left;
  max-width: 100%;
  margin-right: 40px;
  margin-bottom: 1em; }
  @media screen and (max-width: 600px) {
    .alignleft {
      float: none;
      margin-right: 0; } }

.alignright {
  float: right;
  max-width: 100%;
  margin-left: 40px;
  margin-bottom: 1em; }
  @media screen and (max-width: 600px) {
    .alignright {
      float: none;
      margin-left: 0; } }

.aligncenter {
  display: block;
  max-width: 100%; }
  .aligncenter margin {
    left: auto;
    right: auto;
    bottom: 1em; }
  @media screen and (max-width: 600px) {
    .aligncenter {
      display: block;
      max-width: 100%; }
      .aligncenter margin {
        left: auto;
        right: auto;
        bottom: 1em; } }

.alignnone {
  max-width: 100%;
  height: auto;
  margin: 0 40px 1em 0; }
  @media screen and (max-width: 600px) {
    .alignnone {
      max-width: 100%;
      height: auto;
      margin: 0 auto 1em; } }

embed,
iframe,
object,
video {
  max-width: 100%; }

.is-type-video .wp-block-embed__wrapper {
  position: relative;
  width: 100%;
  padding-top: 56.25%; }

.is-type-video .wp-block-embed__wrapper iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%; }

.wp-block-heading + .wp-block-heading, .wp-block-heading + .wp-block-media-text, .wp-block-heading + .wp-block-columns, .wp-block-heading + .wp-block-column, .wp-block-columns .wp-block-heading, .wp-block-column .wp-block-heading, .alignright + .wp-block-heading, .alignleft + .wp-block-heading, .wp-block-heading + table {
  margin-top: 0; }

.has-small-font-size {
  font-size: 12px !important; }
  @media screen and (max-width: 600px) {
    .has-small-font-size {
      font-size: 3.2vw !important; } }

.has-medium-font-size {
  font-size: 16px !important; }
  @media screen and (max-width: 600px) {
    .has-medium-font-size {
      font-size: 4.8vw !important; } }

.has-large-font-size {
  font-size: 18px !important; }
  @media screen and (max-width: 600px) {
    .has-large-font-size {
      font-size: 4.8vw !important; } }

.has-x-large-font-size {
  font-size: 20px !important; }
  @media screen and (max-width: 600px) {
    .has-x-large-font-size {
      font-size: 5.333vw !important; } }

.has-xx-large-font-size {
  font-size: 24px !important; }
  @media screen and (max-width: 600px) {
    .has-xx-large-font-size {
      font-size: 6.4vw !important; } }

.wp-block-media-text {
  margin: 40px 0; }
  @media screen and (max-width: 600px) {
    .wp-block-media-text {
      margin: 6vw 0; } }
  @media screen and (max-width: 600px) {
    .wp-block-media-text__content {
      margin: 2.667vw 0 0; } }

.wp-block-image {
  margin-top: 20px;
  margin-bottom: 20px; }
  @media screen and (max-width: 600px) {
    .wp-block-image {
      margin-top: 3vw;
      margin-bottom: 3vw; } }
  .wp-block-image.alignright, .wp-block-image.alignleft {
    margin-top: 0; }
  .wp-block-image img {
    height: auto; }
  .wp-block-image.radius-none img {
    border-radius: 0; }
  .wp-block-image figcaption {
    font-size: 12px;
    margin-top: 3px;
    text-align: center; }
    @media screen and (max-width: 600px) {
      .wp-block-image figcaption {
        margin-top: 1.333vw;
        font-size: 2.667vw; } }
  .wp-block-group .wp-block-image:first-child {
    margin-top: 0; }
  .wp-block-group .wp-block-image:last-child {
    margin-bottom: 0; }

.wp-block-gallery {
  font-size: 80px; }
  @media screen and (max-width: 600px) {
    .wp-block-gallery {
      font-size: 13.333vw; } }
  .wp-block-gallery .blocks-gallery-image figcaption,
  .wp-block-gallery .blocks-gallery-item figcaption {
    box-sizing: border-box; }
  .wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
    background: linear-gradient(to bottom, transparent 0%, #8AD8F5 60%, #00ABEB 100%); }

.wp-block-quote cite {
  font-size: 14px; }
.wp-block-quote.is-style-plain {
  border: none;
  background-color: #00ABEB; }

.wp-block-pullquote {
  border: 1px solid #000000;
  background-color: #FFF;
  font-size: 1em;
  -webkit-border-radius: 15px;
  border-radius: 15px;
  margin-top: 40px;
  margin-bottom: 40px;
  padding: 25px; }
  @media screen and (max-width: 600px) {
    .wp-block-pullquote {
      margin-top: 3vw;
      margin-bottom: 3vw;
      padding: 3.2vw 4vw;
      -webkit-border-radius: 4vw;
      border-radius: 4vw; } }
  .wp-block-pullquote blockquote {
    border: none;
    background: none;
    margin: 0;
    padding: 0;
    border-radius: 0; }
    .wp-block-pullquote blockquote p {
      font-size: inherit; }
    .wp-block-pullquote blockquote cite {
      font-size: 14px; }

.main-wpcontent .wp-block-footnotes {
  border: 2px solid #00ABEB;
  padding: 20px 30px;
  border-radius: 30px;
  background-color: #FFF; }
  @media screen and (max-width: 600px) {
    .main-wpcontent .wp-block-footnotes {
      border-width: 0.8vw;
      padding: 2.667vw 4vw;
      border-radius: 4vw; } }

.wp-block-code {
  font-size: 14px;
  position: relative;
  display: block;
  overflow: auto;
  padding: 30px;
  white-space: pre;
  min-width: 100%;
  overflow-x: auto;
  background-color: #FFF;
  box-sizing: border-box;
  -webkit-overflow-scrolling: touch;
  border: 1px solid #00ABEB; }
  @media screen and (max-width: 600px) {
    .wp-block-code {
      font-size: 3.2vw;
      padding: 4vw; } }
  .wp-block-code::-webkit-scrollbar {
    width: 4px;
    height: 4px; }
  .wp-block-code::-webkit-scrollbar-track {
    background: #DCE4EF;
    border-radius: 2px; }
  .wp-block-code::-webkit-scrollbar-thumb {
    background: #00ABEB;
    border-radius: 2px; }
  .wp-block-code code {
    display: inline-block;
    text-wrap: nowrap;
    word-break: break-all; }

.wp-block-video figcaption {
  text-align: center; }

.main-wpcontent .wp-block-separator:not(.is-style-wide, .is-style-dots) {
  width: 100px;
  margin-left: auto;
  margin-right: auto; }

.wp-block-columns {
  margin-top: 40px;
  margin-bottom: 50px; }
  @media screen and (max-width: 600px) {
    .wp-block-columns {
      margin-top: 6vw;
      margin-bottom: 6vw; } }
  .wp-block-columns:first-child {
    margin-top: 0; }
  .wp-block-columns:last-child {
    margin-bottom: 0; }

:where(.wp-block-columns.is-layout-flex) {
  gap: 30.0075018755px; }
  @media screen and (max-width: 600px) {
    :where(.wp-block-columns.is-layout-flex) {
      gap: 6vw; } }

.wp-block-column {
  box-sizing: border-box; }
  @media screen and (max-width: 600px) {
    .wp-block-column {
      margin-bottom: 6vw; } }
  .wp-block-column > :first-child {
    margin-top: 0; }
  .wp-block-column > :last-child {
    margin-bottom: 0; }

.wp-block-group.has-background {
  padding: 2em 1em;
  margin-bottom: 24px; }
  @media screen and (max-width: 600px) {
    .wp-block-group.has-background {
      margin-bottom: 6.4vw; } }
  .wp-block-group.has-background > :first-child {
    margin-top: 0; }
  .wp-block-group.has-background > :last-child {
    margin-bottom: 0; }

.wp-block-table {
  margin-bottom: 40px; }
  @media screen and (max-width: 600px) {
    .wp-block-table {
      margin-bottom: 6vw; } }
  .wp-block-table table {
    border-top: 1px solid #DFDFDF;
    width: auto; }
  .wp-block-table thead {
    border-bottom: 1px solid #DFDFDF; }
  .wp-block-table th, .wp-block-table td {
    border: 1px solid #DFDFDF;
    padding: 20px; }
    @media screen and (max-width: 600px) {
      .wp-block-table th, .wp-block-table td {
        padding: 2.667vw; } }
  .wp-block-table th {
    border-right: none;
    background-color: #F2F2F2;
    color: #000000;
    font-weight: 700; }
  .wp-block-table td {
    color: #000000; }
  .wp-block-table th + th,
  .wp-block-table th + td,
  .wp-block-table td + td {
    border-left: 1px solid #DFDFDF; }
  .wp-block-table.is-style-stripes {
    border-bottom: none; }
    .wp-block-table.is-style-stripes table {
      width: auto; }
    .wp-block-table.is-style-stripes th, .wp-block-table.is-style-stripes td {
      border: 1px solid #DFDFDF; }
    .wp-block-table.is-style-stripes td {
      background-color: transparent; }
    .wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
      background-color: #f8f8f8; }
    .wp-block-table.is-style-stripes tbody tr:nth-child(even) {
      background-color: #FFF; }
    .wp-block-table.is-style-stripes th + th,
    .wp-block-table.is-style-stripes th + td,
    .wp-block-table.is-style-stripes td + td {
      border-left: 1px solid #DFDFDF; }
  .wp-block-table figcaption {
    font-size: 12px;
    margin-top: 3px;
    text-align: center; }
    @media screen and (max-width: 600px) {
      .wp-block-table figcaption {
        font-size: 3.733vw;
        margin-top: 1.333vw; } }

@media screen and (max-width: 600px) {
  .wp-block-audio audio {
    min-width: inherit; } }

.has-drop-cap::after {
  content: "";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0; }
.has-drop-cap:not(:focus):first-letter {
  float: left;
  font-size: 4em;
  line-height: .68;
  font-weight: 100;
  margin: 0 .1em 0 0;
  text-transform: uppercase;
  font-style: normal; }

.wp-block-buttons {
  margin-top: 40px;
  margin-bottom: 20px; }
  .wp-block-buttons:where(.is-layout-flex) {
    gap: 22px; }
  @media screen and (max-width: 600px) {
    .wp-block-buttons {
      gap: 5.867vw;
      margin-top: 3vw;
      margin-bottom: 3vw; } }

.wp-block-button__link {
  position: relative;
  font-size: 16px;
  font-weight: 700;
  line-height: 3;
  color: #FFF;
  background-color: #00ABEB;
  border: 1px solid #00ABEB;
  display: flex;
  justify-content: center;
  align-content: center;
  align-items: center;
  gap: 12px;
  padding: 0 30px;
  box-sizing: border-box;
  border-radius: 0; }
  @media screen and (max-width: 600px) {
    .wp-block-button__link {
      line-height: 1.5;
      font-size: 3.733vw;
      padding: 2.667vw 12vw;
      min-width: inherit;
      gap: 2.667vw; } }
  .main-wpcontent .wp-block-button__link {
    text-decoration: none; }
  .wp-block-button .wp-block-button__link:hover {
    opacity: 0.8; }
  .wp-block-button__link::after {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    background: url("image/share/icon-button-arrow-white.svg") no-repeat center center;
    background-size: contain; }

.wp-block-buttons .is-style-outline > .wp-block-button__link {
  padding: 0 30px;
  background-color: #FFF;
  border: 2px solid #00ABEB; }
  @media screen and (max-width: 600px) {
    .wp-block-buttons .is-style-outline > .wp-block-button__link {
      line-height: 1.5;
      font-size: 3.733vw;
      padding: 2.667vw 12vw;
      min-width: inherit;
      gap: 2.667vw; } }
  .wp-block-buttons .is-style-outline > .wp-block-button__link:not(.has-text-color) {
    color: #00ABEB; }
  .wp-block-buttons .is-style-outline > .wp-block-button__link::after {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    background: url("image/share/icon-button-arrow-blue.svg") no-repeat center center;
    background-size: contain; }
    @media screen and (max-width: 600px) {
      .wp-block-buttons .is-style-outline > .wp-block-button__link::after {
        width: 3.2vw;
        height: 3.2vw; } }

.wp-block-cover,
.wp-block-cover-image {
  box-sizing: border-box; }

.wp-block-cover__inner-container p:not(.has-text-color) {
  color: #FFF; }

ul.wp-block-social-links li {
  margin: 0;
  padding: 0; }
  ul.wp-block-social-links li::before {
    display: none; }

.wp-block-file:not(.wp-element-button) {
  font-size: 1em; }
.wp-block-file .wp-block-file__button {
  background-color: #00ABEB;
  font-size: 14px;
  font-weight: 400;
  line-height: 2;
  color: #FFF;
  text-decoration: none;
  border-radius: 20px;
  padding: 5px 30px;
  box-sizing: border-box; }
@inclue mq('sm') {
  .wp-block-file .wp-block-file__button {
    font-size: 3.733vw;
    padding: 1.333vw 13.333vw; } }
.wp-block-preformatted {
  max-width: 100%;
  overflow-x: scroll; }
  .wp-block-preformatted::-webkit-scrollbar {
    width: 4px;
    height: 4px; }
  .wp-block-preformatted::-webkit-scrollbar-track {
    background: #DCE4EF;
    border-radius: 2px; }
  .wp-block-preformatted::-webkit-scrollbar-thumb {
    background: #00ABEB;
    border-radius: 2px; }

.wp_pagenavi_out {
  margin: 60px 0 0;
  text-align: center; }
  @media screen and (max-width: 600px) {
    .wp_pagenavi_out {
      margin-top: 10.667vw; } }

.wp-pagenavi {
  display: flex;
  gap: 15px;
  justify-content: center;
  align-items: center; }
  @media screen and (max-width: 600px) {
    .wp-pagenavi {
      gap: 4vw; } }
  .wp-pagenavi a,
  .wp-pagenavi span {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    text-decoration: none;
    text-align: center;
    color: #000000;
    background-color: #FFF;
    height: 40px;
    flex: 0 0 40px;
    padding: 0;
    border: 1px solid #00ABEB; }
    @media screen and (max-width: 600px) {
      .wp-pagenavi a,
      .wp-pagenavi span {
        font-size: 4.267vw;
        line-height: 8vw;
        height: 8vw;
        flex: 0 0 8vw;
        margin: 0 0.533vw; } }
  .wp-pagenavi a:hover {
    border: none;
    background-color: #00ABEB;
    color: #FFF; }
  .wp-pagenavi .current {
    border: none;
    background-color: #00ABEB;
    color: #FFF; }
  .wp-pagenavi .previouspostslink {
    position: relative; }
    .wp-pagenavi .previouspostslink a {
      font-size: 0; }
    .wp-pagenavi .previouspostslink::before {
      content: "";
      display: inline-block;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 21px;
      height: 21px;
      background: url("image/share/icon-pagination-arrow-prev.svg") no-repeat center center;
      background-size: contain; }
    .wp-pagenavi .previouspostslink:hover::before {
      filter: brightness(0) invert(1); }
  .wp-pagenavi .nextpostslink {
    position: relative; }
    .wp-pagenavi .nextpostslink a {
      font-size: 0; }
    .wp-pagenavi .nextpostslink::before {
      content: "";
      display: inline-block;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 21px;
      height: 21px;
      background: url("image/share/icon-pagination-arrow-next.svg") no-repeat center center;
      background-size: contain; }
    .wp-pagenavi .nextpostslink:hover::before {
      filter: brightness(0) invert(1); }

@media screen and (max-width: 600px) {
  .fb_iframe_widget > span {
    max-width: 100%; } }

@media screen and (max-width: 600px) {
  iframe.instagram-media {
    min-width: inherit !important; } }

.grecaptcha-badge {
  z-index: 1050; }

/* CSS Document */
/*==============================================
◆90：プリント用
==============================================*/
@media print {
  @page {
    margin: 12.7mm 9.7mm;
    page-break-before: always; }
  body {
    background-image: none;
    max-width: 1200px;
    -webkit-print-color-adjust: exact; }

  #header, footer {
    position: relative; }

  #mobile, #sidr {
    display: none; }

  a:link:after,
  a:visited:after {
    /*
    content: " (" attr(href) ") ";
    font-size: 90%;
    */ }

  #back-to-top,
  #side-menu,
  #sidr {
    display: none; }

  #map-root img,
  #map_canvas img {
    max-width: none !important;
    zoom: 1; }

  #section-map {
    page-break-before: always; }

  #map-root {
    display: inline-block;
    width: 100%; }

  .map-section {
    page-break-after: always; }

  #mainScroll,
  #top-slide {
    margin-top: 0; }

  @supports (-ms-ime-align: auto) {
    /*
        .h1-area .h1-area-inner {
          width: 100%;
          padding: 1.5em;
          flex-direction: column-reverse;
        }
        .h1-area .h1-area-inner > .h1-img-area {
          flex: 0 0 auto;
          width: 100%;
          margin-right: 0;
          max-width: inherit;
        }
        .h1-area .h1-area-inner > .h1-text-area {
          flex: 0 0 auto;
          width: 100%;
          margin-bottom: 0;
          padding: 2em;
          max-width: inherit;
        }
        .h1-area .h1-area-inner > .h1-img-area img {
          width: 100%;
          height: auto;
        }
        .main-wpcontent .wp-block-button__link {
          color: $c_off_black;
    //      border: 1px solid $c_tertiary;
        }
        #nav-global li.nav-global-recruit a {
          background: none;
          display: inline;
          padding: inherit;
          color: $c_off_black;
        }
        #top #main-area section .top-type1 .top-type1-img {
          flex: 0 0 68%;
          max-width: 68%;
        }
    */ } }
