@charset "UTF-8";
/*!
Theme Name: koeiken_recruit_2025
Theme URI:
Author: 
Author URI: 
Description: 岐阜県公衆衛生検査センターリクルートサイト2025年用
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: 10px/1.625 "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;
  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 #192C55;
    outline-offset: -2px;
    color: #D9D9D9;
    box-shadow: 0 0 0 2px #192C55; }
  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 #F2F5F9; }

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

/*--見出し--*/
#main-h1 {
  position: relative;
  width: 100%;
  margin: 0 auto 10px;
  padding: 0;
  box-sizing: border-box;
  background-color: #F2F5F9; }
  @media screen and (max-width: 600px) {
    #main-h1 {
      margin-bottom: 8vw; } }
  #main-h1__inner {
    width: 1200px;
    box-sizing: border-box;
    padding: 0 40px;
    margin: 0 auto; }
    @media screen and (max-width: 1280px) {
      #main-h1__inner {
        padding: 0 40px;
        width: auto; } }
    @media screen and (max-width: 600px) {
      #main-h1__inner {
        height: auto;
        padding: 0 5.333vw; } }
  #main-h1--title {
    font-size: 40px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0;
    text-align: center;
    margin: 0;
    padding: 0;
    color: #192C55;
    min-height: 144px;
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center; }
    @media screen and (max-width: 600px) {
      #main-h1--title {
        font-size: 6.4vw;
        min-height: 32vw;
        padding: 4vw 0; } }

.main-wpcontent h2 {
  position: relative;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  margin: 60px 0 20px;
  padding: 15px 0;
  box-sizing: border-box;
  border-top: 1px solid;
  border-bottom: 1px solid;
  border-color: #CCC;
  color: #00559D;
  overflow: hidden; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h2 {
      font-size: 5.6vw;
      margin-top: 16vw;
      margin-bottom: 6vw;
      padding-bottom: 4vw;
      border-top: 0.267vw solid;
      border-bottom: 0.267vw solid;
      border-color: #CCC; } }
  .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: 28px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  color: #00559D;
  margin: 60px 0 20px;
  padding: 20px;
  background-color: #F2F5F9;
  overflow: hidden; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h3 {
      font-size: 4.8vw;
      margin-top: 16vw;
      margin-bottom: 4vw;
      padding: 2.667vw 5.333vw; } }
  .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: 24px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  color: #00559D;
  margin: 60px 0 20px;
  padding: 0;
  overflow: hidden; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h4 {
      font-size: 4.8vw;
      margin-top: 16vw;
      margin-bottom: 6vw; } }
  .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: 20px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  color: #192C55;
  text-align: justify;
  text-justify: inter-ideograph;
  margin: 60px 0 30px;
  padding: 0; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h5 {
      font-size: 4.8vw;
      margin-top: 16vw;
      margin-bottom: 6vw; } }
  .main-wpcontent h5.has-text-align-left {
    text-align: justify;
    text-justify: inter-ideograph; }
  .main-wpcontent h5.has-text-align-center {
    text-align: center; }
  .main-wpcontent h5.has-text-align-right {
    text-align: right; }

.main-wpcontent h6 {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  margin: 60px 0 30px; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h6 {
      font-size: 4.267vw;
      margin-top: 16vw;
      margin-bottom: 6vw; } }
  .main-wpcontent h6.has-text-align-left {
    text-align: justify;
    text-justify: inter-ideograph; }
  .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: 60px 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: 40px 0;
  padding: 0; }
  @media screen and (max-width: 600px) {
    .main-wpcontent ul, .main-wpcontent ol, .main-wpcontent dl {
      margin: 8vw 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: #192C55; }
  .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: #192C55;
      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: #192C55; }
  .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: #FFF; }
  table caption {
    font-size: 1em;
    line-height: 1.5;
    text-align: left;
    margin-bottom: 5px; }
  table tr {
    position: relative;
    border-bottom: 1px solid #CCC; }
    table tr:last-child {
      border-bottom: none; }
  table th, table td {
    text-align: justify;
    text-justify: inter-ideograph;
    line-height: 1.75;
    letter-spacing: 0;
    vertical-align: top;
    overflow-wrap: break-word;
    padding: 10px;
    box-sizing: border-box; }
    @media screen and (max-width: 600px) {
      table th, table td {
        padding: 2.667vw;
        min-width: 37.333vw;
        max-width: 120vw; } }
  table th {
    font-weight: 400;
    color: #FFF;
    background-color: #00559D;
    border: 1px solid #CCC; }
    table th[scope="row"] {
      background-color: #00559D; }
  table td {
    border: 1px solid #CCC; }
  table th + th {
    border-left: 1px solid #CCC; }
  table td + td,
  table th + td {
    border-left: 1px solid #CCC; }
  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: #00559D;
    border-radius: 5px; }
  @media screen and (max-width: 1280px) {
    .responsive-table table th {
      white-space: nowrap; } }

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

blockquote {
  background-color: #FFF;
  border: 1px solid #00559D;
  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: 4vw;
      margin-bottom: 4vw;
      padding: 3.2vw 4vw; } }
  blockquote dl:last-child,
  blockquote ul:last-child,
  blockquote p:last-child {
    margin-bottom: 0; }

small {
  font-size: 70%; }

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

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

code {
  color: #192C55;
  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);
  margin-bottom: 1.75em; }
  p:last-child {
    margin-bottom: 0; }

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

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

figcaption {
  font-size: 14px;
  text-align: center;
  letter-spacing: 0;
  line-height: 1.5;
  color: #192C55;
  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 #D9D9D9;
    opacity: 0.8; }
  details > summary {
    position: relative;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0;
    color: #FFF;
    margin: 0 0 20px;
    padding: 20px 80px 20px 40px;
    background-color: #00559D;
    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: 8vw; } }
    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: #192C55; }

#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%;
  height: 98px;
  background-color: #FFF;
  box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.2);
  color: #192C55; }
  @media screen and (max-width: 1280px) {
    #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: 1200px;
    padding: 0 40px;
    margin: 0 auto; }
    @media screen and (max-width: 1280px) {
      #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;
  align-items: center;
  align-content: center; }
  @media screen and (max-width: 600px) {
    #header-top {
      height: 16vw; } }

#identity-area a {
  display: flex;
  gap: 0 11px;
  align-items: center; }
  @media screen and (max-width: 600px) {
    #identity-area a {
      gap: 0 1.333vw; } }
  #identity-area a .identity-area--logo {
    flex: 0 0 205px; }
    #identity-area a .identity-area--logo img {
      width: 100%;
      height: auto; }
    @media screen and (max-width: 600px) {
      #identity-area a .identity-area--logo {
        flex: 0 0 47.467vw; } }
  #identity-area a .identity-area--text {
    flex: 0 0 auto;
    padding: 5px 10px;
    font-size: 12px;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0;
    color: #00559D;
    border: 1px solid #00559D;
    border-radius: 20px;
    background: #FFF; }
    @media screen and (max-width: 600px) {
      #identity-area a .identity-area--text {
        padding: 1.333vw 2.667vw;
        font-size: 2.667vw;
        border: 0.267vw solid #00559D;
        border-radius: 5.333vw; } }

@media screen and (max-width: 1280px) {
  #help-area {
    display: none; } }
#help-area #help-area-nav {
  display: flex;
  align-items: flex-start;
  height: 60px; }
  #help-area #help-area-nav .help-area-nav--list {
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 0 0 150px;
    height: 45px; }
    #help-area #help-area-nav .help-area-nav--list.help-area-nav--graduate {
      background: #00A0E9; }
    #help-area #help-area-nav .help-area-nav--list.help-area-nav--career {
      background: #034882; }
    #help-area #help-area-nav .help-area-nav--list a {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 100%;
      height: 100%;
      font-size: 14px;
      font-weight: 400;
      line-height: normal;
      letter-spacing: 0;
      color: #FFF; }
      #help-area #help-area-nav .help-area-nav--list a::after {
        display: inline-block;
        content: "";
        background: url("./image/share/icon-help-arrow.svg") center center no-repeat;
        background-size: contain;
        width: 15px;
        height: 15px;
        margin: 0 0 0 5px; }

/*
#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;
      }
    }
  }
}
*/
/*#recruit-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: #46B1F4;
    height: 100%;
    width: 144px;
    .recruit-area {
      &--img {}
      &--text {
        font-size: 14px;
        font-weight: $fw_normal;
        line-height: 1;
        letter-spacing: $f_letter;
        text-align: center;
        color: $c_white;
        margin: 5px 0 0;
      }
    }
  }
}*/
#menu-button--close,
#menu-button {
  position: relative;
  display: none;
  width: 60px;
  height: 60px;
  background-color: #00559D;
  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: 1280px) {
    #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: 18px;
    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: 4.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%, -8px);
    transform: translate(-50%, -8px); }
    @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.4vw);
        transform: translate(-50%, -2.4vw); } }
  #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%, 8px);
    transform: translate(-50%, 8px); }
    @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.4vw);
        transform: translate(-50%, 2.4vw); } }
  #menu-button--close.active .menu--line--top,
  #menu-button.active .menu--line--top {
    -webkit-transform: translate(-50%, 0) rotate(45deg);
    transform: translate(-50%, 0) rotate(45deg); }
  #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(-45deg);
    transform: translate(-50%, 0) rotate(-45deg); }

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

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

#global-nav {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center; }
  #global-nav > li {
    flex: 0 0 auto;
    text-align: center;
    margin: 0; }
    #global-nav > li > a {
      display: flex;
      flex-direction: column;
      width: 100%;
      height: 32px;
      padding: 0 28px;
      align-items: center;
      font-size: 12px;
      font-weight: 700;
      line-height: normal;
      letter-spacing: 0;
      color: #192C55;
      box-sizing: border-box;
      transition: all 0ms ease-in-out; }
  #global-nav > li:hover > a {
    border-bottom: 4px solid #00559D;
    opacity: 1; }
  #global-nav > li.has-submenu > a::after {
    content: "";
    display: inline-block;
    width: 8px;
    height: 4px;
    margin: 5px 0 0;
    background: url("image/share/icon-navi-arrow.svg") center center no-repeat;
    background-size: contain; }
  #global-nav > li.has-submenu:hover > a::after {
    background: url("image/share/icon-navi-arrow-open.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;
    margin: 8px auto 0;
    padding: 20px 0 20px 13px; }
    #global-nav > li.has-submenu:hover > .global-nav-submenu--list * {
      height: auto;
      overflow: visible; }
  #global-nav > li.has-submenu button {
    display: none; }

.global-nav-submenu--list {
  max-width: 120px;
  opacity: 0;
  visibility: hidden;
  background-color: #FFF;
  border-radius: 10px;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.5);
  transition: opacity 300ms ease-in-out; }
  .global-nav-submenu--list * {
    height: 0;
    overflow: hidden; }
  .global-nav-submenu--list > li a {
    display: flex;
    align-items: center;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0;
    white-space: nowrap;
    text-align: justify;
    text-justify: inter-ideograph;
    color: #192C55;
    margin: 0 0 10px; }
    .global-nav-submenu--list > li a::before {
      content: "";
      display: inline-block;
      width: 4px;
      height: 1px;
      margin: 0 5px 0 0;
      background-color: #00559D;
      color: #034882; }
    .global-nav-submenu--list > li a:hover {
      text-decoration: underline; }
  .global-nav-submenu--list > li:last-child > a {
    margin: 0; }

#global-area-sp {
  display: none; }
  @media screen and (max-width: 1280px) {
    #global-area-sp {
      display: block;
      position: fixed;
      top: 0;
      right: -700px;
      max-width: 400px;
      width: 100%;
      height: 100vh;
      padding: 0 0 60px;
      z-index: 1100;
      background-color: #F2F5F9;
      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: 16vw; } }
  #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: #D9D9D9;
    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 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    align-content: center;
    z-index: 300;
    background-color: #FFF;
    color: #192C55;
    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 {
      display: flex;
      gap: 0 5px;
      align-items: center; }
      #global-area-sp #identity-area-sp a .identity-area-sp--logo {
        flex: 0 0 178px; }
        #global-area-sp #identity-area-sp a .identity-area-sp--logo img {
          width: 100%;
          height: auto; }
        @media screen and (max-width: 600px) {
          #global-area-sp #identity-area-sp a .identity-area-sp--logo {
            flex: 0 0 47.468vw; } }
      #global-area-sp #identity-area-sp a .identity-area-sp--text {
        flex: 0 0 auto;
        padding: 5px 10px;
        font-size: 10px;
        font-weight: 700;
        line-height: normal;
        letter-spacing: 0;
        color: #00559D;
        border: 1px solid #00559D;
        border-radius: 20px;
        background: #FFF; }
        @media screen and (max-width: 600px) {
          #global-area-sp #identity-area-sp a .identity-area-sp--text {
            padding: 1.333vw 2.667vw;
            font-size: 2.667vw;
            border: 0.267vw solid #00559D;
            border-radius: 5.333vw; } }
  #global-area-sp a:focus-visible {
    outline: dotted 2px #192C55;
    outline-offset: -3px;
    color: #192C55;
    box-shadow: none;
    opacity: 1; }

#global-nav-sp {
  position: relative;
  z-index: 200;
  padding: 0;
  margin: 5.333vw 5.333vw 40px; }
  @media screen and (max-width: 600px) {
    #global-nav-sp {
      margin-bottom: 10.667vw; } }
  #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: 20px;
      width: 100%;
      box-sizing: border-box;
      font-size: 16px;
      letter-spacing: 0;
      line-height: 1;
      font-weight: 400;
      color: #192C55; }
      @media screen and (max-width: 600px) {
        #global-nav-sp > li > a {
          padding: 5.3vw;
          font-size: 4.2vw; } }
      #global-nav-sp > li > a:hover {
        color: #00559D; }
        @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 #192C55;
            outline-offset: 2px;
            color: #192C55;
            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: 15px;
            height: 3px;
            background-color: #192C55;
            transition: all 300ms ease-in-out;
            right: 0;
            top: 50%;
            -webkit-transform: translate(-25%, -50%);
            transform: translate(-25%, -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: 4vw;
                height: 0.8vw; } }
          #global-nav-sp > li > a .global-nav-sp--child::before {
            -webkit-transform: translate(-25%, -50%) rotate(90deg);
            transform: translate(-25%, -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: 15px 0;
      background-color: #F2F5F9;
      border-top: 1px solid #CCC; }
      @media screen and (max-width: 600px) {
        #global-nav-sp > li > ul {
          padding: 4vw;
          border-top: 0.267vw solid #CCC; } }
      #global-nav-sp > li > ul > li {
        margin: 0 0 20px; }
        @media screen and (max-width: 600px) {
          #global-nav-sp > li > ul > li {
            margin-bottom: 5.334vw; } }
        #global-nav-sp > li > ul > li:last-child {
          margin: 0; }
        #global-nav-sp > li > ul > li > a {
          display: flex;
          justify-content: flex-start;
          align-items: center;
          align-content: center;
          margin: 0 20px;
          width: 100%;
          box-sizing: border-box;
          font-size: 12px;
          font-weight: 400;
          line-height: 1.5;
          letter-spacing: 0;
          color: #192C55;
          gap: 0 10px; }
          @media screen and (max-width: 600px) {
            #global-nav-sp > li > ul > li > a {
              margin: 0 5.333vw;
              gap: 0 2.667vw;
              font-size: 3.2vw; } }
          #global-nav-sp > li > ul > li > a::before {
            content: "";
            display: inline-block;
            width: 10px;
            height: 1px;
            background-color: #192C55; }
            @media screen and (max-width: 600px) {
              #global-nav-sp > li > ul > li > a::before {
                width: 2.667vw;
                height: 0.267vw; } }
          #global-nav-sp > li > ul > li > a:hover {
            color: #00559D; }
            @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 #FFF;
            outline-offset: -3px;
            color: #192C55;
            box-shadow: none;
            opacity: 0.8; }

.global-subarea-sp {
  padding: 0 40px; }
  .global-subarea-sp a {
    display: flex;
    padding: 13px 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: 3.467vw;
        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-faqarea-sp {
  margin: 0 auto 20px; }
  @media screen and (max-width: 600px) {
    #global-faqarea-sp {
      margin-bottom: 5.334vw; } }
  #global-faqarea-sp > a {
    background-color: #0171BB; }
    #global-faqarea-sp > a::after {
      background-image: url("image/share/icon-faq.svg"); }

#global-contactarea-sp {
  margin: 0 0 60px; }
  @media screen and (max-width: 600px) {
    #global-contactarea-sp {
      margin-bottom: 16vw; } }
  #global-contactarea-sp > a {
    background-color: #00559D; }
    #global-contactarea-sp > a::after {
      background-image: url("image/share/icon-contact.svg"); }

/*
#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;
      }
    }
  }
}
#contact-area-sp {
  margin: 30px 20px 0;
  @include mq('sm') {
    margin: 8vw 5.333vw 0;
  }
  a {
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    background-color: #FDB52C;
    height: 60px;
    width: 100%;
    @include mq('sm') {
      height: 16vw;
    }
    &:focus-visible {
      outline: dotted 2px $c_header_bg;
      outline-offset: -3px;
      box-shadow: none;
    }
    .contact-area-sp {
      &--img {
        img {
          width: 32px;
          height: auto;
          @include mq('sm') {
            width: 8.533vw;
          }
        }
      }
      &--text {
        font-size: 14px;
        font-weight: $fw_normal;
        line-height: 1;
        letter-spacing: $f_letter;
        text-align: center;
        color: $c_white;
        margin: 0 0 0 10px;
        @include mq('sm') {
          font-size: 3.733vw;
          margin-left: 2.667vw;
        }
      }
    }
  }
}
*/
/*#recruit-area-sp {
  margin: 10px 20px 0;
  @include mq('sm') {
    margin: 2.667vw 5.333vw 0;
  }
  a {
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    background-color: #46B1F4;
    height: 60px;
    width: 100%;
    @include mq('sm') {
      height: 16vw;
    }
    &:focus-visible {
      outline: dotted 2px $c_header_bg;
      outline-offset: -3px;
      box-shadow: none;
    }
    .recruit-area-sp {
      &--img {
        img {
          width: 28px;
          height: auto;
          @include mq('sm') {
            width: 7.467vw;
          }
        }
      }
      &--text {
        font-size: 14px;
        font-weight: $fw_normal;
        line-height: 1;
        letter-spacing: $f_letter;
        text-align: center;
        color: $c_white;
        margin: 0 0 0 10px;
        @include mq('sm') {
          font-size: 3.733vw;
          margin-left: 2.667vw;
        }
      }
    }
  }
}*/
#bottom-area-sp {
  display: none; }
  @media screen and (max-width: 1280px) {
    #bottom-area-sp {
      display: block;
      position: fixed;
      bottom: 0;
      left: 0;
      width: 100%;
      z-index: 400; } }

#bottom-nav-sp {
  display: flex; }
  #bottom-nav-sp .bottom-nav-sp--list {
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 0 0 50%;
    height: 80px; }
    #bottom-nav-sp .bottom-nav-sp--list.bottom-nav-sp--graduate {
      background: #00A0E9; }
    #bottom-nav-sp .bottom-nav-sp--list.bottom-nav-sp--career {
      background: #034882; }
    @media screen and (max-width: 600px) {
      #bottom-nav-sp .bottom-nav-sp--list {
        height: 13.334vw; } }
    #bottom-nav-sp .bottom-nav-sp--list a {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 100%;
      height: 100%;
      font-size: 18px;
      font-weight: 400;
      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; } }
      #bottom-nav-sp .bottom-nav-sp--list a::after {
        content: "";
        display: inline-block;
        margin-left: 5px;
        width: 15px;
        height: 16px;
        background-image: url("image/share/icon-help-arrow.svg");
        background-size: contain; }
        @media screen and (max-width: 600px) {
          #bottom-nav-sp .bottom-nav-sp--list a::after {
            width: 4vw;
            height: 4.267vw; } }

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

/* ◆16 トピックパス */
#breadcrumb__outer {
  max-width: 1200px;
  margin: 0 auto 80px;
  padding: 0 40px;
  box-sizing: border-box; }
  @media screen and (max-width: 1280px) {
    #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: 12px;
  font-weight: 400;
  text-align: left;
  line-height: 2;
  letter-spacing: 0;
  color: #192C55; }
  @media screen and (max-width: 600px) {
    #breadcrumb {
      font-size: 3.2vw;
      line-height: 2; } }
  #breadcrumb > span::before {
    content: "";
    display: inline-block;
    width: 5px;
    height: 5px;
    margin: 0 10px 1px;
    background-color: #777777;
    border-radius: 50px; }
    @media screen and (max-width: 600px) {
      #breadcrumb > span::before {
        margin: 0 2.667vw 0.267vw;
        width: 1.333vw;
        height: 1.333vw;
        border-radius: 13.333vw; } }
  #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 {
    color: #192C55;
    display: inline-block;
    text-decoration: none; }
    #breadcrumb a:hover {
      text-decoration: underline; }

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

/* ◆18 サブコンテンツ */
/* ◆19 フッター */
#footer-toparea {
  margin: 0 0 70px; }
  @media screen and (max-width: 600px) {
    #footer-toparea {
      margin-bottom: 10.667vw; } }
  #footer-toparea__inner {
    margin: 0 auto;
    padding: 0 40px;
    width: 1200px; }
    @media screen and (max-width: 1280px) {
      #footer-toparea__inner {
        width: inherit; } }
    @media screen and (max-width: 600px) {
      #footer-toparea__inner {
        padding: 0 5.333vw; } }

#footer-toparea-nav {
  display: flex; }
  @media screen and (max-width: 600px) {
    #footer-toparea-nav {
      flex-direction: column;
      gap: 8vw 0; } }
  #footer-toparea-nav .footer-toparea-nav--list {
    flex: 0 0 50%; }
    @media screen and (max-width: 600px) {
      #footer-toparea-nav .footer-toparea-nav--list {
        width: 100%; } }
    #footer-toparea-nav .footer-toparea-nav--list > a {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 50px 0;
      color: #FFF;
      font-size: 18px;
      font-weight: 700;
      line-height: 1.5;
      letter-spacing: 0; }
      @media screen and (max-width: 600px) {
        #footer-toparea-nav .footer-toparea-nav--list > a {
          padding: 7.467vw 0;
          font-size: 4.267vw; } }
      #footer-toparea-nav .footer-toparea-nav--list > a::after {
        content: "";
        display: inline-block;
        margin-left: 10px;
        width: 27px;
        height: 27px;
        background-size: contain; }
        @media screen and (max-width: 600px) {
          #footer-toparea-nav .footer-toparea-nav--list > a::after {
            margin-left: 2.667vw;
            width: 7.2vw;
            height: 7.2vw; } }
  #footer-toparea-nav .footer-toparea-nav--faq > a {
    background-color: #0171BB; }
    #footer-toparea-nav .footer-toparea-nav--faq > a::after {
      background-image: url("image/share/icon-faq.svg");
      background-size: contain; }
  #footer-toparea-nav .footer-toparea-nav--contact > a {
    background-color: #00559D; }
    #footer-toparea-nav .footer-toparea-nav--contact > a::after {
      background-image: url("image/share/icon-contact.svg");
      background-size: contain; }

#footer {
  /*  position: relative;*/
  background-color: #FFF;
  color: #192C55;
  margin: 0;
  padding: 0 0 20px;
  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: 1280px) {
    #footer {
      margin-bottom: 60px; } }
  @media screen and (max-width: 600px) {
    #footer {
      margin: 0;
      padding-bottom: 13.334vw; } }
  #footer__inner {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;
    display: flex;
    flex-wrap: wrap;
    column-gap: 40px; }
    @media screen and (max-width: 1280px) {
      #footer__inner {
        display: block;
        width: auto; } }
    @media screen and (max-width: 600px) {
      #footer__inner {
        padding: 0 5.333vw; } }

#footer-companyarea {
  flex: 0 0 auto; }
  @media screen and (max-width: 1280px) {
    #footer-companyarea {
      margin: 0 auto;
      width: 300px; } }
  @media screen and (max-width: 600px) {
    #footer-companyarea {
      width: 100%; } }
  #footer-companyarea address .footer-logo {
    width: 300px; }
    @media screen and (max-width: 600px) {
      #footer-companyarea address .footer-logo {
        width: 82.667vw; } }
    #footer-companyarea address .footer-logo img {
      width: 100%;
      height: auto; }
    #footer-companyarea address .footer-logo--text {
      display: inline-block;
      margin: 7px 0 20px 65px;
      padding: 5px 10px;
      font-size: 12px;
      font-weight: 700;
      line-height: normal;
      letter-spacing: 0;
      color: #00559D;
      border: 1px solid #00559D;
      border-radius: 20px;
      background: #FFF; }
      @media screen and (max-width: 600px) {
        #footer-companyarea address .footer-logo--text {
          margin: 1.867vw 0 5.334vw 17.334vw;
          padding: 1.334vw 2.667vw;
          font-size: 3.2vw;
          border: 0.267vw solid #00559D; } }
  #footer-companyarea address .footer-address dl {
    margin: 0 0 56px;
    padding: 0;
    width: 292px; }
    @media screen and (max-width: 600px) {
      #footer-companyarea address .footer-address dl {
        margin-bottom: 5.334vw;
        width: 77.867vw; } }
    #footer-companyarea address .footer-address dl > dt {
      display: inline-block;
      font-size: 14px;
      font-weight: 400;
      line-height: 1.5;
      letter-spacing: 0;
      color: #192C55; }
      @media screen and (max-width: 600px) {
        #footer-companyarea address .footer-address dl > dt {
          font-size: 3.734vw; } }
    #footer-companyarea address .footer-address dl > dd {
      display: inline-block;
      font-size: 14px;
      font-weight: 400;
      line-height: 1.5;
      letter-spacing: 0;
      color: #192C55; }
      @media screen and (max-width: 600px) {
        #footer-companyarea address .footer-address dl > dd {
          font-size: 3.734vw; } }
      #footer-companyarea address .footer-address dl > dd:last-child {
        display: block; }
  #footer-companyarea address .footer-link a {
    display: flex;
    align-items: center;
    color: #192C55;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: 0; }
    @media screen and (max-width: 1280px) {
      #footer-companyarea address .footer-link a {
        justify-content: center; } }
    @media screen and (max-width: 600px) {
      #footer-companyarea address .footer-link a {
        justify-content: flex-start;
        font-size: 3.2vw; } }
    #footer-companyarea address .footer-link a::after {
      content: "";
      display: inline-block;
      margin: 0 0 0 5px;
      width: 24px;
      height: 24px;
      background-image: url("./image/share/icon-site-link.svg");
      background-size: contain; }
      @media screen and (max-width: 600px) {
        #footer-companyarea address .footer-link a::after {
          margin-left: 1.334vw;
          width: 6.4vw;
          height: 6.4vw; } }

#footer-navarea {
  flex: 0 0 auto; }
  @media screen and (max-width: 1280px) {
    #footer-navarea {
      display: none; } }
  #footer-navarea nav {
    display: flex; }
    #footer-navarea nav > ul {
      flex: 0 0 auto;
      padding: 0 30px;
      border-left: 1px solid #CCC; }
      #footer-navarea nav > ul > li > a {
        margin: 0 0 10px;
        width: 164px;
        color: #00559D;
        font-size: 14px;
        font-weight: 700;
        line-height: 1.5;
        letter-spacing: 0; }
        #footer-navarea nav > ul > li > a:hover {
          text-decoration: underline; }
      #footer-navarea nav > ul > li > li:last-child > a {
        margin: 0; }
      #footer-navarea nav > ul > li.footer-nav--submenu > a {
        font-size: 14px;
        line-height: 1.5;
        letter-spacing: 0;
        font-weight: 400;
        color: #192C55;
        display: flex;
        align-items: center; }
        #footer-navarea nav > ul > li.footer-nav--submenu > a::before {
          content: "";
          display: inline-block;
          width: 4px;
          height: 1px;
          margin: 0 5px 0 0;
          background-color: #192C55; }

#footer-contactarea {
  flex: 1 1 auto; }
  @media screen and (max-width: 1280px) {
    #footer-contactarea {
      display: none; } }
  #footer-contactarea__inner > a {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 15px 0;
    background-color: #00559D;
    border-radius: 10px;
    color: #FFF;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0;
    font-size: 14px; }
    #footer-contactarea__inner > a::after {
      content: "";
      display: inline-block;
      width: 24px;
      height: 24px;
      margin: 0 0 0 10px;
      background-image: url("image/share/icon-footer-contact.svg");
      background-size: contain; }

/*#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 {
  flex: 0 0 100%;
  font-size: 10px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: f_letter;
  color: #192C55;
  text-align: left;
  margin: 53px auto 0;
  padding: 20px 0;
  border-top: 1px solid #CCC; }
  @media screen and (max-width: 1280px) {
    #copyright {
      text-align: center; } }
  @media screen and (max-width: 600px) {
    #copyright {
      font-size: 2.667vw;
      margin-top: 9.334vw;
      padding: 5.334vw 0; } }

#pagetop {
  position: sticky;
  bottom: 20px;
  right: 20px;
  width: 70px;
  height: 70px;
  background-color: #00A0E9;
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  z-index: 1000;
  margin: 0 0 0 auto;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%); }
  @media screen and (max-width: 1280px) {
    #pagetop {
      bottom: 50px; } }
  @media screen and (max-width: 600px) {
    #pagetop {
      right: 5.333vw;
      bottom: 13.333vw;
      width: 12vw;
      height: 12vw; } }
  #pagetop::before {
    position: absolute;
    content: "";
    width: 25px;
    height: 15px;
    background: url("image/share/icon-navi-arrow-open.svg") center center no-repeat;
    filter: brightness(0) invert(1);
    background-size: cover; }
    @media screen and (max-width: 600px) {
      #pagetop::before {
        width: 4.533vw;
        height: 2.667vw; } }

/* ◆20 サイドバーメニュー */
/*==============================================
◆40：各コンテンツ
==============================================*/
#top-info__inner #top-info--linkarea a, #top-voice__inner #top-voice--linkarea a, #voice--linkarea a {
  text-decoration: none;
  margin: 0 auto;
  padding: 10px 50px;
  border: 1px solid #00559D;
  background-color: #FFF;
  border-radius: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  color: #192C55;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  /* 150% */ }
  @media screen and (max-width: 600px) {
    #top-info__inner #top-info--linkarea a, #top-voice__inner #top-voice--linkarea a, #voice--linkarea a {
      padding: 2.667vw 13.333vw;
      border: 0.267vw solid #00559D;
      border-radius: 5.333vw;
      gap: 2.667vw;
      font-size: 3.733vw; } }
  #top-info__inner #top-info--linkarea a::after, #top-voice__inner #top-voice--linkarea a::after, #voice--linkarea a::after {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    font-size: 16px;
    background: url("image/top/icon-top-arrow.svg") no-repeat center center;
    background-size: contain; }

#news-title {
  margin: 0 0 20px; }
  @media screen and (max-width: 600px) {
    #news-title {
      margin-bottom: 5.333vw; } }

#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 > a {
    display: inline-block;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: 0;
    text-decoration: none;
    text-align: center;
    color: #FFF;
    border: 1px solid #FFA865;
    border-radius: 20px;
    transition: all 300ms ease-in-out;
    background-color: #FFA865;
    vertical-align: middle;
    margin: 0;
    padding: 0 15px; }
    @media screen and (max-width: 600px) {
      #news-archive--area .news-archive--area--category > a {
        font-size: 3.733vw;
        padding: 0 4vw;
        border: 0.267vw solid #FFA865;
        border-radius: 5.333vw; } }
    #news-archive--area .news-archive--area--category > a + a {
      margin-left: 15px; }
      @media screen and (max-width: 600px) {
        #news-archive--area .news-archive--area--category > a + a {
          margin-left: 4vw; } }
    #news-archive--area .news-archive--area--category > a.news-archive--area--category--news {
      border-color: #FFA865;
      background-color: #FFA865; }
    #news-archive--area .news-archive--area--category > a.news-archive--area--category--briefing {
      border-color: #61D17F;
      background-color: #61D17F; }
  #news-archive--area .news-archive--area--date {
    font-size: 14px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0;
    color: #192C55;
    margin: 0 0 0 10px;
    vertical-align: middle; }
    @media screen and (max-width: 600px) {
      #news-archive--area .news-archive--area--date {
        font-size: 3.733vw;
        margin-left: 2.667vw; } }

.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 #00559D;
      font-size: 14px;
      font-weight: 700;
      line-height: 1.5;
      letter-spacing: 0;
      color: #192C55; }
      @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 #00559D; } }

.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($f_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 #CCC;
  margin: 0 auto 60px;
  padding: 0; }
  @media screen and (max-width: 600px) {
    #news-archive--list {
      border-top: 0.267vw solid #CCC;
      margin-bottom: 16vw; } }
  #top-info #news-archive--list {
    border-top-color: #CCC;
    margin: 0 auto 50px; }
    @media screen and (max-width: 600px) {
      #top-info #news-archive--list {
        margin-bottom: 10.667vw; } }
  #news-archive--list > li {
    position: relative;
    margin: 0;
    padding: 20px 30px;
    border-bottom: 1px solid #CCC;
    transition: all 300ms ease-in-out; }
    @media screen and (max-width: 600px) {
      #news-archive--list > li {
        padding: 5.333vw 0;
        border-bottom: 0.226vw solid #CCC; } }
    #top-info #news-archive--list > li {
      border-bottom-color: #CCC;
      padding: 25px 0;
      color: #FFF;
      display: flex;
      align-items: center; }
      @media screen and (max-width: 1000px) {
        #top-info #news-archive--list > li {
          flex-wrap: wrap; } }
    #news-archive--list > li:hover {
      background-color: #b0e0e6; }
      #top-info #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--archive {
      margin: 0 0 8px;
      padding: 0;
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-start;
      align-items: center;
      align-content: center;
      gap: 10px; }
      @media screen and (max-width: 600px) {
        #news-archive--list > li .news-archive--list--archive {
          margin-bottom: 2.667vw;
          gap: 2.667vw; } }
      #top-info #news-archive--list > li .news-archive--list--archive {
        flex: 0 0 354px;
        margin: 0; }
        @media screen and (max-width: 1000px) {
          #top-info #news-archive--list > li .news-archive--list--archive {
            flex: 1 1 354px; } }
    #news-archive--list > li .news-archive--list--category {
      flex: 0 0 100px;
      display: flex;
      justify-content: center;
      align-items: center;
      align-content: center;
      font-size: 14px;
      font-weight: 400;
      line-height: 1.5;
      letter-spacing: 0;
      text-align: center;
      color: #FFF;
      margin: 0;
      padding: 0 15px;
      height: 21px;
      border-radius: 20px;
      /*        &--pressrelease {
                background-color: $c_pressrelease;
              }*/ }
      @media screen and (max-width: 600px) {
        #news-archive--list > li .news-archive--list--category {
          flex: 0 0 26.667vw;
          padding: 0 4vw;
          height: 6.4vw;
          font-size: 3.733vw;
          border-radius: 5.333vw; } }
      #news-archive--list > li .news-archive--list--category--news {
        background-color: #FFA865; }
      #news-archive--list > li .news-archive--list--category--briefing {
        background-color: #61D17F; }
    #news-archive--list > li .news-archive--list--date {
      font-size: 14px;
      font-weight: 700;
      line-height: 1.5;
      letter-spacing: 0;
      text-align: justify;
      text-justify: inter-ideograph;
      color: #192C55; }
      @media screen and (max-width: 600px) {
        #news-archive--list > li .news-archive--list--date {
          font-size: 3.733vw; } }
      #top-info #news-archive--list > li .news-archive--list--date {
        color: #192C55; }
    #news-archive--list > li .news-archive--list--new {
      font-size: 14px;
      font-weight: 400;
      line-height: 1.3;
      letter-spacing: 0;
      color: #FF6A92;
      padding: 0 15px;
      border-radius: 20px;
      border: 1px solid #FF6A92;
      height: 21px; }
      @media screen and (max-width: 600px) {
        #news-archive--list > li .news-archive--list--new {
          font-size: 3.733vw;
          padding: 0 4vw;
          border-radius: 5.333vw;
          border: 0.267vw solid #FF6A92;
          height: 6.4vw;
          line-height: 1.5; } }
      #top-info #news-archive--list > li .news-archive--list--new {
        color: #FF6A92; }
    #news-archive--list > li .news-archive--list--title {
      font-size: 16px;
      line-height: 1.5;
      letter-spacing: 0;
      font-weight: 400;
      text-align: justify;
      text-justify: inter-ideograph;
      color: #192C55; }
      @media screen and (max-width: 600px) {
        #news-archive--list > li .news-archive--list--title {
          font-size: 3.733vw;
          line-height: 1.714; } }
      #top-info #news-archive--list > li .news-archive--list--title {
        color: #192C55;
        flex: 1 1 100%; }
        @media screen and (max-width: 1000px) {
          #top-info #news-archive--list > li .news-archive--list--title {
            margin-top: 10px; } }
        @media screen and (max-width: 600px) {
          #top-info #news-archive--list > li .news-archive--list--title {
            margin-top: 2.667vw; } }
    #news-archive--list > li .news-archive--list--link {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0; }

.title-area {
  margin: 0 auto 50px; }
  @media screen and (max-width: 600px) {
    .title-area {
      margin-bottom: 7.467vw; } }
  .title-area--jp {
    text-align: center;
    color: #00559D;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0;
    margin: 0 0 5px; }
    @media screen and (max-width: 600px) {
      .title-area--jp {
        font-size: 6.4vw;
        line-height: normal;
        margin-bottom: 1.333vw; } }
  .title-area--en {
    text-align: center;
    color: #777;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0; }
    @media screen and (max-width: 600px) {
      .title-area--en {
        font-size: 3.2vw;
        line-height: normal; } }

#top-main {
  margin: 0;
  padding: 0; }
  #top-main__inner {
    max-width: 1200px;
    margin: 0 auto; }
    #top-main__inner img {
      width: 100%;
      height: auto; }

#top-topic {
  margin: 0;
  padding: 60px 0;
  background-color: #F2F5F9; }
  @media screen and (max-width: 600px) {
    #top-topic {
      padding: 16vw 0; } }
  #top-topic__inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px; }
    @media screen and (max-width: 600px) {
      #top-topic__inner {
        padding: 0 5.333vw; } }
    #top-topic__inner .top-topicarea {
      display: flex;
      justify-content: center;
      gap: 80px;
      flex-wrap: wrap; }
      @media screen and (max-width: 600px) {
        #top-topic__inner .top-topicarea {
          flex-direction: column;
          gap: 16vw; } }
      #top-topic__inner .top-topicarea--contents {
        flex: 0 0 520px;
        margin: 0 auto; }
        @media screen and (max-width: 600px) {
          #top-topic__inner .top-topicarea--contents {
            width: 100%; } }
    #top-topic__inner .top-topicarea-list {
      display: flex;
      gap: 40px; }
      @media screen and (max-width: 600px) {
        #top-topic__inner .top-topicarea-list {
          flex-direction: column;
          gap: 8vw; } }
      #top-topic__inner .top-topicarea-list li {
        flex: 0 0 240px;
        position: relative;
        background-color: #FFF;
        border-radius: 0 0 10px 10px;
        transition: all 300ms ease-in-out; }
        #top-topic__inner .top-topicarea-list li:hover {
          opacity: 0.8; }
        @media screen and (max-width: 600px) {
          #top-topic__inner .top-topicarea-list li {
            width: 100%;
            border-radius: 0 0 2.667vw 2.667vw; } }
      #top-topic__inner .top-topicarea-list--img img {
        width: 100%;
        height: auto; }
      #top-topic__inner .top-topicarea-list--title {
        padding: 20px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        color: #192C55;
        font-size: 18px;
        font-weight: 700;
        line-height: 1.5;
        /* 150% */
        letter-spacing: 0;
        margin: 0; }
        @media screen and (max-width: 600px) {
          #top-topic__inner .top-topicarea-list--title {
            padding: 5.333vw;
            font-size: 4.8vw; } }
        #top-topic__inner .top-topicarea-list--title::after {
          content: "";
          display: inline-block;
          width: 20px;
          height: 20px;
          font-size: 16px;
          background: url("image/top/icon-top-arrow.svg") no-repeat center center;
          background-size: contain; }
          @media screen and (max-width: 600px) {
            #top-topic__inner .top-topicarea-list--title::after {
              width: 6.667vw;
              height: 6.667vw; } }
      #top-topic__inner .top-topicarea-list--link {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0; }

#top-info {
  margin: 0;
  padding: 60px 0 80px;
  background-color: #FFF; }
  @media screen and (max-width: 600px) {
    #top-info {
      padding: 10.667vw 0; } }
  #top-info__inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px; }
    @media screen and (max-width: 600px) {
      #top-info__inner {
        padding: 0 5.333vw; } }
    #top-info__inner #top-info--linkarea {
      text-align: center; }

#top-message {
  margin: 0;
  padding: 0 0 100px;
  background-color: #FFF; }
  @media screen and (max-width: 600px) {
    #top-message {
      padding-bottom: 16vw; } }
  #top-message__inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px; }
    @media screen and (max-width: 600px) {
      #top-message__inner {
        padding: 0 5.333vw; } }
    #top-message__inner a {
      display: block; }
      #top-message__inner a img {
        width: 100%;
        height: auto; }

#top-about {
  margin: 0;
  padding: 60px 0 60px;
  background-color: #F2F5F9; }
  @media screen and (max-width: 600px) {
    #top-about {
      padding: 16vw 0; } }
  #top-about__inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px; }
    @media screen and (max-width: 600px) {
      #top-about__inner {
        padding: 0 5.333vw; } }
    #top-about__inner #top-about-list {
      display: flex;
      justify-content: center;
      gap: 80px; }
      @media screen and (max-width: 1000px) {
        #top-about__inner #top-about-list {
          flex-direction: column;
          gap: 40px; } }
      @media screen and (max-width: 600px) {
        #top-about__inner #top-about-list {
          gap: 8vw; } }
      #top-about__inner #top-about-list li {
        display: flex;
        flex: 1 1 520px;
        position: relative;
        background-color: #0171BB;
        transition: all 300ms ease-in-out; }
        #top-about__inner #top-about-list li:hover {
          opacity: 0.8; }
        @media screen and (max-width: 1000px) {
          #top-about__inner #top-about-list li {
            flex: auto;
            width: 520px;
            margin: 0 auto; } }
        @media screen and (max-width: 600px) {
          #top-about__inner #top-about-list li {
            width: 100%; } }
    #top-about__inner .top-about-list--title {
      flex: 1 1 200px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      margin: 0;
      text-align: justify;
      text-justify: inter-ideograph;
      color: #FFF;
      font-size: 18px;
      font-weight: 700;
      line-height: 1.5;
      /* 150% */
      letter-spacing: 0; }
      @media screen and (max-width: 600px) {
        #top-about__inner .top-about-list--title {
          flex: 1 1 34.667vw;
          font-size: 3.733vw; } }
      #top-about__inner .top-about-list--title span {
        display: inline-block;
        margin-left: 37px; }
        @media screen and (max-width: 600px) {
          #top-about__inner .top-about-list--title span {
            margin-left: 4vw; } }
    #top-about__inner .top-about-list--img {
      flex: 1 1 320px; }
      @media screen and (max-width: 600px) {
        #top-about__inner .top-about-list--img {
          flex: 1 1 54.667vw; } }
      #top-about__inner .top-about-list--img img {
        width: 100%;
        height: auto; }
    #top-about__inner .top-about-list--link {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0; }

#top-voice {
  margin: 0;
  padding: 60px 0 120px;
  background-color: #FFF; }
  @media screen and (max-width: 600px) {
    #top-voice {
      padding: 16vw 0 21.333vw; } }
  #top-voice__inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px; }
    #top-voice__inner #top-voice--linkarea {
      text-align: center; }

#top-voice-list {
  margin: 0 auto 80px; }
  #top-voice-list .top-voice-list--content {
    position: relative;
    width: 250px;
    transition: all 300ms ease-in-out; }
    #top-voice-list .top-voice-list--content:hover {
      opacity: 0.8; }
  #top-voice-list .top-voice-list--img img {
    width: 100%;
    height: auto; }
  #top-voice-list .top-voice-list--affiliation {
    position: absolute;
    top: 228px;
    left: 20px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0;
    color: #FFF;
    padding: 0 0 5px;
    border-bottom: 1px solid #FFF; }
    @media screen and (max-width: 600px) {
      #top-voice-list .top-voice-list--affiliation {
        top: 62.667vw;
        left: 5.333vw;
        font-weight: 400;
        padding-bottom: 1.333vw;
        border-bottom: 0.2667vw solid #FFF;
        font-size: 3.733vw; } }
  #top-voice-list .top-voice-list--name {
    position: absolute;
    top: 259px;
    left: 20px;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0;
    color: #FFF; }
    @media screen and (max-width: 600px) {
      #top-voice-list .top-voice-list--name {
        top: 71.733vw;
        left: 5.333vw;
        font-size: 3.2vw; } }
  #top-voice-list .top-voice-list--link {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0; }
  #top-voice-list .slick-slide {
    width: 250px;
    margin: 0 20px; }
    @media screen and (max-width: 600px) {
      #top-voice-list .slick-slide {
        width: 66.667vw;
        margin: 0 10.667vw; } }
  #top-voice-list .slick-dots {
    bottom: -30px; }
    @media screen and (max-width: 600px) {
      #top-voice-list .slick-dots {
        bottom: -8vw; } }
    #top-voice-list .slick-dots li {
      width: 10px;
      height: 10px;
      background-color: #D9D9D9;
      border-radius: 50px;
      margin: 0 10px; }
      @media screen and (max-width: 600px) {
        #top-voice-list .slick-dots li {
          width: 2.133vw;
          height: 2.133vw;
          border-radius: 13.333vw;
          margin: 0 2.133vw; } }
      #top-voice-list .slick-dots li button {
        width: 0;
        height: 0; }
        #top-voice-list .slick-dots li button::before {
          content: none; }
    #top-voice-list .slick-dots li.slick-active {
      background-color: #00559D; }

#top-recruit {
  padding: 120px 0 480px;
  background: #FFF url("image/top/top-footer-img01@2x.jpg") center bottom no-repeat;
  background-size: 1920px auto; }
  @media screen and (max-width: 600px) {
    #top-recruit {
      padding: 13.333vw 0 42.667vw;
      background: #FFF url("image/top/top-footer-img01@2x.jpg") center bottom no-repeat;
      background-size: auto 70.4vw; } }
  #top-recruit__inner {
    max-width: 1200px;
    margin: 0 auto; }
    @media screen and (max-width: 1280px) {
      #top-recruit__inner {
        padding: 0 40px; } }
    @media screen and (max-width: 600px) {
      #top-recruit__inner {
        padding: 0 5.333vw; } }
    #top-recruit__inner .top-recruit--subtitle {
      font-family: "Noto Sans JP", "游ゴシック", "YuGothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
      font-size: 130px;
      font-weight: 400;
      font-style: italic;
      line-height: 1;
      letter-spacing: 0;
      color: #00559D;
      margin: 0 0 15px; }
      @media screen and (max-width: 1280px) {
        #top-recruit__inner .top-recruit--subtitle {
          font-size: 100px; } }
      @media screen and (max-width: 1000px) {
        #top-recruit__inner .top-recruit--subtitle {
          font-size: 66px; } }
      @media screen and (max-width: 600px) {
        #top-recruit__inner .top-recruit--subtitle {
          font-size: 12vw;
          margin-bottom: 2.667vw; } }
    #top-recruit__inner .top-recruit--title {
      font-size: 30px;
      font-weight: 700;
      line-height: 1;
      letter-spacing: 0;
      color: #192C55;
      text-align: justify;
      text-justify: inter-ideograph;
      margin: 0 0 60px;
      padding: 0 0 40px;
      border-bottom: 8px solid;
      border-color: #00559D;
      -webkit-border-image: -webkit-linear-gradient(left, #00559D 0%, #00559D 90px, #00A0E9 90px, #00A0E9 180px, transparent 180px, transparent 100%);
      -o-border-image: -o-linear-gradient(left, #00559D 0%, #00559D 90px, #00A0E9 90px, #00A0E9 180px, transparent 180px, transparent 100%);
      border-image: linear-gradient(to right, #00559D 0%, #00559D 90px, #00A0E9 90px, #00A0E9 180px, transparent 180px, transparent 100%);
      border-image-slice: 1; }
      @media screen and (max-width: 600px) {
        #top-recruit__inner .top-recruit--title {
          font-size: 4.267vw;
          margin-bottom: 5.667vw;
          padding-bottom: 5.333vw;
          border-bottom: 2.133vw solid;
          -webkit-border-image: -webkit-linear-gradient(left, #00559D 0%, #00559D 16vw, #00A0E9 16vw, #00A0E9 32vw, transparent 32vw, transparent 100%);
          -o-border-image: -o-linear-gradient(left, #00559D 0%, #00559D 16vw, #00A0E9 16vw, #00A0E9 32vw, transparent 32vw, transparent 100%);
          border-image: linear-gradient(to right, #00559D 0%, #00559D 16vw, #00A0E9 16vw, #00A0E9 32vw, transparent 32vw, transparent 100%);
          border-image-slice: 1; } }
    #top-recruit__inner .top-recruit--text {
      font-size: 16px;
      line-height: 1.75;
      letter-spacing: 0;
      text-align: justify;
      text-justify: inter-ideograph;
      margin: 0;
      padding: 0; }
      @media screen and (max-width: 1280px) {
        #top-recruit__inner .top-recruit--text {
          max-width: inherit; } }
      @media screen and (max-width: 600px) {
        #top-recruit__inner .top-recruit--text {
          font-size: 3.733vw;
          line-height: 1.714; } }
    #top-recruit__inner .top-recruit--link {
      margin: 80px 0 0; }
      @media screen and (max-width: 600px) {
        #top-recruit__inner .top-recruit--link {
          margin-top: 10.667vw; } }
      @media screen and (max-width: 600px) {
        #top-recruit__inner .top-recruit--link a {
          display: block; } }
      #top-recruit__inner .top-recruit--link a img {
        width: 100%;
        height: auto; }

#voice-archive-list {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  gap: 80px 40px; }
  @media screen and (max-width: 1000px) {
    #voice-archive-list {
      gap: 40px 20px; } }
  @media screen and (max-width: 600px) {
    #voice-archive-list {
      gap: 10.667vw 5.333vw; } }
  #voice-archive-list::before {
    content: "";
    flex: 0 0 250px;
    order: 2; }
    @media screen and (max-width: 600px) {
      #voice-archive-list::before {
        flex: 0 0 42.667vw; } }
  #voice-archive-list::after {
    content: "";
    flex: 0 0 250px;
    order: 2; }
    @media screen and (max-width: 600px) {
      #voice-archive-list::after {
        flex: 0 0 42.667vw; } }
  #voice-archive-list li {
    margin: 0;
    padding: 0;
    position: relative;
    flex: 0 0 250px; }
    @media screen and (max-width: 600px) {
      #voice-archive-list li {
        flex: 0 0 41.333vw; } }
    #voice-archive-list li::before {
      content: none; }
    #voice-archive-list li:hover {
      opacity: 0.8;
      transition: all 300ms ease-in-out; }
    #voice-archive-list li .voice-archive-list--img img {
      width: 100%;
      height: auto; }
    #voice-archive-list li .voice-archive-list--affiliation {
      position: absolute;
      top: 228px;
      left: 20px;
      font-size: 14px;
      font-weight: 700;
      line-height: 1.5;
      letter-spacing: 0;
      color: #FFF;
      padding: 0 0 5px;
      border-bottom: 1px solid #FFF; }
      @media screen and (max-width: 600px) {
        #voice-archive-list li .voice-archive-list--affiliation {
          top: 38.667vw;
          left: 2.667vw;
          font-weight: 400;
          padding-bottom: 0.533vw;
          border-bottom: 0.2667vw solid #FFF;
          font-size: 2.667vw; } }
    #voice-archive-list li .voice-archive-list--name {
      position: absolute;
      top: 259px;
      left: 20px;
      font-size: 12px;
      font-weight: 400;
      line-height: 1.75;
      letter-spacing: 0;
      color: #FFF; }
      @media screen and (max-width: 600px) {
        #voice-archive-list li .voice-archive-list--name {
          top: 44vw;
          left: 2.667vw;
          font-size: 2.667vw;
          line-height: 1.5; } }
    #voice-archive-list li .voice-archive-list--link {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0; }

#voice-interview {
  margin: 0 auto 80px;
  padding: 0; }
  @media screen and (max-width: 600px) {
    #voice-interview {
      margin-bottom: 21.333vw; } }
  #voice-interview h2 {
    text-align: center;
    margin: 0 auto 47px; }
    @media screen and (max-width: 600px) {
      #voice-interview h2 {
        margin-bottom: 8vw; } }

#interview-title {
  display: flex;
  align-items: center;
  background-color: #00559D;
  margin: 0 auto 113px; }
  @media screen and (max-width: 1000px) {
    #interview-title {
      flex-direction: column-reverse;
      padding: 60px;
      gap: 40px; } }
  @media screen and (max-width: 600px) {
    #interview-title {
      margin-bottom: 16vw;
      padding: 0;
      gap: 0; } }
  #interview-title .interview-title-textarea {
    flex: 1 1 450px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 40px;
    color: #FFF; }
    @media screen and (max-width: 1000px) {
      #interview-title .interview-title-textarea {
        flex: auto;
        padding: 0;
        width: 100%; } }
    @media screen and (max-width: 600px) {
      #interview-title .interview-title-textarea {
        padding: 8vw; } }
    #interview-title .interview-title-textarea--catchphrase {
      font-size: 34px;
      font-weight: 700;
      line-height: 1.323;
      /* 132.353% */
      letter-spacing: 0;
      margin: 0 auto 55px;
      text-align: left; }
      @media screen and (max-width: 1000px) {
        #interview-title .interview-title-textarea--catchphrase {
          margin: 0 0 40px; } }
      @media screen and (max-width: 600px) {
        #interview-title .interview-title-textarea--catchphrase {
          font-size: 6.4vw;
          margin-bottom: 6vw; } }
    #interview-title .interview-title-textarea--affiliation {
      font-size: 20px;
      font-weight: 400;
      line-height: 1.5;
      /* 132.353% */
      letter-spacing: 0;
      padding: 0 0 14px;
      margin: 0 0 14px;
      border-bottom: 1px solid #FFF; }
      @media screen and (max-width: 600px) {
        #interview-title .interview-title-textarea--affiliation {
          font-size: 4.267vw;
          padding-bottom: 2.667vw;
          margin-bottom: 2.667vw;
          border-bottom: 0.267vw solid #FFF; } }
    #interview-title .interview-title-textarea--name {
      font-size: 20px;
      font-weight: 400;
      line-height: 1.5;
      /* 132.353% */
      letter-spacing: 0; }
      @media screen and (max-width: 600px) {
        #interview-title .interview-title-textarea--name {
          font-size: 4.267vw; } }
  #interview-title .interview-title-imgarea {
    flex: 0 1 670px; }
    @media screen and (max-width: 1000px) {
      #interview-title .interview-title-imgarea {
        flex: auto;
        width: 100%;
        margin: 0 auto; } }
    #interview-title .interview-title-imgarea img {
      width: 100%;
      height: auto; }

#interview-list {
  counter-reset: qcount;
  margin: 0;
  padding: 0; }
  #interview-list li {
    margin: 0 0 80px;
    padding: 0; }
    @media screen and (max-width: 600px) {
      #interview-list li {
        margin-bottom: 10.667vw; } }
    #interview-list li::before {
      content: none; }
    #interview-list li dl {
      display: grid;
      grid-template-columns: 1.773fr 1fr;
      grid-gap: 20px 40px; }
      @media screen and (max-width: 1000px) {
        #interview-list li dl {
          grid-template-columns: 1.5fr 1fr; } }
      @media screen and (max-width: 600px) {
        #interview-list li dl {
          display: flex;
          flex-direction: column;
          gap: 4vw; } }
      #interview-list li dl .interview-list--question {
        grid-row: 1;
        grid-column: 1;
        font-size: 28px;
        font-weight: 700;
        line-height: 1.5;
        letter-spacing: 0;
        text-align: justify;
        text-justify: inter-ideograph;
        color: #00559D;
        padding: 20px;
        background-color: #F2F5F9;
        overflow: hidden; }
        @media screen and (max-width: 1000px) {
          #interview-list li dl .interview-list--question {
            font-size: 24px;
            grid-column: 1 / 4; } }
        @media screen and (max-width: 600px) {
          #interview-list li dl .interview-list--question {
            font-size: 5.333vw;
            padding: 2.667vw 5.333vw; } }
      #interview-list li dl .interview-list--answer {
        grid-row: 2;
        grid-column: 1;
        font-size: 16px;
        font-weight: 400;
        line-height: 1.5;
        /* 132.353% */
        letter-spacing: 0;
        color: #192C55; }
        @media screen and (max-width: 600px) {
          #interview-list li dl .interview-list--answer {
            font-size: 4.27vw; } }
      #interview-list li dl .interview-list--img {
        grid-row: 1 / 4;
        grid-column: 2; }
        @media screen and (max-width: 1000px) {
          #interview-list li dl .interview-list--img {
            grid-row: 2; } }
        #interview-list li dl .interview-list--img img {
          width: 100%;
          height: auto; }
    #interview-list li:nth-child(even) dl {
      grid-template-columns: 1fr 1.773fr; }
      @media screen and (max-width: 1000px) {
        #interview-list li:nth-child(even) dl {
          grid-template-columns: 1.5fr 1fr; } }
      #interview-list li:nth-child(even) dl .interview-list--question {
        grid-column: 2; }
        @media screen and (max-width: 1000px) {
          #interview-list li:nth-child(even) dl .interview-list--question {
            grid-column: 1/4; } }
      #interview-list li:nth-child(even) dl .interview-list--answer {
        grid-column: 2; }
        @media screen and (max-width: 1000px) {
          #interview-list li:nth-child(even) dl .interview-list--answer {
            grid-column: 1; } }
      #interview-list li:nth-child(even) dl .interview-list--img {
        grid-column: 1; }
        @media screen and (max-width: 1000px) {
          #interview-list li:nth-child(even) dl .interview-list--img {
            grid-column: 2; } }
    #interview-list li:last-child {
      margin-bottom: 0; }

#interview-list dt::before {
  counter-increment: qcount;
  content: "Q" counter(qcount) "：";
  font-size: 28px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  color: #00559D; }
  @media screen and (max-width: 1000px) {
    #interview-list dt::before {
      font-size: 24px; } }
  @media screen and (max-width: 600px) {
    #interview-list dt::before {
      font-size: 5.333vw; } }

#voice-schedule {
  margin: 0 auto 120px;
  padding: 0; }
  @media screen and (max-width: 600px) {
    #voice-schedule {
      margin-bottom: 21.333vw; } }
  #voice-schedule h2 {
    text-align: center;
    margin: 0 auto 60px; }
    @media screen and (max-width: 600px) {
      #voice-schedule h2 {
        margin-bottom: 8vw; } }

#schedule-list {
  margin: 0;
  padding: 0;
  list-style-type: none; }
  #schedule-list li {
    margin: 0 0 54px;
    padding: 0; }
    @media screen and (max-width: 600px) {
      #schedule-list li {
        margin-bottom: 14.4vw; } }
    #schedule-list li::before {
      content: none; }
    #schedule-list li::after {
      content: "";
      position: absolute;
      margin-top: 15px;
      left: 50%;
      transform: translateX(-50%);
      background: url("image/share/icon-arrow-down.svg") no-repeat center center;
      background-size: contain;
      width: 24px;
      height: 24px; }
      @media screen and (max-width: 600px) {
        #schedule-list li::after {
          margin-top: 4vw;
          width: 6.4vw;
          height: 6.4vw; } }
    #schedule-list li div {
      position: relative;
      display: flex;
      align-items: center;
      padding: 28px 30px;
      background-color: #F2F5F9;
      color: #192C55; }
      @media screen and (max-width: 1000px) {
        #schedule-list li div {
          flex-wrap: wrap;
          align-items: flex-start; } }
      @media screen and (max-width: 600px) {
        #schedule-list li div {
          padding: 5.333vw; } }
      #schedule-list li div .schedule-list--time {
        flex: 0 0 64px;
        border-right: 2px solid #FFF;
        font-size: 16px;
        font-weight: 700;
        line-height: 1.5;
        /* 132.353% */
        letter-spacing: 0; }
        @media screen and (max-width: 1000px) {
          #schedule-list li div .schedule-list--time {
            border: none;
            flex: 0 0 70px; } }
        @media screen and (max-width: 600px) {
          #schedule-list li div .schedule-list--time {
            font-size: 4.267vw; } }
      #schedule-list li div .schedule-list--title {
        flex: 0 0 235px;
        margin: 0 0 0 30px;
        font-size: 16px;
        font-weight: 700;
        line-height: 1.5;
        /* 132.353% */
        letter-spacing: 0; }
        @media screen and (max-width: 1000px) {
          #schedule-list li div .schedule-list--title {
            margin-left: 0px;
            flex: 1 1 225px; } }
        @media screen and (max-width: 600px) {
          #schedule-list li div .schedule-list--title {
            font-size: 4.267vw; } }
      #schedule-list li div .schedule-list--text {
        flex: 1 1 auto;
        margin: 0 0 0 30px;
        font-size: 16px;
        font-weight: 400;
        line-height: 1.5;
        /* 132.353% */
        letter-spacing: 0; }
        @media screen and (max-width: 1000px) {
          #schedule-list li div .schedule-list--text {
            border-top: 2px solid #FFF;
            margin: 10px 0 0;
            padding-top: 10px;
            flex: 0 0 100%; } }
        @media screen and (max-width: 600px) {
          #schedule-list li div .schedule-list--text {
            font-size: 4.267vw;
            border-top: 0.533vw solid #FFF;
            margin-top: 2.667vw;
            padding-top: 2.667vw; } }
  #schedule-list li:last-child::after {
    content: none; }

#voice--linkarea {
  text-align: center; }
  #voice--linkarea a {
    text-decoration: none; }

.main-wpcontent .faq-section {
  margin: 0 0 50px;
  padding: 0; }
  @media screen and (max-width: 600px) {
    .main-wpcontent .faq-section {
      margin-top: 18.667vw;
      margin-bottom: 18.667vw; } }
  .main-wpcontent .faq-section:last-child {
    margin-bottom: 0; }
  .main-wpcontent .faq-section__inner h2 {
    text-align: center;
    margin: 0 0 20px; }
    @media screen and (max-width: 600px) {
      .main-wpcontent .faq-section__inner h2 {
        margin-bottom: 6vw; } }

.main-wpcontent .faq-list > li dl .faq-list--question, .main-wpcontent .faq-list > li dl .faq-list--answer {
  display: flex;
  gap: 0 15px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  word-break: break-word;
  text-align: justify;
  text-justify: inter-ideograph;
  color: #00559D;
  padding: 10px;
  background-color: #F2F5F9;
  overflow: hidden; }
  @media screen and (max-width: 600px) {
    .main-wpcontent .faq-list > li dl .faq-list--question, .main-wpcontent .faq-list > li dl .faq-list--answer {
      font-size: 4.237vw;
      gap: 0 4vw;
      padding: 2.667vw; } }
  .main-wpcontent .faq-list > li dl .faq-list--question::before, .main-wpcontent .faq-list > li dl .faq-list--answer::before {
    content: "Q";
    align-self: flex-start;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    flex: 0 0 40px;
    height: 40px;
    background-color: #00559D;
    border-radius: 100px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0;
    color: #FFF; }
    @media screen and (max-width: 600px) {
      .main-wpcontent .faq-list > li dl .faq-list--question::before, .main-wpcontent .faq-list > li dl .faq-list--answer::before {
        flex: 0 0 10.667vw;
        height: 10.667vw;
        border-radius: 26.667vw;
        font-size: 4.267vw; } }

.main-wpcontent .faq-text {
  text-align: center;
  margin: 0 auto 40px; }
  @media screen and (max-width: 600px) {
    .main-wpcontent .faq-text {
      margin-bottom: 8vw; } }
.main-wpcontent .faq-list {
  margin: 0 0 60px;
  padding: 0; }
  @media screen and (max-width: 600px) {
    .main-wpcontent .faq-list {
      margin-bottom: 10.667vw; } }
  .main-wpcontent .faq-list > li {
    margin: 0 0 40px;
    padding: 0; }
    .main-wpcontent .faq-list > li:last-child {
      margin: 0; }
    .main-wpcontent .faq-list > li::before {
      content: none; }
    .main-wpcontent .faq-list > li dl {
      margin: 0; }
      .main-wpcontent .faq-list > li dl .faq-list--question {
        align-items: center;
        margin: 0; }
      .main-wpcontent .faq-list > li dl .faq-list--answer {
        background-color: #FFF;
        font-weight: 400;
        color: #192C55; }
        .main-wpcontent .faq-list > li dl .faq-list--answer p {
          margin: 8px 0 0; }
          @media screen and (max-width: 600px) {
            .main-wpcontent .faq-list > li dl .faq-list--answer p {
              margin-top: 0; } }
        .main-wpcontent .faq-list > li dl .faq-list--answer::before {
          content: "A";
          background-color: #FFF;
          color: #00559D;
          border: 1px solid #00559D; }

/*
//tahnks
#thanks {
  p {
    font-size: round($f_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 section {
  margin-top: 0;
  padding-top: 0; }
#main-wpcontent .wpcf7-form p {
  margin-bottom: 0; }
#main-wpcontent .wpcf7-form dt p {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 5px; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form dt p {
      gap: 0 1.333vw; } }
#main-wpcontent .wpcf7-form em {
  padding: 0 20px;
  background-color: #00559D;
  color: #FFF;
  border-radius: 20px;
  font-size: 14px;
  font-style: normal; }
  #main-wpcontent .wpcf7-form em.contactform-optional {
    background-color: #FFF;
    color: #00559D;
    border: 1px solid #00559D; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form em {
      padding: 0 5.333vw;
      border-radius: 5.333vw;
      font-size: 3.733vw; } }
#main-wpcontent .wpcf7-form span.contactform-note {
  color: #E72418; }
#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 {
  background-color: #FFF;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  padding: 14px 15px;
  box-sizing: border-box;
  width: 100%;
  border: 1px solid #00559D; }
  @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; } }
@media screen and (max-width: 600px) {
  #main-wpcontent .wpcf7-form textarea.contactform-highschool, #main-wpcontent .wpcf7-form textarea.contactform-college, #main-wpcontent .wpcf7-form textarea.contactform-licence {
    height: 80vw; } }
#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 #192C55;
    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 #D9D9D9; }
#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 #00559D;
  border-bottom: 3px solid #00559D;
  -webkit-transform: translate(0, -0.2em) rotate(-45deg);
  transform: translate(0, -0.2em) rotate(-45deg); }
#main-wpcontent .wpcf7-form .wpcf7-not-valid-tip {
  display: block; }
#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 #00559D;
      background-color: #FFF;
      width: 1.1em;
      height: 1.1em;
      border-radius: 50%;
      box-sizing: border-box; }
  #main-wpcontent .wpcf7-form input[type="radio"]:focus ~ .wpcf7-list-item-label::before {
    box-shadow: 0 0 3px 1px inset #00559D; }
  #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 #00559D;
    background-color: #00559D;
    width: 0.7em;
    height: 0.7em;
    border-radius: 50%;
    box-sizing: border-box; }
#main-wpcontent .wpcf7-form .contactform-submit__outer {
  text-align: center;
  margin: 100px 0 0; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form .contactform-submit__outer {
      margin-top: 26.667vw; } }
  #main-wpcontent .wpcf7-form .contactform-submit__outer p {
    text-align: center;
    justify-content: center; }
#main-wpcontent .wpcf7-form input[type="submit"] {
  font-size: 14px;
  line-height: 1;
  font-weight: 700;
  color: #192C55;
  background-color: #FFF;
  border: 1px solid #00559D;
  border-radius: 9999px;
  display: inline-block;
  padding: 15px 25px;
  box-sizing: border-box;
  text-decoration: none;
  transition: all 300ms ease-in-out; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form input[type="submit"] {
      font-size: 3.733vw;
      padding: 4vw 6.667vw;
      min-width: inherit; } }
  #main-wpcontent .wpcf7-form input[type="submit"]:hover {
    color: #FFF;
    background-color: #00559D; }
  #main-wpcontent .wpcf7-form input[type="submit"]:disabled {
    color: #D9D9D9;
    border-color: #D9D9D9; }
    #main-wpcontent .wpcf7-form input[type="submit"]:disabled:hover {
      color: #D9D9D9;
      background-color: #FFF; }
#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; }

#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 #00559D; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form .dPrivacy {
      margin: 8vw 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: #00559D;
    border-radius: 1px; }
  #main-wpcontent .wpcf7-form .dPrivacy li::before {
    content: none; }
  #main-wpcontent .wpcf7-form .dPrivacy > p {
    margin-bottom: 1.75em; }

/*==============================================
◆70：WordPress専用
==============================================*/
.main-wpcontent {
  text-align: justify;
  font-size: 16px;
  line-height: 1.5;
  max-width: 1200px;
  padding: 0; }
  @media screen and (max-width: 600px) {
    .main-wpcontent {
      font-size: 4.267vw; } }
  .main-wpcontent section {
    scroll-margin-top: 120px;
    /* 固定ヘッダーの高さ分をスクロールオフセットに */ }
    @media screen and (max-width: 600px) {
      .main-wpcontent section {
        margin-top: 18.667vw; } }

/* 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.267vw !important; } }

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

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

.wp-block-media-text {
  margin: 40px 0; }
  @media screen and (max-width: 600px) {
    .wp-block-media-text {
      margin: 8vw 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: 4vw;
      margin-bottom: 4vw; } }
  .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: 14px;
    margin-top: 10px;
    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: 50px; }
  @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(0deg, #00559d, rgba(0, 85, 157, 0.3) 60%, transparent); }

.wp-block-quote cite {
  font-size: 14px; }
.wp-block-quote.is-style-plain {
  border: none;
  background-color: #00559D;
  color: #FFF; }
  .wp-block-quote.is-style-plain a {
    color: #FFF; }

.wp-block-pullquote {
  border: 1px solid #000000;
  background-color: #FFF;
  -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: 4vw;
      margin-bottom: 4vw;
      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 cite {
      font-size: 14px; }

.main-wpcontent .wp-block-footnotes {
  border: 2px solid #00559D;
  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 #00559D; }
  @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: #00559D;
    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 {
  text-decoration: none; }
  .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: 8vw;
      margin-bottom: 10.667vw; } }
  .wp-block-columns:first-child {
    margin-top: 0; }
  .wp-block-columns:last-child {
    margin-bottom: 0; }

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

.wp-block-column {
  box-sizing: border-box; }
  .wp-block-column > :first-child {
    margin-top: 0; }
  .wp-block-column > :last-child {
    margin-bottom: 0; }

.wp-block-group.has-background {
  padding: 2em 1em; }
  .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: 8vw; } }
  .wp-block-table table {
    width: auto; }
  .wp-block-table thead {
    border-bottom: 1px solid #CCC; }
  .wp-block-table th, .wp-block-table td {
    border: 1px solid #CCC;
    padding: 10px; }
    @media screen and (max-width: 600px) {
      .wp-block-table th, .wp-block-table td {
        padding: 2.667vw; } }
  .wp-block-table th {
    background-color: #00559D;
    color: #FFF;
    font-weight: 400; }
  .wp-block-table td {
    color: #192C55; }
  .wp-block-table th + th,
  .wp-block-table th + td,
  .wp-block-table td + td {
    border-left: 1px solid #CCC; }
  .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 #CCC; }
    .wp-block-table.is-style-stripes td {
      background-color: transparent; }
    .wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
      background-color: transparent; }
    .wp-block-table.is-style-stripes tbody tr:nth-child(even) {
      background-color: #F2F5F9; }
    .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 #CCC; }
  .wp-block-table figcaption {
    font-size: 14px;
    margin-top: 5px;
    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; }
  @media screen and (max-width: 600px) {
    .wp-block-buttons {
      margin-top: 4vw;
      margin-bottom: 4vw; } }

.wp-block-button__link {
  position: relative;
  font-size: 14px;
  font-weight: 400;
  line-height: 2;
  color: #FFF;
  background-color: #00559D;
  border: 1px solid #00559D;
  display: inline-block;
  padding: 5px 50px;
  box-sizing: border-box; }
  @media screen and (max-width: 600px) {
    .wp-block-button__link {
      font-size: 3.733vw;
      padding: 1.333vw 13.333vw;
      min-width: inherit; } }
  .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 {
    display: inline-block;
    content: "";
    margin-left: 10px;
    line-height: 1;
    width: 1.25em;
    height: 1.25em;
    vertical-align: text-bottom;
    -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; }
    @media screen and (max-width: 600px) {
      .wp-block-button__link::after {
        margin-left: 2.667vw; } }

.wp-block-buttons .is-style-outline > .wp-block-button__link {
  padding: 5px 50px;
  background-color: #FFF;
  border: 1px solid #00559D; }
  @media screen and (max-width: 600px) {
    .wp-block-buttons .is-style-outline > .wp-block-button__link {
      border-radius: 5.333vw;
      padding: 1.333vw 13.333vw;
      min-width: inherit; } }
  .wp-block-buttons .is-style-outline > .wp-block-button__link:not(.has-text-color) {
    color: #00559D; }

.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: #00559D;
  font-size: 14px;
  font-weight: 400;
  line-height: 2;
  color: #FFF;
  text-decoration: none;
  border-radius: 20px;
  padding: 5px 30px;
  box-sizing: border-box; }
  @media screen and (max-width: 600px) {
    .wp-block-file .wp-block-file__button {
      font-size: 3.733vw;
      border-radius: 5.333vw;
      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: #00559D;
    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 #00559D; }
    @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: #00559D;
    color: #FFF; }
  .wp-pagenavi .current {
    border: none;
    background-color: #00559D;
    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%;
        }
    */ } }
