/* html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; overflow-wrap: break-word; }
body { line-height: 1; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
nav ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
a { margin: 0; padding: 0; vertical-align: baseline; background: transparent; text-decoration: none; color: #1a1a1a; }

/* change colours to suit your needs */
ins { background-color: #ff9; color: #000; text-decoration: none; }

/* change colours to suit your needs */
mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }
table { border-collapse: collapse; border-spacing: 0; }

/* change border colour to suit your needs */
hr { display: block; height: 1px; border: 0; border-top: 1px solid #cccccc; margin: 1em 0; padding: 0; }
input, select { vertical-align: middle; }
img { max-width: 100%; height: auto; }
html { scroll-behavior: smooth; }
body:not(.recruit) { font-family: 'Noto Serif JP', serif; letter-spacing: 0.05em; font-weight: 500; }
.content { position: relative; background-color: #ffffff; max-width: 1200px; margin: auto; }
.list-point-none { list-style-type: none; }
*, :after, :before { box-sizing: border-box; }

@media print, screen and (min-width: 767.98px) and (max-width: 1020.98px) {
  .content { padding-left: 20px; padding-right: 20px; }
}

@media print, screen and (max-width: 767.98px) {
  .content { padding-left: 20px; padding-right: 20px; }
}

/* 言語切り替え */
@media print, screen and (min-width: 1200.98px) {
  .language { font-size: 14px; margin-right: 30px; }
  a[data-stt-changelang] { color: #999; }
  a[data-stt-active] { font-weight: 700; color: #000; pointer-events: none; border-bottom: 1px solid #999999; padding-bottom: 5px; }
}

@media print, screen and (max-width: 1200.98px) {
  .language { font-size: 14px; margin: 0px auto 120px; }
  a[data-stt-changelang] { color: #999; }
  a[data-stt-active] { font-weight: 700; color: #000; pointer-events: none; border-bottom: 1px solid #999999; padding-bottom: 5px; }
}

/* メニューバー */
@media print, screen and (min-width: 1200.98px) {
  .navbar { background-color: #ffffff; opacity: 1; border-bottom: 1px solid #ececec; }
  .navbar-nav { height: 80px; display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-between; align-items: center; }
  .navbar-nav-list { display: flex; flex-direction: row; float: right !important; }
  .navbar-nav-list .nav-text { font-size: 14px; line-height: 80px; color: #1a1a1a; list-style: none; font-weight: 600; padding-right: 32px; }
  .navbar-nav-list .nav-text:first-child { padding-left: 32px; }
  .navbar-nav-list .select { padding-bottom: 6px; border-bottom: 1px solid #999999; }
  .onlineshop { width: 170px; margin-right: 30px; }
  .navbar-nav-list .japan { font-size: 12px; line-height: 30px; color: #1a1a1a; list-style: none; font-weight: 400; padding: 0 14px 0 32px; }
  .navbar-nav-list .english { font-size: 12px; line-height: 30px; color: #1a1a1a; list-style: none; font-weight: 400; padding: 0 30px 0 0; }
  .navbar-nav-list .active { font-weight: 700; position: relative; }
  .navbar-nav-list .active:after { content: ''; position: absolute; display: block; width: 17px; border-bottom: 1px solid #999999; left: 28px; }
}

.navbar-sticky { width: 100%; position: sticky; top: 0; z-index: 100; }
.top-logo { width: 182px; height: 26px; margin-left: 30px; }
.globalMenuSp .top-logo { margin: 16px auto 85px; }

@media print, screen and (min-width: 1200.98px) {
  .navbar-sp { display: none !important; }
}

@media print, screen and (max-width: 1200.98px) {
  .top-logo { width: 182px; height: 26px; margin-left: 20px; z-index: 5; }
  .navbar-pc { display: none !important; }
  .navbar { background-color: #ffffff; opacity: 1; border-bottom: 1px solid #ececec; }
  .navbar-nav { height: 60px; display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-between; align-items: center; }
  .navbar-nav-bg { position: absolute; background-color: #ffffff; width: 100%; height: 60px; z-index: 4; }
  .navbar-nav-list .nav-text { font-size: 18px; color: #1a1a1a; list-style: none; font-weight: 600; }
  .onlineshop-sp { width: 170px; margin: 0px auto 30px; }
}

@media print, screen and (max-width: 767.98px) {
  .top-logo { width: 182px; height: 26px; margin-left: 20px; z-index: 5; }
  .navbar-sticky-sp { position: sticky; top: 60px; z-index: 4; background-color: #333333; }
  .navbar-company-title { position: absolute; z-index: 3; width: 100%; line-height: 40px; background: #333333; }
  .navbar-company-title a { font-size: 16px; font-weight: 700; color: #ffffff; margin-left: 24px; }
  .navbar-nav-sp { height: 40px; display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-between; align-items: center; }
  .globalMenuSp-sp a { font-size: 14px; }
}

/* ハンバーガーメニューボタン */
.hamburger { display: block; position: absolute; z-index: 6; right: 20px; width: 18px; height: 10px; cursor: pointer; text-align: center; }
.hamburger span { display: block; position: absolute; width: 18px; height: 1px; background: #1a1a1a; -webkit-transition: 0.3s ease-in-out; -moz-transition: 0.3s ease-in-out; transition: 0.3s ease-in-out; }
.hamburger span:nth-child(2) { top: 8px; }

/* スマホメニューを開いてる時のボタン */
.hamburger.active span:nth-child(1) { top: 4px; background: #1a1a1a; -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); transform: rotate(-45deg); }
.hamburger.active span:nth-child(2) { top: 4px; background: #1a1a1a; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); transform: rotate(45deg); }

/* メニュー背景 */
nav.globalMenuSp { position: fixed; z-index: 2; top: 60px; left: 0; color: #1a1a1a; background: #ffffff; text-align: center; width: 100%; transform: translateY(-100%); transition: all 0.6s; }
nav.globalMenuSp ul { margin: 0 auto; padding: 0; width: 100%; }
nav.globalMenuSp ul li { list-style-type: none; padding: 0; width: 100%; transition: 0.4s all; }
nav.globalMenuSp ul li:last-child { margin-bottom: 76px; }

/* nav.globalMenuSp ul li:hover{
  background :#ddd;
} */
nav.globalMenuSp ul li a { display: block; color: #1a1a1a; padding: 15px 0; text-decoration: none; }

/* クリックでjQueryで追加・削除 */
nav.globalMenuSp.active { opacity: 100; display: block; transform: translateY(0%); border-bottom: 1px solid #f5f5f5; }

/* companyハンバーガーメニューボタン */
.hamburger-sp { display: block; position: absolute; z-index: 3; right: 14px; width: 12px; height: 6px; cursor: pointer; content: url(/company/img/navbar-arrow.svg); -webkit-transition: 0.3s ease-in-out; -moz-transition: 0.3s ease-in-out; transition: 0.3s ease-in-out; }

/* スマホメニューを開いてる時のボタン */
.hamburger-sp.active { -webkit-transform: rotate(180deg); -moz-transform: rotate(180deg); transform: rotate(180deg); }

/* メニュー背景 */
nav.globalMenuSp-sp { position: fixed; z-index: 2; top: 40px; left: 0; color: #ffffff; background: #333333; width: 100%; transform: translateY(-100%); transition: all 0.6s; }
nav.globalMenuSp-sp ul { margin: 4px auto 0px; padding: 0; width: 100%; }
nav.globalMenuSp-sp ul li { list-style-type: none; padding: 0 0 0 24px; width: 100%; transition: 0.4s all; }
nav.globalMenuSp-sp ul li:last-child { margin-bottom: 50px; }

/* nav.globalMenuSp-sp ul li:hover{
  background :#4D4D4D;
} */
nav.globalMenuSp-sp ul li a { display: block; color: #ffffff; padding: 10px 0; text-decoration: none; }
nav.globalMenuSp-sp ul li a.select { display: block; color: #808080; padding: 10px 0; text-decoration: none; pointer-events: none; }

/* クリックでjQueryで追加・削除 */
nav.globalMenuSp-sp.active { opacity: 100; display: block; transform: translateY(0%); }

/* メインビジュアル */
.top-mainvisual { position: relative; line-height: 0; text-align: center; background: #000; }

@media print, screen and (min-width: 767.98px) {
  .top-text { width: calc(560px + ((100vw - 2000px) / 8) + 30px); color: #ffffff; position: absolute; text-align: left; top: 50%; left: 50%; -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); margin: 0; padding: 160px 0px; font-style: oblique; }
  .top-mainvisual img { width: 100%; max-width: 2000px; opacity: 0.45; }
  .top-mainvisual p { font-size: calc(20px + ((100vw - 2000px) / 1000) * 5); line-height: calc(48px + ((100vw - 2000px) / 1000) * 10); }
}

@media print, screen and (max-width: 767.98px) {
  .top-text { width: calc(542px + ((100vw - 2000px) / 8) + 5px); color: #ffffff; position: absolute; text-align: left; top: 50%; left: 50%; -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); margin: 0; padding: 160px 0px; font-style: oblique; }
  .top-mainvisual img { width: 100%; opacity: 0.45; }
  .top-mainvisual p { font-size: calc(20px + ((100vw - 2000px) / 1000) * 5); line-height: calc(48px + ((100vw - 2000px) / 1000) * 10); }
  .top-text-br { display: none; }
}

@media print, screen and (max-width: 576.98px) {
  .top-text { width: calc(542px + ((100vw - 2000px) / 8) + 5px); color: #ffffff; position: absolute; text-align: left; top: 50%; left: 50%; -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); margin: 0; padding: 160px 0px; font-style: oblique; }
  .top-mainvisual img { width: 100%; opacity: 0.45; }
  .top-mainvisual p { font-size: calc(20px + ((100vw - 2000px) / 1000) * 5); line-height: calc(48px + ((100vw - 2000px) / 1000) * 10); }
  .top-text-br { display: none; }
}

/* 見出し */
h1 { font-size: 22px !important; font-family: 'Noto Serif JP', serif; letter-spacing: 0.05em; font-weight: 700; }
h1::after, .om-h2-border::after { content: url(/company/img/h1-border.svg); display: inline-block; width: 50px; margin-left: 10px; position: relative; top: -8px; }
h2 { font-size: 15px !important; }
h3 { font-size: 15px !important; }
h4 { font-size: 15px !important; }
.fs-libre { font-family: 'Libre Baskerville', serif !important; }

/* フォントサイズ */
.fs-10 { font-size: 10px !important; }
.fs-12 { font-size: 12px !important; }
.fs-13 { font-size: 13px !important; }
.fs-14 { font-size: 14px !important; }
.fs-15 { font-size: 15px !important; }
.fs-16 { font-size: 16px !important; }
.fs-17 { font-size: 17px !important; }
.fs-18 { font-size: 18px !important; }
.fs-20 { font-size: 20px !important; }
.fs-21 { font-size: 21px !important; }
.fs-22 { font-size: 22px !important; }
.fs-24 { font-size: 24px !important; }
.fs-26 { font-size: 26px !important; }
.fs-28 { font-size: 28px !important; }
.fs-30 { font-size: 30px !important; }
.fs-34 { font-size: 34px !important; }
.fs-35 { font-size: 35px !important; }
.fs-46 { font-size: 46px !important; }

@media print, screen and (min-width: 767.98px) {
  .fs-md-16 { font-size: 16px !important; }
  .fs-md-18 { font-size: 18px !important; }
  .fs-md-20 { font-size: 20px !important; }
  .fs-md-25 { font-size: 25px !important; }
  .fs-md-26 { font-size: 26px !important; }
}

/* -- フォントサイズ -- */
.fs-default-text { font-size: 16px !important; line-height: 30px !important; }

/* -- fs-default-textマージン -- */
.fs-default-text.mt-0 { margin-top: calc((30px - 1em) / -2 + 1px) !important; }
.fs-default-text.mt-20 { margin-top: calc(18px - (30px - 1em) / 2) !important; }
.fs-default-text.mt-24 { margin-top: calc(22px - (30px - 1em) / 2) !important; }
.fs-default-text.mt-30 { margin-top: calc(28px - (30px - 1em) / 2) !important; }
.fs-default-text.mt-40 { margin-top: calc(38px - (30px - 1em) / 2) !important; }
.fs-default-text.mb-0 { margin-bottom: calc((30px - 1em) / -2 - 2px) !important; }
.fs-default-text.mb-14 { margin-bottom: calc(12px - (30px - 1em) / 2) !important; }
.fs-default-text.mb-15 { margin-bottom: calc(13px - (30px - 1em) / 2) !important; }
.fs-default-text.mb-16 { margin-bottom: calc(14px - (30px - 1em) / 2) !important; }
.fs-default-text.mb-20 { margin-bottom: calc(18px - (30px - 1em) / 2) !important; }
.fs-default-text.mb-24 { margin-bottom: calc(22px - (30px - 1em) / 2) !important; }
.fs-default-text.mb-26 { margin-bottom: calc(24px - (30px - 1em) / 2) !important; }
.fs-default-text.mb-30 { margin-bottom: calc(28px - (30px - 1em) / 2) !important; }
.fs-default-text.mb-40 { margin-bottom: calc(38px - (30px - 1em) / 2) !important; }
.fs-default-text.mb-50 { margin-bottom: calc(48px - (30px - 1em) / 2) !important; }
.fs-default-text.mb-60 { margin-bottom: calc(58px - (30px - 1em) / 2) !important; }
.fs-default-text.mb-80 { margin-bottom: calc(78px - (30px - 1em) / 2) !important; }
.fs-default-text.mb-90 { margin-bottom: calc(88px - (30px - 1em) / 2) !important; }
.fs-default-text.mb-100 { margin-bottom: calc(98px - (30px - 1em) / 2) !important; }
.fs-default-text.mb-200 { margin-bottom: calc(198px - (30px - 1em) / 2) !important; }

@media print, screen and (min-width: 767.98px) {
  .fs-default-text.mt-md-0 { margin-top: calc((30px - 1em) / -2 + 1px) !important; }
  .fs-default-text.mt-md-30 { margin-top: calc(28px - (30px - 1em) / 2) !important; }
  .fs-default-text.mb-md-0 { margin-bottom: calc((30px - 1em) / -2 - 2px) !important; }
  .fs-default-text.mb-md-20 { margin-bottom: calc(18px - (30px - 1em) / 2) !important; }
  .fs-default-text.mb-md-30 { margin-bottom: calc(28px - (30px - 1em) / 2) !important; }
  .fs-default-text.mb-md-40 { margin-bottom: calc(38px - (30px - 1em) / 2) !important; }
  .fs-default-text.mb-md-60 { margin-bottom: calc(58px - (30px - 1em) / 2) !important; }
  .fs-default-text.mb-md-80 { margin-bottom: calc(78px - (30px - 1em) / 2) !important; }
  .fs-default-text.mb-md-100 { margin-bottom: calc(98px - (30px - 1em) / 2) !important; }
}

/* キャプション */
.img-caption { list-style-type: none; font-size: 12px !important; line-height: 24px !important; margin-top: 14px; }
.img-caption li { font-size: 13px; line-height: 24px; display: list-item !important; text-indent: -1.3em; padding-left: 1.3em; margin-top: 10px !important; }
.img-caption li:before { content: '\25B2' !important; }

/* キャプション下余白 */
.img-caption.mb-60 { margin-bottom: calc(58px - (24px - 1em) / 2) !important; }
.img-caption.mb-md-80 { margin-bottom: calc(78px - (24px - 1em) / 2) !important; }

/* フォント色 */
.fc-red { color: #c80032 !important; }
.fc-error-red { color: #dc0a1e !important; }
.fc-80 { color: #333333 !important; }
.fc-65 { color: #595959 !important; }
.fc-50 { color: #808080 !important; }

/* -- リンク青 -- */
.a_blue { color: #0066cc; text-decoration: none; background-color: transparent; }
.a_under { color: #333333; text-decoration: underline; }
.a_under :hover { color: #cccccc; text-decoration: none; }

/* -- リンク下線なし -- */
.a_content { color: #333333; text-decoration: none; }
.a_content :hover { color: #cccccc; text-decoration: none; }

/* 斜体 */
.fs-oblique { font-style: oblique !important; }

/* 行間 */
.lh-17 { line-height: 17px !important; }
.lh-21 { line-height: 21px !important; }
.lh-22 { line-height: 22px !important; }
.lh-24 { line-height: 24px !important; }
.lh-26 { line-height: 26px !important; }
.lh-27 { line-height: 27px !important; }
.lh-28 { line-height: 28px !important; }
.lh-30 { line-height: 30px !important; }
.lh-32 { line-height: 32px !important; }
.lh-34 { line-height: 34px !important; }
.lh-36 { line-height: 36px !important; }
.lh-38 { line-height: 38px !important; }
.lh-40 { line-height: 40px !important; }
.lh-44 { line-height: 44px !important; }
.lh-45 { line-height: 45px !important; }
.lh-48 { line-height: 48px !important; }
.lh-57 { line-height: 57px !important; }
.lh-58 { line-height: 58px !important; }
.lh-82 { line-height: 82px !important; }

@media print, screen and (min-width: 767.98px) {
  .lh-md-28 { line-height: 28px !important; }
  .lh-md-34 { line-height: 34px !important; }
  .lh-md-44 { line-height: 44px !important; }
}

/* カーニング */
.ls-0 { letter-spacing: 0em; }
.ls-50 { letter-spacing: 0.05em; }
.ls-60 { letter-spacing: 0.06em; }
.ls-125 { letter-spacing: 0.125em; }
.ls-200 { letter-spacing: 0.2em; }

/* 太さ */
.fw-300 { font-weight: 300 !important; }
.fw-400 { font-weight: 400 !important; }
.fw-500 { font-weight: 500 !important; }
.fw-600 { font-weight: 600 !important; }
.fw-700 { font-weight: 700 !important; }

/* マージン */
.mt-10 { margin-top: 10px !important; }
.mt-12 { margin-top: 12px !important; }
.mt-15 { margin-top: 15px !important; }
.mt-16 { margin-top: 16px !important; }
.mt-20 { margin-top: 20px !important; }
.mt-22 { margin-top: 22px !important; }
.mt-24 { margin-top: 24px !important; }
.mt-26 { margin-top: 26px !important; }
.mt-30 { margin-top: 30px !important; }
.mt-40 { margin-top: 40px !important; }
.mt-50 { margin-top: 50px !important; }
.mt-52 { margin-top: 52px !important; }
.mt-55 { margin-top: 55px !important; }
.mt-60 { margin-top: 60px !important; }
.mt-70 { margin-top: 70px !important; }
.mt-72 { margin-top: 72px !important; }
.mt-80 { margin-top: 80px !important; }
.mt-100 { margin-top: 100px !important; }
.mt-120 { margin-top: 120px !important; }
.mt-140 { margin-top: 140px !important; }
.mt-193 { margin-top: 193px !important; }
.mt-200 { margin-top: 200px !important; }
.mb-5 { margin-bottom: 5px !important; }
.mb-8 { margin-bottom: 8px !important; }
.mb-10 { margin-bottom: 10px !important; }
.mb-12 { margin-bottom: 12px !important; }
.mb-15 { margin-bottom: 15px !important; }
.mb-16 { margin-bottom: 16px !important; }
.mb-20 { margin-bottom: 20px !important; }
.mb-22 { margin-bottom: 22px !important; }
.mb-25 { margin-bottom: 25px !important; }
.mb-26 { margin-bottom: 26px !important; }
.mb-30 { margin-bottom: 30px !important; }
.mb-40 { margin-bottom: 40px !important; }
.mb-50 { margin-bottom: 50px !important; }
.mb-55 { margin-bottom: 55px !important; }
.mb-60 { margin-bottom: 60px !important; }
.mb-70 { margin-bottom: 70px !important; }
.mb-80 { margin-bottom: 80px !important; }
.mb-90 { margin-bottom: 90px !important; }
.mb-100 { margin-bottom: 100px !important; }
.mb-120 { margin-bottom: 120px !important; }
.mb-150 { margin-bottom: 150px !important; }
.ml-20 { margin-left: 20px !important; }
.ml-40 { margin-left: 40px !important; }
.ml-50 { margin-left: 50px !important; }
.mr-10 { margin-right: 10px !important; }
.mr-20 { margin-right: 20px !important; }
.mr-50 { margin-right: 50px !important; }
.mr-40 { margin-right: 40px !important; }
.ml-1em { margin-left: 1em !important; }
.ml-1-3em { margin-left: 1.3em !important; }
.ml-1-5em { margin-left: 1.5em !important; }
.ml-2em { margin-left: 2em !important; }
.ml-3em { margin-left: 3em !important; }
.ml-4em { margin-left: 4em !important; }
.ml-5em { margin-left: 5em !important; }
.mr-1em { margin-right: 1em !important; }
.ml-1-3em { margin-left: 1.3em !important; }
.mr-1-5em { margin-right: 1.5em !important; }
.mr-2em { margin-right: 2em !important; }
.mr-3em { margin-right: 3em !important; }
.mr-4em { margin-right: 4em !important; }
.mr-5em { margin-right: 5em !important; }

@media print, screen and (min-width: 767.98px) {
  .mt-md-0 { margin-top: 0px !important; }
  .mt-md-30 { margin-top: 30px !important; }
  .mt-md-50 { margin-top: 50px !important; }
  .mt-md-80 { margin-top: 80px !important; }
  .mt-md-100 { margin-top: 100px !important; }
  .mt-md-120 { margin-top: 120px !important; }
  .mt-md-140 { margin-top: 140px !important; }
  .mb-md-0 { margin-bottom: 0px !important; }
  .mb-md-40 { margin-bottom: 40px !important; }
  .mb-md-50 { margin-bottom: 50px !important; }
  .mb-md-60 { margin-bottom: 60px !important; }
  .mb-md-80 { margin-bottom: 80px !important; }
  .mb-md-100 { margin-bottom: 100px !important; }
  .ml-md-30 { margin-left: 30px !important; }
  .ml-md-40 { margin-left: 40px !important; }
  .ml-md-50 { margin-left: 50px !important; }
  .mr-md-30 { margin-right: 30px !important; }
  .mr-md-50 { margin-right: 50px !important; }
}

.m-auto { margin: 0 auto; }
.ml-auto { margin-left: auto; }
.mr-auto { margin-right: auto; }
.p-10 { padding: 10px; }
.p-20 { padding: 20px; }
.p-30 { padding: 30px; }
.pt-80 { padding-top: 80px !important; }
.pb-10 { padding-bottom: 10px !important; }
.pb-20 { padding-bottom: 20px !important; }
.pb-80 { padding-bottom: 80px !important; }
.pl-10 { padding-left: 10px !important; }
.pl-40 { padding-left: 40px !important; }
.pr-40 { padding-right: 40px !important; }
.lh-22.pt-40 { padding-top: calc(38px - (22px - 1em) / 2) !important; }

@media print, screen and (min-width: 767.98px) {
  .p-md-0 { padding: 0px; }
  .pr-md-50 { padding-right: 50px !important; }
}

.pb-80 { padding-bottom: 80px !important; }
.lh-22.mt-0 { margin-top: calc((22px - 1em) / -2 + 1px) !important; }
.lh-24.mt-0 { margin-top: calc((24px - 1em) / -2 + 1px) !important; }
.lh-26.mt-0 { margin-top: calc((26px - 1em) / -2 + 1px) !important; }
.lh-28.mt-0 { margin-top: calc((28px - 1em) / -2 + 1px) !important; }
.lh-30.mt-0 { margin-top: calc((30px - 1em) / -2 + 1px) !important; }
.lh-32.mt-0 { margin-top: calc((32px - 1em) / -2 + 1px) !important; }
.lh-36.mt-0 { margin-top: calc((36px - 1em) / -2 + 1px) !important; }
.lh-40.mt-0 { margin-top: calc((40px - 1em) / -2 + 1px) !important; }
.lh-44.mt-0 { margin-top: calc((44px - 1em) / -2 + 1px) !important; }
.lh-48.mt-0 { margin-top: calc((48px - 1em) / -2 + 1px) !important; }
.lh-58.mt-0 { margin-top: calc((58px - 1em) / -2 + 1px) !important; }
.lh-20.mt-15 { margin-top: calc(13px - (20px - 1em) / 2) !important; }
.lh-21.mt-15 { margin-top: calc(13px - (21px - 1em) / 2) !important; }
.lh-21.mt-55 { margin-top: calc(53px - (21px - 1em) / 2) !important; }
.lh-22.mt-16 { margin-top: calc(14px - (22px - 1em) / 2) !important; }
.lh-22.mt-20 { margin-top: calc(18px - (22px - 1em) / 2) !important; }
.lh-22.mt-90 { margin-top: calc(88px - (22px - 1em) / 2) !important; }
.lh-24.mt-20 { margin-top: calc(18px - (24px - 1em) / 2) !important; }
.lh-26.mt-17 { margin-top: calc(15px - (26px - 1em) / 2) !important; }
.lh-26.mt-20 { margin-top: calc(18px - (26px - 1em) / 2) !important; }
.lh-26.mt-40 { margin-top: calc(38px - (26px - 1em) / 2) !important; }
.lh-26.mt-60 { margin-top: calc(58px - (26px - 1em) / 2) !important; }
.lh-26.mt-100 { margin-top: calc(98px - (26px - 1em) / 2) !important; }
.lh-28.mt-20 { margin-top: calc(18px - (28px - 1em) / 2) !important; }
.lh-28.mt-30 { margin-top: calc(28px - (28px - 1em) / 2) !important; }
.lh-28.mt-40 { margin-top: calc(38px - (28px - 1em) / 2) !important; }
.lh-28.mt-50 { margin-top: calc(48px - (28px - 1em) / 2) !important; }
.lh-28.mt-60 { margin-top: calc(58px - (28px - 1em) / 2) !important; }
.lh-30.mt-22 { margin-top: calc(20px - (30px - 1em) / 2) !important; }
.lh-30.mt-40 { margin-top: calc(38px - (30px - 1em) / 2) !important; }
.lh-30.mt-55 { margin-top: calc(53px - (30px - 1em) / 2) !important; }
.lh-30.mt-60 { margin-top: calc(58px - (30px - 1em) / 2) !important; }
.lh-30.mt-100 { margin-top: calc(98px - (30px - 1em) / 2) !important; }
.lh-30.mt-200 { margin-top: calc(198px - (30px - 1em) / 2) !important; }
.lh-34.mt-40 { margin-top: calc(38px - (34px - 1em) / 2) !important; }
.lh-34.mt-55 { margin-top: calc(53px - (34px - 1em) / 2) !important; }
.lh-36.mt-60 { margin-top: calc(58px - (36px - 1em) / 2) !important; }
.lh-38.mt-30 { margin-top: calc(28px - (38px - 1em) / 2) !important; }
.lh-40.mt-40 { margin-top: calc(38px - (40px - 1em) / 2) !important; }
.lh-40.mt-50 { margin-top: calc(48px - (40px - 1em) / 2) !important; }
.lh-44.mt-60 { margin-top: calc(58px - (44px - 1em) / 2) !important; }
.lh-44.mt-80 { margin-top: calc(78px - (44px - 1em) / 2) !important; }
.lh-45.mt-23 { margin-top: calc(21px - (45px - 1em) / 2) !important; }
.lh-45.mt-70 { margin-top: calc(68px - (45px - 1em) / 2) !important; }
.lh-58.mt-100 { margin-top: calc(98px - (58px - 1em) / 2) !important; }
.lh-22.mb-0 { margin-bottom: calc((22px - 1em) / -2 - 2px) !important; }
.lh-24.mb-0 { margin-bottom: calc((24px - 1em) / -2 - 2px) !important; }
.lh-26.mb-0 { margin-bottom: calc((26px - 1em) / -2 - 2px) !important; }
.lh-27.mb-0 { margin-bottom: calc((27px - 1em) / -2 - 2px) !important; }
.lh-28.mb-0 { margin-bottom: calc((28px - 1em) / -2 - 2px) !important; }
.lh-30.mb-0 { margin-bottom: calc((30px - 1em) / -2 - 2px) !important; }
.lh-34.mb-0 { margin-bottom: calc((34px - 1em) / -2 - 2px) !important; }
.lh-40.mb-0 { margin-bottom: calc((40px - 1em) / -2 - 2px) !important; }
.lh-17.mb-50 { margin-bottom: calc(48px - (17px - 1em) / 2) !important; }
.lh-20.mb-15 { margin-bottom: calc(13px - (20px - 1em) / 2) !important; }
.lh-21.mb-15 { margin-bottom: calc(13px - (21px - 1em) / 2) !important; }
.lh-21.mb-50 { margin-bottom: calc(48px - (21px - 1em) / 2) !important; }
.lh-22.mb-90 { margin-bottom: calc(88px - (22px - 1em) / 2) !important; }
.lh-24.mb-10 { margin-bottom: calc(8px - (24px - 1em) / 2) !important; }
.lh-24.mb-15 { margin-bottom: calc(13px - (24px - 1em) / 2) !important; }
.lh-24.mb-20 { margin-bottom: calc(18px - (24px - 1em) / 2) !important; }
.lh-24.mb-24 { margin-bottom: calc(22px - (24px - 1em) / 2) !important; }
.lh-26.mb-15 { margin-bottom: calc(13px - (26px - 1em) / 2) !important; }
.lh-26.mb-60 { margin-bottom: calc(58px - (26px - 1em) / 2) !important; }
.lh-26.mb-100 { margin-bottom: calc(98px - (26px - 1em) / 2) !important; }
.lh-28.mb-14 { margin-bottom: calc(12px - (28px - 1em) / 2) !important; }
.lh-28.mb-20 { margin-bottom: calc(18px - (28px - 1em) / 2) !important; }
.lh-28.mb-22 { margin-bottom: calc(20px - (28px - 1em) / 2) !important; }
.lh-28.mb-30 { margin-bottom: calc(28px - (28px - 1em) / 2) !important; }
.lh-28.mb-40 { margin-bottom: calc(38px - (28px - 1em) / 2) !important; }
.lh-28.mb-50 { margin-bottom: calc(48px - (28px - 1em) / 2) !important; }
.lh-28.mb-60 { margin-bottom: calc(58px - (28px - 1em) / 2) !important; }
.lh-28.mb-100 { margin-bottom: calc(98px - (28px - 1em) / 2) !important; }
.lh-28.mb-120 { margin-bottom: calc(118px - (28px - 1em) / 2) !important; }
.lh-30.mb-24 { margin-bottom: calc(22px - (30px - 1em) / 2) !important; }
.lh-30.mb-20 { margin-bottom: calc(18px - (30px - 1em) / 2) !important; }
.lh-30.mb-30 { margin-bottom: calc(28px - (30px - 1em) / 2) !important; }
.lh-30.mb-40 { margin-bottom: calc(38px - (30px - 1em) / 2) !important; }
.lh-30.mb-60 { margin-bottom: calc(58px - (30px - 1em) / 2) !important; }
.lh-30.mb-100 { margin-bottom: calc(98px - (30px - 1em) / 2) !important; }
.lh-32.mb-100 { margin-bottom: calc(98px - (32px - 1em) / 2) !important; }
.lh-36.mb-15 { margin-bottom: calc(13px - (36px - 1em) / 2) !important; }
.lh-36.mb-25 { margin-bottom: calc(23px - (36px - 1em) / 2) !important; }
.lh-36.mb-20 { margin-bottom: calc(18px - (36px - 1em) / 2) !important; }
.lh-36.mb-30 { margin-bottom: calc(28px - (36px - 1em) / 2) !important; }
.lh-36.mb-40 { margin-bottom: calc(38px - (36px - 1em) / 2) !important; }
.lh-38.mb-40 { margin-bottom: calc(38px - (38px - 1em) / 2) !important; }
.lh-40.mb-30 { margin-bottom: calc(28px - (40px - 1em) / 2) !important; }
.lh-40.mb-40 { margin-bottom: calc(38px - (40px - 1em) / 2) !important; }
.lh-40.mb-100 { margin-bottom: calc(98px - (40px - 1em) / 2) !important; }
.lh-40.mb-120 { margin-bottom: calc(118px - (40px - 1em) / 2) !important; }
.lh-40.mb-150 { margin-bottom: calc(148px - (40px - 1em) / 2) !important; }
.lh-44.mb-80 { margin-bottom: calc(78px - (44px - 1em) / 2) !important; }
.lh-45.mb-130 { margin-bottom: calc(128px - (45px - 1em) / 2) !important; }
.lh-48.mb-56 { margin-bottom: calc(54px - (48px - 1em) / 2) !important; }
.lh-58.mb-15 { margin-bottom: calc(13px - (58px - 1em) / 2) !important; }
.lh-58.mb-20 { margin-bottom: calc(18px - (58px - 1em) / 2) !important; }
.lh-58.mb-100 { margin-bottom: calc(98px - (58px - 1em) / 2) !important; }

@media print, screen and (min-width: 767.98px) {
  .lh-md-30.mt-md-0 { margin-top: calc((30px - 1em) / -2 + 1px) !important; }
  .lh-md-34.mt-md-0 { margin-top: calc((34px - 1em) / -2 + 1px) !important; }
  .lh-md-22.mt-md-20 { margin-top: calc(18px - (22px - 1em) / 2) !important; }
  .lh-md-28.mt-md-40 { margin-top: calc(38px - (28px - 1em) / 2) !important; }
  .lh-md-30.mt-md-100 { margin-top: calc(98px - (30px - 1em) / 2) !important; }
  .lh-md-34.mt-md-80 { margin-top: calc(78px - (34px - 1em) / 2) !important; }
  .lh-md-34.mt-md-100 { margin-top: calc(98px - (34px - 1em) / 2) !important; }
  .lh-md-36.mt-md-80 { margin-top: calc(78px - (34px - 1em) / 2) !important; }
  .lh-md-44.mt-md-80 { margin-top: calc(78px - (44px - 1em) / 2) !important; }
  .lh-md-28.mb-md-50 { margin-bottom: calc(48px - (28px - 1em) / 2) !important; }
  .lh-md-28.mb-md-60 { margin-bottom: calc(58px - (28px - 1em) / 2) !important; }
  .lh-md-28.mb-md-80 { margin-bottom: calc(78px - (28px - 1em) / 2) !important; }
  .lh-md-30.mb-md-40 { margin-bottom: calc(38px - (30px - 1em) / 2) !important; }
  .lh-md-34.mb-md-40 { margin-bottom: calc(38px - (34px - 1em) / 2) !important; }
  .lh-md-44.mb-md-100 { margin-bottom: calc(98px - (44px - 1em) / 2) !important; }
  .lh-md-44.mb-md-120 { margin-bottom: calc(118px - (44px - 1em) / 2) !important; }
  .lh-md-44.mb-md-140 { margin-bottom: calc(138px - (44px - 1em) / 2) !important; }
  .lh-28.mt-md-0 { margin-top: calc((28px - 1em) / -2 + 1px) !important; }
  .lh-30.mt-md-0 { margin-top: calc((30px - 1em) / -2 + 1px) !important; }
  .lh-36.mt-md-0 { margin-top: calc((36px - 1em) / -2 + 1px) !important; }
  .lh-30.mt-md-40 { margin-top: calc(38px - (30px - 1em) / 2) !important; }
  .lh-30.mt-md-40 { margin-top: calc(38px - (30px - 1em) / 2) !important; }
  .lh-24.mb-md-30 { margin-bottom: calc(28px - (24px - 1em) / 2) !important; }
  .lh-24.mb-md-54 { margin-bottom: calc(52px - (24px - 1em) / 2) !important; }
  .lh-28.mb-md-60 { margin-bottom: calc(58px - (28px - 1em) / 2) !important; }
  .lh-30.mb-md-80 { margin-bottom: calc(78px - (30px - 1em) / 2) !important; }
}

@media print, screen and (min-width: 767.98px) {
  .w-md-720 { width: 720px; }
}

/* 位置 */
.t-center { text-align: center !important; }
.t-right { text-align: right !important; }
.t-left { text-align: left !important; }
.t-justify { text-align: justify; }

/* 区切り線 */
.border-line-top { border-top: solid #d9d9d9 1px; }
.border-line-bottom { border-bottom: solid #d9d9d9 1px; }
.border-line-right { border-right: solid #d9d9d9 1px; }
.border-line { border-bottom: solid #d9d9d9 1px; }

@media (min-width: 767.98px) {
  .border-line-md-bottom { border-bottom: solid #d9d9d9 1px; }
  .border-line-md-right { border-right: solid #d9d9d9 1px; }
}

@media (max-width: 767.98px) {
  .border-line-sp-bottom { border-bottom: solid #d9d9d9 1px; }
}

/* 横並び */
.fl-box, .fl_box { display: -webkit-flex; display: flex; }
.fl-box-center { display: -webkit-flex; display: flex; justify-content: center; }
.fl-box-start, .fl_box2 { display: flex; flex-wrap: wrap; justify-content: flex-start; }
.fl-box-between { display: -webkit-flex; display: flex; justify-content: space-between; }

/* -- 横並び右から -- */
.reverse-row-order { flex-direction: row-reverse; }
.col-w-30 { width: 30px; }
.col-w-40 { width: 40px; }
.col-w-60 { width: 60px; }
.col-w-100 { width: 100px; }
.col-w-280 { width: 280px; }
.col-w-300 { width: 300px; }
.col-w-flex { flex: 1; }

@media (min-width: 767.98px) {
  .row { display: flex; flex-wrap: wrap; margin-right: -20px; margin-left: -20px; }
  .row-20 { display: flex; flex-wrap: wrap; margin-right: -10px; margin-left: -10px; }
  .fl-md-box { display: -webkit-flex; display: flex; }
  .col-md-w-flex { flex: 1; }
  .col-md-w-30 { flex: 0 0 3.333333333%; max-width: 3.333333333%; }
  .col-md-w-40 { flex: 0 0 4.444444444%; max-width: 4.444444444%; }
  .col-md-w-50 { flex: 0 0 5.555555556%; max-width: 5.555555556%; }
  .col-md-w-60 { flex: 0 0 6.666666667%; max-width: 6.666666667%; }
  .col-md-w-90 { flex: 0 0 10%; max-width: 10%; }
  .col-md-w-240 { flex: 0 0 26.66666667%; max-width: 26.66666667%; }
  .col-md-w-280 { flex: 0 0 31.11111111%; max-width: 31.11111111%; }
  .col-md-w-300 { flex: 0 0 33.33333333%; max-width: 33.33333333%; }
  .col-md-w-370 { flex: 0 0 41.11111111%; max-width: 41.11111111%; }
  .col-md-w-372 { flex: 0 0 41.33333333%; max-width: 41.33333333%; }
  .col-md-w-420 { flex: 0 0 46.66666667%; max-width: 46.66666667%; }
  .col-md-w-430 { flex: 0 0 47.77777778%; max-width: 47.77777778%; }
  .col-md-w-460 { flex: 0 0 51.11111111%; max-width: 51.11111111%; }
  .col-md-w-480 { flex: 0 0 53.33333333%; max-width: 53.33333333%; }
  .col-md-w-500 { flex: 0 0 55.55555556%; max-width: 55.55555556%; }
  .col-md-w-600 { flex: 0 0 66.66666667%; max-width: 66.66666667%; }
  .col-md-w-650 { flex: 0 0 72.22222222%; max-width: 72.22222222%; }
  .col-md-4 { flex: 0 0 33.33333%; max-width: 33.33333%; padding-left: 20px; padding-right: 20px; }
  .col-md-5 { flex: 0 0 41.66667%; max-width: 41.66667%; padding-left: 20px; padding-right: 20px; }
  .col-md-6 { flex: 0 0 50%; max-width: 50%; padding-left: 20px; padding-right: 20px; }
  .col-md-7 { flex: 0 0 58.33333%; max-width: 58.33333%; padding-left: 20px; padding-right: 20px; }
  .col-md-8 { flex: 0 0 66.66667%; max-width: 66.66667%; padding-left: 20px; padding-right: 20px; }
  .no-gutters { margin-right: 0; margin-left: 0; }
  .col-md-6.margin-20 {padding-left: 10px; padding-right: 10px; }
}

/* 幅 */
.w-fit { width: fit-content; }
.w-100 { width: 100% !important; }

@media (min-width: 767.98px) {
  .width-md-360 { width: 360px !important; }
}

@media print, screen and (min-width: 767.98px) {
  .fl-box-md { display: -webkit-flex; display: flex; }
  .fl-box-center-md { display: -webkit-flex; display: flex; justify-content: center; }
}

/* -- PC版表示CSS -- */
@media print, screen and (min-width: 767.98px) {
  .pc_area { display: block; }
  .phone_area { display: none; }
}

/* -- スマホ版表示CSS  -- */
@media screen and (max-width: 767.98px) {
  .pc_area { display: none; }
  .phone_area { display: block; }
}

/* -- 576非表示CSS  -- */
@media print, screen and (max-width: 576.98px) {
  .sp_area { display: none; }
}

/* -- 画像横並び2列 3：2  -- */
@media print, screen and (min-width: 767.98px) {
  .img-2w, .img-text-2w { width: 342px; }
  .img-2w:nth-child(2n + 1), .img-text-2w:nth-child(2n + 1) { margin-right: auto; }
  .img-2w:nth-child(n) { margin-bottom: 60px; }
  .img-2w.mb60:nth-child(n) { margin-bottom: 60px; }
  .img-text-2w:nth-child(n) { margin-bottom: 60px; }
  .img-text-2w.connect-2w { margin-bottom: 30px; }
  .img-2w.wid-200, .img-text-2w.wid-200 { width: 200px !important; }
  .img-2w.wid-295, .img-text-2w.wid-295 { width: 295px !important; }
  .img-2w.wid-300, .img-text-2w.wid-300 { width: 300px !important; }
  .img-2w.wid-318, .img-text-2w.wid-318 { width: 318px !important; }
  .img-2w.wid-330, .img-text-2w.wid-330 { width: 330px !important; }
  .img-2w.wid-340, .img-text-2w.wid-340 { width: 340px !important; }
  .img-2w.wid-360, .img-text-2w.wid-360 { width: 360px !important; }
  .img-2w.wid-480, .img-text-2w.wid-480 { width: 480px !important; }
  .img-2w.wid-auto, .img-text-2w.wid-auto { flex: auto !important; }
}

@media print, screen and (min-width: 576.98px) and (max-width: 767.98px) {
  .img-2w, .img-text-2w { width: 47.5%; }
  .img-2w:nth-child(2n + 1), .img-text-2w:nth-child(2n + 1) { margin-right: auto; }
  .img-2w:nth-child(n) { margin-bottom: 60px; }
  .img-text-2w:nth-child(n) { margin-bottom: 60px; }
  .img-text-2w.connect-2w { margin-bottom: 30px; }
  .img-2w.wid-200, .img-text-2w.wid-200 { width: 27.77777778% !important; }
  .img-2w.wid-295, .img-text-2w.wid-295 { width: 40.97222222% !important; }
  .img-2w.wid-318, .img-text-2w.wid-318 { width: 44.16666667% !important; }
  .img-2w.wid-330, .img-text-2w.wid-330 { width: 45.83333333% !important; }
  .img-2w.wid-340, .img-text-2w.wid-340 { width: 47.22222222% !important; }
  .img-2w.wid-360, .img-text-2w.wid-360 { width: 50% !important; }
  .img-2w.wid-480, .img-text-2w.wid-480 { width: 66.66666667% !important; }
}

@media print, screen and (max-width: 576.98px) {
  .img-2w, .img-text-2w { width: 100%; }
  .img-2w:nth-child(n) { margin-bottom: 60px; }
  .img-2w-last { margin-bottom: 0px; }
  .img-text-2w:nth-child(2n + 1) { margin-bottom: 20px; }
  .img-text-2w:nth-child(2n) { margin-bottom: 40px; }
  .img-text-2w.connect-2w:nth-child(2n-1) { margin-bottom: 20px; }
  .img-text-2w.connect-2w:nth-child(2n) { margin-bottom: 30px; }
  .img-text-2w:nth-last-of-type(-n + 1) { margin-bottom: 0px; }
  .img-2w-last { margin-bottom: 0px !important; }
  .img-2w.img-2w-mb-30 { margin-bottom: 30px !important; }
  .img-2w.img-2w-mb-40 { margin-bottom: 40px !important; }
}

/* ボタン */
.link-button a { display: inline-block; border: 1px solid #cccccc; text-decoration: none; position: relative; }
.link-button-faq a { display: inline-block; border: 1px solid #cccccc; text-decoration: none; position: relative; text-align: center; vertical-align: middle; border-radius: 8px; font-size: 14px; line-height: 16px; padding: 14px 20px 14px 20px; }
.link-button-faq a:hover { border: 1px solid #B3B3B3; }
.recruit-summary-button a { width: 100%; padding: 30px 0; border-radius: 10px; display: inline-block; border: 1px solid #cccccc; transition: 0.5s; }
.recruit-summary-button a:hover { border: 1px solid #B3B3B3; transition: 0.5s; color: #b2b2b2; }

@media print, screen and (min-width: 576.98px) {
  .link_button a { font-size: 12px; line-height: 18px; display: inline-block; background: #F2F2F2; text-decoration: none; position: relative; text-align: center; vertical-align: middle; padding: 12px 20px 12px 20px; transition: 0.5s; }
}

@media screen and (max-width: 576.98px) {
  .link_button a { font-size: 12px; line-height: 18px; display: inline-block; background: #F2F2F2; text-decoration: none; position: relative; text-align: center; vertical-align: middle; padding: 12px 10px 12px 10px; transition: 0.5s; }
}

.link_button a:hover { background: #DFDFDF; text-decoration: none; transition: 0.5s; }
.link_button_mark { font-size: 10px; color: #333; }
.link_button a:hover .link_button_mark { color: #b2b2b2; transition: 0.5s; }

@media print, screen and (min-width: 576.98px) {
  .link-button-wh a { outline: 1px solid #cccccc; outline-offset: -1px; display: inline-block; text-decoration: none; position: relative; text-align: center; vertical-align: middle; padding: 12px 20px 12px 20px; transition: 0.5s; }
  .link-button-bk a { font-family: "FP-HiraKakuProN-W6" !important; letter-spacing: 0.05em; color: #fff; background-color: #333; display: inline-block; text-decoration: none; position: relative; text-align: center; vertical-align: middle; padding: 12px 20px 12px 20px; transition: 0.5s; }
}

@media print, screen and (max-width: 576.98px) {
  .link-button-wh a { outline: 1px solid #cccccc; outline-offset: -1px; display: inline-block; text-decoration: none; position: relative; text-align: center; vertical-align: middle; padding: 12px 10px 12px 10px; transition: 0.5s; }
  .link-button-bk a { font-family: "FP-HiraKakuProN-W6" !important; letter-spacing: 0.05em; color: #fff; background-color: #333; display: inline-block; text-decoration: none; position: relative; text-align: center; vertical-align: middle; padding: 12px 10px 12px 10px; transition: 0.5s; }
}

.link-button-wh a:hover { color: #b2b2b2; outline: 1px solid #333; outline-offset: -1px; transition: 0.5s; }
.link-button-bk a:hover { color: #fff; background-color: #B3B3B3; transition: 0.5s; }

/* ニュース */
@media print, screen and (min-width: 767.98px) {
  .top-news-area { max-width: 920px; margin: 0px auto; }
  .top-news-area-md { margin-left: 60px; margin-right: 60px; }
  .top-news-fl-box { display: -webkit-flex; display: flex; }
  .top-news-item { padding: 20px 22px; border-bottom: solid #d9d9d9 1px; line-height: 20px; }
  .top-news-item a:hover { color: #6e7882; }
  .top-news-date { font-size: 12px; line-height: 24px; width: 70px; position: relative; top: 1px; }
  .top-news-category { font-size: 12px; width: 130px; height: 100%; text-align: center !important; background-color: #f5f5f5; line-height: 24px; margin: 0px 24px; }
  .top-news-title { font-size: 13px; line-height: 24px; flex: 1; }
  .top-news-more a { text-align: center; vertical-align: middle; border-radius: 8px; font-size: 16px; padding: 16px 19px 16px 29px; margin-top: 30px; }
}

@media print, screen and (max-width: 767.98px) {
  .top-news-area { margin: 0px auto; }
  .top-news-fl-box { display: -webkit-flex; display: flex; flex-wrap: wrap; }
  .top-news-item { padding: 20px 14px; border-bottom: solid #d9d9d9 1px; line-height: 20px; }
  .top-news-item a:hover { color: #6e7882; }
  .top-news-date { font-size: 12px; line-height: 24px; }
  .top-news-category { font-size: 12px; width: 130px; text-align: center !important; background-color: #f5f5f5; line-height: 24px; margin: 0px 16px; }
  .top-news-title { font-size: 13px; margin-top: 12px; flex: 0 0 100%; max-width: 100%; }
  .top-news-more a { text-align: center; vertical-align: middle; border-radius: 8px; font-size: 16px; padding: 11px 19px 11px 29px; margin-top: 24px; }
}

.top-news-more a::after { content: url(/company/img/news-more-mark.svg); display: inline-block; width: 6px; height: 12px; margin-left: 20px; }
.top-news-more a:hover { border: 1px solid #333; }

@media print, screen and (min-width: 767.98px) {
  .news-area { max-width: 800px; margin: 0px auto 140px; }
  .news-area .pagination-container ul { width: 100%; display: flex; justify-content: center; text-align: center; margin-top: 80px; }
  .event-area .pagination-container ul { width: 100%; display: flex; justify-content: center; text-align: center; margin-top: 100px; }
  .news-area .pagination-container li, .event-area .pagination-container li { margin-right: 12px; border: solid #d9d9d9 1px; transition: none; }
  .news-area .pagination-container li a, .event-area .pagination-container li a { display: inline-block; width: 50px; font-size: 14px; line-height: 28px; padding: 0; }
  .news-area .pagination-container .navi-active a, .event-area .pagination-container .navi-active a { color: #fff; background-color: #333; border-color: #333; }
  .news-area .disabled, .event-area .disabled { visibility: hidden; }
  .news-details-area { max-width: 900px; margin: 120px auto 140px; }
  .news-contents-area { max-width: 720px; margin: 0px auto 0px 50px; }
  .news-date { font-size: 13px; line-height: 36px; color: #808080; }
}

@media print, screen and (max-width: 767.98px) {
  .news-area { margin: 50px auto 140px; }
  .news-area .pagination-container ul, .event-area .pagination-container ul { width: 100%; display: flex; justify-content: center; text-align: center; margin-top: 80px; }
  .news-area .pagination-container li, .event-area .pagination-container li { margin-right: 12px; border: solid #d9d9d9 1px; transition: none; }
  .news-area .pagination-container li a, .event-area .pagination-container li a { display: inline-block; width: 50px; font-size: 14px; line-height: 28px; padding: 0; }
  .news-area .pagination-container .navi-active a, .event-area .pagination-container .navi-active a { color: #fff; background-color: #333; border-color: #333; }
  .news-area .disabled, .event-area .disabled { visibility: hidden; }
  .news-details-area { margin: 30px auto 140px; }
  .news-date { font-size: 12px; color: #808080; }
}

/* 関連リンク */

/* @media print,screen and (min-width: 767.98px){
.top-relatedlink-area {max-width: 1020px; margin: 100px auto 120px;}
.top-relatedlink-area-md {margin-left: 30px; margin-right: 30px;}
.cell-relatedlin {width: 260px; margin: 0 30px; text-align: center!important;}
}

@media print,screen and (max-width: 767.98px){
.top-relatedlink-area {margin: 60px auto 100px;}
.cell-relatedlin {width: 260px; text-align: center!important; margin: 0px auto;}
.cell-relatedlin:nth-child(n+1) {margin-top: 60px;}
} */
@media print, screen and (min-width: 567.98px) {
  .top-relatedlink-area { max-width: 900px; margin: 100px auto 120px; display: -webkit-flex; display: flex; }
  .cell-relatedlin { width: 260px; margin: 0; margin-right: 6.666666667%; text-align: center !important; }
  .cell-relatedlin:last-child { margin-right: 0px; }
  .cell-relatedlin:nth-child(n + 1) { margin-top: 0px; }
}

@media print, screen and (max-width: 567.98px) {
  .cell-relatedlin:nth-child(n + 1) { margin-top: 60px; }
}

@media print, screen and (min-width: 567.98px) {
  .top-bottombanner-area { max-width: 900px; margin: 0px auto 120px; }
  .top-bottombanner-area-pc { display: block; }
  .top-bottombanner-area-sp { display: none; }
}

@media print, screen and (max-width: 567.98px) {
  .top-bottombanner-area { margin: 60px auto 80px; }
  .top-bottombanner-area-pc { display: none; }
  .top-bottombanner-area-sp { display: block; }
}

/* フッター */
@media print, screen and (min-width: 767.98px) {
  .footer-copyright { font-size: 10px; line-height: 100px; text-align: center !important; color: #ffffff; background-color: #333; }
}

@media print, screen and (max-width: 767.98px) {
  .footer-copyright { font-size: 10px; line-height: 80px; text-align: center !important; color: #ffffff; background-color: #333; }
}

/* 事業案内 */
.service-onlineshop { width: 230px; margin: 0 auto; }
.service-ce a { text-align: center; vertical-align: middle; border-radius: 8px; font-size: 16px; padding: 16px 19px 16px 29px; margin-top: 50px; font-weight: 700; }
.service-ce a::after { content: url(/company/img/news-more-mark.svg); display: inline-block; width: 6px; height: 12px; margin-left: 10px; }
.service-ce a:hover { border: 1px solid #333; }

@media print, screen and (min-width: 767.98px) {
  .service-area { max-width: 900px; margin: 0px auto 140px; }
  .service-message-area { max-width: 505px; margin: 0px auto 140px auto; }
  .service-message-title { font-size: 26px; letter-spacing: 0.125em; font-weight: 500; }
  .service-message-text { font-size: 16px; line-height: 40px; font-weight: 500; margin-top: 36px; margin-bottom: calc((40px - 1em) / -2 - 2px) !important; }
  .service-content-area { max-width: 800px; margin: 80px auto 0px auto; }
  .cell-service-l { max-width: 250px; margin-right: 40px; }
  .cell-service-r { flex: 1; }
}

@media print, screen and (min-width: 590.98px) and (max-width: 767.98px) {
  .service-area { margin: 0px auto 100px; }
  .service-message-area { width: 474px; padding: 0 30px; margin: 0px auto 100px auto; }
  .service-message-title { font-size: 26px; letter-spacing: 0.125em; font-weight: 500; }
  .service-message-text { font-size: 15px; line-height: 34px; font-weight: 500; margin-top: 36px; margin-bottom: calc((40px - 1em) / -2 - 2px) !important; }
  .service-content-area { margin: 40px auto 0px auto; }
  .service-content-area-sp { margin: 0px 20px; }
  .cell-service-l { max-width: 250px; margin: 0px auto 30px; }
  .cell-service-r { margin-bottom: 44px; }
}

@media print, screen and (max-width: 590.98px) {
  .service-area { margin: 0px auto 100px; }
  .service-message-area { padding: 0 30px; margin: 0px auto 100px auto; }
  .service-message-title { font-size: 22px; letter-spacing: 0.125em; font-weight: 500; }
  .service-message-text { font-size: 14px; line-height: 34px; font-weight: 500; margin-top: 36px; margin-bottom: calc((40px - 1em) / -2 - 2px) !important; }
  .service-message-text-mi { display: none; }
  .service-content-area { margin: 40px auto 0px auto; }
  .service-content-area-sp { margin: 0px 20px; }
  .cell-service-l { max-width: 250px; margin: 0px auto 30px; }
  .cell-service-r { margin-bottom: 44px; }
}

/* 企業情報 */
.company-category, .company-category-internship { margin: 0 6px; }
.company-category a, .company-category-internship a { text-align: center; vertical-align: middle; border-radius: 19px; border: 1px solid #d9d9d9; font-size: 13px; line-height: 36px; font-weight: 600; padding: 0px 20px; }
.company-category a:hover, .company-category-internship a:hover { border: 1px solid #333; }
.company-category .select, .company-category-internship .select { color: #ffffff; background: #1a1a1a; border: 1px solid #1a1a1a; pointer-events: none; }

@media print, screen and (max-width: 1020.98px) {
  .company-category a { padding: 0px 12px; }
}

@media print, screen and (max-width: 767.98px) {
  .company-category-internship a { width: 100%; margin-bottom: 20px; }
  .company-category a, .company-category-internship a { padding: 0px 0px; }
}

@media print, screen and (min-width: 767.98px) {
  .outline-area { max-width: 900px; margin: 0px auto 140px; }
  .outline-data-area { max-width: 800px; margin: 60px auto 80px auto; font-size: 14px; line-height: 28px; }
  .outline-data-fl-box { display: -webkit-flex; display: flex; }
  .outline-data-l { width: 210px; margin: 15px 70px 15px 12px; font-weight: 600; }
  .outline-data-r { flex: 1; margin: 15px 0px; }
}

@media print, screen and (min-width: 1020.98px) {
  .outline-introduction-l { width: 381px; margin-right: 38px; }
  .outline-introduction-r { width: 381px; }
}

@media print, screen and (min-width: 576.98px) and (max-width: 1020.98px) {
  .outline-introduction-l { width: 47.625%; margin-right: 4.75%; }
  .outline-introduction-r { width: 47.625%; }
}

@media print, screen and (max-width: 767.98px) {
  .outline-area { margin: 0px auto 100px; }
  .outline-data-area { margin: 40px auto 60px auto; font-size: 13px; line-height: 28px; }
}

@media print, screen and (min-width: 576.98px) and (max-width: 767.98px) {
  .outline-data-fl-box { display: -webkit-flex; display: flex; }
  .outline-data-l { width: 194px; margin: 15px 53px 15px 12px; font-weight: 600; }
  .outline-data-r { flex: 1; margin: 15px 0px; }
}

@media print, screen and (max-width: 576.98px) {
  .outline-data-fl-box { display: block; }
  .outline-data-l { margin: 9px 0px 0px 12px; font-weight: 600; font-size: 13px; line-height: 24px; }
  .outline-data-r { margin: 0px 0px 9px 12px; font-size: 13px; line-height: 24px; }
  .outline-introduction-l { width: 100%; margin-bottom: 40px; }
  .outline-introduction-r { width: 100%; margin-bottom: 12px; }
}

#outline-area iframe, #outline object, #outline embed { width: 100%; }

@media print, screen and (min-width: 767.98px) {
  .philosophy-area { max-width: 900px; margin: 0px auto 140px; }
  .philosophy-content-area { max-width: 800px; margin: 0px auto; }
}

@media print, screen and (max-width: 767.98px) {
  .philosophy-area { margin: 0px auto 100px; }
}

.philosophy-content-l { font-size: 16px; line-height: 28px; font-weight: 600; margin-right: 14px; }
.philosophy-content-r { font-size: 14px; line-height: 28px; }

@media print, screen and (min-width: 767.98px) {
  .event-area { max-width: 900px; margin: 0px auto 140px; }
}

@media print, screen and (max-width: 767.98px) {
  .event-area { margin: 0px auto 100px; }
}

@media print, screen and (min-width: 767.98px) {
  .voice-area { max-width: 900px; margin: 0px auto 140px; }
  .voice-thum-area { width: 900px; margin: 0px auto 20px; }
  .voice-thum-fl-box { display: flex; flex-wrap: wrap; justify-content: center; }
  .voice-thum { width: 270px; margin-bottom: 60px; margin-left: 45px; }
  .voice-thum:nth-child(3n + 1) { margin-left: 0px !important; }
}

@media print, screen and (min-width: 576.98px) and (max-width: 767.98px) {
  .voice-area { margin: 0px auto 100px; }
  .voice-thum-area { margin: 0px auto 20px; }
  .voice-thum-fl-box { display: flex; flex-wrap: wrap; justify-content: center; }
  .voice-thum { width: 30%; margin-bottom: 6.666666667%; margin-left: 5%; }
  .voice-thum:nth-child(3n + 1) { margin-left: 0px !important; }
}

@media print, screen and (max-width: 576.98px) {
  .voice-area { margin: 0px auto 100px; }
  .voice-thum-area { margin: 0px auto 80px; }
  .voice-thum-fl-box { display: block; }
  .voice-thum { width: 100%; margin-bottom: 60px; }
}

@media print, screen and (min-width: 767.98px) {
  .voice-thumbnailbanner-img { object-fit: cover;
  width: 100%;
  height: 100%; }
  .voice-thumbnailbanner-copy, .voice-thumbnailbanner-category { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; }
  .voice-thumbnailbanner-text { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
}

/* @media print,screen and (min-width: 767.98px){
.voice-area {max-width: 900px; margin: 0px auto 140px;}
.voice-thum-area {width: 580px; margin: 0px auto 120px;}
.voice-thum-fl-box {display: -webkit-flex; display: flex;}
.voice-thum-l {width: 270px; margin-right: 40px;}
.voice-thum-r {width: 270px;}
}

@media print,screen and (min-width:576.98px) and (max-width: 767.98px){
.voice-area {margin: 0px auto 100px;}
.voice-thum-area {margin: 0px auto 80px;}
.voice-thum-fl-box {display: -webkit-flex; display: flex;}
.voice-thum-l {width: 48.28060523%; margin-right: 3.438789546%;}
.voice-thum-r {width: 48.28060523%;}
}

@media print,screen and (max-width:576.98px){
.voice-area {margin: 0px auto 100px;}
.voice-thum-area {margin: 0px auto 80px;}
.voice-thum-fl-box {display: block;}
.voice-thum-l {width: 100%;}
.voice-thum-r {width: 100%; margin-top: 60px;}
} */
@media print, screen and (min-width: 767.98px) {
  .history-area { max-width: 900px; margin: 0px auto 140px; }
  .history-button a { text-align: center; vertical-align: middle; border-radius: 8px; font-size: 14px; line-height: 20px; letter-spacing: 0; padding: 14px 30px 14px 30px; font-weight: 500; }
}

@media print, screen and (max-width: 767.98px) {
  .history-area { margin: 0px auto 100px; }
  .history-button a { text-align: center; vertical-align: middle; border-radius: 8px; font-size: 13px; line-height: 20px; letter-spacing: 0; padding: 14px 30px 14px 30px; font-weight: 500; }
}

@media print, screen and (min-width: 767.98px) {
  .kitmill-history-area { max-width: 900px; margin: 0px auto 140px; }
  .qt-history-l { max-width: 394px; }
  .qt-history-r { max-width: 394px; margin-left: 12px; }
}

@media print, screen and (max-width: 767.98px) {
  .kitmill-history-area { margin: 0px auto 100px; }
  .qt-history-l { width: 49.25%; }
  .qt-history-r { width: 49.25%; margin-left: 12px; }
}

/* 保守部品.com事業のあゆみ */
@media print, screen and (min-width: 767.98px) {
  .history-img-2w { width: 351px; }
  .history-img-2w:nth-child(2n + 1) { margin-right: 18px; }
  .history-img-2w:nth-child(n) { margin-bottom: 18px; }
  .history-img-2w:nth-last-of-type(-n + 2) { margin-bottom: 0px; }
}

@media print, screen and (min-width: 576.98px) and (max-width: 767.98px) {
  .history-img-2w { width: 48.75%; }
  .history-img-2w:nth-child(2n + 1) { margin-right: 2.5%; }
  .history-img-2w:nth-child(n) { margin-bottom: 2.5%; }
  .history-img-2w:nth-last-of-type(-n + 2) { margin-bottom: 0px; }
}

@media print, screen and (max-width: 576.98px) {
  .history-img-2w { width: 100%; margin-bottom: 2.5%; }
  .history-img-2w:last-child { margin-bottom: 0px; }
}

@media print, screen and (min-width: 767.98px) {
  .message-area, .upbringing-area { max-width: 900px; margin: 0px auto 140px; }
}

/* 創業者メッセージ開閉 */
.grad-wrap { position: relative; }
.grad-wrap + .grad-wrap { margin-top: 40px; }
.grad-trigger { position: absolute; left: 50%; transform: translateX(-50%); bottom: -93px; border: 1px solid #cccccc; border-radius: 8px; font-size: 16px; line-height: 50px; padding: 0 30px; transition: 0.2s ease; cursor: pointer; }
.grad-trigger::after { content: url(/company/img/company/message/message-more.svg); }
.grad-trigger .fa { margin-right: 0.5em; }
.grad-item { position: relative; overflow: hidden; }
.grad-item.is-hide { height: 0px; }
.grad-item::before { display: block; position: absolute; bottom: 0; left: 0; content: ''; width: 100%; }
.grad-trigger.is-show { bottom: -93px; }
.grad-trigger.is-show::after { content: url(/company/img/company/message/message-close.svg); }
.grad-trigger.is-show + .grad-item::before { display: none; }

/* 採用情報 */
.inquiry-area select, .briefing-area select, .experience-area select, .internship-area select, .visit-area select { padding: 1px 8px; width: 100%; height: 39px; }
.inquiry-area input[type='text'], .briefing-area input[type='text'], .experience-area input[type='text'], .internship-area input[type='text'], .visit-area input[type='text'] { padding: 1px 12px; box-sizing: border-box; }
.inquiry-area input[type='radio'], .briefing-area input[type='radio'], .experience-area input[type='radio'], .internship-area input[type='radio'], .visit-area input[type='radio'] { margin: 0 2px 0 0; }

/* .inquiry-area textarea, .briefing-area textarea, .internship-area textarea, .visit-area textarea {padding: 8px 12px 0px; width: calc(100% - 26px);} */
@media print, screen and (min-width: 767.98px) {
  .recruit-area { max-width: 900px; margin: 0px auto 140px; }
  .recruit-data-area { max-width: 800px; margin: 44px auto 120px auto; font-size: 14px; line-height: 28px; }
  .recruit-data-fl-box { display: -webkit-flex; display: flex; }
  .recruit-data-l { width: 140px; margin: 15px 70px 15px 12px; font-weight: 700; }
  .recruit-data-r { flex: 1; margin: 15px 0px; }
  .experience-summary-l { width: 150px; margin: 24px 70px 24px 0px; font-weight: 700; }
  .experience-summary-r { flex: 1; margin: 24px 0px; }
  .recruit-button a { width: 200px; text-align: center; vertical-align: middle; border-radius: 8px; font-size: 16px; padding: 16px 0px 16px 0px; font-weight: 600; line-height: 16px; color: #ffffff; background: #333333; border: 0px; }
  .recruit-button-black a { width: 200px; text-align: center; vertical-align: middle; border-radius: 8px; font-size: 16px; padding: 16px 0px 16px 0px; font-weight: 600; line-height: 16px; color: #ffffff; background: #333333; border: 0px; }
  .recruit-button-white a { font-size: 13px; line-height: 24px; display: inline-block; color: #1a1a1a; border: 1px solid #cccccc; border-radius: 8px; text-decoration: none; position: relative; text-align: center; vertical-align: middle; padding: 13px 20px 12px 20px; }
  .recruit-button-white a:hover { color: #595959; border: 1px solid #595959; text-decoration: none; }
  .recruit-flow-area { max-width: 800px; margin: 0px auto 60px; display: block; }
  .recruit-flow-area-sp { display: none; }
  .recruit-inquiry-area { max-width: 800px; margin: 0px auto 60px; }
  .recruit-fl-box { display: -webkit-flex; display: flex; min-height: 124px; }
  .recruit-fl-box-last { display: -webkit-flex; display: flex; }
  .recruit-fl-box-button { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
  .recruit-fl-l { width: 144px; margin-right: 30px; }
  .recruit-flow-button { width: 144px; background-color: #f5f5f5; border: 1px solid #d9d9d9; line-height: 60px; text-align: center !important; font-size: 16px; font-weight: 700; border-radius: 30px; }
  .recruit-flow-button-last { width: 144px; color: #ffffff; background-color: #333333; line-height: 60px; text-align: center !important; font-size: 16px; font-weight: 700; border-radius: 30px; }
  .recruit-flow { height: 100%; }
  .recruit-flow-border { margin: 0px auto; width: 1px; height: calc(100% - 60px); background-color: #e8e8e8; }
  .recruit-flow-arrow { position: relative; top: calc(-50% + 20px); left: calc(50% - 7.5px); }
  .recruit-fl-r { flex: 1; font-size: 14px; line-height: 28px; margin-top: 16px; }
  .recruit-fl-r-last { flex: 1; font-size: 14px; line-height: 28px; margin-top: 16px; margin-bottom: 0px; }
  .recruit-form-area { margin: 60px 50px 0px; }
  .recruit-form-fl-box { display: -webkit-flex; display: flex; }
  .recruit-form-cell { margin-bottom: 36px; }
  .recruit-form-fl-l { width: 230px; margin-right: 70px; font-size: 15px; line-height: 26px; }
  .recruit-form-fl-r { flex: 1; font-size: 15px; line-height: 26px; }
  .recruit-form-fl-r label { font-size: 13px; line-height: 22px; }
  .recruit-confirm-fl-box { max-width: 800px; display: -webkit-flex; display: flex; margin: 0px 70px 18px 12px; }
  .recruit-confirm-fl-l { width: 230px; margin-right: 70px; font-size: 17px; line-height: 26px; }
  .recruit-confirm-fl-r { flex: 1; font-size: 14px; line-height: 26px; }
  .recruit-data-r { flex: 1; margin: 15px 0px; }
  .form-control { width: 100%; height: 39px; font-size: 15px; border: 1px solid #cccccc; border-radius: 0px; -webkit-appearance: none; }
  .form-control-error { border: 1px solid #dc0a1e !important; }
  textarea.form-control { height: auto; resize: vertical; }
  textarea#webLinks, textarea#motivation, textarea#interest { min-height: 75px !important; padding: 10px 10px;}
  textarea::placeholder { color: #b2b2b2; }
  .inquiry-area, .briefing-area, .experience-area, .internship-area, .visit-area { max-width: 900px; margin: 0px auto 140px; }
  .inquiry-area button, .briefing-area button, .experience-area button, .internship-area button, .visit-area button { width: 320px; text-align: center; vertical-align: middle; border-radius: 28px; font-size: 13px; line-height: 54px; font-weight: 600; color: #ffffff; background: #333333; cursor: pointer; border: 0px; }
  .inquiry-area .form-edit, .briefing-area .form-edit, .experience-area .form-edit, .internship-area .form-edit, .visit-area .form-edit { color: #1a1a1a; background: #f5f5f5; border: 1px solid #cccccc; }
  .inquiry-area .form-submit, .briefing-area .form-submit, .experience-area .form-submit, .internship-area .form-submit, .visit-area .form-submit { margin-left: 20px; }
  .errors-area { font-size: 14px; line-height: 26px; color: #dc0a1e; border: 1px solid #dc0a1e; padding: 24px 30px; margin-bottom: 60px; }
  .errors-area .error { margin-bottom: 8px; }
  .recruit-form-fl-box .accent { accent-color: black; }
  .recruit-summary-area { width: 800px; margin: 0px auto 60px; }
}

@media print, screen and (max-width: 767.98px) {
  .recruit-area { margin: 0px auto 100px; }
  .recruit-data-area { margin: 44px auto 100px auto; font-size: 14px; line-height: 28px; }
  .recruit-button a { width: 200px; text-align: center; vertical-align: middle; border-radius: 8px; font-size: 16px; padding: 16px 0px 16px 0px; font-weight: 600; line-height: 16px; color: #ffffff; background: #1a1a1a; border: 0px; }
  .recruit-button-black a { width: 200px; text-align: center; vertical-align: middle; border-radius: 8px; font-size: 16px; padding: 16px 0px 16px 0px; font-weight: 600; line-height: 16px; color: #ffffff; background: #333333; border: 0px; }
  .recruit-flow-area { margin: 0px 0px 60px 0px; }
  .recruit-inquiry-area { margin: 0px 0px 60px 0px; }
  .recruit-fl-box { display: -webkit-flex; display: flex; min-height: 124px; }
  .recruit-fl-box-last { display: -webkit-flex; display: flex; }
  .recruit-fl-l { width: 144px; margin-right: 30px; }
  .recruit-flow-button { width: 144px; background-color: #f5f5f5; border: 1px solid #d9d9d9; line-height: 60px; text-align: center !important; font-size: 16px; font-weight: 700; border-radius: 30px; }
  .recruit-flow-button-last { width: 144px; color: #ffffff; background-color: #333333; line-height: 60px; text-align: center !important; font-size: 16px; font-weight: 700; border-radius: 30px; }
  .recruit-button-white a { font-size: 13px; line-height: 24px; display: inline-block; color: #1a1a1a; border: 1px solid #cccccc; border-radius: 8px; text-decoration: none; position: relative; text-align: center; vertical-align: middle; padding: 13px 20px 12px 20px; }
  .recruit-button-white a:hover { color: #595959; border: 1px solid #595959; text-decoration: none; }
  .recruit-flow { height: 100%; }
  .recruit-flow-border { margin: 0px auto; width: 1px; height: calc(100% - 60px); background-color: #e8e8e8; }
  .recruit-flow-arrow { position: relative; top: calc(-50% + 20px); left: calc(50% - 7.5px); }
  .recruit-fl-r { flex: 1; font-size: 14px; line-height: 28px; margin-top: 16px; }
  .recruit-fl-r-last { flex: 1; font-size: 14px; line-height: 28px; margin-top: 16px; margin-bottom: 0px; }
  .recruit-fl-l img { vertical-align: bottom; }
  .recruit-fl-r { flex: 1; font-size: 14px; line-height: 28px; margin-top: 16px; }
  .recruit-form-area { margin: 36px 0px 100px; }
  .recruit-form-fl-box {  }
  .recruit-form-cell { margin-bottom: 30px; }
  .recruit-form-fl-l { margin-right: 70px; margin-bottom: 4px; font-size: 15px; line-height: 26px; }
  .recruit-form-fl-r { font-size: 15px; line-height: 26px; }
  .recruit-form-fl-r label { font-size: 13px; line-height: 22px; }
  .form-control { width: 100%; height: 39px; font-size: 15px; border: 1px solid #cccccc; border-radius: 0px; -webkit-appearance: none; }
  .form-control-error { border: 1px solid #dc0a1e !important; }
  textarea.form-control { height: auto; resize: vertical; }
  textarea#webLinks, textarea#motivation { min-height: 75px !important; }
  textarea::placeholder { color: #b2b2b2; }
  .inquiry-area, .briefing-area, .experience-area, .internship-area, .visit-area { margin: 0px auto 140px; appearance: none; }
  .recruit-form-area select { background-color: #ffffff; font-size: 14px; line-height: 28px; color: #1a1a1a; }
  .errors-area { font-size: 14px; line-height: 26px; color: #dc0a1e; border: 1px solid #dc0a1e; padding: 24px 30px; margin-bottom: 60px; }
  .errors-area .error { margin-bottom: 8px; }
  .recruit-form-fl-box .accent { accent-color: black; }
  .recruit-summary-area { margin: 0px 0px 60px 0px; }
}

@media print, screen and (min-width: 576.98px) and (max-width: 767.98px) {
  .recruit-data-fl-box { display: -webkit-flex; display: flex; }
  .recruit-data-l { width: 60px; margin: 15px 70px 15px 12px; font-weight: 700; }
  .recruit-data-r { flex: 1; margin: 15px 0px; }
  .experience-summary-l { width: 80px; margin: 24px 50px 24px 12px; font-weight: 700; }
  .experience-summary-r { flex: 1; margin: 24px 0px; }
  .recruit-flow-area { display: block; }
  .recruit-flow-area-sp { display: none; }
  .recruit-confirm-fl-box { display: -webkit-flex; display: flex; }
  .recruit-confirm-fl-l { width: 18.405777%; margin-right: 9.628610729%; margin-bottom: 6px; font-size: 15px; line-height: 26px; font-weight: 600; }
  .recruit-confirm-fl-r { font-size: 15px; line-height: 26px; }
  .recruit-fl-box-button { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
  .inquiry-area button, .briefing-area button, .experience-area button, .internship-area button, .visit-area button { width: 320px; text-align: center; vertical-align: middle; border-radius: 28px; font-size: 17px; line-height: 54px; font-weight: 300; color: #ffffff; background: #333333; cursor: pointer; border: 0px; }
  .inquiry-area .form-edit, .briefing-area .form-edit, .experience-area .form-edit, .internship-area .form-edit, .visit-area .form-edit { color: #1a1a1a; background: #f5f5f5; border: 1px solid #cccccc; }
  .inquiry-area .form-submit, .briefing-area .form-submit, .experience-area .form-submit, .internship-area .form-submit, .visit-area .form-submit { margin-left: 20px; }
}

@media print, screen and (max-width: 576.98px) {
  .recruit-data-fl-box { display: block; }
  .recruit-data-l { margin: 24px 0px 0px 12px; font-weight: 700; font-size: 13px; line-height: 24px; }
  .recruit-data-r { margin: 0px 0px 24px 12px; font-size: 13px; line-height: 24px; }
  .experience-summary-l { margin: 24px 0px 0px 12px; font-weight: 700; font-size: 14px; line-height: 28px; }
  .experience-summary-r { margin: 0px 0px 24px 12px; font-size: 14px; line-height: 28px; }
  .recruit-flow-area { display: none; }
  .recruit-flow-area-sp { display: block; }
  .recruit-confirm-fl-box { margin-bottom: 24px; }
  .recruit-confirm-fl-l { font-size: 15px; line-height: 26px; font-weight: 600; }
  .recruit-confirm-fl-r { font-size: 15px; line-height: 26px; }
  .recruit-fl-box-button { -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
  .inquiry-area button, .briefing-area button, .experience-area button, .internship-area button, .visit-area button { width: 320px; text-align: center; vertical-align: middle; border-radius: 28px; font-size: 17px; line-height: 54px; font-weight: 300; color: #ffffff; background: #333333; cursor: pointer; border: 0px; }
  .inquiry-area .form-edit, .briefing-area .form-edit, .experience-area .form-edit, .internship-area .form-edit, .visit-area .form-edit { color: #1a1a1a; background: #f5f5f5; border: 1px solid #cccccc; }
  .inquiry-area .form-submit, .briefing-area .form-submit, .experience-area .form-submit, .internship-area .form-submit, .visit-area .form-submit { margin-top: 20px; margin-left: 0px; }
}

.inquiry-area .select, .visit-area .select, .briefing-area .select, .experience-area .select, .internship-area .select { position: relative; border: 1px solid #cccccc; vertical-align: middle; }
.inquiry-area .select select, .visit-area .select select, .briefing-area .select select, .experience-area .select select, .internship-area .select select { appearance: none; border: none; outline: 0; background: #fff; background-image: none; box-shadow: none; text-indent: 0.01px; text-overflow: ellipsis; cursor: pointer; }
.inquiry-area .select::before, .visit-area .select::before, .briefing-area .select::before, .experience-area .select::before, .internship-area .select::before { position: absolute; top: 15px; right: 8px; width: 0; height: 0; border-width: 10px 6px 0 6px; border-style: solid; border-color: #cccccc transparent transparent transparent; content: ''; pointer-events: none; }

@media print, screen and (min-width: 767.98px) {
  .privacy-area { max-width: 900px; margin: 0px auto 140px; }
  .privacy-area ol { margin-left: 2em; }
}

@media print, screen and (max-width: 767.98px) {
  .privacy-area { margin: 0px auto 100px; }
  .privacy-area ol { margin-left: 2em; }
}

/* インターンシップ */
@media print, screen and (min-width: 767.98px) {
  .internship-thum-area { width: 800px; margin: 0px auto 80px; }
  .internship-thum-fl-box { display: -webkit-flex; display: flex; }
  .internship-thum-l { width: 380px; margin-right: 40px; }
  .internship-thum-r { width: 380px; }
}

@media print, screen and (min-width: 576.98px) and (max-width: 767.98px) {
  .internship-thum-area { margin: 0px auto 80px; }
  .internship-thum-fl-box { display: -webkit-flex; display: flex; }
  .internship-thum-l { width: 48.28060523%; margin-right: 3.438789546%; }
  .internship-thum-r { width: 48.28060523%; }
}

@media print, screen and (max-width: 576.98px) {
  .internship-thum-area { margin: 0px auto 80px; }
  .internship-thum-fl-box { display: block; }
  .internship-thum-l { width: 100%; }
  .internship-thum-r { width: 100%; margin-top: 60px; }
}

.btn { font-size: 14px; line-height: 38px; border-radius: 32px; padding: 0 30px; margin-right: 20px; }
.btn-outline { border-color: #d9d9d9; transition: none; letter-spacing: 0.7px; }
.recruit-form-fl-box button { font-size: 14px; line-height: 38px; border-radius: 32px; padding: 0 20px; width: 100%; text-align: center; vertical-align: middle; font-weight: 600; color: #1a1a1a; background: #ffffff; cursor: pointer; border: 1px solid transparent; border-color: #d9d9d9; transition: none; letter-spacing: 0.7px; }
.recruit-form-fl-box .show-filename { font-size: 13px; line-height: 38px; flex-grow: 1; padding-left: 20px; }

/* 採用Q&A動画 */
@media print, screen and (min-width: 767.98px) {
  .recruit-movie { width: 384px; }
  .recruit-movie:nth-child(2n + 1) { margin-right: 32px; }
  .recruit-movie:nth-child(n) { margin-bottom: 60px; }
  .recruit-movie:nth-last-of-type(-n + 2) { margin-bottom: 0px; }
  .recruit-movie-title { font-size: 14px; line-height: 28px; font-weight: 700; margin-top: 14px; }
  .recruit-movie-date { font-size: 14px; color: #808080; text-align: right !important; margin-top: 20px; margin-bottom: 0; }
}

@media print, screen and (min-width: 576.98px) and (max-width: 767.98px) {
  .recruit-movie { width: 46%; }
  .recruit-movie:nth-child(2n + 1) { margin-right: 8%; }
  .recruit-movie:nth-child(n) { margin-bottom: 60px; }
  .recruit-movie:nth-last-of-type(-n + 2) { margin-bottom: 0px; }
  .recruit-movie-title { font-size: 14px; line-height: 28px; font-weight: 700; margin-top: 14px; }
  .recruit-movie-date { font-size: 14px; color: #808080; text-align: right !important; margin-top: 20px; margin-bottom: 0; }
}

@media print, screen and (max-width: 576.98px) {
  .recruit-movie { width: 100%; }
  .recruit-movie:nth-child(n) { margin-bottom: 60px; }
  .recruit-movie:nth-last-of-type(-n + 1) { margin-bottom: 0px; }
  .recruit-movie-title { font-size: 14px; line-height: 28px; font-weight: 700; margin-top: 14px; }
  .recruit-movie-date { font-size: 14px; color: #808080; text-align: right !important; margin-top: 20px; margin-bottom: 0; }
}

.d-none { display: none !important; }
.d-block { display: block !important; }

@media print, screen and (min-width: 767.98px) {
  .d-md-block { display: block !important; }
  .d-md-none { display: none !important; }
}

.youtube { width: 100%; aspect-ratio: 16 / 9; }
.youtube iframe { width: 100%; height: 100%; }
.img_frame { outline: 1px solid #cccccc; outline-offset: -1px; }

@media print, screen and (min-width: 767.98px) {
  .img_frame-md { outline: 1px solid #cccccc; outline-offset: -1px; }
}

@media print, screen and (max-width: 767.98px) {
  .youtube-sp { width: 100%; aspect-ratio: 16 / 9; }
}

/* アンカーリンク ヘッダー位置調整 */
html { scroll-padding-top: 90px; }

/* @media print,screen and (min-width: 767.98px){
#applicationforms {margin-top:-100px!important; padding-top:100px!important;}
#development,#logistics,#recycle,#publicrelations {margin-top:-40px!important; padding-top:40px!important;}
#development-course,#logistics-course,#recycle-course,#publicrelations-course,#seniorvoice {margin-top:-80px!important; padding-top:80px!important;}
}

@media print,screen and (max-width: 767.98px){
#applicationforms {margin-top:-120px!important; padding-top:120px!important;}
#development,#logistics,#recycle,#publicrelations {margin-top:-60px!important; padding-top:60px!important;}
#development-course,#logistics-course,#recycle-course,#publicrelations-course,#seniorvoice {margin-top:-80px!important; padding-top:80px!important;}
} */

/* 目次枠 */
@media print, screen and (min-width: 576.98px) {
  .feature-frame, .entrybox-frame { border: 1px solid #cccccc; padding: 40px 50px; }
}

@media screen and (max-width: 576.98px) {
  .feature-frame, .entrybox-frame { border: 1px solid #cccccc; padding: 30px 30px; }
}

.indent_list { text-indent: -1em; padding-left: 1em; }

/* リストマーク変更 */
.list_point-wrap { list-style: none !important; margin: 0; padding: 0; }
.list_point-wrap li { display: -webkit-box !important; }
.list_point::before { content: '' !important; width: 4px; height: 4px; display: inline-block; background-color: #808080; border-radius: 50%; position: relative; top: -3px; margin-right: 8px; }
.list_point2::before { content: '' !important; width: 4px; height: 4px; display: inline-block; background-color: #333333; border-radius: 50%; position: relative; top: -3px; margin-right: 8px; }
.list-number li { list-style-type: decimal !important; }
.list-number li::before { content: none !important; }

/* 見出しフォントサイズ */
.article .om-h2, .docs .om-h2, .warranty-policy .om-h2 { border-bottom: none !important; padding-bottom: 0px !important; }

@media print, screen and (min-width: 767.98px) {
  .om-h1 { font-size: 34px !important; line-height: 50px !important; letter-spacing: 1px !important; color: #333 !important; }
  .om-h2 { font-size: 28px !important; line-height: 42px !important; letter-spacing: 1px !important; color: #333 !important; }
  .om-h3 { font-size: 24px !important; line-height: 36px !important; letter-spacing: 1px !important; color: #333 !important; }
  .om-h4 { font-size: 22px !important; line-height: 30px !important; letter-spacing: 1px !important; color: #333 !important; }
  .om-h5 { font-size: 17px !important; line-height: 26px !important; letter-spacing: 1px !important; color: #333 !important; }
  .om-h6 { font-size: 14px !important; line-height: 24px !important; letter-spacing: 1px !important; color: #333 !important; }
}

@media print, screen and (max-width: 767.98px) {
  .om-h1 { font-size: 30px !important; line-height: 42px !important; letter-spacing: 1px !important; color: #333 !important; }
  .om-h2 { font-size: 28px !important; line-height: 42px !important; letter-spacing: 1px !important; color: #333 !important; }
  .om-h3 { font-size: 24px !important; line-height: 36px !important; letter-spacing: 1px !important; color: #333 !important; }
  .om-h4 { font-size: 22px !important; line-height: 30px !important; letter-spacing: 1px !important; color: #333 !important; }
  .om-h5 { font-size: 17px !important; line-height: 26px !important; letter-spacing: 1px !important; color: #333 !important; }
  .om-h6 { font-size: 14px !important; line-height: 24px !important; letter-spacing: 1px !important; color: #333 !important; }
}

/* 見出しマージン */
.om-h1.mt-0 { margin-top: calc((50px - 1em) / -2 + 1px) !important; }
.om-h2.mt-0 { margin-top: calc((42px - 1em) / -2 + 1px) !important; }
.om-h3.mt-0 { margin-top: calc((36px - 1em) / -2 + 1px) !important; }
.om-h4.mt-0 { margin-top: calc((30px - 1em) / -2 + 1px) !important; }
.om-h5.mt-0 { margin-top: calc((26px - 1em) / -2 + 1px) !important; }
.om-h6.mt-0 { margin-top: calc((24px - 1em) / -2 + 1px) !important; }
.om-h1.mt-10 { margin-top: calc(8px - (50px - 1em) / 2) !important; }
.om-h2.mt-10 { margin-top: calc(8px - (42px - 1em) / 2) !important; }
.om-h3.mt-10 { margin-top: calc(8px - (36px - 1em) / 2) !important; }
.om-h4.mt-10 { margin-top: calc(8px - (30px - 1em) / 2) !important; }
.om-h5.mt-10 { margin-top: calc(8px - (26px - 1em) / 2) !important; }
.om-h6.mt-10 { margin-top: calc(8px - (24px - 1em) / 2) !important; }
.om-h1.mt-20 { margin-top: calc(18px - (50px - 1em) / 2) !important; }
.om-h2.mt-20 { margin-top: calc(18px - (42px - 1em) / 2) !important; }
.om-h3.mt-20 { margin-top: calc(18px - (36px - 1em) / 2) !important; }
.om-h4.mt-20 { margin-top: calc(18px - (30px - 1em) / 2) !important; }
.om-h5.mt-20 { margin-top: calc(18px - (26px - 1em) / 2) !important; }
.om-h6.mt-20 { margin-top: calc(18px - (24px - 1em) / 2) !important; }
.om-h1.mt-30 { margin-top: calc(28px - (50px - 1em) / 2) !important; }
.om-h2.mt-30 { margin-top: calc(28px - (42px - 1em) / 2) !important; }
.om-h3.mt-30 { margin-top: calc(28px - (36px - 1em) / 2) !important; }
.om-h4.mt-30 { margin-top: calc(28px - (30px - 1em) / 2) !important; }
.om-h5.mt-30 { margin-top: calc(28px - (26px - 1em) / 2) !important; }
.om-h6.mt-30 { margin-top: calc(28px - (24px - 1em) / 2) !important; }
.om-h1.mt-40 { margin-top: calc(38px - (50px - 1em) / 2) !important; }
.om-h2.mt-40 { margin-top: calc(38px - (42px - 1em) / 2) !important; }
.om-h3.mt-40 { margin-top: calc(38px - (36px - 1em) / 2) !important; }
.om-h4.mt-40 { margin-top: calc(38px - (30px - 1em) / 2) !important; }
.om-h5.mt-40 { margin-top: calc(38px - (26px - 1em) / 2) !important; }
.om-h6.mt-40 { margin-top: calc(38px - (24px - 1em) / 2) !important; }
.om-h1.mt-50 { margin-top: calc(48px - (50px - 1em) / 2) !important; }
.om-h2.mt-50 { margin-top: calc(48px - (42px - 1em) / 2) !important; }
.om-h3.mt-50 { margin-top: calc(48px - (36px - 1em) / 2) !important; }
.om-h4.mt-50 { margin-top: calc(48px - (30px - 1em) / 2) !important; }
.om-h5.mt-50 { margin-top: calc(48px - (26px - 1em) / 2) !important; }
.om-h6.mt-50 { margin-top: calc(48px - (24px - 1em) / 2) !important; }
.om-h1.mt-60 { margin-top: calc(58px - (50px - 1em) / 2) !important; }
.om-h2.mt-60 { margin-top: calc(58px - (42px - 1em) / 2) !important; }
.om-h3.mt-60 { margin-top: calc(58px - (36px - 1em) / 2) !important; }
.om-h4.mt-60 { margin-top: calc(58px - (30px - 1em) / 2) !important; }
.om-h5.mt-60 { margin-top: calc(58px - (26px - 1em) / 2) !important; }
.om-h6.mt-60 { margin-top: calc(58px - (24px - 1em) / 2) !important; }
.om-h1.mt-70 { margin-top: calc(68px - (50px - 1em) / 2) !important; }
.om-h2.mt-70 { margin-top: calc(68px - (42px - 1em) / 2) !important; }
.om-h3.mt-70 { margin-top: calc(68px - (36px - 1em) / 2) !important; }
.om-h4.mt-70 { margin-top: calc(68px - (30px - 1em) / 2) !important; }
.om-h5.mt-70 { margin-top: calc(68px - (26px - 1em) / 2) !important; }
.om-h6.mt-70 { margin-top: calc(68px - (24px - 1em) / 2) !important; }
.om-h1.mt-80 { margin-top: calc(78px - (50px - 1em) / 2) !important; }
.om-h2.mt-80 { margin-top: calc(78px - (42px - 1em) / 2) !important; }
.om-h3.mt-80 { margin-top: calc(78px - (36px - 1em) / 2) !important; }
.om-h4.mt-80 { margin-top: calc(78px - (30px - 1em) / 2) !important; }
.om-h5.mt-80 { margin-top: calc(78px - (26px - 1em) / 2) !important; }
.om-h6.mt-80 { margin-top: calc(78px - (24px - 1em) / 2) !important; }
.om-h1.mt-90 { margin-top: calc(88px - (50px - 1em) / 2) !important; }
.om-h2.mt-90 { margin-top: calc(88px - (42px - 1em) / 2) !important; }
.om-h3.mt-90 { margin-top: calc(88px - (36px - 1em) / 2) !important; }
.om-h4.mt-90 { margin-top: calc(88px - (30px - 1em) / 2) !important; }
.om-h5.mt-90 { margin-top: calc(88px - (26px - 1em) / 2) !important; }
.om-h6.mt-90 { margin-top: calc(88px - (24px - 1em) / 2) !important; }
.om-h1.mt-100 { margin-top: calc(98px - (50px - 1em) / 2) !important; }
.om-h2.mt-100 { margin-top: calc(98px - (42px - 1em) / 2) !important; }
.om-h3.mt-100 { margin-top: calc(98px - (36px - 1em) / 2) !important; }
.om-h4.mt-100 { margin-top: calc(98px - (30px - 1em) / 2) !important; }
.om-h5.mt-100 { margin-top: calc(98px - (26px - 1em) / 2) !important; }
.om-h6.mt-100 { margin-top: calc(98px - (24px - 1em) / 2) !important; }
.om-h2.mt-120 { margin-top: calc(118px - (42px - 1em) / 2) !important; }
.om-h2.mt-150 { margin-top: calc(148px - (42px - 1em) / 2) !important; }
.om-h1.pt-100 { padding-top: calc(98px - (50px - 1em) / 2) !important; }
.om-h1.mb-0 { margin-bottom: calc((50px - 1em) / -2 - 2px) !important; }
.om-h2.mb-0 { margin-bottom: calc((42px - 1em) / -2 - 2px) !important; }
.om-h3.mb-0 { margin-bottom: calc((36px - 1em) / -2 - 2px) !important; }
.om-h4.mb-0 { margin-bottom: calc((30px - 1em) / -2 - 2px) !important; }
.om-h5.mb-0 { margin-bottom: calc((26px - 1em) / -2 - 2px) !important; }
.om-h6.mb-0 { margin-bottom: calc((24px - 1em) / -2 - 2px) !important; }
.om-h1.mb-10 { margin-bottom: calc(8px - (50px - 1em) / 2) !important; }
.om-h2.mb-10 { margin-bottom: calc(8px - (42px - 1em) / 2) !important; }
.om-h2.mb-15 { margin-bottom: calc(13px - (42px - 1em) / 2) !important; }
.om-h3.mb-10 { margin-bottom: calc(8px - (36px - 1em) / 2) !important; }
.om-h4.mb-10 { margin-bottom: calc(8px - (30px - 1em) / 2) !important; }
.om-h5.mb-10 { margin-bottom: calc(8px - (26px - 1em) / 2) !important; }
.om-h5.mb-16 { margin-bottom: calc(14px - (26px - 1em) / 2) !important; }
.om-h6.mb-10 { margin-bottom: calc(8px - (24px - 1em) / 2) !important; }
.om-h3.mb-15 { margin-bottom: calc(13px - (36px - 1em) / 2) !important; }
.om-h4.mb-15 { margin-bottom: calc(13px - (30px - 1em) / 2) !important; }
.om-h6.mb-15 { margin-bottom: calc(13px - (24px - 1em) / 2) !important; }
.om-h1.mb-20 { margin-bottom: calc(18px - (50px - 1em) / 2) !important; }
.om-h2.mb-20 { margin-bottom: calc(18px - (42px - 1em) / 2) !important; }
.om-h3.mb-20 { margin-bottom: calc(18px - (36px - 1em) / 2) !important; }
.om-h4.mb-20 { margin-bottom: calc(18px - (30px - 1em) / 2) !important; }
.om-h5.mb-20 { margin-bottom: calc(18px - (26px - 1em) / 2) !important; }
.om-h3.mb-15 { margin-bottom: calc(13px - (36px - 1em) / 2) !important; }
.om-h4.mb-15 { margin-bottom: calc(13px - (30px - 1em) / 2) !important; }
.om-h6.mb-15 { margin-bottom: calc(13px - (24px - 1em) / 2) !important; }
.om-h6.mb-20 { margin-bottom: calc(18px - (24px - 1em) / 2) !important; }
.om-h1.mb-30 { margin-bottom: calc(28px - (50px - 1em) / 2) !important; }
.om-h2.mb-30 { margin-bottom: calc(28px - (42px - 1em) / 2) !important; }
.om-h3.mb-30 { margin-bottom: calc(28px - (36px - 1em) / 2) !important; }
.om-h4.mb-30 { margin-bottom: calc(28px - (30px - 1em) / 2) !important; }
.om-h5.mb-30 { margin-bottom: calc(28px - (26px - 1em) / 2) !important; }
.om-h6.mb-30 { margin-bottom: calc(28px - (24px - 1em) / 2) !important; }
.om-h1.mb-40 { margin-bottom: calc(38px - (50px - 1em) / 2) !important; }
.om-h2.mb-40 { margin-bottom: calc(38px - (42px - 1em) / 2) !important; }
.om-h3.mb-40 { margin-bottom: calc(38px - (36px - 1em) / 2) !important; }
.om-h4.mb-40 { margin-bottom: calc(38px - (30px - 1em) / 2) !important; }
.om-h5.mb-40 { margin-bottom: calc(38px - (26px - 1em) / 2) !important; }
.om-h6.mb-40 { margin-bottom: calc(38px - (24px - 1em) / 2) !important; }
.om-h1.mb-50 { margin-bottom: calc(48px - (50px - 1em) / 2) !important; }
.om-h2.mb-50 { margin-bottom: calc(48px - (42px - 1em) / 2) !important; }
.om-h3.mb-50 { margin-bottom: calc(48px - (36px - 1em) / 2) !important; }
.om-h4.mb-50 { margin-bottom: calc(48px - (30px - 1em) / 2) !important; }
.om-h5.mb-50 { margin-bottom: calc(48px - (26px - 1em) / 2) !important; }
.om-h6.mb-50 { margin-bottom: calc(48px - (24px - 1em) / 2) !important; }
.om-h1.mb-60 { margin-bottom: calc(58px - (50px - 1em) / 2) !important; }
.om-h2.mb-60 { margin-bottom: calc(58px - (42px - 1em) / 2) !important; }
.om-h3.mb-60 { margin-bottom: calc(58px - (36px - 1em) / 2) !important; }
.om-h4.mb-60 { margin-bottom: calc(58px - (30px - 1em) / 2) !important; }
.om-h5.mb-60 { margin-bottom: calc(58px - (26px - 1em) / 2) !important; }
.om-h6.mb-60 { margin-bottom: calc(58px - (24px - 1em) / 2) !important; }
.om-h1.mb-70 { margin-bottom: calc(68px - (50px - 1em) / 2) !important; }
.om-h2.mb-70 { margin-bottom: calc(68px - (42px - 1em) / 2) !important; }
.om-h3.mb-70 { margin-bottom: calc(68px - (36px - 1em) / 2) !important; }
.om-h4.mb-70 { margin-bottom: calc(68px - (30px - 1em) / 2) !important; }
.om-h5.mb-70 { margin-bottom: calc(68px - (26px - 1em) / 2) !important; }
.om-h6.mb-70 { margin-bottom: calc(68px - (24px - 1em) / 2) !important; }
.om-h1.mb-80 { margin-bottom: calc(78px - (50px - 1em) / 2) !important; }
.om-h2.mb-80 { margin-bottom: calc(78px - (42px - 1em) / 2) !important; }
.om-h3.mb-80 { margin-bottom: calc(78px - (36px - 1em) / 2) !important; }
.om-h4.mb-80 { margin-bottom: calc(78px - (30px - 1em) / 2) !important; }
.om-h5.mb-80 { margin-bottom: calc(78px - (26px - 1em) / 2) !important; }
.om-h6.mb-80 { margin-bottom: calc(78px - (24px - 1em) / 2) !important; }
.om-h1.mb-90 { margin-bottom: calc(88px - (50px - 1em) / 2) !important; }
.om-h2.mb-90 { margin-bottom: calc(88px - (42px - 1em) / 2) !important; }
.om-h3.mb-90 { margin-bottom: calc(88px - (36px - 1em) / 2) !important; }
.om-h4.mb-90 { margin-bottom: calc(88px - (30px - 1em) / 2) !important; }
.om-h5.mb-90 { margin-bottom: calc(88px - (26px - 1em) / 2) !important; }
.om-h6.mb-90 { margin-bottom: calc(88px - (24px - 1em) / 2) !important; }
.om-h1.mb-100 { margin-bottom: calc(98px - (50px - 1em) / 2) !important; }
.om-h2.mb-100 { margin-bottom: calc(98px - (42px - 1em) / 2) !important; }
.om-h3.mb-100 { margin-bottom: calc(98px - (36px - 1em) / 2) !important; }
.om-h4.mb-100 { margin-bottom: calc(98px - (30px - 1em) / 2) !important; }
.om-h5.mb-100 { margin-bottom: calc(98px - (26px - 1em) / 2) !important; }
.om-h6.mb-100 { margin-bottom: calc(98px - (24px - 1em) / 2) !important; }
.om-h3.pb-15 { padding-bottom: calc(13px - (36px - 1em) / 2) !important; }
.om-h3.pb-20 { padding-bottom: calc(18px - (36px - 1em) / 2) !important; }

@media print, screen and (min-width: 767.98px) {
  .om-h1.mt-md-100 { margin-top: calc(98px - (50px - 1em) / 2) !important; }
  .om-h4.mt-md-0 { margin-top: calc((30px - 1em) / -2 + 1px) !important; }
  .om-h4.mt-md-30 { margin-top: calc(28px - (30px - 1em) / 2) !important; }
  .om-h4.mt-md-40 { margin-top: calc(38px - (30px - 1em) / 2) !important; }
  .om-h5.mt-md-0 { margin-top: calc((26px - 1em) / -2 + 1px) !important; }
  .om-h6.mt-md-0 { margin-top: calc((24px - 1em) / -2 + 1px) !important; }
  .om-h6.mt-md-40 { margin-top: calc(38px - (24px - 1em) / 2) !important; }
}

/* 特集 サムネ付バナーリンク */
.thumbnailbanner { display: flex; outline: 1px solid #cccccc; outline-offset: -1px; }
a.thumbnailbanner-link:hover { color: #1a1a1a; }
.thumbnailbanner:hover { opacity: 0.8; }

@media print, screen and (min-width: 576.98px) {
  .thumbnailbanner-img { width: 240px; }
  .thumbnailbanner-text { flex: 1; padding: 0 40px; margin: auto 0; }
  .thumbnailbanner-title { font-size: 16px; line-height: 26px; overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  .thumbnailbanner-comment { display: none; }
  .thumbnailbanner-detail { margin-top: 20px; color: #595959 !important; }
}

@media print, screen and (max-width: 576.98px) {
  .thumbnailbanner-img { width: 120px; }
  .thumbnailbanner-img img { width: 100%; height: 120px; object-fit: cover; }
  .thumbnailbanner-text { flex: 1; padding: 0 20px; margin: auto 0; }
  .thumbnailbanner-title { font-size: 14px; line-height: 22px; overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  .thumbnailbanner-comment { display: none; }
  .thumbnailbanner-detail { margin-top: 10px; }
}

/* -- よくあるご質問  -- */
@media print, screen and (min-width: 767.98px) {
  .guide-qa ol { list-style-type: decimal !important; margin: 0px !important; padding-left: 2em !important; }
  .guide-qa li:before { content: '' !important; }
  .guide-qa .qa-list { width: 660px; margin: 0 auto 52px; }
  .guide-qa .qa-list-l { width: 330px; }
  .guide-qa .qa-list-r { width: 330px; }
  .guide-qa p { margin-top: 0px; }
  .guide-qa h3 { padding-top: 19px; padding-bottom: 19px; }
  .guide-qa span { padding-top: 19px; padding-bottom: 19px; }
  .guide-ql { min-width: 26px; margin-right: 24px; margin-top: 20px; margin-bottom: 20px; }
  .guide-qr { margin-top: 21px; margin-bottom: 18px; }
  .guide-al { min-width: 26px; margin-right: 24px; margin-top: 0px; margin-bottom: 40px; }
  .guide-ar { margin-top: 0px; margin-bottom: 32px; }
}

@media screen and (max-width: 767.98px) {
  .guide-qa ol { list-style-type: decimal !important; margin: 0px !important; padding-left: 2em !important; }
  .guide-qa li:before { content: '' !important; }
  .guide-qa .qa-list { margin: 0 auto 52px; }
  .guide-qa .qa-list-l { width: 45%; }
  .guide-qa .qa-list-r { width: 45%; margin-left: 10%; }
  .guide-qa p { margin-top: 0px; }
  .guide-qa h3 { padding-top: 9px; padding-bottom: 9px; }
  .guide-qa span { padding-top: 9px; padding-bottom: 9px; }
  .guide-ql { min-width: 26px; margin-right: 24px; margin-top: 12px; margin-bottom: 12px; }
  .guide-qr { margin-top: 14px; margin-bottom: 16px; }
  .guide-al { min-width: 26px; margin-right: 24px; margin-top: 0px; margin-bottom: 16px; }
  .guide-ar { margin-top: 0px; margin-bottom: 8px; }
}

/* -- 展示会・イベント出展実績  -- */
@media print, screen and (min-width: 567.98px) {
  .top-slides-name { font-size: 25px !important; line-height: 36px !important; letter-spacing: 0.05em !important; margin-bottom: 8px !important; }
  .top-slides-price { font-size: 16px !important; line-height: 28px !important; letter-spacing: 0.05em !important; }
  .event-thumbnail { display: flex; flex-wrap: wrap; }
  .event-thumbnail-col { width: 31.11111111%; margin-left: 3.333333333%; margin-top: 50px; }
  .event-thumbnail-col:nth-child(3n + 1) { margin-left: 0px; }
  .event-thumbnail-col a:hover { opacity: 0.8; }
}

@media print, screen and (max-width: 567.98px) {
  .top-slides-price { font-size: 3.5vmin !important; line-height: 1.4 !important; letter-spacing: 0.05em !important; }
  .top-slides-note { font-size: 3.8vmin !important; line-height: 1.4 !important; letter-spacing: 0.05em !important; margin-bottom: 1.7204301075% !important; }
  .event-thumbnail { display: flex; flex-wrap: wrap; }
  .event-thumbnail-col { width: 100%; margin-top: 50px; }
}

/* フォント */
body.recruit { font-family: "FP-HiraKakuProN-W4" !important; letter-spacing: 0.05em; color: #1a1a1a;}
.om-h1, .om-h2, .om-h3, .om-h4, .om-h5, .om-h6 { font-family: "FP-HiraKakuStdN-W7" !important;}
.font-family-w4 { font-family: "FP-HiraKakuProN-W4" !important; letter-spacing: 0.05em; }
.font-family-w6 { font-family: "FP-HiraKakuProN-W6" !important; letter-spacing: 0.05em; }
.font-family-w7 { font-family: "FP-HiraKakuStdN-W7" !important; letter-spacing: 0.05em; }

.fw-300 { font-family: "\30D2\30E9\30AE\30CE\89D2\30B4   Pro W3", HiraginoCustom, FP-HiraKakuProN-W3, sans-serif !important; letter-spacing: 0.05em; font-weight: 400; }
.om-h1.fw-300, .om-h2.fw-300, .om-h3.fw-300, .om-h4.fw-300, .om-h5.fw-300, .om-h6.fw-300 { font-family: "FP-HiraKakuProN-W3" !important; letter-spacing: 0.05em; font-weight: 400; }

.font-family-Hiragino { font-family: "FP-HiraKakuProN-W3" !important; letter-spacing: 0.05em; }
.font-family-notoserif { font-family: "Noto Serif JP", serif; letter-spacing: 0.05em; font-weight: 400; }
.font-family-notoserif.fw-600 { font-family: "Noto Serif JP", serif !important; letter-spacing: 0.05em; font-weight: 600; }
h1::after { content: none; }

/* ロゴマーク */
.top-logo-recruit { display: flex; z-index: 100; }
.top-logo-recruit img { width: 182px; margin-left: 30px; margin-right: 20px; }

/* 上部メニュー */
.menu-item-has-children > a::after { content: url(/company/img/top-recruit-arrow.svg); position: relative; top: -2px; margin-left: 10px; }
.menu-item-has-children a:hover::after { opacity: 0.5; }
.menu-item-has-children .sub-menu a::before { content: url(/company/img/top-recruit-arrow-right.svg); position: relative; margin-right: 10px; }
.menu-item-has-children .sub-menu a:hover::before { opacity: 0.5; }
nav > ul > li { position: relative; float: left; font-size: 14px; }
nav > ul > li > a { padding: 32px 15px; }
.dropdown { padding: 0px 30px 0px 15px; position: relative; }
nav a { color: #1a1a1a; text-decoration: none; }
nav ul a:hover { color: #b2b2b2; }
nav .sub-menu { position: absolute; width: 180px; background: #ffffff; border-radius: 0 0 6px 6px; border-bottom: 1px solid #ececec; border-left: 1px solid #ececec; border-right: 1px solid #ececec; top: 47px; opacity: 0; visibility: hidden; transition: 0.5s; }
nav .sub-menu a { color: #1a1a1a; padding: 10px 15px; display: block; font-size: 14px; }
nav .sub-menu a:hover { color: #b2b2b2; }
nav .menu-item-has-children:hover ul { opacity: 1; visibility: visible; }
.navbar-hamburger { cursor: pointer; position: fixed; top: 20px; right: 20px; z-index: 1000; }
.navbar-hamburger img:hover { opacity: 0.5; }
.navbar-hamburger-nav { position: fixed; top: 80px; right: 0px; width: 200px; background: #ffffff; border-radius: 0 0 6px 6px; border-bottom: 1px solid #ececec; border-left: 1px solid #ececec; border-right: 1px solid #ececec; opacity: 0; visibility: hidden; transition: 0.2s; }
.navbar-hamburger-nav.active { opacity: 1; visibility: visible; }
.navbar-hamburger-nav ul { list-style: none; margin: 0; }
.navbar-hamburger-nav li:last-child { margin-bottom: 0; }
.navbar-hamburger-nav a { display: block; color: #1a1a1a; font-size: 14px; text-decoration: none; padding: 10px 15px; }
.navbar-hamburger-nav a:hover { color: #b2b2b2; }
.navbar-hamburger-nav a::before { content: url(/company/img/top-recruit-arrow-right.svg); position: relative; margin-right: 10px; }
.navbar-hamburger-nav a:hover::before { opacity: 0.5; }
.navbar-hamburger-nav.active { transform: translateY(0); opacity: 1; pointer-events: auto; }
.navbar-hamburger-nav-sp { max-width: 720px; margin: 0 auto; padding: 0 20px; }
.navbar-hamburger-nav-sp .primary-menu-sp { font-size: 17px; font-weight: 600; padding-top: 30px; padding-bottom: 20px; }
.navbar-hamburger-nav-sp .sub-menu-sp { font-size: 13px; }
.navbar-hamburger-nav-sp .sub-menu-sp::before { content: url(/company/img/top-recruit-arrow-right.svg); position: relative; margin-right: 1em; }
.hamburger-nav-corporate::before { content: url(/company/img/hamburger-nav-corporate.svg); position: relative; top: 2px; margin-right: 5px; }
.hamburger-nav-onlineshop::before { content: url(/company/img/hamburger-nav-onlineshop.svg); position: relative; top: 2px; margin-right: 5px; }

@media print, screen and (max-width: 480.98px) {
  .globalMenuSp { height: 100%; overflow: auto; padding-bottom: 50px; }
}

/* トップスライド */
@media print, screen and (min-width: 767.98px) {
  .fl-box-center { display: flex; flex-wrap: wrap; justify-content: flex-start; max-width: 900px; margin: 0 auto; }
  .company-category { width: 22.22222222%; margin: 0px; }
  .company-category:nth-child(n) { margin-right: 3.703703333%; margin-bottom: 20px; }
  .company-category:nth-child(4n) { margin-right: 0px; }
  .company-category:nth-last-of-type(-n + 4) { margin-bottom: 0px; }
  .company-category a { text-align: center; vertical-align: middle; border-radius: 19px; border: 1px solid #e8e8e8; font-size: 13px; line-height: 36px; font-weight: 600; width: 100%; padding: 0px 0px; }
}

.recruit-top-mainvisual-bg { background: #333; }
.recruit-top-mainvisual { max-width: 1200px; aspect-ratio: 1800 / 900; overflow: hidden; margin: 0 auto; position: relative; }
.recruit-top-mainvisual img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }

/* 動画スタートボタン表示 */
.embed-youtube { position: relative; cursor: pointer; }
.embed-youtube-endframe, .embed-youtube-startframe { position: absolute; top: 0; left: 0; transition-timing-function: linear; transition-duration: 0.5s; transition-property: opacity; }
.embed-youtube-endframe-background { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #000; }
.embed-youtube-endframe, .embed-youtube-endframe img, .embed-youtube-endframe picture, .embed-youtube-startframe, .embed-youtube-startframe img, .embed-youtube-startframe picture, .embed-youtube video { width: 100%; }
.embed-youtube-hidden { opacity: 0; pointer-events: none; }
.embed-youtube-play { position: absolute; color: #fff; font-weight: 700; width: 100%; height: 100%; top: 0; left: 0; display: flex; flex-direction: column; justify-content: center; }
.embed-youtube-play img { width: auto; }
.embed-youtube-play { top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); width: 110px; }

/* バナー切り替え */
.banner-on-box { position: relative; }
.banner-on-box .active { position: absolute; left: 0; top: 0; opacity: 0; transition: 0.5s; }
.banner-on-box:hover .active { opacity: 1; transition: 0.5s; }

/* 環境を知るスライド */
.carousel { position: relative; width: 100%; max-width: 1400px; margin: 0 auto; padding-bottom: 50px; overflow: hidden; }
.carousel-list { position: relative; width: 100%; height: 460px; }
.carousel-item { position: absolute; top: 50%; left: 50%; width: 700px; height: 460px; transform: translate(-50%, -50%); opacity: 0; z-index: 1; transition: left 0.5s ease, transform 0.5s ease, width 0.5s ease, height 0.5s ease, opacity 0.5s ease; }
.carousel-item img { display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 12px; }

/* 中央 */
.carousel-item.active { left: 50%; width: 700px; height: 460px; transform: translate(-50%, -50%); opacity: 1; z-index: 3; }

/* 左 */
.carousel-item.prev { left: 25%; width: 520px; height: 330px; transform: translate(-50%, -50%); opacity: 1; z-index: 2; filter: brightness(0.6); }

/* 右 */
.carousel-item.next { left: 75%; width: 520px; height: 330px; transform: translate(-50%, -50%); opacity: 1; z-index: 2; filter: brightness(0.6); }

/* 矢印 */
.carousel-prev, .carousel-next { position: absolute; top: 50%; z-index: 10; width: 55px; height: 55px; border: 0; border-radius: 50%; background: #fff; color: #808080; font-size: 24px; cursor: pointer; transform: translateY(-50%); }
.carousel-prev { left: 3%; }
.carousel-next { right: 3%; }
.carousel-prev:hover, .carousel-next:hover { background: #eee; }

/* ドット */
.carousel-dots { position: absolute; bottom: 5px; left: 50%; display: flex; gap: 10px; transform: translateX(-50%); }
.carousel-dot { width: 10px; height: 10px; padding: 0; border: 0; border-radius: 50%; background: #ccc; cursor: pointer; }
.carousel-dot.active { width: 28px; border-radius: 10px; background: #222; }

@media screen and (max-width: 767px) {
  .carousel { padding-bottom: 40px; }
  .carousel-list { height: 250px; }
  .carousel-item { width: 80%; height: 220px; }
  .carousel-item.active { width: 80%; height: 100%; }
  .carousel-item.prev { left: 5%; width: 55%; height: 80%; }
  .carousel-item.next { left: 95%; width: 55%; height: 80%; }
  .carousel-dots { bottom: 5px; }
  .carousel-prev, .carousel-next { display: none; }
}

/* 流れ */
@media (min-width: 767.98px) {
  .experience-flow { max-width: 900px; margin: 0 auto; padding-left: 80px; }
  .experience-flow-item { position: relative; display: flex; margin-bottom: 50px; }
  .experience-flow-item::before { content: ""; position: absolute; left: -55px; top: 48px; width: 1px; height: calc(100% + 40px); background: #707070; }
  .experience-flow-item:last-child::before { display: none; }
  .experience-flow-marker { position: absolute; left: -80px; width: 50px; display: flex; justify-content: center; }
  .experience-flow-marker span { width: 50px; height: 50px; background: #333; color: #fff; font-size: 17px; line-height: 50px; border-radius: 50%; display: flex; align-items: center; justify-content: center; }
}

@media (max-width: 767.98px) {
  .experience-flow-item { position: relative; display: flex; margin-bottom: 40px; }
  .experience-flow-marker { display: none; }
}

/* 採用フロー */
.recruit-flow-new { max-width: 900px; margin: 0 auto; padding-left: 160px; padding-right: 40px; }
.recruit-flow-new-item { position: relative; display: flex; margin-bottom: 40px; z-index: 1; }
.recruit-flow-content { z-index: 1; }
.recruit-flow-new-icon img { z-index: 1; }
.recruit-flow-new-item::before { content: ''; position: absolute; left: -70px; top: 100px; width: 1px; height: calc(100% - 60px); background: #e8e8e8; }
.recruit-flow-new-item.recruit-flow-new-frame::before { content: ''; position: absolute; left: -70px; top: 100px; width: 1px; height: calc(100% - 60px); background: #e8e8e8; }
.recruit-flow-new-item:last-child::before { display: none; }
.recruit-flow-new-icon { position: absolute; left: -120px; width: 100px; display: flex; margin-right: 40px; }
.recruit-flow-new-frame::after { content: ''; border: 2px dashed #e8e8e8; border-radius: 10px; position: absolute; left: -160px; width: 900px; height: 100%; margin-bottom: 40px; background-color: #ffffff; z-index: 0; }

@media print, screen and (max-width: 767.98px) {
  .recruit-flow-new { max-width: 900px; margin: 0 auto; padding-left: 120px; padding-right: 20px; }
  .recruit-flow-new-item::before { content: ''; position: absolute; left: -60px; top: 100px; width: 1px; height: calc(100% - 60px); background: #e8e8e8; }
  .recruit-flow-new-item.recruit-flow-new-frame::before { content: ''; position: absolute; left: -60px; top: 100px; width: 1px; height: calc(100% - 60px); background: #e8e8e8; }
  .recruit-flow-new-frame::after { content: ''; border: 2px dashed #e8e8e8; border-radius: 10px; position: absolute; left: -120px; width: calc(100% + 140px); height: 100%; margin-bottom: 40px; }
  .recruit-flow-new-icon { position: absolute; left: -100px; width: 80px; display: flex; margin-right: 40px; }
}

/* 募集職種 */
.recruit-flow-frame { background: #FFF; border: 1px solid #e8e8e8; width: 100%; height: 100%; padding: 40px 30px; display: inline-block; position: relative; }
.recruit-flow-frame::after { content: ''; position: absolute; bottom: 0; left: 50%; width: 20px; height: 20px; background: #FFF; border-right: 1px solid #e8e8e8; border-bottom: 1px solid #e8e8e8; transform: translate(-50%, 55%) rotate(45deg); transform-origin: center center; }
.recruit-flow-frame-case { font-size: 13px; line-height: 18px; color: #ffffff; background-color: #767676; padding: 2px 10px; margin-left: 10px; border-radius: 9px; position: absolute; top: 4px;}

@media print, screen and (max-width: 767.98px) {
.recruit-flow-frame-case { font-size: 13px; line-height: 18px; color: #ffffff; background-color: #767676; padding: 2px 10px; margin-left: 0px; border-radius: 9px; position: static;}
}

/* 私たちの声 */
.recruit-schedule { max-width: 800px; margin: 0 auto; padding-left: 140px; }
.recruit-schedule-item { position: relative; display: flex; margin-bottom: 40px; z-index: 1; }
.recruit-schedule-content { z-index: 1; }
.recruit-schedule-icon img { z-index: 1; }
.recruit-schedule-item::before { content: ""; position: absolute; left: -90px; top: 100px; width: 1px; height: calc(100% - 60px); background: #CCCCCC; }
.recruit-schedule-item:last-child::before { display: none; }
.recruit-schedule-icon { position: absolute; left: -140px; width: 100px; display: flex; margin-right: 40px; }
.recruit-schedule-break { border-top: 1px dashed #CCCCCC; border-bottom: 1px dashed #CCCCCC; padding: 15px 0; }
.recruit-schedule-lunchbreak { border-top: 1px dashed #CCCCCC; border-bottom: 1px dashed #CCCCCC; padding: 60px 0; }
.speech-box { position: relative; border: 1px solid #000; border-radius: 20px; padding: 30px; background: #fff; }
.speech-box::before { content: ""; position: absolute; left: -42px; top: calc(50% - 21px); width: 0; height: 0; border-top: 18px solid transparent; border-bottom: 18px solid transparent; border-right: 42px solid #000; }
.speech-box::after { content: ""; position: absolute; left: -39px; top: calc(50% - 20px); width: 0; height: 0; border-top: 17px solid transparent; border-bottom: 17px solid transparent; border-right: 39px solid #fff; }
.speech-content { display: flex; gap: 20px; align-items: center; }
.speech-icon { flex-shrink: 0; }

/* 私たちの声 サムネ */
.voice-on-box { position: relative; }
.voice-on-box .active { position: absolute; left: 0; top: 0; opacity: 0; transition: 0.5s; }
.voice-on-box:hover { color: #b3b3b3; transition: 0.5s; }
.voice-on-box:hover .active { opacity: 1; transition: 0.5s; }
.voice-on-box-button { font-size: 13px; line-height: 20px; background: #F2F2F2; text-decoration: none; position: relative; text-align: center; vertical-align: middle; padding: 12px 20px 12px 20px; border-radius: 40px; transition: 0.5s; }
.voice-on-box:hover .voice-on-box-button { background: #DFDFDF; transition: 0.5s; }
.voice-schedule, .voice-interview { color: #777; transition: 0.5s; }
.voice-on-box:hover .voice-schedule, .voice-on-box:hover .voice-interview { color: #b3b3b3; transition: 0.5s; }
.voice-schedule::before { content: url(/company/img/voice-schedule.svg); position: relative; top: 2px; margin-right: 5px; transition: 0.5s; }
.voice-on-box:hover .voice-schedule::before { content: url(/company/img/voice-schedule-hover.svg); transition: 0.5s; }
.voice-interview::before { content: url(/company/img/voice-interview.svg); position: relative; top: 2px; margin-right: 5px; transition: 0.5s; }
.voice-on-box:hover .voice-interview::before { content: url(/company/img/voice-interview-hover.svg); transition: 0.5s; }

@media print, screen and (min-width: 767.98px) {
  .row-80 { display: flex; flex-wrap: wrap; margin-right: -40px; margin-left: -40px; }
  .row-80 .col-md-6 { padding-left: 40px; padding-right: 40px; }
}

@media print, screen and (max-width: 767.98px) {
  .recruit-schedule { max-width: 900px; margin: 0 auto; padding-left: 120px; padding-right: 20px; }
  .recruit-schedule-item::before { content: ""; position: absolute; left: -60px; top: 100px; width: 1px; height: calc(100% - 60px); background: #e8e8e8; }
  .recruit-schedule-frame::after { content: ""; border: 2px dashed #e8e8e8; border-radius: 10px; position: absolute; left: -120px; width: calc(100% + 140px); height: 100%; margin-bottom: 40px; }
  .recruit-schedule-icon { position: absolute; left: -100px; width: 80px; display: flex; margin-right: 40px; }
  .speech-box { padding: 30px 20px; }
  .speech-icon { width: 80px; }
}

/* よくあるご質問 */
.qa-q, .qa-a { position: relative; padding-left: 50px; }
.qa-q::before { content: url(/company/img/qa_q.svg); display: block; position: absolute; width: 27px; height: 27px; top: 0px; left: 0px; }
.qa-a::before { content: url(/company/img/qa_a.svg); display: block; position: absolute; width: 27px; height: 27px; top: 0px; left: 0px; }

/* フォーム */
.recruit-form-fl-l { font-size: 17px; }

/* イベント 矢印 */
.recruit_icon-arrow::after { content: ''; display: inline-block; width: 24px; height: 24px; margin-top: -4px; margin-left: 10px; background-image: url(/company/img/recruit/recruit_icon-arrow.svg); background-size: contain; vertical-align: middle; }
.recruit_icon-arrow.w-17::after { width: 17px; height: 17px; margin-top: -2px; margin-left: 5px; 
}

/* a */
.a-on-box { transition: 0.5s; }
.a-on-box:hover { color: #b3b3b3; transition: 0.5s; }
.a-on-box:hover .fc-50 { color: #b3b3b3 !important; transition: 0.5s; }
.a-img-on-box img { outline: 1px solid #cccccc; outline-offset: -1px; transition: 0.5s;}
.a-img-on-box img:hover { outline: 1px solid #1a1a1a; outline-offset: -1px; transition: 0.5s;}
.a-banner-on-box { outline: 1px solid #cccccc; outline-offset: -1px; transition: 0.3s; display: inline-block;}
.a-banner-on-box:hover { color: #b3b3b3; outline-offset: -1px; transition: 0.3s;}