@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
/*!
Theme Name: theme name
Theme URI: http://underscores.me/
Author: Me
Author URI: http://underscores.me/
Description: Custom theme: miyamoto, developed by Me
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: miyamoto
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

miyamoto is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. すべてのブラウザで行の高さを正しく設定します。
 * 2. iOSでの画面の向き変更後のフォントサイズの調整を防ぎます。
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * すべてのブラウザでマージンを削除します。
 */
body {
  margin: 0;
}

/**
 * IEで`main`要素を一貫してレンダリングします。
 */
main {
  display: block;
}

/**
 * Chrome、Firefox、Safariで`section`や`article`内の`h1`要素のフォントサイズとマージンを修正します。
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Firefoxで正しいボックスサイズを適用します。
 * 2. EdgeとIEでオーバーフローを表示します。
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. すべてのブラウザでフォントサイズの継承とスケーリングを修正します。
 * 2. すべてのブラウザで奇妙な`em`フォントサイズを修正します。
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * IE 10でアクティブリンクの灰色背景を削除します。
 */
a {
  background-color: transparent;
}

/**
 * 1. Chrome 57以前のバージョンで下線を削除します。
 * 2. Chrome、Edge、IE、Opera、Safariで正しいテキスト装飾を追加します。
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted; /* 2 */
}

/**
 * Chrome、Edge、Safariで正しいフォントウェイトを追加します。
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. すべてのブラウザでフォントサイズの継承とスケーリングを修正します。
 * 2. すべてのブラウザで奇妙な`em`フォントサイズを修正します。
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * すべてのブラウザで正しいフォントサイズを追加します。
 */
small {
  font-size: 80%;
}

/**
 * すべてのブラウザで`sub`および`sup`要素が行の高さに影響を与えないようにします。
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * IE 10でリンク内の画像のボーダーを削除します。
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. すべてのブラウザでフォントスタイルを変更します。
 * 2. FirefoxとSafariでマージンを削除します。
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * IEでオーバーフローを表示します。
 * 1. Edgeでオーバーフローを表示します。
 */
button,
input { /* 1 */
  overflow: visible;
}

/**
 * Edge、Firefox、IEでのテキスト変換の継承を削除します。
 * 1. Firefoxでのテキスト変換の継承を削除します。
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * iOSおよびSafariでクリック可能なタイプをスタイルできない問題を修正します。
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Firefoxでの内部ボーダーとパディングを削除します。
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * 前のルールで解除されたフォーカススタイルを復元します。
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Firefoxでのパディングを修正します。
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. EdgeとIEでテキストの折り返しを修正します。
 * 2. IEで`fieldset`要素からの色の継承を修正します。
 * 3. 開発者がすべてのブラウザで`fieldset`要素をゼロにした場合に問題が発生しないように、パディングを削除します。
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Chrome、Firefox、Operaで正しい垂直方向の位置合わせを追加します。
 */
progress {
  vertical-align: baseline;
}

/**
 * IE 10+でのデフォルトの垂直スクロールバーを削除します。
 */
textarea {
  overflow: auto;
}

/**
 * 1. IE 10で正しいボックスサイズを追加します。
 * 2. IE 10でパディングを削除します。
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Chromeでのインクリメントとデクリメントボタンのカーソルスタイルを修正します。
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. ChromeおよびSafariでの奇妙な外観を修正します。
 * 2. Safariでのアウトラインスタイルを修正します。
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * macOSのChromeおよびSafariでの内部パディングを削除します。
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. iOSおよびSafariでクリック可能なタイプをスタイルできない問題を修正します。
 * 2. Safariでフォントプロパティを`inherit`に変更します。
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Edge、IE 10+、Firefoxで正しい表示を追加します。
 */
details {
  display: block;
}

/*
 * すべてのブラウザで正しい表示を追加します。
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * IE 10+で正しい表示を追加します。
 */
template {
  display: none;
}

/**
 * IE 10で正しい表示を追加します。
 */
[hidden] {
  display: none;
}

hr {
  border: 0;
}

p {
  margin-top: 0;
}

*, *::before, *::after {
  box-sizing: border-box;
}

ul, ol {
  list-style: none;
  padding-left: 0;
  margin: 0;
}
ul li, ol li {
  margin-bottom: 0;
}

img {
  display: block;
}

figure {
  margin: 0;
}

.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

#content[tabindex="-1"]:focus {
  outline: 0;
}

a {
  text-decoration: none;
  color: #1A1A1A;
}
a:visited {
  color: #1A1A1A;
}
a:hover {
  color: #1A1A1A;
}
a:active {
  color: #1A1A1A;
}
a:hover {
  opacity: 0.7;
}

.site-main p a {
  text-decoration: underline;
  text-underline-offset: 0.1em;
}

html, body {
  font-size: 16px;
  line-height: 1.65;
  color: #1A1A1A;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", Meiryo, "MS PGothic", sans-serif;
  letter-spacing: 1px;
}
@media screen and (max-width: 480px) {
  body {
    letter-spacing: 0.5px;
  }
}

h1, h2, h3, h4, h5, h6, dt {
  font-family: "Noto Sans JP", BlinkMacSystemFont, "Hiragino Sans", Meiryo, "MS PGothic", sans-serif;
  font-weight: 700;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 1em;
}

h1:has(wbr), h2:has(wbr), h3:has(wbr), h4:has(wbr), h5:has(wbr), h6:has(wbr), dt:has(wbr), a:has(wbr) {
  word-break: keep-all;
  overflow-wrap: anywhere;
}

span.ib {
  display: inline-block;
}

.width-wrap {
  max-width: 1360px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1400px) {
  .width-wrap {
    margin-left: 20px;
    margin-right: 20px;
  }
}
@media screen and (max-width: 807px) {
  .width-wrap {
    margin-left: calc(50vw - 383.5px);
    margin-right: calc(50vw - 383.5px);
  }
}
@media screen and (max-width: 797px) {
  .width-wrap {
    margin-left: 15px;
    margin-right: 15px;
  }
}

body .site {
  min-height: 100dvh;
}
body .site .site-footer {
  position: sticky;
  top: 100%;
}

.more-link-box {
  margin-top: 110px;
  display: flex;
  margin-inline: auto;
  max-width: 1050px;
  column-gap: 6%;
}
.more-link-box > a {
  font-family: "Noto Sans JP", "Helvetica Neue", Helvetica, "Hiragino Sans", "BIZ UDPGothic", Meiryo, "MS PGothic", sans-serif;
  font-weight: 500;
  flex: 1;
  background-color: #0D2B52;
  color: white;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-block: 30px 30px;
  padding-inline: 4%;
  border-radius: 10px;
  font-size: 27px;
  line-height: 1.35;
}
.more-link-box > a:visited {
  color: white;
}
.more-link-box > a:hover {
  color: white;
}
.more-link-box > a:active {
  color: white;
}
.more-link-box > a .arrow {
  border: 2.5px solid white;
  border-radius: 100vmax;
  width: 39px;
  height: auto;
  aspect-ratio: 1;
  display: grid;
  place-content: center;
}
.more-link-box > a .arrow svg {
  fill: white;
  translate: 2.5px 0;
}
.more-link-box > a.network {
  font-size: 20px;
}

.site-header {
  padding-block: 25px;
}
.site-header .width-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.site-header .width-wrap .site-branding {
  font-family: "Noto Sans JP", BlinkMacSystemFont, "Hiragino Sans", Meiryo, "MS PGothic", sans-serif;
  font-weight: 700;
}
.site-header .width-wrap .site-branding .site-title {
  margin: 0;
  color: #0D2B52;
}
.site-header .width-wrap .site-branding .site-title a {
  color: #0D2B52;
  display: flex;
  align-items: center;
  column-gap: 6px;
  font-size: 23px;
}
.site-header .width-wrap .site-branding .site-title a:visited {
  color: #0D2B52;
}
.site-header .width-wrap .site-branding .site-title a:hover {
  color: #0D2B52;
}
.site-header .width-wrap .site-branding .site-title a:active {
  color: #0D2B52;
}
.site-header .width-wrap .site-branding .site-title a .logo-mark {
  color: #0D2B52;
  position: relative;
  font-family: "Noto Sans JP", BlinkMacSystemFont, "Hiragino Sans", Meiryo, "MS PGothic", sans-serif;
  font-weight: 700;
  display: flex;
  width: max-content;
  align-items: center;
  letter-spacing: 0px;
  font-size: 20px;
  line-height: 32px;
}
.site-header .width-wrap .site-branding .site-title a .logo-mark strong {
  font-size: 30px;
  font-family: "Noto Sans JP", BlinkMacSystemFont, "Hiragino Sans", Meiryo, "MS PGothic", sans-serif;
  font-weight: 900;
  padding-right: 1px;
}
.site-header .width-wrap .site-branding .site-title a .logo-mark:before {
  content: "";
  display: block;
  width: 67%;
  height: 100%;
  background-color: #e3e3e3;
  position: absolute;
  bottom: -1px;
  right: 0;
  z-index: -1;
  clip-path: polygon(100% 0, 100% 100%, 0 100%);
}
.site-header .width-wrap .main-navigation {
  flex-basis: max-content;
}
.site-header .width-wrap .main-navigation ul {
  font-family: "Noto Sans JP", "Helvetica Neue", Helvetica, "Hiragino Sans", "BIZ UDPGothic", Meiryo, "MS PGothic", sans-serif;
  font-weight: 500;
  display: flex;
  column-gap: 30px;
  align-items: center;
}
.site-header .width-wrap .main-navigation ul li {
  flex-basis: max-content;
}
.site-header .width-wrap .main-navigation ul li a {
  color: #000;
}
.site-header .width-wrap .main-navigation ul li a:visited {
  color: #000;
}
.site-header .width-wrap .main-navigation ul li a:hover {
  color: #000;
}
.site-header .width-wrap .main-navigation ul li a:active {
  color: #000;
}

body.home .firstview-sect {
  background: url("/images/top-mv-bg.png") no-repeat center center;
  background-size: cover;
  min-height: 666px;
  display: grid;
  align-content: center;
}
body.home .firstview-sect .width-wrap h2 {
  font-family: "Noto Sans JP", BlinkMacSystemFont, "Hiragino Sans", Meiryo, "MS PGothic", sans-serif;
  font-weight: 900;
  font-size: 47px;
  letter-spacing: 2px;
}
body.home .firstview-sect .width-wrap h2:after {
  content: "";
  display: block;
  background-color: #002A75;
  width: 68px;
  height: 5px;
  margin-top: 10px;
  margin-left: 3px;
}
body.home .read-sect {
  background-color: #EDEDED;
  padding-block: 40px 44px;
}
body.home .read-sect p {
  text-align: center;
  font-family: "Noto Sans JP", BlinkMacSystemFont, "Hiragino Sans", Meiryo, "MS PGothic", sans-serif;
  font-weight: 700;
  font-size: 27px;
  line-height: 1.8;
  margin-bottom: 0;
}
body.home .network-sect {
  background-color: #f8f8f8;
  padding-block: 60px 150px;
}
body.home .network-sect hgroup {
  text-align: center;
  margin-bottom: 40px;
}
body.home .network-sect hgroup h2 {
  font-size: 40px;
  margin-bottom: 5px;
  color: #0D2B52;
}
body.home .network-sect hgroup p {
  color: #0D2B52;
}
body.home .network-sect ul {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  column-gap: 3%;
}
body.home .network-sect ul li {
  display: block;
  padding-block: 30px 15px;
  padding-inline: 5px;
  border: 1px solid #c6c6c6;
  border-radius: 5px;
  box-shadow: 0 2.55px 2.55px 0 rgba(153, 153, 153, 0.25);
  background-color: white;
  text-align: center;
  color: #002A75;
}
body.home .network-sect ul li svg {
  fill: #002A75;
}
body.home .network-sect ul li h4 {
  font-size: 21px;
  margin-bottom: 7px;
  margin-top: 9px;
}
body.home .network-sect ul li p {
  font-size: 12px;
  margin-bottom: 0;
  line-height: 1.4;
}
body.home .network-sect ul li:first-child h4 {
  font-size: 18px;
  margin-top: 4px;
}
body.home .network-sect .double-arrow-down {
  fill: #002A75;
  display: block;
  margin-inline: auto;
  margin-block: 45px;
}
body.home .network-sect .suggestion,
body.home .network-sect .customer {
  background-color: #0D2B52;
  margin-inline: auto;
  max-width: 950px;
  padding-inline: 15px;
  padding-block: 60px 70px;
}
body.home .network-sect .suggestion .content-wrap,
body.home .network-sect .customer .content-wrap {
  max-width: 570px;
  margin-inline: auto;
  color: white;
  display: flex;
  column-gap: 5%;
  align-items: center;
  justify-content: center;
}
body.home .network-sect .suggestion .content-wrap .img,
body.home .network-sect .customer .content-wrap .img {
  flex-shrink: 0;
  background-color: white;
  display: grid;
  place-content: center;
  width: 88px;
  height: auto;
  aspect-ratio: 1;
  border-radius: 100vmax;
}
body.home .network-sect .suggestion .content-wrap .img svg,
body.home .network-sect .customer .content-wrap .img svg {
  fill: #0D2B52;
}
body.home .network-sect .suggestion .content-wrap .txt h3,
body.home .network-sect .customer .content-wrap .txt h3 {
  font-size: 37px;
  margin-bottom: 5px;
}
body.home .network-sect .suggestion .content-wrap .txt p,
body.home .network-sect .customer .content-wrap .txt p {
  margin-bottom: 0;
  line-height: 1.5;
}
body.home .network-sect .customer {
  border: 2px solid #0D2B52;
  background-color: white;
}
body.home .network-sect .customer .content-wrap {
  color: #0D2B52;
}
body.home .network-sect .customer .content-wrap .img {
  background-color: #0D2B52;
}
body.home .network-sect .customer .content-wrap .img svg {
  fill: white;
}
body.home .greeting-sect {
  padding-block: 60px;
}
body.home .greeting-sect .width-wrap {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  color: #424242;
}
@media screen and (max-width: 940px) {
  body.home .greeting-sect .width-wrap {
    margin-left: 20px;
    margin-right: 20px;
  }
}
@media screen and (max-width: 807px) {
  body.home .greeting-sect .width-wrap {
    margin-left: calc(50vw - 383.5px);
    margin-right: calc(50vw - 383.5px);
  }
}
@media screen and (max-width: 797px) {
  body.home .greeting-sect .width-wrap {
    margin-left: 15px;
    margin-right: 15px;
  }
}
body.home .greeting-sect .width-wrap h2 {
  margin-bottom: 17px;
}
body.home .greeting-sect .width-wrap p {
  font-size: 17px;
  padding-inline: 2px;
}
body.home .greeting-sect .width-wrap hgroup {
  width: max-content;
  margin-left: auto;
  margin-right: 0;
}
body.home .greeting-sect .width-wrap hgroup h4 {
  font-size: 17px;
  line-height: 1.6;
  font-family: "Noto Sans JP", "Helvetica Neue", Helvetica, "Hiragino Sans", "BIZ UDPGothic", Meiryo, "MS PGothic", sans-serif;
  font-weight: 500;
}

.site-footer {
  background-color: #0D2B52;
  color: rgba(255, 255, 255, 0.96);
}
.site-footer a {
  color: rgba(255, 255, 255, 0.96);
}
.site-footer a:visited {
  color: rgba(255, 255, 255, 0.96);
}
.site-footer a:hover {
  color: rgba(255, 255, 255, 0.96);
}
.site-footer a:active {
  color: rgba(255, 255, 255, 0.96);
}
.site-footer .site-info {
  padding-block: 50px;
  padding-inline: 2%;
  display: flex;
  justify-content: space-between;
}
.site-footer .site-info .add .site-title {
  font-family: "Noto Sans JP", BlinkMacSystemFont, "Hiragino Sans", Meiryo, "MS PGothic", sans-serif;
  font-weight: 700;
  font-size: 23px;
  margin-bottom: 15px;
}
.site-footer .site-info .add .site-title a {
  display: flex;
  align-items: center;
  column-gap: 8px;
}
.site-footer .site-info .add .site-title a .logo-mark {
  color: #0D2B52;
  position: relative;
  font-family: "Noto Sans JP", BlinkMacSystemFont, "Hiragino Sans", Meiryo, "MS PGothic", sans-serif;
  font-weight: 700;
  display: flex;
  width: max-content;
  align-items: center;
  letter-spacing: 0px;
  font-size: 20px;
  line-height: 32px;
  color: white;
}
.site-footer .site-info .add .site-title a .logo-mark strong {
  font-size: 30px;
  font-family: "Noto Sans JP", BlinkMacSystemFont, "Hiragino Sans", Meiryo, "MS PGothic", sans-serif;
  font-weight: 900;
  padding-right: 1px;
}
.site-footer .site-info .add .site-title a .logo-mark:before {
  content: "";
  display: block;
  width: 67%;
  height: 100%;
  background-color: #e3e3e3;
  position: absolute;
  bottom: -1px;
  right: 0;
  z-index: -1;
  clip-path: polygon(100% 0, 100% 100%, 0 100%);
}
.site-footer .site-info .add .site-title a .logo-mark:before {
  background-color: #8a8a8a;
}
.site-footer .site-info .add ul {
  font-size: 14px;
}
.site-footer .site-info .add ul li {
  margin-block: 2px;
}
.site-footer .site-info .sitemap,
.site-footer .site-info .partner {
  padding-block: 5px;
}
.site-footer .site-info .sitemap h5,
.site-footer .site-info .partner h5 {
  font-size: 19px;
  font-family: "Noto Sans JP", "Helvetica Neue", Helvetica, "Hiragino Sans", "BIZ UDPGothic", Meiryo, "MS PGothic", sans-serif;
  font-weight: 500;
  letter-spacing: 2px;
  margin-bottom: 17px;
}
@media screen and (max-width: 480px) {
  .site-footer .site-info .sitemap h5,
  .site-footer .site-info .partner h5 {
    letter-spacing: 0px;
  }
}
.site-footer .site-info .sitemap ul li,
.site-footer .site-info .partner ul li {
  margin-block: 10px;
  font-size: 15px;
}
.site-footer .site-info .sitemap ul li:last-child,
.site-footer .site-info .partner ul li:last-child {
  margin-bottom: 0;
}
.site-footer .site-info .sep {
  border-left: 1px solid rgba(255, 255, 255, 0.6);
  width: 1px;
}
.site-footer .copyright p {
  font-size: 12px;
  text-align: center;
  margin-bottom: 0;
  padding-bottom: 12px;
}

body.network .firstview-sect,
body.item .firstview-sect,
body.corporate .firstview-sect,
body.contact .firstview-sect {
  position: relative;
  background: url("/images/network-MV.jpg") no-repeat center center;
  background-size: cover;
  padding-block: 90px 80px;
  color: white;
}
body.network .firstview-sect:before,
body.item .firstview-sect:before,
body.corporate .firstview-sect:before,
body.contact .firstview-sect:before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  background: rgba(52, 56, 61, 0.55);
  z-index: 0;
}
body.network .firstview-sect hgroup,
body.item .firstview-sect hgroup,
body.corporate .firstview-sect hgroup,
body.contact .firstview-sect hgroup {
  position: relative;
  z-index: 1;
  text-align: center;
  margin-bottom: 30px;
}
body.network .firstview-sect hgroup h1,
body.item .firstview-sect hgroup h1,
body.corporate .firstview-sect hgroup h1,
body.contact .firstview-sect hgroup h1 {
  margin-bottom: 30px;
}
body.network .firstview-sect hgroup:after,
body.item .firstview-sect hgroup:after,
body.corporate .firstview-sect hgroup:after,
body.contact .firstview-sect hgroup:after {
  content: "";
  display: block;
  height: 3px;
  width: 90px;
  background-color: white;
  margin-inline: auto;
}
body.network .firstview-sect p,
body.item .firstview-sect p,
body.corporate .firstview-sect p,
body.contact .firstview-sect p {
  position: relative;
  z-index: 1;
  text-align: center;
  margin-bottom: 0;
}

body.network .world-sect {
  background: url("/images/map.png") no-repeat center center;
  background-size: cover;
  padding-block: 100px;
}
body.network .world-sect .contents {
  display: grid;
  grid-template-columns: repeat(3, auto);
  column-gap: 20px;
  row-gap: 35px;
}
body.network .world-sect .contents .china .content,
body.network .world-sect .contents .jpn .content,
body.network .world-sect .contents .business .content,
body.network .world-sect .contents .vet .content {
  width: fit-content;
  padding-block: 15px 16px;
  padding-inline: 25px 33px;
  background-color: white;
  box-shadow: 0 10px 24px -10px rgba(0, 0, 0, 0.3);
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.3);
  border-top: 4px solid #002A75;
}
body.network .world-sect .contents .china .content h4,
body.network .world-sect .contents .jpn .content h4,
body.network .world-sect .contents .business .content h4,
body.network .world-sect .contents .vet .content h4 {
  font-size: 17px;
  margin-bottom: 10px;
  display: flex;
  column-gap: 8px;
}
body.network .world-sect .contents .china .content h4 svg,
body.network .world-sect .contents .jpn .content h4 svg,
body.network .world-sect .contents .business .content h4 svg,
body.network .world-sect .contents .vet .content h4 svg {
  fill: #002A75;
}
body.network .world-sect .contents .china .content ul,
body.network .world-sect .contents .jpn .content ul,
body.network .world-sect .contents .business .content ul,
body.network .world-sect .contents .vet .content ul {
  margin-left: 27px;
}
body.network .world-sect .contents .china .content ul li,
body.network .world-sect .contents .jpn .content ul li,
body.network .world-sect .contents .business .content ul li,
body.network .world-sect .contents .vet .content ul li {
  margin-block: 6px;
  font-size: 14px;
}
body.network .world-sect .contents .b-com img {
  margin-left: auto;
}
body.network .world-sect .contents .business .content {
  margin-left: auto;
}
body.network .world-sect .contents .business .content ul {
  margin-left: 10px;
}
body.network .world-sect .contents .business .content ul li {
  display: flex;
  column-gap: 10px;
  margin-block: 10px;
}
body.network .world-sect .contents .business .content ul li svg {
  fill: #002A75;
  width: 30px;
}
body.network .world-sect .contents .china .content {
  margin-inline: auto;
}
body.network .world-sect .contents .vet {
  grid-column: 2/4;
}
body.network .world-sect .contents .vet .content {
  margin-left: 15%;
}
body.network .solution-sect {
  background-color: #F1F3F5;
  padding-block: 80px;
}
body.network .solution-sect h2 {
  text-align: center;
  font-size: 30px;
  color: #0D2B52;
  margin-bottom: 90px;
}
body.network .solution-sect ol {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 4%;
  row-gap: 80px;
  counter-reset: num;
}
body.network .solution-sect ol li {
  position: relative;
  display: block;
  background-color: white;
  border-top: 4px solid #002A75;
  padding-block: 25px;
  padding-inline: 30px;
  font-size: 15px;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.3);
}
body.network .solution-sect ol li h3 {
  font-size: 18px;
  font-family: "Noto Sans JP", "Helvetica Neue", Helvetica, "Hiragino Sans", "BIZ UDPGothic", Meiryo, "MS PGothic", sans-serif;
  font-weight: 500;
  text-align: center;
}
body.network .solution-sect ol li:before {
  counter-increment: num;
  content: counter(num, decimal-leading-zero);
  position: absolute;
  top: 0;
  left: 0;
  width: 40px;
  height: 40px;
  background-color: #002A75;
  color: white;
  display: grid;
  place-content: center;
  font-family: "Noto Sans JP", BlinkMacSystemFont, "Hiragino Sans", Meiryo, "MS PGothic", sans-serif;
  font-weight: 700;
  font-size: 17px;
  letter-spacing: 2px;
}
body.network .net-cta-sect {
  padding-block: 100px;
}
body.network .net-cta-sect .more-link-box {
  margin-top: 0;
}

body.item .firstview-sect {
  background: url("/images/item-mv.jpg") no-repeat center center;
}
body.item .item-sect > div {
  padding-block: 80px 120px;
}
body.item .item-sect > div:nth-of-type(even) {
  background-color: #F1F3F5;
}
body.item .item-sect > div hgroup {
  margin-bottom: 2em;
}
body.item .item-sect > div hgroup h2 {
  position: relative;
  color: #0D2B52;
  border-bottom: 4px solid #DADADA;
  padding-bottom: 7px;
  padding-right: 0.5em;
  width: max-content;
}
body.item .item-sect > div hgroup h2:after {
  content: "";
  display: block;
  height: 4px;
  width: 45%;
  background-color: #002A75;
  position: absolute;
  bottom: -4px;
  left: 0;
}
body.item .item-sect > div ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 4%;
}
body.item .item-sect > div ul li {
  text-align: center;
  font-size: 14px;
}
body.item .item-sect > div ul li img {
  width: 100%;
  height: auto;
  margin-bottom: 6px;
}
body.item .item-sect > div.harness ul, body.item .item-sect > div.magnesium ul, body.item .item-sect > div.other ul {
  grid-template-columns: repeat(3, 1fr);
  row-gap: 50px;
}

body.corporate .firstview-sect,
body.contact .firstview-sect {
  background: url("/images/corporate-mv.jpg") no-repeat center center;
}
body.corporate .corporate-sect,
body.corporate .contact-sect,
body.contact .corporate-sect,
body.contact .contact-sect {
  padding-block: 80px;
}
body.corporate .corporate-sect table,
body.corporate .contact-sect table,
body.contact .corporate-sect table,
body.contact .contact-sect table {
  width: 100%;
  margin-bottom: 1.5em;
  border-collapse: collapse;
}
body.corporate .corporate-sect table caption,
body.corporate .contact-sect table caption,
body.contact .corporate-sect table caption,
body.contact .contact-sect table caption {
  margin: 0 0 7px;
  font-size: 0.75em;
  color: #DADADA;
  text-transform: uppercase;
  letter-spacing: 1px;
}
body.corporate .corporate-sect table tr th,
body.corporate .corporate-sect table tr td,
body.corporate .contact-sect table tr th,
body.corporate .contact-sect table tr td,
body.contact .corporate-sect table tr th,
body.contact .corporate-sect table tr td,
body.contact .contact-sect table tr th,
body.contact .contact-sect table tr td {
  border: 1px solid #eaedf2;
  padding: 20px 18px;
}
body.corporate .corporate-sect table tr th,
body.corporate .contact-sect table tr th,
body.contact .corporate-sect table tr th,
body.contact .contact-sect table tr th {
  background-color: #f8f9fa;
  min-width: 6em;
}
body.corporate .corporate-sect table tr td,
body.corporate .contact-sect table tr td,
body.contact .corporate-sect table tr td,
body.contact .contact-sect table tr td {
  background-color: white;
}
body.corporate .corporate-sect table tr td input,
body.corporate .contact-sect table tr td input,
body.contact .corporate-sect table tr td input,
body.contact .contact-sect table tr td input {
  margin: 3px 0;
}
body.corporate .corporate-sect table tr td h5,
body.corporate .contact-sect table tr td h5,
body.contact .corporate-sect table tr td h5,
body.contact .contact-sect table tr td h5 {
  font-size: 0.9em;
}
@media screen and (max-width: 767px) {
  body.corporate .corporate-sect table tr th, body.corporate .corporate-sect table tr td,
  body.corporate .contact-sect table tr th,
  body.corporate .contact-sect table tr td,
  body.contact .corporate-sect table tr th,
  body.contact .corporate-sect table tr td,
  body.contact .contact-sect table tr th,
  body.contact .contact-sect table tr td {
    display: block;
    width: 100%;
    border-bottom: 0 none;
  }
  body.corporate .corporate-sect table tr th,
  body.corporate .contact-sect table tr th,
  body.contact .corporate-sect table tr th,
  body.contact .contact-sect table tr th {
    font-weight: bold;
    text-align: left;
  }
  body.corporate .corporate-sect table tr:last-child td,
  body.corporate .contact-sect table tr:last-child td,
  body.contact .corporate-sect table tr:last-child td,
  body.contact .contact-sect table tr:last-child td {
    border-bottom: 1px solid #eaedf2;
  }
}

body.contact .firstview-sect {
  background: url("/images/corporate-mv.jpg") no-repeat center center;
}
body.contact .step-sect {
  padding-top: 60px;
}
body.contact .step-sect .step-form {
  padding-left: 0;
  list-style: none;
  margin-bottom: 20px;
  display: flex;
}
body.contact .step-sect .step-form li {
  line-height: 1.3;
  font-weight: 600;
  display: block;
  background-color: #DADADA;
  color: #002A75;
  height: 60px;
  padding: 10px 0 0 40px;
}
body.contact .step-sect .step-form li:before {
  content: none;
}
body.contact .step-sect .step-form li span {
  display: block;
  font-size: 14px;
}
body.contact .step-sect .step-form li:nth-child(1) {
  flex-basis: calc(33% + 20px);
  padding-left: 20px;
  clip-path: polygon(0 0, calc(100% - 20px) 0, 100% 50%, calc(100% - 20px) 100%, 0 100%);
}
body.contact .step-sect .step-form li:nth-child(2) {
  flex-basis: calc(33% + 20px);
  margin-left: -20px;
  clip-path: polygon(5px 0, calc(100% - 20px) 0, 100% 50%, calc(100% - 20px) 100%, 5px 100%, 25px 50%);
}
body.contact .step-sect .step-form li:nth-child(3) {
  flex-basis: 34%;
  margin-left: -20px;
  clip-path: polygon(5px 0, 100% 0, 100% 100%, 0 100%, 5px 100%, 25px 50%);
}
body.contact .step-sect .step-form li.current {
  color: white;
  background-color: #002A75;
}
@media screen and (max-width: 590px) {
  body.contact .step-sect .step-form {
    flex-wrap: wrap;
  }
  body.contact .step-sect .step-form li {
    padding-left: 0 !important;
    margin-bottom: 10px;
    height: 59px;
    text-align: center;
  }
  body.contact .step-sect .step-form li:last-child {
    margin-bottom: 0;
  }
  body.contact .step-sect .step-form li:nth-child(1) {
    flex-basis: 100%;
    padding-left: 0;
    height: 79px;
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 20px), calc(50% + 30px) calc(100% - 20px), 50% 100%, calc(50% - 30px) calc(100% - 20px), 0 calc(100% - 20px));
  }
  body.contact .step-sect .step-form li:nth-child(2) {
    flex-basis: 100%;
    padding-left: 0;
    margin-left: 0;
    height: 79px;
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 20px), calc(50% + 30px) calc(100% - 20px), 50% 100%, calc(50% - 30px) calc(100% - 20px), 0 calc(100% - 20px));
  }
  body.contact .step-sect .step-form li:nth-child(3) {
    flex-basis: 100%;
    padding-left: 0;
    margin-left: 0;
    clip-path: none;
  }
}
body.contact .contact-sect .form-message {
  margin-bottom: 24px;
  padding: 18px 22px;
  border-radius: 6px;
  background-color: #f8f9fa;
  border: 1px solid #eaedf2;
}
body.contact .contact-sect .form-message.is-error {
  color: #b3261e;
  background-color: #fff5f5;
  border-color: #f1b8b3;
}
body.contact .contact-sect .form-message.is-success {
  text-align: center;
  padding-block: 45px;
}
body.contact .contact-sect .form-message.is-success h2 {
  color: #002A75;
  margin-bottom: 12px;
}
body.contact .contact-sect .form-message.is-success p {
  margin-bottom: 0;
}
body.contact .contact-sect .contact-form .contact-hp {
  position: absolute;
  left: -10000px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
body.contact .contact-sect .contact-form .require {
  display: inline-block;
  margin-left: 8px;
  padding: 2px 7px;
  border-radius: 3px;
  background-color: #002A75;
  color: white;
  font-size: 12px;
  line-height: 1.4;
  vertical-align: middle;
}
body.contact .contact-sect .contact-form input[type=text],
body.contact .contact-sect .contact-form input[type=email],
body.contact .contact-sect .contact-form input[type=tel],
body.contact .contact-sect .contact-form textarea {
  width: 100%;
  border: 1px solid #ccd3dc;
  border-radius: 4px;
  padding: 12px 14px;
  font: inherit;
  background-color: white;
}
body.contact .contact-sect .contact-form input[type=text]:focus,
body.contact .contact-sect .contact-form input[type=email]:focus,
body.contact .contact-sect .contact-form input[type=tel]:focus,
body.contact .contact-sect .contact-form textarea:focus {
  outline: 2px solid rgba(0, 42, 117, 0.18);
  border-color: #002A75;
}
body.contact .contact-sect .contact-form textarea {
  resize: vertical;
  min-height: 180px;
}
body.contact .contact-sect .contact-form .form-field.has-error input[type=text],
body.contact .contact-sect .contact-form .form-field.has-error input[type=email],
body.contact .contact-sect .contact-form .form-field.has-error input[type=tel],
body.contact .contact-sect .contact-form .form-field.has-error textarea {
  border-color: #b3261e;
  background-color: #fffafa;
}
body.contact .contact-sect .contact-form .field-error {
  margin-top: 7px;
  color: #b3261e;
  font-size: 14px;
  line-height: 1.5;
}
body.contact .contact-sect .contact-form .privacy-box {
  margin-bottom: 15px;
  padding: 18px;
  background-color: #f8f9fa;
  border: 1px solid #eaedf2;
}
body.contact .contact-sect .contact-form .privacy-box h5 {
  margin-bottom: 8px;
  color: #002A75;
}
body.contact .contact-sect .contact-form .privacy-box p {
  margin-bottom: 0;
}
body.contact .contact-sect .contact-form .checkbox-label {
  display: flex;
  align-items: center;
  column-gap: 8px;
  width: fit-content;
  cursor: pointer;
}
body.contact .contact-sect .contact-form .checkbox-label input {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}
body.contact .contact-sect .contact-form .form-actions {
  display: flex;
  justify-content: center;
  column-gap: 18px;
  margin-top: 35px;
}
body.contact .contact-sect .contact-form .form-actions .button {
  font-family: "Noto Sans JP", "Helvetica Neue", Helvetica, "Hiragino Sans", "BIZ UDPGothic", Meiryo, "MS PGothic", sans-serif;
  font-weight: 500;
  min-width: 180px;
  border: 0;
  border-radius: 6px;
  padding: 15px 26px;
  font: inherit;
  cursor: pointer;
}
body.contact .contact-sect .contact-form .form-actions .button.is-primary {
  background-color: #002A75;
  color: white;
}
body.contact .contact-sect .contact-form .form-actions .button.is-secondary {
  background-color: #DADADA;
  color: #002A75;
}
body.contact .contact-sect .contact-form .form-actions .button:hover {
  opacity: 0.75;
}
@media screen and (max-width: 767px) {
  body.contact .contact-sect .contact-form .form-actions {
    flex-direction: column-reverse;
    row-gap: 12px;
  }
  body.contact .contact-sect .contact-form .form-actions .button {
    width: 100%;
  }
}
/*# sourceMappingURL=style.css.map */
