@charset "UTF-8";
:root {
  --main-color: #00a496;
  --key-color: #00a496;
  --text-color: #423e39;
  --text-color-secondary: #5b5145;
  --color-bg01: #f8f0e4;
  --color-bg02: #fffdf5;
  --color-section-warm: #f6e4ce;
  --gray01: #c9c9c9;
  --white: #fff;
  --black: #000;
  --border-light: #dedede;
  --color-accent-orange: #f5a421;
  --color-accent-orange-hover: #e0951e;
  --main-color-hover: #008873;
  --color-yt: #cd201f;
  --color-fb: #3b5998;
  --color-tw: #55acee;
  --color-ln: #00b900;
  --main-width: 1200px;
  --header-height-pc: 100px;
  --header-height-sp: 72px;
  --font-sans-serif: "Roboto", "Noto Sans JP", "游ゴシック Medium", "游ゴシック", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
  --font-title: "Zen Kaku Gothic New", "Noto Sans JP", "Roboto", sans-serif;
  --reg: 400;
  --med: 500;
  --semibold: 600;
  --bold: 700;
}

/*** The new CSS reset - version 1.11.3 (last updated 25.8.2024) ***/
*:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)) {
  all: unset;
  display: revert;
}

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

html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

a, button {
  cursor: revert;
}

ol, ul, menu, summary {
  list-style: none;
}

ol {
  counter-reset: revert;
}

img {
  max-inline-size: 100%;
  max-block-size: 100%;
}

table {
  border-collapse: collapse;
}

input, textarea {
  -webkit-user-select: auto;
}

textarea {
  white-space: revert;
}

meter {
  -webkit-appearance: revert;
  appearance: revert;
}

:where(pre) {
  all: revert;
  box-sizing: border-box;
}

::placeholder {
  color: unset;
}

:where([hidden]) {
  display: none;
}

:where([contenteditable]:not([contenteditable=false])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  -webkit-user-select: auto;
}

:where([draggable=true]) {
  -webkit-user-drag: element;
}

:where(dialog:modal) {
  all: revert;
  box-sizing: border-box;
}

::-webkit-details-marker {
  display: none;
}

@font-face {
  font-family: "851MkPOP";
  src: url("../webfonts/851MkPOP.woff2") format("woff2");
  font-display: swap;
}
* {
  box-sizing: border-box;
}

::selection {
  color: var(--text-color);
  background-color: var(--main-color);
}

html {
  scroll-behavior: auto;
}

html, body {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  font-size: 10px;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background-color: var(--color-bg01);
}

/* 1400px未満はフォントの基準値を可変化（PC大/ SP は現状維持） */
@media print, screen and (max-width: 1399px) and (min-width: 769px) {
  html,
  body {
    font-size: clamp(8.8px, 0.7142857143vw, 10px);
  }
}
body {
  font-family: var(--font-sans-serif);
  color: var(--text-color);
}

body, img {
  -webkit-user-drag: none;
  -khtml-user-drag: none;
}

img {
  width: 100%;
  height: auto;
  vertical-align: top;
}

/*  link 
-----------------------------------------------------------------------------*/
a {
  transition-property: background-color, opacity, color;
  transition-duration: 0.3s;
  transition-timing-function: ease;
}
a img {
  border: 0;
}
a, a:hover, a:visited, a:active {
  color: inherit;
  text-decoration: none;
}

@media print, screen and (min-width: 769px) {
  .sp {
    display: none !important;
  }
}
@media print, screen and (max-width: 768px) {
  .pc {
    display: none !important;
  }
}
/*  reset 
-----------------------------------------------------------------------------*/
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video,
input,
button,
textarea,
select {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
}

body {
  line-height: 1.5;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ul, ol {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

a {
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

input,
select {
  vertical-align: middle;
}

input {
  -webkit-appearance: none;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

select::-ms-expand {
  display: none;
}

input,
button,
select,
textarea {
  font-family: var(--font-sans-serif);
}

button,
input[type=submit] {
  cursor: pointer;
  transition: 0.3s ease;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  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;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide {
  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;
}

/*!
 * Font Awesome Free 5.6.1 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
.fa, .fab, .fal, .far, .fas {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
}

.fa-lg {
  font-size: 1.33333em;
  line-height: 0.75em;
  vertical-align: -0.0667em;
}

.fa-xs {
  font-size: 0.75em;
}

.fa-sm {
  font-size: 0.875em;
}

.fa-1x {
  font-size: 1em;
}

.fa-2x {
  font-size: 2em;
}

.fa-3x {
  font-size: 3em;
}

.fa-4x {
  font-size: 4em;
}

.fa-5x {
  font-size: 5em;
}

.fa-6x {
  font-size: 6em;
}

.fa-7x {
  font-size: 7em;
}

.fa-8x {
  font-size: 8em;
}

.fa-9x {
  font-size: 9em;
}

.fa-10x {
  font-size: 10em;
}

.fa-fw {
  text-align: center;
  width: 1.25em;
}

.fa-ul {
  list-style-type: none;
  margin-left: 2.5em;
  padding-left: 0;
}

.fa-ul > li {
  position: relative;
}

.fa-li {
  left: -2em;
  position: absolute;
  text-align: center;
  width: 2em;
  line-height: inherit;
}

.fa-border {
  border: 0.08em solid #eee;
  border-radius: 0.1em;
  padding: 0.2em 0.25em 0.15em;
}

.fa-pull-left {
  float: left;
}

.fa-pull-right {
  float: right;
}

.fa.fa-pull-left, .fab.fa-pull-left, .fal.fa-pull-left, .far.fa-pull-left, .fas.fa-pull-left {
  margin-right: 0.3em;
}

.fa.fa-pull-right, .fab.fa-pull-right, .fal.fa-pull-right, .far.fa-pull-right, .fas.fa-pull-right {
  margin-left: 0.3em;
}

.fa-spin {
  animation: fa-spin 2s infinite linear;
}

.fa-pulse {
  animation: fa-spin 1s infinite steps(8);
}

@keyframes fa-spin {
  0% {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(1turn);
  }
}
.fa-rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  transform: rotate(90deg);
}

.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  transform: rotate(180deg);
}

.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  transform: rotate(270deg);
}

.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  transform: scaleX(-1);
}

.fa-flip-vertical {
  transform: scaleY(-1);
}

.fa-flip-horizontal.fa-flip-vertical, .fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
}

.fa-flip-horizontal.fa-flip-vertical {
  transform: scale(-1);
}

:root .fa-flip-horizontal, :root .fa-flip-vertical, :root .fa-rotate-90, :root .fa-rotate-180, :root .fa-rotate-270 {
  filter: none;
}

.fa-stack {
  display: inline-block;
  height: 2em;
  line-height: 2em;
  position: relative;
  vertical-align: middle;
  width: 2.5em;
}

.fa-stack-1x, .fa-stack-2x {
  left: 0;
  position: absolute;
  text-align: center;
  width: 100%;
}

.fa-stack-1x {
  line-height: inherit;
}

.fa-stack-2x {
  font-size: 2em;
}

.fa-inverse {
  color: #fff;
}

.fa-500px:before {
  content: "\f26e";
}

.fa-accessible-icon:before {
  content: "\f368";
}

.fa-accusoft:before {
  content: "\f369";
}

.fa-acquisitions-incorporated:before {
  content: "\f6af";
}

.fa-ad:before {
  content: "\f641";
}

.fa-address-book:before {
  content: "\f2b9";
}

.fa-address-card:before {
  content: "\f2bb";
}

.fa-adjust:before {
  content: "\f042";
}

.fa-adn:before {
  content: "\f170";
}

.fa-adobe:before {
  content: "\f778";
}

.fa-adversal:before {
  content: "\f36a";
}

.fa-affiliatetheme:before {
  content: "\f36b";
}

.fa-air-freshener:before {
  content: "\f5d0";
}

.fa-algolia:before {
  content: "\f36c";
}

.fa-align-center:before {
  content: "\f037";
}

.fa-align-justify:before {
  content: "\f039";
}

.fa-align-left:before {
  content: "\f036";
}

.fa-align-right:before {
  content: "\f038";
}

.fa-alipay:before {
  content: "\f642";
}

.fa-allergies:before {
  content: "\f461";
}

.fa-amazon:before {
  content: "\f270";
}

.fa-amazon-pay:before {
  content: "\f42c";
}

.fa-ambulance:before {
  content: "\f0f9";
}

.fa-american-sign-language-interpreting:before {
  content: "\f2a3";
}

.fa-amilia:before {
  content: "\f36d";
}

.fa-anchor:before {
  content: "\f13d";
}

.fa-android:before {
  content: "\f17b";
}

.fa-angellist:before {
  content: "\f209";
}

.fa-angle-double-down:before {
  content: "\f103";
}

.fa-angle-double-left:before {
  content: "\f100";
}

.fa-angle-double-right:before {
  content: "\f101";
}

.fa-angle-double-up:before {
  content: "\f102";
}

.fa-angle-down:before {
  content: "\f107";
}

.fa-angle-left:before {
  content: "\f104";
}

.fa-angle-right:before {
  content: "\f105";
}

.fa-angle-up:before {
  content: "\f106";
}

.fa-angry:before {
  content: "\f556";
}

.fa-angrycreative:before {
  content: "\f36e";
}

.fa-angular:before {
  content: "\f420";
}

.fa-ankh:before {
  content: "\f644";
}

.fa-app-store:before {
  content: "\f36f";
}

.fa-app-store-ios:before {
  content: "\f370";
}

.fa-apper:before {
  content: "\f371";
}

.fa-apple:before {
  content: "\f179";
}

.fa-apple-alt:before {
  content: "\f5d1";
}

.fa-apple-pay:before {
  content: "\f415";
}

.fa-archive:before {
  content: "\f187";
}

.fa-archway:before {
  content: "\f557";
}

.fa-arrow-alt-circle-down:before {
  content: "\f358";
}

.fa-arrow-alt-circle-left:before {
  content: "\f359";
}

.fa-arrow-alt-circle-right:before {
  content: "\f35a";
}

.fa-arrow-alt-circle-up:before {
  content: "\f35b";
}

.fa-arrow-circle-down:before {
  content: "\f0ab";
}

.fa-arrow-circle-left:before {
  content: "\f0a8";
}

.fa-arrow-circle-right:before {
  content: "\f0a9";
}

.fa-arrow-circle-up:before {
  content: "\f0aa";
}

.fa-arrow-down:before {
  content: "\f063";
}

.fa-arrow-left:before {
  content: "\f060";
}

.fa-arrow-right:before {
  content: "\f061";
}

.fa-arrow-up:before {
  content: "\f062";
}

.fa-arrows-alt:before {
  content: "\f0b2";
}

.fa-arrows-alt-h:before {
  content: "\f337";
}

.fa-arrows-alt-v:before {
  content: "\f338";
}

.fa-artstation:before {
  content: "\f77a";
}

.fa-assistive-listening-systems:before {
  content: "\f2a2";
}

.fa-asterisk:before {
  content: "\f069";
}

.fa-asymmetrik:before {
  content: "\f372";
}

.fa-at:before {
  content: "\f1fa";
}

.fa-atlas:before {
  content: "\f558";
}

.fa-atlassian:before {
  content: "\f77b";
}

.fa-atom:before {
  content: "\f5d2";
}

.fa-audible:before {
  content: "\f373";
}

.fa-audio-description:before {
  content: "\f29e";
}

.fa-autoprefixer:before {
  content: "\f41c";
}

.fa-avianex:before {
  content: "\f374";
}

.fa-aviato:before {
  content: "\f421";
}

.fa-award:before {
  content: "\f559";
}

.fa-aws:before {
  content: "\f375";
}

.fa-baby:before {
  content: "\f77c";
}

.fa-baby-carriage:before {
  content: "\f77d";
}

.fa-backspace:before {
  content: "\f55a";
}

.fa-backward:before {
  content: "\f04a";
}

.fa-balance-scale:before {
  content: "\f24e";
}

.fa-ban:before {
  content: "\f05e";
}

.fa-band-aid:before {
  content: "\f462";
}

.fa-bandcamp:before {
  content: "\f2d5";
}

.fa-barcode:before {
  content: "\f02a";
}

.fa-bars:before {
  content: "\f0c9";
}

.fa-baseball-ball:before {
  content: "\f433";
}

.fa-basketball-ball:before {
  content: "\f434";
}

.fa-bath:before {
  content: "\f2cd";
}

.fa-battery-empty:before {
  content: "\f244";
}

.fa-battery-full:before {
  content: "\f240";
}

.fa-battery-half:before {
  content: "\f242";
}

.fa-battery-quarter:before {
  content: "\f243";
}

.fa-battery-three-quarters:before {
  content: "\f241";
}

.fa-bed:before {
  content: "\f236";
}

.fa-beer:before {
  content: "\f0fc";
}

.fa-behance:before {
  content: "\f1b4";
}

.fa-behance-square:before {
  content: "\f1b5";
}

.fa-bell:before {
  content: "\f0f3";
}

.fa-bell-slash:before {
  content: "\f1f6";
}

.fa-bezier-curve:before {
  content: "\f55b";
}

.fa-bible:before {
  content: "\f647";
}

.fa-bicycle:before {
  content: "\f206";
}

.fa-bimobject:before {
  content: "\f378";
}

.fa-binoculars:before {
  content: "\f1e5";
}

.fa-biohazard:before {
  content: "\f780";
}

.fa-birthday-cake:before {
  content: "\f1fd";
}

.fa-bitbucket:before {
  content: "\f171";
}

.fa-bitcoin:before {
  content: "\f379";
}

.fa-bity:before {
  content: "\f37a";
}

.fa-black-tie:before {
  content: "\f27e";
}

.fa-blackberry:before {
  content: "\f37b";
}

.fa-blender:before {
  content: "\f517";
}

.fa-blender-phone:before {
  content: "\f6b6";
}

.fa-blind:before {
  content: "\f29d";
}

.fa-blog:before {
  content: "\f781";
}

.fa-blogger:before {
  content: "\f37c";
}

.fa-blogger-b:before {
  content: "\f37d";
}

.fa-bluetooth:before {
  content: "\f293";
}

.fa-bluetooth-b:before {
  content: "\f294";
}

.fa-bold:before {
  content: "\f032";
}

.fa-bolt:before {
  content: "\f0e7";
}

.fa-bomb:before {
  content: "\f1e2";
}

.fa-bone:before {
  content: "\f5d7";
}

.fa-bong:before {
  content: "\f55c";
}

.fa-book:before {
  content: "\f02d";
}

.fa-book-dead:before {
  content: "\f6b7";
}

.fa-book-open:before {
  content: "\f518";
}

.fa-book-reader:before {
  content: "\f5da";
}

.fa-bookmark:before {
  content: "\f02e";
}

.fa-bowling-ball:before {
  content: "\f436";
}

.fa-box:before {
  content: "\f466";
}

.fa-box-open:before {
  content: "\f49e";
}

.fa-boxes:before {
  content: "\f468";
}

.fa-braille:before {
  content: "\f2a1";
}

.fa-brain:before {
  content: "\f5dc";
}

.fa-briefcase:before {
  content: "\f0b1";
}

.fa-briefcase-medical:before {
  content: "\f469";
}

.fa-broadcast-tower:before {
  content: "\f519";
}

.fa-broom:before {
  content: "\f51a";
}

.fa-brush:before {
  content: "\f55d";
}

.fa-btc:before {
  content: "\f15a";
}

.fa-bug:before {
  content: "\f188";
}

.fa-building:before {
  content: "\f1ad";
}

.fa-bullhorn:before {
  content: "\f0a1";
}

.fa-bullseye:before {
  content: "\f140";
}

.fa-burn:before {
  content: "\f46a";
}

.fa-buromobelexperte:before {
  content: "\f37f";
}

.fa-bus:before {
  content: "\f207";
}

.fa-bus-alt:before {
  content: "\f55e";
}

.fa-business-time:before {
  content: "\f64a";
}

.fa-buysellads:before {
  content: "\f20d";
}

.fa-calculator:before {
  content: "\f1ec";
}

.fa-calendar:before {
  content: "\f133";
}

.fa-calendar-alt:before {
  content: "\f073";
}

.fa-calendar-check:before {
  content: "\f274";
}

.fa-calendar-day:before {
  content: "\f783";
}

.fa-calendar-minus:before {
  content: "\f272";
}

.fa-calendar-plus:before {
  content: "\f271";
}

.fa-calendar-times:before {
  content: "\f273";
}

.fa-calendar-week:before {
  content: "\f784";
}

.fa-camera:before {
  content: "\f030";
}

.fa-camera-retro:before {
  content: "\f083";
}

.fa-campground:before {
  content: "\f6bb";
}

.fa-canadian-maple-leaf:before {
  content: "\f785";
}

.fa-candy-cane:before {
  content: "\f786";
}

.fa-cannabis:before {
  content: "\f55f";
}

.fa-capsules:before {
  content: "\f46b";
}

.fa-car:before {
  content: "\f1b9";
}

.fa-car-alt:before {
  content: "\f5de";
}

.fa-car-battery:before {
  content: "\f5df";
}

.fa-car-crash:before {
  content: "\f5e1";
}

.fa-car-side:before {
  content: "\f5e4";
}

.fa-caret-down:before {
  content: "\f0d7";
}

.fa-caret-left:before {
  content: "\f0d9";
}

.fa-caret-right:before {
  content: "\f0da";
}

.fa-caret-square-down:before {
  content: "\f150";
}

.fa-caret-square-left:before {
  content: "\f191";
}

.fa-caret-square-right:before {
  content: "\f152";
}

.fa-caret-square-up:before {
  content: "\f151";
}

.fa-caret-up:before {
  content: "\f0d8";
}

.fa-carrot:before {
  content: "\f787";
}

.fa-cart-arrow-down:before {
  content: "\f218";
}

.fa-cart-plus:before {
  content: "\f217";
}

.fa-cash-register:before {
  content: "\f788";
}

.fa-cat:before {
  content: "\f6be";
}

.fa-cc-amazon-pay:before {
  content: "\f42d";
}

.fa-cc-amex:before {
  content: "\f1f3";
}

.fa-cc-apple-pay:before {
  content: "\f416";
}

.fa-cc-diners-club:before {
  content: "\f24c";
}

.fa-cc-discover:before {
  content: "\f1f2";
}

.fa-cc-jcb:before {
  content: "\f24b";
}

.fa-cc-mastercard:before {
  content: "\f1f1";
}

.fa-cc-paypal:before {
  content: "\f1f4";
}

.fa-cc-stripe:before {
  content: "\f1f5";
}

.fa-cc-visa:before {
  content: "\f1f0";
}

.fa-centercode:before {
  content: "\f380";
}

.fa-centos:before {
  content: "\f789";
}

.fa-certificate:before {
  content: "\f0a3";
}

.fa-chair:before {
  content: "\f6c0";
}

.fa-chalkboard:before {
  content: "\f51b";
}

.fa-chalkboard-teacher:before {
  content: "\f51c";
}

.fa-charging-station:before {
  content: "\f5e7";
}

.fa-chart-area:before {
  content: "\f1fe";
}

.fa-chart-bar:before {
  content: "\f080";
}

.fa-chart-line:before {
  content: "\f201";
}

.fa-chart-pie:before {
  content: "\f200";
}

.fa-check:before {
  content: "\f00c";
}

.fa-check-circle:before {
  content: "\f058";
}

.fa-check-double:before {
  content: "\f560";
}

.fa-check-square:before {
  content: "\f14a";
}

.fa-chess:before {
  content: "\f439";
}

.fa-chess-bishop:before {
  content: "\f43a";
}

.fa-chess-board:before {
  content: "\f43c";
}

.fa-chess-king:before {
  content: "\f43f";
}

.fa-chess-knight:before {
  content: "\f441";
}

.fa-chess-pawn:before {
  content: "\f443";
}

.fa-chess-queen:before {
  content: "\f445";
}

.fa-chess-rook:before {
  content: "\f447";
}

.fa-chevron-circle-down:before {
  content: "\f13a";
}

.fa-chevron-circle-left:before {
  content: "\f137";
}

.fa-chevron-circle-right:before {
  content: "\f138";
}

.fa-chevron-circle-up:before {
  content: "\f139";
}

.fa-chevron-down:before {
  content: "\f078";
}

.fa-chevron-left:before {
  content: "\f053";
}

.fa-chevron-right:before {
  content: "\f054";
}

.fa-chevron-up:before {
  content: "\f077";
}

.fa-child:before {
  content: "\f1ae";
}

.fa-chrome:before {
  content: "\f268";
}

.fa-church:before {
  content: "\f51d";
}

.fa-circle:before {
  content: "\f111";
}

.fa-circle-notch:before {
  content: "\f1ce";
}

.fa-city:before {
  content: "\f64f";
}

.fa-clipboard:before {
  content: "\f328";
}

.fa-clipboard-check:before {
  content: "\f46c";
}

.fa-clipboard-list:before {
  content: "\f46d";
}

.fa-clock:before {
  content: "\f017";
}

.fa-clone:before {
  content: "\f24d";
}

.fa-closed-captioning:before {
  content: "\f20a";
}

.fa-cloud:before {
  content: "\f0c2";
}

.fa-cloud-download-alt:before {
  content: "\f381";
}

.fa-cloud-meatball:before {
  content: "\f73b";
}

.fa-cloud-moon:before {
  content: "\f6c3";
}

.fa-cloud-moon-rain:before {
  content: "\f73c";
}

.fa-cloud-rain:before {
  content: "\f73d";
}

.fa-cloud-showers-heavy:before {
  content: "\f740";
}

.fa-cloud-sun:before {
  content: "\f6c4";
}

.fa-cloud-sun-rain:before {
  content: "\f743";
}

.fa-cloud-upload-alt:before {
  content: "\f382";
}

.fa-cloudscale:before {
  content: "\f383";
}

.fa-cloudsmith:before {
  content: "\f384";
}

.fa-cloudversify:before {
  content: "\f385";
}

.fa-cocktail:before {
  content: "\f561";
}

.fa-code:before {
  content: "\f121";
}

.fa-code-branch:before {
  content: "\f126";
}

.fa-codepen:before {
  content: "\f1cb";
}

.fa-codiepie:before {
  content: "\f284";
}

.fa-coffee:before {
  content: "\f0f4";
}

.fa-cog:before {
  content: "\f013";
}

.fa-cogs:before {
  content: "\f085";
}

.fa-coins:before {
  content: "\f51e";
}

.fa-columns:before {
  content: "\f0db";
}

.fa-comment:before {
  content: "\f075";
}

.fa-comment-alt:before {
  content: "\f27a";
}

.fa-comment-dollar:before {
  content: "\f651";
}

.fa-comment-dots:before {
  content: "\f4ad";
}

.fa-comment-slash:before {
  content: "\f4b3";
}

.fa-comments:before {
  content: "\f086";
}

.fa-comments-dollar:before {
  content: "\f653";
}

.fa-compact-disc:before {
  content: "\f51f";
}

.fa-compass:before {
  content: "\f14e";
}

.fa-compress:before {
  content: "\f066";
}

.fa-compress-arrows-alt:before {
  content: "\f78c";
}

.fa-concierge-bell:before {
  content: "\f562";
}

.fa-confluence:before {
  content: "\f78d";
}

.fa-connectdevelop:before {
  content: "\f20e";
}

.fa-contao:before {
  content: "\f26d";
}

.fa-cookie:before {
  content: "\f563";
}

.fa-cookie-bite:before {
  content: "\f564";
}

.fa-copy:before {
  content: "\f0c5";
}

.fa-copyright:before {
  content: "\f1f9";
}

.fa-couch:before {
  content: "\f4b8";
}

.fa-cpanel:before {
  content: "\f388";
}

.fa-creative-commons:before {
  content: "\f25e";
}

.fa-creative-commons-by:before {
  content: "\f4e7";
}

.fa-creative-commons-nc:before {
  content: "\f4e8";
}

.fa-creative-commons-nc-eu:before {
  content: "\f4e9";
}

.fa-creative-commons-nc-jp:before {
  content: "\f4ea";
}

.fa-creative-commons-nd:before {
  content: "\f4eb";
}

.fa-creative-commons-pd:before {
  content: "\f4ec";
}

.fa-creative-commons-pd-alt:before {
  content: "\f4ed";
}

.fa-creative-commons-remix:before {
  content: "\f4ee";
}

.fa-creative-commons-sa:before {
  content: "\f4ef";
}

.fa-creative-commons-sampling:before {
  content: "\f4f0";
}

.fa-creative-commons-sampling-plus:before {
  content: "\f4f1";
}

.fa-creative-commons-share:before {
  content: "\f4f2";
}

.fa-creative-commons-zero:before {
  content: "\f4f3";
}

.fa-credit-card:before {
  content: "\f09d";
}

.fa-critical-role:before {
  content: "\f6c9";
}

.fa-crop:before {
  content: "\f125";
}

.fa-crop-alt:before {
  content: "\f565";
}

.fa-cross:before {
  content: "\f654";
}

.fa-crosshairs:before {
  content: "\f05b";
}

.fa-crow:before {
  content: "\f520";
}

.fa-crown:before {
  content: "\f521";
}

.fa-css3:before {
  content: "\f13c";
}

.fa-css3-alt:before {
  content: "\f38b";
}

.fa-cube:before {
  content: "\f1b2";
}

.fa-cubes:before {
  content: "\f1b3";
}

.fa-cut:before {
  content: "\f0c4";
}

.fa-cuttlefish:before {
  content: "\f38c";
}

.fa-d-and-d:before {
  content: "\f38d";
}

.fa-d-and-d-beyond:before {
  content: "\f6ca";
}

.fa-dashcube:before {
  content: "\f210";
}

.fa-database:before {
  content: "\f1c0";
}

.fa-deaf:before {
  content: "\f2a4";
}

.fa-delicious:before {
  content: "\f1a5";
}

.fa-democrat:before {
  content: "\f747";
}

.fa-deploydog:before {
  content: "\f38e";
}

.fa-deskpro:before {
  content: "\f38f";
}

.fa-desktop:before {
  content: "\f108";
}

.fa-dev:before {
  content: "\f6cc";
}

.fa-deviantart:before {
  content: "\f1bd";
}

.fa-dharmachakra:before {
  content: "\f655";
}

.fa-dhl:before {
  content: "\f790";
}

.fa-diagnoses:before {
  content: "\f470";
}

.fa-diaspora:before {
  content: "\f791";
}

.fa-dice:before {
  content: "\f522";
}

.fa-dice-d20:before {
  content: "\f6cf";
}

.fa-dice-d6:before {
  content: "\f6d1";
}

.fa-dice-five:before {
  content: "\f523";
}

.fa-dice-four:before {
  content: "\f524";
}

.fa-dice-one:before {
  content: "\f525";
}

.fa-dice-six:before {
  content: "\f526";
}

.fa-dice-three:before {
  content: "\f527";
}

.fa-dice-two:before {
  content: "\f528";
}

.fa-digg:before {
  content: "\f1a6";
}

.fa-digital-ocean:before {
  content: "\f391";
}

.fa-digital-tachograph:before {
  content: "\f566";
}

.fa-directions:before {
  content: "\f5eb";
}

.fa-discord:before {
  content: "\f392";
}

.fa-discourse:before {
  content: "\f393";
}

.fa-divide:before {
  content: "\f529";
}

.fa-dizzy:before {
  content: "\f567";
}

.fa-dna:before {
  content: "\f471";
}

.fa-dochub:before {
  content: "\f394";
}

.fa-docker:before {
  content: "\f395";
}

.fa-dog:before {
  content: "\f6d3";
}

.fa-dollar-sign:before {
  content: "\f155";
}

.fa-dolly:before {
  content: "\f472";
}

.fa-dolly-flatbed:before {
  content: "\f474";
}

.fa-donate:before {
  content: "\f4b9";
}

.fa-door-closed:before {
  content: "\f52a";
}

.fa-door-open:before {
  content: "\f52b";
}

.fa-dot-circle:before {
  content: "\f192";
}

.fa-dove:before {
  content: "\f4ba";
}

.fa-download:before {
  content: "\f019";
}

.fa-draft2digital:before {
  content: "\f396";
}

.fa-drafting-compass:before {
  content: "\f568";
}

.fa-dragon:before {
  content: "\f6d5";
}

.fa-draw-polygon:before {
  content: "\f5ee";
}

.fa-dribbble:before {
  content: "\f17d";
}

.fa-dribbble-square:before {
  content: "\f397";
}

.fa-dropbox:before {
  content: "\f16b";
}

.fa-drum:before {
  content: "\f569";
}

.fa-drum-steelpan:before {
  content: "\f56a";
}

.fa-drumstick-bite:before {
  content: "\f6d7";
}

.fa-drupal:before {
  content: "\f1a9";
}

.fa-dumbbell:before {
  content: "\f44b";
}

.fa-dumpster:before {
  content: "\f793";
}

.fa-dumpster-fire:before {
  content: "\f794";
}

.fa-dungeon:before {
  content: "\f6d9";
}

.fa-dyalog:before {
  content: "\f399";
}

.fa-earlybirds:before {
  content: "\f39a";
}

.fa-ebay:before {
  content: "\f4f4";
}

.fa-edge:before {
  content: "\f282";
}

.fa-edit:before {
  content: "\f044";
}

.fa-eject:before {
  content: "\f052";
}

.fa-elementor:before {
  content: "\f430";
}

.fa-ellipsis-h:before {
  content: "\f141";
}

.fa-ellipsis-v:before {
  content: "\f142";
}

.fa-ello:before {
  content: "\f5f1";
}

.fa-ember:before {
  content: "\f423";
}

.fa-empire:before {
  content: "\f1d1";
}

.fa-envelope:before {
  content: "\f0e0";
}

.fa-envelope-open:before {
  content: "\f2b6";
}

.fa-envelope-open-text:before {
  content: "\f658";
}

.fa-envelope-square:before {
  content: "\f199";
}

.fa-envira:before {
  content: "\f299";
}

.fa-equals:before {
  content: "\f52c";
}

.fa-eraser:before {
  content: "\f12d";
}

.fa-erlang:before {
  content: "\f39d";
}

.fa-ethereum:before {
  content: "\f42e";
}

.fa-ethernet:before {
  content: "\f796";
}

.fa-etsy:before {
  content: "\f2d7";
}

.fa-euro-sign:before {
  content: "\f153";
}

.fa-exchange-alt:before {
  content: "\f362";
}

.fa-exclamation:before {
  content: "\f12a";
}

.fa-exclamation-circle:before {
  content: "\f06a";
}

.fa-exclamation-triangle:before {
  content: "\f071";
}

.fa-expand:before {
  content: "\f065";
}

.fa-expand-arrows-alt:before {
  content: "\f31e";
}

.fa-expeditedssl:before {
  content: "\f23e";
}

.fa-external-link-alt:before {
  content: "\f35d";
}

.fa-external-link-square-alt:before {
  content: "\f360";
}

.fa-eye:before {
  content: "\f06e";
}

.fa-eye-dropper:before {
  content: "\f1fb";
}

.fa-eye-slash:before {
  content: "\f070";
}

.fa-facebook:before {
  content: "\f09a";
}

.fa-facebook-f:before {
  content: "\f39e";
}

.fa-facebook-messenger:before {
  content: "\f39f";
}

.fa-facebook-square:before {
  content: "\f082";
}

.fa-fantasy-flight-games:before {
  content: "\f6dc";
}

.fa-fast-backward:before {
  content: "\f049";
}

.fa-fast-forward:before {
  content: "\f050";
}

.fa-fax:before {
  content: "\f1ac";
}

.fa-feather:before {
  content: "\f52d";
}

.fa-feather-alt:before {
  content: "\f56b";
}

.fa-fedex:before {
  content: "\f797";
}

.fa-fedora:before {
  content: "\f798";
}

.fa-female:before {
  content: "\f182";
}

.fa-fighter-jet:before {
  content: "\f0fb";
}

.fa-figma:before {
  content: "\f799";
}

.fa-file:before {
  content: "\f15b";
}

.fa-file-alt:before {
  content: "\f15c";
}

.fa-file-archive:before {
  content: "\f1c6";
}

.fa-file-audio:before {
  content: "\f1c7";
}

.fa-file-code:before {
  content: "\f1c9";
}

.fa-file-contract:before {
  content: "\f56c";
}

.fa-file-csv:before {
  content: "\f6dd";
}

.fa-file-download:before {
  content: "\f56d";
}

.fa-file-excel:before {
  content: "\f1c3";
}

.fa-file-export:before {
  content: "\f56e";
}

.fa-file-image:before {
  content: "\f1c5";
}

.fa-file-import:before {
  content: "\f56f";
}

.fa-file-invoice:before {
  content: "\f570";
}

.fa-file-invoice-dollar:before {
  content: "\f571";
}

.fa-file-medical:before {
  content: "\f477";
}

.fa-file-medical-alt:before {
  content: "\f478";
}

.fa-file-pdf:before {
  content: "\f1c1";
}

.fa-file-powerpoint:before {
  content: "\f1c4";
}

.fa-file-prescription:before {
  content: "\f572";
}

.fa-file-signature:before {
  content: "\f573";
}

.fa-file-upload:before {
  content: "\f574";
}

.fa-file-video:before {
  content: "\f1c8";
}

.fa-file-word:before {
  content: "\f1c2";
}

.fa-fill:before {
  content: "\f575";
}

.fa-fill-drip:before {
  content: "\f576";
}

.fa-film:before {
  content: "\f008";
}

.fa-filter:before {
  content: "\f0b0";
}

.fa-fingerprint:before {
  content: "\f577";
}

.fa-fire:before {
  content: "\f06d";
}

.fa-fire-extinguisher:before {
  content: "\f134";
}

.fa-firefox:before {
  content: "\f269";
}

.fa-first-aid:before {
  content: "\f479";
}

.fa-first-order:before {
  content: "\f2b0";
}

.fa-first-order-alt:before {
  content: "\f50a";
}

.fa-firstdraft:before {
  content: "\f3a1";
}

.fa-fish:before {
  content: "\f578";
}

.fa-fist-raised:before {
  content: "\f6de";
}

.fa-flag:before {
  content: "\f024";
}

.fa-flag-checkered:before {
  content: "\f11e";
}

.fa-flag-usa:before {
  content: "\f74d";
}

.fa-flask:before {
  content: "\f0c3";
}

.fa-flickr:before {
  content: "\f16e";
}

.fa-flipboard:before {
  content: "\f44d";
}

.fa-flushed:before {
  content: "\f579";
}

.fa-fly:before {
  content: "\f417";
}

.fa-folder:before {
  content: "\f07b";
}

.fa-folder-minus:before {
  content: "\f65d";
}

.fa-folder-open:before {
  content: "\f07c";
}

.fa-folder-plus:before {
  content: "\f65e";
}

.fa-font:before {
  content: "\f031";
}

.fa-font-awesome:before {
  content: "\f2b4";
}

.fa-font-awesome-alt:before {
  content: "\f35c";
}

.fa-font-awesome-flag:before {
  content: "\f425";
}

.fa-font-awesome-logo-full:before {
  content: "\f4e6";
}

.fa-fonticons:before {
  content: "\f280";
}

.fa-fonticons-fi:before {
  content: "\f3a2";
}

.fa-football-ball:before {
  content: "\f44e";
}

.fa-fort-awesome:before {
  content: "\f286";
}

.fa-fort-awesome-alt:before {
  content: "\f3a3";
}

.fa-forumbee:before {
  content: "\f211";
}

.fa-forward:before {
  content: "\f04e";
}

.fa-foursquare:before {
  content: "\f180";
}

.fa-free-code-camp:before {
  content: "\f2c5";
}

.fa-freebsd:before {
  content: "\f3a4";
}

.fa-frog:before {
  content: "\f52e";
}

.fa-frown:before {
  content: "\f119";
}

.fa-frown-open:before {
  content: "\f57a";
}

.fa-fulcrum:before {
  content: "\f50b";
}

.fa-funnel-dollar:before {
  content: "\f662";
}

.fa-futbol:before {
  content: "\f1e3";
}

.fa-galactic-republic:before {
  content: "\f50c";
}

.fa-galactic-senate:before {
  content: "\f50d";
}

.fa-gamepad:before {
  content: "\f11b";
}

.fa-gas-pump:before {
  content: "\f52f";
}

.fa-gavel:before {
  content: "\f0e3";
}

.fa-gem:before {
  content: "\f3a5";
}

.fa-genderless:before {
  content: "\f22d";
}

.fa-get-pocket:before {
  content: "\f265";
}

.fa-gg:before {
  content: "\f260";
}

.fa-gg-circle:before {
  content: "\f261";
}

.fa-ghost:before {
  content: "\f6e2";
}

.fa-gift:before {
  content: "\f06b";
}

.fa-gifts:before {
  content: "\f79c";
}

.fa-git:before {
  content: "\f1d3";
}

.fa-git-square:before {
  content: "\f1d2";
}

.fa-github:before {
  content: "\f09b";
}

.fa-github-alt:before {
  content: "\f113";
}

.fa-github-square:before {
  content: "\f092";
}

.fa-gitkraken:before {
  content: "\f3a6";
}

.fa-gitlab:before {
  content: "\f296";
}

.fa-gitter:before {
  content: "\f426";
}

.fa-glass-cheers:before {
  content: "\f79f";
}

.fa-glass-martini:before {
  content: "\f000";
}

.fa-glass-martini-alt:before {
  content: "\f57b";
}

.fa-glass-whiskey:before {
  content: "\f7a0";
}

.fa-glasses:before {
  content: "\f530";
}

.fa-glide:before {
  content: "\f2a5";
}

.fa-glide-g:before {
  content: "\f2a6";
}

.fa-globe:before {
  content: "\f0ac";
}

.fa-globe-africa:before {
  content: "\f57c";
}

.fa-globe-americas:before {
  content: "\f57d";
}

.fa-globe-asia:before {
  content: "\f57e";
}

.fa-globe-europe:before {
  content: "\f7a2";
}

.fa-gofore:before {
  content: "\f3a7";
}

.fa-golf-ball:before {
  content: "\f450";
}

.fa-goodreads:before {
  content: "\f3a8";
}

.fa-goodreads-g:before {
  content: "\f3a9";
}

.fa-google:before {
  content: "\f1a0";
}

.fa-google-drive:before {
  content: "\f3aa";
}

.fa-google-play:before {
  content: "\f3ab";
}

.fa-google-plus:before {
  content: "\f2b3";
}

.fa-google-plus-g:before {
  content: "\f0d5";
}

.fa-google-plus-square:before {
  content: "\f0d4";
}

.fa-google-wallet:before {
  content: "\f1ee";
}

.fa-gopuram:before {
  content: "\f664";
}

.fa-graduation-cap:before {
  content: "\f19d";
}

.fa-gratipay:before {
  content: "\f184";
}

.fa-grav:before {
  content: "\f2d6";
}

.fa-greater-than:before {
  content: "\f531";
}

.fa-greater-than-equal:before {
  content: "\f532";
}

.fa-grimace:before {
  content: "\f57f";
}

.fa-grin:before {
  content: "\f580";
}

.fa-grin-alt:before {
  content: "\f581";
}

.fa-grin-beam:before {
  content: "\f582";
}

.fa-grin-beam-sweat:before {
  content: "\f583";
}

.fa-grin-hearts:before {
  content: "\f584";
}

.fa-grin-squint:before {
  content: "\f585";
}

.fa-grin-squint-tears:before {
  content: "\f586";
}

.fa-grin-stars:before {
  content: "\f587";
}

.fa-grin-tears:before {
  content: "\f588";
}

.fa-grin-tongue:before {
  content: "\f589";
}

.fa-grin-tongue-squint:before {
  content: "\f58a";
}

.fa-grin-tongue-wink:before {
  content: "\f58b";
}

.fa-grin-wink:before {
  content: "\f58c";
}

.fa-grip-horizontal:before {
  content: "\f58d";
}

.fa-grip-lines:before {
  content: "\f7a4";
}

.fa-grip-lines-vertical:before {
  content: "\f7a5";
}

.fa-grip-vertical:before {
  content: "\f58e";
}

.fa-gripfire:before {
  content: "\f3ac";
}

.fa-grunt:before {
  content: "\f3ad";
}

.fa-guitar:before {
  content: "\f7a6";
}

.fa-gulp:before {
  content: "\f3ae";
}

.fa-h-square:before {
  content: "\f0fd";
}

.fa-hacker-news:before {
  content: "\f1d4";
}

.fa-hacker-news-square:before {
  content: "\f3af";
}

.fa-hackerrank:before {
  content: "\f5f7";
}

.fa-hammer:before {
  content: "\f6e3";
}

.fa-hamsa:before {
  content: "\f665";
}

.fa-hand-holding:before {
  content: "\f4bd";
}

.fa-hand-holding-heart:before {
  content: "\f4be";
}

.fa-hand-holding-usd:before {
  content: "\f4c0";
}

.fa-hand-lizard:before {
  content: "\f258";
}

.fa-hand-paper:before {
  content: "\f256";
}

.fa-hand-peace:before {
  content: "\f25b";
}

.fa-hand-point-down:before {
  content: "\f0a7";
}

.fa-hand-point-left:before {
  content: "\f0a5";
}

.fa-hand-point-right:before {
  content: "\f0a4";
}

.fa-hand-point-up:before {
  content: "\f0a6";
}

.fa-hand-pointer:before {
  content: "\f25a";
}

.fa-hand-rock:before {
  content: "\f255";
}

.fa-hand-scissors:before {
  content: "\f257";
}

.fa-hand-spock:before {
  content: "\f259";
}

.fa-hands:before {
  content: "\f4c2";
}

.fa-hands-helping:before {
  content: "\f4c4";
}

.fa-handshake:before {
  content: "\f2b5";
}

.fa-hanukiah:before {
  content: "\f6e6";
}

.fa-hashtag:before {
  content: "\f292";
}

.fa-hat-wizard:before {
  content: "\f6e8";
}

.fa-haykal:before {
  content: "\f666";
}

.fa-hdd:before {
  content: "\f0a0";
}

.fa-heading:before {
  content: "\f1dc";
}

.fa-headphones:before {
  content: "\f025";
}

.fa-headphones-alt:before {
  content: "\f58f";
}

.fa-headset:before {
  content: "\f590";
}

.fa-heart:before {
  content: "\f004";
}

.fa-heart-broken:before {
  content: "\f7a9";
}

.fa-heartbeat:before {
  content: "\f21e";
}

.fa-helicopter:before {
  content: "\f533";
}

.fa-highlighter:before {
  content: "\f591";
}

.fa-hiking:before {
  content: "\f6ec";
}

.fa-hippo:before {
  content: "\f6ed";
}

.fa-hips:before {
  content: "\f452";
}

.fa-hire-a-helper:before {
  content: "\f3b0";
}

.fa-history:before {
  content: "\f1da";
}

.fa-hockey-puck:before {
  content: "\f453";
}

.fa-holly-berry:before {
  content: "\f7aa";
}

.fa-home:before {
  content: "\f015";
}

.fa-hooli:before {
  content: "\f427";
}

.fa-hornbill:before {
  content: "\f592";
}

.fa-horse:before {
  content: "\f6f0";
}

.fa-horse-head:before {
  content: "\f7ab";
}

.fa-hospital:before {
  content: "\f0f8";
}

.fa-hospital-alt:before {
  content: "\f47d";
}

.fa-hospital-symbol:before {
  content: "\f47e";
}

.fa-hot-tub:before {
  content: "\f593";
}

.fa-hotel:before {
  content: "\f594";
}

.fa-hotjar:before {
  content: "\f3b1";
}

.fa-hourglass:before {
  content: "\f254";
}

.fa-hourglass-end:before {
  content: "\f253";
}

.fa-hourglass-half:before {
  content: "\f252";
}

.fa-hourglass-start:before {
  content: "\f251";
}

.fa-house-damage:before {
  content: "\f6f1";
}

.fa-houzz:before {
  content: "\f27c";
}

.fa-hryvnia:before {
  content: "\f6f2";
}

.fa-html5:before {
  content: "\f13b";
}

.fa-hubspot:before {
  content: "\f3b2";
}

.fa-i-cursor:before {
  content: "\f246";
}

.fa-icicles:before {
  content: "\f7ad";
}

.fa-id-badge:before {
  content: "\f2c1";
}

.fa-id-card:before {
  content: "\f2c2";
}

.fa-id-card-alt:before {
  content: "\f47f";
}

.fa-igloo:before {
  content: "\f7ae";
}

.fa-image:before {
  content: "\f03e";
}

.fa-images:before {
  content: "\f302";
}

.fa-imdb:before {
  content: "\f2d8";
}

.fa-inbox:before {
  content: "\f01c";
}

.fa-indent:before {
  content: "\f03c";
}

.fa-industry:before {
  content: "\f275";
}

.fa-infinity:before {
  content: "\f534";
}

.fa-info:before {
  content: "\f129";
}

.fa-info-circle:before {
  content: "\f05a";
}

.fa-instagram:before {
  content: "\f16d";
}

.fa-intercom:before {
  content: "\f7af";
}

.fa-internet-explorer:before {
  content: "\f26b";
}

.fa-invision:before {
  content: "\f7b0";
}

.fa-ioxhost:before {
  content: "\f208";
}

.fa-italic:before {
  content: "\f033";
}

.fa-itunes:before {
  content: "\f3b4";
}

.fa-itunes-note:before {
  content: "\f3b5";
}

.fa-java:before {
  content: "\f4e4";
}

.fa-jedi:before {
  content: "\f669";
}

.fa-jedi-order:before {
  content: "\f50e";
}

.fa-jenkins:before {
  content: "\f3b6";
}

.fa-jira:before {
  content: "\f7b1";
}

.fa-joget:before {
  content: "\f3b7";
}

.fa-joint:before {
  content: "\f595";
}

.fa-joomla:before {
  content: "\f1aa";
}

.fa-journal-whills:before {
  content: "\f66a";
}

.fa-js:before {
  content: "\f3b8";
}

.fa-js-square:before {
  content: "\f3b9";
}

.fa-jsfiddle:before {
  content: "\f1cc";
}

.fa-kaaba:before {
  content: "\f66b";
}

.fa-kaggle:before {
  content: "\f5fa";
}

.fa-key:before {
  content: "\f084";
}

.fa-keybase:before {
  content: "\f4f5";
}

.fa-keyboard:before {
  content: "\f11c";
}

.fa-keycdn:before {
  content: "\f3ba";
}

.fa-khanda:before {
  content: "\f66d";
}

.fa-kickstarter:before {
  content: "\f3bb";
}

.fa-kickstarter-k:before {
  content: "\f3bc";
}

.fa-kiss:before {
  content: "\f596";
}

.fa-kiss-beam:before {
  content: "\f597";
}

.fa-kiss-wink-heart:before {
  content: "\f598";
}

.fa-kiwi-bird:before {
  content: "\f535";
}

.fa-korvue:before {
  content: "\f42f";
}

.fa-landmark:before {
  content: "\f66f";
}

.fa-language:before {
  content: "\f1ab";
}

.fa-laptop:before {
  content: "\f109";
}

.fa-laptop-code:before {
  content: "\f5fc";
}

.fa-laravel:before {
  content: "\f3bd";
}

.fa-lastfm:before {
  content: "\f202";
}

.fa-lastfm-square:before {
  content: "\f203";
}

.fa-laugh:before {
  content: "\f599";
}

.fa-laugh-beam:before {
  content: "\f59a";
}

.fa-laugh-squint:before {
  content: "\f59b";
}

.fa-laugh-wink:before {
  content: "\f59c";
}

.fa-layer-group:before {
  content: "\f5fd";
}

.fa-leaf:before {
  content: "\f06c";
}

.fa-leanpub:before {
  content: "\f212";
}

.fa-lemon:before {
  content: "\f094";
}

.fa-less:before {
  content: "\f41d";
}

.fa-less-than:before {
  content: "\f536";
}

.fa-less-than-equal:before {
  content: "\f537";
}

.fa-level-down-alt:before {
  content: "\f3be";
}

.fa-level-up-alt:before {
  content: "\f3bf";
}

.fa-life-ring:before {
  content: "\f1cd";
}

.fa-lightbulb:before {
  content: "\f0eb";
}

.fa-line:before {
  content: "\f3c0";
}

.fa-link:before {
  content: "\f0c1";
}

.fa-linkedin:before {
  content: "\f08c";
}

.fa-linkedin-in:before {
  content: "\f0e1";
}

.fa-linode:before {
  content: "\f2b8";
}

.fa-linux:before {
  content: "\f17c";
}

.fa-lira-sign:before {
  content: "\f195";
}

.fa-list:before {
  content: "\f03a";
}

.fa-list-alt:before {
  content: "\f022";
}

.fa-list-ol:before {
  content: "\f0cb";
}

.fa-list-ul:before {
  content: "\f0ca";
}

.fa-location-arrow:before {
  content: "\f124";
}

.fa-lock:before {
  content: "\f023";
}

.fa-lock-open:before {
  content: "\f3c1";
}

.fa-long-arrow-alt-down:before {
  content: "\f309";
}

.fa-long-arrow-alt-left:before {
  content: "\f30a";
}

.fa-long-arrow-alt-right:before {
  content: "\f30b";
}

.fa-long-arrow-alt-up:before {
  content: "\f30c";
}

.fa-low-vision:before {
  content: "\f2a8";
}

.fa-luggage-cart:before {
  content: "\f59d";
}

.fa-lyft:before {
  content: "\f3c3";
}

.fa-magento:before {
  content: "\f3c4";
}

.fa-magic:before {
  content: "\f0d0";
}

.fa-magnet:before {
  content: "\f076";
}

.fa-mail-bulk:before {
  content: "\f674";
}

.fa-mailchimp:before {
  content: "\f59e";
}

.fa-male:before {
  content: "\f183";
}

.fa-mandalorian:before {
  content: "\f50f";
}

.fa-map:before {
  content: "\f279";
}

.fa-map-marked:before {
  content: "\f59f";
}

.fa-map-marked-alt:before {
  content: "\f5a0";
}

.fa-map-marker:before {
  content: "\f041";
}

.fa-map-marker-alt:before {
  content: "\f3c5";
}

.fa-map-pin:before {
  content: "\f276";
}

.fa-map-signs:before {
  content: "\f277";
}

.fa-markdown:before {
  content: "\f60f";
}

.fa-marker:before {
  content: "\f5a1";
}

.fa-mars:before {
  content: "\f222";
}

.fa-mars-double:before {
  content: "\f227";
}

.fa-mars-stroke:before {
  content: "\f229";
}

.fa-mars-stroke-h:before {
  content: "\f22b";
}

.fa-mars-stroke-v:before {
  content: "\f22a";
}

.fa-mask:before {
  content: "\f6fa";
}

.fa-mastodon:before {
  content: "\f4f6";
}

.fa-maxcdn:before {
  content: "\f136";
}

.fa-medal:before {
  content: "\f5a2";
}

.fa-medapps:before {
  content: "\f3c6";
}

.fa-medium:before {
  content: "\f23a";
}

.fa-medium-m:before {
  content: "\f3c7";
}

.fa-medkit:before {
  content: "\f0fa";
}

.fa-medrt:before {
  content: "\f3c8";
}

.fa-meetup:before {
  content: "\f2e0";
}

.fa-megaport:before {
  content: "\f5a3";
}

.fa-meh:before {
  content: "\f11a";
}

.fa-meh-blank:before {
  content: "\f5a4";
}

.fa-meh-rolling-eyes:before {
  content: "\f5a5";
}

.fa-memory:before {
  content: "\f538";
}

.fa-mendeley:before {
  content: "\f7b3";
}

.fa-menorah:before {
  content: "\f676";
}

.fa-mercury:before {
  content: "\f223";
}

.fa-meteor:before {
  content: "\f753";
}

.fa-microchip:before {
  content: "\f2db";
}

.fa-microphone:before {
  content: "\f130";
}

.fa-microphone-alt:before {
  content: "\f3c9";
}

.fa-microphone-alt-slash:before {
  content: "\f539";
}

.fa-microphone-slash:before {
  content: "\f131";
}

.fa-microscope:before {
  content: "\f610";
}

.fa-microsoft:before {
  content: "\f3ca";
}

.fa-minus:before {
  content: "\f068";
}

.fa-minus-circle:before {
  content: "\f056";
}

.fa-minus-square:before {
  content: "\f146";
}

.fa-mitten:before {
  content: "\f7b5";
}

.fa-mix:before {
  content: "\f3cb";
}

.fa-mixcloud:before {
  content: "\f289";
}

.fa-mizuni:before {
  content: "\f3cc";
}

.fa-mobile:before {
  content: "\f10b";
}

.fa-mobile-alt:before {
  content: "\f3cd";
}

.fa-modx:before {
  content: "\f285";
}

.fa-monero:before {
  content: "\f3d0";
}

.fa-money-bill:before {
  content: "\f0d6";
}

.fa-money-bill-alt:before {
  content: "\f3d1";
}

.fa-money-bill-wave:before {
  content: "\f53a";
}

.fa-money-bill-wave-alt:before {
  content: "\f53b";
}

.fa-money-check:before {
  content: "\f53c";
}

.fa-money-check-alt:before {
  content: "\f53d";
}

.fa-monument:before {
  content: "\f5a6";
}

.fa-moon:before {
  content: "\f186";
}

.fa-mortar-pestle:before {
  content: "\f5a7";
}

.fa-mosque:before {
  content: "\f678";
}

.fa-motorcycle:before {
  content: "\f21c";
}

.fa-mountain:before {
  content: "\f6fc";
}

.fa-mouse-pointer:before {
  content: "\f245";
}

.fa-mug-hot:before {
  content: "\f7b6";
}

.fa-music:before {
  content: "\f001";
}

.fa-napster:before {
  content: "\f3d2";
}

.fa-neos:before {
  content: "\f612";
}

.fa-network-wired:before {
  content: "\f6ff";
}

.fa-neuter:before {
  content: "\f22c";
}

.fa-newspaper:before {
  content: "\f1ea";
}

.fa-nimblr:before {
  content: "\f5a8";
}

.fa-nintendo-switch:before {
  content: "\f418";
}

.fa-node:before {
  content: "\f419";
}

.fa-node-js:before {
  content: "\f3d3";
}

.fa-not-equal:before {
  content: "\f53e";
}

.fa-notes-medical:before {
  content: "\f481";
}

.fa-npm:before {
  content: "\f3d4";
}

.fa-ns8:before {
  content: "\f3d5";
}

.fa-nutritionix:before {
  content: "\f3d6";
}

.fa-object-group:before {
  content: "\f247";
}

.fa-object-ungroup:before {
  content: "\f248";
}

.fa-odnoklassniki:before {
  content: "\f263";
}

.fa-odnoklassniki-square:before {
  content: "\f264";
}

.fa-oil-can:before {
  content: "\f613";
}

.fa-old-republic:before {
  content: "\f510";
}

.fa-om:before {
  content: "\f679";
}

.fa-opencart:before {
  content: "\f23d";
}

.fa-openid:before {
  content: "\f19b";
}

.fa-opera:before {
  content: "\f26a";
}

.fa-optin-monster:before {
  content: "\f23c";
}

.fa-osi:before {
  content: "\f41a";
}

.fa-otter:before {
  content: "\f700";
}

.fa-outdent:before {
  content: "\f03b";
}

.fa-page4:before {
  content: "\f3d7";
}

.fa-pagelines:before {
  content: "\f18c";
}

.fa-paint-brush:before {
  content: "\f1fc";
}

.fa-paint-roller:before {
  content: "\f5aa";
}

.fa-palette:before {
  content: "\f53f";
}

.fa-palfed:before {
  content: "\f3d8";
}

.fa-pallet:before {
  content: "\f482";
}

.fa-paper-plane:before {
  content: "\f1d8";
}

.fa-paperclip:before {
  content: "\f0c6";
}

.fa-parachute-box:before {
  content: "\f4cd";
}

.fa-paragraph:before {
  content: "\f1dd";
}

.fa-parking:before {
  content: "\f540";
}

.fa-passport:before {
  content: "\f5ab";
}

.fa-pastafarianism:before {
  content: "\f67b";
}

.fa-paste:before {
  content: "\f0ea";
}

.fa-patreon:before {
  content: "\f3d9";
}

.fa-pause:before {
  content: "\f04c";
}

.fa-pause-circle:before {
  content: "\f28b";
}

.fa-paw:before {
  content: "\f1b0";
}

.fa-paypal:before {
  content: "\f1ed";
}

.fa-peace:before {
  content: "\f67c";
}

.fa-pen:before {
  content: "\f304";
}

.fa-pen-alt:before {
  content: "\f305";
}

.fa-pen-fancy:before {
  content: "\f5ac";
}

.fa-pen-nib:before {
  content: "\f5ad";
}

.fa-pen-square:before {
  content: "\f14b";
}

.fa-pencil-alt:before {
  content: "\f303";
}

.fa-pencil-ruler:before {
  content: "\f5ae";
}

.fa-penny-arcade:before {
  content: "\f704";
}

.fa-people-carry:before {
  content: "\f4ce";
}

.fa-percent:before {
  content: "\f295";
}

.fa-percentage:before {
  content: "\f541";
}

.fa-periscope:before {
  content: "\f3da";
}

.fa-person-booth:before {
  content: "\f756";
}

.fa-phabricator:before {
  content: "\f3db";
}

.fa-phoenix-framework:before {
  content: "\f3dc";
}

.fa-phoenix-squadron:before {
  content: "\f511";
}

.fa-phone:before {
  content: "\f095";
}

.fa-phone-slash:before {
  content: "\f3dd";
}

.fa-phone-square:before {
  content: "\f098";
}

.fa-phone-volume:before {
  content: "\f2a0";
}

.fa-php:before {
  content: "\f457";
}

.fa-pied-piper:before {
  content: "\f2ae";
}

.fa-pied-piper-alt:before {
  content: "\f1a8";
}

.fa-pied-piper-hat:before {
  content: "\f4e5";
}

.fa-pied-piper-pp:before {
  content: "\f1a7";
}

.fa-piggy-bank:before {
  content: "\f4d3";
}

.fa-pills:before {
  content: "\f484";
}

.fa-pinterest:before {
  content: "\f0d2";
}

.fa-pinterest-p:before {
  content: "\f231";
}

.fa-pinterest-square:before {
  content: "\f0d3";
}

.fa-place-of-worship:before {
  content: "\f67f";
}

.fa-plane:before {
  content: "\f072";
}

.fa-plane-arrival:before {
  content: "\f5af";
}

.fa-plane-departure:before {
  content: "\f5b0";
}

.fa-play:before {
  content: "\f04b";
}

.fa-play-circle:before {
  content: "\f144";
}

.fa-playstation:before {
  content: "\f3df";
}

.fa-plug:before {
  content: "\f1e6";
}

.fa-plus:before {
  content: "\f067";
}

.fa-plus-circle:before {
  content: "\f055";
}

.fa-plus-square:before {
  content: "\f0fe";
}

.fa-podcast:before {
  content: "\f2ce";
}

.fa-poll:before {
  content: "\f681";
}

.fa-poll-h:before {
  content: "\f682";
}

.fa-poo:before {
  content: "\f2fe";
}

.fa-poo-storm:before {
  content: "\f75a";
}

.fa-poop:before {
  content: "\f619";
}

.fa-portrait:before {
  content: "\f3e0";
}

.fa-pound-sign:before {
  content: "\f154";
}

.fa-power-off:before {
  content: "\f011";
}

.fa-pray:before {
  content: "\f683";
}

.fa-praying-hands:before {
  content: "\f684";
}

.fa-prescription:before {
  content: "\f5b1";
}

.fa-prescription-bottle:before {
  content: "\f485";
}

.fa-prescription-bottle-alt:before {
  content: "\f486";
}

.fa-print:before {
  content: "\f02f";
}

.fa-procedures:before {
  content: "\f487";
}

.fa-product-hunt:before {
  content: "\f288";
}

.fa-project-diagram:before {
  content: "\f542";
}

.fa-pushed:before {
  content: "\f3e1";
}

.fa-puzzle-piece:before {
  content: "\f12e";
}

.fa-python:before {
  content: "\f3e2";
}

.fa-qq:before {
  content: "\f1d6";
}

.fa-qrcode:before {
  content: "\f029";
}

.fa-question:before {
  content: "\f128";
}

.fa-question-circle:before {
  content: "\f059";
}

.fa-quidditch:before {
  content: "\f458";
}

.fa-quinscape:before {
  content: "\f459";
}

.fa-quora:before {
  content: "\f2c4";
}

.fa-quote-left:before {
  content: "\f10d";
}

.fa-quote-right:before {
  content: "\f10e";
}

.fa-quran:before {
  content: "\f687";
}

.fa-r-project:before {
  content: "\f4f7";
}

.fa-radiation:before {
  content: "\f7b9";
}

.fa-radiation-alt:before {
  content: "\f7ba";
}

.fa-rainbow:before {
  content: "\f75b";
}

.fa-random:before {
  content: "\f074";
}

.fa-raspberry-pi:before {
  content: "\f7bb";
}

.fa-ravelry:before {
  content: "\f2d9";
}

.fa-react:before {
  content: "\f41b";
}

.fa-reacteurope:before {
  content: "\f75d";
}

.fa-readme:before {
  content: "\f4d5";
}

.fa-rebel:before {
  content: "\f1d0";
}

.fa-receipt:before {
  content: "\f543";
}

.fa-recycle:before {
  content: "\f1b8";
}

.fa-red-river:before {
  content: "\f3e3";
}

.fa-reddit:before {
  content: "\f1a1";
}

.fa-reddit-alien:before {
  content: "\f281";
}

.fa-reddit-square:before {
  content: "\f1a2";
}

.fa-redhat:before {
  content: "\f7bc";
}

.fa-redo:before {
  content: "\f01e";
}

.fa-redo-alt:before {
  content: "\f2f9";
}

.fa-registered:before {
  content: "\f25d";
}

.fa-renren:before {
  content: "\f18b";
}

.fa-reply:before {
  content: "\f3e5";
}

.fa-reply-all:before {
  content: "\f122";
}

.fa-replyd:before {
  content: "\f3e6";
}

.fa-republican:before {
  content: "\f75e";
}

.fa-researchgate:before {
  content: "\f4f8";
}

.fa-resolving:before {
  content: "\f3e7";
}

.fa-restroom:before {
  content: "\f7bd";
}

.fa-retweet:before {
  content: "\f079";
}

.fa-rev:before {
  content: "\f5b2";
}

.fa-ribbon:before {
  content: "\f4d6";
}

.fa-ring:before {
  content: "\f70b";
}

.fa-road:before {
  content: "\f018";
}

.fa-robot:before {
  content: "\f544";
}

.fa-rocket:before {
  content: "\f135";
}

.fa-rocketchat:before {
  content: "\f3e8";
}

.fa-rockrms:before {
  content: "\f3e9";
}

.fa-route:before {
  content: "\f4d7";
}

.fa-rss:before {
  content: "\f09e";
}

.fa-rss-square:before {
  content: "\f143";
}

.fa-ruble-sign:before {
  content: "\f158";
}

.fa-ruler:before {
  content: "\f545";
}

.fa-ruler-combined:before {
  content: "\f546";
}

.fa-ruler-horizontal:before {
  content: "\f547";
}

.fa-ruler-vertical:before {
  content: "\f548";
}

.fa-running:before {
  content: "\f70c";
}

.fa-rupee-sign:before {
  content: "\f156";
}

.fa-sad-cry:before {
  content: "\f5b3";
}

.fa-sad-tear:before {
  content: "\f5b4";
}

.fa-safari:before {
  content: "\f267";
}

.fa-sass:before {
  content: "\f41e";
}

.fa-satellite:before {
  content: "\f7bf";
}

.fa-satellite-dish:before {
  content: "\f7c0";
}

.fa-save:before {
  content: "\f0c7";
}

.fa-schlix:before {
  content: "\f3ea";
}

.fa-school:before {
  content: "\f549";
}

.fa-screwdriver:before {
  content: "\f54a";
}

.fa-scribd:before {
  content: "\f28a";
}

.fa-scroll:before {
  content: "\f70e";
}

.fa-sd-card:before {
  content: "\f7c2";
}

.fa-search:before {
  content: "\f002";
}

.fa-search-dollar:before {
  content: "\f688";
}

.fa-search-location:before {
  content: "\f689";
}

.fa-search-minus:before {
  content: "\f010";
}

.fa-search-plus:before {
  content: "\f00e";
}

.fa-searchengin:before {
  content: "\f3eb";
}

.fa-seedling:before {
  content: "\f4d8";
}

.fa-sellcast:before {
  content: "\f2da";
}

.fa-sellsy:before {
  content: "\f213";
}

.fa-server:before {
  content: "\f233";
}

.fa-servicestack:before {
  content: "\f3ec";
}

.fa-shapes:before {
  content: "\f61f";
}

.fa-share:before {
  content: "\f064";
}

.fa-share-alt:before {
  content: "\f1e0";
}

.fa-share-alt-square:before {
  content: "\f1e1";
}

.fa-share-square:before {
  content: "\f14d";
}

.fa-shekel-sign:before {
  content: "\f20b";
}

.fa-shield-alt:before {
  content: "\f3ed";
}

.fa-ship:before {
  content: "\f21a";
}

.fa-shipping-fast:before {
  content: "\f48b";
}

.fa-shirtsinbulk:before {
  content: "\f214";
}

.fa-shoe-prints:before {
  content: "\f54b";
}

.fa-shopping-bag:before {
  content: "\f290";
}

.fa-shopping-basket:before {
  content: "\f291";
}

.fa-shopping-cart:before {
  content: "\f07a";
}

.fa-shopware:before {
  content: "\f5b5";
}

.fa-shower:before {
  content: "\f2cc";
}

.fa-shuttle-van:before {
  content: "\f5b6";
}

.fa-sign:before {
  content: "\f4d9";
}

.fa-sign-in-alt:before {
  content: "\f2f6";
}

.fa-sign-language:before {
  content: "\f2a7";
}

.fa-sign-out-alt:before {
  content: "\f2f5";
}

.fa-signal:before {
  content: "\f012";
}

.fa-signature:before {
  content: "\f5b7";
}

.fa-sim-card:before {
  content: "\f7c4";
}

.fa-simplybuilt:before {
  content: "\f215";
}

.fa-sistrix:before {
  content: "\f3ee";
}

.fa-sitemap:before {
  content: "\f0e8";
}

.fa-sith:before {
  content: "\f512";
}

.fa-skating:before {
  content: "\f7c5";
}

.fa-sketch:before {
  content: "\f7c6";
}

.fa-skiing:before {
  content: "\f7c9";
}

.fa-skiing-nordic:before {
  content: "\f7ca";
}

.fa-skull:before {
  content: "\f54c";
}

.fa-skull-crossbones:before {
  content: "\f714";
}

.fa-skyatlas:before {
  content: "\f216";
}

.fa-skype:before {
  content: "\f17e";
}

.fa-slack:before {
  content: "\f198";
}

.fa-slack-hash:before {
  content: "\f3ef";
}

.fa-slash:before {
  content: "\f715";
}

.fa-sleigh:before {
  content: "\f7cc";
}

.fa-sliders-h:before {
  content: "\f1de";
}

.fa-slideshare:before {
  content: "\f1e7";
}

.fa-smile:before {
  content: "\f118";
}

.fa-smile-beam:before {
  content: "\f5b8";
}

.fa-smile-wink:before {
  content: "\f4da";
}

.fa-smog:before {
  content: "\f75f";
}

.fa-smoking:before {
  content: "\f48d";
}

.fa-smoking-ban:before {
  content: "\f54d";
}

.fa-sms:before {
  content: "\f7cd";
}

.fa-snapchat:before {
  content: "\f2ab";
}

.fa-snapchat-ghost:before {
  content: "\f2ac";
}

.fa-snapchat-square:before {
  content: "\f2ad";
}

.fa-snowboarding:before {
  content: "\f7ce";
}

.fa-snowflake:before {
  content: "\f2dc";
}

.fa-snowman:before {
  content: "\f7d0";
}

.fa-snowplow:before {
  content: "\f7d2";
}

.fa-socks:before {
  content: "\f696";
}

.fa-solar-panel:before {
  content: "\f5ba";
}

.fa-sort:before {
  content: "\f0dc";
}

.fa-sort-alpha-down:before {
  content: "\f15d";
}

.fa-sort-alpha-up:before {
  content: "\f15e";
}

.fa-sort-amount-down:before {
  content: "\f160";
}

.fa-sort-amount-up:before {
  content: "\f161";
}

.fa-sort-down:before {
  content: "\f0dd";
}

.fa-sort-numeric-down:before {
  content: "\f162";
}

.fa-sort-numeric-up:before {
  content: "\f163";
}

.fa-sort-up:before {
  content: "\f0de";
}

.fa-soundcloud:before {
  content: "\f1be";
}

.fa-sourcetree:before {
  content: "\f7d3";
}

.fa-spa:before {
  content: "\f5bb";
}

.fa-space-shuttle:before {
  content: "\f197";
}

.fa-speakap:before {
  content: "\f3f3";
}

.fa-spider:before {
  content: "\f717";
}

.fa-spinner:before {
  content: "\f110";
}

.fa-splotch:before {
  content: "\f5bc";
}

.fa-spotify:before {
  content: "\f1bc";
}

.fa-spray-can:before {
  content: "\f5bd";
}

.fa-square:before {
  content: "\f0c8";
}

.fa-square-full:before {
  content: "\f45c";
}

.fa-square-root-alt:before {
  content: "\f698";
}

.fa-squarespace:before {
  content: "\f5be";
}

.fa-stack-exchange:before {
  content: "\f18d";
}

.fa-stack-overflow:before {
  content: "\f16c";
}

.fa-stamp:before {
  content: "\f5bf";
}

.fa-star:before {
  content: "\f005";
}

.fa-star-and-crescent:before {
  content: "\f699";
}

.fa-star-half:before {
  content: "\f089";
}

.fa-star-half-alt:before {
  content: "\f5c0";
}

.fa-star-of-david:before {
  content: "\f69a";
}

.fa-star-of-life:before {
  content: "\f621";
}

.fa-staylinked:before {
  content: "\f3f5";
}

.fa-steam:before {
  content: "\f1b6";
}

.fa-steam-square:before {
  content: "\f1b7";
}

.fa-steam-symbol:before {
  content: "\f3f6";
}

.fa-step-backward:before {
  content: "\f048";
}

.fa-step-forward:before {
  content: "\f051";
}

.fa-stethoscope:before {
  content: "\f0f1";
}

.fa-sticker-mule:before {
  content: "\f3f7";
}

.fa-sticky-note:before {
  content: "\f249";
}

.fa-stop:before {
  content: "\f04d";
}

.fa-stop-circle:before {
  content: "\f28d";
}

.fa-stopwatch:before {
  content: "\f2f2";
}

.fa-store:before {
  content: "\f54e";
}

.fa-store-alt:before {
  content: "\f54f";
}

.fa-strava:before {
  content: "\f428";
}

.fa-stream:before {
  content: "\f550";
}

.fa-street-view:before {
  content: "\f21d";
}

.fa-strikethrough:before {
  content: "\f0cc";
}

.fa-stripe:before {
  content: "\f429";
}

.fa-stripe-s:before {
  content: "\f42a";
}

.fa-stroopwafel:before {
  content: "\f551";
}

.fa-studiovinari:before {
  content: "\f3f8";
}

.fa-stumbleupon:before {
  content: "\f1a4";
}

.fa-stumbleupon-circle:before {
  content: "\f1a3";
}

.fa-subscript:before {
  content: "\f12c";
}

.fa-subway:before {
  content: "\f239";
}

.fa-suitcase:before {
  content: "\f0f2";
}

.fa-suitcase-rolling:before {
  content: "\f5c1";
}

.fa-sun:before {
  content: "\f185";
}

.fa-superpowers:before {
  content: "\f2dd";
}

.fa-superscript:before {
  content: "\f12b";
}

.fa-supple:before {
  content: "\f3f9";
}

.fa-surprise:before {
  content: "\f5c2";
}

.fa-suse:before {
  content: "\f7d6";
}

.fa-swatchbook:before {
  content: "\f5c3";
}

.fa-swimmer:before {
  content: "\f5c4";
}

.fa-swimming-pool:before {
  content: "\f5c5";
}

.fa-synagogue:before {
  content: "\f69b";
}

.fa-sync:before {
  content: "\f021";
}

.fa-sync-alt:before {
  content: "\f2f1";
}

.fa-syringe:before {
  content: "\f48e";
}

.fa-table:before {
  content: "\f0ce";
}

.fa-table-tennis:before {
  content: "\f45d";
}

.fa-tablet:before {
  content: "\f10a";
}

.fa-tablet-alt:before {
  content: "\f3fa";
}

.fa-tablets:before {
  content: "\f490";
}

.fa-tachometer-alt:before {
  content: "\f3fd";
}

.fa-tag:before {
  content: "\f02b";
}

.fa-tags:before {
  content: "\f02c";
}

.fa-tape:before {
  content: "\f4db";
}

.fa-tasks:before {
  content: "\f0ae";
}

.fa-taxi:before {
  content: "\f1ba";
}

.fa-teamspeak:before {
  content: "\f4f9";
}

.fa-teeth:before {
  content: "\f62e";
}

.fa-teeth-open:before {
  content: "\f62f";
}

.fa-telegram:before {
  content: "\f2c6";
}

.fa-telegram-plane:before {
  content: "\f3fe";
}

.fa-temperature-high:before {
  content: "\f769";
}

.fa-temperature-low:before {
  content: "\f76b";
}

.fa-tencent-weibo:before {
  content: "\f1d5";
}

.fa-tenge:before {
  content: "\f7d7";
}

.fa-terminal:before {
  content: "\f120";
}

.fa-text-height:before {
  content: "\f034";
}

.fa-text-width:before {
  content: "\f035";
}

.fa-th:before {
  content: "\f00a";
}

.fa-th-large:before {
  content: "\f009";
}

.fa-th-list:before {
  content: "\f00b";
}

.fa-the-red-yeti:before {
  content: "\f69d";
}

.fa-theater-masks:before {
  content: "\f630";
}

.fa-themeco:before {
  content: "\f5c6";
}

.fa-themeisle:before {
  content: "\f2b2";
}

.fa-thermometer:before {
  content: "\f491";
}

.fa-thermometer-empty:before {
  content: "\f2cb";
}

.fa-thermometer-full:before {
  content: "\f2c7";
}

.fa-thermometer-half:before {
  content: "\f2c9";
}

.fa-thermometer-quarter:before {
  content: "\f2ca";
}

.fa-thermometer-three-quarters:before {
  content: "\f2c8";
}

.fa-think-peaks:before {
  content: "\f731";
}

.fa-thumbs-down:before {
  content: "\f165";
}

.fa-thumbs-up:before {
  content: "\f164";
}

.fa-thumbtack:before {
  content: "\f08d";
}

.fa-ticket-alt:before {
  content: "\f3ff";
}

.fa-times:before {
  content: "\f00d";
}

.fa-times-circle:before {
  content: "\f057";
}

.fa-tint:before {
  content: "\f043";
}

.fa-tint-slash:before {
  content: "\f5c7";
}

.fa-tired:before {
  content: "\f5c8";
}

.fa-toggle-off:before {
  content: "\f204";
}

.fa-toggle-on:before {
  content: "\f205";
}

.fa-toilet:before {
  content: "\f7d8";
}

.fa-toilet-paper:before {
  content: "\f71e";
}

.fa-toolbox:before {
  content: "\f552";
}

.fa-tools:before {
  content: "\f7d9";
}

.fa-tooth:before {
  content: "\f5c9";
}

.fa-torah:before {
  content: "\f6a0";
}

.fa-torii-gate:before {
  content: "\f6a1";
}

.fa-tractor:before {
  content: "\f722";
}

.fa-trade-federation:before {
  content: "\f513";
}

.fa-trademark:before {
  content: "\f25c";
}

.fa-traffic-light:before {
  content: "\f637";
}

.fa-train:before {
  content: "\f238";
}

.fa-tram:before {
  content: "\f7da";
}

.fa-transgender:before {
  content: "\f224";
}

.fa-transgender-alt:before {
  content: "\f225";
}

.fa-trash:before {
  content: "\f1f8";
}

.fa-trash-alt:before {
  content: "\f2ed";
}

.fa-tree:before {
  content: "\f1bb";
}

.fa-trello:before {
  content: "\f181";
}

.fa-tripadvisor:before {
  content: "\f262";
}

.fa-trophy:before {
  content: "\f091";
}

.fa-truck:before {
  content: "\f0d1";
}

.fa-truck-loading:before {
  content: "\f4de";
}

.fa-truck-monster:before {
  content: "\f63b";
}

.fa-truck-moving:before {
  content: "\f4df";
}

.fa-truck-pickup:before {
  content: "\f63c";
}

.fa-tshirt:before {
  content: "\f553";
}

.fa-tty:before {
  content: "\f1e4";
}

.fa-tumblr:before {
  content: "\f173";
}

.fa-tumblr-square:before {
  content: "\f174";
}

.fa-tv:before {
  content: "\f26c";
}

.fa-twitch:before {
  content: "\f1e8";
}

.fa-twitter:before {
  content: "\f099";
}

.fa-twitter-square:before {
  content: "\f081";
}

.fa-typo3:before {
  content: "\f42b";
}

.fa-uber:before {
  content: "\f402";
}

.fa-ubuntu:before {
  content: "\f7df";
}

.fa-uikit:before {
  content: "\f403";
}

.fa-umbrella:before {
  content: "\f0e9";
}

.fa-umbrella-beach:before {
  content: "\f5ca";
}

.fa-underline:before {
  content: "\f0cd";
}

.fa-undo:before {
  content: "\f0e2";
}

.fa-undo-alt:before {
  content: "\f2ea";
}

.fa-uniregistry:before {
  content: "\f404";
}

.fa-universal-access:before {
  content: "\f29a";
}

.fa-university:before {
  content: "\f19c";
}

.fa-unlink:before {
  content: "\f127";
}

.fa-unlock:before {
  content: "\f09c";
}

.fa-unlock-alt:before {
  content: "\f13e";
}

.fa-untappd:before {
  content: "\f405";
}

.fa-upload:before {
  content: "\f093";
}

.fa-ups:before {
  content: "\f7e0";
}

.fa-usb:before {
  content: "\f287";
}

.fa-user:before {
  content: "\f007";
}

.fa-user-alt:before {
  content: "\f406";
}

.fa-user-alt-slash:before {
  content: "\f4fa";
}

.fa-user-astronaut:before {
  content: "\f4fb";
}

.fa-user-check:before {
  content: "\f4fc";
}

.fa-user-circle:before {
  content: "\f2bd";
}

.fa-user-clock:before {
  content: "\f4fd";
}

.fa-user-cog:before {
  content: "\f4fe";
}

.fa-user-edit:before {
  content: "\f4ff";
}

.fa-user-friends:before {
  content: "\f500";
}

.fa-user-graduate:before {
  content: "\f501";
}

.fa-user-injured:before {
  content: "\f728";
}

.fa-user-lock:before {
  content: "\f502";
}

.fa-user-md:before {
  content: "\f0f0";
}

.fa-user-minus:before {
  content: "\f503";
}

.fa-user-ninja:before {
  content: "\f504";
}

.fa-user-plus:before {
  content: "\f234";
}

.fa-user-secret:before {
  content: "\f21b";
}

.fa-user-shield:before {
  content: "\f505";
}

.fa-user-slash:before {
  content: "\f506";
}

.fa-user-tag:before {
  content: "\f507";
}

.fa-user-tie:before {
  content: "\f508";
}

.fa-user-times:before {
  content: "\f235";
}

.fa-users:before {
  content: "\f0c0";
}

.fa-users-cog:before {
  content: "\f509";
}

.fa-usps:before {
  content: "\f7e1";
}

.fa-ussunnah:before {
  content: "\f407";
}

.fa-utensil-spoon:before {
  content: "\f2e5";
}

.fa-utensils:before {
  content: "\f2e7";
}

.fa-vaadin:before {
  content: "\f408";
}

.fa-vector-square:before {
  content: "\f5cb";
}

.fa-venus:before {
  content: "\f221";
}

.fa-venus-double:before {
  content: "\f226";
}

.fa-venus-mars:before {
  content: "\f228";
}

.fa-viacoin:before {
  content: "\f237";
}

.fa-viadeo:before {
  content: "\f2a9";
}

.fa-viadeo-square:before {
  content: "\f2aa";
}

.fa-vial:before {
  content: "\f492";
}

.fa-vials:before {
  content: "\f493";
}

.fa-viber:before {
  content: "\f409";
}

.fa-video:before {
  content: "\f03d";
}

.fa-video-slash:before {
  content: "\f4e2";
}

.fa-vihara:before {
  content: "\f6a7";
}

.fa-vimeo:before {
  content: "\f40a";
}

.fa-vimeo-square:before {
  content: "\f194";
}

.fa-vimeo-v:before {
  content: "\f27d";
}

.fa-vine:before {
  content: "\f1ca";
}

.fa-vk:before {
  content: "\f189";
}

.fa-vnv:before {
  content: "\f40b";
}

.fa-volleyball-ball:before {
  content: "\f45f";
}

.fa-volume-down:before {
  content: "\f027";
}

.fa-volume-mute:before {
  content: "\f6a9";
}

.fa-volume-off:before {
  content: "\f026";
}

.fa-volume-up:before {
  content: "\f028";
}

.fa-vote-yea:before {
  content: "\f772";
}

.fa-vr-cardboard:before {
  content: "\f729";
}

.fa-vuejs:before {
  content: "\f41f";
}

.fa-walking:before {
  content: "\f554";
}

.fa-wallet:before {
  content: "\f555";
}

.fa-warehouse:before {
  content: "\f494";
}

.fa-water:before {
  content: "\f773";
}

.fa-weebly:before {
  content: "\f5cc";
}

.fa-weibo:before {
  content: "\f18a";
}

.fa-weight:before {
  content: "\f496";
}

.fa-weight-hanging:before {
  content: "\f5cd";
}

.fa-weixin:before {
  content: "\f1d7";
}

.fa-whatsapp:before {
  content: "\f232";
}

.fa-whatsapp-square:before {
  content: "\f40c";
}

.fa-wheelchair:before {
  content: "\f193";
}

.fa-whmcs:before {
  content: "\f40d";
}

.fa-wifi:before {
  content: "\f1eb";
}

.fa-wikipedia-w:before {
  content: "\f266";
}

.fa-wind:before {
  content: "\f72e";
}

.fa-window-close:before {
  content: "\f410";
}

.fa-window-maximize:before {
  content: "\f2d0";
}

.fa-window-minimize:before {
  content: "\f2d1";
}

.fa-window-restore:before {
  content: "\f2d2";
}

.fa-windows:before {
  content: "\f17a";
}

.fa-wine-bottle:before {
  content: "\f72f";
}

.fa-wine-glass:before {
  content: "\f4e3";
}

.fa-wine-glass-alt:before {
  content: "\f5ce";
}

.fa-wix:before {
  content: "\f5cf";
}

.fa-wizards-of-the-coast:before {
  content: "\f730";
}

.fa-wolf-pack-battalion:before {
  content: "\f514";
}

.fa-won-sign:before {
  content: "\f159";
}

.fa-wordpress:before {
  content: "\f19a";
}

.fa-wordpress-simple:before {
  content: "\f411";
}

.fa-wpbeginner:before {
  content: "\f297";
}

.fa-wpexplorer:before {
  content: "\f2de";
}

.fa-wpforms:before {
  content: "\f298";
}

.fa-wpressr:before {
  content: "\f3e4";
}

.fa-wrench:before {
  content: "\f0ad";
}

.fa-x-ray:before {
  content: "\f497";
}

.fa-xbox:before {
  content: "\f412";
}

.fa-xing:before {
  content: "\f168";
}

.fa-xing-square:before {
  content: "\f169";
}

.fa-y-combinator:before {
  content: "\f23b";
}

.fa-yahoo:before {
  content: "\f19e";
}

.fa-yandex:before {
  content: "\f413";
}

.fa-yandex-international:before {
  content: "\f414";
}

.fa-yarn:before {
  content: "\f7e3";
}

.fa-yelp:before {
  content: "\f1e9";
}

.fa-yen-sign:before {
  content: "\f157";
}

.fa-yin-yang:before {
  content: "\f6ad";
}

.fa-yoast:before {
  content: "\f2b1";
}

.fa-youtube:before {
  content: "\f167";
}

.fa-youtube-square:before {
  content: "\f431";
}

.fa-zhihu:before {
  content: "\f63f";
}

.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}

@font-face {
  font-family: "Font Awesome 5 Brands";
  font-style: normal;
  font-weight: normal;
  src: url(../webfonts/fa-brands-400.eot);
  src: url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"), url(../webfonts/fa-brands-400.woff2) format("woff2"), url(../webfonts/fa-brands-400.woff) format("woff"), url(../webfonts/fa-brands-400.ttf) format("truetype"), url(../webfonts/fa-brands-400.svg#fontawesome) format("svg");
}
.fab {
  font-family: "Font Awesome 5 Brands";
}

@font-face {
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 400;
  src: url(../webfonts/fa-regular-400.eot);
  src: url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"), url(../webfonts/fa-regular-400.woff2) format("woff2"), url(../webfonts/fa-regular-400.woff) format("woff"), url(../webfonts/fa-regular-400.ttf) format("truetype"), url(../webfonts/fa-regular-400.svg#fontawesome) format("svg");
}
.far {
  font-weight: 400;
}

@font-face {
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  src: url(../webfonts/fa-solid-900.eot);
  src: url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"), url(../webfonts/fa-solid-900.woff2) format("woff2"), url(../webfonts/fa-solid-900.woff) format("woff"), url(../webfonts/fa-solid-900.ttf) format("truetype"), url(../webfonts/fa-solid-900.svg#fontawesome) format("svg");
}
.fa, .far, .fas {
  font-family: "Font Awesome 5 Free";
}

.fa, .fas {
  font-weight: 900;
}

/* ==========================================================================
   Header（Figma: PC 100px / SP 72px）
   ========================================================================== */
.header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  height: var(--header-height-pc);
  transition: background-color box-shadows border-color 0s;
  border-bottom: 1px solid transparent;
}
@media print, screen and (max-width: 768px) {
  .header {
    height: var(--header-height-sp);
  }
}
.header.is-scrolled {
  background-color: var(--color-bg01);
  border-bottom-color: rgba(66, 62, 57, 0.08);
  backdrop-filter: blur(6px);
}
.header.is-hidden {
  transform: translateY(-100%);
}
.header.is-show {
  transform: translateY(0);
}

/* PCドロップダウン表示中：スクロール時のヘッダー背景がオーバーレイ／パネルより手前に被らないよう調整 */
.header.header--pc-dropdown-open .h-nav.pc {
  position: relative;
  z-index: 2;
}
.header.header--pc-dropdown-open .h-cta.pc {
  position: relative;
  z-index: 1;
}
.header.header--pc-dropdown-open.is-scrolled {
  background-color: transparent;
  border-bottom-color: transparent;
  backdrop-filter: none;
}

/* PCドロップダウン開閉時：背面オーバーレイ（ヘッダーより下層） */
.h-nav-backdrop {
  position: fixed;
  inset: 0;
  z-index: 90;
  background-color: rgba(222, 222, 222, 0.8);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.2s visibility 0.2ss ease 0s;
}
.h-nav-backdrop.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
@media print, screen and (max-width: 768px) {
  .h-nav-backdrop {
    display: none !important;
  }
}

.h-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
  width: 100%;
  padding: 0;
}
@media print, screen and (min-width: 769px) {
  .h-inner {
    padding-left: 50px;
  }
}
@media print, screen and (max-width: 768px) {
  .h-inner {
    padding-left: 20px;
    padding-right: 0;
  }
}

.h-logo {
  margin: 0;
  line-height: 1;
}
.h-logo a {
  display: block;
  width: 321px;
  height: 50px;
}
@media print, screen and (max-width: 768px) {
  .h-logo a {
    width: 205px;
    height: 32px;
  }
}
.h-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: left center;
}

/* PC Nav
-----------------------------------------------------------------------------*/
.h-nav.pc {
  display: flex;
  align-items: center;
  margin-left: auto;
}
@media print, screen and (max-width: 768px) {
  .h-nav.pc {
    display: none;
  }
}

.h-nav__list {
  display: flex;
  align-items: center;
  gap: 40px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.h-nav__item {
  position: relative;
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 0;
}

.h-nav__item--has-dropdown {
  border-bottom: 2px solid transparent;
  transition: border-color 0.5s ease 0s;
}
.h-nav__item--has-dropdown.is-open .h-nav__dropdown {
  opacity: 1;
  visibility: visible;
}
@media (any-hover: hover) {
  .h-nav__item--has-dropdown:hover {
    border-bottom-color: var(--main-color);
  }
  .h-nav__item--has-dropdown:hover .h-nav__trigger {
    color: var(--main-color);
  }
}

.h-nav__link {
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 18px;
  color: var(--text-color);
  text-decoration: none;
  white-space: nowrap;
  transition: color border-colors ease 0s;
}
@media (any-hover: hover) {
  .h-nav__link:hover {
    opacity: 0.8;
  }
}
.h-nav__link.h-nav__trigger {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 0;
  margin: 0;
  padding: 37px 0;
  background: none;
  border: none;
  cursor: pointer;
  transition: color 0.5s ease 0s;
}
.h-nav__item--has-dropdown.is-open .h-nav__link.h-nav__trigger {
  color: var(--main-color);
}
.h-nav__link.h-nav__link--outline {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 153px;
  height: 50px;
  border: 1px solid var(--text-color);
  border-radius: 16px;
  box-sizing: border-box;
  transition: background-color colors ease 0s;
}
@media (any-hover: hover) {
  .h-nav__link.h-nav__link--outline:hover {
    background-color: var(--text-color);
    color: var(--white);
  }
}

.h-nav__arrow {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  background-image: url("../../img/common/icon-plus.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transition: background-image 0.5s ease 0s;
}

.h-nav__item--has-dropdown:hover .h-nav__arrow,
.h-nav__item--has-dropdown.is-open .h-nav__arrow {
  background-image: url("../../img/common/icon-plus-green.svg");
}

/* Dropdown（Figma: 看護部について / 教育・研修 / 職場環境）
-----------------------------------------------------------------------------*/
.h-nav__dropdown {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  margin-top: 0;
  padding-top: 16px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s 0.5s ease 0s;
}

.h-nav__dropdown-inner {
  display: flex;
  align-items: stretch;
  gap: 24px;
  width: 590px;
  min-height: 304px;
  padding: 25px;
  background-color: var(--white);
  border-radius: 16px;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
  box-sizing: border-box;
}

.h-nav__dropdown-content {
  flex: 1;
  min-width: 0;
}

.h-nav__dropdown-ttl {
  display: flex;
  align-items: center;
  gap: 10px;
  padding-bottom: 16px;
  margin-bottom: 24px;
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 20px;
  color: var(--text-color);
  text-decoration: none;
  border-bottom: 2px dashed var(--color-accent-orange);
  transition: opacity 0.5s ease 0s;
}
@media (any-hover: hover) {
  .h-nav__dropdown-ttl:hover {
    opacity: 0.8;
  }
}

.h-nav__dropdown-ttl-txt {
  flex: 1;
  min-width: 0;
}

.h-nav__dropdown-ttl-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}
.h-nav__dropdown-ttl-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.h-nav__dropdown-visual {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  width: 240px;
  height: 240px;
  flex-shrink: 0;
  border-radius: 8px;
  overflow: hidden;
  background-color: var(--color-bg01);
}

.h-nav__dropdown-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.h-nav__dropdown-list li + li {
  margin-top: 16px;
}
.h-nav__dropdown-list a {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-title);
  font-size: 16px;
  font-weight: var(--reg);
  color: var(--text-color);
  text-decoration: none;
  transition: opacity 0.5s ease 0s;
}
@media (any-hover: hover) {
  .h-nav__dropdown-list a:hover {
    opacity: 0.8;
  }
}
.h-nav__dropdown-list a::before {
  content: "";
  width: 10px;
  height: 1px;
  background-color: var(--border-light);
  border-radius: 10px;
  flex-shrink: 0;
}

/* CTA（お問い合わせ）PC
-----------------------------------------------------------------------------*/
.h-cta.pc {
  margin-left: 40px;
}
@media print, screen and (max-width: 768px) {
  .h-cta.pc {
    display: none;
  }
}

.h-cta__btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  width: 160px;
  height: var(--header-height-pc);
  padding: 0 16px;
  background-color: var(--color-accent-orange);
  border-radius: 0 0 0 16px;
  color: var(--white);
  text-decoration: none;
  font-family: var(--font-title);
  font-weight: var(--bold);
  font-size: 16px;
  box-sizing: border-box;
  transition: background-color opacitys ease 0s;
}
@media (any-hover: hover) {
  .h-cta__btn:hover {
    background-color: var(--color-accent-orange-hover);
    color: var(--white);
  }
}

.h-cta__icon {
  width: 46px;
  height: 46px;
  flex-shrink: 0;
  object-fit: contain;
}

/* SP Menu Button
-----------------------------------------------------------------------------*/
.h-btn-spmenu {
  display: none;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: var(--header-height-sp);
  padding: 0;
  background-color: var(--color-accent-orange);
  border: none;
  border-radius: 0 0 0 16px;
  cursor: pointer;
  transition: background-color opacitys ease 0s;
}
@media print, screen and (max-width: 768px) {
  .h-btn-spmenu {
    display: flex;
  }
}
@media (any-hover: hover) {
  .h-btn-spmenu:hover {
    background-color: var(--color-accent-orange-hover);
    color: var(--white);
  }
}
.h-btn-spmenu[aria-expanded=true] .h-btn-spmenu__bar {
  background-color: var(--white);
}
.h-btn-spmenu[aria-expanded=true] .h-btn-spmenu__bar:nth-child(1) {
  top: 50%;
  bottom: auto;
  transform: translateY(-50%) rotate(45deg);
}
.h-btn-spmenu[aria-expanded=true] .h-btn-spmenu__bar:nth-child(2) {
  opacity: 0;
}
.h-btn-spmenu[aria-expanded=true] .h-btn-spmenu__bar:nth-child(3) {
  top: 50%;
  bottom: auto;
  transform: translateY(-50%) rotate(-45deg);
}

.h-btn-spmenu__bars {
  display: block;
  position: relative;
  width: 30px;
  height: 24px;
  flex-shrink: 0;
}

.h-btn-spmenu__bar {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  min-height: 2px;
  background-color: var(--white);
  border-radius: 1px;
  transition: transform 0.25s ease, opacity 0.2s ease, background-color 0.2s ease;
  pointer-events: none;
}
.h-btn-spmenu__bar:nth-child(1) {
  top: 4px;
}
.h-btn-spmenu__bar:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}
.h-btn-spmenu__bar:nth-child(3) {
  top: auto;
  bottom: 4px;
}

/* SP Menu Overlay
-----------------------------------------------------------------------------*/
.spMenu {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
  width: 100%;
  height: 100%;
  padding: 72px 20px 20px;
  background-color: var(--color-bg01);
  overflow-y: auto;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity visibilitys ease 0s;
}
@media print, screen and (min-width: 769px) {
  .spMenu {
    display: none;
  }
}
.spMenu.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.spMenu__inner {
  margin: 24px auto 0;
}

.spMenu__nav {
  margin-bottom: 32px;
}

.spMenu__block {
  margin-bottom: 16px;
}
.spMenu__block.spMenu__block--accordion {
  overflow: hidden;
  border-radius: 8px;
  background-color: var(--white);
}
.spMenu__block.spMenu__block--accordion .spMenu__ttl {
  border-radius: 8px;
}
.spMenu__block.spMenu__block--accordion .spMenu__ttl[aria-expanded=true] {
  border-radius: 8px 8px 0 0;
}
.spMenu__block.spMenu__block--accordion .spMenu__ttl[aria-expanded=true] .spMenu__ttl-toggle img {
  transform: rotate(45deg);
}

/* 看護部について：メニュー開閉トグル（サブは開いた時のみ表示）
-----------------------------------------------------------------------------*/
.spMenu__ttl {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 16px;
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 14px;
  color: var(--text-color);
  text-align: left;
  background-color: var(--white);
  border: none;
  border-radius: 8px;
  cursor: pointer;
  position: relative;
  appearance: none;
  gap: 16px;
}

.spMenu__ttl-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  overflow: hidden;
  border-radius: 0;
}
.spMenu__ttl-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.spMenu__ttl-txt {
  flex: 1;
  min-width: 0;
}

.spMenu__ttl-toggle {
  margin-left: auto;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.spMenu__ttl-toggle img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform 0.2s ease;
}

.spMenu__sub-wrap {
  display: none;
  margin: 0;
  margin: 0 16px 16px;
  background-color: var(--color-bg01);
  border-radius: 8px;
}
.spMenu__sub-wrap.is-open {
  display: block;
}

.spMenu__sub {
  margin: 0;
  padding: 0;
  list-style: none;
}
.spMenu__sub a {
  display: block;
  padding: 16px 0;
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 13px;
  color: var(--text-color);
  text-decoration: none;
  text-align: center;
  transition: opacity 0.5s ease 0s;
}
@media (any-hover: hover) {
  .spMenu__sub a:hover {
    opacity: 0.8;
  }
}

/* 他ページへの直リンク（ドロップダウンなし）
-----------------------------------------------------------------------------*/
.spMenu__link {
  display: flex;
  align-items: center;
  padding: 0 16px;
  min-height: 60px;
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 14px;
  color: var(--text-color);
  text-decoration: none;
  background-color: var(--white);
  border-radius: 8px;
  position: relative;
  gap: 16px;
  transition: opacity 0.5s ease 0s;
}
@media (any-hover: hover) {
  .spMenu__link:hover {
    opacity: 0.8;
  }
}
.spMenu__link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 16px;
  width: 12px;
  height: 12px;
  border-right: 2px solid var(--text-color);
  border-bottom: 2px solid var(--text-color);
  transform: translateY(-50%) rotate(-45deg);
}

.spMenu__link-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  overflow: hidden;
}
.spMenu__link-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.spMenu__link-txt {
  flex: 1;
  min-width: 0;
}

.spMenu__cta-btn {
  display: flex;
  align-items: center;
  gap: 16px;
  width: 100%;
  height: 75px;
  padding: 0 16px 0 24px;
  background-color: var(--color-accent-orange);
  border-radius: 16px;
  color: var(--white);
  text-decoration: none;
  font-family: var(--font-title);
  font-weight: var(--bold);
  font-size: 14px;
  box-sizing: border-box;
  position: relative;
  transition: background-color 0.5s ease 0s;
}
@media (any-hover: hover) {
  .spMenu__cta-btn:hover {
    background-color: var(--color-accent-orange-hover);
    color: var(--white);
  }
}

.spMenu__cta-icon {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  object-fit: contain;
}

.spMenu__cta-circle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  margin-left: auto;
  background-color: var(--white);
  border-radius: 50%;
  flex-shrink: 0;
}
.spMenu__cta-circle img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}

/* 固定ヘッダー分の余白
-----------------------------------------------------------------------------*/
body {
  padding-top: var(--header-height-pc);
}
@media print, screen and (max-width: 768px) {
  body {
    padding-top: var(--header-height-sp);
  }
}

.h-nav__dropdown-visual--about {
  background-image: url("../../img/common/menu-img-about.png");
}

.h-nav__dropdown-visual--education {
  background-image: url("../../img/common/menu-img-education.png");
}

.h-nav__dropdown-visual--surroundings {
  background-image: url("../../img/common/menu-img-surroundings.png");
}

/* ==========================================================================
   Header 1200px以下調整
   - 1021px〜1360px: PCナビを圧縮
   - 769px〜1020px: SP準拠（ハンバーガー）へ切替
   ========================================================================== */
@media print, screen and (max-width: 1360px) and (min-width: 1021px) {
  .h-inner {
    padding-left: 24px;
  }
  .h-logo a {
    width: 280px;
    height: 44px;
  }
  .h-nav__list {
    gap: 24px;
  }
  .h-nav__link {
    font-size: 16px;
  }
  .h-nav__link.h-nav__trigger {
    gap: 10px;
    padding: 36px 0;
  }
  .h-nav__link.h-nav__link--outline {
    width: 132px;
    height: 44px;
    border-radius: 12px;
  }
  .h-cta.pc {
    margin-left: 20px;
  }
  .h-cta__btn {
    width: 132px;
    padding: 0 12px;
    font-size: 14px;
  }
}
@media print, screen and (max-width: 1020px) and (min-width: 769px) {
  .header {
    height: var(--header-height-sp);
  }
  .h-inner {
    padding-left: 20px;
    padding-right: 0;
  }
  .h-logo a {
    width: 205px;
    height: 32px;
  }
  .h-nav.pc,
  .h-cta.pc {
    display: none !important;
  }
  .h-btn-spmenu.sp {
    display: flex !important;
  }
  .spMenu {
    display: block;
  }
  body {
    padding-top: var(--header-height-sp);
  }
}
/* ==========================================================================
   Footer（Figma: PC 493px / SP 縦積み）
   ========================================================================== */
.footer {
  padding: 60px 0 32px;
  font-family: var(--font-title);
}
@media print, screen and (min-width: 769px) {
  .footer {
    display: flex;
    flex-direction: column;
  }
}
@media print, screen and (max-width: 768px) {
  .footer {
    padding: 0 20px 24px;
  }
}

.footer__inner {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px 0 0;
}
@media print, screen and (min-width: 769px) {
  .footer__inner {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 0 60px;
  }
}
@media print, screen and (max-width: 768px) {
  .footer__inner {
    padding: 0;
    flex-direction: column;
    flex-wrap: nowrap;
    gap: 0;
  }
}

.footer__logo {
  margin-bottom: 60px;
}
@media print, screen and (min-width: 769px) {
  .footer__logo {
    margin-bottom: 0;
    flex-shrink: 0;
  }
}
@media print, screen and (max-width: 768px) {
  .footer__logo {
    margin-bottom: 42px;
    padding-top: 0;
  }
}
.footer__logo a {
  display: block;
  width: 321px;
  height: 50px;
}
@media print, screen and (max-width: 768px) {
  .footer__logo a {
    width: 334px;
    max-width: 100%;
    height: 52px;
  }
}
.footer__logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: left center;
}

.footer__nav {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 0 24px;
  margin-bottom: 48px;
  padding-left: 0;
}
@media print, screen and (min-width: 769px) {
  .footer__nav {
    flex: 1;
    min-width: 0;
  }
}
@media print, screen and (max-width: 768px) {
  .footer__nav {
    flex: none;
    flex-direction: column;
    margin-bottom: 40px;
  }
}

.footer__col {
  flex-shrink: 0;
  flex: 1;
}
@media print, screen and (max-width: 768px) {
  .footer__col {
    width: 100%;
  }
}
@media print, screen and (max-width: 768px) {
  .footer__col.footer__col--cta {
    width: 100%;
  }
}

.footer__group {
  margin-bottom: 30px;
}
@media print, screen and (max-width: 768px) {
  .footer__group {
    margin-bottom: 32px;
  }
}

.footer__ttl {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 24px;
  padding: 0;
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 20px;
  color: var(--text-color);
  line-height: 1;
}
@media print, screen and (max-width: 768px) {
  .footer__ttl {
    font-size: 16px;
    margin-bottom: 16px;
  }
}
.footer__ttl::before {
  content: "";
  width: 8px;
  height: 29px;
  background-color: var(--color-accent-orange);
  border-radius: 0 4px 4px 0;
  flex-shrink: 0;
}
@media print, screen and (max-width: 768px) {
  .footer__ttl::before {
    height: 20px;
  }
}

.footer__list {
  margin: 0;
  padding: 0 0 0 16px;
  list-style: none;
  font-size: 16px;
  color: var(--text-color);
}
@media print, screen and (max-width: 768px) {
  .footer__list {
    font-size: 13px;
    padding-left: 16px;
  }
}
.footer__list li + li {
  margin-top: 16px;
}
@media print, screen and (max-width: 768px) {
  .footer__list li + li {
    margin-top: 16px;
  }
}
.footer__list a {
  color: inherit;
  text-decoration: none;
  transition: opacity 0.5s ease 0s;
}
@media (any-hover: hover) {
  .footer__list a:hover {
    opacity: 0.8;
  }
}

/* CTA & Corporate
-----------------------------------------------------------------------------*/
.footer__cta-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  height: 75px;
  margin-bottom: 40px;
  padding: 0 16px 0 24px;
  background-color: var(--color-accent-orange);
  border-radius: 16px;
  color: var(--white);
  text-decoration: none;
  font-family: var(--font-title);
  font-weight: var(--bold);
  font-size: 16px;
  box-sizing: border-box;
  position: relative;
  transition: background-color 0.5s ease 0s;
}
@media print, screen and (max-width: 768px) {
  .footer__cta-btn {
    width: 100%;
    margin-bottom: 24px;
  }
}
@media (any-hover: hover) {
  .footer__cta-btn:hover {
    background-color: var(--color-accent-orange-hover);
    color: var(--white);
  }
}

.footer__cta-icon {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  object-fit: contain;
}

.footer__cta-circle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  margin-left: auto;
  background-color: var(--white);
  border-radius: 50%;
  flex-shrink: 0;
}
.footer__cta-circle img {
  width: 16px;
  height: 16px;
  object-fit: contain;
}

.footer__cta-arrow {
  position: absolute;
  right: 16px;
  width: 16px;
  height: 16px;
  object-fit: contain;
}

.footer__corporate {
  display: flex;
  align-items: center;
  gap: 16px;
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 16px;
  color: var(--text-color);
  text-decoration: none;
  transition: opacity 0.5s ease 0s;
}
@media print, screen and (max-width: 768px) {
  .footer__corporate {
    justify-content: center;
    padding-left: 0;
  }
}
@media (any-hover: hover) {
  .footer__corporate:hover {
    opacity: 0.8;
  }
}

.footer__corporate-arrow {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  object-fit: contain;
}

.footer__copy {
  margin: 0;
  padding: 8px 0 0;
  font-family: var(--font-sans-serif);
  font-size: 12px;
  color: var(--text-color);
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .footer__copy {
    width: 100%;
    flex-basis: 100%;
    text-align: right;
  }
}
@media print, screen and (max-width: 768px) {
  .footer__copy {
    font-size: 10px;
    padding-top: 24px;
  }
}

/* ==========================================================================
   Footer 1200px付近調整
   - 1021px〜1360px: PCレイアウト圧縮
   - 769px〜1020px: SP準拠の縦積み
   ========================================================================== */
@media print, screen and (max-width: 1360px) and (min-width: 1021px) {
  .footer__inner {
    gap: 40px;
  }
  .footer__logo a {
    width: 280px;
    height: 44px;
  }
  .footer__nav {
    gap: 0 16px;
  }
  .footer__col {
    width: 240px;
  }
  .footer__col.footer__col--cta {
    width: 256px;
  }
  .footer__ttl {
    font-size: 18px;
  }
  .footer__list {
    font-size: 14px;
  }
  .footer__cta-btn {
    width: 240px;
    font-size: 14px;
  }
  .footer__corporate {
    padding-left: 10px;
    font-size: 14px;
    gap: 10px;
  }
}
@media print, screen and (max-width: 1020px) and (min-width: 769px) {
  .footer {
    padding: 0 20px 24px;
  }
  .footer__inner {
    display: block;
    padding: 0;
    width: 100%;
  }
  .footer__logo {
    margin-bottom: 42px;
  }
  .footer__logo a {
    width: 334px;
    max-width: 100%;
    height: 52px;
  }
  .footer__nav {
    display: flex;
    flex-direction: column;
    margin-bottom: 40px;
  }
  .footer__col {
    width: 100%;
  }
  .footer__col.footer__col--cta {
    width: 100%;
  }
  .footer__group {
    margin-bottom: 32px;
  }
  .footer__ttl {
    font-size: 16px;
    margin-bottom: 16px;
  }
  .footer__ttl::before {
    height: 20px;
  }
  .footer__list {
    font-size: 13px;
    padding-left: 16px;
  }
  .footer__cta-btn {
    width: 100%;
    margin-bottom: 24px;
    font-size: 14px;
  }
  .footer__corporate {
    justify-content: center;
    padding-left: 0;
    font-size: 14px;
    gap: 10px;
  }
  .footer__copy {
    font-size: 10px;
    padding-top: 24px;
    text-align: center;
    border-top: none;
  }
}
.wrapper {
  font-size: 1.6rem;
  overflow: clip;
  position: relative;
}
@media print, screen and (max-width: 768px) {
  .wrapper {
    font-size: 1.4rem;
    min-width: auto;
  }
}

.cmn-inner {
  width: calc(var(--main-width) + 40px);
  margin: 0 auto;
}
@media screen and (max-width: 1240px) {
  .cmn-inner {
    padding: 0 40px;
    width: 100%;
  }
}
@media print, screen and (max-width: 768px) and (max-width: 414px) {
  .cmn-inner {
    padding: 0 20px;
  }
}

/* セクション背景（共通・温かみのあるベージュ）
-----------------------------------------------------------------------------*/
.c-bg-section-warm {
  background-color: var(--color-section-warm);
}

/* page head (下層ページMV/タイトル)
-----------------------------------------------------------------------------*/
.p-page-head {
  --page-head-illust: none;
  position: relative;
  overflow: clip;
  background-color: var(--color-bg01);
  min-height: 560px;
  padding: 192px 0 64px;
  margin-top: 24px;
}
@media print, screen and (max-width: 768px) {
  .p-page-head {
    min-height: 440px;
    padding: 0 0 40px;
  }
}
.p-page-head::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 305px;
  background-image: url("../../img/common/page-mv-bkillust.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: left bottom;
  opacity: 0.8;
  pointer-events: none;
  z-index: 1;
}
@media print, screen and (max-width: 768px) {
  .p-page-head::after {
    height: 69px;
  }
}

.p-page-head__intro {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  gap: 24px;
}
@media print, screen and (max-width: 768px) {
  .p-page-head__intro {
    gap: 16px;
    max-width: 335px;
  }
}

.p-page-head__title {
  padding-right: 32px;
}
@media print, screen and (max-width: 768px) {
  .p-page-head__title {
    padding-right: 0;
    max-width: none;
  }
}

.p-page-head__breadcrumb {
  background-color: var(--white);
  border-radius: 100px;
  padding: 8px 32px;
}
@media print, screen and (max-width: 768px) {
  .p-page-head__breadcrumb {
    padding: 8px 16px;
  }
}

.p-page-head__visual {
  position: absolute;
  right: 0;
  top: 0;
  height: 560px;
  width: min(1074px, 56vw);
  z-index: 2;
}
@media print, screen and (max-width: 768px) {
  .p-page-head__visual {
    top: 166px;
    left: 20px;
    height: auto;
    width: auto;
    aspect-ratio: 335/224;
  }
}

.p-page-head__photo {
  height: 100%;
  border-radius: 40px 0 0 40px;
  overflow: hidden;
  background-color: var(--border-light);
}
.p-page-head__photo img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
@media print, screen and (max-width: 768px) {
  .p-page-head__photo {
    border-radius: 20px 0 0 20px;
  }
}

.p-page-head__illust {
  position: absolute;
  left: calc(100% - min(1074px, 56vw) - 140px);
  top: 414px;
  width: 116px;
  height: 146px;
  background-image: var(--page-head-illust);
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
  z-index: 3;
}
@media print, screen and (max-width: 768px) {
  .p-page-head__illust {
    left: auto;
    right: 20px;
    top: 344px;
    width: 63px;
    height: 80px;
  }
}

/* 下層ページMV：タブレット幅（768含む）Figma 5686:1231 準拠・画像16:9
 * ※ mixin の lsp は max-width:768 のため、769 だと 768px 幅（多くの iPad 縦）で SP 用MVだけが当たり表示が崩れる */
@media print, screen and (max-width: 1020px) and (min-width: 768px) {
  .p-page-head {
    min-height: clamp(620px, 88.7vw, 720px);
    padding: 0 0 40px;
  }
  .p-page-head .cmn-inner {
    padding-left: 40px;
    padding-right: 40px;
  }
  .p-page-head::after {
    height: 120px;
    background-size: cover;
    background-position: left bottom;
  }
  .p-page-head__intro {
    gap: 16px;
  }
  .p-page-head__title {
    padding-right: 0;
  }
  .p-page-head__breadcrumb {
    padding: 8px 16px;
  }
  .p-page-head__visual {
    top: clamp(160px, 24.6vw, 210px);
    left: 40px;
    right: 0;
    width: auto;
    height: auto;
    aspect-ratio: 16/9;
  }
  .p-page-head__photo {
    border-radius: 20px 0 0 20px;
  }
  .p-page-head__photo img {
    object-position: center center;
  }
  /* > で詳細度を上げ、surroundings 等のページ上書きより優先 */
  .p-page-head > .p-page-head__illust {
    left: auto;
    right: clamp(20px, 4.2vw, 32px);
    top: clamp(440px, 66.5vw, 540px);
    width: clamp(90px, 14.3vw, 110px);
    height: clamp(114px, 18.1vw, 139px);
  }
}
/* page head (シンプル・ニュース詳細向け)
-----------------------------------------------------------------------------*/
.p-page-head-simple {
  position: relative;
  overflow: clip;
  background-color: var(--color-bg01);
  padding: 180px 0 240px;
}
@media print, screen and (max-width: 768px) {
  .p-page-head-simple {
    padding: 32vw 0 24vw;
  }
}
.p-page-head-simple::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 203px;
  background-image: url("../../img/common/page-mv-bkillust.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: left bottom;
  opacity: 0.8;
  pointer-events: none;
}
@media print, screen and (max-width: 768px) {
  .p-page-head-simple::after {
    height: 69px;
  }
}

.p-page-head-simple__intro {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  text-align: center;
}
@media print, screen and (max-width: 768px) {
  .p-page-head-simple__intro {
    gap: 16px;
  }
}

/* page title (H1専用)
-----------------------------------------------------------------------------*/
.c-page-title {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0;
  line-height: 1.3;
}

.c-page-title__eyebrow {
  font-family: "Outfit", var(--font-title);
  font-weight: var(--med);
  font-size: 20px;
  color: var(--color-accent-orange);
  letter-spacing: 0.05px;
}
@media print, screen and (max-width: 768px) {
  .c-page-title__eyebrow {
    font-size: 18px;
    letter-spacing: 0.045px;
  }
}

.c-page-title__main {
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 48px;
  color: var(--text-color);
  letter-spacing: 3.84px;
}
@media print, screen and (max-width: 768px) {
  .c-page-title__main {
    font-size: 40px;
    letter-spacing: 3.2px;
  }
}

.c-page-title--news {
  align-items: center;
}
.c-page-title--news .c-page-title__main {
  font-size: 48px;
  letter-spacing: 3.84px;
  color: var(--text-color);
}
@media print, screen and (max-width: 768px) {
  .c-page-title--news .c-page-title__main {
    font-size: 40px;
    letter-spacing: 3.2px;
  }
}

/* breadcrumb (ページタイトル付随)
-----------------------------------------------------------------------------*/
.c-breadcrumb__list {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 14px;
  line-height: 1.5;
  color: var(--text-color-secondary);
}
@media print, screen and (max-width: 768px) {
  .c-breadcrumb__list {
    gap: 6px;
    font-size: 12px;
  }
}

.c-breadcrumb__item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
@media print, screen and (max-width: 768px) {
  .c-breadcrumb__item {
    gap: 6px;
  }
}

.c-breadcrumb__item + .c-breadcrumb__item::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  border-right: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  transform: rotate(-45deg);
  opacity: 0.6;
}

.c-breadcrumb__link {
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.c-breadcrumb__icon-home {
  width: 18px;
  height: 18px;
  display: block;
}

.c-breadcrumb--center {
  display: inline-flex;
  background-color: var(--white);
  border-radius: 100px;
  padding: 8px 32px;
}
@media print, screen and (max-width: 768px) {
  .c-breadcrumb--center {
    padding: 8px 16px;
  }
}

/* page anchor bar（ヒーロー直下の余白）
-----------------------------------------------------------------------------*/
.p-page-anchor-bar {
  padding-top: 60px;
  padding-bottom: 24px;
}
@media print, screen and (max-width: 768px) {
  .p-page-anchor-bar {
    padding-top: 24px;
    padding-bottom: 16px;
  }
}

/* page anchor nav（ページ内アンカー・他ページ流用）
   Figma PC: 5042:3037 / SP: 4761:2121
-----------------------------------------------------------------------------*/
.c-page-anchor {
  width: 100%;
  max-width: 100%;
}

.c-page-anchor__list {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 24px;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media print, screen and (max-width: 768px) {
  .c-page-anchor__list {
    flex-direction: column;
    gap: 16px;
    width: 100%;
  }
}

.c-page-anchor__item {
  flex: 0 0 auto;
}
@media print, screen and (max-width: 768px) {
  .c-page-anchor__item {
    width: 100%;
  }
}

.c-page-anchor__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  box-sizing: border-box;
  min-height: 56px;
  padding: 20px 30px;
  border: 2px solid var(--text-color);
  border-radius: 100px;
  background-color: var(--white);
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 16px;
  line-height: 1.3;
  color: var(--text-color);
  letter-spacing: 1.28px;
  text-decoration: none;
  white-space: nowrap;
  transition: opacity background-colors color border-colors;
}
@media (any-hover: hover) {
  .c-page-anchor__link:hover {
    opacity: 0.85;
  }
}
@media print, screen and (max-width: 768px) {
  .c-page-anchor__link {
    width: 100%;
    min-height: 0;
    padding: 16px 32px;
    border-width: 1px;
    font-size: 12px;
    letter-spacing: 0.96px;
    white-space: normal;
    justify-content: space-between;
  }
}
.c-page-anchor__link:focus-visible {
  outline: 2px solid var(--main-color);
  outline-offset: 2px;
}

.c-page-anchor__label {
  flex: 1 1 auto;
  min-width: 0;
}
@media print, screen and (max-width: 768px) {
  .c-page-anchor__label {
    flex: 1;
    text-align: center;
    padding: 0 8px;
  }
}

.c-page-anchor__icon {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
}
.c-page-anchor__icon img {
  width: 10px;
  height: 13px;
  display: block;
}
@media print, screen and (max-width: 768px) {
  .c-page-anchor__icon img {
    width: 8px;
    height: 11px;
  }
}

/* section title (共通)
-----------------------------------------------------------------------------*/
.c-section-title {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin: 0;
}
@media print, screen and (max-width: 768px) {
  .c-section-title {
    gap: 16px;
  }
}

.c-section-title__eyebrow {
  font-family: "Outfit", var(--font-title);
  font-weight: var(--reg);
  font-size: 16px;
  line-height: 1.3;
  color: var(--color-accent-orange);
  letter-spacing: 0.04px;
}
@media print, screen and (max-width: 768px) {
  .c-section-title__eyebrow {
    font-size: 14px;
  }
}

.c-section-title__main {
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 40px;
  line-height: 1.3;
  color: var(--text-color);
  letter-spacing: 3.2px;
}
@media print, screen and (max-width: 768px) {
  .c-section-title__main {
    font-size: 28px;
    letter-spacing: 2.2px;
  }
}

@media print, screen and (max-width: 1399px) and (min-width: 769px) {
  .c-section-title {
    gap: clamp(16px, 1.8vw, 24px);
  }
  .c-section-title__eyebrow {
    font-size: clamp(14px, 1.05vw, 16px);
  }
  .c-section-title__main {
    font-size: clamp(28px, 2.55vw, 40px);
    letter-spacing: clamp(2.2px, 0.23vw, 3.2px);
  }
}
/* 下層セクション見出し（H2・点線＋オレンジバー）
   Figma PC: 4751:1533 / SP: 4696:1612
-----------------------------------------------------------------------------*/
.c-section-heading {
  position: relative;
  margin: 0 0 64px;
  padding: 24px 0 0;
  border-top: none;
}
.c-section-heading::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 1px;
  background: repeating-linear-gradient(to right, var(--color-accent-orange) 0 4px, transparent 4px 8px);
}
.c-section-heading::before {
  content: "";
  position: absolute;
  left: 0;
  top: -1px;
  width: 40px;
  height: 8px;
  background-color: var(--color-accent-orange);
  border-radius: 0 0 4px 4px;
}
@media print, screen and (max-width: 768px) {
  .c-section-heading {
    margin-bottom: 40px;
  }
  .c-section-heading::after {
    height: 1px;
    background: repeating-linear-gradient(to right, var(--color-accent-orange) 0 4px, transparent 4px 8px);
  }
  .c-section-heading::before {
    top: -2px;
  }
}

.c-section-heading__text {
  display: block;
  margin: 0;
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 44px;
  line-height: 1.5;
  color: var(--text-color);
  letter-spacing: 2.2px;
}
@media print, screen and (max-width: 768px) {
  .c-section-heading__text {
    font-size: 32px;
    letter-spacing: 2.56px;
  }
}

/* content title (中見出し・小見出し)
   Figma PC: 4002:519 / 4005:1742
-----------------------------------------------------------------------------*/
.c-content-title-md {
  margin: 0;
  padding-bottom: 40px;
  color: var(--text-color-secondary);
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 32px;
  line-height: 1.5;
  letter-spacing: 1.6px;
}
@media print, screen and (max-width: 768px) {
  .c-content-title-md {
    padding-bottom: 24px;
    font-size: 20px;
    letter-spacing: 1px;
  }
}

.c-content-title-sm {
  margin: 0;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--border-light);
  color: var(--text-color);
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 26px;
  line-height: 1.5;
  letter-spacing: 1.3px;
}
@media print, screen and (max-width: 768px) {
  .c-content-title-sm {
    padding-bottom: 8px;
    font-size: 16px;
    letter-spacing: 0.8px;
  }
}

/* セクションタイトル（写真＋ラベル型）
   Figma PC: 5042:3044 / SP: 5042:3046
-----------------------------------------------------------------------------*/
.c-section-heroTitle {
  --heroTitle-bg: none;
  --heroTitle-label-bg: var(--color-bg01);
  position: relative;
  width: 100%;
}

.c-section-heroTitle__bg {
  height: 423px;
  border-radius: 16px;
  overflow: hidden;
  background: var(--heroTitle-bg) no-repeat center/cover;
}
@media print, screen and (max-width: 768px) {
  .c-section-heroTitle__bg {
    width: 100vw;
    max-width: none;
    margin-left: -40px;
    height: 266px;
    border-radius: 0px;
  }
}
@media print, screen and (max-width: 768px) and (max-width: 414px) {
  .c-section-heroTitle__bg {
    margin-left: -20px;
  }
}

.c-section-heroTitle__title {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  margin: 0 0 -40px;
  padding: 32px 80px 40px;
  background-color: var(--heroTitle-label-bg);
  border-radius: 16px 16px 0 0;
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 44px;
  line-height: 1.5;
  color: var(--text-color);
  letter-spacing: 3.52px;
  white-space: nowrap;
}
@media print, screen and (max-width: 768px) {
  .c-section-heroTitle__title {
    padding: 16px 32px;
    border-radius: 8px;
    bottom: 16px;
    font-size: 32px;
    letter-spacing: 2.56px;
  }
}

/* button (共通)
-----------------------------------------------------------------------------*/
.c-btn {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  text-decoration: none;
  border-radius: 100px;
  font-family: "Outfit", var(--font-title);
  font-weight: var(--med);
  line-height: 1.5;
  transition: opacity background-colors color border-colors;
}
@media (any-hover: hover) {
  .c-btn:hover {
    opacity: 0.9;
  }
}

.c-btn__icon {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
}
.c-btn__icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.c-btn--viewmore {
  width: 217px;
  padding: 16px 30px;
  gap: 40px;
  font-size: 18px;
  border: 1px solid transparent;
  white-space: nowrap;
}
@media print, screen and (max-width: 768px) {
  .c-btn--viewmore {
    width: 100%;
    padding: 16px;
    gap: 22px;
    font-size: 16px;
  }
}

.c-btn--primary {
  background-color: var(--color-accent-orange);
  color: var(--white);
  border-color: var(--color-accent-orange);
}
.c-btn--primary .c-btn__icon {
  position: relative;
}
.c-btn--primary .c-btn__icon img {
  transition: opacity 0.5s ease 0s;
}
.c-btn--primary .c-btn__icon::after {
  content: "";
  position: absolute;
  inset: 0;
  background: url("../../img/common/icon-arrow-right.svg") no-repeat center/contain;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.5s ease 0s;
}
@media (any-hover: hover) {
  .c-btn--primary:hover {
    background-color: var(--white);
    color: var(--color-accent-orange);
    border-color: var(--color-accent-orange);
  }
  .c-btn--primary:hover .c-btn__icon img {
    opacity: 0;
  }
  .c-btn--primary:hover .c-btn__icon::after {
    opacity: 1;
  }
}

.c-btn--inverse {
  background-color: var(--white);
  color: var(--color-accent-orange);
  border-color: transparent;
}
@media (any-hover: hover) {
  .c-btn--inverse:hover {
    background-color: var(--white);
    color: var(--color-accent-orange);
    border-color: var(--color-accent-orange);
  }
}

a.c-btn.c-btn--primary {
  color: var(--white);
}
@media (any-hover: hover) {
  a.c-btn.c-btn--primary:hover {
    color: var(--color-accent-orange);
  }
}

a.c-btn.c-btn--inverse {
  color: var(--color-accent-orange);
}

.cmn-ttl01 {
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  line-height: 1.875;
}

input[type=text],
input[type=tel],
input[type=email],
textarea {
  font-size: 1.6rem;
  width: 100%;
  border: 1px solid #707070;
  padding: 14px 10px;
}
@media print, screen and (max-width: 768px) {
  input[type=text],
  input[type=tel],
  input[type=email],
  textarea {
    font-size: 1.4rem;
  }
}
input[type=text]:focus,
input[type=tel]:focus,
input[type=email]:focus,
textarea:focus {
  border-color: var(--text-color);
}

textarea {
  resize: vertical;
}

input::placeholder,
textarea::placeholder {
  color: #D6DADF;
}

input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
  color: #D6DADF;
}

/* guideline table (共通パーツ)
-----------------------------------------------------------------------------*/
.c-guideline-table {
  margin-top: 24px;
  border: 1px solid var(--border-light);
}
@media print, screen and (max-width: 768px) {
  .c-guideline-table {
    margin-top: 16px;
  }
}

.c-guideline-table__row {
  display: grid;
  grid-template-columns: 240px 1fr;
}
@media print, screen and (max-width: 768px) {
  .c-guideline-table__row {
    grid-template-columns: 120px 1fr;
  }
}
.c-guideline-table__row:not(:last-child) {
  border-bottom: 1px solid var(--border-light);
}

.c-guideline-table__head {
  margin: 0;
  padding: 24px 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-accent-orange);
  color: var(--white);
  font-weight: var(--bold);
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: 1.44px;
  text-align: center;
}
@media print, screen and (max-width: 768px) {
  .c-guideline-table__head {
    padding: 16px 10px;
    font-size: 13px;
    letter-spacing: 1.04px;
  }
}

.c-guideline-table__body {
  margin: 0;
  padding: 20px 32px;
  background-color: var(--white);
  color: var(--text-color);
  font-size: 16px;
  line-height: 1.8;
  letter-spacing: 1.28px;
}
.c-guideline-table__body p {
  margin: 0;
}
.c-guideline-table__body p + p {
  margin-top: 0.2em;
}
@media print, screen and (max-width: 768px) {
  .c-guideline-table__body {
    padding: 16px;
    font-size: 13px;
    letter-spacing: 1.04px;
  }
}

.c-guideline-table__strong {
  font-weight: var(--bold);
}

.c-guideline-table__body--salary {
  display: grid;
  gap: 24px;
}

.c-guideline-salary {
  color: var(--text-color);
}
.c-guideline-salary p {
  margin: 0;
}

.c-guideline-salary__ttl {
  margin: 0 0 4px;
  color: var(--color-accent-orange);
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 1.44px;
}
@media print, screen and (max-width: 768px) {
  .c-guideline-salary__ttl {
    font-size: 14px;
    letter-spacing: 1.12px;
  }
}

.c-guideline-salary__price {
  color: var(--main-color);
  font-weight: var(--med);
  font-size: 24px;
  line-height: 1.8;
  letter-spacing: 1.92px;
}
.c-guideline-salary__price span {
  font-size: 16px;
  margin-left: 2px;
}
@media print, screen and (max-width: 768px) {
  .c-guideline-salary__price {
    font-size: 20px;
    letter-spacing: 1.6px;
  }
  .c-guideline-salary__price span {
    font-size: 13px;
  }
}

/* ブロック1：TOP メインビジュアル
-----------------------------------------------------------------------------*/
.top-mainv {
  padding: 60px 0 80px;
  background-color: var(--color-bg01);
}
@media print, screen and (max-width: 768px) {
  .top-mainv {
    padding: 32px 0 44px;
  }
}
.top-mainv__inner {
  position: relative;
  display: flex;
  align-items: top;
  justify-content: space-between;
  gap: 56px;
}
@media print, screen and (max-width: 768px) {
  .top-mainv__inner {
    flex-direction: column;
    gap: 24px;
    padding: 0 20px 24px;
  }
}
.top-mainv__content {
  flex: 1;
  min-width: 0;
  position: relative;
  padding-left: 14%;
  padding-right: 80px;
}
@media print, screen and (max-width: 768px) {
  .top-mainv__content {
    padding-left: 0;
    padding-right: 0;
  }
}
.top-mainv__content::before {
  content: "";
  position: absolute;
  z-index: 2;
  left: 0px;
  bottom: 0px;
  width: min(1170px, 100vw - 80px);
  height: auto;
  aspect-ratio: 1170/203;
  background-image: url("../../img/top/top-mv-bk.png");
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: contain;
  pointer-events: none;
}
@media print, screen and (max-width: 768px) {
  .top-mainv__content::before {
    display: none;
  }
}
.top-mainv__title, .top-mainv__btn {
  position: relative;
  z-index: 4;
}
.top-mainv__title {
  position: relative;
  display: inline-flex;
  flex-direction: column;
  gap: 12px;
  font-family: var(--font-title);
}
.top-mainv__title-main {
  position: relative;
  display: inline-block;
}
.top-mainv__title-img {
  display: block;
  max-width: 95%;
  height: auto;
}
@media print, screen and (max-width: 768px) {
  .top-mainv__title-img {
    max-width: 100%;
  }
}
.top-mainv__title-main::before, .top-mainv__title-main::after {
  content: "";
  position: absolute;
  width: 50px;
  height: 40px;
  background-image: url("../../img/top/top-mv-ilust01.svg");
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
}
.top-mainv__title-main::before {
  left: -64px;
  bottom: 48px;
}
@media print, screen and (max-width: 768px) {
  .top-mainv__title-main::before {
    display: none;
  }
}
.top-mainv__title-main::after {
  right: 32%;
  top: clamp(28px, 4vw, 64px);
}
@media print, screen and (max-width: 768px) {
  .top-mainv__title-main::after {
    display: none;
  }
}
.top-mainv__eyebrow {
  display: inline-flex;
  align-items: center;
  padding: 4px 12px;
  margin-bottom: 16px;
  font-family: var(--font-title);
  font-size: 12px;
  font-weight: var(--med);
  color: var(--main-color);
  background-color: rgba(0, 164, 150, 0.08);
  border-radius: 999px;
}
.top-mainv__title-sub {
  display: inline-block;
  margin: 32px 0 0;
  font-family: var(--font-title);
  font-weight: 500;
  font-size: 26px;
  color: var(--text-color-secondary);
  line-height: 1.625;
}
@media print, screen and (max-width: 768px) {
  .top-mainv__title-sub {
    font-size: 18px;
    margin-top: 16px;
  }
}
.top-mainv__lead {
  margin: 0;
  font-family: var(--font-sans-serif);
  font-size: 14px;
  color: var(--text-color-secondary);
  line-height: 1.7142857143;
}
.top-mainv__btn {
  margin-top: 24px;
  display: flex;
  gap: 16px;
}
@media print, screen and (max-width: 768px) {
  .top-mainv__btn {
    flex-direction: column;
    gap: 12px;
    margin-top: 20px;
  }
}
.top-mainv__btn-link {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 0;
  min-width: 180px;
  height: 56px;
  padding: 0 30px;
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 18px;
  color: var(--white);
  text-decoration: none;
  border-radius: 999px;
  background-color: var(--color-accent-orange);
}
.top-mainv__btn-link:visited {
  color: var(--white);
}
.top-mainv__btn-link {
  transition: background-color colors ease 0s;
}
@media (any-hover: hover) {
  .top-mainv__btn-link:hover {
    background-color: var(--color-accent-orange-hover);
    color: var(--white);
  }
}
@media print, screen and (max-width: 768px) {
  .top-mainv__btn-link {
    width: 100%;
    min-width: unset;
    height: 52px;
    padding: 0 30px;
    font-size: 16px;
  }
}
.top-mainv__btn-link--secondary {
  background-color: var(--main-color);
}
.top-mainv__btn-link--secondary:visited {
  color: var(--white);
}
@media (any-hover: hover) {
  .top-mainv__btn-link--secondary:hover {
    background-color: var(--main-color-hover);
    color: var(--white);
  }
}
.top-mainv__btn-arrow {
  display: inline-flex;
  width: 16px;
  height: 16px;
}
.top-mainv__btn-arrow img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.top-mainv__visual {
  flex: 1;
  min-width: 0;
  position: relative;
  display: flex;
  justify-content: flex-end;
}
@media print, screen and (max-width: 768px) {
  .top-mainv__visual {
    width: 100%;
    justify-content: center;
    margin-top: 20px;
  }
}
.top-mainv__visual::after {
  content: "";
  position: absolute;
  z-index: 0;
  left: -220px;
  bottom: -120px;
  width: 620px;
  height: 100px;
  background-image: url("../../img/top/top-mv-bk.png");
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: contain;
  pointer-events: none;
  display: none;
}
@media print, screen and (max-width: 768px) {
  .top-mainv__visual::after {
    display: block;
    z-index: 2;
  }
}
.top-mainv__visual-bg {
  display: none;
}
.top-mainv__slider-wrap {
  position: relative;
  max-width: 730px;
  margin-left: auto;
}
@media print, screen and (max-width: 768px) {
  .top-mainv__slider-wrap {
    width: 100%;
    max-width: none;
    margin-left: 0;
    margin-right: 0;
  }
}
.top-mainv__slider-main {
  position: relative;
  width: 100%;
  border-radius: 40px;
  overflow: hidden;
  background-color: #dfdfdf;
  left: -24%;
  z-index: 1;
}
.top-mainv__slider-main img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}
@media print, screen and (max-width: 768px) {
  .top-mainv__slider-main {
    left: 0;
    border-radius: 16px;
  }
}
.top-mainv__slider-wrap::after {
  content: "";
  position: absolute;
  left: -180px;
  bottom: -10px;
  width: 140px;
  height: 180px;
  background-image: url("../../img/common/about-mv-illust.png");
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
  z-index: 3;
}
@media print, screen and (max-width: 768px) {
  .top-mainv__slider-wrap::after {
    left: 8px;
    bottom: -84px;
    width: 110px;
    height: 140px;
  }
}
.top-mainv__slider-sub {
  position: absolute;
  right: -20px;
  bottom: -40px;
  width: min(500px, 25vw);
  z-index: 20;
  border-radius: 40px 0 0 40px;
  overflow: hidden;
  background-color: #dfdfdf;
}
.top-mainv__slider-sub img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}
@media print, screen and (max-width: 768px) {
  .top-mainv__slider-sub {
    left: auto;
    right: −20px;
    bottom: -80px;
    width: 70%;
    margin: 0;
    border-radius: 16px 0 0 16px;
    z-index: 1;
  }
}
.top-mainv__scroll {
  position: absolute;
  z-index: 30;
  top: 240px;
  right: clamp(24px, 5.6vw, 120px);
  width: 21px;
  height: 142px;
  color: #5b5145;
  text-decoration: none;
}
@media print, screen and (max-width: 768px) {
  .top-mainv__scroll {
    display: none;
  }
}
.top-mainv__scroll-text {
  position: absolute;
  top: 0;
  left: 50%;
  font-family: "Outfit", var(--font-sans-serif);
  font-size: 16px;
  font-weight: var(--med);
  line-height: 1.3;
  letter-spacing: 0.04em;
  white-space: nowrap;
  transform: translateX(-50%) rotate(90deg);
  transform-origin: center;
}
.top-mainv__scroll-line {
  position: absolute;
  top: 60px;
  left: 10px;
  width: 1px;
  height: 64px;
  background-color: #dedede;
  overflow: hidden;
}
.top-mainv__scroll-line::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 1px;
  height: 24px;
  background-color: #5b5145;
  animation: topMainvScrollLine 2s ease-in-out infinite;
}
.top-mainv__ilust {
  position: absolute;
  left: 0;
  bottom: -40px;
  width: 160px;
}
.top-mainv__ilust img {
  width: 100%;
  height: auto;
  display: block;
}
@media print, screen and (max-width: 768px) {
  .top-mainv__ilust {
    bottom: -32px;
    left: 16px;
    width: 120px;
  }
}

@keyframes topMainvScrollLine {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  70% {
    transform: translateY(58px);
    opacity: 1;
  }
  100% {
    transform: translateY(58px);
    opacity: 0;
  }
}
/* TOP 共通レイアウト（以降のブロック共通）
-----------------------------------------------------------------------------*/
.top-section, .top-contact, .top-guideline, .top-surroundings, .top-education, .top-about {
  padding: 0 40px 120px;
}
@media print, screen and (max-width: 768px) {
  .top-section, .top-contact, .top-guideline, .top-surroundings, .top-education, .top-about {
    padding: 80px 0 0;
  }
}

.top-section__inner {
  width: calc(var(--main-width) + 40px);
  margin: 0 auto;
}
@media screen and (max-width: 1240px) {
  .top-section__inner {
    padding: 0 40px;
    width: 100%;
  }
}
@media print, screen and (max-width: 768px) and (max-width: 414px) {
  .top-section__inner {
    padding: 0 20px;
  }
}

.top-section__head {
  margin-bottom: 40px;
  text-align: left;
}
@media print, screen and (max-width: 768px) {
  .top-section__head {
    margin-bottom: 32px;
  }
}

.top-section__eyebrow {
  display: inline-flex;
  align-items: center;
  padding: 4px 12px;
  margin-bottom: 16px;
  font-family: var(--font-title);
  font-size: 12px;
  font-weight: var(--med);
  color: var(--main-color);
  background-color: rgba(0, 164, 150, 0.08);
  border-radius: 999px;
}

.top-section__title {
  margin: 0 0 16px;
  font-family: var(--font-title);
  font-size: 28px;
  font-weight: var(--bold);
  color: var(--text-color);
}
@media print, screen and (max-width: 768px) {
  .top-section__title {
    font-size: 22px;
  }
}

.top-section__lead {
  margin: 0;
  font-family: var(--font-sans-serif);
  font-size: 14px;
  color: var(--text-color-secondary);
  line-height: 1.7142857143;
}

.top-section__btn {
  margin-top: 32px;
}

.top-section__btn-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 14px 24px;
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 14px;
  color: var(--text-color);
  text-decoration: none;
  border-radius: 999px;
  border: 1px solid var(--text-color);
  transition: background-color colors ease 0s;
}
@media (any-hover: hover) {
  .top-section__btn-link:hover {
    background-color: var(--text-color);
    color: var(--white);
  }
}

.top-section__btn-arrow {
  display: inline-flex;
  width: 16px;
  height: 16px;
}
.top-section__btn-arrow img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* TOP 看護部について
-----------------------------------------------------------------------------*/
.top-about {
  padding: 0;
  position: relative;
  overflow: clip;
  background-color: var(--color-accent-orange);
  --top-about-media-w: min(1179px, 61.5vw);
  --top-about-media-h: calc(var(--top-about-media-w) * 750 / 1179);
}
.top-about .top-section__inner {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  min-height: var(--top-about-media-h);
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
@media print, screen and (max-width: 768px) {
  .top-about .top-section__inner {
    min-height: auto;
    display: block;
  }
}
.top-about::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 60vw;
  height: var(--top-about-media-h);
  background: linear-gradient(90deg, rgba(245, 164, 33, 0) 2.475%, #f5a421 29.197%);
  pointer-events: none;
  z-index: 1;
}
@media print, screen and (max-width: 768px) {
  .top-about::after {
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 687px;
    background: linear-gradient(180deg, rgba(245, 164, 33, 0) 33.088%, #f5a421 47.307%);
  }
}
@media print, screen and (min-width: 1600px) {
  .top-about .top-section__inner {
    min-height: 750px;
  }
  .top-about::after {
    height: 750px;
  }
}
.top-about .top-section__head {
  position: relative;
  z-index: 2;
  margin: 0;
  flex: 0 0 480px;
  width: 480px;
  max-width: 480px;
  margin-right: 0;
  margin-left: auto;
}
@media print, screen and (max-width: 768px) {
  .top-about .top-section__head {
    flex: none;
    max-width: 100%;
    width: 100%;
    padding: 314px 0 0;
    margin-right: 0;
  }
}
.top-about .c-section-title__eyebrow {
  color: var(--white);
}
.top-about .c-section-title__main {
  color: var(--white);
}
@media print, screen and (max-width: 768px) {
  .top-about .c-section-title__main {
    font-size: 32px;
    letter-spacing: 2.56px;
  }
}
.top-about .top-section__lead {
  margin-top: 32px;
  color: var(--white);
  font-weight: var(--med);
  font-size: 18px;
  letter-spacing: 0.08em;
  line-height: 1.8;
}
@media print, screen and (max-width: 768px) {
  .top-about .top-section__lead {
    margin-top: 24px;
    font-size: 14px;
    letter-spacing: 1.12px;
  }
}
.top-about .top-section__btn {
  margin-top: 32px;
}
@media print, screen and (max-width: 768px) {
  .top-about .top-section__btn {
    margin-top: 32px;
  }
}
@media print, screen and (max-width: 768px) {
  .top-about .top-section__inner {
    min-height: 687px;
    padding: 0 22px 0 20px;
  }
}

.top-about__img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: var(--top-about-media-w);
  height: var(--top-about-media-h);
  z-index: 0;
  overflow: hidden;
  border-radius: 0;
  background-color: #dfdfdf;
}
.top-about__img img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
@media print, screen and (min-width: 1500px) {
  .top-about__img {
    width: 1179px;
    height: 750px;
  }
}
@media print, screen and (max-width: 768px) {
  .top-about__img {
    position: absolute;
    inset: 0;
    left: 50%;
    right: auto;
    width: 100vw;
    transform: translateX(-50%);
    height: 687px;
    aspect-ratio: auto;
  }
  .top-about__img img {
    object-fit: cover;
    object-position: center top;
    height: auto;
  }
}

/* TOP 教育・研修制度
-----------------------------------------------------------------------------*/
.top-education {
  margin-top: 40px;
  background-color: var(--color-bg01);
  overflow: clip;
  position: relative;
}

.top-education::before,
.top-education::after {
  content: "";
  position: absolute;
  z-index: 0;
  background-image: url("../../img/common/education-mv-illust.png");
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
  opacity: 0.95;
}

.top-education::before {
  background-image: url("../../img/common/about-mv-illust.png");
  width: 160px;
  height: 200px;
  left: calc(40% + 480px);
  top: 24px;
  z-index: 3;
}
@media print, screen and (max-width: 768px) {
  .top-education::before {
    width: 88px;
    height: 112px;
    left: auto;
    right: 20px;
    top: 40px;
  }
}

.top-education::after {
  width: 260px;
  height: 220px;
  left: calc(64% - 800px);
  bottom: 110px;
  transform: scaleX(-1);
  z-index: 3;
}
@media print, screen and (max-width: 768px) {
  .top-education::after {
    width: 96px;
    height: 115px;
    left: 20px;
    bottom: 160px;
    transform: none;
  }
}

.top-education .top-section__inner {
  position: relative;
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  padding-left: 0;
  padding-right: 0;
  min-height: 720px;
}
@media print, screen and (max-width: 768px) {
  .top-education .top-section__inner {
    min-height: 720px;
    display: block;
    padding-left: 0;
    padding-right: 0;
  }
}

.top-education__panel {
  position: absolute;
  z-index: 2;
  width: 1000px;
  height: 580px;
  left: 50%;
  top: calc(50% + 5px);
  transform: translate(-50%, -50%);
  background-color: var(--white);
  background-image: linear-gradient(to right, rgba(66, 62, 57, 0.06) 1px, transparent 1px), linear-gradient(to bottom, rgba(66, 62, 57, 0.06) 1px, transparent 1px);
  background-size: 24px 24px;
  display: grid;
  place-items: center;
  border-radius: 24px;
  padding: 56px 24px;
}
@media print, screen and (max-width: 768px) {
  .top-education__panel {
    display: block;
    position: relative;
    left: auto;
    top: auto;
    transform: none;
    width: 88%;
    min-height: 564px;
    margin: 0 auto;
    border-radius: 16px;
    padding: 132px 24px 44px;
  }
}

.top-education__content {
  text-align: center;
  width: min(720px, 100%);
}

.top-education__content .c-section-title {
  align-items: center;
}

.top-education__lead {
  margin: 32px 0 0;
  font-family: var(--font-sans-serif);
  font-size: 18px;
  font-weight: 500;
  color: var(--text-color);
  line-height: 1.8;
  letter-spacing: 0.08em;
}
@media print, screen and (max-width: 768px) {
  .top-education__lead {
    margin-top: 24px;
    font-size: 14px;
  }
}

.top-education__btn {
  margin-top: 32px;
}
@media print, screen and (max-width: 768px) {
  .top-education__btn {
    margin-top: 32px;
  }
}

.top-education__photos {
  position: absolute;
  left: 50%;
  top: 0;
  width: 1920px;
  height: 860px;
  transform: translateX(-50%);
  pointer-events: none;
  z-index: 3;
}
@media print, screen and (max-width: 768px) {
  .top-education__photos {
    transform: none;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    margin-top: 0;
  }
}

.top-education__photo {
  position: absolute;
  overflow: hidden;
  border-radius: 16px;
  background-color: var(--text-color-secondary);
}
.top-education__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
@media print, screen and (max-width: 768px) {
  .top-education__photo {
    position: absolute;
  }
}

.top-education__photo--01 {
  width: 330px;
  height: 285px;
  left: 137px;
  top: 107px;
}
@media print, screen and (max-width: 768px) {
  .top-education__photo--01 {
    width: 136px;
    height: 118px;
    left: 0;
    top: -80px;
    border-radius: 0;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 16px;
  }
}

.top-education__photo--02 {
  width: 205px;
  height: 176px;
  left: 11%;
  top: 410px;
}
@media print, screen and (max-width: 768px) {
  .top-education__photo--02 {
    width: 113px;
    height: 73px;
    left: 0;
    top: 48px;
    border-radius: 0;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
  }
}

.top-education__photo--03 {
  width: 167px;
  height: 176px;
  left: 22%;
  top: 257px;
}
@media print, screen and (max-width: 768px) {
  .top-education__photo--03 {
    width: 99px;
    height: 103px;
    left: 119px;
    top: -32px;
    border-radius: 8px;
  }
}

.top-education__photo--04 {
  width: 163px;
  height: 213px;
  left: 77%;
  top: 190px;
  z-index: 2;
}
@media print, screen and (max-width: 768px) {
  .top-education__photo--04 {
    width: 102px;
    height: 134px;
    left: calc(100% - 102px);
    top: 444px;
    border-radius: 0;
    border-top-left-radius: 16px;
    border-bottom-left-radius: 16px;
  }
}

.top-education__photo--05 {
  width: 245px;
  height: 320px;
  left: 80%;
  top: 340px;
}
@media print, screen and (max-width: 768px) {
  .top-education__photo--05 {
    width: 144px;
    height: 163px;
    left: calc(100% - 144px);
    top: 561px;
    border-radius: 16px;
  }
}

.top-education__photo--06 {
  width: 228px;
  height: 176px;
  left: 67%;
  top: 540px;
}
@media print, screen and (max-width: 768px) {
  .top-education__photo--06 {
    width: 136px;
    height: 105px;
    left: 80px;
    top: 540px;
    border-radius: 16px;
  }
}

@media print, screen and (max-width: 768px) {
  .top-education .c-section-title__main {
    font-size: 32px;
    letter-spacing: 2.56px;
  }
  .top-education .top-education__btn .c-btn--viewmore {
    width: 284px;
  }
}

/* TOP 職場環境
-----------------------------------------------------------------------------*/
.top-surroundings {
  background-color: var(--white);
  position: relative;
  overflow: clip;
}
@media print, screen and (max-width: 768px) {
  .top-surroundings {
    padding-bottom: 80px;
  }
}

.top-surroundings::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  width: 100vw;
  height: 100px;
  background-image: url("../../img/top/top-surroundings-strip.png");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  pointer-events: none;
  z-index: 0;
}
@media print, screen and (max-width: 768px) {
  .top-surroundings::before {
    height: 64px;
  }
}

.top-surroundings__inner {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 56px;
}
@media print, screen and (max-width: 768px) {
  .top-surroundings__inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 32px;
  }
}

.top-surroundings__content {
  width: 423px;
  max-width: 100%;
}
@media print, screen and (max-width: 768px) {
  .top-surroundings__content {
    width: 100%;
  }
}

.top-surroundings__lead {
  margin: 24px 0 0;
  font-family: var(--font-sans-serif);
  font-size: 18px;
  font-weight: var(--med);
  color: var(--text-color);
  line-height: 1.8;
  letter-spacing: 0.08em;
}
@media print, screen and (max-width: 768px) {
  .top-surroundings__lead {
    font-size: 14px;
    margin-top: 20px;
  }
}

.top-surroundings__btn {
  margin-top: 32px;
}

.top-surroundings__photos {
  position: relative;
  display: flex;
  gap: 16px;
  align-items: flex-start;
  flex: 0 0 auto;
}
@media print, screen and (max-width: 768px) {
  .top-surroundings__photos {
    width: 100%;
    justify-content: center;
  }
}

.top-surroundings__photos::after {
  content: "";
  position: absolute;
  width: 303px;
  height: 143px;
  left: -151px;
  bottom: -40px;
  background-image: url("../../img/top/top-surroundings-illust.png");
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
  z-index: 2;
}
@media print, screen and (max-width: 768px) {
  .top-surroundings__photos::after {
    width: 32vw;
    left: 0;
    bottom: -10%;
  }
}
@media print, screen and (max-width: 768px) and (max-width: 414px) {
  .top-surroundings__photos::after {
    bottom: -40%;
  }
}

.top-surroundings__photo {
  width: 343px;
  height: 509px;
  border-radius: 16px;
  overflow: hidden;
  background-color: var(--text-color-secondary);
  position: relative;
  z-index: 1;
}
.top-surroundings__photo img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
@media print, screen and (max-width: 768px) {
  .top-surroundings__photo {
    width: min(343px, 100%);
    height: auto;
    aspect-ratio: 343/509;
  }
}

/* TOP 募集要項 CTA
-----------------------------------------------------------------------------*/
.top-guideline {
  position: relative;
  overflow: clip;
  color: var(--white);
  padding: 120px 0 150px;
}
@media print, screen and (max-width: 768px) {
  .top-guideline {
    padding: 80px 0;
  }
}

.top-guideline__inner {
  width: calc(var(--main-width) + 40px);
  margin: 0 auto;
}
@media screen and (max-width: 1240px) {
  .top-guideline__inner {
    padding: 0 40px;
    width: 100%;
  }
}
@media print, screen and (max-width: 768px) and (max-width: 414px) {
  .top-guideline__inner {
    padding: 0 20px;
  }
}
.top-guideline__inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 72px;
}
@media print, screen and (max-width: 768px) {
  .top-guideline__inner {
    gap: 40px;
  }
}

.top-guideline::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("../../img/top/top-guideline-img.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  filter: blur(4px);
  transform: scale(1.06);
  z-index: 0;
}

.top-guideline__title {
  text-align: center;
  gap: 24px;
}
.top-guideline__title .c-section-title__main {
  color: var(--white);
}
@media print, screen and (max-width: 768px) {
  .top-guideline__title {
    gap: 16px;
  }
}

.top-guideline__cards {
  width: min(1200px, 100%);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border: 1px solid rgba(255, 255, 255, 0.8);
  border-radius: 16px;
  overflow: hidden;
  background-color: rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(4px);
}
@media print, screen and (max-width: 768px) {
  .top-guideline__cards {
    grid-template-columns: 1fr;
    gap: 0;
    border: 1px solid rgba(255, 255, 255, 0.8);
    border-radius: 16px;
    overflow: hidden;
    background-color: rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(4px);
  }
}

.top-guideline__card {
  min-height: 348px;
  padding: 72px 24px 56px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  text-align: center;
  color: var(--white);
  text-decoration: none;
  position: relative;
  transition: opacity transforms ease 0s;
}
@media (any-hover: hover) {
  .top-guideline__card:hover {
    opacity: 0.9;
    transform: translateY(-1px);
  }
}
.top-guideline__card.top-guideline__card--middle, .top-guideline__card.top-guideline__card--last {
  border-left: 1px solid rgba(255, 255, 255, 0.6);
}
@media print, screen and (max-width: 768px) {
  .top-guideline__card {
    border-radius: 0;
    backdrop-filter: blur(4px);
    min-height: 240px;
    padding: 44px 16px 36px;
  }
  .top-guideline__card.top-guideline__card--middle, .top-guideline__card.top-guideline__card--last {
    border-left: none;
  }
  .top-guideline__card:not(.top-guideline__card--last) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.6);
  }
}

.top-guideline__card-ttl {
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 48px;
  line-height: 1.3;
  letter-spacing: 0.08em;
}
@media print, screen and (max-width: 768px) {
  .top-guideline__card-ttl {
    font-size: 28px;
  }
}

.top-guideline__card-sub {
  font-family: var(--font-title);
  font-weight: var(--reg);
  font-size: 20px;
  line-height: 1.8;
  letter-spacing: 0.08em;
  opacity: 0.92;
}
@media print, screen and (max-width: 768px) {
  .top-guideline__card-sub {
    font-size: 14px;
  }
}

.top-guideline__card-icon {
  margin-top: 14px;
  width: 50px;
  height: 50px;
  border-radius: 999px;
  background-color: var(--white);
  position: relative;
}
.top-guideline__card-icon::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("../../img/common/icon-arrow-right.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 24px 24px;
}
@media print, screen and (max-width: 768px) {
  .top-guideline__card-icon {
    margin-top: 10px;
    width: 44px;
    height: 44px;
  }
  .top-guideline__card-icon::after {
    background-size: 22px 22px;
  }
}

.top-guideline__card-icon--external::after {
  background-image: url("../../img/common/arrow-right-solid-full%202.svg");
  background-size: 24px 24px;
}

.top-guideline__entry {
  width: min(800px, 100%);
  height: 180px;
  background-color: var(--color-accent-orange);
  border-radius: 16px;
  text-decoration: none;
  color: var(--white);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 8px;
  position: relative;
  transition: opacity transforms ease 0s;
}
@media (any-hover: hover) {
  .top-guideline__entry:hover {
    opacity: 0.95;
    transform: translateY(-1px);
  }
}
@media print, screen and (max-width: 768px) {
  .top-guideline__entry {
    height: auto;
    padding: 32px 24px;
    gap: 6px;
    align-items: flex-start;
  }
}

.top-guideline__entry-en {
  font-family: "Outfit", var(--font-title);
  font-weight: var(--med);
  font-size: 56px;
  line-height: 1;
  letter-spacing: 4.48px;
  display: block;
  text-align: center;
}
@media print, screen and (max-width: 768px) {
  .top-guideline__entry-en {
    font-size: 32px;
    letter-spacing: 3.2px;
    text-align: left;
  }
}

.top-guideline__entry-ja {
  margin-top: 0;
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 20px;
  line-height: 1.8;
  letter-spacing: 1.6px;
  display: block;
  text-align: center;
}
@media print, screen and (max-width: 768px) {
  .top-guideline__entry-ja {
    font-size: 14px;
    margin-top: 0;
    text-align: left;
  }
}

.top-guideline__entry-icon {
  position: absolute;
  right: 16px;
  bottom: 16px;
  width: 50px;
  height: 50px;
  border-radius: 999px;
  background-color: var(--white);
}
.top-guideline__entry-icon::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("../../img/common/arrow-right-solid-full%202.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 24px 24px;
}
@media print, screen and (max-width: 768px) {
  .top-guideline__entry-icon {
    right: 12px;
    bottom: 12px;
    width: 44px;
    height: 44px;
  }
}

/* TOP お問い合わせ
-----------------------------------------------------------------------------*/
.top-contact {
  padding-top: 80px;
}
@media print, screen and (max-width: 768px) {
  .top-contact {
    padding: 80px 0;
  }
}

.top-contact__inner {
  width: calc(var(--main-width) + 40px);
  margin: 0 auto;
}
@media screen and (max-width: 1240px) {
  .top-contact__inner {
    padding: 0 40px;
    width: 100%;
  }
}
@media print, screen and (max-width: 768px) and (max-width: 414px) {
  .top-contact__inner {
    padding: 0 20px;
  }
}

.top-contact__box {
  background-color: var(--color-accent-orange);
  border-radius: 24px;
  padding: 80px 60px;
  position: relative;
  overflow: clip;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 64px;
}
@media print, screen and (max-width: 768px) {
  .top-contact__box {
    display: block;
    width: 100%;
    margin: 0 auto;
    border-radius: 16px;
    padding: 56px 15px 48px;
  }
}

.top-contact__content {
  flex: 0 0 384px;
  min-width: 0;
}
@media print, screen and (max-width: 768px) {
  .top-contact__content {
    width: 100%;
  }
}

.top-contact__title .c-section-title__eyebrow,
.top-contact__title .c-section-title__main {
  color: var(--white);
}

.top-contact__lead {
  margin: 32px 0 0;
  font-family: var(--font-sans-serif);
  font-size: 18px;
  font-weight: var(--med);
  color: var(--white);
  line-height: 1.8;
  letter-spacing: 0.08em;
  max-width: 720px;
}
@media print, screen and (max-width: 768px) {
  .top-contact__lead {
    margin-top: 24px;
    font-size: 14px;
    letter-spacing: 1.12px;
    max-width: 304px;
  }
}

@media print, screen and (max-width: 1399px) and (min-width: 769px) {
  .top-section__lead {
    font-size: clamp(13px, 1vw, 14px);
  }
  .top-about .top-section__lead,
  .top-education__lead,
  .top-surroundings__lead,
  .top-contact__lead {
    font-size: clamp(14px, 1.28vw, 18px);
  }
}
.top-contact__cta {
  margin-top: 0;
  flex: 1;
}
@media print, screen and (max-width: 768px) {
  .top-contact__cta {
    margin-top: 32px;
  }
}

.top-contact__cta-link {
  width: 100%;
  height: 136px;
  background-color: var(--white);
  border-radius: 16px;
  padding: 0 98px 0 78px;
  text-decoration: none;
  color: var(--text-color);
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 16px;
  position: relative;
  overflow: clip;
  transition: opacity transforms ease 0s;
}
@media (any-hover: hover) {
  .top-contact__cta-link:hover {
    opacity: 0.95;
    transform: translateY(-1px);
  }
}
@media print, screen and (max-width: 768px) {
  .top-contact__cta-link {
    width: 100%;
    height: auto;
    min-height: 80px;
    padding: 16px;
    border-radius: 8px;
  }
}

.top-contact__cta-icon {
  flex: 0 0 auto;
  width: 46px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.top-contact__cta-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  filter: brightness(0) saturate(100%);
}
@media print, screen and (max-width: 768px) {
  .top-contact__cta-icon {
    width: 18px;
    height: 18px;
  }
}

.top-contact__cta-text {
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 28px;
  line-height: 1.8;
  letter-spacing: 0.08em;
}
@media print, screen and (max-width: 768px) {
  .top-contact__cta-text {
    font-size: 16px;
    letter-spacing: 1.28px;
  }
}

.top-contact__cta-arrow {
  position: absolute;
  right: 24px;
  top: 50%;
  transform: translateY(-50%);
  width: 50px;
  height: 50px;
}
@media print, screen and (max-width: 768px) {
  .top-contact__cta-arrow {
    right: 16px;
    width: 40px;
    height: 40px;
  }
}
.top-contact__cta-arrow::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 999px;
  background-color: var(--color-accent-orange);
}
.top-contact__cta-arrow::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 24px;
  height: 24px;
  background-image: url("../../img/common/arrow-right-solid-full-white.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

/* ブロック1：News
-----------------------------------------------------------------------------*/
.p-top-news {
  margin-top: -24px;
  padding-bottom: 120px;
  position: relative;
  z-index: 2;
}
@media print, screen and (max-width: 768px) {
  .p-top-news {
    margin-top: 0;
    padding: 120px 0 80px;
  }
}

.p-top-news__inner {
  width: calc(var(--main-width) + 40px);
  margin: 0 auto;
}
@media screen and (max-width: 1240px) {
  .p-top-news__inner {
    padding: 0 40px;
    width: 100%;
  }
}
@media print, screen and (max-width: 768px) and (max-width: 414px) {
  .p-top-news__inner {
    padding: 0 20px;
  }
}
.p-top-news__inner {
  max-width: 1200px;
}

.p-top-news__head {
  margin-bottom: 40px;
}
@media print, screen and (max-width: 768px) {
  .p-top-news__head {
    margin-bottom: 24px;
  }
}

.p-top-news__list {
  margin: 0;
  padding: 0;
  list-style: none;
  background-color: var(--white);
  border-radius: 16px;
  overflow: hidden;
  box-sizing: border-box;
}
@media print, screen and (max-width: 768px) {
  .p-top-news__list {
    border-radius: 8px;
  }
}

.p-top-news__item {
  display: flex;
  gap: 32px;
  align-items: center;
  min-height: 101px;
  border-bottom: 1px dashed var(--color-accent-orange);
}
.p-top-news__item:last-child {
  border-bottom: none;
}
@media print, screen and (max-width: 768px) {
  .p-top-news__item {
    gap: 16px;
    min-height: 84px;
  }
}

.p-top-news__dateBox {
  flex: 0 0 136px;
  height: 101px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  background-color: var(--color-accent-orange);
  color: var(--white);
}
@media print, screen and (max-width: 768px) {
  .p-top-news__dateBox {
    flex-basis: 104px;
  }
}

.p-top-news__dateYear {
  font-family: "Outfit", var(--font-title);
  font-weight: 200;
  font-size: 16px;
  letter-spacing: 1.28px;
  line-height: 1.3;
}
@media print, screen and (max-width: 768px) {
  .p-top-news__dateYear {
    font-size: 10px;
    letter-spacing: 0.8px;
  }
}

.p-top-news__dateMd {
  font-family: "Outfit", var(--font-title);
  font-weight: var(--med);
  font-size: 24px;
  letter-spacing: 1.92px;
  line-height: 1.3;
}
@media print, screen and (max-width: 768px) {
  .p-top-news__dateMd {
    font-size: 16px;
    letter-spacing: 1.28px;
  }
}

.p-top-news__body {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 24px;
  padding-right: 28px;
}
@media print, screen and (max-width: 768px) {
  .p-top-news__body {
    position: relative;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 8px;
    padding: 16px 32px 16px 0;
  }
}

.p-top-news__label {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100px;
  height: 32px;
  padding: 0 10px;
  border-radius: 999px;
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 14px;
  color: var(--text-color);
  border: 2px solid var(--border-light);
  background-color: transparent;
}
@media print, screen and (max-width: 768px) {
  .p-top-news__label {
    width: 80px;
    height: 20px;
    font-family: var(--font-sans-serif);
    font-size: 10px;
    color: var(--text-color-secondary);
    border-width: 1px;
    font-weight: var(--med);
    letter-spacing: 0.8px;
  }
}

.p-top-news__text {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 20px;
  color: var(--text-color);
  text-decoration: none;
  letter-spacing: 1px;
  transition: color opacitys ease 0s;
}
@media (any-hover: hover) {
  .p-top-news__text:hover {
    opacity: 0.8;
  }
}
@media print, screen and (max-width: 768px) {
  .p-top-news__text {
    width: 100%;
    display: block;
    font-family: var(--font-sans-serif);
    font-size: 13px;
    letter-spacing: 0.65px;
    padding-right: 22px;
  }
}

.p-top-news__textIn {
  display: block;
  min-width: 0;
}

.p-top-news__arrow {
  flex: 0 0 auto;
  width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.p-top-news__arrow img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@media print, screen and (max-width: 768px) {
  .p-top-news__arrow {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    width: 14px;
    height: 14px;
  }
}

/* TOP タブレット・1200px以下補正（PC/SPには非適用）
-----------------------------------------------------------------------------*/
@media print, screen and (max-width: 1200px) and (min-width: 769px) {
  .p-top-news__inner,
  .top-surroundings .top-section__inner,
  .top-contact__inner {
    width: 100%;
    max-width: 1200px;
  }
  .top-mainv__inner {
    gap: 28px;
  }
  .top-mainv__content {
    padding-left: 2%;
    padding-right: 20px;
  }
  .top-mainv__content::before {
    width: min(880px, 74vw);
    height: auto;
    aspect-ratio: 1170/203;
  }
  .top-mainv__slider-wrap {
    max-width: 560px;
  }
  .top-mainv__slider-main {
    left: -8%;
  }
  .top-mainv__slider-sub {
    width: min(360px, 34vw);
    right: 0;
  }
  .top-mainv__slider-wrap::after {
    left: clamp(-120px, -8vw, -72px);
    bottom: clamp(-10px, -0.8vw, -2px);
    width: clamp(84px, 10vw, 120px);
    height: clamp(108px, 15vw, 156px);
  }
  .top-mainv__scroll {
    display: none;
  }
  .top-about .top-section__inner {
    min-height: calc(min(1179px, 61.5vw) * 750 / 1179);
  }
  .top-about .top-section__head {
    flex: 0 0 420px;
    width: 420px;
    max-width: 420px;
  }
  .top-about__img {
    width: min(1179px, 61.5vw);
    height: calc(min(1179px, 61.5vw) * 750 / 1179);
  }
  .top-about::after {
    width: min(700px, 50vw);
    height: calc(min(1179px, 61.5vw) * 750 / 1179);
    background: linear-gradient(90deg, rgba(245, 164, 33, 0) 35%, #f5a421 72%);
  }
  .top-education .top-section__inner {
    min-height: clamp(640px, 48vw, 860px);
  }
  .top-education__panel {
    width: min(1000px, 100vw - 80px);
    height: auto;
    aspect-ratio: 1000/580;
    padding: clamp(30px, 3.4vw, 44px) clamp(16px, 2vw, 24px);
    border-radius: clamp(16px, 2vw, 24px);
  }
  .top-education__lead {
    font-size: 16px;
  }
  .top-education__photos {
    width: min(1200px, 100vw - 40px);
    height: 100%;
    left: 50%;
    transform: translateX(-50%);
  }
  .top-education__photo--01 {
    width: clamp(180px, 24vw, 330px);
    height: auto;
    aspect-ratio: 330/285;
    left: 2%;
    top: 12%;
  }
  .top-education__photo--02 {
    width: clamp(120px, 15vw, 205px);
    height: auto;
    aspect-ratio: 205/176;
    left: 1%;
    top: 48%;
  }
  .top-education__photo--03 {
    width: clamp(110px, 13vw, 167px);
    height: auto;
    aspect-ratio: 167/176;
    left: 15%;
    top: 30%;
  }
  .top-education__photo--04 {
    width: clamp(110px, 12vw, 163px);
    height: auto;
    aspect-ratio: 163/213;
    left: auto;
    right: 8%;
    top: 28%;
  }
  .top-education__photo--05 {
    width: clamp(150px, 18vw, 245px);
    height: auto;
    aspect-ratio: 245/320;
    left: auto;
    right: -1%;
    top: 48%;
  }
  .top-education__photo--06 {
    width: clamp(140px, 16vw, 228px);
    height: auto;
    aspect-ratio: 228/176;
    left: auto;
    right: 16%;
    top: 71%;
  }
  .top-surroundings__inner {
    gap: 32px;
  }
  .top-surroundings__content {
    width: 360px;
  }
  .top-surroundings__photo {
    width: min(280px, (100vw - 120px) / 2);
    height: auto;
    aspect-ratio: 343/509;
  }
  .top-surroundings__photos::after {
    width: 240px;
    height: 114px;
    left: -120px;
  }
  .top-contact__box {
    display: block;
    padding: clamp(36px, 4vw, 56px) clamp(20px, 3.4vw, 40px);
  }
  .top-contact__content {
    width: 100%;
    max-width: 100%;
    flex: none;
  }
  .top-contact__cta-link {
    width: 100%;
    max-width: 100%;
    min-height: clamp(92px, 9vw, 116px);
    height: auto;
    padding: 16px clamp(52px, 6vw, 72px) 16px clamp(20px, 4vw, 48px);
  }
  .top-contact__cta {
    margin-top: clamp(24px, 2.4vw, 32px);
  }
  .top-contact__cta-text {
    font-size: clamp(18px, 1.9vw, 22px);
  }
}
/* TOP 看護部について（タブレット 768〜1020px は SP 同様の縦積み）
-----------------------------------------------------------------------------*/
@media print, screen and (max-width: 1020px) and (min-width: 768px) {
  .top-about .top-section__inner {
    min-height: 830px;
    display: block;
    padding: 0 40px;
  }
  .top-about .top-section__head {
    flex: none;
    width: 100%;
    max-width: 100%;
    padding: 508px 0 0;
    margin-right: 0;
  }
  .top-about__img {
    position: absolute;
    top: 0;
    bottom: auto;
    left: 50%;
    right: auto;
    width: 100vw;
    transform: translateX(-50%);
    height: 655px;
    aspect-ratio: auto;
  }
  .top-about__img img {
    object-fit: cover;
    object-position: 8% 20%;
    height: 100%;
  }
  .top-about::after {
    top: 425px;
    left: 0;
    right: 0;
    width: 100%;
    height: 405px;
    background: linear-gradient(180deg, rgba(245, 164, 33, 0) 0%, #f5a421 19.643%);
  }
  .top-about .top-section__btn {
    width: 100%;
  }
  .top-about .top-section__btn .c-btn--viewmore {
    width: 100%;
    justify-content: space-between;
  }
  .top-about .c-section-title__main {
    font-size: 32px;
    letter-spacing: 2.56px;
  }
  .top-about .top-section__lead {
    margin-top: 24px;
    font-size: 14px;
    letter-spacing: 1.12px;
  }
}
/* TOP MVのみSP準拠（spc: 769px〜1020px）
-----------------------------------------------------------------------------*/
@media print, screen and (max-width: 1020px) and (min-width: 769px) {
  .top-mainv {
    padding: 32px 0 44px;
    margin-bottom: 80px;
  }
  .top-mainv__inner {
    flex-direction: column;
    gap: 24px;
    padding: 0 20px 24px;
  }
  .top-mainv__content {
    padding-left: 0;
    padding-right: 0;
  }
  .top-mainv__content::before,
  .top-mainv__title-main::before,
  .top-mainv__title-main::after {
    display: none;
  }
  .top-mainv__title-img {
    max-width: 100%;
  }
  .top-mainv__title-sub {
    margin-top: 16px;
    font-size: 18px;
  }
  .top-mainv__btn {
    flex-direction: column;
    gap: 12px;
    margin-top: 20px;
  }
  .top-mainv__btn-link {
    width: 100%;
    min-width: unset;
    height: 52px;
    padding: 0 30px;
    font-size: 16px;
  }
  .top-mainv__visual {
    width: 100%;
    justify-content: center;
    margin-top: 20px;
  }
  .top-mainv__visual::after {
    display: block;
    z-index: 2;
    left: clamp(-180px, -16vw, -120px);
    bottom: clamp(-90px, -8vw, -56px);
    width: clamp(460px, 62vw, 620px);
    height: clamp(84px, 11vw, 120px);
  }
  .top-mainv__slider-wrap {
    width: 100%;
    max-width: none;
    margin-left: 0;
    margin-right: 0;
  }
  .top-mainv__slider-main {
    width: 80%;
    left: 0;
    border-radius: 16px;
    margin: 0 auto;
  }
  .top-mainv__slider-wrap::after {
    left: clamp(8px, 2vw, 20px);
    bottom: clamp(-84px, -7vw, -56px);
    width: clamp(120px, 16vw, 164px);
    height: clamp(152px, 21vw, 210px);
  }
  .top-mainv__slider-sub {
    left: auto;
    right: -20px;
    bottom: -80px;
    width: 50%;
    margin: 0;
    border-radius: 16px 0 0 16px;
    z-index: 1;
  }
  .top-mainv__scroll {
    display: none;
  }
}
/* TOP 教育・研修制度（タブレット 769〜1020px は SP 同様）
-----------------------------------------------------------------------------*/
@media print, screen and (max-width: 1020px) and (min-width: 769px) {
  .top-education {
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 80px;
  }
  .top-education::before {
    width: 88px;
    height: 112px;
    left: auto;
    right: 20px;
    top: 70px;
  }
  .top-education::after {
    width: 96px;
    height: 115px;
    left: 20px;
    bottom: 160px;
    transform: none;
  }
  .top-education .top-section__inner {
    display: block;
    padding-left: 0;
    padding-right: 0;
  }
  .top-education__panel {
    display: block;
    position: relative;
    left: auto;
    top: auto;
    transform: none;
    width: min(92%, 720px);
    min-height: 564px;
    margin: 92px auto 0;
    border-radius: 16px;
    padding: 132px 24px 44px;
  }
  .top-education__lead {
    margin-top: 24px;
    font-size: 14px;
  }
  .top-education__photos {
    transform: none;
    position: absolute;
    left: 0;
    top: 92px;
    width: 100%;
    height: calc(100% - 92px);
    margin-top: 0;
  }
  .top-education__photo--01 {
    width: 136px;
    height: 118px;
    left: 0;
    top: -80px;
    border-radius: 0;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 16px;
  }
  .top-education__photo--02 {
    width: 113px;
    height: 73px;
    left: 0;
    top: 48px;
    border-radius: 0;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
  }
  .top-education__photo--03 {
    width: 99px;
    height: 103px;
    left: 119px;
    top: -32px;
    border-radius: 8px;
  }
  .top-education__photo--04 {
    width: 102px;
    height: 134px;
    left: calc(100% - 102px);
    top: auto;
    bottom: 156px;
    border-radius: 0;
    border-top-left-radius: 16px;
    border-bottom-left-radius: 16px;
  }
  .top-education__photo--05 {
    width: 144px;
    height: 163px;
    left: calc(100% - 144px);
    top: auto;
    bottom: 18px;
    border-radius: 16px;
  }
  .top-education__photo--06 {
    width: 136px;
    height: 105px;
    left: 80px;
    top: auto;
    bottom: 36px;
    border-radius: 16px;
  }
  .top-education .c-section-title__main {
    font-size: 32px;
    letter-spacing: 2.56px;
  }
  .top-education__btn .c-btn--viewmore {
    width: 284px;
  }
  .top-surroundings__inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 32px;
  }
  .top-surroundings__content {
    width: 100%;
  }
  .top-surroundings__lead {
    font-size: 14px;
    margin-top: 20px;
  }
  .top-surroundings__photos {
    width: 100%;
    justify-content: center;
  }
  .top-surroundings__photo {
    width: min(343px, 100%);
    height: auto;
    aspect-ratio: 343/509;
  }
  .top-surroundings__photos::after {
    width: 32vw;
    left: 0;
    bottom: -10%;
  }
}
.p-about .p-page-head {
  --page-head-illust: url("../../img/common/about-mv-illust.png");
}

/* 看護部長からのメッセージ
   Figma PC: 4764:1112 / SP: 4155:782
-----------------------------------------------------------------------------*/
.p-about-message {
  padding: 80px 0 120px;
}
@media print, screen and (max-width: 768px) {
  .p-about-message {
    padding: 40px 0 64px;
  }
}

.p-about-message__layout {
  display: grid;
  grid-template-columns: 320px 1fr;
  column-gap: 60px;
  align-items: center;
}
@media print, screen and (max-width: 768px) {
  .p-about-message__layout {
    display: flex;
    flex-direction: column;
    gap: 28px;
  }
}

@media print, screen and (max-width: 768px) {
  .p-about-message__figure {
    margin-top: 0;
    width: 100%;
    order: 3;
  }
}

.p-about-message__photo {
  width: 100%;
  max-width: 320px;
  height: auto;
  border-radius: 8px;
  overflow: hidden;
  background-color: var(--border-light);
}
.p-about-message__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}
@media print, screen and (max-width: 768px) {
  .p-about-message__photo {
    width: 70%;
    height: 100%;
    margin: 0 auto;
    border-radius: 16px;
  }
}

.p-about-message__col {
  display: flex;
  flex-direction: column;
  gap: 32px;
  min-width: 0;
}
@media print, screen and (max-width: 768px) {
  .p-about-message__col {
    padding-top: 0;
    gap: 28px;
    order: 1;
  }
}

.p-about-message__prose {
  font-family: var(--font-sans-serif);
  font-weight: var(--reg);
  font-size: 18px;
  line-height: 1.8;
  color: var(--text-color);
  letter-spacing: 0.08em;
}
.p-about-message__prose p {
  margin: 0;
}
.p-about-message__prose p + p {
  margin-top: 1.8em;
}
.p-about-message__prose .p-about-message__lead {
  margin-top: 0;
}
.p-about-message__prose .p-about-message__lead-end {
  margin-top: 0 !important;
}
.p-about-message__prose .p-about-message__lead-end + p {
  margin-top: 1.8em;
}
@media print, screen and (max-width: 768px) {
  .p-about-message__prose {
    font-size: 15px;
    line-height: 1.8;
    letter-spacing: 0.075em;
  }
  .p-about-message__prose .p-about-message__lead-end {
    line-height: 2.4;
  }
}

.p-about-message__lead {
  font-weight: var(--med);
  font-size: 24px;
  line-height: 1.8;
  letter-spacing: 0.08em;
}
@media print, screen and (max-width: 768px) {
  .p-about-message__lead {
    font-size: 20px;
    line-height: 1.8;
    letter-spacing: 0.08em;
  }
}

.p-about-message__lead-end {
  line-height: 2;
  margin-top: 0 !important;
}
@media print, screen and (max-width: 768px) {
  .p-about-message__lead-end {
    margin-top: 0 !important;
  }
}

.p-about-message__catch {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-start;
  max-width: 100%;
}

.p-about-message__catch-line {
  margin: 0;
  padding: 0 8px;
  width: fit-content;
  max-width: 100%;
  box-sizing: border-box;
  font-family: "851MkPOP", "Hiragino Maru Gothic ProN", "Yu Gothic UI", var(--font-title);
  font-weight: var(--reg);
  font-size: 52px;
  line-height: 1.3;
  color: var(--main-color);
  letter-spacing: 2.6px;
  background: linear-gradient(to top, #f7d398 0%, #f7d398 40%, rgba(247, 211, 152, 0) 40%, rgba(247, 211, 152, 0) 100%);
}
@media print, screen and (max-width: 768px) {
  .p-about-message__catch-line {
    font-size: clamp(18px, 8vw, 32px);
    line-height: 1.5;
    letter-spacing: 1.6px;
  }
}

/* 看護部理念
   Figma PC: 5042:3045 / SP: 5042:3047
-----------------------------------------------------------------------------*/
.p-about-philosophy {
  background-color: var(--color-bg01);
  padding: 0 0 120px;
}
@media print, screen and (max-width: 768px) {
  .p-about-philosophy {
    padding: 0 0 64px;
  }
}
.p-about-philosophy .c-section-heroTitle {
  --heroTitle-bg: url("../../img/about/philosophy01-img.jpg");
  --heroTitle-label-bg: var(--color-bg01);
  max-width: 1200px;
  margin: 0 auto;
}
@media print, screen and (max-width: 768px) {
  .p-about-philosophy .c-section-heroTitle {
    --heroTitle-label-bg: #fcf7e6;
  }
}

.p-about-philosophy__mission {
  margin: 56px 0 0;
  font-family: var(--font-title);
  font-weight: var(--med);
  font-size: 32px;
  line-height: 1.5;
  color: var(--main-color);
  letter-spacing: 1.6px;
  text-align: center;
}
@media print, screen and (max-width: 768px) {
  .p-about-philosophy__mission {
    margin-top: 32px;
    font-size: 18px;
    line-height: 1.8;
    letter-spacing: 0.9px;
    text-align: left;
    padding: 0 2px;
  }
}

.p-about-philosophy__cards {
  margin-top: 56px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px 40px;
}
@media print, screen and (max-width: 768px) {
  .p-about-philosophy__cards {
    margin-top: 32px;
    grid-template-columns: 1fr;
    gap: 24px;
  }
}

.p-about-philosophy__card {
  background-color: var(--white);
  background-image: linear-gradient(to right, rgba(66, 62, 57, 0.06) 1px, transparent 1px), linear-gradient(to bottom, rgba(66, 62, 57, 0.06) 1px, transparent 1px);
  background-size: 24px 24px;
  border-radius: 16px;
  padding: 25px 30px 40px;
  overflow: clip;
}
@media print, screen and (max-width: 768px) {
  .p-about-philosophy__card {
    padding: 25px 16px 24px;
  }
}

.p-about-philosophy__cardHead {
  display: flex;
  align-items: center;
  gap: 16px;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--border-light);
}
@media print, screen and (max-width: 768px) {
  .p-about-philosophy__cardHead {
    border-bottom-width: 1px;
  }
}

.p-about-philosophy__cardNo {
  margin: 0;
  font-family: "Outfit", var(--font-title);
  font-weight: var(--reg);
  font-size: 26px;
  line-height: 1;
  color: var(--color-accent-orange);
  letter-spacing: 2.08px;
}

.p-about-philosophy__cardTtl {
  margin: 0;
  font-family: var(--font-title);
  font-weight: var(--bold);
  font-size: 20px;
  line-height: 1.8;
  color: var(--text-color);
  letter-spacing: 1.6px;
}
@media print, screen and (max-width: 768px) {
  .p-about-philosophy__cardTtl {
    line-height: 1.5;
  }
}

.p-about-philosophy__points {
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 16px;
}
@media print, screen and (max-width: 768px) {
  .p-about-philosophy__points {
    margin-top: 16px;
    gap: 12px;
  }
}

.p-about-philosophy__point {
  position: relative;
  padding-left: 42px;
  font-family: var(--font-sans-serif);
  font-weight: var(--med);
  font-size: 18px;
  line-height: 1.8;
  color: var(--text-color);
  letter-spacing: 1.44px;
}
@media print, screen and (max-width: 768px) {
  .p-about-philosophy__point {
    padding-left: 32px;
    font-size: 15px;
    letter-spacing: 1.2px;
  }
}

.p-about-philosophy__badge {
  position: absolute;
  left: 0;
  top: 0;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background-color: var(--color-accent-orange);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: "Outfit", var(--font-title);
  font-weight: var(--med);
  font-size: 16px;
  line-height: 1;
  color: var(--white);
  letter-spacing: 0.8px;
}
@media print, screen and (max-width: 768px) {
  .p-about-philosophy__badge {
    width: 24px;
    height: 24px;
    top: 3px;
  }
}

.p-about-philosophy__marquee {
  margin-top: 80px;
  overflow-x: hidden;
  overflow-y: visible;
}
@media print, screen and (max-width: 768px) {
  .p-about-philosophy__marquee {
    margin-top: 60px;
  }
}

.p-about-philosophy__marqueeTrack {
  display: flex;
  width: max-content;
  animation: aboutPhilosophyMarquee 28s linear infinite;
  will-change: transform;
}
@media print, screen and (max-width: 768px) {
  .p-about-philosophy__marqueeTrack {
    animation-duration: 22s;
  }
}

.p-about-philosophy__marqueeRow {
  display: flex;
  align-items: flex-start;
  gap: 40px;
  margin: 0;
  padding: 0 20px;
  list-style: none;
}
@media print, screen and (max-width: 768px) {
  .p-about-philosophy__marqueeRow {
    gap: 16px;
    padding: 0 20px;
  }
}

.p-about-philosophy__marqueeItem {
  flex: 0 0 auto;
  width: 518px;
  height: 380px;
}
.p-about-philosophy__marqueeItem:nth-child(2n+1) {
  margin-top: 60px;
}
@media print, screen and (max-width: 768px) {
  .p-about-philosophy__marqueeItem:nth-child(2n+1) {
    margin-top: 30px;
  }
}
.p-about-philosophy__marqueeItem:nth-child(2n) {
  margin-bottom: 60px;
}
@media print, screen and (max-width: 768px) {
  .p-about-philosophy__marqueeItem:nth-child(2n) {
    margin-bottom: 30px;
  }
}
@media print, screen and (max-width: 768px) {
  .p-about-philosophy__marqueeItem {
    width: 210px;
    height: 154px;
  }
}

.p-about-philosophy__marqueeCard {
  width: 100%;
  height: 100%;
  border-radius: 16px;
  overflow: hidden;
  background-color: var(--text-color-secondary);
  transform: translateZ(0);
}

.p-about-philosophy__marqueeCard img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

@keyframes aboutPhilosophyMarquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}
@media (prefers-reduced-motion: reduce) {
  .p-about-philosophy__marqueeTrack {
    animation: none;
  }
}
/* education
-----------------------------------------------------------------------------*/
.p-education .p-page-head {
  --page-head-illust: url("../../img/common/education-mv-illust.png");
}
.p-education .p-page-head__photo img {
  background-color: var(--border-light);
}

/* section spacing
-----------------------------------------------------------------------------*/
.p-page-section.p-education-program {
  padding: 120px 0 0;
}
@media print, screen and (max-width: 1020px) {
  .p-page-section.p-education-program {
    padding: 80px 0 0;
  }
}

.p-page-section.p-education-ladder {
  padding: 120px 0;
}
@media print, screen and (max-width: 768px) {
  .p-page-section.p-education-ladder {
    padding: 80px 0;
  }
}

.p-page-section.p-education-goal {
  padding: 120px 0;
}

/* program
-----------------------------------------------------------------------------*/
.p-education-program__card {
  margin-top: 48px;
  background-color: var(--white);
  border-radius: 16px;
  padding: 50px;
  overflow: hidden;
}
@media print, screen and (max-width: 1020px) {
  .p-education-program__card {
    margin-top: 32px;
    border-radius: 8px;
    padding: 16px;
  }
}

.p-education-program__steps {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 18px;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media print, screen and (max-width: 1020px) {
  .p-education-program__steps {
    grid-template-columns: repeat(2, 143px);
    justify-content: center;
    gap: 15px 16px;
  }
}

.p-education-program__step {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  aspect-ratio: 1;
  min-height: 0;
  border-radius: 50%;
  border: 2px solid var(--color-accent-orange);
  background-color: var(--white);
  display: grid;
  place-items: center;
  padding: clamp(8px, 8%, 20px) clamp(6px, 6%, 14px);
  color: var(--color-accent-orange);
}
@media print, screen and (max-width: 1020px) {
  .p-education-program__step {
    width: 143px;
    height: 143px;
    aspect-ratio: auto;
    min-height: 143px;
    padding: 12px;
  }
}

.p-education-program__step--primary {
  background-color: var(--color-accent-orange);
  color: var(--white);
  border-color: var(--color-accent-orange);
}
.p-education-program__step--primary::after {
  content: "";
  position: absolute;
  left: 50%;
  top: calc(100% - 1px);
  transform: translateX(-50%);
  width: 26px;
  height: 22.5px;
  background-color: var(--color-accent-orange);
  clip-path: polygon(50% 100%, 0 0, 100% 0);
}
@media print, screen and (max-width: 1020px) {
  .p-education-program__step--primary {
    grid-column: 1/-1;
    justify-self: center;
  }
}

.p-education-program__stepText {
  margin: 0;
  text-align: center;
  font-family: var(--font-title);
  font-weight: var(--bold);
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: 1.44px;
  display: grid;
  gap: 2px;
}
.p-education-program__stepText span {
  display: block;
}
@media print, screen and (max-width: 1200px) and (min-width: 1021px) {
  .p-education-program__stepText {
    font-size: clamp(11px, 3.35vw - 22.2px, 18px);
    letter-spacing: clamp(0.88px, 0.268vw - 1.78px, 1.44px);
  }
}
@media print, screen and (max-width: 1020px) {
  .p-education-program__stepText {
    font-size: 14px;
    letter-spacing: 1.12px;
  }
}

.p-education-program__illust {
  margin-top: 30px;
  display: flex;
  justify-content: center;
}
.p-education-program__illust img {
  width: min(953px, 100%);
  height: auto;
  display: block;
}
@media print, screen and (max-width: 1020px) and (min-width: 768px) {
  .p-education-program__illust {
    margin-top: 32px;
  }
  .p-education-program__illust img {
    width: 90%;
    max-width: 100%;
    height: auto;
  }
}
@media print, screen and (max-width: 767px) {
  .p-education-program__illust {
    margin-top: 16px;
  }
  .p-education-program__illust img {
    width: 303px;
    max-width: 100%;
    aspect-ratio: 303/61;
    object-fit: cover;
  }
}

/* schedule
-----------------------------------------------------------------------------*/
.p-page-section.p-education-schedule {
  margin-top: 120px;
  background-color: var(--color-accent-orange);
  padding: 120px 0;
  color: var(--white);
}
@media print, screen and (max-width: 768px) {
  .p-page-section.p-education-schedule {
    margin-top: 56px;
    padding: 64px 0 72px;
  }
}

.c-section-heading.c-section-heading--inverse::after {
  background: repeating-linear-gradient(to right, rgba(255, 255, 255, 0.75) 0 4px, transparent 4px 8px);
}
.c-section-heading.c-section-heading--inverse::before {
  background-color: var(--white);
}
.c-section-heading.c-section-heading--inverse .c-section-heading__text {
  color: var(--white);
}

.p-education-schedule__lead {
  margin-bottom: 64px;
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 1.44px;
}
@media print, screen and (max-width: 768px) {
  .p-education-schedule__lead {
    font-size: 14px;
    letter-spacing: 1.12px;
  }
}

.p-education-schedule__card {
  background-color: var(--white);
  color: var(--text-color);
  border-radius: 16px;
  padding: 64px 40px;
}
@media print, screen and (max-width: 768px) {
  .p-education-schedule__card {
    padding: 32px 20px;
  }
}

.p-education-schedule__timeline {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 64px;
  position: relative;
}
@media print, screen and (max-width: 768px) {
  .p-education-schedule__timeline {
    gap: 40px;
  }
}

.p-education-schedule__item {
  --schedule-line-x: 74px;
  --schedule-line-color: var(--color-accent-orange);
  display: grid;
  grid-template-columns: 148px 1fr;
  gap: 24px 39px;
  position: relative;
}
@media print, screen and (max-width: 768px) {
  .p-education-schedule__item {
    --schedule-line-x: 31.5px;
    grid-template-columns: 63px 1fr;
    gap: 16px;
  }
}

.p-education-schedule__item--compact {
  align-items: center;
}
@media print, screen and (max-width: 768px) {
  .p-education-schedule__item--compact {
    align-items: flex-start;
  }
}

.p-education-schedule__item::after {
  content: "";
  position: absolute;
  left: var(--schedule-line-x);
  top: 148px;
  bottom: -64px;
  width: 3px;
  transform: translateX(-50%);
  background-image: repeating-linear-gradient(to bottom, var(--schedule-line-color) 0 3px, transparent 3px 9px);
  border-radius: 999px;
  pointer-events: none;
}
@media print, screen and (max-width: 768px) {
  .p-education-schedule__item::after {
    top: 63px;
    bottom: -40px;
    width: 2px;
  }
}

.p-education-schedule__item:last-child::after {
  content: none;
}

.p-education-schedule__badge {
  width: 148px;
  height: 148px;
  border-radius: 150px;
  background-color: var(--color-accent-orange);
  color: var(--white);
  display: grid;
  place-items: center;
  line-height: 1;
  display: flex;
  justify-content: center;
}
@media print, screen and (max-width: 768px) {
  .p-education-schedule__badge {
    width: 63px;
    height: 63px;
  }
}

.p-education-schedule__monthNo {
  font-family: "Outfit", var(--font-title);
  font-weight: var(--med);
  font-size: 56px;
  letter-spacing: 4.48px;
}
@media print, screen and (max-width: 768px) {
  .p-education-schedule__monthNo {
    font-size: 32px;
    letter-spacing: 2.56px;
  }
}

.p-education-schedule__monthUnit {
  font-family: var(--font-title);
  font-weight: var(--bold);
  font-size: 26px;
  letter-spacing: 2.08px;
  margin-bottom: -16px;
}
@media print, screen and (max-width: 768px) {
  .p-education-schedule__monthUnit {
    font-size: 14px;
    letter-spacing: 1.12px;
    margin-bottom: -10px;
  }
}

.p-education-schedule__body {
  min-width: 0;
}

.p-education-schedule__title {
  margin: 0;
  font-family: var(--font-title);
  font-weight: var(--bold);
  font-size: 28px;
  line-height: 1.5;
  letter-spacing: 2.24px;
}
@media print, screen and (max-width: 768px) {
  .p-education-schedule__title {
    font-size: 18px;
    letter-spacing: 1.44px;
    line-height: 1.8;
  }
}

.p-education-schedule__subTitle {
  margin: 40px 0 0;
  font-family: var(--font-title);
  font-weight: var(--bold);
  font-size: 28px;
  line-height: 1.5;
  letter-spacing: 2.24px;
}
@media print, screen and (max-width: 768px) {
  .p-education-schedule__subTitle {
    margin-top: 32px;
    font-size: 18px;
    letter-spacing: 1.44px;
  }
}

.p-education-schedule__text {
  margin: 16px 0 0;
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 0.9px;
}
@media print, screen and (max-width: 768px) {
  .p-education-schedule__text {
    margin-top: 8px;
    font-size: 13px;
    letter-spacing: 0.65px;
  }
}

.p-education-schedule__figure {
  margin: 16px 0 0;
  width: 360px;
  max-width: 100%;
  border-radius: 8px;
  overflow: hidden;
  background-color: var(--text-color-secondary);
}
.p-education-schedule__figure img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 360/227;
  object-fit: cover;
}
@media print, screen and (max-width: 768px) {
  .p-education-schedule__figure {
    width: 100%;
  }
}

.p-education-schedule__figures {
  margin-top: 16px;
  display: flex;
  gap: 40px;
  flex-wrap: wrap;
}
.p-education-schedule__figures .p-education-schedule__figure {
  margin-top: 0;
}
@media print, screen and (max-width: 768px) {
  .p-education-schedule__figures {
    gap: 8px;
  }
}

/* ladder
-----------------------------------------------------------------------------*/
.p-education-ladder__lead {
  margin: 24px 0 0;
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 1.44px;
  color: var(--text-color);
}
@media print, screen and (max-width: 768px) {
  .p-education-ladder__lead {
    font-size: 14px;
    letter-spacing: 1.12px;
  }
}

.p-education-ladder__card {
  margin-top: 32px;
  background-color: var(--white);
  border-radius: 16px;
  padding: 60px;
}
@media print, screen and (max-width: 768px) {
  .p-education-ladder__card {
    padding: 24px 20px;
  }
}

.p-education-ladder__figure {
  margin: 0;
}
.p-education-ladder__figure img {
  width: 100%;
  height: auto;
  display: block;
}

/* goal
-----------------------------------------------------------------------------*/
.p-education-goal__layout {
  --goal-bg: var(--color-section-warm);
  --goal-circle-team: #f38fbe;
  --goal-circle-quality: #7fc644;
  --goal-circle-edu: #00a79a;
  margin-top: 60px;
  position: relative;
  width: min(1061px, 100%);
  min-height: 854px;
  margin-left: auto;
  margin-right: auto;
}

.p-education-goal__core {
  position: absolute;
  left: 50%;
  top: 258px;
  transform: translateX(-50%);
  width: 503px;
  height: 503px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  padding: 24px;
  background: radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 42%, rgba(255, 255, 255, 0.75) 76%, #ffffff 100%);
}
.p-education-goal__core::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -42px;
  transform: translateX(-50%);
  width: 158px;
  height: 120px;
  background: url("../../img/common/goal-illust.png") no-repeat center/contain;
  pointer-events: none;
}

.p-education-goal__coreText {
  margin: 0;
  text-align: center;
  color: var(--text-color-secondary);
  font-family: var(--font-title);
  line-height: 1.5;
  letter-spacing: 1.8px;
  font-size: 28px;
  display: grid;
  gap: 6px;
}
.p-education-goal__coreText .is-strong {
  font-weight: var(--bold);
  font-size: 36px;
}

.p-education-goal__circle {
  position: absolute;
  width: 380px;
  height: 380px;
  border-radius: 50%;
  color: var(--white);
  padding: 61px 60px 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  box-sizing: border-box;
  overflow: visible;
}
.p-education-goal__circle::after {
  content: "";
  position: absolute;
  pointer-events: none;
  background-repeat: no-repeat;
  background-size: contain;
}

.p-education-goal__circle--team {
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  background-color: var(--goal-circle-team);
}
.p-education-goal__circle--team::after {
  right: -160px;
  bottom: -6px;
  width: 303px;
  height: 143px;
  background-image: url("../../img/common/surroundings-mv-illust.png");
}

.p-education-goal__circle--quality {
  left: 0;
  top: 474px;
  background-color: var(--goal-circle-quality);
}
.p-education-goal__circle--quality::after {
  left: -34px;
  top: 209px;
  width: 67px;
  height: 171px;
  background-image: url("../../img/common/expertise-illust.png");
}

.p-education-goal__circle--edu {
  right: 0;
  top: 474px;
  background-color: var(--goal-circle-edu);
}
.p-education-goal__circle--edu::after {
  right: -48px;
  top: 225px;
  width: 153px;
  height: 183px;
  background-image: url("../../img/common/education-mv-illust.png");
}

.p-education-goal__title {
  margin: 0;
  font-family: var(--font-title);
  font-weight: var(--bold);
  font-size: 32px;
  line-height: 1.5;
  letter-spacing: 1.6px;
  text-align: center;
}

.p-education-goal__list {
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 12px;
  width: 100%;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0.7px;
}
.p-education-goal__list li {
  position: relative;
  padding-left: 16px;
  font-weight: var(--reg);
}
.p-education-goal__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.9);
}

.p-education-goal__circle--team .p-education-goal__list li:first-child {
  font-size: 16px;
  letter-spacing: 1.28px;
}

@media print, screen and (max-width: 1020px) and (min-width: 769px) {
  .p-page-section.p-education-goal {
    padding: 80px 0;
  }
  .p-education-goal__layout {
    margin-top: 32px;
    min-height: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    padding-bottom: 8px;
  }
  .p-education-goal__core {
    position: relative;
    left: auto;
    top: auto;
    transform: none;
    padding: 16px;
    order: 5;
    box-sizing: border-box;
    width: min(335px, 100%);
    max-width: 335px;
    aspect-ratio: 1;
    height: auto;
  }
  .p-education-goal__core::after {
    width: 128px;
    height: 97px;
    bottom: -18px;
    background-image: url("../../img/common/goal-illust.png");
  }
  .p-education-goal__coreText {
    letter-spacing: 1.2px;
    font-size: 18px;
  }
  .p-education-goal__coreText .is-strong {
    font-size: 24px;
  }
  .p-education-goal__circle {
    position: relative;
    width: min(335px, 100% - 16px);
    max-width: 335px;
    aspect-ratio: 1;
    height: auto;
    border-radius: 50%;
    padding: 56px 44px 44px;
    align-items: center;
    box-sizing: border-box;
  }
  .p-education-goal__circle--team {
    transform: none;
    left: auto;
    top: auto;
    order: 1;
  }
  .p-education-goal__circle--team::after {
    right: -6px;
    bottom: 34px;
    width: 166px;
    height: 78px;
    background-image: url("../../img/common/surroundings-mv-illust.png");
  }
  .p-education-goal__circle--quality {
    left: auto;
    top: auto;
    order: 3;
  }
  .p-education-goal__circle--quality::after {
    right: 0;
    top: 200px;
    width: 53px;
    height: 135px;
    left: auto;
    background-image: url("../../img/common/expertise-illust.png");
  }
  .p-education-goal__circle--edu {
    right: auto;
    top: auto;
    order: 2;
  }
  .p-education-goal__circle--edu::after {
    right: -1px;
    top: 230px;
    width: 88px;
    height: 105px;
    background-image: url("../../img/common/education-mv-illust.png");
  }
  .p-education-goal__title {
    font-size: 24px;
    letter-spacing: 1.2px;
  }
  .p-education-goal__list {
    margin-top: 16px;
    gap: 8px;
    font-size: 13px;
    letter-spacing: 0.65px;
  }
  .p-education-goal__circle--team .p-education-goal__list li:first-child {
    font-size: 13px;
    letter-spacing: 1.04px;
  }
  .p-education-goal__layout::before,
  .p-education-goal__layout::after {
    content: "";
    position: relative;
    order: 4;
    margin: 0 auto;
    pointer-events: none;
    background: none;
  }
  .p-education-goal__layout::before {
    width: 74px;
    height: 87px;
    background: url("../../img/education/goal-arroe-sp.png") no-repeat center/contain;
  }
  .p-education-goal__layout::after {
    content: none;
  }
}
@media print, screen and (max-width: 1400px) and (min-width: 1021px) {
  .p-education-goal__core {
    --goal-core-size: clamp(320px, min(45vw, 100% - 80px), 503px);
    width: var(--goal-core-size);
    height: var(--goal-core-size);
  }
  .p-education-goal__core::after {
    width: clamp(110px, var(--goal-core-size) * 0.314, 158px);
    height: clamp(84px, var(--goal-core-size) * 0.238, 120px);
    bottom: clamp(-32px, var(--goal-core-size) * -0.083, -42px);
  }
  .p-education-goal__coreText {
    letter-spacing: clamp(1.2px, var(--goal-core-size) * 0.0036, 1.8px);
    font-size: clamp(16px, var(--goal-core-size) * 0.056, 28px);
  }
  .p-education-goal__coreText .is-strong {
    font-size: clamp(20px, var(--goal-core-size) * 0.072, 36px);
  }
}
@media print, screen and (max-width: 768px) {
  .p-page-section.p-education-goal {
    padding: 80px 0;
  }
  .p-education-goal__layout {
    margin-top: 32px;
    min-height: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    padding-bottom: 8px;
  }
  .p-education-goal__core {
    position: relative;
    left: auto;
    top: auto;
    transform: none;
    padding: 16px;
    order: 5;
    box-sizing: border-box;
    width: min(335px, 100%);
    max-width: 335px;
    aspect-ratio: 1;
    height: auto;
  }
  .p-education-goal__core::after {
    width: 128px;
    height: 97px;
    bottom: -18px;
    background-image: url("../../img/common/goal-illust.png");
  }
  .p-education-goal__coreText {
    letter-spacing: 1.2px;
    font-size: 18px;
  }
  .p-education-goal__coreText .is-strong {
    font-size: 24px;
  }
  .p-education-goal__circle {
    position: relative;
    width: min(335px, 100% - 16px);
    max-width: 335px;
    aspect-ratio: 1;
    height: auto;
    border-radius: 50%;
    padding: 56px 44px 44px;
    align-items: center;
    box-sizing: border-box;
  }
  .p-education-goal__circle--team {
    transform: none;
    left: auto;
    top: auto;
    order: 1;
  }
  .p-education-goal__circle--team::after {
    right: -6px;
    bottom: 34px;
    width: 166px;
    height: 78px;
    background-image: url("../../img/common/surroundings-mv-illust.png");
  }
  .p-education-goal__circle--quality {
    left: auto;
    top: auto;
    order: 3;
  }
  .p-education-goal__circle--quality::after {
    right: 0;
    top: 200px;
    width: 53px;
    height: 135px;
    left: auto;
    background-image: url("../../img/common/expertise-illust.png");
  }
  .p-education-goal__circle--edu {
    right: auto;
    top: auto;
    order: 2;
  }
  .p-education-goal__circle--edu::after {
    right: -1px;
    top: 230px;
    width: 88px;
    height: 105px;
    background-image: url("../../img/common/education-mv-illust.png");
  }
  .p-education-goal__title {
    font-size: 24px;
    letter-spacing: 1.2px;
  }
  .p-education-goal__list {
    margin-top: 16px;
    gap: 8px;
    font-size: 13px;
    letter-spacing: 0.65px;
  }
  .p-education-goal__circle--team .p-education-goal__list li:first-child {
    font-size: 13px;
    letter-spacing: 1.04px;
  }
  .p-education-goal__layout::before,
  .p-education-goal__layout::after {
    content: "";
    position: relative;
    order: 4;
    margin: 0 auto;
    pointer-events: none;
    background: none;
  }
  .p-education-goal__layout::before {
    width: 74px;
    height: 87px;
    background: url("../../img/education/goal-arroe-sp.png") no-repeat center/contain;
  }
  .p-education-goal__layout::after {
    content: none;
  }
}
/* phrase
-----------------------------------------------------------------------------*/
.p-page-section.p-education-phrase {
  position: relative;
  overflow: clip;
  background-color: var(--black);
  color: var(--white);
  padding: 180px 0 160px;
}
@media print, screen and (max-width: 768px) {
  .p-page-section.p-education-phrase {
    padding: 80px 0;
    margin-bottom: 40px;
  }
}

.p-education-phrase__bg {
  position: absolute;
  inset: 0;
  background: url("../../img/education/phrase-bk-img.jpg") no-repeat center/cover;
}
.p-education-phrase__bg::after {
  content: "";
  position: absolute;
  inset: 0;
}

.p-education-phrase__inner {
  position: relative;
  z-index: 1;
  text-align: center;
}

.p-education-phrase__title {
  margin: 0;
  font-family: var(--font-title);
  font-weight: var(--bold);
  font-size: 44px;
  line-height: 1.5;
  letter-spacing: 2.2px;
}
@media print, screen and (max-width: 768px) {
  .p-education-phrase__title {
    font-size: 20px;
    letter-spacing: 1.2px;
  }
}

.p-education-phrase__sub {
  margin: 48px 0 0;
  font-size: 32px;
  line-height: 1.8;
  letter-spacing: 2.56px;
}
@media print, screen and (max-width: 768px) {
  .p-education-phrase__sub {
    margin-top: 20px;
    font-size: 16px;
    letter-spacing: 1.28px;
  }
}

.p-education-phrase__catch {
  margin: 40px 0 0;
  font-family: "851MkPOP", var(--font-title);
  font-size: 80px;
  line-height: 1.2;
  letter-spacing: 4px;
}
@media print, screen and (max-width: 1020px) and (min-width: 768px) {
  .p-education-phrase__catch {
    font-size: 7vw;
  }
}
@media print, screen and (max-width: 767px) {
  .p-education-phrase__catch {
    margin-top: 14px;
    font-size: 32px;
    letter-spacing: 1.6px;
  }
}

.p-education-phrase__rule {
  width: min(893px, 100%);
  height: 1px;
  margin: 40px auto 0;
  border: 0;
  background-color: transparent;
  background-image: repeating-linear-gradient(to right, rgba(255, 255, 255, 0.6) 0, rgba(255, 255, 255, 0.6) 8px, transparent 8px, transparent 16px);
}
@media print, screen and (max-width: 768px) {
  .p-education-phrase__rule {
    margin-top: 18px;
  }
}

.p-education-phrase__desc {
  margin: 36px auto 0;
  max-width: 980px;
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 1.44px;
}
@media print, screen and (max-width: 768px) {
  .p-education-phrase__desc {
    margin-top: 18px;
    font-size: 14px;
    letter-spacing: 1.12px;
  }
}

/* surroundings
-----------------------------------------------------------------------------*/
.p-surroundings .p-page-head {
  --page-head-illust: url("../../img/common/surroundings-mv-illust.png");
}
.p-surroundings .p-page-head__illust {
  width: 255px;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings .p-page-head__illust {
    width: 140px;
  }
}

/* 先輩の声
-----------------------------------------------------------------------------*/
.p-surroundings-interview {
  padding: 80px 0 120px;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-interview {
    padding: 56px 0 64px;
  }
}

.p-surroundings-interview__list {
  margin-top: 64px;
  display: grid;
  gap: 95px;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-interview__list {
    margin-top: 28px;
    gap: 64px;
  }
}

.p-surroundings-interview__item {
  display: block;
}
@media print, screen and (min-width: 1021px) {
  .p-surroundings-interview__item {
    display: grid;
    grid-template-columns: 455px 1fr;
    column-gap: 59px;
    align-items: start;
  }
}

.p-surroundings-interview__figure {
  position: relative;
  margin: 0;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-interview__figure {
    width: 70%;
    margin: 0 auto;
  }
}
@media print, screen and (max-width: 1020px) and (min-width: 768px) {
  .p-surroundings-interview__figure {
    max-width: 320px;
  }
}

.p-surroundings-interview__no {
  position: absolute;
  left: 0;
  top: -57px;
  margin: 0;
  z-index: 2;
  font-family: "Outfit", var(--font-title);
  font-weight: var(--bold);
  font-size: 88px;
  line-height: 1.3;
  letter-spacing: 0.22px;
  color: var(--color-accent-orange);
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-interview__no {
    top: -37px;
    font-size: 56px;
    letter-spacing: 0.14px;
  }
}

.p-surroundings-interview__photo {
  width: 100%;
  height: 100%;
  max-width: 100%;
  border-radius: 16px;
  overflow: hidden;
  background-color: var(--text-color-secondary);
  position: relative;
}
.p-surroundings-interview__photo::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.06), rgba(0, 0, 0, 0) 45%);
}
.p-surroundings-interview__photo img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
@media print, screen and (min-width: 1021px) {
  .p-surroundings-interview__photo {
    width: 455px;
    height: 585px;
  }
}

.p-surroundings-interview__body {
  margin-top: 24px;
  padding-top: 0;
}
@media print, screen and (min-width: 1021px) {
  .p-surroundings-interview__body {
    margin-top: 0;
    padding-top: 14px;
  }
}

.p-surroundings-interview__item--02 .p-surroundings-interview__body {
  padding-top: 0;
}
@media print, screen and (min-width: 1021px) {
  .p-surroundings-interview__item--02 .p-surroundings-interview__body {
    padding-top: 75px;
  }
}

.p-surroundings-interview__catch {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-start;
}

.p-surroundings-interview__catchLine {
  margin: 0;
  padding: 0 8px;
  width: fit-content;
  max-width: 100%;
  font-family: "851MkPOP", "Zen Kurenaido", "Zen Kaku Gothic New", "Yu Gothic UI", var(--font-title);
  font-weight: var(--reg);
  font-size: 52px;
  line-height: 1.3;
  letter-spacing: 2.6px;
  color: var(--main-color);
  background-image: linear-gradient(to top, #f7d398 0%, #f7d398 35%, rgba(247, 211, 152, 0) 35%, rgba(247, 211, 152, 0) 100%);
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-interview__catchLine {
    font-size: clamp(18px, 8vw, 32px);
    line-height: 1.5;
    letter-spacing: 1.6px;
  }
}

.p-surroundings-interview__text {
  margin: 28px 0 0;
  font-family: var(--font-sans-serif);
  font-weight: var(--reg);
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 1.44px;
  color: var(--black);
}
.p-surroundings-interview__text p {
  margin: 0;
}
.p-surroundings-interview__text p + p {
  margin-top: 1.8em;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-interview__text {
    margin-top: 24px;
    font-size: 15px;
    letter-spacing: 1.2px;
  }
}

.p-surroundings-interview__text--single p + p {
  margin-top: 0;
}

.p-surroundings-interview__meta {
  margin: 24px 0 0;
  font-family: "Zen Kaku Gothic New", var(--font-sans-serif);
  font-weight: var(--med);
  font-size: 24px;
  line-height: 1.8;
  letter-spacing: 1.92px;
  color: var(--text-color-secondary);
  text-align: right;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-interview__meta {
    margin-top: 20px;
    font-size: 18px;
    letter-spacing: 1.44px;
  }
}

/* 専門性を発揮するリソースナース
-----------------------------------------------------------------------------*/
.p-surroundings-resource-nurse {
  position: relative;
  padding: 120px 0;
  z-index: 0;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-resource-nurse {
    padding: 80px 0;
  }
}
.p-surroundings-resource-nurse {
  --resource-nurse-inner-max: calc(var(--main-width) + 40px);
}
@media print, screen and (min-width: 1241px) {
  .p-surroundings-resource-nurse .cmn-inner {
    padding-inline: clamp(20px, 2.5vw, 40px);
  }
}
.p-surroundings-resource-nurse::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  width: min(1840px, 100vw - 80px);
  height: 100%;
  border-radius: 40px;
  background-color: var(--white);
  z-index: -1;
}
@media print, screen and (max-width: 1400px) and (min-width: 769px) {
  .p-surroundings-resource-nurse::before {
    width: 100%;
    border-radius: 0;
  }
}
@media print, screen and (min-width: 1401px) {
  .p-surroundings-resource-nurse::before {
    width: min(1840px, max(100vw - 80px, var(--resource-nurse-inner-max)));
    border-radius: 40px;
  }
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-resource-nurse::before {
    width: 100%;
    border-radius: 0;
  }
}

.p-surroundings-resource-nurse__layout {
  margin-top: 24px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
  justify-items: stretch;
}
@media print, screen and (min-width: 1021px) {
  .p-surroundings-resource-nurse__layout {
    margin-top: 56px;
    grid-template-columns: 440px 1fr;
    column-gap: 69px;
    align-items: start;
  }
}

.p-surroundings-resource-nurse__figure {
  margin: 0;
}

.p-surroundings-resource-nurse__photo {
  width: 271px;
  height: 271px;
  margin: 0 auto;
  position: relative;
  overflow: visible;
}
.p-surroundings-resource-nurse__photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 50% 40%, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0));
  pointer-events: none;
  z-index: 1;
}
@media print, screen and (min-width: 1021px) {
  .p-surroundings-resource-nurse__photo {
    width: 440px;
    height: 440px;
    margin: 0;
  }
}

.p-surroundings-resource-nurse__photo-main {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  overflow: hidden;
  background-color: var(--border-light);
  position: relative;
  z-index: 1;
}
.p-surroundings-resource-nurse__photo-main img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.p-surroundings-resource-nurse__content {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
}
@media print, screen and (min-width: 1021px) {
  .p-surroundings-resource-nurse__content {
    width: auto;
  }
}

.p-surroundings-resource-nurse__illust {
  display: flex;
  justify-content: flex-end;
  margin-top: clamp(8px, 1vw, 16px);
}

.p-surroundings-resource-nurse__illust-img {
  display: block;
  width: min(150px, 40vw);
  max-width: 100%;
  height: auto;
  flex-shrink: 0;
  margin-right: 0;
}
@media print, screen and (min-width: 1021px) {
  .p-surroundings-resource-nurse__illust-img {
    width: min(150px, 55vw);
  }
}

.p-surroundings-resource-nurse__text {
  margin: 0;
  font-family: var(--font-sans-serif);
  font-weight: var(--reg);
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 1.44px;
  color: var(--black);
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-resource-nurse__text {
    width: 100%;
    text-align: left;
    font-size: 15px;
    letter-spacing: 1.2px;
  }
}

/* 病棟紹介
-----------------------------------------------------------------------------*/
.p-surroundings-ward {
  padding: 120px 0 100px;
  overflow: hidden;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-ward {
    padding: 0 0 80px;
  }
}
.p-surroundings-ward .c-section-heroTitle {
  --heroTitle-bg: url("../../img/surroundings/ward-mv-img.jpg");
  --heroTitle-label-bg: var(--color-bg01);
  max-width: 1196px;
  margin: 0 auto;
}

.p-surroundings-ward__head {
  padding-top: 24px;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-ward__head {
    padding-top: 0;
  }
}

.p-surroundings-ward__list {
  margin-top: 104px;
  display: grid;
  gap: 40px;
  position: relative;
  z-index: 0;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-ward__list {
    margin-top: 48px;
    gap: 48px;
  }
}

.p-surroundings-ward__item {
  position: relative;
  z-index: 0;
  display: flex;
  flex-direction: column;
  gap: 17px;
}
.p-surroundings-ward__item::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -45%);
  background: url("../../img/surroundings/environment-bk-sp.png") no-repeat center/contain;
  left: 50%;
  top: 65%;
  pointer-events: none;
  z-index: -1;
}
@media print, screen and (min-width: 1201px) {
  .p-surroundings-ward__item {
    display: grid;
    grid-template-columns: 620px 520px;
    grid-template-areas: "body figure";
    column-gap: 60px;
    align-items: center;
  }
  .p-surroundings-ward__item::before {
    left: 40%;
    top: 80%;
    width: 480px;
    height: 440px;
    transform: translate(-50%, -50%);
    background: url("../../img/surroundings/environment-bk-r.png") no-repeat center/contain;
  }
}

@media print, screen and (min-width: 1201px) {
  .p-surroundings-ward__item--reverse::before {
    background: url("../../img/surroundings/environment-bk-l.png") no-repeat center/contain;
    left: 53%;
  }
}
@media print, screen and (min-width: 1201px) {
  .p-surroundings-ward__item--reverse {
    grid-template-columns: 520px 620px;
    grid-template-areas: "figure body";
  }
}

.p-surroundings-ward__figure {
  margin: 0;
  width: 100%;
  max-width: 520px;
  height: auto;
  aspect-ratio: 335/212;
  border-radius: 16px;
  overflow: hidden;
  background-color: var(--text-color-secondary);
  position: relative;
}
.p-surroundings-ward__figure img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
@media print, screen and (min-width: 1201px) {
  .p-surroundings-ward__figure {
    grid-area: figure;
    height: 328px;
    aspect-ratio: auto;
  }
}

.p-surroundings-ward__body {
  width: 100%;
  min-width: 0;
}
@media print, screen and (min-width: 1201px) {
  .p-surroundings-ward__body {
    grid-area: body;
    max-width: 620px;
    max-width: 100%;
  }
}

.p-surroundings-ward__place {
  margin: 0;
  font-family: "Zen Kaku Gothic New", var(--font-sans-serif);
  font-weight: var(--med);
  font-size: 20px;
  line-height: 1.8;
  letter-spacing: 1.6px;
  color: var(--text-color-secondary);
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-ward__place {
    font-size: 14px;
    letter-spacing: 1.12px;
  }
}

.p-surroundings-ward__title {
  margin: 8px 0 0;
  font-family: "851MkPOP", "Zen Kurenaido", "Zen Kaku Gothic New", "Yu Gothic UI", var(--font-title);
  font-weight: var(--reg);
  font-size: 38px;
  line-height: 1.5;
  letter-spacing: 1.9px;
  color: var(--text-color);
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-ward__title {
    font-size: 24px;
    letter-spacing: 1.2px;
  }
}

@media print, screen and (max-width: 1200px) and (min-width: 768px) {
  .p-surroundings-ward__figure {
    margin-left: auto;
    margin-right: auto;
  }
  .p-surroundings-ward__place,
  .p-surroundings-ward__title {
    text-align: center;
  }
}
.p-surroundings-ward__text {
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px dashed var(--color-accent-orange);
  font-family: var(--font-sans-serif);
  font-weight: var(--reg);
  font-size: 16px;
  line-height: 1.8;
  letter-spacing: 0.8px;
  color: var(--text-color);
}
.p-surroundings-ward__text p {
  margin: 0;
}
.p-surroundings-ward__text p + p {
  margin-top: 0;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-ward__text {
    margin-top: 16px;
    padding-top: 16px;
    border-top-width: 2px;
    font-size: 13px;
    letter-spacing: 1.04px;
  }
}

/* 職場環境
-----------------------------------------------------------------------------*/
.p-surroundings-workplace {
  padding: 120px 0 140px;
}
@media screen and (max-width: 1200px) {
  .p-surroundings-workplace {
    margin-bottom: 80px;
  }
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-workplace {
    padding: 80px 0;
    margin-bottom: 40px;
  }
}

.p-surroundings-workplace__lead {
  margin-top: 28px;
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 1.44px;
}
.p-surroundings-workplace__lead p {
  margin: 0;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-workplace__lead {
    margin-top: 24px;
    font-size: 13px;
    letter-spacing: 1.04px;
  }
}

.p-surroundings-workplace__cards {
  margin-top: 40px;
  display: grid;
  gap: 40px;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-workplace__cards {
    margin-top: 24px;
    gap: 24px;
  }
}

.p-surroundings-workplace__card {
  background-color: var(--white);
  border-radius: 16px;
  padding: 40px 50px;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-workplace__card {
    padding: 32px 24px;
  }
}

.p-surroundings-workplace__head {
  display: flex;
  align-items: center;
  gap: 8px;
}

.p-surroundings-workplace__icon {
  width: 38px;
  height: 38px;
  display: block;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-workplace__icon {
    width: 24px;
    height: 24px;
  }
}

.p-surroundings-workplace__title {
  margin: 0;
  font-family: var(--font-title);
  font-weight: var(--bold);
  font-size: 32px;
  line-height: 1.8;
  letter-spacing: 2.56px;
  color: var(--color-accent-orange);
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-workplace__title {
    font-size: 24px;
    letter-spacing: 1.92px;
  }
}

.p-surroundings-workplace__sub {
  margin: 16px 0 0;
  font-weight: var(--med);
  font-size: 20px;
  line-height: 1.8;
  letter-spacing: 1px;
  color: var(--text-color-secondary);
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-workplace__sub {
    font-size: 16px;
    letter-spacing: 0.8px;
  }
}

.p-surroundings-workplace__text {
  margin-top: 16px;
  font-size: 16px;
  line-height: 1.8;
  letter-spacing: 0.8px;
}
.p-surroundings-workplace__text p {
  margin: 0;
}
.p-surroundings-workplace__text p + p {
  margin-top: 0;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-workplace__text {
    font-size: 13px;
    letter-spacing: 0.65px;
  }
}

.p-surroundings-workplace__photos {
  margin-top: 20px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-workplace__photos {
    grid-template-columns: 1fr;
    gap: 8px;
    margin-top: 16px;
  }
}

.p-surroundings-workplace__photo {
  margin: 0;
  border-radius: 8px;
  overflow: hidden;
  background-color: var(--text-color-secondary);
}
.p-surroundings-workplace__photo img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 340/214;
  object-fit: cover;
}

.p-surroundings-workplace__note {
  margin: 16px 0 0;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.8px;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-workplace__note {
    font-size: 13px;
    letter-spacing: 0.65px;
  }
}

.p-surroundings-workplace__benefits {
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 16px;
}
.p-surroundings-workplace__benefits li {
  position: relative;
  padding-left: 16px;
  display: grid;
  gap: 8px;
}
.p-surroundings-workplace__benefits li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 12px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--color-accent-orange);
}
.p-surroundings-workplace__benefits strong {
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 1.44px;
  font-weight: var(--med);
  color: var(--text-color);
}
.p-surroundings-workplace__benefits span {
  font-size: 16px;
  line-height: 1.8;
  letter-spacing: 0.8px;
  color: var(--text-color);
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-workplace__benefits {
    gap: 12px;
  }
  .p-surroundings-workplace__benefits strong {
    font-size: 15px;
    letter-spacing: 1.2px;
  }
  .p-surroundings-workplace__benefits span {
    font-size: 13px;
    letter-spacing: 0.65px;
  }
}

.p-surroundings-workplace__logos {
  margin-top: 24px;
  display: flex;
  align-items: flex-end;
  gap: 20px;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-workplace__logos {
    margin-top: 16px;
    width: 287px;
    max-width: 100%;
    height: 176px;
    align-items: center;
    gap: 8px;
  }
}

.p-surroundings-workplace__logo {
  margin: 0;
  line-height: 0;
}
.p-surroundings-workplace__logo img {
  display: block;
  width: 100%;
  height: auto;
}

.p-surroundings-workplace__logo--kurumin {
  width: 206px;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-workplace__logo--kurumin {
    width: auto;
    flex: 1 1 0;
    aspect-ratio: 278/300;
  }
}

.p-surroundings-workplace__logo--okayama {
  width: 176px;
}
@media print, screen and (max-width: 768px) {
  .p-surroundings-workplace__logo--okayama {
    width: auto;
    flex: 1 1 0;
    aspect-ratio: 236/300;
  }
}

/* guideline
-----------------------------------------------------------------------------*/
.p-guideline .p-page-head {
  --page-head-illust: url("../../img/common/guideline-mv-illust.png");
}

.p-guideline-section {
  padding: 80px 0 100px;
}
@media print, screen and (max-width: 768px) {
  .p-guideline-section {
    padding: 80px 0;
  }
}

.p-guideline-section__lead {
  margin: 28px 0 0;
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 1.44px;
}
@media print, screen and (max-width: 768px) {
  .p-guideline-section__lead {
    margin-top: 20px;
    font-size: 16px;
    letter-spacing: 1.28px;
  }
}

.p-guideline-block {
  margin-top: 42px;
}
@media print, screen and (max-width: 768px) {
  .p-guideline-block {
    margin-top: 28px;
  }
}

.p-guideline-subttl {
  margin: 0;
  padding-bottom: 16px;
  color: var(--text-color-secondary);
  font-size: 32px;
  line-height: 1.5;
  letter-spacing: 1.6px;
}
@media print, screen and (max-width: 768px) {
  .p-guideline-subttl {
    padding-bottom: 12px;
    font-size: 20px;
    letter-spacing: 1px;
  }
}

.p-guideline-text {
  margin: 18px 0 0;
  color: var(--text-color);
  font-size: 16px;
  line-height: 1.8;
  letter-spacing: 1.28px;
}
@media print, screen and (max-width: 768px) {
  .p-guideline-text {
    font-size: 14px;
    letter-spacing: 1.12px;
  }
}
.p-guideline-text a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.p-guideline-text strong {
  font-weight: var(--bold);
}

.p-guideline-list {
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 8px;
}
.p-guideline-list li {
  position: relative;
  padding-left: 16px;
  font-size: 16px;
  line-height: 1.8;
  letter-spacing: 1.28px;
}
.p-guideline-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.8em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--color-accent-orange);
  transform: translateY(-50%);
}
.p-guideline-list small {
  display: block;
  margin-top: 2px;
  font-size: 12px;
  letter-spacing: 0.96px;
}
.p-guideline-list a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}
@media print, screen and (max-width: 768px) {
  .p-guideline-list li {
    font-size: 14px;
    letter-spacing: 1.12px;
  }
}

.p-guideline-timeline {
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 16px;
}
.p-guideline-timeline li {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 1.44px;
}
@media print, screen and (max-width: 768px) {
  .p-guideline-timeline li {
    font-size: 15px;
    letter-spacing: 1.2px;
  }
}

.p-guideline-timeline__num {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background-color: var(--color-accent-orange);
  color: var(--white);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: "Outfit", var(--font-title);
  font-weight: var(--med);
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.8px;
}
@media print, screen and (max-width: 768px) {
  .p-guideline-timeline__num {
    width: 24px;
    height: 24px;
    font-size: 14px;
    letter-spacing: 0.7px;
  }
}

.p-guideline-link {
  margin-top: 24px;
}
.p-guideline-link .c-btn__icon {
  width: 24px;
  height: 24px;
}
.p-guideline-link.c-btn--primary .c-btn__icon::after {
  background-image: url("../../img/common/arrow-right-solid-full%202.svg");
}

@media print, screen and (max-width: 768px) {
  #parttime.p-guideline-section {
    margin-bottom: 40px;
  }
}

/* news
-----------------------------------------------------------------------------*/
.p-news .p-page-head-simple::after {
  background-image: url("../../img/news/news-pagetittle-bk.png");
}

.p-news-template {
  padding: 80px 0 96px;
}
@media print, screen and (max-width: 768px) {
  .p-news-template {
    padding: 56px 0 64px;
  }
}

.p-news-template__titleMid {
  margin: 40px 0 0;
}
@media print, screen and (max-width: 768px) {
  .p-news-template__titleMid {
    margin-top: 24px;
  }
}

.p-news-template__titleSmall {
  margin: 20px 0 0;
}
@media print, screen and (max-width: 768px) {
  .p-news-template__titleSmall {
    margin-top: 14px;
  }
}

.p-news-template__lead {
  margin: 28px 0 0;
  color: var(--black);
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 1.44px;
}
@media print, screen and (max-width: 768px) {
  .p-news-template__lead {
    margin-top: 24px;
    font-size: 14px;
    letter-spacing: 1.12px;
  }
}

.p-news-template__body {
  margin: 14px 0 0;
  color: var(--black);
  font-size: 16px;
  line-height: 1.8;
  letter-spacing: 1.28px;
}
@media print, screen and (max-width: 768px) {
  .p-news-template__body {
    margin-top: 12px;
    font-size: 13px;
    letter-spacing: 1.04px;
  }
}
.p-news-template__body strong {
  font-weight: var(--bold);
}
.p-news-template__body a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.p-news-template__textAlert {
  color: #c00003;
}

.p-news-detail {
  padding: 120px 0 140px;
}
@media print, screen and (max-width: 768px) {
  .p-news-detail {
    padding: 80px 0;
    margin-bottom: 40px;
  }
}

.p-news-detail__lead {
  margin: 28px 0 0;
  color: var(--black);
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 1.44px;
}
@media print, screen and (max-width: 768px) {
  .p-news-detail__lead {
    margin-top: 24px;
    font-size: 14px;
    letter-spacing: 1.12px;
  }
}
.p-news-detail__lead a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.p-news-detail__title {
  margin: 42px 0 0;
}
@media print, screen and (max-width: 768px) {
  .p-news-detail__title {
    margin-top: 34px;
  }
}

.p-news-detail__title--schedule {
  margin-top: 40px;
}
@media print, screen and (max-width: 768px) {
  .p-news-detail__title--schedule {
    margin-top: 28px;
  }
}

.p-news-detail__note {
  color: var(--black);
  font-size: 16px;
  line-height: 1.8;
  letter-spacing: 1.28px;
}
@media print, screen and (max-width: 768px) {
  .p-news-detail__note {
    margin-top: 10px;
    font-size: 14px;
    letter-spacing: 1.12px;
  }
}

.p-news-program {
  border: 1px solid var(--border-light);
}

.p-news-program__row {
  display: grid;
  grid-template-columns: 240px 1fr;
}
@media print, screen and (max-width: 768px) {
  .p-news-program__row {
    grid-template-columns: 1fr;
  }
}
.p-news-program__row:not(:last-child) {
  border-bottom: 1px solid var(--border-light);
}

.p-news-program__time {
  margin: 0;
  padding: 24px 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-accent-orange);
  color: var(--white);
  text-align: center;
  font-weight: var(--bold);
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: 1.44px;
}
@media print, screen and (max-width: 768px) {
  .p-news-program__time {
    padding: 16px;
    font-size: 18px;
    letter-spacing: 1.44px;
  }
}

.p-news-program__text {
  margin: 0;
  padding: 16px 32px;
  display: flex;
  align-items: center;
  background-color: var(--white);
  color: var(--text-color);
  font-size: 16px;
  line-height: 1.8;
  letter-spacing: 1.28px;
}
@media print, screen and (max-width: 768px) {
  .p-news-program__text {
    padding: 16px;
    justify-content: center;
    text-align: center;
    font-size: 13px;
    letter-spacing: 1.04px;
  }
}

.p-news-schedule {
  margin-top: 16px;
}

.p-news-schedule__row {
  display: grid;
  grid-template-columns: 160px 240px 240px 1fr;
}
@media print, screen and (max-width: 768px) {
  .p-news-schedule__row {
    display: block;
    border-top: 8px solid #f2dbc0;
  }
  .p-news-schedule__row:first-child {
    border-top: 0;
  }
}

.p-news-schedule__row--head .p-news-schedule__cell {
  background-color: var(--color-accent-orange);
  color: var(--white);
  font-weight: var(--bold);
  justify-content: center;
  text-align: center;
  border-right-color: var(--white);
}
.p-news-schedule__row--head .p-news-schedule__cell:last-child {
  border-right-color: var(--color-accent-orange);
}
@media print, screen and (max-width: 768px) {
  .p-news-schedule__row--head {
    display: none;
  }
}

.p-news-schedule__cell {
  margin: 0;
  min-height: 75px;
  padding: 16px 16px;
  display: flex;
  align-items: center;
  border-right: 1px solid var(--border-light);
  border-bottom: 1px solid var(--border-light);
  background-color: var(--white);
  color: var(--text-color);
  font-size: 16px;
  line-height: 1.8;
  letter-spacing: 1.28px;
  justify-content: center;
  text-align: center;
}
@media print, screen and (max-width: 768px) {
  .p-news-schedule__cell {
    min-height: 0;
    padding: 0;
    border-right: 0;
    border-bottom: 0;
    font-size: 13px;
    letter-spacing: 1.04px;
  }
}

.p-news-schedule__label {
  display: none;
}
@media print, screen and (max-width: 768px) {
  .p-news-schedule__label {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 59px;
    padding: 16px;
    box-sizing: border-box;
    background-color: var(--color-accent-orange);
    color: var(--white);
    font-weight: var(--bold);
    font-size: 18px;
    line-height: 1.5;
    letter-spacing: 1.44px;
  }
}

@media print, screen and (max-width: 768px) {
  .p-news-schedule__value {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 55px;
    padding: 16px;
    box-sizing: border-box;
    font-size: 13px;
    line-height: 1.8;
    letter-spacing: 1.04px;
    text-align: center;
  }
}

.p-news-schedule__row:not(.p-news-schedule__row--head) .p-news-schedule__cell--date {
  font-weight: var(--bold);
}
@media print, screen and (max-width: 768px) {
  .p-news-schedule__row:not(.p-news-schedule__row--head):not(:first-of-type) {
    margin-top: 32px;
  }
  .p-news-schedule__row:not(.p-news-schedule__row--head) .p-news-schedule__cell--date,
  .p-news-schedule__row:not(.p-news-schedule__row--head) .p-news-schedule__cell--deadline,
  .p-news-schedule__row:not(.p-news-schedule__row--head) .p-news-schedule__cell--time,
  .p-news-schedule__row:not(.p-news-schedule__row--head) .p-news-schedule__cell--place {
    display: block;
  }
}/*# sourceMappingURL=style.css.map */