@charset "UTF-8";

/* Normalize.css
======================================================== */
html { line-height: 1.15; -webkit-text-size-adjust: 100%; }
body { margin: 0; }
main { display: block; }
h1 { font-size: 2em; margin: 0.67em 0; }
hr { box-sizing: content-box; height: 0; overflow: visible; }
pre { font-family: monospace, monospace; font-size: 1em; }
a { background-color: transparent; }
abbr[title] { border-bottom: none; text-decoration: underline; text-decoration: underline dotted; }
b, strong { font-weight: bolder; }
code, kbd, samp { font-family: monospace, monospace; font-size: 1em; }
small { font-size: 80%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sub { bottom: -0.25em; }
sup { top: -0.5em; }
img { border-style: none; }
button, input, optgroup, select, textarea { font-family: inherit; font-size: 100%; line-height: 1.15; margin: 0; }
button, input { overflow: visible; }
button, select { text-transform: none; }
button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; }
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }
fieldset { padding: 0.35em 0.75em 0.625em; }
legend { box-sizing: border-box; color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal; }
progress { vertical-align: baseline; }
textarea { overflow: auto; }
[type="checkbox"], [type="radio"] { box-sizing: border-box; padding: 0; }
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }
[type="search"] { -webkit-appearance: textfield; outline-offset: -2px; }
[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
::-webkit-file-upload-button { -webkit-appearance: button; font: inherit; }
details { display: block; }
summary { display: list-item; }
template { display: none; }
[hidden] { display: none; }
/* Soft reset */
ul, ol, dd { margin: 0; padding: 0; list-style: none; }
h1, h2 h3, h4, h5, h6 { margin: 0; font-size: inherit; font-weight: inherit; }
p { margin: 0; }

/* Slick
======================================================== */
.slick-prev, .slick-next { font-size: 0; line-height: 0; position: absolute; top: 50%; display: block; width: 12vw; height: 12vw; padding: 0; -webkit-transform: translate(0, -50%); -ms-transform: translate(0, -50%); transform: translate(0, -50%); cursor: pointer; color: transparent; border: none; outline: none; background: transparent; }
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus { color: transparent; outline: none; background: transparent; }
.slick-prev:hover:before, .slick-prev:focus:before, .slick-next:hover:before, .slick-next:focus:before { opacity: 1; }
.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before { opacity: .25; }
.slick-prev:before, .slick-next:before { font-family: 'slick'; font-size: 20px; line-height: 1; opacity: 1; color: white; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.slick-prev { left: -25px; }
[dir='rtl'] .slick-prev { right: -25px; left: auto; }
.slick-prev:before { content: '←'; }
[dir='rtl'] .slick-prev:before { content: '→'; }
.slick-next { right: -25px; }
[dir='rtl'] .slick-next { right: auto; left: -25px; }
.slick-next:before { content: '→'; }
[dir='rtl'] .slick-next:before { content: '←'; }
.slick-dotted.slick-slider { margin-bottom: 30px; }
.slick-dots { position: absolute; bottom: -2vw; display: block; width: 100%; padding: 0; margin: 0; list-style: none; text-align: center; }
.slick-dots li { position: relative; display: inline-block; width: 20px; height: 20px; margin: 0 5px; padding: 0; cursor: pointer; }
.slick-dots li { background: none !important; border: none !important; }
.slick-dots li button { font-size: 0; line-height: 0; display: block; width: 20px; height: 20px; padding: 5px; cursor: pointer; color: transparent; border: 0; outline: none; background: transparent; }
.slick-dots li button:hover, .slick-dots li button:focus { outline: none; }
.slick-dots li button:hover:before, .slick-dots li button:focus:before { color: #e7e7e7; opacity: 0.7; }
.slick-dots li button:before { font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: 1.5rem; line-height: 20px; position: absolute; top: 0; left: 0; width: 20px; height: 20px; content: '\f111'; text-align: center; opacity: 1; color: #fff; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.slick-dots li.slick-active button:before { opacity: 1; color: #a4a4a4; }
.slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -khtml-user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }
.slick-list { position: relative; display: block; overflow: hidden; margin: 0; padding: 0; }
.slick-list:focus { outline: none; }
.slick-list.dragging { cursor: pointer; cursor: hand; }
.slick-slider .slick-track, .slick-slider .slick-list { -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
.slick-track { position: relative; top: 0; left: 0; display: block; margin-left: auto; margin-right: auto; }
.slick-track:before, .slick-track:after { display: table; content: ''; }
.slick-track:after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }
.slick-slide { display: none; float: left; min-height: 1px; }
[dir='rtl'] .slick-slide { float: right; }
.slick-slide img { display: block; }
.slick-slide.slick-loading img { display: none; }
.slick-slide.dragging img { pointer-events: none; }
.slick-initialized .slick-slide { display: block; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }
.slick-arrow.slick-hidden { display: none; }
.slider .slick-arrow { width: 1.75vw; height: auto; position: absolute; z-index: 1; top: 47%; opacity: 0.5; }
.slider .slick-arrow:hover { opacity: 1; cursor: pointer; }
.slider .prev-arrow { left: 0; }
.slider .next-arrow { right: 0; }

@media only screen and (min-width:601px) and (max-width:1200px) {
  .slick-dotted.slick-slider { margin-bottom: 2.5vw; }
  .slick-dots li { margin: 0 0.41vw; width: 1.7vw; height: 1.7vw; }
  .slick-dots li button:before { font-size: 1.25vw; width: 1.7vw; height: 1.7vw; }
}

@media screen and (max-width: 600px) {

}

/* Common
======================================================== */
html { font-size: 62.5%; }
body { font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HiraKakuPro-W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",Arial, Helvetica,sans-serif; font-size: 1.6rem; /* 16px */ letter-spacing: 0.05em; color: #333; overflow-x: hidden; position: relative; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

a:hover { cursor: pointer; text-decoration: none; opacity: 0.7; }
p { font-size: 1.6rem; }
/* Heading */
h2 { margin: 50px 0; padding: 20px; font-size: 3.2rem; font-weight: 900; line-height: 1.3; text-align: center; border-top-width: 1px; border-top-style: solid; border-bottom-width: 1px; border-bottom-style: solid; }
h3,
.mce-content-body h3 { clear: both; position: relative; margin: 3rem auto; padding: 10px 1.5%; width: 97%; color: #0055bc; font-size: 2.8rem; font-weight: 700; line-height: 1.3; text-align: left; border-left-width: 5px; border-left-style: solid; border-left-color: #0055bc; }
h4,
.mce-content-body h4 { clear: both; margin: 3rem auto; padding: 15px 1.5%; width: 97%; color: #333; font-size: 2.4rem; font-weight: 700; line-height: 1.3; background-color: #f0f8fa; border-bottom-width: 2px; border-bottom-style: solid; border-bottom-color: #00b7ce; }
h5,
.mce-content-body h5 { clear: both; margin: 3rem auto; padding: 5px 0 5px 1.5%; width: 98.5%; color: #333; font-size: 2.2rem; font-weight: 700; line-height: 1.3; border-bottom-width: 2px; border-bottom-style: solid; border-bottom-color: #00b7ce; }
h6,
.mce-content-body h6 { clear: both; margin: 3rem auto; padding: 18px 1.5%; width: 97%; color: #333; font-size: 1.8rem; font-weight: 700; line-height: 1.3; background-color: #f8f8f8; }
p { font-size: 1.8rem; line-height: 1.65; }
/* テーブル */
table { max-width: 100% !important; border-collapse: collapse; margin-bottom: 2rem; }
table tbody { max-width: 100% !important; }
table th,
table td { padding: 1.5% 3%; font-size: 1.8rem; line-height: 1.65; border-width: 1px; border-style: solid; border-color: #cacaca; word-break: break-all; }
table th { background-color: #f1f8f9; font-weight: 500; text-align: left; }

@media screen and (max-width: 600px) {
  html { font-size: 50%; }
  body { width: 100%; }
  html.open { height: 100%; overflow: hidden; }
  body.open { position: fixed; width: 100%; height: 100%; left: 0; overflow: hidden; }
  p { font-size: 1.8rem; line-height: 1.5; }
  h2 { margin: 5vw auto 10vw; padding: 2.5vw 0; width: 90%; font-size: 2.6rem; line-height: 1.3; }
  h3 { padding: 1vw 1.5%; font-size: 2.5rem; border-left-width: 4px; }
  h4 { padding: 1.5vw 1.5%; }
  h5 { padding: 1vw 0 1vw 1.5%; }
  h6 { padding: 2vw 1.5%; }
}

/* Inview.js
======================================================== */
.InviewFade { opacity: 0; transform: translateY(60px); transition: opacity .8s, transform .8s; }
.InviewFade.fadeInUp { opacity: 1; transform: translateY(0); transition-delay: .1s; }
.InviewRight { opacity: 0; transform: translate(50%, 0); transition: opacity .8s, transform .8s; }
.InviewRight.fadeInRight { opacity: 1; transform: translate(0, 0); transition-delay: .1s; }
.InviewLeft { opacity: 0; transform: translate(-50%, 0); transition: opacity .8s, transform .8s; }
.InviewLeft.fadeInLeft { opacity: 1; transform: translate(0, 0); transition-delay: .1s; }
.mce-content-body .InviewFade,
.mce-content-body .InviewRight,
.mce-content-body .InviewLeft { opacity: 1.0; }

/* ユーティリティクラス
======================================================== */
.--PC { display: block; }
.--SP {  display: none; }
@media screen and (max-width: 600px) {
.--PC { display: none !important; }
.--SP { display: block !important; }
}
.--DisplayNone { display: none; }
.--Wrap { width: 1100px; margin: 0 auto; }
/* Alignment */
.--AlignLeft { text-align: left; }
.--AlignCenter { text-align: center; }
.--AlignRight { text-align: right; }
/* Background */
.--BgWhite { background: #fff; }
.--BgEven { background-color: #f6feff; }
/* Spacing */
.--Padding30px { padding: 30px; }
.--PaddingBottom50px { padding-bottom: 50px; }
.--PaddingBottom100px { padding-bottom: 100px; }
/* Layout */
.--PositionRelative { position: relative; }
.--PositionAbsolute { position: absolute; }
.--DisplayFlex { display: flex; }
.--JustifyContentStart { justify-content: flex-start; }
.--JustifyContentCenter { justify-content: center; }
.--JustifyContentEnd { justify-content: flex-end; }
.--JustifyContentSpaceBetween { justify-content: space-between; }
.--AlignItemsStart { align-items: flex-start; }
.--AlignItemsCenter { align-items: center; }
.--AlignItemsEnd { align-items: flex-end; }
.--FlexWrapWrap { flex-wrap: wrap; }
.--FlexDirectionColumn { flex-direction: column; }
/* Font */
.--Montserrat { font-family: "Montserrat"; }

/* Images */
.--ObjectFitCover { position: relative; display: block; width: 100%; overflow: hidden; object-fit: cover; /* background: #eaeaea; */}
.--ObjectFitCover:before { content: ""; display: block; }
.--ObjectFitCover img { position: absolute; width: 100%; height: 100%; top: 0; right: 0; bottom: 0; left: 0; margin: auto; object-fit: cover; }

/* Decoration */
.--DropShadow { filter: drop-shadow(0 4px 2px rgba(0, 0, 0, 0.1)); }
.--BoxShadow { box-shadow: 0px 0px 3px 1px #e3e2de; }
.--BorderRadius20px { border-radius: 20px; }
.--BorderRadius10px { border-radius: 10px; }
.--BorderBottomNone { border-bottom: none !important; }
.--BorderNone { border: none !important; }

/* WordPress Default */
.alignright { float: right; margin: 0 0 2rem 2rem; }
.alignleft { float: left; margin: 0 2rem 2rem 0; }
.aligncenter { display: block; margin: 2rem auto; text-align: center; }

/* Button */
.--Button { margin: 0; padding: 0; }
.--Button a { position: relative; display: block; margin: 0; padding: 15px 5%; width: 100%; color: #fff; font-size: 1.6rem; font-weight: 500; line-height: 1.5; text-align: center; text-decoration: none; background-color: #00b7ce; border-radius: 100px; }
.--Button a:after { position: absolute; right: 5%; top: 50%; transform: translateY(-50%); margin: 0 0 0 1rem; content: "\f054"; font-size: 1.0rem; font-family: "Font Awesome 5 Free"; font-weight: bold; }

/* Table */
.--Detail { display: flex; justify-content: space-between; margin: 0; padding: 10px 0; }
.--Detail dl { display: flex; flex-wrap: wrap; width: 100%; margin: 0; padding: 0; font-size: 1.8rem; line-height: 1.5; }
.--Detail dl:last-child { margin-left: 2%; }
.--Detail dl dt { width: 21%; padding: 2rem 2%; border-bottom-width: 1px; border-bottom-style: solid; }
.--Detail dl dd { width: 70%; padding: 2rem 2%; border-bottom: 1px solid #d6d6d6; }

/* アコーディオン */
.--BtnAcd { position: absolute; display: block; width: 100%; height: 100%; cursor: pointer; white-space: nowrap; overflow: hidden; right: 0; top: 50%; transform: translateY(-50%); text-align: right; }
.--BtnAcd:after { display: flex; justify-content: flex-end; align-items: center; height: 100%; margin-right: 2%; font-size: 3.0rem; content: "\2b"; font-family: "Font Awesome 6 Free"; font-weight: bold; line-height: 2.5; }
.--BtnAcd.--Selected:after { content: "\f068"; }

@media screen and (max-width: 600px) {
  .--PaddingBottom50px { padding-bottom: 5vw; }
  .--PaddingBottom100px { padding-bottom: 10vw; }
  .--Detail { padding: 2vw 0; justify-content: initial; flex-direction: column; }
  .--Detail dl:last-child { margin-left: 0; }
  .--LeadText { padding: 0 0 8vw 2vw; font-size: 2.2rem; }
  .--Wrap { width: 90%; margin: 0 auto; }
  .--Button a { padding: 4vw 5%; width: 90%; font-size: 1.8rem; }
}

/* TinyMCEのマーカー */
.yellow_marker { background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #FFFF88 0%) repeat scroll 0 0; /*黄色*/ }
.red_marker { background:rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #FFABCE 0%) repeat scroll 0 0; /*赤色*/ }
.blue_marker { background:rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #A7F1FF 0%) repeat scroll 0 0; /*水色*/ }

/* ヘッダー
======================================================== */
.Body__Header { position: fixed; top: 0; z-index: 99; width: 100%; background: #fff; border-bottom: 1px solid #e8e8e8; }
.Header { justify-content: space-between; }
.HeaderLogo a { color: #333; text-decoration: none; }
.HeaderLogo a img { width: 230px; height: auto; padding-left: 20px; }
.HeaderName { flex-direction: column; padding: 0 0 0 15px; width: 170px; }
.HeaderLogo a span { display: block; margin: 0; padding: 0 0 5px; color: #595959; font-size: 1.5rem; line-height: 1.0; letter-spacing: 0; white-space: nowrap; }
.HeaderLogo a small { color: #595959; font-size: 1.5rem; line-height: 1.0; letter-spacing: 0; }
.HeaderNavi { margin: 0; padding: 0; }
/* グロナビ */
.GlobalNavi { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; margin: 0; padding: 0; }
.GlobalNavi li a { position: relative; display: block; padding: 14px 10px; color: #000; font-size: 1.4rem; font-weight: 700; text-decoration: none; text-align: center; }
.GlobalNavi li a:after { position: absolute; left: 0; bottom: 5px;  content: ''; width: 100%; height: 2px; transform: scale(0, 1); transform-origin: left top; transition: transform 0.3s; }
.GlobalNavi li a:hover:after { transform: scale(1, 1); }
.GlobalNavi li:last-child a { margin-right: 20px; }
/* インフォナビ */
.HeaderNavi__Info { padding: 5px 15px 0; border-left: 1px solid #d5d5d5; text-align: center; line-height: 0.9; }
.HeaderNavi__Info em { display: block; font-size: 1.2rem; font-style: normal; }
.HeaderNavi__Info strong { display: block; padding: 5px 0; font-size: 2.7rem; font-weight: 700; white-space: nowrap; }
.HeaderNavi__Info small { display: block; color: #000; font-size: 1.2rem; }
.HeaderNavi__Info small:before { content: "受付時間 "; }
.HeaderNavi__Button .HeaderBtn { display: flex; }
.HeaderNavi__Button .HeaderBtn li { border-left: 1px solid #fff; }
.HeaderNavi__Button ul li:first-child { display: none; }
.HeaderNavi__Button ul li img { display: none; }
.HeaderNavi__Button a { position: relative; display: inline-block; padding: 25px 30px 25px 20px; background: #e4368d; color: #fff; font-size: 1.6rem; font-weight: bold; text-align: center; text-decoration: none; transition: .3s; }
.HeaderNavi__Button a strong { position: relative; z-index: 1; font-weight: 500; }
.HeaderNavi__Button a:before { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 0; content: ''; transform-origin: right top; transform: scale(0, 1); transition: transform .3s; }
.HeaderNavi__Button a:hover { opacity: 1.0; }
.HeaderNavi__Button a:hover:before { transform-origin: left top; transform: scale(1, 1); }
.HeaderNavi__Button a:after { content: "\f054"; font-size: 1.2rem; font-family: "Font Awesome 5 Free"; font-weight: bold; position: absolute; right: 10px; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); }

@media only screen and (min-width:600px) and (max-width:1300px) {
/* .Body__Header { width: 100%; }
.Header { justify-content: ; }
.HeaderLogo a img { width: 17.69vw; padding-left: 1.538vw; }
.HeaderName { padding: 0 0 0 1.15vw; width: 13vw; }
.HeaderLogo a span { padding: 0 0 0.38vw; font-size: 1.3vw; }
.HeaderLogo a small { font-size: 1.153vw; }
.HeaderNavi__Info { padding: ; }
.HeaderNavi__Info em { font-size: ; }
.HeaderNavi__Info strong { padding: ; font-size: ; }
.HeaderNavi__Info small { font-size: ; white-space: nowrap; }
.HeaderNavi__Button a { padding: ; }
.HeaderNavi__Button a:after { font-size: ; }
.GlobalNavi { flex-wrap: initial; }
.GlobalNavi li a { padding: 1.07vw 0.769vw; font-size: 1.075vw; }
.HeaderNavi__Button a strong { padding: ; font-size: ; } */
}

@media screen and (max-width: 600px) {
.Body__Header { height: 13vw; }
.Header { justify-content: flex-start; }
.HeaderLogo { margin: 4vw 0 0 2vw; width: 50%; }
.HeaderLogo a {  }
.HeaderLogo a img { width: 60%; padding-left: 1vw; }
.HeaderName { flex-direction: column; align-items: flex-start; padding: 0 0 0 2vw; width: 50%; }
.HeaderLogo a span { padding: 0 0 0.5vw; font-size: 0.9rem; }
.HeaderLogo a small { font-size: 0.9rem; }
.HeaderNavi { display: initial; justify-content: initial; align-items: initial; position: absolute; top: 0; right: 0; margin-right: 15vw; }
.HeaderNavi__Button ul { display: flex; margin: 0; padding: 0; }
.HeaderNavi__Button .HeaderBtn li { width: 18vw; }
.HeaderNavi__Button ul li:first-child { display: none; }
.HeaderNavi__Button ul li img { display: block; margin: 0 auto 0.5vw; width: 5vw; height: auto; }
.HeaderNavi__Button a { padding: 1vw; font-size: 1.2rem; }
.HeaderNavi__Button li:nth-child(2) a { padding: 1vw 2.5vw; }
.HeaderNavi__Button a:before, .HeaderNavi__Button a:after { display: none; }
.HeaderNavi__Button a span { display: block; }
/* グロナビ(SP) */
.NaviSP { transform: initial !important; margin: 0; padding: 0; list-style-type: none; display: flex; flex-direction: column; border-top-width: 1px; border-top-style: solid; border-top-color: #fff; }
.NaviSP li { width: 100%; text-align: left; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #fff; }
.NaviSP li:after { display: none; }
.NaviSP li a { position: relative; display: block; margin: 0; padding: 4vw 0; font-size: 2.0rem; font-weight: bold; color: #fff; text-decoration: none; }
.NaviSP li a:hover { transform: initial; -webkit-transition: initial; transition: initial; opacity: 1.0; margin: 0; padding: 4vw 0; text-indent: initial; }
.NaviSP li.menu-item-has-children a:after { position: absolute; right: 2vw; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); content: "\f107"; font-family: "Font Awesome 5 Free"; font-weight: bold; }
.NaviSP li.menu-item-has-children a.on:after { content: "\f106"; }
.NaviSP .sub-menu { z-index: initial; background: initial; position: initial; top: initial; left: initial; transform: initial; -webkit-transform: initial; -ms-transform: initial; width: initial; box-shadow: initial; margin: initial; }
.NaviSP .sub-menu li a { color: #00b7ce; font-size: 1.8rem; padding: 3.5vw 0; background-color: #f6feff; border-bottom: 1px solid #00b7ce; }
.NaviSP .sub-menu li:first-chil ad { border-top: 1px solid #00b7ce; }
.NaviSP .sub-menu li:last-child a { border-bottom: none; }
.NaviSP .sub-menu li a:after { display: none; }
.NaviSP .open { display: block; margin: 0; padding: 0; }
/* ハンバーガーボタン */
.menu-btn { position: fixed; top: 1.5vw; right: 0%; width: 15%; height: 10vw; cursor: pointer; z-index: 101; -webkit-transition: all 3s ease-in-out; transition: all .3s ease-in-out; }
.menu-btn-line { position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; height: 3px; width: 50%; background: #333; -webkit-transition: all 3s ease-in-out; transition: all .3s ease-in-out; }
.menu-btn-line::before, .menu-btn-line::after { content: ""; height: 3px; width: 100%; background: #333; position: absolute; left: 0; -webkit-transition: inherit; transition: inherit; }
.menu-btn-line:before { top: -2.5vw; }
.menu-btn-line:after { top: 2.5vw; }
.open .sp-nav-item { -webkit-transition: all .5s; transition: all .5s; visibility: visible; opacity: 1; overflow-y: auto; }
.open .menu-btn { border-color: #fff; }
.open .menu-btn-line { background-color: transparent; }
.open .menu-btn-line:before, .open .menu-btn-line:after { top: 0; background: #fff; }
.open .menu-btn-line:before { -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }
.open .menu-btn-line:after { -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); }
.NaviSP { display: none; }
body.open .NaviSP { display: block; }
.sp-nav-item { position: fixed; display: flex; justify-content: center; top: 0; left: 0; width: 100%; height: 100%; visibility: hidden; opacity: 0; z-index: 100; }
.sp-nav-item ul { transform: translateY(30%); margin: 15vw 0 0; padding: 0; list-style-type: none; }
.sp-nav-item li { width: 100%; text-align: center; }
}

/* ドロップダウンメニュー(PC) */
.GlobalNavi li { position: relative; }
.GlobalNavi li a:hover .sub-menu { transform: scaleY(1); }
.GlobalNavi .sub-menu { z-index: 1000; display: none; position: absolute; top: 45px; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); width: 240px; }
.GlobalNavi .sub-menu li { position: relative; display: flex; flex-direction: column; margin: 0; padding: 0; text-align: center; white-space: nowrap; }
.GlobalNavi .sub-menu li a { display: block; margin: 0 auto; padding: 20px 0; width: 100%; color: #fff; font-size: 1.3rem; text-align: center; border-bottom: 1px solid #fff; }
.GlobalNavi .sub-menu li a:hover { opacity: 0.7; }
.GlobalNavi .sub-menu li a:after { display: none; }
.GlobalNavi .open { display: block !important; }

/* サイドフローティング
======================================================== */
.SideFloatingBanner { position: fixed; right: 0; top: 130px; margin: 0; padding: 0; width: 57px; z-index: 99; }
.SideFloatingBanner ul li { width: 100%; }
.SideFloatingBanner ul li img { width: 100%; height: auto; }

/* フッターバナー
======================================================== */
.Body__FooterBanner { margin: 0; padding: 0; width: 100%; background-image: url(/recruit/wp-content/uploads/2025/06/footer-bg.jpg); background-repeat: no-repeat; background-position: center center; background-size: cover; }
.FooterBanner { display: flex; justify-content: space-between; margin: 0 auto; padding: 120px 0 160px; width: 1100px; }
.FooterBanner a { position: relative; display: inline-block; padding: 25px; width: 480px; height: 230px; color: #fff; font-weight: 700; text-align: center; text-decoration: none; }
.FooterBanner a:hover { opacity: 1.0; }
.FooterBanner__Text { display: block; padding: 40px 0 25px; width: 280px; font-size: 3.8rem; position: relative; z-index: 1; }
.FooterBanner__Text small { font-size: 2.3rem; }
.FooterBanner__Button { display: block; padding: 25px 0; font-size: 2.6rem; background: #fff; border-radius: 20px; position: relative; z-index: 1; }
.FooterBanner__Button:before { position: absolute; left: 30px; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); z-index: 1; font-size: 3.6rem; font-family: "Font Awesome 5 Free"; }
.FooterBanner__Button:after { content: "\f0a9"; font-size: 2.6rem; font-weight: bold; font-family: "Font Awesome 5 Free"; position: absolute; z-index: 1; right: 30px; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); }
.FooterBanner li:first-child .FooterBanner__Button { color: #00b7ce; }
.FooterBanner li:first-child .FooterBanner__Button:before { content: "\f086"; font-weight: 400; color: #00b7ce; }
.FooterBanner li:first-child .FooterBanner__Button:after { color: #00b7ce; }
.FooterBanner li:nth-child(2) .FooterBanner__Button { color: #da4b70; }
.FooterBanner li:nth-child(2) .FooterBanner__Button:before { content: "\f15c"; font-weight: 400; color: #da4b70; }
.FooterBanner li:nth-child(2) .FooterBanner__Button:after { color: #da4b70; }
.FooterBanner a:hover .FooterBanner__Button { color: #fff; }
.FooterBanner li:first-child a:hover .FooterBanner__Button { background: #00b7ce; border: 1px solid #fff; }
.FooterBanner li:nth-child(2) a:hover .FooterBanner__Button { background: #da4b70; border: 1px solid #fff; }
.FooterBanner li:first-child a:hover .FooterBanner__Button:before,
.FooterBanner li:first-child a:hover .FooterBanner__Button:after,
.FooterBanner li:nth-child(2) a:hover .FooterBanner__Button:before,
.FooterBanner li:nth-child(2) a:hover .FooterBanner__Button:after {
  color: #fff;
}
.FooterBanner__Image { position: absolute; top: 0; left: 0; }
.FooterBanner__Image img { width: 100%; height: auto; }

@media screen and (max-width: 600px) {
.Body__FooterBanner { padding: 5vw 0; background-position: top center; background-size: auto 100%; }
.FooterBanner { justify-content: center; flex-direction: column; padding: 0; width: 90%; }
.FooterBanner li { margin: 0; padding: 0 0 12vw; }
.FooterBanner a { padding: 4% 4% 0; width: 92%; height: initial; }
.FooterBanner__Text { pdisplay: flex; flex-direction: column; padding: 8vw 0 4vw; width: 60%; font-size: 3.0rem; }
.FooterBanner__Text small { display: block; padding: 2vw 0 0; font-size: 1.8rem; }
.FooterBanner__Button { padding: 4vw 0; font-size: 2.0rem; border-radius: 10px; }
.FooterBanner__Button:before { font-size: 3.2rem; left: 4vw; }
.FooterBanner__Button:after { font-size: 2.0rem; right: 6vw; }
}

/* フッター
======================================================== */
.Body__Footer { margin: 0; padding: 0; width: 100%; text-align: center; background-color: #00b7ce; }
.FooterNavi { display: flex; flex-direction: column; flex-wrap: wrap; margin: 0 auto; padding:40px 0; height: 240px; }
.FooterNavi li { margin: 0; padding: 0; width: 33%; }
.FooterNavi li a { position: relative; display: flex; margin: 0; padding: 2% 0 2% 3%; color: #fff; font-size: 1.4rem; text-decoration: none; }
.FooterNavi li a:before { position: absolute; left: 0; top: 34%; content: "\f054"; font-family: "Font Awesome 5 Free"; font-weight: bold; font-size: 0.9rem; }
.FooterNavi .sub-menu { margin-left: 5%; }
.FooterNavi .sub-menu li { margin: 0; width: initial; }
.FooterNavi .sub-menu a:before { content: "- "; }
.FooterNavi .--Second { margin-bottom: 30px; }

.Copyright { margin: 0; padding: 0 0 60px; width: 100%; background: #fff; }
.Copyright dt { margin: 0 auto; padding: 30px 0; width: 230px; }
.Copyright dt img { width: 100%; height: auto; }
.Copyright dd { margin: 0; padding: 0; font-size: 1.2rem; }

@media screen and (max-width: 600px) {
  .Body__Footer { text-align: left; }
  .FooterMenu.--Wrap { width: 100%; }
  .FooterNavi { padding: 0; height: initial; justify-content: flex-start; }
  .FooterNavi li { display: flex; flex-direction: column; margin: 0; padding: 0; width: 100%; }
  .FooterNavi li a { display: flex; align-items: center; padding: 2.5vw 5%; width: 90%; font-size: 1.6rem; line-height: 1.4; border-bottom: 1px solid #fff; border-right: none; }
  .FooterNavi li.menu-item-has-children a { border-bottom: none; }
  .FooterNavi li a:before { left: 2vw; top: 40%; }
  .FooterNavi .sub-menu { display: block !important; margin-left: 0; padding-bottom: 1.5vw; border-bottom: 1px solid #fff; }
  .FooterNavi .sub-menu li a { padding: 1.5vw 5% 1.5vw 8%; width: 87%; font-size: 1.5rem; border-bottom: 0; }
  .FooterNavi .sub-menu li a:before { left: 6vw; }
  .Copyright { padding: 0 0 10vw; }
  .Copyright dt { padding: 8vw 0 4vw; width: 100%; }
  .Copyright dt img { width: 44%; }
  .Copyright dd { font-size: 1.2rem; }
}

/* ボックスメニュー
======================================================== */
.box-menus { display: flex; justify-content: space-between; flex-wrap: wrap; margin: 0 auto; padding: 50px 0; width: 1100px; }
.box-menus .box-menu { display: flex; flex-wrap: wrap; margin: 0 0 3%; padding: 0; text-decoration: none; text-align: center; cursor: pointer; background: #fff; width: 48%; color: #333; box-shadow: 0px 0px 3px 1px #e3e2de; }
.box-menus .box-menu-icon { width: 32%; color: #ccc; font-size: 6.0rem; display: flex; justify-content: center; align-items: center; margin: 0; padding: 0; }
.box-menus .box-menu-icon img { font-size: 1.6rem; border: none; box-shadow: none; width: 100%; height: auto; }
.box-menus .box-menu-label { display: flex; justify-content: center; align-items: center; width: 68%; color: #333; font-size: 2.6rem; font-weight: 900; }
.box-menus .box-menu-description { font-size: 1.6rem; opacity: 1.0; }

@media screen and (max-width: 600px) {
  .box-menus { flex-direction: column; margin: 0 auto 10vw; padding: 0; width: 90%; }
  .box-menus .box-menu { width: 100%; margin: 0 auto 6vw; padding: 0; }
  .box-menus .box-menu-icon { width: 30%; }
  .box-menus .box-menu-label { width: 70%; font-size: 2.1rem; }
  .box-menus .box-menu-description { font-size: 1.6rem; }
}

/* TOP【メインビジュアル】
======================================================== */
.MainVisual { display: flex; justify-content: center; margin: 70px auto 0; padding: 0; width: 100%; min-height: 33.333vw; background-image: url(/recruit/wp-content/uploads/2025/06/mv-bg-pc.jpg);  background-repeat: no-repeat !important; background-position: center top; background-size: cover; }
.MainVisual__Primary { position: relative; display: flex; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; margin: 0; padding: 0; width: 29%; }
.MainVisual__Primary dt { margin: 0; padding: 0; width: 100%; line-height: 0; }
.MainVisual__Primary dd { position: absolute; margin: 0; padding: 0; width: 50%; line-height: 0; }
.MainVisual__Primary dd:nth-child(2) { left: 0; bottom: 0; }
.MainVisual__Primary dd:nth-child(3) { right: 0; bottom: 0; }
.MainVisual__Secondary { position: relative; display: flex; justify-content: space-between; align-items: flex-end; flex-wrap: wrap; margin: 0; padding: 0; width: 42%; }
.MainVisual__Secondary dt { margin: 0; padding: 0; width: 100%; line-height: 0; }
.MainVisual__Secondary dd { position: absolute; margin: 0; padding: 0; width: 50%; line-height: 0; }
.MainVisual__Secondary dd:nth-child(2) { left: 0; bottom: 0; }
.MainVisual__Secondary dd:nth-child(3) { right: 0; bottom: 0; }
.MainVisual__Third { position: relative; display: flex; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; margin: 0; padding: 0; width: 29%; }
.MainVisual__Third dt { position: relative; margin: 0; padding: 0; width: 100%; line-height: 0; }
.MainVisual__Third dd { position: absolute; margin: 0; padding: 0; width: 50%; line-height: 0; }
.MainVisual__Third dd:nth-child(1) { left: 0; top: 0; }
.MainVisual__Third dd:nth-child(2) { right: 0; top: 0; }
.MainVisual__Third dt:nth-child(3) { position: absolute; left: 0; bottom: 0; }
.MainVisual__Primary dt img,
.MainVisual__Secondary dt img,
.MainVisual__Third dt img,
.MainVisual__Primary dd img,
.MainVisual__Secondary dd img,
.MainVisual__Third dd img { width: 100%; height: auto; }
.MainVisual__Secondary dt img { position: absolute; z-index: 2; top: 1vw; left: 50%; transform: translateX(-50%); width: 48vw; }

@media only screen and (min-width:600px) and (max-width:1800px) {
  .MainVisual { margin: 3.889vw auto 0; }
}

@media screen and (max-width: 600px) {
  .MainVisual { flex-direction: column; margin: 13vw auto 0; min-height: initial; background: none; }
  .MainVisual__Primary,
  .MainVisual__Third { width: 100%; }
  .MainVisual__Primary,
  .MainVisual__Secondary,
  .MainVisual__Third { min-height: 33.3vw; }
  .MainVisual__Primary dd,
  .MainVisual__Secondary dd,
  .MainVisual__Third dd { position: initial; }
  .MainVisual__Primary dt,
  .MainVisual__Primary dd,
  .MainVisual__Third dt:nth-child(3),
  .MainVisual__Third dd { position: relative; display: block; width: 33.3%; overflow: hidden; object-fit: cover; }
  .MainVisual__Primary dt:before,
  .MainVisual__Primary dd:before,
  .MainVisual__Third dt:before,
  .MainVisual__Third dd:before { content: ""; display: block; padding-top: 100%; }
  .MainVisual__Primary dt img,
  .MainVisual__Primary dd img,
  .MainVisual__Third dt img,
  .MainVisual__Third dd img { position: absolute; width: 100%; height: 100%; top: 0; right: 0; bottom: 0; left: 0; margin: auto; object-fit: cover; }
  .MainVisual__Secondary { width: 100%; }
  .MainVisual__Secondary dt { background-image: url(/recruit/wp-content/uploads/2025/06/mv-bg-sp.jpg);  background-repeat: no-repeat; background-position: center top; background-size: cover; }
  .MainVisual__Secondary dt img { position: initial; transform: initial; display: block; margin: 2vw auto; width: 98%; }
  .MainVisual__Primary dt img { width: 150%; }
  .MainVisual__Primary dt:nth-of-type(1) { order: 3; }
  .MainVisual__Primary dd:nth-oftype(2) { order: 1; }
  .MainVisual__Primary dd:nth-oftype(3) { order: 2; }
}

/* TOP【見出し・冒頭文】
======================================================== */
.--TopHeading { display: flex; flex-direction: column; align-items: center; margin: 0 auto; padding: 70px 0; color: #333; font-size: 4.8rem; font-weight: 900; line-height: 1.2; border: none; }
.--TopHeading small { font-family: "Montserrat"; color: #bce5ea; font-size: 3.5rem; font-weight: 700; line-height: 0.5; }
.--TopIntroText { font-size: 1.8rem; font-weight: 500; line-height: 1.85; text-align: center; }

@media only screen and (min-width:601px) and (max-width:1200px) {

}

@media screen and (max-width: 600px) {
  .--TopHeading { padding: 9vw 0; font-size: 3.0rem; }
  .--TopHeading small { font-size: 2.2rem; line-height: 1.0; }
}

/* TOP【メリット】
======================================================== */
.Body__TopMerit { margin: 0 auto; padding: 0 0 60px; width: 100%; background-image: url(/recruit/wp-content/uploads/2025/06/merit-bg.png); background-repeat: repeat; background-position: center top; background-size: 6px auto; }
.TopMerit { display: flex; flex-direction: column; align-items: flex-end; margin: 0 auto; padding: 0; width: 1100px; }
.TopMerit__Text { position: relative; margin: 0 0 3%; padding: 3% 3% 3% 8%; width: 82%; color: #fff; font-size: 4.0rem; font-weight: 900; letter-spacing: 0; line-height: 1.45; background-color: #00b7ce; counter-increment: merit-num; }
.TopMerit__Text strong { color: #f0ff00; }
.TopMerit__Text:before { position: absolute; left: -7%; top: 50%; transform: translateY(-50%); content: "MERIT"; width: 12%; height: 94%; background-image: url(/recruit/wp-content/uploads/2025/06/merit-serif.png); background-repeat: no-repeat; background-position: left center; background-size: 100% auto; display: flex; align-items: center; padding: 0 0 6% 2%; color: #00b7ce; font-size: 2.8rem; font-weight: 500; letter-spacing: 0; font-family: "Montserrat"; }
.TopMerit__Text:after { position: absolute; left: -7%; bottom: 14%; display: flex; justify-content: center; width: 12%; color: #00b7ce; font-size: 6.85rem; font-weight: 500; font-family: "Montserrat"; content: counter(merit-num, decimal-leading-zero); }
.TopMeritBottom { position: relative; display: flex; flex-direction: column; align-items: center; margin: 0 auto; padding: 80px 0; width: 1100px; }
.TopMeritBottom p { margin: 0; padding: 0 0 2rem; font-size: 2.2rem; font-weight: 700; line-height: 1.5; text-align: center; }
.TopMeritBottom p span { background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #e8fc00 0%) repeat scroll 0 0; }
.TopMeritBottom__ImageLeft { position: absolute; left: 0; bottom: 0; margin: 0; padding: 0; width: 16%; }
.TopMeritBottom__ImageRight { position: absolute; right: 0; top: 0; margin: 0; padding: 0; width: 22%; }
.TopMeritBottom__ImageLeft img,
.TopMeritBottom__ImageRight img { width: 100%; height: auto; }

@media only screen and (min-width:601px) and (max-width:1200px) {

}

@media screen and (max-width: 600px) {
  .Body__TopMerit { padding: 0 0 6vw; background-size: 1vw auto; }
  .TopMerit { width: 90%; }
  .TopMerit__Text { margin: 0 0 4vw; padding: 2.5% 3% 2.5% 24%; width: 73%; font-size: 2.3rem; line-height: 1.35; }
  .TopMerit__Text:before { left: -3%; padding: 0 0 7% 3%; width: 18%; font-size: 1.7rem; }
  .TopMerit__Text:after { left: 0; font-size: 4.2rem; }
  .TopMeritBottom { padding: 2vw 0 24vw; width: 100%; overflow: hidden; }
  .TopMeritBottom p { font-size: 1.8rem; }
  .TopMeritBottom__ImageLeft { left: -3%; bottom: 2vw; width: 24%; }
  .TopMeritBottom__ImageRight { top: initial; bottom: 0; right: -3%; width: 30%; }
}

/* TOP【トップメッセージ】
======================================================== */
.Body__TopGreeting { margin: 0 auto; padding: 0 0 100px; width: 100%; background-color: #00b7ce; }
.TopGreeting { display: flex; justify-content: space-between; align-items: flex-start; margin: 0 auto; padding: 0; width: 1100px; }
.TopGreeting__Primary { margin: 0; padding: 0; width: 30%; line-height: 0; border-radius: 10px; overflow: hidden; }
.TopGreeting__Primary img { width: 100%; height: auto; }
.TopGreeting__Secondary { margin: 0; padding: 0 2% 0 0; width: 62%; }
.TopGreeting__Secondary p { margin: 0; padding: 0 0 2rem; color: #fff; font-size: 1.8rem; line-height: 1.55; }
.TopGreeting__Secondary p strong { display: inline-block; padding: 0 0 10px; font-size: 3.1rem; font-weight: 900; }

@media only screen and (min-width:601px) and (max-width:1200px) {

}

@media screen and (max-width: 600px) {
  .Body__TopGreeting { padding: 0 0 10vw; }
  .TopGreeting { flex-direction: column; align-items: center; width: 90%; }
  .TopGreeting__Primary { margin: 0 auto 5vw; width: 48%; border-radius: 5px; }
  .TopGreeting__Secondary { margin: 0 auto; width: 98%; }
  .TopGreeting__Secondary p strong { padding: 0 0 5vw; width: 100%; font-size: 2.4rem; text-align: center; }
}

/* トップページ【会社を知る】【仕事を知る】【仲間を知る】
======================================================== */
.Body__TopAbout,
.Body__TopWork,
.Body__TopPeople { margin: 0 auto; padding: 40px 0 0; width: 100%; }
.Body__TopAbout .--TopHeading,
.Body__TopWork .--TopHeading,
.Body__TopPeople .--TopHeading { padding-bottom: 40px; }
.Body__TopWork .--TopHeading small { color: #dcf3f6; }
.Body__TopAbout .--TopIntroText,
.Body__TopWork .--TopIntroText,
.Body__TopPeople .--TopIntroText { padding-bottom: 20px; }
.Body__TopAbout .--BottomImage,
.Body__TopWork .--BottomImage,
.Body__TopPeople .--BottomImage { margin: 20px auto 0; padding: 0; width: 100%; }
.Body__TopAbout .--BottomImage:before,
.Body__TopWork .--BottomImage:before,
.Body__TopPeople .--BottomImage:before { padding-top: 21%; }


@media screen and (max-width: 600px) {
  .Body__TopAbout,
  .Body__TopWork,
  .Body__TopPeople { padding: 4vw 0 0; }
  .Body__TopAbout .--TopIntroText,
  .Body__TopWork .--TopIntroText,
  .Body__TopPeople .--TopIntroText { margin: 0 auto; padding-bottom: 8vw; width: 90%; line-height: 1.55; }
  .Body__TopAbout .--BottomImage:before,
  .Body__TopWork .--BottomImage:before,
  .Body__TopPeople .--BottomImage:before { padding-top: 37%; }
}

/* ヘッダータイトル
======================================================== */
.Body__PageTitle { position: relative; margin: 70px 0 0; padding: 0; width: 100%; }
.Body__PageTitleImage { position: absolute; left: 0; top: 50%; transform: translateY(-50%); margin: 0; padding: 0; width: 100%; height: 100%; }
.Body__PageTitleImage img { display: block; height: 330px; object-fit: cover; width: 100%; }
.PageTitle { position: relative; display: flex; flex-direction: column; justify-content: center; align-items: center; margin: 0; padding: 0; min-height: 330px; }
.Body__PageTitle h1 { margin: 0 auto; padding: 0; color: #fff; font-size: 4.2rem; font-weight: 900; letter-spacing: 0.05em; text-align: center; background: none; border: none; }
.Body__PageTitle h1 small { display: block; padding: 10px 0 0; color: #fff; font-size: 1.9rem; font-weight: 700; }


@media screen and (max-width: 600px) {
  .Body__PageTitle { margin: 13vw 0 0; }
  .Body__PageTitleImage img { height: 42vw; }
  .PageTitle { min-height: 42vw; }
  .Body__PageTitle h1 { font-size: 2.8rem; }
  .Body__PageTitle h1 small { padding: 2vw 0 0; font-size: 1.4rem; letter-spacing: 0.025em; }
}

/* パンくず
======================================================== */
.Body__BreadCrumbs { margin: 0 0 50px; padding: 15px 0; width: 100%; font-size: 1.4rem; }
.Body__BreadCrumbs a { text-decoration: none; }
.Body__BreadCrumbs .breadcrumbs i:before { color: #ffa000; content: "\e3af"; font-size: 1.4rem; font-weight: bold; font-family: "Font Awesome 5 Free"; font-style: normal; }
.breadcrumbs p#breadcrumbs,
.Body__BreadCrumbs .breadcrumbs i:before { font-size: 1.4rem; }

@media screen and (max-width: 600px) {
.Body__BreadCrumbs { margin: 0; padding: 1vw 0; font-size: 1rem; }
.breadcrumbs.--Wrap { margin: 0 auto; padding: 0; width: 90%; }
.breadcrumbs p#breadcrumbs,
.Body__BreadCrumbs .breadcrumbs i:before { font-size: 1.2rem; }
}

/* コンテンツ
======================================================== */
.Contents { display: flex; display: -webkit-flex; justify-content: space-between; align-items: start; padding: 50px 0; }
.Body__Main,
.Body__Archive { margin: 0 auto; padding: 0; width: 1100px; }
.GlobalLayout__Job { width: 100%; }
.ArchiveLayout__Main { width: 100%; }

@media screen and (max-width: 600px) {
  .Body__Main,
  .Body__Archive { width: 100%; margin: 0 auto; padding: 4vw 0 0; }
  .Body__Main > p.--AlignCenter { margin: 5vw auto 10vw; width: 88%; text-align: left; }
  .Contents { flex-direction: column; padding: 0; }
}

/* 会社概要・沿革
======================================================== */
.CompanyOutline table { width: 100%; }
.CompanyOutline table th { width: 23%; }
.CompanyGreeting { display: flex; justify-content: space-between; flex-wrap: wrap; margin: 0 auto; padding: 0; width: 100%; }
.CompanyGreeting h2 { width: 100%; }
.CompanyGreeting__Primary { margin: 0; padding: 0; width: 27%; }
.CompanyGreeting__Primary img { width: 100%; height: auto; }
.CompanyGreeting__Secondary { margin: 0; padding: 0; width: 65%; }
.CompanyHistory table { width: 100%; }
.CompanyHistory table th { width: 16%; }
.CompanyAwards { display: flex; justify-content: space-between; flex-wrap: wrap; margin: 0 auto; padding: 0 0 60px; width: 100%; }
.CompanyAwards h2,
.CompanyAwards p { width: 100%; }
.CompanyAwards p { padding-bottom: 50px; text-align: center; }
.CompanyAwards p strong { color: #00b7ce; font-size: 2.2rem; font-weight: 900; }
.CompanyAwards dl { display: flex; flex-direction: column; justify-content: center; align-items: center; margin: 0; padding: 0; width: 29%; min-height: 310px; background-image: url(/recruit/wp-content/uploads/2025/06/company-awards-bg.png); background-repeat: no-repeat; background-position: center top; background-size: 100% auto; }
.CompanyAwards dl dt,
.CompanyAwards dl dd { display: flex; justify-content: center; margin: 0; padding: 0; color: #fff; line-height: 1.2; text-align: center; }
.CompanyAwards dl dt { padding: 10px 0; font-size: 2.0rem; font-weight: 900; }
.CompanyAwards dl dd { font-size: 1.7rem; font-weight: 500; }

@media screen and (max-width: 600px) {
  .CompanyOutline table { margin: 0 auto; width: 90%; }
  .CompanyGreeting { flex-direction: column; align-items: center; margin: 5vw auto; width: 90%; }
  .CompanyGreeting__Primary { margin: 0 auto 5vw; width: 46%; }
  .CompanyGreeting__Secondary { padding: 0 0 5vw; width: 98%; }
  .CompanyGreeting__Secondary .--AlignRight { padding-top: 3vw; }
  .CompanyHistory table { margin: 0 auto; width: 90%; }
  .CompanyHistory table th { width: 33%; }
  .CompanyAwards { padding: 6vw 0 10vw; width: 90%; }
  .CompanyAwards p { margin: 0 auto; padding-bottom: 7vw; width: 96%; }
  .CompanyAwards dl { margin: 0 auto; width: 48%; min-height: 42vw; }
  .CompanyAwards dl dt { padding: 2vw 0 1vw; font-size: 1.3rem; }
  .CompanyAwards dl dd { font-size: 1.1rem; }
}

/* 企業理念
======================================================== */
.Philosophy { position: relative; margin: 0 calc(50% - 50vw); width: 100vw; }
.Philosophy:before { position: absolute; top: 13%; content: ""; display: inline-block; width: 70%; height: 87%; background-color: #f0f8fa; }
.Philosophy:nth-of-type(odd):before { right: 30%; }
.Philosophy:nth-of-type(even):before { left: 30%; }
.Philosophy:nth-last-of-type(1) { margin-bottom: 100px; }
.Philosophy__Item { position: relative; display: flex; justify-content: flex-end; align-items: center; margin: 0 auto 3%; padding: 0; width: 1100px; }
.Philosophy__Item.--Reverse { flex-direction: row-reverse; }
.Philosophy__Primary { position: absolute; top: 0; left: -10%; width: 53%; }
.Philosophy__Item.--Reverse .Philosophy__Primary { left: initial; right: -10%; }
.Philosophy__Primary img { width: 100%; height: auto; }
.Philosophy__Secondary { display: flex; flex-direction: column; margin: 0; padding: 12% 0 8%; width: 50%; }
.Philosophy__Secondary h3 { margin: 0; padding: 0 0 30px; width: 100%; color: #0055bc; font-size: 3.0rem; font-weight: 900; line-height: 1.2; background: none; border: none; }
.Philosophy__Secondary p { margin: 0 auto; padding: 0 0 30px; width: 100%; }


@media screen and (max-width: 600px) {
  .Philosophy { margin-bottom: 10vw; overflow: hidden; }
  .Philosophy:nth-of-type(1) { margin-top: 10vw; }
  .Philosophy:nth-last-of-type(1) { margin-bottom: 0; }
  .Philosophy:before { width: 100%; }
  .Philosophy:nth-of-type(odd):before { right: 0; }
  .Philosophy:nth-of-type(even):before { left: 0; }
  .Philosophy__Item { flex-direction: column; margin: 0 auto; width: 100%; }
  .Philosophy__Item.--Reverse { flex-direction: column; }
  .Philosophy__Primary { position: initial; margin: 0 10% 0 0; width: 90%; }
  .Philosophy__Item.--Reverse .Philosophy__Primary { margin: 0 0 0 10%; }
  .Philosophy__Secondary { margin: 0 auto; padding: 5vw 0; width: 90%; }
  .Philosophy:nth-of-type(1) .Merit__Secondary { padding-bottom: 5vw; }
  .Philosophy__Secondary h3 { padding: 0 0 5vw; font-size: 2.5rem; }
  .Philosophy__Secondary p { padding: 0 0 8vw; }
}

/* メリット
======================================================== */
.Merit { position: relative; margin: 0 calc(50% - 50vw); width: 100vw; }
.Merit:before { position: absolute; top: 13%; content: ""; display: inline-block; width: 70%; height: 87%; background-color: #f0f8fa; }
.Merit:nth-of-type(odd):before { right: 30%; }
.Merit:nth-of-type(even):before { left: 30%; }
.Merit__Item { position: relative; display: flex; justify-content: flex-end; align-items: center; margin: 0 auto 3%; padding: 0; width: 1100px; }
.Merit__Item.--Reverse { flex-direction: row-reverse; }
.Merit__Primary { position: absolute; top: 0; left: -10%; width: 53%; }
.Merit__Item.--Reverse .Merit__Primary { left: initial; right: -10%; }
.Merit__Primary img { width: 100%; height: auto; }
.Merit__Secondary { display: flex; flex-direction: column; margin: 0; padding: 8% 0 2%; width: 50%; }
.Merit:nth-of-type(1) .Merit__Secondary { padding-bottom: 9%; }
.Merit__Secondary h3 { margin: 0; padding: 0 0 30px; width: 100%; color: #0055bc; font-size: 3.0rem; font-weight: 900; line-height: 1.2; background: none; border: none; }
.Merit__Secondary p { margin: 0 auto; padding: 0 0 30px; width: 100%; }
.Merit:nth-of-type(2) .--Button,
.Merit:nth-of-type(4) .--Button,
.Merit:nth-of-type(6) .--Button { width: 52%; }
.Merit:nth-of-type(3) .--Button { width: 64%; }
.Merit:nth-of-type(5) .--Button,
.Merit:nth-of-type(7) .--Button { width: 58%; }


@media screen and (max-width: 600px) {
  .Merit { margin-bottom: 10vw; overflow: hidden; }
  .Merit:nth-last-of-type(1) { margin-bottom: 0; }
  .Merit:before { width: 100%; }
  .Merit:nth-of-type(odd):before { right: 0; }
  .Merit:nth-of-type(even):before { left: 0; }
  .Merit__Item { flex-direction: column; margin: 0 auto; width: 100%; }
  .Merit__Item.--Reverse { flex-direction: column; }
  .Merit__Primary { position: initial; margin: 0 10% 0 0; width: 90%; }
  .Merit__Item.--Reverse .Merit__Primary { margin: 0 0 0 10%; }
  .Merit__Secondary { margin: 0 auto; padding: 5vw 0; width: 90%; }
  .Merit:nth-of-type(1) .Merit__Secondary { padding-bottom: 5vw; }
  .Merit__Secondary h3 { padding: 0 0 5vw; font-size: 2.5rem; }
  .Merit__Secondary p { padding: 0 0 8vw; }
  .Merit:nth-of-type(2) .--Button,
  .Merit:nth-of-type(3) .--Button,
  .Merit:nth-of-type(4) .--Button,
  .Merit:nth-of-type(5) .--Button,
  .Merit:nth-of-type(6) .--Button,
  .Merit:nth-of-type(7) .--Button { width: 90%; }
}

/* ご家族の皆さまへ
======================================================== */
.FamilyMessage { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; margin: 0 auto; padding: 0; width: 100%; }
.FamilyMessage h2 { width: 100%; }
.FamilyMessage__Primary { margin: 0; padding: 0; width: 28%; }
.FamilyMessage__Primary img { width: 100%; height: auto; }
.FamilyMessage__Secondary { margin: 0; padding: 0; width: 65%; }
.FamilyMessage__Secondary p { padding-bottom: 20px; }
.FamilyFeatures__Item { display: flex; justify-content: space-between; align-items: flex-start; margin: 0 0 5%; padding: 2.5%; width: 95%; background-image: url(/recruit/wp-content/uploads/2025/06/merit-bg.png); background-repeat: repeat; background-position: center top; background-size: 6px auto; }
.FamilyFeatures__Primary { margin: 0; padding: 0; width: 46%; }
.FamilyFeatures__Primary img { width: 100%; height: auto; }
.FamilyFeatures__Secondary { margin: 0 1% 0 0; padding: 0; width: 49%; }
.FamilyFeatures__Secondary h3 { margin: 0 0 30px; padding: 2% 3%; width: 94%; color: #fff; font-size: 2.6rem; font-weight: 900; background-color: #00b7ce; border: none; }
.FamilyFeatures__Secondary p { padding-bottom: 30px; }
.FamilyFeatures__Secondary .--Button { padding-bottom: 0; }
.FamilyFeatures__Secondary .--Button a { color: #00b7ce; font-size: 1.6rem; background-color: #fff; border: 1px solid #00b7ce; transition: background-color 0.5s linear; }
.FamilyFeatures__Secondary .--Button a:hover { opacity: 1.0; color: #fff; background-color: #00b7ce; }
.FamilyFeatures__Item:nth-of-type(2) .--Button { width: 67%; }
.FamilyFeatures__Item:nth-of-type(3) .--Button,
.FamilyFeatures__Item:nth-of-type(4) .--Button { width: 79%; }
.FamilyFaq { margin: 0 auto; padding: 0 0 1%; /* ▼ご家族からよくある質問 */ }
.FamilyFaq p.--AlignCenter { margin: 0 auto; padding: 0 0 6%; }
.FamilyFaq__Item { margin: 0 auto 3%; padding: 0; }
.FamilyFaq h3 { position: relative; display: flex; align-items: center; margin: 0; padding: 2% 0 2% 9%; font-size: 2.0rem; font-weight: 700; background-color: #f1f8f9; border: none; }
.FamilyFaq h3:before { position: absolute; left: 2%; top: 50%; transform: translateY(-50%); content: "Q"; color: #00b7ce; font-size: 4.4rem; font-weight: 400; font-family: "Montserrat"; }
.FamilyFaq__Answer { display: none; margin: 0; padding: 0; border: 1px solid #f8f7f5; }
.FamilyFaq__Answer p { position: relative; margin: 0; padding: 2% 2% 2% 9%; width: 89%; font-size: 1.8rem; line-height: 1.65; }
.FamilyFaq__Answer p:before { position: absolute; left: 2%; top: 2%; content: "A"; color: #00b7ce; font-size: 4.4rem; font-weight: 400; font-family: "Montserrat"; }
.FamilyAwards { margin: 0 auto; padding: 0 0 5%; /* ▼受賞・表彰・許認可取得歴 */ }
.FamilyAwards__List { display: flex; justify-content: center; margin: 0 auto; padding: 4% 0 5%; }
.FamilyAwards__List li { margin: 0 3%; padding: 0; width: 32%; }
.FamilyAwards__List li img { width: 100%; height: auto; }
.FamilyAwards table { width: 100%; }
.FamilyAwards table th { width: 19%; white-space: nowrap; }

@media screen and (max-width: 600px) {
  .FamilyMessage { flex-direction: column; align-items: center; padding: 0 0 5vw; width: 90%; }
  .FamilyMessage__Primary { margin: 0 auto 5vw; width: 48%; }
  .FamilyMessage__Secondary { margin: 0 auto; width: 98%; }
  .FamilyFeatures__Item { flex-direction: column; margin: 0 auto 8vw; padding: 10vw 5%; width: 90%; background-size: 1vw auto; }
  .FamilyFeatures__Primary { margin: 0 auto 5vw; width: 80%; }
  .FamilyFeatures__Secondary { margin: 0 auto; width: 98%; }
  .FamilyFeatures__Secondary h3 { margin: 0 0 4vw; font-size: 2.2rem; }
  .FamilyFeatures__Secondary p { margin: 0 auto; padding-bottom: 3vw; width: 98%; }
  .FamilyFeatures__Item:nth-of-type(2) .--Button { width: 90%; }
  .FamilyFeatures__Item:nth-of-type(3) .--Button,
  .FamilyFeatures__Item:nth-of-type(4) .--Button { width: 100%; }
  .FamilyFeatures__Item:nth-of-type(3) .--Button a:after { right: 3vw; }
  .FamilyFeatures__Secondary .--Button a { font-size: 1.8rem; }
  .FamilyFaq { padding: 0 0 10vw; }
  .FamilyFaq p.--AlignCenter { padding: 0 0 8vw; width: 88%; }
  .FamilyFaq__Item { margin: 0 auto 5vw; width: 90%; }
  .FamilyFaq h3 { padding: 4vw 10%; font-size: 1.8rem; line-height: 1.15; }
  .FamilyFaq h3:before,
  .FamilyFaq__Answer p:before { font-size: 2.8rem; }
  .FamilyFaq__Answer p:before { top: 1.5vw; }
  .FamilyFaq__Answer p { padding: 3vw 5% 3vw 10%; width: 85%; line-height: 1.45; }
  .FamilyAwards { padding: 0 0 10vw; }
  .FamilyAwards p.--AlignCenter { margin: 0 auto; width: 88%; }
  .FamilyAwards table { margin: 0 auto; width: 90%; }
  .FamilyAwards table th { padding: 1.5% 2%;width: 38%; }
}

/* コンプライアンスを基軸とした経営
======================================================== */
.ComplianceIntro { position: relative; margin: 0 calc(50% - 50vw); width: 100vw; }
.ComplianceIntro:before { position: absolute; top: 13%; content: ""; display: inline-block; width: 70%; height: 87%; background-color: #f0f8fa; }
.ComplianceIntro:nth-of-type(odd):before { left: 30%; }
.ComplianceIntro:nth-of-type(even):before { right: 30%; }
.ComplianceIntro__Item { position: relative; display: flex; justify-content: flex-end; align-items: center; margin: 0 auto 3%; padding: 0; width: 1100px; }
.ComplianceIntro__Item.--Reverse { flex-direction: row-reverse; }
.ComplianceIntro__Primary { position: absolute; top: 0; left: -10%; width: 53%; }
.ComplianceIntro__Item.--Reverse .ComplianceIntro__Primary { left: initial; right: -10%; }
.ComplianceIntro__Primary img { width: 100%; height: auto; }
.ComplianceIntro__Secondary { display: flex; flex-direction: column; margin: 0; padding: 8% 0 2%; width: 50%; }
.ComplianceIntro__Secondary p { margin: 0; padding: 0 0 30px; width: 100%; }
.CompliancePolicy { display: flex; justify-content: center; flex-wrap: wrap; margin: 0 calc(50% - 50vw); padding: 7% 0 9%; width: 100vw; background-color: #00b7ce; }
.CompliancePolicy p.--AlignCenter { margin: 0; padding-bottom: 3%; width: 100%; color: #fff; }
.CompliancePolicy__Item { position: relative; display: flex; flex-direction: column; align-items: center; margin: 0 20px; padding: 0 0 2%; width: 340px; background-color: #fff; counter-increment: policy-num; }
.CompliancePolicy__Item:before { position: absolute; top: 0; left: 0; display: flex; justify-content: center; align-items: center; width: 50px; height: 50px; color: #fff; font-size: 2.8rem; font-weight: 500; font-family: "Montserrat"; background-color: #0055bc; content: counter(policy-num, decimal-leading-zero); }
.CompliancePolicy__Icon { padding-top: 5%; width: 26%; }
.CompliancePolicy__Icon img { width: 100%; height: auto; }
.CompliancePolicy__Heading { margin: 0 auto; padding: 0 0 5%; color: #00b7ce; font-size: 3.0rem; font-weight: 700; letter-spacing: 0.1em; text-align: center; background: none; border: none; }
.CompliancePolicy__Text { margin: 0 auto; padding: 0 10%; font-size: 1.8rem; line-height: 1.55; }
.ComplianceInitiative { position: relative; margin: 0 calc(50% - 50vw); width: 100vw; counter-increment: initiative-num; }
.ComplianceInitiative:before { position: absolute; top: 13%; content: ""; display: inline-block; width: 70%; height: 87%; background-color: #f0f8fa; }
.ComplianceInitiative:nth-of-type(odd):before { right: 30%; }
.ComplianceInitiative:nth-of-type(even):before { left: 30%; }
.ComplianceInitiative__Item { position: relative; display: flex; justify-content: flex-end; align-items: center; margin: 0 auto 3%; padding: 0; width: 1100px; }
.ComplianceInitiative__Item.--Reverse { flex-direction: row-reverse; }
.ComplianceInitiative:nth-of-type(1) { margin-top: 3%; }
.ComplianceInitiative:nth-last-of-type(1) { margin-bottom: 10%; }
.ComplianceInitiative__Primary { position: absolute; top: 0; left: -10%; width: 53%; }
.ComplianceInitiative__Primary figcaption { position: absolute; top: 0; right: 0; }
.ComplianceInitiative__Item.--Reverse .ComplianceInitiative__Primary figcaption { left: 0; }
.ComplianceInitiative__Primary figcaption:before { display: flex; justify-content: center; align-items: center; width: 50px; height: 50px; color: #fff; font-size: 2.8rem; font-weight: 500; font-family: "Montserrat"; background-color: #00b7ce; content: counter(initiative-num, decimal-leading-zero); }
.ComplianceInitiative__Item.--Reverse .ComplianceInitiative__Primary { left: initial; right: -10%; }
.ComplianceInitiative__Primary img { width: 100%; height: auto; }
.ComplianceInitiative__Secondary { display: flex; flex-direction: column; margin: 0; padding: 8% 0 2%; width: 50%; }
.ComplianceInitiative:nth-last-of-type(1) .ComplianceInitiative__Secondary { padding-bottom: 12%; }
.ComplianceInitiative__Secondary h3 { margin: 0; padding: 0 0 3%; color: #0055bc; font-size: 3.0rem; font-weight: 900; line-height: 1.3; background: none; border: none; }
.ComplianceInitiative__Secondary p { margin: 0; padding: 0 0 3%; width: 100%; }
.ComplianceInitiative__Secondary ul { margin: 0 0 2%; padding: 4%; background-color: #fff; border-radius: 20px; }
.ComplianceInitiative__Secondary ul li { padding-bottom: 2%; font-size: 1.8rem; }
.ComplianceInitiative__Secondary ul li:last-child { padding-bottom: 0; }
.ComplianceInitiative__Secondary ul li em { color: #00b7ce; font-style: normal; }

@media screen and (max-width: 600px) {
  .ComplianceIntro:before { width: 100%; }
  .ComplianceIntro:nth-of-type(odd):before { left: 0; }
  .ComplianceIntro:nth-of-type(even):before { right: 0; }
  .ComplianceIntro__Item { flex-direction: column; margin: 0 auto; width: 100%; }
  .ComplianceIntro__Primary { position: initial; margin: 0 10% 0 0; width: 90%; }
  .ComplianceIntro__Secondary { padding: 5vw 0 5vw; width: 90%; }
  .CompliancePolicy { padding: 10vw 0 5vw; }
  .CompliancePolicy p.--AlignCenter { padding-bottom: 8vw; width: 88%; }
  .CompliancePolicy__Item { margin: 0 auto 7vw; padding: 0; width: 66%; min-height: 64vw; }
  .CompliancePolicy__Item:before { width: 10vw; height: 10vw; font-size: 2.6rem; }
  .CompliancePolicy__Heading { padding: 0 0 5vw; font-size: 2.8rem; }
  .Main__ComplianceInitiative { padding: 5vw 0 0; }
  .Main__ComplianceInitiative p.--AlignCenter { margin: 0 auto 8vw; width: 88%; text-align: left; }
  .ComplianceInitiative { margin: 0 calc(50% - 50vw) 10vw; }
  .ComplianceInitiative:nth-of-type(1) { margin-top: 0; }
  .ComplianceInitiative:nth-last-of-type(1) { margin-bottom: 0; }
  .ComplianceInitiative:before { width: 100%; }
  .ComplianceInitiative:nth-of-type(odd):before { right: 0; }
  .ComplianceInitiative:nth-of-type(even):before { left: 0; }
  .ComplianceInitiative__Item { flex-direction: column; margin: 0 auto; width: 100%; }
  .ComplianceInitiative__Item.--Reverse { flex-direction: column; }
  .ComplianceInitiative__Primary { position: initial; margin: 0 10% 0 0; width: 90%; }
  .ComplianceInitiative__Item.--Reverse .ComplianceInitiative__Primary { margin: 0 0 0 10%; }
  .ComplianceInitiative__Primary figcaption:before { width: 10vw; height: 10vw; font-size: 2.6rem; }
  .ComplianceInitiative__Secondary { margin: 0 auto; padding: 5vw 0; width: 90%; }
  .ComplianceInitiative__Secondary h3 { padding: 0 0 3vw; font-size: 2.5rem; }
  .ComplianceInitiative__Secondary ul { margin: 2vw 0; border-radius: 10px; }
  .ComplianceInitiative__Secondary ul li { line-height: 1.4; }
}

/* 携帯販売業界の魅力
======================================================== */
.Attraction { position: relative; margin: 0 calc(50% - 50vw); width: 100vw; counter-increment: initiative-num; }
.Attraction:before { position: absolute; top: 13%; content: ""; display: inline-block; width: 70%; height: 87%; background-color: #f0f8fa; }
.Attraction:nth-of-type(odd):before { right: 30%; }
.Attraction:nth-of-type(even):before { left: 30%; }
.Attraction__Item { position: relative; display: flex; justify-content: flex-end; align-items: center; margin: 0 auto 3%; padding: 0; width: 1100px; }
.Attraction__Item.--Reverse { flex-direction: row-reverse; }
.Attraction:nth-of-type(1) { margin-top: 3%; }
.Attraction:nth-last-of-type(1) { margin-bottom: 10%; }
.Attraction__Primary { position: absolute; top: 0; left: -10%; width: 53%; }
.Attraction__Item.--Reverse .Attraction__Primary { left: initial; right: -10%; }
.Attraction__Primary img { width: 100%; height: auto; }
.Attraction__Secondary { display: flex; flex-direction: column; margin: 0; padding: 8% 0 10%; width: 50%; }
.Attraction:nth-of-type(1) .Attraction__Secondary { padding-bottom: 7%; }
.Attraction__Secondary h3 { margin: 0; padding: 0 0 3%; color: #0055bc; font-size: 3.0rem; font-weight: 900; line-height: 1.3; background: none; border: none; }
.Attraction__Secondary p { margin: 0; padding: 0 0 3%; width: 100%; }

@media screen and (max-width: 600px) {
  .Attraction { margin: 0 calc(50% - 50vw) 10vw; }
  .Attraction:before { width: 100%; }
  .Attraction:nth-of-type(odd):before { right: 0; }
  .Attraction:nth-of-type(even):before { left: 0; }
  .Attraction:nth-last-of-type(1) { margin-bottom: 0; }
  .Attraction__Item { flex-direction: column; margin: 0 auto; width: 100%; }
  .Attraction__Item.--Reverse { flex-direction: column; }
  .Attraction__Primary { position: initial; margin: 0 10% 0 0; width: 90%; }
  .Attraction__Item.--Reverse .Attraction__Primary { margin: 0 0 0 10%; }
  .Attraction__Secondary { margin: 0 auto; padding: 5vw 0; width: 88%; }
  .Attraction:nth-of-type(1) .Attraction__Secondary { padding-bottom: 5vw; }
  .Attraction__Secondary h3 { padding: 0 0 3vw; font-size: 2.5rem; }
  .Attraction__Secondary p { padding: 0 0 3vw; }
}

/* お仕事内容紹介
======================================================== */
.JobIntroduction { position: relative; margin: 0 calc(50% - 50vw); width: 100vw; counter-increment: initiative-num; }
.JobIntroduction:before { position: absolute; top: 13%; content: ""; display: inline-block; width: 70%; height: 87%; background-color: #f0f8fa; }
.JobIntroduction:nth-of-type(odd):before { right: 30%; }
.JobIntroduction:nth-of-type(even):before { left: 30%; }
.JobIntroduction__Item { position: relative; display: flex; justify-content: flex-end; align-items: center; margin: 0 auto 3%; padding: 0; width: 1100px; }
.JobIntroduction__Item.--Reverse { flex-direction: row-reverse; }
.JobIntroduction:nth-of-type(1) { margin-top: 3%; }
.JobIntroduction:nth-last-of-type(1) { margin-bottom: 10%; }
.JobIntroduction__Primary { position: absolute; top: 0; left: -10%; width: 53%; }
.JobIntroduction__Item.--Reverse .JobIntroduction__Primary { left: initial; right: -10%; }
.JobIntroduction__Primary img { width: 100%; height: auto; }
.JobIntroduction__Secondary { display: flex; flex-direction: column; margin: 0; padding: 10% 0 8%; width: 50%; }
.JobIntroduction:nth-of-type(2) .JobIntroduction__Secondary { padding: 10% 0 5%; }
.JobIntroduction:nth-of-type(3) .JobIntroduction__Secondary { padding-bottom: 5%; }
.JobIntroduction:nth-of-type(5) .JobIntroduction__Secondary { padding-bottom: 10%; }
.JobIntroduction__Secondary h3 { margin: 0; padding: 0 0 3%; color: #0055bc; font-size: 3.0rem; font-weight: 900; line-height: 1.3; background: none; border: none; }
.JobIntroduction__Secondary p { margin: 0; padding: 0 0 3%; width: 100%; }
.JobIntroduction__Secondary ul { margin: 0 0 2%; padding: 4%; background-color: #fff; border-radius: 20px; }
.JobIntroduction__Secondary ul li { padding-bottom: 2%; font-size: 1.8rem; }
.JobIntroduction__Secondary ul li:last-child { padding-bottom: 0; }
.JobIntroduction__Secondary ul li i { margin-right: 1%; font-size: 1.6rem; }

@media screen and (max-width: 600px) {
  .JobIntroduction { margin: 0 calc(50% - 50vw) 10vw; }
  .JobIntroduction:nth-of-type(1) { margin-top: 0; }
  .JobIntroduction:nth-last-of-type(1) { margin-bottom: 0; }
  .JobIntroduction:before { width: 100%; }
  .JobIntroduction:nth-of-type(odd):before { right: 0; }
  .JobIntroduction:nth-of-type(even):before { left: 0; }
  .JobIntroduction__Item { flex-direction: column; margin: 0 auto; width: 100%; }
  .JobIntroduction__Item.--Reverse { flex-direction: column; }
  .JobIntroduction__Primary { position: initial; margin: 0 10% 0 0; width: 90%; }
  .JobIntroduction__Item.--Reverse .JobIntroduction__Primary { margin: 0 0 0 10%; }
  .JobIntroduction__Secondary { padding: 5vw 0; width: 88%; }
  .JobIntroduction__Secondary h3 { padding: 0 0 3vw; font-size: 2.5rem; }
  .JobIntroduction__Secondary p { padding: 0 0 3vw; }
  .JobIntroduction__Secondary ul { border-radius: 10px; }
}

/* 未経験大歓迎の教育体制
======================================================== */
.EducationIntro { position: relative; margin: 0 calc(50% - 50vw); width: 100vw; }
.EducationIntro:before { position: absolute; top: 13%; content: ""; display: inline-block; width: 70%; height: 87%; background-color: #f0f8fa; }
.EducationIntro:nth-of-type(odd):before { left: 30%; }
.EducationIntro:nth-of-type(even):before { right: 30%; }
.EducationIntro__Item { position: relative; display: flex; justify-content: flex-end; align-items: center; margin: 0 auto 3%; padding: 0; width: 1100px; }
.EducationIntro__Item.--Reverse { flex-direction: row-reverse; }
.EducationIntro__Primary { position: absolute; top: 0; left: -10%; width: 53%; }
.EducationIntro__Item.--Reverse .ComplianceIntro__Primary { left: initial; right: -10%; }
.EducationIntro__Primary img { width: 100%; height: auto; }
.EducationIntro__Secondary { display: flex; flex-direction: column; margin: 0; padding: 8% 0 2%; width: 50%; }
.EducationIntro__Secondary h3 { margin: 0; padding: 0 0 3%; width: 100%; color: #00b7ce; font-size: 2.5rem; font-weight: 700; line-height: 1.35; background: none; border: none; }
.EducationIntro__Secondary p { margin: 0; padding: 0 0 3%; width: 100%; }
.EducationJob { margin: 0 calc(50% - 50vw); padding: 5% 0; width: 100vw; background-color: #f1f8f9; }
.EducationJob h2 { margin: 0 auto; padding-left: 0; padding-right: 0; width: 1100px; }
.EducationJob p.--AlignCenter { padding: 3% 0; }
.EducationJob__Bg { display: flex; justify-content: space-between; flex-wrap: wrap; margin: 0 auto; padding: 40px; width: 1020px; background-color: #fff; }
.EducationJob__Item { display: flex; justify-content: space-between; margin: 0 0 6%; padding: 0; width: 48%; }
.EducationJob__Avator { display: flex; flex-direction: column; margin: 0; padding: 0; width: 28%; }
.EducationJob__Avator img { width: 100%; height: auto; }
.EducationJob__Avator figcaption { padding-top: 5%; font-size: 1.6rem; text-align: center; }
.EducationJob__List { display: flex; flex-direction: column; align-items: center; margin: 0; padding: 0; width: 65%; }
.EducationJob__List dt { position: relative; margin: 0 0 15%; padding: 4% 0; width: 100%; color: #5c5c5c; font-size: 1.8rem; font-weight: 500; text-align: center; border: 1px dashed #999; }
.EducationJob__List dt:after { position: absolute; bottom: -85%; left: 50%; transform: translateX(-50%); content: "\f175"; color: #00b7ce; font-size: 2.4rem; font-family: "Font Awesome 6 Free"; font-weight: bold; }
.EducationJob__List dd { margin: 0; padding: 5% 0; width: 100%; color: #0055bc; font-size: 2.0rem; font-weight: 700; text-align: center; border-width: 2px; border-style: solid; border-color: #0155a7; }
.EducationSystem__Item { position: relative; display: flex; justify-content: flex-end; margin: 0 auto 3%; padding: 0; width: 100%; }
.EducationSystem__Name { position: absolute; z-index: 1; left: 0; top: 50%; transform: translateY(-50%); display: flex; justify-content: center; align-items: center; margin: 0; padding: 0 0 12px; width: 226px; height: 100px; color: #fff; font-size: 2.0rem; font-weight: 900; line-height: 1.4; text-align: center; background-repeat: no-repeat; background-position: center top; background-size: 100% auto; }
.EducationSystem__Item:nth-of-type(1) .EducationSystem__Name { background-image: url(/recruit/wp-content/uploads/2025/06/education-system-bg1.png); }
.EducationSystem__Item:nth-of-type(2) .EducationSystem__Name { background-image: url(/recruit/wp-content/uploads/2025/06/education-system-bg2.png); }
.EducationSystem__Item:nth-of-type(3) .EducationSystem__Name { background-image: url(/recruit/wp-content/uploads/2025/06/education-system-bg3.png); }
.EducationSystem__Item:nth-of-type(4) .EducationSystem__Name { background-image: url(/recruit/wp-content/uploads/2025/06/education-system-bg4.png); }
.EducationSystem__Item:nth-of-type(5) .EducationSystem__Name { background-image: url(/recruit/wp-content/uploads/2025/06/education-system-bg5.png); }
.EducationSystem__Item dl { display: flex; margin: 0; padding: 0; width: 82%; }
.EducationSystem__Image { width: 37%; }
.EducationSystem__Image img { width: 100%; height: auto; }
.EducationSystem__Text { display: flex; align-items: center; margin: 0; padding:  0 4%; width: 55%; font-size: 1.8rem; line-height: 1.7; }
.EducationImpressions { margin: 0 auto; padding: 5% 0; }
.EducationImpressions__Item { display: flex; justify-content: space-between; flex-wrap: wrap; }
.EducationImpressions__Image { margin: 0; padding: 0; width: 28%; }
.EducationImpressions__Image img { width: 100%; height: auto; }
.EducationImpressions__Text { margin: 0; padding: 0; width: 66%; }
.EducationImpressions__Text p { margin: 0; padding: 0; font-size: 1.8rem; line-height: 1.8; }

@media screen and (max-width: 600px) {
  .EducationIntro { margin: 0 calc(50% - 50vw) 10vw; }
  .EducationIntro:before { width: 100%; }
  .EducationIntro:nth-of-type(odd):before { left: 0; }
  .EducationIntro__Item { flex-direction: column; margin: 0 auto; width: 100%; }
  .EducationIntro__Primary { position: initial; margin: 0 10% 0 0; width: 90%; }
  .EducationIntro__Secondary { padding: 8vw 0 10vw; width: 88%; }
  .EducationIntro__Secondary h3 { padding: 0 0 5vw; font-size: 2.1rem; }
  .EducationIntro__Secondary p { padding: 0; }
  .EducationJob { padding: 12vw 0; }
  .EducationJob h2 { width: 90%; }
  .EducationJob p.--AlignCenter { margin: 0 auto; padding: 7vw 0; width: 88%; }
  .EducationJob__Bg { flex-direction: column; padding: 8vw 5% 4vw; width: 80%; }
  .EducationJob__Item { flex-direction: column; align-items: center; margin: 0 0 10vw; width: 100%; }
  .EducationJob__Avator { width: 36%; }
  .EducationJob__Avator figcaption { padding: 4vw 0 6vw; }
  .EducationJob__List { width: 90%; }
  .EducationJob__List dt { margin: 0 0 15vw; padding: 2.5vw 0; }
  .EducationJob__List dt:after { bottom: -12vw; font-size: 3.6rem; }
  .EducationJob__List dd { padding: 3vw 0; border-width: 1px; }
  .EducationSystem { margin: 0 auto; padding: 10vw 0 0; width: 90%; }
  .EducationSystem h2 { width: 100%; }
  .EducationSystem__ScrollHint { width: 200vw; }
  .EducationSystem .scroll-hint-icon-wrap { z-index: 2; }
  .EducationSystem__Item { margin: 0 auto 4vw; }
  .EducationSystem__Name { padding: 0 0 1.8vw; width: 40vw; height: 18vw; font-size: 1.8rem; }
  .EducationSystem__Image { width: 33%; }
  .EducationSystem__Text { padding: 0 6%; width: 53%; line-height: 1.5; }
  .EducationImpressions { padding: 5vw 0 15vw; }
  .EducationImpressions__Item { flex-direction: column; align-items: center; }
  .EducationImpressions__Image { margin: 0 auto 8vw; width: 48%; }
  .EducationImpressions__Text { width: 88%; }
  .EducationImpressions__Text p { line-height: 1.55; }
}

/* 努力が評価されるキャリアパス
======================================================== */
.CareerPathIntro { margin: 0 auto; padding: 4% 0; }
.CareerPathIntro table { border-collapse: separate; margin: 0 auto; padding: 1.5%; width: 97%; background-color: #e8f0f1; border: 1px solid #d8d8d8; }
.CareerPathIntro table th { color: #fff; font-size: 2.4rem; font-weight: 900; line-height: 1.1; text-align: center; background: none; border: none; }
.CareerPathIntro table th.--Management { width: 47%; background-color: #00b7ce; }
.CareerPathIntro table th.--Expert { width: 47%; background-color: #0055bc; }
.CareerPathIntro table td.--Space { padding: 1% 0; background: none; border: none; }
.CareerPathIntro table td.--ArrowUp { padding: 0.5% 0; background: none; border: none; }
.CareerPathIntro table td.--ArrowUp img { width: 3.5%; height: auto; }
.CareerPathIntro table td.--ArrowUp.--Wide img { width: 1.7%; height: auto; }
.CareerPathIntro table td.--ArrowSide { padding: 0; background: none; border: none; }
.CareerPathIntro table td.--ArrowSide img { width: 60%; height: auto; }
.CareerPathIntro table td.--Blank { background: none; border: none; }
.CareerPathIntro table td { color: #444; font-size: 1.6rem; line-height: 1.3; text-align: center; background-color: #fff; }
.CareerPathIntro table td.--Management strong { color: #00b7ce; font-size: 2.2rem; font-weight: 700; }
.CareerPathIntro table td.--Expert strong { color: #0055bc; font-size: 2.2rem; font-weight: 700; }
.CareerPathIntro table td.--Beginner strong { font-size: 2.2rem; font-weight: 700; }
.CareerPathPlan { margin: 0 auto; padding: 0 0 10%; }
.CareerPathPlan p.--AlignCenter { padding: 0 0 5%; }
.CareerPathPlan__Image { margin: 0; padding: 0; width: 100%; }
.CareerPathPlan__Image img { width: 100%; height: auto; }
.CareerPathCourse { margin: 0 auto; padding: 0 0 3%; }
.SubPage { display: flex; justify-content: space-between; margin: 0 auto; padding: 120px 0 0; max-width: 1100px; }
.SubPage.--Reverse { flex-direction: row-reverse; }
.SubPage__Image { position: relative; margin: -40px 0 0; width: 580px; z-index: 1; }
.SubPage__Image img { width: 100%; height: auto; }
.SubPage__Image.Right { margin-right: -80px; }
.SubPage__Image.Left img { margin-left: -80px; }
.SubPage__Text { margin-right: calc(50% - 50vw); margin-left: calc(50% - 50vw); padding-right: calc(50vw - 50%); padding-left: calc(50vw - 50%); padding-top: 60px; padding-bottom: 60px; position: relative; color: #fff; }
.SubPage__Text.--BgLightBlue { margin-right: initial; padding-right: initial; padding-top: 30px; padding-bottom: 60px; background: #00b7ce; }
.SubPage__Text.--BgDarkBlue { margin-left: initial; padding-left: initial; padding-top: 30px; padding-bottom: 60px; background: #0055bc; }
.SubPage__Text h3 { margin: 0 0 3%; padding: 1.5% 0; width: 85%; font-size: 3.0rem; font-weight: 900; background: none; border: none; border-bottom: 1px solid #fff; }
.SubPage__Text p { width: 740px; padding-right: 120px; font-size: 1.8rem; line-height: 1.5; }
.SubPage__Text.--BgLightBlue span { position: absolute; top: 150px; right: -140px; display: inline-block; transform: rotate(-90deg); color: #fff; font-size: 2.9rem; font-family: 'Montserrat'; opacity: 0.5; }
.SubPage__Text.--BgDarkBlue h3,
.SubPage__Text.--BgDarkBlue p { margin-left: 100px; margin-right: -100px; }
.SubPage__Text.--BgDarkBlue span { position: absolute; top: 150px; left: -90px; display: inline-block; transform: rotate(-90deg); color: #fff; font-size: 2.9rem; font-family: 'Montserrat'; opacity: 0.5; }

@media screen and (max-width: 600px) {
  .CareerPathIntro { width: 90%; }
  .CareerPathIntro table { padding: 2vw; width: 150%; max-width: initial !important; }
  .CareerPathIntro table th { font-size: 2.2rem; }
  .CareerPathIntro table td {  }
  .CareerPathIntro table td.--Management strong {  }
  .CareerPathIntro table td.--ArrowUp img { width: 2.5vw; }
  .CareerPathIntro table td.--ArrowSide img { width: 5vw; }
  .CareerPathIntro table td.--ArrowUp.--Wide img { width: 2.5vw; }
  .SubPage { padding: 12vw 0 0; max-width: 100%; }
  .SubPage__Text.--BgLightBlue { padding-top: 3vw; padding-bottom: 6vw; }
  .SubPage__Text.--BgDarkBlue { padding-top: 3vw; padding-bottom: 6vw; }
  .SubPage__Text h3 { margin: 0 auto 3vw; padding: 1.5vw 0; width: 90%; font-size: 2.6rem; }
  .SubPage__Text p { margin: 0 auto; width: 90%; padding-right: 0; }
  .SubPage__Text.--BgDarkBlue h3, .SubPage__Text.--BgDarkBlue p { margin-left: auto; margin-right: auto; }
  .SubPage__Text.--BgLightBlue span,
  .SubPage__Text.--BgDarkBlue span { display: none; }
  .CareerPathPlan { padding: 10vw 0; width: 90%; }
  .CareerPathPlan h2 { width: 100%; }
  .CareerPathPlan p.--AlignCenter { text-align: left; }
  .CareerPathPlan__Image { width: 200%; }
}

/* よくあるご質問
======================================================== */
.Faq { margin: 0 auto; padding: 0 0 1%; }
.Faq p.--AlignCenter { margin: 0 auto; padding: 0 0 6%; }
.Faq__Item { margin: 0 auto 3%; padding: 0; }
.Faq h3 { position: relative; display: flex; align-items: center; margin: 0; padding: 2% 0 2% 9%; font-size: 2.0rem; font-weight: 700; background-color: #f1f8f9; border: none; }
.Faq h3:before { position: absolute; left: 2%; top: 50%; transform: translateY(-50%); content: "Q"; color: #00b7ce; font-size: 4.4rem; font-weight: 400; font-family: "Montserrat"; }
.Faq__Answer { display: none; margin: 0; padding: 0; border: 1px solid #f8f7f5; }
.Faq__Answer p { position: relative; margin: 0; padding: 2% 2% 2% 9%; width: 89%; font-size: 1.8rem; line-height: 1.65; }
.Faq__Answer p:before { position: absolute; left: 2%; top: 2%; content: "A"; color: #00b7ce; font-size: 4.4rem; font-weight: 400; font-family: "Montserrat"; }

@media screen and (max-width: 600px) {
  .Faq { padding: 0 0 15vw; width: 90%; }
  .Faq__Item { margin: 0 auto 5vw; }
  .Faq h3 { padding: 4vw 10%; font-size: 1.8rem; line-height: 1.15; }
  .Faq h3:before,
  .Faq__Answer p:before { font-size: 2.8rem; }
  .Faq__Answer p:before { top: 1.5vw; }
  .Faq__Answer p { padding: 3vw 5% 3vw 10%; width: 85%; line-height: 1.45; }
}

/* イベント・社内活動
======================================================== */
.Event { position: relative; margin: 0 calc(50% - 50vw); width: 100vw; }
.Event:nth-of-type(1) { margin-top: 5%; }
.Event:before { position: absolute; top: 37%; content: ""; display: inline-block; width: 95%; height: 63%; background-color: #f0f8fa; }
.Event:nth-of-type(odd):before { right: 5%; }
.Event:nth-of-type(even):before { left: 5%; }
.Event__Item { position: relative; display: flex; justify-content: flex-end; align-items: center; flex-wrap: wrap; margin: 0 auto 4%; padding: 0; width: 1100px; }
.Event__Primary { display: flex; justify-content: space-between; align-items: flex-end; margin: 0; padding: 0; width: 100%; }
.Event__Primary.--Reverse { flex-direction: row-reverse; }
.Event__Primary dt { display: flex; flex-direction: column; margin: 0 0 7% 0; padding: 2.5% 0; width: 37%; color: #fff; font-size: 3.4rem; font-weight: 900; text-align: center; background-color: #00b7ce; }
.Event__Primary.--Reverse dt { margin-left: 0; }
.Event__Primary dt small { font-size: 2.0rem; }
.Event__Primary dd { display: flex; margin: 0 10% 0 0; padding: 0; width: 53%; }
.Event__Primary.--Reverse dd { margin: 0 0 0 10%; }
.Event__Primary dd figure { margin: 0; padding: 0; }
.slickEvent .slick-track { display: flex; }
.slickEvent .slick-list { display: flex; width: 100%; }
.slickEvent .slick-slide { height: auto !important; }
.slickEvent .slick-dots { display: flex; justify-content: center; bottom: -25px; left: 50%; transform: translateX(-50%); width: 96%; }
.slickEvent .slick-dots li button:before { color: #aeaeae; }
.slickEvent .slick-dots li.slick-active button:before { color: #00b7ce; }
.Event__Item.--Reverse .Event__Primary { left: initial; right: -10%; }
.Event__Primary img { width: 100%; height: auto; }
.Event__Secondary { display: flex; flex-direction: column; margin: 0 auto; padding: 3% 0; width: 78%; }
/* .Event:nth-of-type(1) .Merit__Secondary { padding-bottom: 9%; } */
.Event__Secondary h3 { margin: 0; padding: 0 0 30px; width: 100%; color: #0055bc; font-size: 3.0rem; font-weight: 900; background: none; border: none; }
.Event__Secondary p { margin: 0; padding: 0 0 30px; width: 100%; }
.Event__Secondary ul { margin: 0 0 2%; padding: 2% 1%; width: 30%; background-color: #fff; }
.Event__Secondary ul li { padding-bottom: 1%; font-size: 1.8rem; }
.Event__Secondary ul li:last-child { padding-bottom: 0; }
.Event__Secondary ul li i { margin-right: 1%; font-size: 1.6rem; }

@media screen and (max-width: 600px) {
  .Event { margin: 0 calc(50% - 50vw) 10vw; }
  .Event:before { width: 100%; }
  .Event:nth-of-type(odd):before { right: 0; }
  .Event:nth-of-type(even):before { left: 0; }
  .Event:nth-last-of-type(1) { margin-bottom: 0; }
  .Event__Item { flex-direction: column; margin: 0 auto; width: 100%; }
  .Event__Primary { margin: 0 auto; flex-direction: column; width: 90%; }
  .Event__Primary.--Reverse { flex-direction: column; }
  .Event__Primary dt { margin: 0 0 5vw; width: 100%; font-size: 2.8rem; }
  .Event__Primary dd { margin: 0; width: 100%; }
  .Event__Secondary { padding: 5vw 0; width: 88%; }
  .Event:nth-of-type(2) .Event__Secondary { padding-top: 12vw; }
  .Event__Secondary p { padding: 0 0 4vw; }
  .Event__Secondary ul { width: 98%; }
}

/* 働く社員へインタビュー
======================================================== */
.Body__Archive {  /* ▼一覧 */ }
.Body__Archive .--IntroText p { padding: 0 0 5%; font-size: 1.8rem; line-height: 1.65; text-align: center; }
.ArticleInterview { margin: 0; padding: 0 0 5%; counter-increment: interview-num; }
.ArticleInterview h2 { display: flex; flex-direction: column; align-items: center; margin: 0 auto; padding: 0; color: #00b7ce; font-size: 3.6rem; font-weight: 900; text-decoration: none; background: none; border: none; }
.ArticleInterview h2:before { display: flex; justify-content: center; margin: 0 auto; padding: 0; color: #dadada; font-size: 3.6rem; font-weight: 400; font-family: "Montserrat"; content: "#"counter(interview-num, decimal-leading-zero); }
.ArticleInterview h2 small { display: flex; justify-content: center; align-items: center; margin: 1% 0; padding: 0.5% 1%; width: 23%; color: #fff; font-size: 2.0rem; font-weight: 400; text-align: center; background-color: #0055bc; }
.ArchiveInterview { position: relative; margin: 0 calc(50% - 50vw); width: 100vw; }
.ArchiveInterview:before { position: absolute; top: 13%; right: 30%; content: ""; display: inline-block; width: 70%; height: 87%; background-color: #f0f8fa; }
.ArticleInterview.--Reverse .ArchiveInterview:before { right: initial; left: 30%; }
.ArchiveInterview__Item { position: relative; display: flex; justify-content: flex-end; align-items: center; margin: 0 auto 3%; padding: 0; width: 1100px; }
.ArchiveInterview__Item.--Reverse { flex-direction: row-reverse; }
.ArchiveInterview__Primary { position: absolute; top: 0; left: -10%; width: 53%; }
.ArchiveInterview__Item.--Reverse .ArchiveInterview__Primary { left: initial; right: -10%; }
.ArchiveInterview__Primary img { width: 100%; height: auto; }
.ArchiveInterview__Secondary { display: flex; flex-direction: column; margin: 0; padding: 9% 0 1%; width: 50%; }
/* .ArchiveInterview:nth-of-type(1) .ArchiveInterview__Secondary { padding-bottom: 9%; } */
.ArchiveInterview__Secondary p { margin: 0; padding: 0 0 30px; width: 100%; }
.ArchiveInterview .--Button { width: 30%; }
.ArchiveInterview .--Button a { padding: 5px 5%; font-size: 1.8rem; }

.SingleInterview { margin: 0 auto; padding: 0 0 5%; width: 1100px; /* ▼詳細 */ }
.SingleInterview__Intro { margin: 0 0 5%; padding: 3% 4%; font-size: 1.8rem; line-height: 1.65; background-color: #f1f8f9; }
.SingleInterview__List { display: flex; justify-content: space-between; margin: 0 0 5%; padding: 0; width: 100%; }
.SingleInterview__List dt { margin: 0; padding: 0; width: 50%; }
.SingleInterview__List dt img { width: 100%; height: auto; }
.SingleInterview__List dd { display: flex; justify-content: center; align-items: center; margin: 0; padding: 0; width: 50%; font-size: 3.6rem; font-weight: 900; }
.SingleInterviewBottom { padding: 0 0 40px; }
.SingleInterviewBottom__Text { margin: 0 6% 0 0; width: 44%; }
.SingleInterviewBottom__Text p { font-size: 1.8rem; line-height: 1.5; }
.SingleInterviewBottom__Detail { margin: 0; width: 50%; }
.SingleInterviewBottom__Detail dt { margin: 0 0 30px; padding: 15px 3%; width: 94%; color: #00b7ce; font-size: 1.6rem; font-weight: 700; border: 1px solid #00b7ce; }
.SingleInterviewBottom__Detail dd { padding: 0 0 40px; font-size: 1.8rem; line-height: 1.5; }

.PageNation { margin: 0 auto; padding: 5% 0; }
.PageNation .--Button { margin: 0 auto; width: 25%; }
.PageNation .--Button a:after { display: none; }

@media screen and (max-width: 600px) {
  .Body__Archive .--IntroText p { margin: 0 auto; width: 88%; text-align: left; }
  .ArticleInterview { margin: 0 auto 10vw; padding: 0; }
  .ArticleInterview:nth-last-of-type(1) { margin-bottom: 0; }
  .ArticleInterview h2 { margin: 0 auto 2vw; }
  .ArticleInterview h2 small { margin: 2vw 0; padding: 1.5vw 0; width: 70%; white-space: nowrap; }
  .ArticleInterview.--Reverse .ArchiveInterview:before { left: 0; }
  .ArchiveInterview:before { right: 0; width: 100%; }
  .ArchiveInterview__Item { flex-direction: column; margin: 0 auto; width: 100%; }
  .ArchiveInterview__Item.--Reverse { flex-direction: column; }
  .ArchiveInterview__Primary { position: initial; margin: 0 auto; width: 90%; }
  .ArchiveInterview__Item.--Reverse .ArchiveInterview__Primary {  }
  .ArchiveInterview__Secondary { margin: 0 auto; padding: 5vw 0; width: 88%; }
  .ArchiveInterview .--Button { margin: 0 auto; width: 80%; }
  .ArchiveInterview .--Button a { padding: 4vw 5%; }

  .SingleInterview { padding: 0 0 10vw; width: 90%; }
  .SingleInterview__Intro { margin: 5vw auto; line-height: 1.45; }
  .SingleInterview__List { flex-direction: column; margin: 0 0 5vw; }
  .SingleInterview__List dt {  width: 100%; }
  .SingleInterview__List dd { padding: 5vw 0; width: 100%; font-size: 3.2rem; }
  .SingleInterviewBottom { flex-direction: column; padding: 0 0 8vw; }
  .SingleInterviewBottom__Text { margin: 0 auto; padding: 0 0 8vw; width: 100%; }
  .SingleInterviewBottom__Detail { width: 100%; }
  .SingleInterviewBottom__Detail dt { margin: 0 0 4vw; padding: 2vw 3%; }
  .SingleInterviewBottom__Detail dd { padding: 0 0 4vw; }
  .PageNation .--Button { width: 50%; }
  .PageNation .--Button a:before { left: 4vw; }
  .PageNation .--Button a:after { display: none; }
}

/* 募集要項一覧
======================================================== */
.job-postings-filters { background: #f8f7f5; padding-bottom: 30px; margin: 0 auto; width: 100%; }
.job-postings-filters.filter-style-1 .job-listing-categories { background-color: #f7f7f7; padding: 50px 0 0px; text-align: center; float: inherit !important; width: 1100px !important; margin: 0 auto !important; display: flex; justify-content: center; flex-wrap: wrap; }
.job-postings-filters a.job-category { width: 235px; text-align: center; display: inline-block; font-size: 1.5rem; font-weight: bold; background-color: #fff; border: 1px solid #b6b6b6; border-radius: 30px !important; margin: 0 15px 30px; padding: 10px 20px; display: flex; justify-content: center; align-items: center; cursor: pointer; }
.job-postings-filters a.job-category { text-align: center; font-size: 1.5rem; font-weight: bold; cursor: pointer; }
.job-listing-categories .job-category.active { background: #ff7800 !important; }
.job-postings-filters .jobs-search { position: relative; width: 365px !important; margin: 0 auto; border: 1px solid #b6b6b6; border-radius: 5px; background-color: #fff; text-align: center; float: inherit !important; display: none; }
.jobs-search form { -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; padding: 0 30px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.job-postings-filters .jobs-search input.job-search { padding: 20px 0 !important; margin: 0; padding: 0; background: none; border: none; border-radius: 0; outline: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; }
.jobs-search .job-search-submit { background: none; border: none; top: 0 !important; }
#job_list { background: #00b7ce; padding: 60px 0; }
#job_list .wrap { width: 1100px; margin: 0 auto; }
#job_list .wrap ul { display: flex; justify-content: space-between; flex-wrap: wrap; margin: 0; padding: 0 0 40px; }
#job_list .wrap ul li { display: flex; flex-direction: column; margin: 0 0 4%; padding: 2%; width: 48%; border-radius: 10px; background: #fff; }
/* #job_list .wrap ul li div.job_box { display: flex; flex-direction: column; } */
.job_box table { width: 100%; }
.job_box thead th { padding: 0 0 0 20px; color: #0055bc; font-size: 2.6rem; font-weight: bold; line-height: 1.3; text-align: left; background: none; border: none; border-left: 4px solid #0055bc; }
.job_box thead th small { color: #00b7ce; font-size: 1.9rem; }
.job_box tbody tr { display: flex; padding: 2rem 0; border-bottom: 1px solid #d6d6d6; }
.job_box tbody th { position: relative; display: flex; align-items: center; width: 21%; padding: 0 2%; color: #333; font-weight: normal; background: none; border: none; }
.job_box tbody th:after { content: ""; position: absolute; left: 0; bottom: -2.1rem; height: 1px; width: 100%; background: #00b7ce; }
.job_box tbody td { width: 70%; padding: 0 2%; background: none; border: none; }
.job_box tbody td.Salary { display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden;  }
.job_box tbody td.Works { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;  }
.job_box tbody td.Works strong { font-weight: normal; }
.job_box .btn { margin: 20px 0 0; }
.job_box .btn a { position: relative; display: inline-block; margin: 0 10%; padding: 15px 0; width: 80%; color: #fff; font-size: 1.7rem; font-weight: 700; text-decoration: none; text-align: center; background: #0055bc; border-radius: 30px; }
.job_box .btn a:after { position: absolute; right: 25%; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); content: "\f054"; font-family: "Font Awesome 5 Free"; font-weight: bold; font-size: 1.3rem; }

@media screen and (max-width: 600px) {
.job-postings-filters.filter-style-1 .job-listing-categories { width: 100% !important; }
.job-postings-filters { padding-bottom: 3vw; margin: 0 auto; width: 100%; }
.job-postings-filters.filter-style-1 .job-listing-categories { flex-direction: column; padding: 5vw 0 0; }
.job-postings-filters a.job-category { width: 90%; margin: 0 5% 3vw; padding: 2vw 4vw; font-size: 1.8rem; }
.jobs-search form { padding: 0; width: 100%; }
.job-postings-filters .jobs-search { margin: 6vw auto !important; width: 90% !important; }
.jobs-search .job-search-submit { left: auto !important; right: 0; }
.job-postings-filters .jobs-search input.job-search { padding: 4vw 2vw !important; }
#job_list { padding: 6vw 0; }
#job_list .wrap { width: 90%; }
#job_list .wrap ul { padding: 0 0 4vw; flex-direction: column; }
#job_list .wrap ul li { margin: 0 0 6vw; padding: 4%; width: 100%; }
.job_box thead th { padding: 0 0 0 2vw; }
.job_box tbody th { width: 25%; }
.job_box tbody td { width: 75%; line-height: 1.5; }
.job_box tbody td.Works { -webkit-line-clamp: 4; }
.job_box .btn { margin: 6vw 0 4vw; }
.job_box .btn a { margin: 0; padding: 4vw 0; width: 100%; font-weight: bold; border-radius: 30px; }
}

/* ページネーション　
======================================================== */
.pagination { width: 100%; text-align: center; margin: 0 auto; padding: 0 0 150px; }
.GlobalLayout__Job .pagination { background: #00704a; }
.pagination a { display: inline-block; border: 1px solid #fff; padding: 12px 30px; font-size: 14px; font-size: 1.4rem; color: #333; text-decoration: none; background: #fff; }
.pagination span.current { display: inline-block; border: 1px solid #f9a600; padding: 10px 28px 11px; color: #fff; background: #f9a600; }
/* シングルページ */
.PageNation { margin: ; padding: 0; display: flex; justify-content: center; }
.PageNation a { position: relative; display: block; margin: 0 auto; padding: 20px; width: 290px; color: #fff; font-size: 1.6rem; font-weight: bold; text-decoration: none; text-align: center; background: #00b7ce; border-radius: 40px; }
.PageNation a:before { position: absolute; left: 20%; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); content: "\f053"; font-family: "Font Awesome 5 Free"; font-weight: bold; font-size: 1.3rem; }

@media screen and (max-width: 600px) {
  .pagination { padding: 0 0 15vw; }
  .pagination a { margin: 1vw 0; padding: 2vw 4vw; }
  .pagination span.current { margin: 1vw 0; padding: 1.8vw 3.8vw; }
  .PageNation a { padding: 4vw 0; width: 90%; }
}

/* 募集要項詳細
======================================================== */
.JobIntro h2:after, .JobOutline h2:after { content: ""; display: inline-block; position: absolute; bottom: -26px; right: 0; width: 47px; height: 27px; background: url(../../../uploads/2023/06/h2_arrow_right.png) no-repeat center center; background-size: auto 100%; }
.JobFeatures h2:after, .JobGreeting h2:after { content: ""; display: inline-block; position: absolute; bottom: -26px; left: 0; width: 47px; height: 27px; background: url(../../../uploads/2023/06/h2_arrow_left.png) no-repeat center center; background-size: auto 100%; }
/* 仕事内容 */
.JobIntro { padding: 60px 0 70px; background: #f0f8fa; }
.JobIntro dl { margin: 30px 0; padding: 0; }
.JobIntro dt { width: 37%; margin: 0 3% 0 0; }
.JobIntro dt:before {padding-top: 75%; }
.JobIntro dd { width: 60%; font-size: 1.8rem; line-height: 1.5; }
.JobIntro dd strong { display: block; padding: 10px 0 0; color: #0055bc; font-size: 2.0rem; }
/* 会社・店舗の特徴 */
.JobFeatures { padding: 60px 0 0; }
.JobFeatures__Intro { display: block; margin: 4rem auto 0; width: 60%; }
.JobFeatures ul { display: block; width: 80%; margin: 40px auto 0; }
.JobFeatures ul li { display: flex !important; flex-direction: column; width: 92% !important; margin: 0 4%; padding: 0; }
.JobFeatures ul li div { position: relative; display: flex; width: 100%; margin: 0; padding: 0; }
.JobFeatures ul li div:before { content: ""; display: block; padding-top: 65%; }
.JobFeatures ul li div img { position: absolute; width: 100%; height: 100%; top: 0; right: 0; bottom: 0; left: 0; margin: auto; object-fit: cover; z-index: 0; }
.JobFeatures ul li p { padding: 2rem 2%; line-height: 1.5; }
.JobFeatures ul.slick-dots li { display: inline-block !important; flex-direction: initial; width: 20px !important; margin: 0 5px; }
.JobFeatures .slick-prev, .JobFeatures .slick-next { z-index: 1; }
.JobFeatures .slick-prev { left: -12vw; }
.JobFeatures .slick-next { right: -12vw; }
.JobFeatures .slick-dots { bottom: -30px; left: 10%; }
.JobFeatures .slick-prev:before, .JobFeatures .slick-next:before { color: #fff; background: #00b7ce; border-radius: 30px; padding: 10px 14px; }
.JobFeatures .slick-prev:before { content: "\f053"; font-family: "Font Awesome 5 Free"; font-weight: bold; }
.JobFeatures .slick-next:before { content: "\f054"; font-family: "Font Awesome 5 Free"; font-weight: bold; }
/* 表組み */
.JobOutline { padding: 20px 0; }
.JobOutline table { margin: 90px auto 0; }
.JobOutline table, .JobOutline th, .JobOutline td { color: #333; font-size: 1.8rem; line-height: 1.5; border-collapse: collapse; border: 1px solid #cecece; }
.JobOutline table { width: 100%; }
.JobOutline th { margin: 0; padding: 20px; color: #333; font-weight: 700; text-align: left; background: #f0f8fa; white-space: nowrap; }
.JobOutline td { padding: 20px; }
.JobOutline td p { font-size: 1.8rem; }
/* 施設長あいさつ */
.JobGreeting { padding: 0 0 80px; }
.JobGreeting dl { margin: 90px 0; padding: 0; }
.JobGreeting dt { width: 27%; margin: 0 5% 0 0; }
.JobGreeting dt:before { padding-top: 100%; }
.JobGreeting dt img { }
.JobGreeting dd { width: 66%; font-size: 1.8rem; line-height: 1.5; }
.JobGreeting dd strong { display: block; color: #0055bc; font-size: 2.5rem; font-weight: 700; }
/* 応募ボタン */
.sec-child-detail-recruit-btn { margin: 60px auto; text-align: center; }
.jp-apply-button { position: relative; display: inline-block !important; padding: 25px 100px; color: #fff; font-size: 2.4rem; font-weight: bold; background: #00b7ce !important; border-radius: 50px !important; box-shadow: 0px 0px 3px 1px #e3e2de; }
.jp-apply-button:after { position: absolute; right: 30px; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); content: "\f054"; font-family: "Font Awesome 5 Free"; font-weight: bold; font-size: 1.8rem; }
.jobs-modal-form .job-submit { background: #00b7ce !important; }
.jobs-modal-form .job-submit:hover { cursor: pointer; color: #00b7ce !important; background: #fff !important; border: 1px solid #00b7ce !important; }
.jobs-modal-form h4 { color: #0055bc !important; border-bottom: 5px double #0055bc; }

@media screen and (max-width: 600px) {
  .JobIntro h2, .JobOutline h2, .JobFeatures h2, .JobGreeting h2 { width: 100%; }
  .JobIntro h2:after, .JobOutline h2:after { bottom: -2.6vw; width: 4.7vw; height: 2.7vw; }
  .JobFeatures h2:after, .JobGreeting h2:after { bottom: -2.6vw; width: 4.7vw; height: 2.7vw; }
  .JobFeatures__Intro { margin: 2rem auto; width: 100%; }
  .JobIntro { padding: 8vw 0 4vw; }
  .JobIntro dl { flex-direction: column; margin: 0; }
  .JobIntro dl dt { width: 90%; margin: 0 auto; }
  .JobIntro dl dd { padding: 4vw 0; width: 100%; }
  .JobFeatures { padding: 8vw 0 1vw; }
  .JobFeatures ul { margin: 0 auto; }
  .sec-child-detail-recruit-btn { margin: 12vw auto; }
  .jp-apply-button { padding: 4vw 0; width: 90%; font-size: 2.4rem; }
  .jp-apply-button:after { right: 3vw; font-size: 1.6rem; }
  .JobOutline { padding: 0; }
  .JobOutline table { margin: 0 auto; }
  .JobOutline table, .JobOutline th, .JobOutline td { border: 0.5px solid #cecece; }
  .JobOutline th { display: block; padding: 3%; white-space: initial; }
  .JobOutline td { display: block; padding: 3%; }
  .JobGreeting { padding: 6vw 0 16vw; }
  .JobGreeting dl { flex-direction: column; margin: 0; }
  .JobGreeting dl dt { width: 60%; margin: 0 auto; }
  .JobGreeting dl dd { padding: 4vw 0 0; width: 100%; }
  .JobGreeting dl dd strong { line-height: 1.3; }
  .jobs-modal-table { margin: 5%; width: 90% !important; }
}

/* お問い合わせフォーム　
======================================================== */
.--FormHeading { position: relative; padding: 20px 0; color: #fff; text-align: center; border: none; }
.--FormHeading:before,
.--FormHeading:after { content: ""; position: absolute; left: 0; display: inline-block; width: 100%; height: 1px; background: #fff; }
.--FormHeading:before { top: 5px; }
.--FormHeading:after { bottom: 5px; }
.BlockForm { display: flex; flex-wrap: wrap; padding-top: 0; width: 100%; background: #fff; border: none; }
.BlockForm dt { display: flex; justify-content: space-between; align-items: center; box-sizing: border-box; margin: -1px 0 0 0; padding: 3%; width: 25%; color: #442c17; font-size: 1.8rem; background: #f1f8f9; border: 1px solid #d6d6d6; }
.BlockForm dt p { position: relative; margin: 0; padding: 0; width: 100%; font-size: 2.0rem; font-weight: ; }
.BlockForm dt strong { font-size: 2.0rem; font-weight: 500; }
.BlockForm .BlockForm__Required,
.BlockForm .BlockForm__Optional { position: absolute; right: 0; }
.BlockForm .BlockForm__Required { padding: 2% 4%; color: #fff; font-size: 1.3rem; font-weight: normal; background-color: #da4b70; border-radius: 5px; }
.BlockForm .BlockForm__Optional { padding: 2% 4%; color: #fff; font-size: 1.3rem; font-weight: normal; background: #a3a3a3; border-radius: 5px; }
.BlockForm dd { box-sizing: border-box; margin: -1px 0 0 -1px; padding: 3%; width: 75%; border: 1px solid #d6d6d6; }
.BlockForm dd small { display: block; margin-top: 0.5rem; font-size: 1.25rem; color: #666; }
.BlockForm dd em { display: block; margin-top: 0.5rem; font-style: normal; color: #666; }
.BlockForm input[type="text"], .BlockForm input[type="email"] { border: 1px solid #c9c9c9; border-radius: 5px; margin-left: 0; padding: 10px 25px; height: 3rem; flex: 1; width: 90%; max-width: 90%; background: #fff; font-size: 1.6rem; }
.BlockForm ::placeholder { color: #cbcbcb; }
.BlockForm textarea { border: 1px solid #c9c9c9; border-radius: 5px; margin-left: 0; padding: 25px; height: 140px; flex: 1; width: 90%; max-width: 90%; background: #fff; font-size: 1.6rem; }
.BlockForm__Submit { display: inline-block; margin: 40px 0 80px 30%; padding: 2rem 0; width: 40%; color: #fff; font-size: 2.1rem; font-weight: bold; border-style: none; border-radius: 10px; }
.BlockForm__Submit:hover { opacity: 0.7; cursor: pointer; }
.BlockForm .wpcf7-list-item .wpcf7-list-item-label { line-height: 1.5; }

@media screen and (max-width: 600px) {
.BlockForm { width: 90%; margin: 0 auto; align-items: flex-start; flex-direction: column; }
.BlockForm dt { margin: -1px 0 0 0; width: 100%; position: relative; }
.BlockForm dd { margin: -1px 0 0 0; padding: 5% 3%; width: 100%; }
.BlockForm input[type="text"], .BlockForm input[type="email"] { padding: 2vw; width: 95%; max-width: 95%; }
.BlockForm textarea { padding: 2vw; width: 95%; max-width: 95%; }
.BlockForm__Submit { margin: 4vw 0 0 10%; padding: 4vw 0; width: 80%; font-size: 2.5rem; }
}

/* 検索結果　
======================================================== */
.BlockSearch { padding: 100px 0; font-size: 1.8rem; line-height: 1.5; }
.BlockSearch li { padding: 0 0 20px; }

@media screen and (max-width: 600px) {
.BlockSearch { width: 90%; margin: 0 auto; }
}

/* 新着情報
======================================================== */
.--TopHeading.--News { padding: 0 0 80px; font-size: 4.2rem; }
.--TopHeading.--News small { font-size: 1.9rem; }
.Body__TwoColumns { display: flex; justify-content: space-between; flex-wrap: wrap; margin: 0 auto; padding: 0; width: 1100px; }
.Body__TwoColumns .--NewsPageTitle { margin: 0 auto; padding: 0 0 40px; width: 100%; color: #333; font-size: 3.6rem; border-top: none; border-bottom: none; }
.ArchiveNews,
.SingleNews { display: flex; flex-direction: column; margin: 0; padding: 0 0 80px; width: 75%; }
.ArchiveNews__Article { position: relative; display: flex; justify-content: space-between; margin: 0; padding: 30px 0; width: 100%; border-bottom: 1px solid #e2e2e2; }
.ArchiveNews__Article a { position: absolute; z-index: 1; top: 0; left: 0; width: 100%; height: 100%; background-color: #fff; opacity: 0; }
.ArchiveNews__Article a:hover { opacity: 0.3; }
.ArchiveNews__Primary { margin: 0; padding: 0; width: 36%; }
.ArchiveNews__Primary:before { padding-top: 70%; }
.ArchiveNews__Secondary { display: flex; flex-direction: column; width: 60%; }
.ArchiveNews__Title { margin: 0; padding: 0 0 10px; width: 100%; color: #0055bc; font-size: 2.0rem; font-weight: 700; background: none; border: none; }
.ArchiveNews__Text { display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden; margin: 0; padding: 0; font-size: 1.6rem; line-height: 1.5; }
.ArchiveNews__Date { margin: 0; padding: 15px 0 0; color: #0055bc; font-size: 1.4rem; }
.SingleNews__Content { margin: 0; padding: 30px 0; width: 100%; /* ▼詳細ページ */ }
.SingleNews__Date { margin: 0 auto 50px; padding: 0 0 20px; width: 100%; border-bottom: 1px solid #e2e2e2; }
.SingleNews__Image { display: block; margin: 0 auto; padding: 0; }
.SingleNews__Image img { display: block; margin: 0 auto; max-width: 100%; height: auto; }

.NewsSidebar { display: flex; flex-direction: column; margin: 0; padding: 30px 0 0; width: 23%; }
.NewsSidebar__SubHeading { margin: 0; padding: 3% 5%; width: 90%; color: #fff; font-size: 1.6rem; font-weight: 700; background-color: #00b7ce; }
.NewsSidebar__List { margin: 0 0 80px; padding: 0; }
.NewsSidebar__List li { position: relative; margin: 0; padding: 0; width: 100%; }
.NewsSidebar__List li:before { position: absolute; top: 16px; left: 5px; content: "\f054"; color: #00b7ce; font-size: 1.0rem; font-family: "Font Awesome 5 Free"; font-weight: bold; }
.NewsSidebar__List li a { display: block; margin: 0; padding: 5% 9%; width: 82%; color: #333; font-size: 1.4rem; text-decoration: none; border-bottom: 1px solid #e2e2e2; }

.Body__TopNews { display: flex; flex-direction: column; margin: 0 auto; padding: 0 0 80px; width: 100%; }
.TopNews { display: flex; flex-direction: column; margin: 0 auto; padding: 0 0 60px; width: 1100px; border-top: 1px solid #eaeaea; }
.TopNews__Article { position: relative; display: flex; margin: 0; padding: 20px 0; width: 100%; border-bottom: 1px solid #eaeaea; transition: background-color 0.5s; }
.TopNews__Article:after { position: absolute; right: 20px; top: 50%; transform: translateY(-50%); content: "\f0a9"; color: #bce5ea; font-size: 1.8rem; font-family: "Font Awesome 5 Free"; font-weight: bold; }
.TopNews__Article:hover { background-color: #f6feff; }
.TopNews__Article a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.TopNews__Date { display: flex; align-items: center; margin: 0; padding: 0; width: 10%; font-size: 1.4rem; }
.TopNews__Category { display: flex; flex-direction: column; margin: 0 4% 0 0; padding: 0; width: 16%; }
.TopNews__Category li { display: inline-block; align-items: center; margin: 5px 0; padding: 10px 0; width: 100%; color: #00b7ce; font-size: 1.4rem; text-align: center; border: 1px solid #00b7ce; border-radius: 100px; }
.TopNews__Title { display: flex; align-items: center; margin: 0; padding: 0; width: 70%; }
.TopNews__Title p { display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; margin: 0; padding: 0; font-size: 1.8rem; line-height: 1.5; }
.Body__TopNews .--Button { margin: 0 auto; width: 300px; }
.Body__TopNews .--Button a { padding: 20px 0; }

@media screen and (max-width: 600px) {
	.--TopHeading.--News { padding: 10vw 0 5vw; font-size: ; }
	.--TopHeading.--News small { font-size: ; }
	.Body__TwoColumns { flex-direction: column; width: 90%; }
	.Body__TwoColumns .--NewsPageTitle { padding: 10vw 0 0; font-size: 3.2rem; }
	.ArchiveNews,
	.SingleNews { padding: 0 0 5vw; width: 100%; }
	.ArchiveNews__Article { flex-direction: column; padding: 6vw 0; }
	.ArchiveNews__Article a:hover { opacity: 0; }
	.ArchiveNews__Article a:active { opacity: 0.3; }
	.ArchiveNews__Primary { margin-bottom: 4vw; width: 100%; }
	.ArchiveNews__Secondary { width: 100%; }
	.ArchiveNews__Title { padding: 0 0 3vw; font-size: 2.3rem; }
	.ArchiveNews__Text { font-size: 1.8rem; }
	.ArchiveNews__Date  { padding: 3vw 0 0; font-size: 1.5rem; }
	.SingleNews__Date { margin: 0 auto 10vw; padding: 0 0 4vw; }
	.SingleNews__Content h2 { width: 100%; }
	.SingleNews .PageNation { width: 100%; }
	
	.NewsSidebar { padding: 6vw 0 0; width: 100%; }
	.NewsSidebar__SubHeading { padding: 3.5vw 5%; font-size: 1.9rem; }
	.NewsSidebar__List { margin: 0 0 12vw; }
	.NewsSidebar__List li:before { top: 6vw; left: 2vw; font-size: 1.2rem; }
	.NewsSidebar__List li a { padding: 4vw 9%; font-size: 1.8rem; }
	
	.Body__TopNews { padding: 0 0 12vw; }
	.TopNews { padding: 0 0 6vw; width: 90%; }
	.TopNews__Article { flex-wrap: wrap; padding: 4vw 0; }
	.TopNews__Article:after { right: 0; font-size: 2.2rem; }
	.TopNews__Date { width: 25%; font-size: 1.6rem; }
	.TopNews__Category { margin: 0 35% 0 0; width: 40%; }
	.TopNews__Category li { margin: 1vw 0; padding: 2vw 0; font-size: 1.5rem; }
	.TopNews__Title { padding: 2vw 0 0; width: 100%; }
	.TopNews__Title p { -webkit-line-clamp: 2; font-size: 1.9rem; }
	.Body__TopNews .--Button { width: 70%; }
	.Body__TopNews .--Button a { padding: 4vw 0; width: 100%; }
}

.ContactForm table { margin: 0 auto; padding: 0; width: 100%; border-collapse: collapse; }
.ContactForm table tr { display: flex; flex-wrap: wrap; padding-top: 0; width: 100%; background: #fff; border: none; }
.ContactForm table th { display: flex; justify-content: space-between; align-items: center; box-sizing: border-box; margin: -1px 0 0 0; padding: 3%; width: 30%; color: #333; font-size: 1.8rem; border: 1px solid #d6d6d6; }
.ContactForm table th p { position: relative; margin: 0; padding: 0; width: 100%; font-size: 1.8rem; font-weight: ; }
.ContactForm table th strong { font-size: 2.0rem; font-weight: 500; }
.ContactForm table .--Required,
.ContactForm table .--Optional { position: absolute; right: 0; }
.ContactForm table .--Required { padding: 2% 4%; color: #fff; font-size: 1.2rem; font-weight: normal; background-color: #da4b70; border-radius: 5px; }
.ContactForm table .--Optional { padding: 2% 4%; color: #fff; font-size: 1.2rem; font-weight: normal; background-color: #a3a3a3; border-radius: 5px; }
.ContactForm table td { box-sizing: border-box; margin: -1px 0 0 -1px; padding: 3%; width: 65%; border: 1px solid #d6d6d6; }
/* .ContactForm table td p { display: flex; justify-content: space-between; align-items: center; } */
.ContactForm table td small { display: block; margin-top: 0.5rem; font-size: 1.25rem; color: #666; }
.ContactForm table td em { display: inline-block; margin-right: 0.5rem; font-style: normal; color: #666; }
.ContactForm select { padding: 2%; border: 1px solid #c9c9c9; border-radius: 5px; }
.ContactForm input[type="text"],
.ContactForm input[type="tel"],
.ContactForm input[type="email"] { border: 1px solid #c9c9c9; border-radius: 5px; margin-left: 0; padding: 10px 25px; height: 3rem; flex: 1; width: 90%; max-width: 90%; background: #fff; font-size: 1.6rem; }
.ContactForm ::placeholder { color: #cbcbcb; }
.ContactForm textarea { border: 1px solid #c9c9c9; border-radius: 5px; margin-left: 0; padding: 25px; height: 140px; flex: 1; width: 90%; max-width: 90%; background: #fff; font-size: 1.6rem; }
.ContactForm input[type="text"].--PostalCode { width: 20%; }
.ContactForm input[type="text"].--Address { width: 50%; }
.ContactForm input[type="text"].--Half { width: 30%; }
.ContactForm__Submit { display: flex; flex-direction: column; align-items: center; margin: 0 auto; }
.ContactForm__Submit input[type="submit"] { display: inline-block; margin: 40px 0 80px; padding: 2rem 0; width: 40%; color: #fff; font-size: 2.1rem; font-weight: bold; background-color: #0055bc; border-style: none; border-radius: 10px; }
.ContactForm__Submit input[type="submit"]:hover { opacity: 0.7; cursor: pointer; }

@media screen and (max-width: 600px) {
  .ContactForm table { width: 90%; margin: 0 auto; align-items: flex-start; flex-direction: column; }
  .ContactForm table th { margin: -1px 0 0 0; width: 100%; position: relative; }
  .ContactForm table td { margin: -1px 0 0 0; padding: 5% 3%; width: 100%; }
  .ContactForm table td.--Column p { display: flex; justify-content: flex-start; align-items: center; flex-wrap: wrap; }
  .ContactForm table td em { padding: 1vw 0; width: 30%; text-align: right; }
  .ContactForm table td .wpcf7-form-control-wrap { padding: 1vw 0; width: 60%; }
  .ContactForm input[type="text"].--PostalCode { width: 100%; }
  .ContactForm input[type="text"].--Address { width: 100%; }
  .ContactForm input[type="text"].--Half { width: 100%; }
  .ContactForm table input[type="text"],
  .ContactForm table input[type="tel"],
  .ContactForm table input[type="email"] { padding: 2vw; width: 95%; max-width: 95%; }
  .ContactForm table textarea { padding: 2vw; width: 95%; max-width: 95%; }
  .ContactForm__Submit { padding: 10vw 0; }
  .ContactForm__Submit input[type="submit"] { margin: 0 auto; padding: 4vw 0; width: 80%; font-size: 2.5rem; }
}

/* Page Navi　
======================================================== */
.PageNavi { display: flex; flex-direction: column; width: 100%; margin: 0 auto; padding: 30px 0; }
.PageNavi__Info { padding-bottom: 20px; }
.PageNavi__Info, .wp-pagenavi { display: flex; justify-content: center; margin: 0; width: 100%; }
.wp-pagenavi .pages, .wp-pagenavi .previouspostslink .wp-pagenavi .nextpostslink { display: none; }
.wp-pagenavi a,
.wp-pagenavi span { padding: 0.5vw 0.75vw !important; border-width: 1px; border-style: solid; /* border-radius: 3px; */ }
.wp-pagenavi span.current { color: #fff; }
.wp-pagenavi a:hover,
.wp-pagenavi span.current { opacity: 1.0; color: #fff; font-weight: 400; }
.wp-pagenavi a,
.wp-pagenavi span { font-weight: 400; }

@media screen and (max-width: 600px) {
  .PageNavi { margin: 0 auto; padding: 4vw 0 4vw; width: 100%; flex-direction: column; }
  .PageNavi div { text-align: center; font-size: 1.6rem; flex-wrap: wrap; }
  .PageNavi__Info { padding-bottom: 4vw; }
  .wp-pagenavi { width: 100%; }
  .wp-pagenavi a, .wp-pagenavi span { padding: 2vw 3vw !important; font-size: 1.8rem !important; }
}

/* Slick　
======================================================== */
.slick-prev, .slick-next { font-size: 0; line-height: 0; position: absolute; top: 50%; display: block; width: 12vw; height: 12vw; padding: 0; -webkit-transform: translate(0, -50%); -ms-transform: translate(0, -50%); transform: translate(0, -50%); cursor: pointer; color: transparent; border: none; outline: none; background: transparent; }
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus { color: transparent; outline: none; background: transparent; }
.slick-prev:hover:before, .slick-prev:focus:before, .slick-next:hover:before, .slick-next:focus:before { opacity: 1; }
.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before { opacity: .25; }
.slick-prev:before, .slick-next:before { font-family: 'slick'; font-size: 20px; line-height: 1; opacity: .75; color: white; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.slick-prev { left: -25px; }
[dir='rtl'] .slick-prev { right: -25px; left: auto; }
.slick-prev:before { content: '←'; }
[dir='rtl'] .slick-prev:before { content: '→'; }
.slick-next { right: -25px; }
[dir='rtl'] .slick-next { right: auto; left: -25px; }
.slick-next:before { content: '→'; }
[dir='rtl'] .slick-next:before { content: '←'; }
.slick-dotted.slick-slider { margin-bottom: 30px; }
.slick-dots { position: absolute; bottom: -2vw; display: block; width: 100%; padding: 0; margin: 0; list-style: none; text-align: center; }
.slick-dots li { position: relative; display: inline-block; width: 20px; height: 20px; margin: 0 5px; padding: 0; cursor: pointer; }
.slick-dots li { background: none !important; border: none !important; }
.slick-dots li button { font-size: 0; line-height: 0; display: block; width: 20px; height: 20px; padding: 5px; cursor: pointer; color: transparent; border: 0; outline: none; background: transparent; }
.slick-dots li button:hover, .slick-dots li button:focus { outline: none; }
.slick-dots li button:hover:before, .slick-dots li button:focus:before { opacity: 0.7; }
.slick-dots li button:before { font-family: "Font Awesome 5 Free"; font-weight: 900; font-size: 1.5rem; line-height: 20px; position: absolute; top: 0; left: 0; width: 20px; height: 20px; content: '\f111'; text-align: center; opacity: .25; color: black; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.slick-dots li.slick-active button:before { opacity: 1; }
.slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -khtml-user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }
.slick-list { position: relative; display: block; overflow: hidden; margin: 0; padding: 0; }
.slick-list:focus { outline: none; }
.slick-list.dragging { cursor: pointer; cursor: hand; }
.slick-slider .slick-track, .slick-slider .slick-list { -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
.slick-track { position: relative; top: 0; left: 0; display: block; margin-left: auto; margin-right: auto; }
.slick-track:before, .slick-track:after { display: table; content: ''; }
.slick-track:after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }
.slick-slide { display: none; float: left; min-height: 1px; }
[dir='rtl'] .slick-slide { float: right; }
.slick-slide img { display: block; }
.slick-slide.slick-loading img { display: none; }
.slick-slide.dragging img { pointer-events: none; }
.slick-initialized .slick-slide { display: block; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }
.slick-arrow.slick-hidden { display: none; }
.slider .slick-arrow { width: 1.75vw; height: auto; position: absolute; z-index: 1; top: 47%; opacity: 0.5; }
.slider .slick-arrow:hover { opacity: 1; cursor: pointer; }
.slider .prev-arrow { left: 0; }
.slider .next-arrow { right: 0; }
@media screen and (max-width: 600px) {
ul.slider { left: 0 !important; }
.slider .slick-arrow { width: 7vw; top: 42%; }
.slider .prev-arrow { left: -3vw; }
.slider .next-arrow { right: -3vw; }
.slick-initialized .slick-slide { margin: 0; }
}

a { color: #00b7ce; }
h2 { color: #0055bc; border-top-color: #0055bc; border-bottom-color: #00b7ce; }
h3 { color: ; border-left-color: ; }
h4 { color: ; }
.--LeadText { color: ; }
.GlobalNavi li a:after { background-color: #00b7ce; }
.GlobalLayout__Top h3 span { color: ; }
.GlobalLayout__Top h3:after { background-color: ; }
.GlobalLayout__FooterBanner { background-image: url(); }
.GlobalLayout__Footer { background-color: ; }
.FooterNavi a:before { color: ; }
.HeaderNavi__Info strong { color: #00b7ce; }
.HeaderNavi__Button a:before { background-color: #da4b70; }
.GlobalNavi .sub-menu { background: rgba(0,183,206,0.95); }
.sp-nav-item { background: rgba(0,183,206,0.95); }
.NaviSP,
.NaviSP .sub-menu li:first-child { border-top-color: ; }
.NaviSP li { border-bottom-color: ; }
.NaviSP li.menu-item-has-children a.on { color: #0055bc; }
.MainVisual__Button a { background-color: ; }
.MainVisual__Button a:before { background-color: ; }
.slick-dots li.slick-active button:before { color: ; }
.slick-dots li button:hover:before, .slick-dots li button:focus:before { color: ; }
.GlobalLayout__BreadCrumbs .breadcrumbs i:before { color: #00b7ce; }
.GlobalLayout__ContentsTitle { background-color: #f1f8f9;  }
.GlobalLayout__ContentsTitle h1 { color: ; }
.GlobalLayout__ContentsTitle h1:after { background-color: ; }
.FacilityContents__Button a { background-color: ; }
.--Detail dl dt { color: #00b7ce; border-bottom-color: #0055bc; }
.FamilyAttempt dl { border-color: #00b7ce; /* ご家族の皆様へ */ }
.FamilyAttempt dl dd em { color: #00b7ce; }
.FamilyAttempt dl dd em:after { background-color: #0055bc; }
.FamilyFAQ dt { color: #00b7ce; }
.FamilyFAQ dt:before { background-color: #00b7ce; }
.WorkJobContents__Heading { color: #0055bc; /* 仕事内容紹介 */ }
.WorkFlow li:before { background-color: #0055bc; /* 研修・教育制度 */ }
.WorkFlow__Text em { color: #00b7ce; border-left-color: #0055bc; }
.BeginnerTable thead th em:before, .BeginnerTable thead th em:after { background-color: #0055bc; }
.BeginnerTable tbody th { color: #00b7ce; }
.BeginnerTable tbody th { background: #f1f8f9;  }
.BeginnerTable tbody td { border-bottom-color: #f1f8f9; }
.BeginnerVoice__Text em { color: #00b7ce; border-left-color: #0055bc; }
.EventResident__Text em { color: #00b7ce; border-left-color: #0055bc; /* 社内行事・イベント */ }
.InterviewText em { color: #00b7ce; border-left-color: #0055bc; /* 先輩社員インタビュー */ }
.--FormHeading { background-color: #0055bc; /* 応募フォーム */ }
.BlockForm__Submit { background-color: #0055bc;  }
.job_box thead th { color: #00b7ce; border-left-color: #0055bc; /* 募集要項：一覧 */ }
.job_box thead th small { color: #0055bc; }
.job_box tbody th { color: #00b7ce;  }
.job_box tbody th:after { background: #0055bc; }
.job_box .btn a { background: ; }
.jp-apply-button { background:  !important; /* 募集要項：詳細 */ }
.JobFeatures .slick-prev:before,
.JobFeatures .slick-next:before { background: #00b7ce; }
.JobOutline th { color: #0055bc !important; }
.jobs-modal-form h4 { color: #00b7ce !important; border-bottom-color: #0055bc; }
.jobs-modal-form .job-submit { background: #0055bc !important; }
.jobs-modal-form .job-submit:hover { color: #0055bc !important; border-color: #0055bc !important; }
