@charset "UTF-8";

/* 以下の箇所、要確認 */
/* ダミー画像（要差し替え） */
/* /images/dmy/ */

/* ■書体等 */
/*
.noto-sans-jp-regular {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}
.noto-sans-jp-medium {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}
.noto-sans-jp-bold {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.zen-maru-gothic-regular {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.zen-maru-gothic-medium {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
}
.zen-maru-gothic-bold {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.josefin-sans-regular {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

.barlow-regular {
  font-family: "Barlow", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.barlow-medium {
  font-family: "Barlow", sans-serif;
  font-weight: 500;
  font-style: normal;
}
*/

/*
fontawesome-free-6.6.0-web
  font-family: 'Font Awesome 6 Free', Font Awesome;
  font-weight: 900;
  content: '\XXXX';
*/


/* ■色名等（#16進数カラーコード） */
/* 例：var(--color-univ-blue) */
:root {
  /* 共通 */
  --color-univ-blue: #30386C;
  --color-univ-yellow: #F2C95A;
  --color-univ-bg-beige: #F7F4E9;
  --color-univ-brown: #3C3113;
  --color-univ-olivegray: #98917F;
  --color-univ-bg-lightgray: #F7F7F7;
  --color-univ-gray: #CCCCCC;
  --color-univ-ico-gray: #EBEBEB;
  --color-univ-ico-beige: #E0DBCD;
  --color-univ-black: #000000;
  --color-univ-white: #FFFFFF;
  --color-univ-lightolive: #C6C0B0;

  --color-univ-blue_dulltone: #7980BA;
  --color-univ-blue_paletone: #A2A7CB;
  --color-univ-blue_lighttone: #F0F2F8;
  
  --color-univ-ico-beige_tp-99: #E0DBCD99;

  --color-univ-white_tp-00: #FFFFFF00;
  --color-univ-white_tp-7f: #FFFFFF7f;

  --color-univ-black_tp-00: #00000000;
  --color-univ-black_tp-7f: #0000007f;
  --color-univ-black_tp-44: #00000044;

  /* 採用 */
  --color-rec-main: #77C9B6;
  --color-rec-bg1: #BFE5D9;
  --color-rec-text: #9DC7BA;
  --color-rec-bg2: #E7F7F2;
  --color-rec-btn-text: #70B29D;
  --color-rec-btn-bg: #E7FAF4;
  --color-rec-spot: #3EB499;

  /* 施設・事業別 イメージカラー */
  --color-biz-yofuen: #30386C;
  --color-biz-koyoen: #A51D3C;
  --color-biz-manyoen-conv: #FF6733;
  --color-biz-manyoen-unit: #F7DB49;
  --color-biz-manyoen-2: #FF9D19;
  --color-biz-manyoen-3: #FDC900;
  --color-biz-sanyo: #A20061;
  --color-biz-habili: #71A330;
  --color-biz-akebono: #00956E;
  --color-biz-zaitaku: #0072BA;
  --color-biz-kodomoen: #E95BAB;
  --color-biz-shinryo: #00C1CD;
  /* 施設・事業別 イメージカラー（背景用：10%） */
  --color-biz-yofuen-bg: #EAEBF0;
  --color-biz-koyoen-bg: #F6E8EB;
  --color-biz-manyoen-conv-bg: #FFEFEA;
  --color-biz-manyoen-unit-bg: #FEFBEC;
  --color-biz-manyoen-2-bg: #FFF5E8;
  --color-biz-manyoen-3-bg: #FFF9E5;
  --color-biz-sanyo-bg: #F6E5EF;
  --color-biz-habili-bg: #F1F6EA;
  --color-biz-akebono-bg: #E5F4F0;
  --color-biz-zaitaku-bg: #E5F1F8;
  --color-biz-kodomoen-bg: #FDEEF6;
  --color-biz-shinryo-bg: #E5F9FA;

  /*
  --color-biz-manyoen2: #FF9D19;
  --color-biz-manyoen3: #FDC900;
  */
  /*
  --color-red: #F44E05;
  --color-marker: #CBE090;
  */
}


/* functions.php（admin.php）｜ブロックエディタのカラーパレット（ハイライト） */
/* ※WPの仕様により、slug が自動変換されるため注意（英字と連続する数字の前に '-' が追加される）*/
/*（'biz-manyoen2'→'biz-manyoen-2'、'biz-manyoen3'→'biz-manyoen-3'） */
.has-biz-yofuen-background-color {
  background-color: var(--color-biz-yofuen);
}
.has-biz-yofuen-color {
  color: var(--color-biz-yofuen);
}

.has-biz-koyoen-background-color {
  background-color: var(--color-biz-koyoen);
}
.has-biz-koyoen-color {
  color: var(--color-biz-koyoen);
}

.has-biz-manyoen-conv-background-color {
  background-color: var(--color-biz-manyoen-conv);
}
.has-biz-manyoen-conv-color {
  color: var(--color-biz-manyoen-conv);
}

.has-biz-manyoen-unit-background-color {
  background-color: var(--color-biz-manyoen-unit);
}
.has-biz-manyoen-unit-color {
  color: var(--color-biz-manyoen-unit);
}

.has-biz-manyoen-2-background-color {
  background-color: var(--color-biz-manyoen-2);
}
.has-biz-manyoen-2-color {
  color: var(--color-biz-manyoen-2);
}

.has-biz-manyoen-3-background-color {
  background-color: var(--color-biz-manyoen-3);
}
.has-biz-manyoen-3-color {
  color: var(--color-biz-manyoen-3);
}

.has-biz-sanyo-background-color {
  background-color: var(--color-biz-sanyo);
}
.has-biz-sanyo-color {
  color: var(--color-biz-sanyo);
}

.has-biz-habili-background-color {
  background-color: var(--color-biz-habili);
}
.has-biz-habili-color {
  color: var(--color-biz-habili);
}

.has-biz-akebono-background-color {
  background-color: var(--color-biz-akebono);
}
.has-biz-akebono-color {
  color: var(--color-biz-akebono);
}

.has-biz-zaitaku-background-color {
  background-color: var(--color-biz-zaitaku);
}
.has-biz-zaitaku-color {
  color: var(--color-biz-zaitaku);
}

.has-biz-kodomoen-background-color {
  background-color: var(--color-biz-kodomoen);
}
.has-biz-kodomoen-color {
  color: var(--color-biz-kodomoen);
}

.has-biz-shinryo-background-color {
  background-color: var(--color-biz-shinryo);
}
.has-biz-shinryo-color {
  color: var(--color-biz-shinryo);
}


* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  font-size: 62.5%;
}

html {
  scrollbar-gutter: stable;
}

body {
  /*font-family: "Noto Sans JP", sans-serif;*/
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
  /*font-size: 1.6rem;*/
  font-size: 1.8rem;
  line-height: 1.8;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  body {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 567px) {}

body * {
  word-wrap: break-word;
  overflow-wrap: break-word;
}


section {}
article {}


/* ブラウザごとに読み込むCSSを変更 */
/* Chrome */
@media screen and (-webkit-min-device-pixel-ratio:0) {}
/* FireFox */
@-moz-document url-prefix() {}
/* Safari */
@media screen and (-webkit-min-device-pixel-ratio: 0) {}
/* EdgeHTML */
@supports (-ms-ime-align: auto) {}
/* EdgeChromium */ /* ※「body」の部分は各セレクタ名 */
_:lang(x)::-ms-, body {} 


h1, h2, h3, h4, h5, h6 {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
}


/* 本文 */
p {
  margin: 1.5em 0;
  text-align: justify;
}

a {
  text-decoration: underline 1px solid;
  text-decoration-thickness: 1px;
}
a:hover {
  text-decoration: none;
}
a, a * {
  cursor: pointer;
}
a.no-event, a.no-event * {
  cursor: default;
}

/* タッチスクリーン（タブレット・スマートフォン）でリンクタップ時の反転を軽減 */
@media screen and (max-width: 767px) {
  /* タップハイライトを消す（Android Chrome / iOS 等） */
  /* -webkit-tap-highlight-color: Chrome / Android / iOS */
  /* tap-highlight-color: 仕様に合わせて念のため */
  a, a img {
    -webkit-tap-highlight-color: transparent;
    tap-highlight-color: transparent;
  }
  /* 選択や長押しでのメニュー表示を抑止 */
  /* -webkit-user-select: テキスト選択を無効化 */
  /* -webkit-touch-callout: iOSでの長押しメニューを抑止 */
  a, a img {
    -webkit-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
  }
  /* 元の画像が一瞬リフレッシュされるようなちらつきを抑える（レンダリング改善） */
  /* -webkit-transform: レイヤー分離してちらつきを軽減 */
  /* -webkit-user-drag: 画像のドラッグを防止（必要に応じて） */
  a img {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-user-drag: none;
    user-drag: none;
  }
  /* クリック感の改善 */
  /* ブラウザの二重タップ拡大などを抑制 */
  a {
    touch-action: manipulation;
  } 
}


/* PCでの tel: 無効 */
@media screen and (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
a > .notlink,
.notlink > a {
  text-decoration: none;
  pointer-events: none;
}

img {
  width: 100%;
}

.pure-g,
.pure-g > div {
  font-family: inherit!important;
  font-weight: inherit!important;
  font-style: inherit!important;
}


/* テキスト選択時のテキスト色・背景色 */
/* Firefox以外 */
::selection {
  color: var(--color-univ-white);
  background-color: var(--color-univ-olivegray);
}
/* Firefox */
::-moz-selection {
  color: var(--color-univ-white);
  background-color: var(--color-univ-olivegray);
}


/* ログイン時の［編集］ボタン */
.edit {
  flex-grow: 0;
  display: inline-block;
  width: 100%;
  text-align: right;
  font-size: 0.9em!important;
  line-height: 1.5;
}
.edit * {
  display: inline-block!important;
  width: fit-content!important;
  background: none!important;
  padding: 0 0 1.0em!important;
  margin: 0!important;
}
.edit a::after {
  display: none!important;
}
*:has(+ .edit) {
  margin-bottom: 1.5rem!important;
}
.edit + * {
  margin-top: 1.5rem!important;
}


/* margin調整：最初と最後の要素のmarginを0（.snow-monkey-form の下層は体裁崩れ防止のため除外） */
* > *:not(:is(.snow-monkey-form *)):first-child {
  margin-top: 0!important;
}
* > *:not(:is(.snow-monkey-form *)):last-child {
  margin-bottom: 0!important;
}




/* ##############################################
##
##  メインコンテンツ（content.php｜the_content）
##
############################################## */
/* 見出し・本文・リンク（#main_content_body） */
#main_content_body {
  color: var(--color-univ-black);
}
#main_content_body :is(h2, h3, h4, h5, h6) {
  display: block;
  position: relative;
  text-align: left;
  width: 100%;
  padding: 0;
}
#main_content_body h2 {
  margin: 0;
  margin-top: 3.5em;
  margin-bottom: 1.0em;
}
#main_content_body :is(h3, h4) {
  margin: 0;
  margin-top: 2.5em;
  margin-bottom: 1.0em;
}
#main_content_body :is(h5, h6) {
  margin: 0;
  margin-top: 2.0em;
  margin-bottom: 1.0em;
}
#main_content_body :is(h2, h3, h4, h5, h6) + :is(h2, h3, h4, h5, h6) {
  margin: 0;
  margin-top: 1.5em;
  margin-bottom: 1.0em;
}

#main_content_body h2 {
  font-size: 2.4em;
  line-height: 1.5;
  letter-spacing: 0.05em;
  padding: 24px 0 0;
  color: var(--color-univ-brown);
}
#main_content_body h2::before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 72px;
  height: 16px;
  content: '';
  /* 施設紹介の事業ごとの色変更については、header.php 内で制御 */
  background:
    radial-gradient(circle at 10px 8px, var(--color-univ-blue) 0 4px, transparent 5px),
    radial-gradient(circle at 32px 8px, var(--color-univ-yellow) 0 4px, transparent 5px),
    radial-gradient(circle at 54px 8px, var(--color-univ-olivegray) 0 4px, transparent 5px);
}
#main_content_body h3 {
  font-size: 1.9em;
  line-height: 1.6;
  letter-spacing: 0.05em;
  padding: 0 0 10px;
  color: var(--color-univ-brown);
}
#main_content_body h3::before {
  display: block;
  position: absolute;
  top: 100%;
  left: 0;
  transform: translate(0, -100%);
  width: 100%;
  height: 1.5px;
  content: '';
  /* 施設紹介の事業ごとの色変更については、header.php 内で制御 */
  background: linear-gradient(to right, var(--color-univ-blue), var(--color-univ-blue) 0.75em, transparent 0.75em, transparent 1.0em, var(--color-univ-olivegray) 1.0em);
}
#main_content_body h4 {
  font-size: 1.7em;
  line-height: 1.6;
  color: var(--color-univ-brown);
}
#main_content_body h5 {
  font-size: 1.4em;
  color: var(--color-univ-brown);
}
#main_content_body h6 {
  font-size: 1.1em;
  color: var(--color-univ-brown);
}

/* 採用情報（.rec-main #main_content_body） */
.rec-main #main_content_body h2::before {
  background:
    radial-gradient(circle at 10px 8px, var(--color-rec-main) 0 4px, transparent 5px),
    radial-gradient(circle at 32px 8px, var(--color-univ-yellow) 0 4px, transparent 5px),
    radial-gradient(circle at 54px 8px, var(--color-univ-olivegray) 0 4px, transparent 5px);
}
.rec-main #main_content_body h3::before {
  background: linear-gradient(to right, var(--color-rec-main), var(--color-rec-main) 0.75em, transparent 0.75em, transparent 1.0em, var(--color-univ-olivegray) 1.0em);
}

/* 施設概要（about）｜バス・車アイコン付加 */
#main_content_body :is(h3.bus, h3.car) {
  padding: 0 0 10px;
  padding-left: 1.75em;
}
#main_content_body h3::after {
  display: none;
}
#main_content_body h3.bus::after,
#main_content_body h3.car::after {
  display: block;
  position: absolute;
  top: 45%;
  left: 0;
  transform: translate(0, -50%);
  width: 1.35em;
  padding-top: 1.35em;
  content: '';
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
#main_content_body h3.bus::after {
  background-image: url('../images/ico_about_bus.svg');
  /*background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_about_bus.svg');*/
}
#main_content_body h3.car::after {
  background-image: url('../images/ico_about_car.svg');
  /*background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_about_car.svg');*/
}

@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #main_content_body h2 {
    font-size: 2.1em;
    letter-spacing: 0.02em;
  }
  #main_content_body h3 {
    font-size: 1.7em;
    letter-spacing: 0.02em;
  }
  #main_content_body h4 {
    font-size: 1.5em;
  }
  #main_content_body h5 {
    font-size: 1.3em;
  }
}
@media screen and (max-width: 567px) {}


/* 段落・リンク・強調（#main_content_body） */
#main_content_body p {
  color: var(--color-univ-black);
}
#main_content_body a {
  color: var(--color-univ-blue);
  transition: all 0.1s;
}
#main_content_body a:hover {
  color: var(--color-univ-yellow);
  transition: all 0.1s;
}

#main_content_body strong {
  font-weight: 500;
  background: linear-gradient(transparent 60%, var(--color-univ-yellow) 60%);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}


/* リード（#main_content_body） */
#main_content_body .lead {
  font-weight: 500;
  /*font-size: 1.05em;*/
  font-size: 1.13em;
  letter-spacing: 0.03em;
  color: var(--color-univ-blue);
  margin: 2.5em 0;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}


/* ブロックカラム（#main_content_body） */
#main_content_body .wp-block-columns {
  margin: 0;
  margin-top: 4.0em;
  margin-bottom: 1.0em;
}
#main_content_body :is(h2, h3, h4, h5, h6) + .wp-block-columns {
  margin: 0;
  margin-top: 1.0em;
  margin-bottom: 1.0em;
}
#main_content_body p + .wp-block-columns {
  margin: 0;
  margin-top: 4.0em;
  margin-bottom: 1.0em;
}
#main_content_body .wp-block-columns + .wp-block-columns {
  margin: 0;
  margin-top: 4.0em;
  margin-bottom: 1.0em;
}
#main_content_body .wp-block-columns + p {
  margin: 0;
  margin-top: 4.0em;
  margin-bottom: 1.0em;
}
#main_content_body .wp-block-columns.reverse {
  flex-direction: row-reverse;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #main_content_body .wp-block-columns.reverse {
    flex-direction: initial;
  }
}
@media screen and (max-width: 567px) {}


/* WP-Block カラム（標準） */
@media screen and (min-width: 1024px) {
  :where(.wp-block-columns.is-layout-flex) {
    gap: 3.0em!important;
  }
  :where(.wp-block-columns) {
    margin-bottom: 3.0em!important;
  }
}
@media screen and (min-width: 768px) {}
@media screen and (min-width: 568px) {}

@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}


/* ブロックカラム｜「モバイルでは縦に並べる」を適用かつ、縦並びのとき空の要素を無効（#main_content_body） */
#main_content_body .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column:not(:has(*)) {}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #main_content_body .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column:not(:has(*)) {
    display: none;
  }
}
@media screen and (max-width: 567px) {}


/* 表組（#main_content_body） */
#main_content_body table {
  width: 100%;
  border-spacing: 0;
  margin: 2.0em 0;
}
#main_content_body table:has(+ figcaption) {
  margin: 2.0em 0 0.5em;
}
#main_content_body table + figcaption {
  font-size: 0.9em;
  margin: 0.5em 0 2.0em;
}
#main_content_body table :is(thead, tbody) :is(th, td) {
  padding: 0.75em 1.0em 0.6em!important;
  min-width: calc(6.0em + 2px);
  border-top: 1px solid var(--color-univ-olivegray)!important;
  border-left: none!important;
  border-bottom: none!important;
}
#main_content_body table :is(thead, tbody) th {
  /*border-right: 1px dashed var(--color-univ-olivegray)!important;*/
  border-right: none!important;
}
#main_content_body table :is(thead, tbody) td {
  /*border-right: 1px solid var(--color-univ-bg-beige)!important;*/
  border-right: none!important;
}
#main_content_body table :is(thead, tbody) tr:first-child :is(th, td) {
  border-top: none!important;
}
#main_content_body table :is(thead, tbody) :is(th, td):last-child {
  border-right: none!important;
}
#main_content_body table thead {
  border-top: 1px solid var(--color-univ-olivegray)!important;
  border-left: none!important;
  border-right: none!important;
  border-bottom: none!important;
}
#main_content_body table tbody {
  border-top: 1px solid var(--color-univ-olivegray)!important;
  border-left: none!important;
  border-right: none!important;
  border-bottom: 1px solid var(--color-univ-olivegray)!important;
}
#main_content_body table thead :is(th, td),
#main_content_body table thead :is(th, td) p {
  text-align: center!important;
  font-weight: 500;
  color: var(--color-univ-brown)!important;
}
#main_content_body table tbody th,
#main_content_body table tbody th p {
  /*font-weight: 400;*/
  color: var(--color-univ-brown)!important;
}
#main_content_body table tbody td,
#main_content_body table tbody td p {}
#main_content_body table thead :is(th, td) {
  background-color: transparent!important;
}
#main_content_body table tbody th {
  background-color: transparent!important;
}
#main_content_body table tbody td {
  background-color: transparent!important;
}
/*
@media screen and (min-width: 1024px) {}
@media screen and (min-width: 768px) {
  #main_content_body table :is(thead, tbody) th {
    border-right: 1px solid var(--color-white)!important;
  }
  #main_content_body table :is(thead, tbody) td {
    border-right: 1px solid var(--color-cream)!important;
  }
  #main_content_body table :is(thead, tbody) tr:first-child :is(th, td) {
    border-top: none!important;
  }
}
@media screen and (min-width: 568px) {}
*/
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #main_content_body table.is-stacked-on-mobile :is(thead, tbody) th {
    border-right: none!important;
  }
  #main_content_body table.is-stacked-on-mobile :is(thead, tbody) td {
    border-right: none!important;
  }
  #main_content_body table.is-stacked-on-mobile :is(thead, tbody) tr:first-child :is(th, td) {
    border-top: 1px solid var(--color-univ-olivegray)!important;
  }
  #main_content_body table.is-stacked-on-mobile :is(thead, tbody) tr:first-child :is(th:first-child, td:first-child) {
    border-top: none!important;
  }
}
@media screen and (max-width: 567px) {
  #main_content_body table :is(thead, tbody) :is(th, td) {
    padding: 0.75em 0.75em 0.6em!important;
  }
}

#main_content_body .wp-block-flexible-table-block-table {
  margin: 2.0em 0;
}


/* ※印（段落）（#main_content_body） */
/* フレキシブル（data-komeflex="▼▼"に記述で内容を可変可能） */
#main_content_body :is(p.kome, p.komeflex) {
  position: relative;
  font-size: 90%;
  padding-left: 1.5em;
  text-indent: -1.5em!important;
  margin-top: 1.0em;
}
#main_content_body p.kome::before,
#main_content_body p.komeflex::before {
  position: relative;
  padding-right: 0.5em;
}
#main_content_body p.kome::before {
  content: '※';
}
#main_content_body p.komeflex::before {
  content: attr(data-komeflex);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #main_content_body :is(p.kome, p.komeflex) {
    font-size: 100%;
  }
}
@media screen and (max-width: 567px) {}
#main_content_body *:has(+ :is(p.kome, p.komeflex)) {
  margin-bottom: 1.0em!important;
}

/* ※印（リスト）（#main_content_body） */
#main_content_body ul.kome {
  position: relative;
  font-size: 90%;
  padding-left: 0!important;
}
#main_content_body ul.kome li {
  padding-left: 1.5em;
  text-indent: 0!important;
}
#main_content_body ul.kome li::before {
  display: inline;
  position: relative;
  top: initial!important;
  left: initial!important;
  transform: translate(-1.5em, 0)!important;
  width: auto!important;
  height: auto!important;
  background-color: transparent!important;
  border: none!important;
  border-radius: 0!important;
  content: '※'!important;
  margin: 0;
  padding: 0;
  padding-right: 0.5em;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #main_content_body ul.kome {
    font-size: 100%;
  }
}
@media screen and (max-width: 567px) {}


/* リスト（#main_content_body） */
/* Snow Monkey Forms を除く｜:not(.smf-progress-tracker) */
#main_content_body :is(ul, ol):not(.smf-progress-tracker) {
  margin: 1.0em 0;
  padding-left: 1.5em;
}
#main_content_body ul:not(.smf-progress-tracker) {
  list-style-type: none;
}
#main_content_body ol:not(.smf-progress-tracker) {
  list-style-type: decimal;
}
#main_content_body ol:not(.smf-progress-tracker) li::marker {
  color: var(--color-univ-olivegray);
}
#main_content_body :is(ul, ol):not(.smf-progress-tracker) li {
  position: relative;
  margin: 0.5em 0;
}
#main_content_body ul:not(.smf-progress-tracker) li::before {
  display: block;
  position: absolute;
  top: 0.95em;
  left: -1.25em;
  transform: translate(0, -50%);
  width: 0.55em;
  height: 0.55em;
  background-color: var(--color-univ-gray);
  border: 1.5px solid var(--color-univ-gray);
  border-radius: 50%;
  content: '';
  margin: 0;
  padding: 0;
}
#main_content_body ul:not(.smf-progress-tracker) :is(ul, ol) li::before {
  background-color: transparent;
}
#main_content_body :is(ul, ol):not(.smf-progress-tracker) li:first-child {
  margin: 0 0 0.5em;
}
#main_content_body :is(ul, ol):not(.smf-progress-tracker) li:last-child {
  margin: 0.5em 0 0;
}

#main_content_body li > :is(ul, ol):not(.smf-progress-tracker) {
  margin: 0.5em 0;
}
#main_content_body li > :is(ul, ol):not(.smf-progress-tracker) li,
#main_content_body li > :is(ul, ol):not(.smf-progress-tracker) li:first-child,
#main_content_body li > :is(ul, ol):not(.smf-progress-tracker) li:last-child {
  margin: 0;
}


/* リスト：カラム（ul, ol）（#main_content_body） */
#main_content_body :is(.column2, .column3) {
  column-gap: 4.0em;
  row-gap: 0;
}
#main_content_body :is(.column2, .column3) > li {
  break-inside: avoid;
}
#main_content_body .column2 {
  column-count: 2; -webkit-column-count: 2; -moz-column-count: 2;
}
#main_content_body .column3 {
  column-count: 3; -webkit-column-count: 3; -moz-column-count: 3;
}
@media screen and (max-width: 1023px) {
  #main_content_body :is(.column3) {
    column-count: 2; -webkit-column-count: 2; -moz-column-count: 2;
  }
}
@media screen and (max-width: 767px) {
  #main_content_body :is(.column2, .column3) {
    column-count: 1; -webkit-column-count: 1; -moz-column-count: 1;
  }
}
@media screen and (max-width: 567px) {}
/*
#main_content_body :is(.column2, .column3, .column4, .column5, .column6) {
  column-gap: 3.0em;
  row-gap: 0;
}
#main_content_body :is(.column2, .column3, .column4, .column5, .column6) > li {
  break-inside: avoid;
}
#main_content_body .column2 {
  column-count: 2; -webkit-column-count: 2; -moz-column-count: 2;
}
#main_content_body .column3 {
  column-count: 3; -webkit-column-count: 3; -moz-column-count: 3;
}
#main_content_body .column4 {
  column-count: 4; -webkit-column-count: 4; -moz-column-count: 4;
}
#main_content_body .column5 {
  column-count: 5; -webkit-column-count: 5; -moz-column-count: 5;
}
#main_content_body .column6 {
  column-count: 6; -webkit-column-count: 6; -moz-column-count: 6;
}
@media screen and (max-width: 1023px) {
  #main_content_body .column4 {
    column-count: 3; -webkit-column-count: 3; -moz-column-count: 3;
  }
  #main_content_body :is(.column5, .column6) {
    column-count: 4; -webkit-column-count: 4; -moz-column-count: 4;
  }
}
@media screen and (max-width: 767px) {
  #main_content_body :is(.column3, .column4, .column5, .column6) {
    column-count: 2; -webkit-column-count: 2; -moz-column-count: 2;
  }
}
@media screen and (max-width: 567px) {
  #main_content_body :is(.column2, .column3, .column4, .column5, .column6) {
    column-count: 1; -webkit-column-count: 1; -moz-column-count: 1;
  }
}
*/


/* ボタン（#main_content_body） */
#main_content_body .wp-block-buttons {
  margin: 2.0em auto;
}
#main_content_body a.wp-block-button__link {
  display: inline-block;
  position: relative;
  width: max-content;
  min-width: 250px;
  max-width: 100%;
  color: var(--color-univ-white);
  background-color: var(--color-univ-brown);
  border-radius: 0.25em;
  box-shadow: none;
  font-size: 1.0em;
  text-decoration: none;
  padding: 1.25em 1.5em;
  padding-left: 3.75em;
}
#main_content_body a.wp-block-button__link:hover {
  color: var(--color-univ-yellow);
}
#main_content_body a.wp-block-button__link::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 1.0em;
  transform: translate(0, -50%);
  width: 2.0em;
  height: 2.0em;
  content: '';
  background-image: url('../images/ico_btn_1.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_btn_1.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
/* ボタン｜白（#main_content_body .btn-white） */
#main_content_body .btn-white a.wp-block-button__link {
  color: var(--color-univ-brown);
  background-color: var(--color-univ-white);
}
#main_content_body .btn-white a.wp-block-button__link:hover {
  color: var(--color-univ-yellow);
}
#main_content_body .btn-white a.wp-block-button__link::before {
  background-image: url('../images/ico_btn_2.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_btn_2.svg'); */
}
/* ボタン｜青（#main_content_body .btn-blue） */
#main_content_body .btn-blue a.wp-block-button__link {
  color: var(--color-univ-white);
  background-color: var(--color-univ-blue);
}
#main_content_body .btn-blue a.wp-block-button__link:hover {
  color: var(--color-univ-yellow);
}
#main_content_body .btn-blue a.wp-block-button__link::before {
  background-image: url('../images/ico_btn_3.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_btn_3.svg'); */
}
@media screen and (max-width: 1023px) {
  #main_content_body a.wp-block-button__link {
    /*min-width: auto;*/
  }
}
@media screen and (max-width: 767px) {
  #main_content_body a.wp-block-button__link {
    padding: 1.0em 1.5em;
    padding-left: 3.5em;
  }
}
@media screen and (max-width: 567px) {}


/* 画像（#main_content_body）*/
#main_content_body img {
  width: 100%;
  
}
#main_content_body .wp-block-image img {
  border-radius: 0.5em;
}
#main_content_body table img {
  border-radius: 0.25em;
}
/* 画像｜お知らせ、トピックス（#main_content_body）*/
#tp_sg_default #main_content_body img {
  max-width: fit-content;
}


/* 画像キャプション｜ブロック（#main_content_body）*/
#main_content_body .wp-block-image :where(figcaption),
#main_content_body .wp-block-video :where(figcaption) {
  font-size: 0.9em;
}
/* 画面サイズ別表示｜PC用画像（#main_content_body） */
@media screen and (min-width: 1024px) {}
@media screen and (min-width: 768px) {
  #main_content_body .visible_sp {
    display: none;
  }
}
@media screen and (min-width: 568px) {}
/* 画面サイズ別表示｜スマートフォン・タブレット用画像（#main_content_body） */
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #main_content_body .visible_pc {
    display: none;
  }
}
@media screen and (max-width: 567px) {}


/* 画像キャプション｜ブロック｜ラベル・上部配置（#main_content_body）*/
#main_content_body .cap_image_label .wp-block-image,
#main_content_body .wp-block-image.cap_image_label {
  display: flex;
  gap: 1.0em;
  flex-direction: column-reverse;
}
#main_content_body .cap_image_label .wp-block-image :where(figcaption),
#main_content_body .wp-block-image.cap_image_label :where(figcaption) {
  width: max-content;
  max-width: 100%;
  padding: 0.25em 1.0em;
  font-weight: 500;
  font-size: 0.9em;
  line-height: 1.5;
  color: var(--color-univ-white);
  background-color: var(--color-univ-brown);
  border-radius: 0.25em;
}


/* 区切り罫（#main_content_body）*/
#main_content_body hr,
.wp-block-separator {
  border: none;
  width: 100%;
  margin: 6.0em 0;
}
#main_content_body hr,
.wp-block-separator {
  /*border-top: 1px solid var(--color-univ-olivegray)!important;*/
  border-top: 1.5px dotted var(--color-univ-lightolive)!important;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #main_content_body hr,
  .wp-block-separator {
    margin: 4.0em 0;
  }
}
@media screen and (max-width: 567px) {}


/* 背景色 */
#main_content_body :is(.bg-white, .bg-ico-beige, .bg-rec-bg1) {
  padding: 2.0em 3.0em;
  border-radius: 1.0em;
}
#main_content_body .bg-white {
  background-color: var(--color-univ-white);
}
#main_content_body .bg-ico-beige {
  background-color: var(--color-univ-ico-beige);
}
#main_content_body .bg-rec-bg1 {
  background-color: var(--color-rec-bg1);
  background-image: url('../images/bg_rec_texture.jpg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/bg_rec_texture.jpg'); */
  background-blend-mode: multiply;
  background-repeat: repeat;
  /*background-size: 800px;*/
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #main_content_body :is(.bg-white, .bg-ico-beige, .bg-rec-bg1) {
    /*padding: 1.0em 1.5em;*/
    padding: 1.5em 1.5em;
  }
}
@media screen and (max-width: 567px) {}


/* アイコン｜共通設定 */
/* （各ファイル用設定） */


/* ページアンカー ボタン（#main_content_body）*/
#main_content_body ul.page-anchor-btn {
  position: relative;
  display: flex;
  gap: 1.0em;
  flex-wrap: wrap;
  list-style-type: none;
  width: 100%;
  padding: 0;
  margin: 0;
  margin-top: 4.0em;
  margin-bottom: 4.0em;
  user-select: none;
}
#main_content_body ul.page-anchor-btn li::before {
  display: none;
}
#main_content_body ul.page-anchor-btn.center {
  justify-content: center;
}
#main_content_body ul.page-anchor-btn li {
  position: relative;
  display: flex;
  width: calc((100% - 1.0em * 3) / 4);
  max-width: 100%;
  padding: 0!important;
  margin: 0!important;
}
#main_content_body ul.page-anchor-btn li a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-size: 1.0em;
  text-decoration: none;
  text-align: center;
  color: var(--color-univ-blue);
  background-color: var(--color-univ-white);
  border-radius: 0.25em;
  width: 100%;
  padding: 0.5em;
  /*padding-left: 2.0em;*/
  /*padding-right: 1.0em;*/
  padding-left: 1.75em;
  padding-right: 1.75em;
  transition: all 0.1s;
}
#main_content_body ul.page-anchor-btn li a::after {
  display: block;
  position: absolute;
  top: 50%;
  left: 0.75em;
  width: 0.35em;
  height: 0.35em;
  border: none;
  border-left: 1.5px solid;
  border-bottom: 1.5px solid;
  transform-origin: top left;
  transform: rotate(-45deg) translate(20%, -20%);
  content: '';
  transition: all 0.1s;
}
#main_content_body ul.page-anchor-btn li a:hover {
  color: var(--color-univ-yellow);
  transition: all 0.1s;
}
#main_content_body ul.page-anchor-btn li a:hover::after {
  transition: all 0.1s;
}
@media screen and (max-width: 1023px) {
  #main_content_body ul.page-anchor-btn li {
    width: calc((100% - 1.0em * 2) / 3);
  }
}
@media screen and (max-width: 767px) {
  #main_content_body ul.page-anchor-btn li {
    width: calc((100% - 1.0em * 1) / 2);
  }
}
@media screen and (max-width: 567px) {
  #main_content_body ul.page-anchor-btn {
    gap: 1.0em;
  }
  #main_content_body ul.page-anchor-btn li {
    width: calc((100% - 1.0em * 0) / 1);
  }
}


/* 動画埋め込み（#main_content_body） */
#main_content_body *:has(> iframe[src*="vimeo"]),
#main_content_body *:has(> iframe[src*="youtube"]) {
  display: block;
  position: relative;
  width: 100%;
  padding-top: calc(100% * 9 / 16);
  overflow: hidden;
}
#main_content_body iframe[src*="vimeo"],
#main_content_body iframe[src*="youtube"] {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


/* 信条／園章｜私たちの信条（条文）（#main_content_body） */
#main_content_body .credo-articles {
  text-align: left;
  text-indent: -2.0em;
  padding-left: 2.0em;
}


/* ページリスト バナー（ボタン形式）（#main_content_body）*/
/* ※ショートコード（inner_page_children_list.php） */
/* ※ショートコード（inner_page_list.php） */
:root {
  --list-bnr-gap : 2.0em;
  /* var(--list-bnr-gap) */
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  :root {
    --list-bnr-gap : 1.5em;
  }
}
@media screen and (max-width: 567px) {
  :root {
    --list-bnr-gap : 1.0em;
  }
}
#main_content_body ul.page-list-bnr {
  position: relative;
  display: flex;
  gap: var(--list-bnr-gap);
  flex-wrap: wrap;
  list-style-type: none;
  width: 100%;
  padding: 0;
  margin: 0;
  margin-top: 4.0em;
  margin-bottom: 4.0em;
}
#main_content_body ul.page-list-bnr li {
  position: relative;
  display: flex;
  width: calc((100% - var(--list-bnr-gap) * 2) / 3);
  max-width: 100%;
  padding: 0!important;
  margin: 0!important;
}
#main_content_body ul.page-list-bnr li::before {
  display: none;
}
#main_content_body ul.page-list-bnr li a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.0em;
  text-decoration: none;
  color: var(--color-univ-brown);
  background-color: var(--color-univ-white);
  border: 1px solid var(--color-univ-olivegray);
  border-radius: 0.5em;
  width: 100%;
  padding: 1.25em 1.0em;
  padding-right: 2.0em;
}
#main_content_body ul.page-list-bnr li a:hover {
  color: var(--color-univ-yellow);
}
#main_content_body ul.page-list-bnr li a {
  transition: all 0.2s;
}
#main_content_body ul.page-list-bnr li a::after {
  transition: all 0.15s;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #main_content_body ul.page-list-bnr li {
    width: calc((100% - var(--list-bnr-gap) * 1) / 2);
  }
}
@media screen and (max-width: 567px) {
  #main_content_body ul.page-list-bnr li {
    width: calc((100% - var(--list-bnr-gap) * 0) / 1);
  }
}

/* アイコン｜共通設定 */
#main_content_body ul.page-list-bnr li a::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 0.5em;
  transform: translate(0, -50%);
  width: 1.5em;
  height: 1.5em;
  content: "";
  background-repeat: no-repeat;
  background-size: contain;
}
/* PDFアイコン｜.pdf */
#main_content_body ul.page-list-bnr li a[href$=".pdf" i]::after {
  background-image: url('../images/ico_link_pdf_olivegray.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_link_pdf_olivegray.svg'); */
}
#main_content_body ul.page-list-bnr li a[href$=".pdf" i]:hover::after {}
/* Excelアイコン｜.xls, .xlsx */
#main_content_body ul.page-list-bnr li a[href$=".xls" i]::after,
#main_content_body ul.page-list-bnr li a[href$=".xlsx" i]::after {
  background-image: url('../images/ico_link_xls_olivegray.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_link_xls_olivegray.svg'); */
}
#main_content_body ul.page-list-bnr li a[href$=".xls" i]:hover::after,
#main_content_body ul.page-list-bnr li a[href$=".xlsx" i]:hover::after {}
/* Wordアイコン｜.doc, .docx */
#main_content_body ul.page-list-bnr li a[href$=".doc" i]::after,
#main_content_body ul.page-list-bnr li a[href$=".docx" i]::after {
  background-image: url('../images/ico_link_doc_olivegray.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_link_doc_olivegray.svg'); */
}
#main_content_body ul.page-list-bnr li a[href$=".doc" i]:hover::after,
#main_content_body ul.page-list-bnr li a[href$=".docx" i]:hover::after {}
/* 外部アイコン｜target="_blank"（別ウィンドウで開くリンク） かつ PDF/Excel ではない */
#main_content_body ul.page-list-bnr li a[target="_blank"]:not(:is([href$=".pdf" i], [href$=".xls" i], [href$=".xlsx" i], [href$=".doc" i], [href$=".docx" i]))::after {
  background-image: url('../images/ico_link_external_olivegray.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_link_external_olivegray.svg'); */
}
#main_content_body ul.page-list-bnr li a[target="_blank"]:not(:is([href$=".pdf" i], [href$=".xls" i], [href$=".xlsx" i], [href$=".doc" i], [href$=".docx" i])):hover::after {}
/* デフォルトアイコン｜別ウィンドウでも PDF/Excel でもない */
#main_content_body ul.page-list-bnr li a:not(:is([target="_blank"], [href$=".pdf" i], [href$=".xls" i], [href$=".xlsx" i], [href$=".doc" i], [href$=".docx" i]))::after {
  background-image: url('../images/ico_arrow_r_olivegray.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_olivegray.svg'); */
  width: 1.5em;
  height: 1.5em;
}
#main_content_body ul.page-list-bnr li a:not(:is([target="_blank"], [href$=".pdf" i], [href$=".xls" i], [href$=".xlsx" i], [href$=".doc" i], [href$=".docx" i])):hover::after {
  right: 0.25em;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}


/* ## エレメント（/site-elements/）（#main_content_body） */
#main_content_body .elements_code {
  display: block;
  position: relative;
  width: max-content;
  max-width: 100%;
  font-size: 0.8em;
  letter-spacing: 0.05em;
  line-height: 1.5;
  color: var(--color-univ-olivegray);
  background-color: var(--color-univ-white);
  padding: 0.5em 1.0em;
  margin: 1.5em 0;
}

/*
#main_content_body ul.page-anchor-btn {
  position: relative;
  display: flex;
  gap: 1.5em;
  flex-wrap: wrap;
  list-style-type: none;
  width: 100%;
  padding: 0;
  margin: 0;
  margin-top: 4.0em;
  margin-bottom: 4.0em;
  user-select: none;
}
#main_content_body ul.page-anchor-btn li::before {
  display: none;
}
#main_content_body ul.page-anchor-btn.center {
  justify-content: center;
}
#main_content_body ul.page-anchor-btn li {
  position: relative;
  display: flex;
  width: calc((100% - 1.5em * 3) / 4);
  max-width: 100%;
  padding: 0!important;
  margin: 0!important;
}
#main_content_body ul.page-anchor-btn li a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-size: 1.0em;
  text-decoration: none;
  color: var(--color-univ-blue);
  width: 100%;
  padding: 0;
  padding-left: 1.5em;
  padding-right: 1.5em;
  transition: all 0.1s;
}
#main_content_body ul.page-anchor-btn li a::after {
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 0.5em;
  height: 0.5em;
  border: none;
  border-left: 1.5px solid;
  border-bottom: 1.5px solid;
  transform-origin: top left;
  transform: rotate(-45deg) translate(20%, -20%);
  content: '';
  transition: all 0.1s;
}
#main_content_body ul.page-anchor-btn li a:hover {
  color: var(--color-univ-yellow);
  transition: all 0.1s;
}
#main_content_body ul.page-anchor-btn li a:hover::after {
  transition: all 0.1s;
}
@media screen and (max-width: 1023px) {
  #main_content_body ul.page-anchor-btn li {
    width: calc((100% - 1.5em * 2) / 3);
  }
}
@media screen and (max-width: 767px) {
  #main_content_body ul.page-anchor-btn li {
    width: calc((100% - 1.5em * 1) / 2);
  }
}
@media screen and (max-width: 567px) {
  #main_content_body ul.page-anchor-btn {
    gap: 1.0em;
  }
  #main_content_body ul.page-anchor-btn li {
    width: calc((100% - 1.5em * 0) / 1);
  }
}
*/




/* ##############################################
##
##  ページナビ（.p-navi）
##  最初のページ用：<span class="start"></span>
##  最後のページ用：<span class="end"></span>
##  前のページ用：<span class="prev"></span>
##  次のページ用：<span class="next"></span>
##  「前へ…」「次へ…」用（共通）：...
##
############################################## */
/* ページナビ（.p-navi） */
.p-navi {
  display: block;
  width: max-content;
  max-width: 100%;
  line-height: 1.5;
  padding: 0;
  margin: 0 auto;
  user-select: none;
}
.p-navi:has(.wp-pagenavi) {
  padding-bottom: 6.0em;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .p-navi:has(.wp-pagenavi) {
    padding-bottom: 5.0em;
  }
}
@media screen and (max-width: 567px) {}

.p-navi,
.p-navi * {
  font-weight: 500;
}
.wp-pagenavi {
  position: relative;
  display: flex;
  gap: 1.0em;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: max-content;
  max-width: 100%;
  margin: 0 auto;
}
.wp-pagenavi a {
  text-decoration: none;
}
.wp-pagenavi :is(.page, .current) {
  position: relative;
  display: block;
  padding: 0;
  margin: 0;
  text-align: center;
  border: none;
}
.wp-pagenavi .page {
  color: var(--color-univ-olivegray);
}
.wp-pagenavi .current {
  color: var(--color-univ-brown);
}
.wp-pagenavi .pages {
  position: relative;
  display: block;
  border: none;
  color: var(--color-univ-brown);
  margin-right: 0.5em;
}
.wp-pagenavi :is(.first, .last) {
  border: none;
  color: var(--color-univ-olivegray);
}
.wp-pagenavi :is(.first, .last) span {
  margin: 0;
}
.wp-pagenavi :is(.nextpostslink, .previouspostslink) {
  border: none;
  color: var(--color-univ-olivegray);
}
.wp-pagenavi :is(.nextpostslink, .previouspostslink) span {
  margin: 0;
}
.wp-pagenavi .extend {
  /*display: none;*/
  color: var(--color-univ-olivegray);
}
.wp-pagenavi :is(.first, .last) span {
  position: relative;
  display: block;
  width: 1.5em;
  padding-top: 1.5em;
  margin: 0;
  color: var(--color-univ-olivegray);
}
.wp-pagenavi :is(.first, .last) span.start::after,
.wp-pagenavi :is(.first, .last) span.end::after {
  display: block;
  position: absolute;
  top: 0%;
  left: 0%;
  /*transform: scale(1, 1);*/
  transform-origin: center center;
  width: 100%;
  height: 100%;
  border: 1.5px solid;
  border-radius: 50%;
  background-color: var(--color-univ-white);
  background-image: url('../images/ico_arrow_r_olivegray.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_olivegray.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
}
.wp-pagenavi :is(.first, .last) span.start::after {
  transform: scale(-1, 1);
}
.wp-pagenavi :is(.first, .last) span.end::after {
  transform: scale(1, 1);
}
.wp-pagenavi :is(.nextpostslink, .previouspostslink) {
  position: relative;
  display: block;
}
.wp-pagenavi :is(.nextpostslink, .previouspostslink) span {
  position: relative;
  display: block;
  width: 1.5em;
  padding-top: 1.5em;
  margin: 0;
  color: var(--color-univ-olivegray);
}
.wp-pagenavi :is(.nextpostslink, .previouspostslink) span.prev::after,
.wp-pagenavi :is(.nextpostslink, .previouspostslink) span.next::after {
  display: block;
  position: absolute;
  top: 0%;
  left: 0%;
  /*transform: scale(1, 1);*/
  transform-origin: center center;
  width: 100%;
  height: 100%;
  border: 1.5px solid;
  border-radius: 50%;
  background-color: var(--color-univ-olivegray);
  background-image: url('../images/ico_arrow_r_white.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_white.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
}
.wp-pagenavi :is(.nextpostslink, .previouspostslink) span.prev::after {
  transform: scale(-1, 1);
}
.wp-pagenavi :is(.nextpostslink, .previouspostslink) span.next::after {
  transform: scale(1, 1);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}




/* ##############################################
##
##  パンくずリスト（breadcrumb.php）
##  <span class="bcn_sect"></span>
##
############################################## */
.breadcrumb {
  display: block;
  position: relative;
  color: var(--color-univ-brown);
  width: 100%;
  padding: 0.5em 4.0em;
  margin: 0;
}
.breadcrumb > div {
  display: block;
  position: relative;
  font-size: 0.8em;
  text-align: left;
  width: 100%;
  max-width: 1300px;
  margin: 0 auto;
}
.breadcrumb .bcn_sect {
  display: inline-block;
  position: relative;
}
.breadcrumb .bcn_sect::after {
  display: inline-block;
  position: relative;
  content: '';
  width: 4px;
  height: 4px;
  background-color: var(--color-univ-brown);
  border-radius: 50%;
  transform: translate(0, -0.25em);
  margin: 0 1.0em;
}
.breadcrumb a {
  color: var(--color-univ-olivegray);
  text-decoration: none;
  transition: all 0.1s;
}
.breadcrumb a:hover {
  color: var(--color-univ-yellow);
  transition: all 0.1s;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .breadcrumb {
    padding: 0.5em 2.0em;
  }
}
@media screen and (max-width: 567px) {}

/* header-image 連動 */
/* bird-cloud_2（.bc_bird-cloud_2） */
.breadcrumb.bc_bird-cloud_2 {
  border: 0;
  border-bottom: 1px solid var(--color-univ-olivegray);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* ページヘッダー｜施設紹介｜各施設｜ページ冒頭｜パンくずリスト（header-image-facility.php） */
.page-header.facility .breadcrumb :is(a:not(:hover), .current-item) {
  color: var(--color-univ-white)!important;
}
.page-header.facility .breadcrumb .bcn_sect::after {
  background-color: var(--color-univ-white);
}




/* ##############################################
##
##  共通（index.php、page.php、single.php etc.）
##
############################################## */
/* 共通｜.entry-content, .container */
.entry-content, 
.container {
  position: relative;
  display: block;
  width: 100%;
}
.entry-content {
  margin: 0;
  z-index: 0;
}
.container {
  margin: 0 auto;
}


/* 共通｜ボタン（テンプレート用） */
/* .general_buttons a.button */
/* .general_buttons.btn-white a.button */
/* .general_buttons.btn-blue a.button */
/* 共通｜ボタン（テンプレート用）｜共通（.general_buttons a.button） */
.general_buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 1.0em;
  justify-content: center;
  width: 100%;
  margin: 2.0em auto;
}
.general_buttons a.button {
  display: inline-block;
  position: relative;
  width: max-content;
  min-width: 250px;
  max-width: 100%;
  border-radius: 0.25em;
  box-shadow: none;
  font-size: 1.0em;
  text-decoration: none;
  text-align: center;
  padding: 1.25em 1.5em;
  padding-left: 3.75em;
  transition: 0.15s;
}
.general_buttons a.button:hover {
  color: var(--color-univ-yellow);
}
.general_buttons a.button::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 1.0em;
  transform: translate(0, -50%);
  width: 2.0em;
  height: 2.0em;
  content: '';
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
/* 共通｜ボタン｜通常（.general_buttons a.button） */
.general_buttons:not(:is(.btn-white, .btn-blue)) a.button:not(:hover) {
  color: var(--color-univ-white)!important;
}
.general_buttons:not(:is(.btn-white, .btn-blue)) a.button {
  background-color: var(--color-univ-brown);
}
.general_buttons:not(:is(.btn-white, .btn-blue)) a.button::before {
  background-image: url('../images/ico_btn_1.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_btn_1.svg'); */
}
/* 共通｜ボタン｜白（.general_buttons.btn-white a.button） */
.general_buttons.btn-white a.button:not(:hover) {
  color: var(--color-univ-brown)!important;
}
.general_buttons.btn-white a.button {
  background-color: var(--color-univ-white);
}
.general_buttons.btn-white a.button::before {
  background-image: url('../images/ico_btn_2.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_btn_2.svg'); */
}
/* 共通｜ボタン｜青（.general_buttons.btn-blue a.button） */
.general_buttons.btn-blue a.button:not(:hover) {
  color: var(--color-univ-white)!important;
}
.general_buttons.btn-blue a.button {
  background-color: var(--color-univ-blue);
}
.general_buttons.btn-blue a.button::before {
  background-image: url('../images/ico_btn_3.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_btn_3.svg'); */
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .general_buttons a.button {
    padding: 1.0em 1.5em;
    padding-left: 3.5em;
  }
}
@media screen and (max-width: 567px) {}




/* ##############################################
##
##  サイドバー sidebar｜共通（.sb-wrap）
##  サイドバー（sidebar.php、sidebar-XXX.php）
##
############################################## */

/* ##############################################
## サイドバー sidebar｜共通（.sb-wrap）｜（achv, sg, pg）
############################################## */
/* サイドバー sidebar｜共通（.sb-wrap） */
.sb-wrap .main-wrap {
  position: relative;
  display: flex;
  gap: 4.0em;
  width: 100%;
  max-width: 1400px;
  padding: 0;
  margin: 0 auto;
}
/* サイドバー sidebar｜共通｜メイン｜sidebar（.sb-wrap） */
.sb-wrap .main-wrap .main-wrap__sidebar {
  flex-grow: 1;
  position: relative;
  display: block;
}
/* サイドバー sidebar｜共通｜メイン｜content（.sb-wrap） */
.sb-wrap .main-wrap .main-wrap__content {
  flex-grow: 1;
  position: relative;
  display: block;
  width: 100%;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .sb-wrap .main-wrap {
    flex-direction: column-reverse;
  }
  .sb-wrap .main-wrap .main-wrap__sidebar {
    width: 100%;
    min-width: initial;
  }
}




/* ##############################################
##
##  ショートコード
##
############################################## */
/* 選択リスト・カバー画像（inner_choose_list_cover.php） */
.choose_list {
  position: relative;
  display: flex;
  gap: 2.0em;
  margin: 6.0em 0;
}
.choose_list .choose_list__cover {
  flex-grow: 1;
  position: relative;
  display: block;
  width: calc(100% * 3 / 5);
}
.choose_list .choose_list__cover .image {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 0;
  padding-top: calc(100% * 1 / 1);
  border-radius: 0.5em;
  overflow: hidden;
  opacity: 0;
  transition: opacity .4s ease;
}
.choose_list .choose_list__cover .image.active {
  opacity: 1.0;
  position: relative;
}
.choose_list .choose_list__cover .image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.choose_list .choose_list__text {
  flex-grow: 1;
  position: relative;
  display: block;
  width: calc(100% * 2 / 5);
}
.choose_list .choose_list__text .title {
  position: relative;
  cursor: pointer;
  border: none;
  border-top: 1px solid var(--color-univ-olivegray);
  padding: 0;
  margin: 0;
}
.choose_list .choose_list__text .title:last-child {
  border-bottom: 1px solid var(--color-univ-olivegray)
}
.choose_list .choose_list__text .title a {
  position: relative;
  display: block;
  width: 100%;
  line-height: 1.5;
  text-decoration: none;
  padding: 0.75em 1.0em;
  padding-right: 2.5em;
}
.choose_list .choose_list__text .title a:hover {}
.choose_list .choose_list__text .title a::after {
  display: block;
  position: absolute;
  top: calc(50% + 0.05em);
  right: 0.5em;
  width: 0.9em;
  transform: translate(0, -50%);
  content: url('../images/ico_facil-hero_arrow_r.svg');
  /* content: url('<?php echo get_template_directory_uri(); ?>/images/ico_facil-hero_arrow_r.svg'); */
  transition: all 0.2s;
}
.choose_list .choose_list__text .title a:hover::after {
  right: 0;
}
.choose_list .choose_list__text .title a span {
  position: relative;
  display: block;
  width: max-content;
  max-width: 100%;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .choose_list {
    flex-direction: column;
  }
  .choose_list .choose_list__cover {
    width: 100%;
  }
  .choose_list .choose_list__cover .image {
    padding-top: calc(100% * 2 / 3);
  }
  .choose_list .choose_list__text {
    width: 100%;
  }
}
@media screen and (max-width: 567px) {}




/* ##############################################
##
##  トップページ（index.php、site-top.php）
##  トップページ｜共通（site-top.php）
##  トップページ｜ファーストビュー（top_hero.php）
##  トップページ｜事業一覧（top_facil.php）
##  トップページ｜お知らせ（top_notice.php） 
##  トップページ｜トピックス（top_topics.php）
##  トップページ｜採用情報（top_recruit.php）
##
############################################## */

/* ##############################################
## トップページ｜共通（site-top.php）
############################################## */
#site-top {}
#site-top :is(h2, h4).sub-en {
  position: relative;
  font-size: 1.0em;
  color: var(--color-univ-brown);
}
#site-top :is(h2, h4).sub-en.white {
  color: var(--color-univ-white);
}
#site-top :is(h2, h4).sub-en span {
  display: inline-block;
}
/* data-en="XXXXXX" 文字列可変 */
#site-top :is(h2, h4).sub-en::before {
  position: relative;
  display: block;
  content: attr(data-en);
  font-family: "Josefin Sans", sans-serif;
  font-weight: 400;
  font-size: 1.0em;
}
#site-top h2.sub-en span {
  font-size: 2.4em;
  line-height: 1.5;
}
#site-top h4.sub-en span {
  font-size: 1.7em;
  line-height: 1.6;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #site-top h2.sub-en span {
    font-size: 2.1em;
  }
  #site-top h4.sub-en span {
    font-size: 1.5em;
  }
}
@media screen and (max-width: 567px) {}


/* ##############################################
## トップページ｜ファーストビュー（top_hero.php）
############################################## */
.top_hero {
  position: relative;
  display: block;
  width: 100%;
  z-index: 10;
}
.top_hero .top_hero__wrap {
  position: relative;
  display: block;
  width: 100%;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* トップページ｜ファーストビュー｜タイトル（PC・SP） */
.top_hero .top_hero_main-title:is(.pc, .sp) {
  position: absolute;
  /*width: max-content;*/
  width: 400px;
  max-width: calc(100vw - (2.0em * 2));
  z-index: 100;
}
.top_hero .top_hero_main-title.pc {
  display: block;
  /*
  top: 53vh;
  left: 7vw;
  */
  top: 32vh;
  right: 2vw;
  transform: translate(0, -50%);
}
.top_hero .top_hero_main-title.sp {
  display: none;
  /*top: 50%;*/
  top: 28%;
  left: 2.0em;
  transform: translate(0, -50%);
}
.top_hero .top_hero_main-title:is(.pc, .sp) h1 {
  position: relative;
  display: block;
  width: 35vw;
  max-width: 100%;
  min-width: 400px;
  font-size: 0;
  line-height: 1.5;
  padding: 0;
  margin: 0;
}
.top_hero .top_hero_main-title:is(.pc, .sp) h1 img {
  position: relative;
  display: block;
  width: 100%;
  font-size: 1.0em;
}
@media screen and (max-width: 1023px) {
  .top_hero .top_hero_main-title.pc {
    display: none;
  }
  .top_hero .top_hero_main-title.sp {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .top_hero .top_hero_main-title:is(.pc, .sp) h1 {
    width: 100%;
    max-width: 400px;
    min-width: initial;
  }
}
@media screen and (max-width: 567px) {}

/* トップページ｜ファーストビュー｜ライン（PCのみ）（top_hero.php） */
.top_hero .top_hero_main-line {
  display: block;
  position: absolute;
  top: 0;
  left: 25vw;
  transform: translate(-50%, 0);
  width: max-content;
  max-width: 100%;
  height: 100%;
  z-index: 70;
}
.top_hero .top_hero_main-line img {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  user-select: none;
}
@media screen and (max-width: 1023px) {
  .top_hero .top_hero_main-line {
    display: none;
  }
}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* トップページ｜ファーストビュー｜バード（PCのみ）（top_hero.php） */
.top_hero .top_hero_main-bird {
  display: block;
  position: absolute;
  bottom: 0;
  left: 25vw;
  transform: translate(-50%, 2.0em);
  width: calc(340px * 0.8);
  padding: 0;
  padding-top: calc(330px * 0.8);
  z-index: 120;
}
.top_hero .top_hero_main-bird img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  user-select: none;
}
@media screen and (max-width: 1023px) {
  .top_hero .top_hero_main-bird {
    display: none;
  }
}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* トップページ｜ファーストビュー｜メイン（top_hero.php） */
.top_hero .top_hero__main {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  padding-bottom: 10.0em;
  margin: 0;
}
.top_hero .top_hero__main .top_hero__main-wrap {
  position: relative;
  display: flex;
  gap: 0.5em;
  align-items: flex-start;
  width: 100%;
}
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu {
  flex-grow: 0;
}
.top_hero .top_hero__main .top_hero__main-wrap .main__image {
  flex-grow: 1;
}
@media screen and (max-width: 1023px) {
  .top_hero .top_hero__main {
    padding-bottom: 6.0em;
  }
  .top_hero .top_hero__main .top_hero__main-wrap {
    align-items: initial;
    flex-direction: column-reverse;
  }
}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

.top_hero .top_hero__main .top_hero__main-wrap .sub__menu {
  position: relative;
  display: block;
  width: fit-content;
  max-width: 35%;
}
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-picture {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  padding-top: 75vh;
  z-index: 50;
}
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-picture img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
  user-select: none;
}
@media screen and (max-width: 1023px) {
  .top_hero .top_hero__main .top_hero__main-wrap .sub__menu {
    width: 100%;
    max-width: 100%;
  }
  .top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-picture {
    display: none;
  }
}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-items {
  position: relative;
  display: block;
  width: 100%;
  padding: 1.0em 2.0em;
  margin: 0;
  z-index: 150;
}
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-items .sub__menu-item {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
}
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-items .sub__menu-item.household {}
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-items .sub__menu-item.stakeholders {}
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-items .sub__menu-item.job_applicant {}
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-items .sub__menu-item a {
  position: relative;
  display: block;
  width: 100%;
  text-decoration: none;
  border: none;
  border-bottom: 1px solid var(--color-univ-ico-beige);
  padding: 1.0em 0;
  padding-left: 3.5em;
  padding-right: 2.5em;
  margin: 0;
  transition: 0.15s;
}
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-items .sub__menu-item:last-child a {
  border-bottom: none;
}
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-items .sub__menu-item:is(.household, .stakeholders, .job_applicant) a::before,
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-items .sub__menu-item a::after {
  display: block;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  padding: 0;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
}
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-items .sub__menu-item:is(.household, .stakeholders, .job_applicant) a::before {
  left: 0;
  width: 2.5em;
  padding-top: 2.5em;
}
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-items .sub__menu-item.household a::before {
  background-image: url('../images/ico_top_hero-sub__menu_household.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_top_hero-sub__menu_household.svg'); */
}
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-items .sub__menu-item.stakeholders a::before {
  background-image: url('../images/ico_top_hero-sub__menu_stakeholders.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_top_hero-sub__menu_stakeholders.svg'); */
}
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-items .sub__menu-item.job_applicant a::before {
  background-image: url('../images/ico_top_hero-sub__menu_job_applicant.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_top_hero-sub__menu_job_applicant.svg'); */
}
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-items .sub__menu-item a::after {
  right: 0.25em;
  width: 1.5em;
  padding-top: 1.5em;
  background-image: url('../images/ico_arrow_r_olivegray.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_olivegray.svg'); */
  transition: 0.15s;
}
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-items .sub__menu-item a span {
  position: relative;
  display: block;
  width: fit-content;
  max-width: 100%;
  line-height: 1.5;
  color: var(--color-univ-brown);
  transition: 0.15s;
}
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-items .sub__menu-item a:hover {}
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-items .sub__menu-item a:hover::after {
  right: 0;
}
.top_hero .top_hero__main .top_hero__main-wrap .sub__menu .sub__menu-items .sub__menu-item a:hover span {
  color: var(--color-univ-yellow);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

.top_hero .top_hero__main .top_hero__main-wrap .main__image {
  position: relative;
  display: block;
  z-index: 50;
}
.top_hero .top_hero__main .top_hero__main-wrap .main__image .image {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  padding-top: 95vh;
  border-bottom-left-radius: 5.0em;
  overflow: hidden;
}
.top_hero .top_hero__main .top_hero__main-wrap .main__image .image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 10% center;
  user-select: none;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .top_hero .top_hero__main .top_hero__main-wrap .main__image .image {
    padding-top: 75vh;
    border-bottom-left-radius: 3.0em;
  }
}
@media screen and (max-width: 567px) {}

.top_hero .top_hero__main .top_hero__main-wrap .main__image .main_notice-wrap {
  display: block;
  position: absolute;
  right: 0;
  bottom: 1.0em;
  width: max-content;
  max-width: 100%;
  padding: 0;
  margin: 0;
  z-index: 100;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .top_hero .top_hero__main .top_hero__main-wrap .main__image .main_notice-wrap {
    position: relative;
    right: initial;
    bottom: initial;
    width: 100%;
    padding: 0 2.0em;
    margin-top: 2.0em;
  }
}
@media screen and (max-width: 567px) {}

/* トップページ｜ファーストビュー｜メイン｜お知らせ（top_hero.php、top_hero-notice.php） */
:root {
  --notice-item-heigit: 80px;
}
.top-hero_notice__main {
  position: relative;
  display: flex;
  gap: 0;
  align-items: center;
  width: 100%;
  background: var(--color-univ-white);
  border-radius: 0.25em;
  overflow: hidden;
}
.top-hero_notice__main-arrow {
  flex-grow: 0;
  flex-shrink: 0;
  position: relative;
  cursor: pointer;
}
.top-hero_notice__main-arrow::after {
  display: block;
  position: absolute;
  top: 0;
  left: 100%;
  transform: translate(-50%, 0);
  width: 1px;
  height: 100%;
  background-color: var(--color-univ-gray);
  content: '';
}
.top-hero_notice__main-arrow :is(.main-upper, .main-lower) {
  display: block;
  position: relative;
  width: calc(var(--notice-item-heigit) / 2);
  padding-top: calc(var(--notice-item-heigit) / 2);
  background-color: var(--color-univ-white);
  transition: 0.1s;
}
.top-hero_notice__main-arrow :is(.main-upper, .main-lower)::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  /*transform: translate(-50%, -50%);*/
  width: 50%;
  padding: 0;
  padding-top: 50%;
  background-image: url('../images/ico_arrow_r_olivegray.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_olivegray.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
}
@media (hover: hover) and (pointer: fine) {
  .top-hero_notice__main-arrow :is(.main-upper, .main-lower):hover {
    background-color: var(--color-univ-bg-beige);
  }
}
.top-hero_notice__main-arrow .main-upper::before {
  /*content: '↑';*/
  transform: translate(-50%, -50%) rotate(-90deg);
}
.top-hero_notice__main-arrow .main-lower::before {
  /*content: '↓';*/
  transform: translate(-50%, -50%) rotate(90deg);
}
.top-hero_notice__main-arrow .main-upper::after {
  display: block;
  position: absolute;
  top: 100%;
  left: 0;
  transform: translate(0, -50%);
  width: 100%;
  height: 1px;
  background-color: var(--color-univ-gray);
  content: '';
}
.top-hero_notice__items {
  flex-grow: 1;
  overflow: hidden;
  position: relative;
  height: var(--notice-item-heigit); /* height: 1件分高さ（px） */
}
.top-hero_notice__track {
  position: relative;
}
.top-hero_notice__item-wrap {
  display: flex;
  height: var(--notice-item-heigit); /* height: 1件分高さ（.top-hero_notice__items と合わせる） */
}
.top-hero_notice__item-wrap a {
  position: relative;
  display: flex;
  gap: 0.5em;
  align-items: center;
  text-decoration: none;
  width: 100%;
  height: var(--notice-item-heigit); /* height: 1件分高さ（.top-hero_notice__items と合わせる） */
}
.top-hero_notice__item-wrap a.no-event {
  pointer-events: none;
}
.top-hero_notice__item-wrap a .item-image {
  position: relative;
  width: var(--notice-item-heigit);
  min-width: var(--notice-item-heigit);
  padding: 0;
  padding-top: var(--notice-item-heigit);
}
.top-hero_notice__item-wrap a .item-image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.top-hero_notice__item-wrap a .item-txt {
  position: relative;
  display: block;
  line-height: 1.5;
}
.top-hero_notice__item-wrap a .item-txt :is(.item-date, .item-cat, .item-title) {
  position: relative;
  display: inline-block;
  padding: 0;
  margin: 0;
}
.top-hero_notice__item-wrap a .item-txt :is(.item-date, .item-cat, .item-title) span {
  position: relative;
  display: inline-block;
  width: max-content;
  max-width: 100%;
  transition: 0.2s;
}
.top-hero_notice__item-wrap a .item-txt .item-date {}
.top-hero_notice__item-wrap a .item-txt .item-date span {
  font-family: "Barlow", sans-serif;
  font-weight: 500;
  font-size: 0.9em;
  color: var(--color-univ-olivegray);
}
.top-hero_notice__item-wrap a .item-txt .item-cat {
  margin-left: 1.0em;
}
.top-hero_notice__item-wrap a .item-txt .item-cat span {
  font-weight: 500;
  font-size: 0.8em;
  color: var(--color-univ-blue);
  background-color: var(--color-univ-blue_lighttone);
  border: 1px solid var(--color-univ-blue_paletone);
  border-radius: 0.25em;
  padding: 0.1em 0.5em;
}
.top-hero_notice__item-wrap a .item-txt .item-title {
  display: block;
  padding-right: 2.0em;
  margin-top: 0.25em;
}
.top-hero_notice__item-wrap a .item-txt .item-title span {
  width: 100%;
  font-weight: 500;
  font-size: 0.9em;
  color: var(--color-univ-black);
}
@media (hover: hover) and (pointer: fine) {
  .top-hero_notice__item-wrap a:hover .item-txt .item-date span {
    color: var(--color-univ-yellow);
  }
  .top-hero_notice__item-wrap a:hover .item-txt .item-cat span {
    color: var(--color-univ-blue_paletone);
  }
  .top-hero_notice__item-wrap a:hover .item-txt .item-title span {
    color: var(--color-univ-yellow);
  }
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* トップページ｜ファーストビュー｜About Us（top_hero.php） */
.top_hero .top_hero__aboutus {
  position: relative;
  display: flex;
  width: 100%;
  padding: 0;
  padding-bottom: 6.0em;
  margin: 0;
  background-image: url('../images/top_hero_line_2.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/top_hero_line_2.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom center;
  z-index: 100;
}
.top_hero .top_hero__aboutus::before,
.top_hero .top_hero__aboutus::after {
  display: block;
  position: absolute;
  content: '';
  z-index: 5;
}
.top_hero .top_hero__aboutus::before {
  top: 0;
  right: 0;
  transform: translate(0, -5.0em);
  width: 100%;
  padding: 0;
  padding-top: calc(100% * 390 / 1920);
  background-image: url('../images/bg_bird-cloud_3.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/bg_bird-cloud_3.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
.top_hero .top_hero__aboutus::after {
  bottom: 0;
  right: 0;
  transform: translate(0, -3.0em);
  width: 100%;
  padding: 0;
  padding-top: calc(100% * 170 / 1920);
  background-image: url('../images/top_hero_cloud.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/top_hero_cloud.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
.top_hero .top_hero__aboutus .top_hero__aboutus-wrap {
  flex-grow: 1;
  position: relative;
  display: flex;
  gap: 4.0em;
  width: 100%;
  z-index: 100;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .top_hero .top_hero__aboutus .top_hero__aboutus-wrap {
    flex-direction: column;
    gap: 2.0em;
  }
  .top_hero .top_hero__aboutus::before {
    top: 50%;
    transform: translate(0, -50%);
    padding-top: calc(100% * 390 / 1280);
    background-image: url('../images/bg_bird-cloud_sp_3.svg');
    /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/bg_bird-cloud_sp_3.svg'); */
  }
  .top_hero .top_hero__aboutus::after {
    display: none;
  }
}
@media screen and (max-width: 567px) {}

.top_hero .top_hero__aboutus .top_hero__aboutus-wrap .aboutus-items {
  flex-grow: 1;
  position: relative;
  display: flex;
  width: 100%;
  max-width: calc((100% - 4.0em) / 2);
}
.top_hero .top_hero__aboutus .top_hero__aboutus-wrap .aboutus-items .item__wrap:is(.image, .text) {
  flex-grow: 1;
  position: relative;
  display: flex;
  width: 100%;
  padding: 0;
  margin: 0;
}

.top_hero .top_hero__aboutus .top_hero__aboutus-wrap .aboutus-items .item__wrap.image {
  padding-left: 0;
  padding-right: 0;
}
.top_hero .top_hero__aboutus .top_hero__aboutus-wrap .aboutus-items .item__wrap.image .item {
  flex-grow: 1;
  position: relative;
  display: flex;
  width: 100%;
}

/* トップページ｜ファーストビュー｜About Us｜スライド（top_hero.php） */
.top_hero .top_hero__aboutus .top_hero__aboutus-wrap .aboutus-items .item__wrap.image .item .slide_body {
  width: 100%;
}
.top_hero .top_hero__aboutus .top_hero__aboutus-wrap .aboutus-items .item__wrap.image .item .slide_body .slide_carousels .carousel_image {
  border-radius: 0;
  border-top-right-radius: 0.5em;
  border-bottom-right-radius: 0.5em;
}
.top_hero .top_hero__aboutus .top_hero__aboutus-wrap .aboutus-items .item__wrap.image .item .slide_body .slide_dots .carousel_dot.active span {
  background-color: var(--color-univ-blue);
}
/* トップページ｜ファーストビュー｜About Us｜スライド（static）（top_hero.php） */
.top_hero .top_hero__aboutus .top_hero__aboutus-wrap .aboutus-items .item__wrap.image .item .slide_body_none {
  width: 100%;
}
.top_hero .top_hero__aboutus .top_hero__aboutus-wrap .aboutus-items .item__wrap.image .item .slide_body_none .static_image {
  border-radius: 0;
  border-top-right-radius: 0.5em;
  border-bottom-right-radius: 0.5em;
}

.top_hero .top_hero__aboutus .top_hero__aboutus-wrap .aboutus-items .item__wrap.text {
  padding-left: 0;
  padding-right: 4.0em;
}
.top_hero .top_hero__aboutus .top_hero__aboutus-wrap .aboutus-items .item__wrap.text .item {
  flex-grow: 1;
  position: relative;
  display: block;
  width: 100%;
  max-width: calc((1400px - 4.0em) / 2);
}

@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .top_hero .top_hero__aboutus .top_hero__aboutus-wrap .aboutus-items {
    max-width: 100%;
  }
  .top_hero .top_hero__aboutus .top_hero__aboutus-wrap .aboutus-items .item__wrap.image {
    padding-left: 0;
    padding-right: 2.0em;
  }
  .top_hero .top_hero__aboutus .top_hero__aboutus-wrap .aboutus-items .item__wrap.text {
    padding-left: 2.0em;
    padding-right: 2.0em;
  }
}
@media screen and (max-width: 567px) {}


/* ##############################################
## トップページ｜事業一覧（top_facil.php）
############################################## */
.top_facil {
  position: relative;
  display: block;
  width: 100%;
  background-color: var(--color-univ-blue);
  background-image: url('../images/top_facil_bg.png');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/top_facil_bg.png'); */
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: top center;
  padding: 6.0em 4.0em;
  margin: 0;
}
.top_facil .top_facil__wrap {
  position: relative;
  display: block;
  width: 100%;
  max-width: 1400px;
  padding: 0;
  margin: 0 auto;
}

.top_facil .top_facil__wrap .top_facil__title {
  position: relative;
  display: flex;
  gap: 3.0em;
  align-items: center;
  width: 100%;
  margin: 0;
  margin-bottom: 2.0em;
}
.top_facil .top_facil__wrap .top_facil__title .title_name {
  position: relative;
  display: block;
  width: 100%;
  flex-grow: 1;
}
.top_facil .top_facil__wrap .top_facil__title .title_name h2 {}
.top_facil .top_facil__wrap .top_facil__title .title_btn {
  position: relative;
  display: block;
  flex-grow: 0;
}

.top_facil .top_facil__wrap .top_facil__main {
  position: relative;
  display: flex;
  gap: 3.0em;
  width: 100%;
}
@media screen and (max-width: 1023px) {
  .top_facil {
    padding: 6.0em 2.0em;
  }
  .top_facil .top_facil__wrap .top_facil__main {
    flex-direction: column;
    gap: 2.0em;
  }
}
@media screen and (max-width: 767px) {
  .top_facil .top_facil__wrap .top_facil__title {
    flex-direction: column;
    gap: 2.0em;
  }
}
@media screen and (max-width: 567px) {}

/* トップページ｜事業一覧｜タブ（リスト）（top_facil.php） */
.top_facil .top_facil__wrap .top_facil__main .top_facil__side {
  flex-grow: 0;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.25em;
  width: max-content;
  max-width: 100%;
}
.top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item {
  position: relative;
  display: flex;
  gap: 0.75em;
  width: 100%;
  line-height: 1.5;
  padding: 0.75em 1.25em;
  cursor: pointer;
}
.top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item:first-child {
  border-top-left-radius: 0.5em;
  border-top-right-radius: 0.5em;
}
.top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item:last-child {
  border-bottom-left-radius: 0.5em;
  border-bottom-right-radius: 0.5em;
}
.top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item .item-name {
  flex-grow: 1;
  position: relative;
  display: flex;
  align-items: center;
  font-size: 0.9em;
}
.top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item .item-count {
  flex-grow: 0;
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  max-width: max-content;
  font-size: 0.8em;
}
@media screen and (max-width: 1023px) {
  .top_facil .top_facil__wrap .top_facil__main .top_facil__side {
    flex-direction: row;
    flex-wrap: wrap;
    /*gap: 0.25em;*/
    width: 100%;
  }
  .top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item {
    gap: 0.5em;
    max-width: calc((100% - 0.25em * 1) / 2);
    padding: 0.75em 0.5em;
  }
  .top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item:first-child {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
  }
  .top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item:last-child {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }
  .top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item .item-name {
    font-size: 0.8em;
  }
}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* トップページ｜事業一覧｜タブ（本体）（top_facil.php） */
.top_facil .top_facil__wrap .top_facil__main .top_facil__body {
  flex-grow: 1;
  position: relative;
  display: flex;
  width: 100%;
}
.top_facil .top_facil__wrap .top_facil__main .top_facil__body .top_facil__tab {
  flex-grow: 1;
  position: relative;
  /*display: block;*/
  width: 100%;
}
.top_facil .top_facil__wrap .top_facil__main .top_facil__body .top_facil__tab .tab_items {
  flex-grow: 0;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 1.0em;
  width: 100%;
}
.top_facil .top_facil__wrap .top_facil__main .top_facil__body .top_facil__tab .tab_items .tab_item {
  flex-grow: 1;
  position: relative;
  display: flex;
  width: 100%;
  max-width: calc((100% - 1.0em * 2) / 3);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .top_facil .top_facil__wrap .top_facil__main .top_facil__body .top_facil__tab .tab_items .tab_item {
    max-width: calc((100% - 1.0em * 1) / 2);
  }
}
@media screen and (max-width: 567px) {
  .top_facil .top_facil__wrap .top_facil__main .top_facil__body .top_facil__tab .tab_items .tab_item {
    max-width: calc((100% - 1.0em * 0) / 1);
  }
}

/* トップページ｜事業一覧｜タブ（本体）（（top_facil.php、top_facil-item.php） */
.top_facil .tab_item a {
  flex-grow: 1;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.5em;
  width: 100%;
  text-decoration: none;
  line-height: 1.5;
  padding: 0.5em;
  background-color: var(--color-univ-white);
  border-radius: 0.5em;
}
.top_facil .tab_item a .tab_item-image {
  flex-grow: 0;
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  padding-top: calc(100% * 2 / 3);
  border-top-left-radius: 0.25em;
  border-top-right-radius: 0.25em;
  overflow: hidden;
}
.top_facil .tab_item a .tab_item-image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.0);
  opacity: 1.0;
  transition: 0.25s;
}
.top_facil .tab_item a:hover .tab_item-image img {
  transform: scale(1.05);
  opacity: 0.8;
}
.top_facil .tab_item a .tab_item-text {
  flex-grow: 1;
  position: relative;
  display: block;
  width: 100%;
  padding: 0.5em;
  padding-right: 2.5em;
}
.top_facil .tab_item a .tab_item-text::before {
  display: block;
  position: absolute;
  top: 50%;
  right: 0.25em;
  transform: translate(0, -50%);
  width: 1.5em;
  padding: 0;
  padding-top: 1.5em;
  background-image: url('../images/ico_arrow_r_olivegray.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_olivegray.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
  transition: 0.15s;
}
.top_facil .tab_item a:hover .tab_item-text::before {
  right: 0;
}
.top_facil .tab_item a .tab_item-text .text-title {
  position: relative;
  display: block;
  font-weight: 500;
  color: var(--color-univ-brown);
  transition: 0.15s;
}
.top_facil .tab_item a:hover .tab_item-text .text-title {
  color: var(--color-univ-yellow);
}
.top_facil .tab_item a .tab_item-text .text-parent {
  position: relative;
  display: block;
  width: max-content;
  max-width: 100%;
  font-size: 0.8em;
  padding: 0.1em 0.5em;
  color: var(--color-univ-brown);
  background-color: var(--color-univ-bg-beige);
  border: 1px solid var(--color-univ-brown);
  border-radius: 0.25em;
  margin: 0;
  margin-top: 0.5em;
  transition: 0.15s;
}
.top_facil .tab_item a:hover .tab_item-text .text-parent {
  color: var(--color-univ-olivegray);
  border: 1px solid var(--color-univ-olivegray);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* トップページ｜事業一覧｜タブ切替（top_facil.php） */
.top_facil .top_facil__wrap .top_facil__main .top_facil__body .top_facil__tab {
  display: none;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.top_facil .top_facil__wrap .top_facil__main .top_facil__body .top_facil__tab.is-active {
  display: block;
  opacity: 1;
}
.top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item {
  background-color: var(--color-univ-blue_paletone);
}
.top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item.is-active {
  background-color: var(--color-univ-white);
}
.top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item .item-name {
  color: var(--color-univ-white);
}
.top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item.is-active .item-name {
  color: var(--color-univ-black);
}
.top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item .item-count {
  color: var(--color-univ-blue);
}
.top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item.is-active .item-count {
  color: var(--color-univ-black);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* トップページ｜事業一覧｜タブ切替（「すべて表示」制御）（top_facil.php） */
.top_facil__all-inner {
  /*position: relative;*/
  transition: max-height 0.4s ease;
}
.top_facil__all-inner.is-collapsed {
  max-height: 80vh;
  overflow: hidden;
}
/* トップページ｜事業一覧｜タブ切替（「すべて表示」制御）｜グラデーションぼかし（top_facil.php） */
.top_facil__all-inner.is-collapsed::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 40vh;
  pointer-events: none;
  background: linear-gradient(to bottom, var(--color-univ-black_tp-00) 0%, var(--color-univ-black_tp-7f) 50%, var(--color-univ-blue) 100% );
}
/* トップページ｜事業一覧｜タブ切替（「すべて表示」制御）｜ボタン（top_facil.php） */
.top_facil__more {
  display: block;
  position: relative;
  margin-top: 1.5em;
}
.top_facil__more-btn {
  display: block;
  position: relative;
  width: 100%;
  max-width: 200px;
  text-align: center;
  font-size: 0.9em;
  background-color: var(--color-univ-white);
  color: var(--color-univ-black);
  border: none;
  border-radius: 1.5em;
  padding: 0.75em 2.0em;
  margin: 0 auto;
  cursor: pointer;
  transition: opacity 0.3s ease;
}
.top_facil__more-btn::before {
  display: block;
  position: absolute;
  top: 50%;
  right: 0.5em;
  transform: translate(0, -50%);
  width: 1.5em;
  padding: 0;
  padding-top: 1.5em;
  border-radius: 50%;
  background-color: var(--color-univ-gray);
  background-image: url('../images/ico_arrow_b_white.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_b_white.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
}
.top_facil__more-btn:hover {
  opacity: 0.8;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}


/* ##############################################
## トップページ｜お知らせ（top_notice.php） 
############################################## */
.top_notice {
  position: relative;
  display: block;
  width: 100%;
  padding: 6.0em 4.0em;
  margin: 0;
  z-index: 10;
}
.top_notice::before {
  display: block;
  position: absolute;
  top: calc(6.0em / 2);
  right: 0;
  width: 85%;
  height: calc(100% - 6.0em);
  background-color: var(--color-univ-white);
  border-top-left-radius: 5.0em;
  border-bottom-left-radius: 5.0em;
  content: '';
  opacity: 0.5;
  z-index: 5;
}
.top_notice .top_notice__wrap {
  position: relative;
  display: block;
  width: 100%;
  max-width: 1400px;
  padding: 0;
  margin: 0 auto;
  z-index: 100;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .top_notice {
    padding: 6.0em 2.0em;
  }
}
@media screen and (max-width: 567px) {}

/* トップページ｜お知らせ｜タイトル（top_notice.php） */
.top_notice .top_notice__title {
  margin-bottom: 2.0em;
}
.top_notice .top_notice__title h2 {
  padding: 0;
  padding-bottom: 1.0em;
  border: none;
  border-bottom: 1px solid var(--color-univ-olivegray);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* トップページ｜お知らせ｜インデックス（top_notice.php） */
.top_notice .top_notice__idx {
  position: relative;
  display: flex;
  gap: 2.0em;
  margin: 0;
  margin-bottom: 2.0em;
}
.top_notice .top_notice__idx .top_notice__idx-list {
  flex-grow: 1;
}
.top_notice .top_notice__idx .top_notice__idx-btn {
  flex-grow: 0;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .top_notice .top_notice__idx {
    flex-direction: column;
    gap: 1.0em;
  }
  .top_notice .top_notice__idx .top_notice__idx-list {
    flex-grow: 1;
    width: 100%;
  }
  .top_notice .top_notice__idx .top_notice__idx-btn {
    flex-grow: 1;
    width: 100%;
  }
}
@media screen and (max-width: 567px) {}

.top_notice .top_notice__idx .top_notice__idx-list {
  position: relative;
  display: flex;
  align-items: center;
}
.top_notice .top_notice__idx .top_notice__idx-items {
  /* ul */
  list-style-type: none;
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 0.5em;
  padding: 0;
  margin: 0;
}
.top_notice .top_notice__idx .top_notice__idx-item {
  /* li */
  flex-grow: 0;
  width: max-content;
  max-width: 100%;
}
.top_notice .top_notice__idx .top_notice__idx-item span {
  position: relative;
  display: block;
  line-height: 1.5;
  font-size: 0.8em;
  border-radius: 1.25em;
  width: max-content;
  max-width: 100%;
  padding: 0.15em 0.75em 0.25em;
  margin: 0;
  cursor: pointer;
  transition: all 0.1s;
}

.top_notice .top_notice__idx .top_notice__idx-btn {}
.top_notice .top_notice__idx .top_notice__idx-btn a {}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* トップページ｜お知らせ｜タブ（top_notice.php） */
.top_notice .top_notice__tab {}
.top_notice .top_notice__tab-items {
  /* ul */
  list-style-type: none;
  position: relative;
  /*display: block;*/
  width: 100%;
  padding: 0;
  margin: 0;
}
.top_notice .top_notice__tab-item-wrap {
  /* li */
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
}
.top_notice .top_notice__tab-item-wrap a {
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  row-gap: 0.5em;
  column-gap: 1.5em;
  width: 100%;
  text-decoration: none;
  border: none;
  border-bottom: 1px solid var(--color-univ-olivegray);
  padding: 1.0em 0;
  padding-right: 3.0em;
  margin: 0;
}
.top_notice .top_notice__tab-item-wrap a.no-event {
  padding-right: 0;
  pointer-events: none!important;
}
.top_notice .top_notice__tab-item-wrap a::before {
  display: block;
  position: absolute;
  top: 50%;
  right: 0.25em;
  transform: translate(0, -50%);
  width: 1.5em;
  padding: 0;
  padding-top: 1.5em;
  background-image: url('../images/ico_arrow_r_olivegray.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_olivegray.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
  transition: 0.15s;
}
.top_notice .top_notice__tab-item-wrap a.no-event::before {
  display: none;
}
.top_notice .top_notice__tab-item-wrap a:hover::before {
  right: 0;
}
.top_notice .top_notice__tab-item-wrap a .item-date {
  flex-grow: 0;
  position: relative;
  display: flex;
  align-items: center;
  min-width: 5.0em;
}
.top_notice .top_notice__tab-item-wrap a :is(.item-date, .item-cat, .item-title) span {
  position: relative;
  display: block;
  line-height: 1.5;
  transition: 0.15s;
}
.top_notice .top_notice__tab-item-wrap a .item-date span {
  color: var(--color-univ-brown);
}
.top_notice .top_notice__tab-item-wrap a:not(.no-event):hover .item-date span {
  color: var(--color-univ-yellow);
}
.top_notice .top_notice__tab-item-wrap a .item-cat {
  flex-grow: 0;
  position: relative;
  display: flex;
  align-items: center;
  min-width: 8.0em;
}
.top_notice .top_notice__tab-item-wrap a .item-cat span {
  width: 100%;
  text-align: center;
  font-size: 0.8em;
  color: var(--color-univ-blue);
  background-color: var(--color-univ-blue_lighttone);
  border: 1px solid var(--color-univ-blue_paletone);
  border-radius: 0.25em;
  padding: 0.2em 0.75em 0.3em;
}
.top_notice .top_notice__tab-item-wrap a:not(.no-event):hover .item-cat span {
  color: var(--color-univ-blue_paletone);
}
.top_notice .top_notice__tab-item-wrap a .item-title {
  flex-grow: 1;
  position: relative;
  display: flex;
  align-items: center;
}
.top_notice .top_notice__tab-item-wrap a .item-title span {
  color: var(--color-univ-brown);
}
.top_notice .top_notice__tab-item-wrap a:not(.no-event):hover .item-title span {
  color: var(--color-univ-yellow);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .top_notice .top_notice__tab-item-wrap a .item-title {
    width: 100%;
  }
}
@media screen and (max-width: 567px) {}

/* トップページ｜お知らせ（タブ切替）（top_notice.php） */
.top_notice .top_notice__tab-items {
  display: none;
}
.top_notice .top_notice__tab-items.is-active {
  display: block;
}
.top_notice .top_notice__idx .top_notice__idx-item span {
  color: var(--color-univ-olivegray);
  background-color: var(--color-univ-white);
  border: 1px solid var(--color-univ-olivegray);
}
.top_notice .top_notice__idx .top_notice__idx-item.is-active span {
  color: var(--color-univ-white);
  background-color: var(--color-univ-brown);
  border: 1px solid var(--color-univ-brown);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}


/* ##############################################
## トップページ｜トピックス（top_topics.php）
############################################## */
.top_topics {
  position: relative;
  display: block;
  width: 100%;
  padding: 6.0em 4.0em;
  margin: 0;
  z-index: 10;
}
.top_topics::before,
.top_topics::after {
  display: block;
  position: absolute;
  content: '';
}
.top_topics::before { 
  top: calc(6.0em / 2);
  left: 0;
  width: 85%;
  height: 100vh;
  background-color: var(--color-univ-white);
  border-top-right-radius: 5.0em;
  border-bottom-right-radius: 5.0em;
  opacity: 0.5;
  z-index: 5;
}
.top_topics::after {
  top: 0;
  right: 2.0em;
  width: 20%;
  background-image: url('../images/top_image-bird_2.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/top_image-bird_2.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  padding: 0;
  padding-top: calc(20% * 265 / 360);
  z-index: 50;
}
.top_topics .top_topics__wrap {
  position: relative;
  display: block;
  width: 100%;
  max-width: 1400px;
  padding: 0;
  margin: 0 auto;
  z-index: 100;
}

.top_topics .top_topics__main {
  position: relative;
  display: flex;
  gap: 3.0em;
  width: 100%;
}
.top_topics .top_topics__main .top_topics__idx {
  flex-wrap: 0;
  margin: 0;
  margin-bottom: 2.0em;
}
.top_topics .top_topics__main .top_topics__tab {
  flex-wrap: 1;
  width: 100%;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .top_topics {
    padding: 6.0em 2.0em;
  }
  .top_topics .top_topics__main {
    flex-direction: column;
    gap: 2.0em;
  }
  .top_topics .top_topics__main .top_topics__idx {
    flex-wrap: 0;
    width: 100%;
  }
  .top_topics .top_topics__main .top_topics__tab {
    flex-wrap: 1;
    width: 100%;
  }
  .top_topics::after {
    width: 180px;
    padding-top: calc(180px * 265 / 360);
  }
}
@media screen and (max-width: 567px) {}

/* トップページ｜トピックス｜タイトル（top_topics.php） */
.top_topics .top_topics__title {
  margin: 0;
  margin-bottom: 2.0em;
}
.top_topics .top_topics__title h2 {}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* トップページ｜トピックス｜インデックス（top_topics.php） */
.top_topics .top_topics__idx {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 2.0em;
}
.top_topics .top_topics__idx .top_topics__idx-list {}
.top_topics .top_topics__idx .top_topics__idx-btn {}

.top_topics .top_topics__idx .top_topics__idx-list {}
.top_topics .top_topics__idx .top_topics__idx-items {
  /* ul */
  list-style-type: none;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.5em;
  padding: 0;
  margin: 0;
}
.top_topics .top_topics__idx .top_topics__idx-item {
  /* li */
  width: 100%;
}
.top_topics .top_topics__idx .top_topics__idx-item span {
  position: relative;
  display: block;
  line-height: 1.5;
  font-size: 0.8em;
  border-radius: 1.25em;
  width: max-content;
  max-width: 100%;
  padding: 0.15em 0.75em 0.25em;
  margin: 0;
  cursor: pointer;
  transition: all 0.1s;
}

.top_topics .top_topics__idx .top_topics__idx-btn {}
.top_topics .top_topics__idx .top_topics__idx-btn a {}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .top_topics .top_topics__idx .top_topics__idx-items {
    /* ul */
    flex-direction: row;
    flex-wrap: wrap;
  }
  .top_topics .top_topics__idx .top_topics__idx-item {
    /* li */
    width: max-content;
    max-width: 100%;
  }
}
@media screen and (max-width: 567px) {}

/* トップページ｜トピックス｜タブ（top_topics.php、top_topics-tab-item.php） */
.top_topics .top_topics__tab {}
.top_topics .top_topics__tab-items {
  position: relative;
  /*display: flex;*/
  gap: 2.0em;
  flex-wrap: wrap;
  width: 100%;
  margin: 0;
}
.top_topics .top_topics__tab-items .top_topics__tab-item-wrap {
  position: relative;
  display: flex;
  width: calc((100% - 2.0em * 1) / 2);
}
.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a {
  flex-grow: 1;
  position: relative;
  display: flex;
  flex-direction: column;
  text-decoration: none;
}
.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a:hover {
  color: var(--color-univ-yellow);
}

.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a .item-image {
  flex-grow: 0;
  position: relative;
  display: block;
  width: 100%;
  margin: 0;
}
.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a .item-image .image {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  padding-top: calc(100% * 2 / 3);
  border-radius: 0.5em;
  overflow: hidden;
}
.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a .item-image .image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a .item-title {
  flex-grow: 0;
  position: relative;
  display: block;
  margin: 0;
  margin-top: 0.5em;
}
.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a .item-title span {
  position: relative;
  display: block;
  font-size: 1.1em;
  font-weight: 500;
  transition: all 0.1s;
}
.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a:not(:hover) .item-title span {
  color: var(--color-univ-brown);
}

.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a .item-summary {
  flex-grow: 1;
  position: relative;
  display: block;
  margin: 0;
  margin-top: 0.25em;
}
.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a .item-summary span {
  position: relative;
  display: block;
  font-size: 0.9em;
  font-weight: 400;
  transition: all 0.1s;
}
.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a:not(:hover) .item-summary span {
  color: var(--color-univ-olivegray);
}

.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a .item-date-office {
  flex-grow: 0;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 2.0em;
  margin: 0;
  margin-top: 0.5em;
}
.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a .item-date-office :is(.date, .office),
.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a .item-date-office :is(.date, .office) span {
  position: relative;
  display: block;
  margin: 0;
}
.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a .item-date-office .date {
  flex-grow: 1;
}
.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a .item-date-office .date span {
  line-height: 1.5;
  font-family: "Barlow", sans-serif;
  font-weight: 400;
  transition: all 0.1s;
}
.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a:not(:hover) .item-date-office .date span {
  color: var(--color-univ-brown);
}
.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a .item-date-office .office {
  flex-grow: 0;
}
.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a .item-date-office .office span {
  line-height: 1.5;
  font-size: 0.8em;
  padding: 0.15em 0.75em 0.25em;
  background-color: var(--color-univ-white);
  border: 1px solid;
  border-radius: 1.25em;
  width: max-content;
  max-width: 100%;
  transition: all 0.1s;
}
.top_topics .top_topics__tab-items .top_topics__tab-item-wrap a:not(:hover) .item-date-office .office span {
  color: var(--color-univ-olivegray);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .top_topics .top_topics__tab-items {
    flex-direction: column;
  }
  .top_topics .top_topics__tab-items .top_topics__tab-item-wrap {
    width: 100%;
  }
}
@media screen and (max-width: 567px) {}

/* トップページ｜トピックス（タブ切替）（top_topics.php、top_topics-tab-item.php） */
.top_topics .top_topics__tab-items {
  display: none;
}
.top_topics .top_topics__tab-items.is-active {
  display: flex;
}
.top_topics .top_topics__idx .top_topics__idx-item span {
  color: var(--color-univ-olivegray);
  background-color: var(--color-univ-white);
  border: 1px solid var(--color-univ-olivegray);
}
.top_topics .top_topics__idx .top_topics__idx-item.is-active span {
  color: var(--color-univ-white);
  background-color: var(--color-univ-brown);
  border: 1px solid var(--color-univ-brown);
}


/* ##############################################
## トップページ｜採用情報（top_recruit.php）
############################################## */
.top_recruit {
  position: relative;
  display: block;
  width: 100%;
  padding: 6.0em 0;
  padding-bottom: 0;
  margin: 0;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* トップページ｜採用情報｜メイン（top_recruit.php） */
.top_recruit .top_recruit__main {
  position: relative;
  display: block;
  width: 100%;
  min-height: calc(100vw * (1000 / 3840));
  background-image: url('../images/bg_top_recruit.png');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/bg_top_recruit.png'); */
  background-size: cover;
  background-repeat: no-repeat;
  background-position: bottom center;
  padding: 0 4.0em 4.0em;
  margin: 0;
}
.top_recruit .top_recruit__main .top_recruit__main-wrap {}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .top_recruit .top_recruit__main {
    padding: 0 2.0em 4.0em;
  }
}
@media screen and (max-width: 567px) {}

/* トップページ｜採用情報｜メイン｜タイトル（top_recruit.php） */
.top_recruit .top_recruit__title {
  position: relative;
  display: block;
  max-width: 100%;
  padding: 1.5em 0;
  margin: 0;
  margin-bottom: 3.0em;
  z-index: 0;
}
.top_recruit .top_recruit__title::before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  background-image: url('../images/bg_top_recruit-title.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/bg_top_recruit-title.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  mix-blend-mode: multiply;
  z-index: -1;
}
.top_recruit .top_recruit__title :is(h2,.title-sub ) {
  position: relative;
  display: block;
  width: max-content;
  max-width: 100%;
  color: var(--color-univ-brown);
  padding: 0;
  margin: 0 auto;
}
.top_recruit .top_recruit__title h2 {
  font-size: 2.0em;
  letter-spacing: 0.05em;
}
.top_recruit .top_recruit__title .title-sub {}
.top_recruit .top_recruit__title .title-sub span {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-size: 1.1em;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .top_recruit .top_recruit__title h2 {
    font-size: 1.8em;
  }
}
@media screen and (max-width: 567px) {}

/* トップページ｜採用情報｜メイン｜テキスト（top_recruit.php） */
.top_recruit .top_recruit__text {}
.top_recruit .top_recruit__text p {
  text-align: center;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* トップページ｜採用情報｜ピクチャー（top_recruit.php） */
.top_recruit .top_recruit__picture {
  display: block;
  position: relative;
  width: 100%;
  background: linear-gradient(to bottom, var(--color-univ-white), var(--color-univ-white) 85%, var(--color-univ-brown) 85%);
  overflow: hidden;
}
.top_recruit .top_recruit__picture .top_recruit__picture-wrap {
  position: relative;
  display: flex;
  gap: 1.0em;
  flex-wrap: nowrap;
  will-change: transform;
}
.top_recruit .top_recruit__picture .top_recruit__picture-wrap .top_recruit__picture-item {
  flex: 0 0 auto;
  position: relative;
  display: flex;
  min-width: calc(100vw / 6);
}
.top_recruit .top_recruit__picture .top_recruit__picture-wrap .top_recruit__picture-item .image {
  display: block;
  position: relative;
  width: 100%;
  padding: 0;
  padding-top: calc(100% * 4 / 3);
  border-radius: 0.25em;
  overflow: hidden;
}
.top_recruit .top_recruit__picture .top_recruit__picture-wrap .top_recruit__picture-item .image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  background-color: #f0f0f0;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .top_recruit .top_recruit__picture .top_recruit__picture-wrap .top_recruit__picture-item {
    min-width: calc(100vw / 3);
  }
}
@media screen and (max-width: 567px) {}




/* ##############################################
##
##  ヘッダー（header.php）
##  ヘッダー｜ヘッダーメニュー（header-menu.php）
##  ヘッダー｜ハンバーガーメニューウィンドウ（header-hamburger-window.php）
##  ヘッダー｜ヘッダー検索窓（header-search-window.php）
##  ヘッダー｜サイト内容（header.php）
##  ※クラス .site にクラス付与あり（.hamburger-menu-open, .search-open）
##
############################################## */

/* ##############################################
##  ヘッダー（header.php）
############################################## */

/* ##############################################
##  ヘッダーメニュー（header-menu.php）
############################################## */
/* ヘッダー｜ヘッダーメニュー（header-menu.php） */
header {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 1.5em;
  z-index: 100;
}
header .header_menu__wrap {
  position: relative;
  display: flex;
  gap: 1.0em;
  align-items: center;
  width: 100%;
  background-color: var(--color-univ-white);
  box-shadow: 0px 0px 10px var(--color-univ-black_tp-44);
  border-radius: 0.5em;
  padding: 0.5em;
  margin: 0;
}

header,
header .header_menu__wrap {
  transition: 0.3s;
}
.is-fixed header {
  padding: 0;
}
.is-fixed header .header_menu__wrap {
  border-radius: 0;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  header,
  .is-fixed header {
    padding: 0;
  }
  header .header_menu__wrap,
  .is-fixed header .header_menu__wrap {
    border-radius: 0;
  }
}
@media screen and (max-width: 567px) {}


header .header_menu__wrap .header_menu__logo {
  flex-grow: 0;
  position: relative;
  display: block;
  padding: 0 0.5em;
}
header .header_menu__wrap .header_menu__logo :is(h1, p) {
  font-weight: 400;
  font-size: 1.0em;
  line-height: 1.5;
  padding: 0;
  margin: 0;
}
header .header_menu__wrap .header_menu__logo :is(h1, p) a {}
header .header_menu__wrap .header_menu__logo :is(h1, p) a img {
  position: relative;
  display: block;
  width: 100%;
  /*max-width: 150px;*/
  /*max-width: 180px;*/
  max-width: 235px;
  min-width: 110px;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  header .header_menu__wrap .header_menu__logo :is(h1, p) a img {
    max-width: 180px;
  }
}
@media screen and (max-width: 567px) {}
header .header_menu__details_pc {
  flex-grow: 1;
  position: relative;
  display: none;
  flex-direction: column;
  line-height: 1.5;
}
header .header_menu__details_pc .tel {
  flex-grow: 0;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 1.5em;
  line-height: 1.3;
}
header .header_menu__details_pc .tel span {
  font-family: "Barlow", sans-serif;
  font-weight: 500;
  font-size: 1.4em;
  color: var(--color-univ-brown);
  background-color: var(--color-univ-ico-beige);
  padding: 0.2em 0.5em;
  margin: 0;
}
header .header_menu__details_pc .addr {}
header .header_menu__details_pc .addr span {
  font-size: 0.9em;
  color: var(--color-univ-brown);
}
header .header_menu__details_pc .addr a {
  text-decoration: none;
  font-weight: 500;
  color: var(--color-univ-blue);
  transition: 0.15s;
}
header .header_menu__details_pc .addr a:hover {
  color: var(--color-univ-yellow);
}
header .header_menu__wrap .header_menu__list {
  flex-grow: 1;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.5em;
}
header .header_menu__wrap .header_menu__list :is(.list_top_items, .list_bottom_items) {
  position: relative;
  display: flex;
  row-gap: 0.5em;
  column-gap: 1.5em;
  flex-wrap: wrap;
  justify-content: flex-end;
  list-style-type: none;
  line-height: 1.5;
}
header .header_menu__wrap .header_menu__list .list_top_items {}
header .header_menu__wrap .header_menu__list .list_bottom_items {}
header .header_menu__wrap .header_menu__list :is(.list_top_items, .list_bottom_items) .item {}
header .header_menu__wrap .header_menu__list :is(.list_top_items, .list_bottom_items) .item a {
  text-decoration: none;
}
header .header_menu__wrap .header_menu__list .list_top_items .item a {
  font-size: 0.75em;
  color: var(--color-univ-olivegray);
}
header .header_menu__wrap .header_menu__list .list_bottom_items .item a {
  font-size: 0.9em;
  color: var(--color-univ-brown);
}
header .header_menu__wrap .header_menu__search {
  flex-grow: 0;
  position: relative;
  display: block;
}
header .header_menu__wrap .header_menu__search .search-lens {
  position: relative;
  display: block;
  width: 40px;
  padding: 0;
  padding-top: 40px;
  background-color: var(--color-univ-brown);
  border-radius: 50%;
  cursor: pointer;
}
header .header_menu__wrap .header_menu__search .search-lens::after {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 40%;
  padding: 0;
  padding-top: 40%;
  content: '';
  background-image: url('../images/ico_search_white.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_search_white.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
header .header_menu__wrap .header_menu__ham-btn {
  flex-grow: 0;
}
header .header_menu__wrap .header_menu__ham-btn .btn {
  position: relative;
  display: block;
  width: 70px;
  padding: 0;
  padding-top: 70px;
  background-color: var(--color-univ-blue);
  border-radius: 0.5em;
  cursor: pointer;
  transition: 0.5s ease;
}
header .header_menu__wrap .header_menu__ham-btn .btn .bar {
  display: block;
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 40%;
  height: 1.5px;
  background-color: var(--color-univ-white);
  transition: 0.5s ease;
}
header .header_menu__wrap .header_menu__ham-btn .btn .bar:nth-of-type(1) {
  top: 43%;
}
header .header_menu__wrap .header_menu__ham-btn .btn .bar:nth-of-type(2) {
  top: 57%;
}
@media screen and (max-width: 1023px) {
  header .header_menu__wrap .header_menu__list .list_top_items .item a {
    font-size: 0.7em;
  }
  header .header_menu__wrap .header_menu__list .list_bottom_items .item a {
    font-size: 0.8em;
  }
}
@media screen and (max-width: 767px) {
  header .header_menu__wrap .header_menu__list :is(.list_top_items, .list_bottom_items) {
    display: none;
  }
  header .header_menu__wrap .header_menu__search .search-lens {
    width: 45px;
    padding-top: 45px;
  }
  header .header_menu__wrap .header_menu__ham-btn .btn {
    width: 50px;
    padding-top: 50px;
  }
}
@media screen and (max-width: 567px) {}

/* ヘッダーメニュー（header-menu.php） */
/* ハンバーガーメニュー｜開閉（.site に .hamburger-menu-open を付与）｜表示変更 */
header .header_menu__wrap {
  transition: 0.1s;
}
.hamburger-menu-open header .header_menu__wrap {
  background-color: transparent;
  box-shadow: 0px 0px 10px transparent;
}
.hamburger-menu-open header .header_menu__details_pc {
  display: flex;
}
.hamburger-menu-open header .header_menu__wrap .header_menu__list :is(.list_top_items, .list_bottom_items) {
  display: none;
}
.hamburger-menu-open header .header_menu__wrap .header_menu__search {
  display: none;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .hamburger-menu-open header .header_menu__details_pc {
    display: none;
  }
}
@media screen and (max-width: 567px) {}

/* ヘッダーメニュー（header-menu.php） */
/* ハンバーガーメニュー｜開閉（.hamburger-menu-open）｜ボタン（.btn .bar） */
.hamburger-menu-open header .header_menu__wrap .header_menu__ham-btn .btn {
  background-color: var(--color-univ-yellow);
}
.hamburger-menu-open header .header_menu__wrap .header_menu__ham-btn .btn .bar {
  width: 50%;
}
.hamburger-menu-open header .header_menu__wrap .header_menu__ham-btn .btn .bar:nth-of-type(1) {
  top: 50%;
  transform: translate(-50%, -50%) rotate(205deg);
}
.hamburger-menu-open header .header_menu__wrap .header_menu__ham-btn .btn .bar:nth-of-type(2) {
  top: 50%;
  transform: translate(-50%, -50%) rotate(-205deg);
}


/* ##############################################
##  ヘッダー｜ハンバーガーメニューウィンドウ（header-hamburger-window.php）
############################################## */
/* ハンバーガーメニューウィンドウ（header-search-window.php） */
.site-hamburger-window {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  font-weight: 500;
  line-height: 1.7;
  z-index: 90;
  /* スクロール処理 */
  overflow: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}
.site-hamburger-window::before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: transparent;
  opacity: 0.5;
  content: '';
}
.site-hamburger-window .shw__main {
  position: relative;
  display: none;
  width: 100%;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* ハンバーガーメニューウィンドウ（header-search-window.php） */
/* ハンバーガーメニュー｜開閉（.site に .hamburger-menu-open が付与された際に表示）（main.js） */
.site-hamburger-window {
  transform: translate(0%, -100%);
  opacity: 0;
  transition: 0.5s;
}
.hamburger-menu-open .site-hamburger-window {
  transform: translate(0%, 0%);
  opacity: 1.0;
}
.hamburger-menu-open .site-hamburger-window .shw__main {
  display: block;
}

/* ハンバーガーメニューを開く際に #back-to-top を非表示 */
.hamburger-menu-open + #back-to-top {
  display: none;
}

/* ハンバーガーメニューウィンドウ｜PC表示 */
/* ハンバーガーメニューウィンドウ｜SP・タブレット表示 */
.site-hamburger-window .shw__main :is(.main-wrap_pc, .main-wrap_sp) {
  display: none;
}
.hamburger-menu-open .site-hamburger-window .shw__main :is(.main-wrap_pc, .main-wrap_sp) {
  position: relative;
  gap: 0;
  width: 100%;
  min-height: 100vh;
}
.hamburger-menu-open .site-hamburger-window .shw__main .main-wrap_pc {
  display: flex;
  flex-direction: row;
}
.hamburger-menu-open .site-hamburger-window .shw__main .main-wrap_sp {
  display: none;
  flex-direction: column;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .hamburger-menu-open .site-hamburger-window .shw__main .main-wrap_pc {
    display: none;
  }
  .hamburger-menu-open .site-hamburger-window .shw__main .main-wrap_sp {
    display: flex;
  }
}
@media screen and (max-width: 567px) {}

/* ハンバーガーメニューウィンドウ｜PC表示 */
.main-wrap_pc .main-wrap_pc-divide {
  position: relative;
  display: flex;
  align-items: flex-start;
  /* paddin-top は header（ヘッダー）高さを取得して代入 */
}
.main-wrap_pc .main-wrap_pc-divide.left {
  flex-grow: 1;
  background-color: transparent;
}
.main-wrap_pc .main-wrap_pc-divide.right {
  flex-grow: 0;
  background-color: var(--color-univ-blue);
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body {
  flex-grow: 0;
  position: relative;
  display: flex;
  gap: 0.5em;
  width: 100%;
  padding: 1.0em;
}
.main-wrap_pc .main-wrap_pc-divide.left .main-wrap_pc-body {
  flex-wrap: wrap;
}
.main-wrap_pc .main-wrap_pc-divide.right .main-wrap_pc-body {
  flex-direction: column;
}

/* ハンバーガーメニューウィンドウ｜PC表示｜左側 */
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white {
  flex-grow: 0;
  position: relative;
  display: flex;
  gap: 0;
  flex-direction: column;
  width: 100%;
  border-radius: 0.5em;
  background-color: var(--color-univ-white);
  padding: 0.5em 1.0em;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white.half {
  width: calc((100% - 0.5em * 1) / 2);
}

/* リンク共通（.main-wrap_pc-body） */
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body a {
  text-decoration: none;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body a span {
  position: relative;
  display: block;
  transition: 0.15s;
}
.main-wrap_pc .main-wrap_pc-divide.left .main-wrap_pc-body a span {
  color: var(--color-univ-brown);
}
.main-wrap_pc .main-wrap_pc-divide.left .main-wrap_pc-body a:hover span {
  color: var(--color-univ-yellow);
}

.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white .body_block {
  flex-grow: 0;
  position: relative;
  display: flex;
  width: 100%;
  border: none;
  border-top: 1px solid var(--color-univ-ico-beige);
  padding: 0.5em 0;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white .body_block:first-child {
  border-top: none;
}

.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white .body_block > a {
  flex-grow: 0;
  position: relative;
  display: flex;
  width: 100%;
  padding: 0;
  padding-left: 2.0em;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white .body_block > a::before {
  display: block;
  position: absolute;
  top: calc(50% + 0.05em);
  left: 0;
  transform: translate(0, -50%);
  width: 1.5em;
  padding-top: 1.5em;
  background-image: url('../images/ico_btn_4.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_btn_4.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white .body_block > a .body_block-item {
  font-size: 1.0em;
}

.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white .body_block ul.body_list {
  flex-grow: 0;
  position: relative;
  column-gap: 2.0em;
  row-gap: 0;
  list-style-type: none;
  width: 100%;
  padding: 0;
  margin: 0;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white .body_block ul.body_list.col3 {
  column-count: 3; -webkit-column-count: 3; -moz-column-count: 3;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white .body_block ul.body_list.col6 {
  column-count: 6; -webkit-column-count: 6; -moz-column-count: 6;
}
@media screen and (max-width: 1023px) {
  .main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white .body_block ul.body_list.col3 {
    column-count: 2; -webkit-column-count: 2; -moz-column-count: 2;
  }
  .main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white .body_block ul.body_list.col6 {
    column-count: 4; -webkit-column-count: 4; -moz-column-count: 4;
  }
}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white .body_block ul.body_list > li {
  break-inside: avoid;
  position: relative;
  display: block;
  padding: 0;
  margin: 0;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white .body_block ul.body_list > li > a {
  position: relative;
  display: block;
  padding: 0;
  padding-top: 0.25em;
  padding-left: 1.0em;
  padding-bottom: 0.25em;
  margin: 0;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white .body_block ul.body_list > li > a::before {
  display: block;
  position: absolute;
  top: 1.05em;
  left: 0;
  transform: translate(0, -50%) rotate(-45deg);
  width: 0.35em;
  padding-top: 0.35em;
  border: 0.5em;
  border-right: 1.5px solid var(--color-univ-brown);
  border-bottom: 1.5px solid var(--color-univ-brown);
  content: '';
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white .body_block ul.body_list > li > a .body_list-item {
  font-size: 0.9em;
}

.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white .body_block ul.body_list > li ul.body_list-children {
  flex-grow: 0;
  position: relative;
  list-style-type: none;
  background-color: var(--color-univ-blue_lighttone);
  border-radius: 0.25em;
  padding: 0.5em 1.0em;
  margin: 0;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white .body_block ul.body_list > li ul.body_list-children li {
  position: relative;
  display: block;
  padding: 0;
  margin: 0;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white .body_block ul.body_list > li ul.body_list-children li a {
  position: relative;
  display: block;
  padding: 0;
  margin: 0;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_bg-white .body_block ul.body_list > li ul.body_list-children li a .body_list-child-item {
  font-size: 0.8em;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* ハンバーガーメニューウィンドウ｜PC表示｜右側 */
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_1 {
  flex-grow: 0;
  position: relative;
  display: flex;
  gap: 0.5em;
  flex-direction: column;
  width: 100%;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_1 .body_btn_1-wrap {}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_1 .body_btn_1-wrap a {
  position: relative;
  display: block;
  width: 100%;
  background-color: var(--color-univ-blue_dulltone);
  border-radius: 0.5em;
  padding: 1.0em 0;
  padding-left: 4.0em;
  padding-right: 2.5em;
  margin: 0;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_1 .body_btn_1-wrap:is(.household, .stakeholders, .job_applicant) a::before,
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_1 .body_btn_1-wrap a::after {
  display: block;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  padding: 0;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_1 .body_btn_1-wrap:is(.household, .stakeholders, .job_applicant) a::before {
  left: 0.75em;
  width: 2.5em;
  padding-top: 2.5em;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_1 .body_btn_1-wrap.household a::before {
  background-image: url('../images/ico_top_hero-sub__menu_household.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_top_hero-sub__menu_household.svg'); */
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_1 .body_btn_1-wrap.stakeholders a::before {
  background-image: url('../images/ico_top_hero-sub__menu_stakeholders.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_top_hero-sub__menu_stakeholders.svg'); */
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_1 .body_btn_1-wrap.job_applicant a::before {
  background-image: url('../images/ico_top_hero-sub__menu_job_applicant.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_top_hero-sub__menu_job_applicant.svg'); */
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_1 .body_btn_1-wrap a::after {
  right: 0.25em;
  width: 1.5em;
  padding-top: 1.5em;
  background-image: url('../images/ico_arrow_r_white.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_white.svg'); */
  transition: 0.15s;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_1 .body_btn_1-wrap a:hover::after {
  right: 0;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_1 .body_btn_1-wrap a span {
  position: relative;
  display: block;
  width: fit-content;
  max-width: 100%;
  min-width: 10.0em;
  font-size: 0.9em;
  color: var(--color-univ-white);
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_1 .body_btn_1-wrap a:hover span {
  color: var(--color-univ-yellow);
}
@media screen and (max-width: 1023px) {
  .main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_1 .body_btn_1-wrap a span {
    min-width: 8.0em;
  }
}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_2 {
  flex-grow: 0;
  position: relative;
  display: flex;
  gap: 0.5em;
  flex-direction: column;
  width: 100%;
  margin-top: 2.0em;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_2 .body_btn_2-wrap {}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_2 .body_btn_2-wrap a {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  background-color: var(--color-univ-white);
  border-radius: 0.5em;
  padding: 1.0em 1.0em;
  padding-left: 4.0em;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_2 .body_btn_2-wrap:is(.contact_phone, .contact_mail) a::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 0.75em;
  transform: translate(0, -50%);
  width: 2.5em;
  padding-top: 2.5em;
  background-color: var(--color-univ-blue_dulltone);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  border-radius: 50%;
  content: '';
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_2 .body_btn_2-wrap.contact_phone a::before {
  background-image: url('../images/ico_ftr_contact_phone_white.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_ftr_contact_phone_white.svg'); */
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_2 .body_btn_2-wrap.contact_mail a::before {
  background-image: url('../images/ico_ftr_contact_mail_white.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_ftr_contact_mail_white.svg'); */
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_2 .body_btn_2-wrap a span {
  position: relative;
  display: block;
  width: fit-content;
  max-width: 100%;
  font-size: 0.9em;
  color: var(--color-univ-blue);
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_btn_2 .body_btn_2-wrap a:hover span {
  color: var(--color-univ-yellow);
}

.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_list-sub {
  flex-grow: 1;
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  margin-top: 2.0em;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_list-sub .body_list-sub-wrap {}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_list-sub .body_list-sub-wrap ul.body_list-sub-items {
  flex-grow: 0;
  position: relative;
  column-gap: 2.0em;
  row-gap: 0;
  column-count: 1; -webkit-column-count: 1; -moz-column-count: 1;
  list-style-type: none;
  width: 100%;
  padding: 0;
  margin: 0;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_list-sub .body_list-sub-wrap ul.body_list-sub-items li {
  break-inside: avoid;
  position: relative;
  display: block;
  padding: 0;
  margin: 0;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_list-sub .body_list-sub-wrap ul.body_list-sub-items li a {
  position: relative;
  display: block;
  padding: 0;
  padding-top: 0.25em;
  padding-left: 1.0em;
  padding-bottom: 0.25em;
  margin: 0;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_list-sub .body_list-sub-wrap ul.body_list-sub-items li a::before {
  display: block;
  position: absolute;
  top: 1.05em;
  left: 0;
  transform: translate(0, -50%) rotate(-45deg);
  width: 0.35em;
  padding-top: 0.35em;
  border: 0.5em;
  border-right: 1.5px solid var(--color-univ-white);
  border-bottom: 1.5px solid var(--color-univ-white);
  content: '';
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_list-sub .body_list-sub-wrap ul.body_list-sub-items li a .body_list-sub-item {
  width: fit-content;
  color: var(--color-univ-white);
  font-size: 0.9em;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_list-sub .body_list-sub-wrap ul.body_list-sub-items li a:hover .body_list-sub-item {
  color: var(--color-univ-yellow);
}
@media screen and (max-width: 1023px) {
  .main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_list-sub .body_list-sub-wrap ul.body_list-sub-items {
    column-count: 1; -webkit-column-count: 1; -moz-column-count: 1;
  }
}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_copy {
  flex-grow: 0;
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  margin-top: 2.0em;
}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_copy .body_copy-wrap {}
.main-wrap_pc .main-wrap_pc-divide .main-wrap_pc-body .body_copy .body_copy-wrap span {
  position: relative;
  display: block;
  width: fit-content;
  max-width: 100%;
  font-weight: 400;
  font-size: 0.7em;
  color: var(--color-univ-white);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* ハンバーガーメニューウィンドウ｜SP・タブレット表示 */
.main-wrap_sp .main-wrap_sp-consol {
  width: 100%;
  /* paddin-top は header（ヘッダー）高さを取得して代入（main.js） */
}
.main-wrap_sp .main-wrap_sp-consol .main-wrap_sp-body {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 2.0em;
  padding-bottom: 6.0em;
}

.main-wrap_sp .main-wrap_sp-consol .main-wrap_sp-body ul.sp-body-list {
  position: relative;
  display: block;
  list-style-type: none;
  background-color: var(--color-univ-white);
  border-radius: 0.5em;
  padding: 0.75em 1.0em;
  margin: 0;
  margin-top: 1.0em;
}
.main-wrap_sp .main-wrap_sp-consol .main-wrap_sp-body ul.sp-body-list li {
  position: relative;
  display: block;
  padding: 0;
  margin: 0;
}
.main-wrap_sp .main-wrap_sp-consol .main-wrap_sp-body ul.sp-body-list li a {
  position: relative;
  display: block;
  text-decoration: none;
  padding: 0;
  padding-left: 1.0em;
  margin: 0;
}
.main-wrap_sp .main-wrap_sp-consol .main-wrap_sp-body ul.sp-body-list li a::before {
  display: block;
  position: absolute;
  top: 0.9em;
  left: 0;
  transform: translate(0, -50%) rotate(-45deg);
  width: 0.35em;
  padding-top: 0.35em;
  border: 0.5em;
  border-right: 1.5px solid var(--color-univ-brown);
  border-bottom: 1.5px solid var(--color-univ-brown);
  content: '';
}
.main-wrap_sp .main-wrap_sp-consol .main-wrap_sp-body ul.sp-body-list li a span {
  color: var(--color-univ-brown);
}


/* ##############################################
##  ヘッダー｜ヘッダー検索窓（header-search-window.php）
############################################## */
/* ヘッダー検索窓（header-search-window.php） */
.site-search-window {
  /*display: none;*/
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  padding: 0;
  margin: 0;
  width: 100%;
  opacity: 0;
  pointer-events: none;
  z-index: 200;
}
.site-search-window::before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  background-color: var(--color-univ-black);
  padding: 0;
  margin: 0;
  opacity: 0.5;
}
.site-search-window .ssw__main {
  display: block;
  position: relative;
  width: 100%;
  height: 100vh;
  padding: 0 2.0em;
  /* paddin-top は header（ヘッダー）高さを取得して代入 */
  margin: 0;
}
.site-search-window .ssw__main .ssw__wrap {
  display: block;
  position: relative;
  background-color: var(--color-univ-white);
  padding: 0.75em;
  padding-right: 3.0em;
}
.site-search-window .ssw__main .ssw__wrap .searchform-box {
  display: block;
  position: relative;
  width: max-content;
  max-width: 100%;
  margin: 0 auto;
}

/* ヘッダー検索窓（header-search-window.php） */
/* ヘッダー検索窓｜開閉（.search-open） */
.search-open .site-search-window {
  /*display: block;*/
  opacity: 1.0;
  pointer-events: auto;
}

/* 検索フォーム｜閉じるボタン 表示（.site-search-window のみ） */
.site-search-window .ssw__wrap .close-btn__search-window {
  display: block;
  position: absolute;
  top: 50%;
  right: 0.75em;
  transform: translate(0, -50%);
  width: 1.25em;
  padding-top: 1.25em;
  cursor: pointer;
}
.site-search-window .ssw__wrap .close-btn__search-window::before,
.site-search-window .ssw__wrap .close-btn__search-window::after {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  padding-top: 1.5px;
  background-color: var(--color-univ-brown);
  content: '';
}
.site-search-window .ssw__wrap .close-btn__search-window::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.site-search-window .ssw__wrap .close-btn__search-window::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

/* 検索窓を開く際に #back-to-top を非表示 */
.search-open + #back-to-top {
  display: none;
}


/* ##############################################
##  ヘッダー｜サイト内容（header.php）
##  ※クラス .site にクラス付与あり（.hamburger-menu-open, .search-open）
############################################## */
/* サイト内容（header.php） */
.site,
.site-body {
  position: relative;
  width: 100%;
  padding: 0;
  margin: 0;
  /*overflow: auto;*/
}

/* 'facilities' では施設・カテゴリー毎に変更あり */
.site-body {
  background-color: var(--color-univ-bg-beige);
}

/* ハンバーガーメニュー｜開閉（.hamburger-menu-open）｜ぼかし（.site-body） */
:not(.hamburger-menu-open) .site-body {
  filter: blur(0px);
  transition: filter 0.5s ease;
}
.hamburger-menu-open .site-body {
  filter: blur(15px);
}

/* メニュー開閉時のスクロール無効処理 */
:is(body, html):has(.hamburger-menu-open) {
  overflow: hidden;
}




/* ##############################################
##
##  検索フォーム（searchform.php）
##
############################################## */
.searchform_container {
  position: relative;
  display: block;
  width: 800px;
  max-width: 100%;
  border: none;
  border-bottom: 1px solid var(--color-univ-brown);
  border-radius: 0;
  background: var(--color-univ-white);
  padding: 0.55em 1.0em 0.45em;
  overflow: hidden;
}
.searchform_container input[type="text"] {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 400;
  font-size: 1.0em;
  color: var(--color-univ-brown);
  border: none;
  width: calc(100% - 3.0em);
  background: transparent;
}
.searchform_container input[type="text"]:focus {
  outline: 0;
}

.searchform_container input[type="text"]::placeholder {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 400;
  font-size: 1.0em;
  color: var(--color-univ-olivegray);
  letter-spacing: 0.05em;
  user-select: none;
}

.searchform_container input[type="submit"]#sbtn {
  position: absolute;
  top: 50%;
  right: 0.75em;
  transform: translate(0, -50%);
  width: 2.0em;
  height: 2.0em;
  font-size: 1.0em;
  text-indent: -9999px;
  color: transparent;
  border: none;
  background: url('../images/ico_search_brown.svg') no-repeat center;
  /* background: url('<?php echo get_template_directory_uri(); ?>/images/ico_search_brown.svg') no-repeat center; */
  background-size: 1.5em 1.5em;
  cursor: pointer;
  outline : none;
  overflow: hidden;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}




/* ##############################################
##
##  ヘッダーイメージ（header-image.php）
##
############################################## */
/* ヘッダーイメージ｜共通 */
.page-header,
.page-header .entry-header {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
}
.page-header {
  /* header 高さ 調整用｜padding-top は header 高さから算出して代入（main.js） */
  padding-top: 0px;
}
.page-header .entry-header :is(h1, p).entry-title {
  position: relative;
  display: block;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-size: 2.7em;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: var(--color-univ-brown);
  margin: 0;
}
.page-header :is(.en-sub ,.jp-most-post-title) {
  position: relative;
  display: block;
  width: max-content;
  max-width: 100%;
  font-size: 0.9em;
  line-height: 1.5;
  color: var(--color-univ-brown);
  padding: 0 1.0em;
  margin: 0;
  margin-bottom: 0.5em;
}
.page-header .en-sub {
  font-family: "Josefin Sans", sans-serif;
  font-weight: 400;
}
.page-header .jp-most-post-title {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 400;
  transform: translate(0, -0.2em);
}
.page-header :is(.en-sub ,.jp-most-post-title)::before,
.page-header :is(.en-sub ,.jp-most-post-title)::after {
  display: block;
  position: absolute;
  width: 0.25em;
  padding: 0;
  padding-top: 1.0em;
  content: '';
  border: 1.5px solid;
}
.page-header .en-sub::before,
.page-header .en-sub::after {
  top: 0;
}
.page-header .jp-most-post-title::before,
.page-header .jp-most-post-title::after {
  top: 0.2em;
}
.page-header :is(.en-sub ,.jp-most-post-title)::before {
  left: 0;
  border-right: none;
}
.page-header :is(.en-sub ,.jp-most-post-title)::after {
  right: 0;
  border-left: none;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .page-header .entry-header :is(h1, p).entry-title {
    font-size: 2.1em;
    line-height: 1.6;
  }
  .page-header :is(.en-sub ,.jp-most-post-title) {
    font-size: 0.8em;
  }
  .page-header :is(.en-sub ,.jp-most-post-title)::before,
  .page-header :is(.en-sub ,.jp-most-post-title)::after {
    border: 1px solid;
  }
  .page-header :is(.en-sub ,.jp-most-post-title)::before {
    border-right: none;
  }
  .page-header :is(.en-sub ,.jp-most-post-title)::after {
    border-left: none;
  }
}
@media screen and (max-width: 567px) {}


/* ヘッダーイメージ｜背景 bird-cloud_2（.bird-cloud_2） */
.page-header:has(.bird-cloud_2) {
  background-image: url('../images/bg_bird-cloud_2.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/bg_bird-cloud_2.svg');  */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom center;
}
.page-header .entry-header.bird-cloud_2 {
  position: relative;
  display: block;
  width: 100%;
  padding: 1.0em 4.0em;
}
.page-header .entry-header.bird-cloud_2 .header_wrap {
  position: relative;
  display: block;
  width: 100%;
  max-width: 1300px;
  margin: 0 auto;
}
.page-header .entry-header.bird-cloud_2 .header_wrap .header-top_main {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  min-height: calc(100vw * 400 / 1920);
}
.page-header .entry-header.bird-cloud_2 .header_wrap .header-top_main .top-title {
  flex-grow: 0;
  position: relative;
  display: block;
}
.page-header .entry-header.bird-cloud_2 .header_wrap .header-top_main .top-title .title_wrap {
  position: relative;
  display: block;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .page-header:has(.bird-cloud_2) {
    background-image: url('../images/bg_bird-cloud_sp_2.svg');
    /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/bg_bird-cloud_sp_2.svg');  */
  }
  .page-header .entry-header.bird-cloud_2 {
    padding: 1.0em 2.0em;
  }
  .page-header .entry-header.bird-cloud_2 .header_wrap .header-top_main {
    min-height: calc(100vw * 400 / 1280);
  }
}
@media screen and (max-width: 567px) {}


/* ヘッダーイメージ｜背景 akebono-shop（.akebono-shop） */
.page-header:has(.akebono-shop) {
  background-image: url('../images/bg_bird-cloud_2.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/bg_bird-cloud_2.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  /*background-position: bottom center;*/
  background-position: bottom right;
}
.page-header .entry-header.akebono-shop {
  position: relative;
  display: block;
  width: 100%;
  padding: 1.0em 4.0em;
}
.page-header .entry-header.akebono-shop .header_wrap {
  position: relative;
  display: block;
  width: 100%;
  max-width: 1300px;
  margin: 0 auto;
}
.page-header .entry-header.akebono-shop .header_wrap .header-top_main {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  /*min-height: calc(100vw * 400 / 1920);*/
}
.page-header .entry-header.akebono-shop .header_wrap .header-top_main .top-title {
  flex-grow: 0;
  position: relative;
  display: block;
}
.page-header .entry-header.akebono-shop .header_wrap .header-top_main .top-title .title_wrap {
  position: relative;
  display: block;
  padding-right: 3.0em;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .page-header:has(.akebono-shop) {
    background-image: url('../images/bg_bird-cloud_sp_2.svg');
    /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/bg_bird-cloud_sp_2.svg'); */
  }
  .page-header .entry-header.akebono-shop {
    padding: 1.0em 2.0em;
  }
  .page-header .entry-header.akebono-shop .header_wrap .header-top_main {
    /*min-height: calc(100vw * 400 / 1280);*/
  }
  .page-header .entry-header.akebono-shop .header_wrap .header-top_main .top-title .title_wrap {
    padding-right: 5.0em;
  }
}
@media screen and (max-width: 567px) {}


/* ヘッダーイメージ｜背景 青い線・黄色い鳥＋アイキャッチ画像（.blue-line-image） */
.page-header:has(.blue-line-image) {
  position: relative;
  display: block;
  width: 100%;
  background-image: url('../images/bg_blue-line-image.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/bg_blue-line-image.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom right;
  z-index: 0;
}
.page-header:has(.blue-line-image)::after {
  display: block;
  position: absolute;
  /*top: 15%;*/
  bottom: calc(100% * 1 / 3 + 4.0em);
  right: 10%;
  width: 20%;
  padding: 0;
  padding-top: 20%;
  content: '';
  background-image: url('../images/bg_blue-line-image-bird.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/bg_blue-line-image-bird.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom center;
}
.page-header .entry-header.blue-line-image {
  position: relative;
  display: block;
  width: 100%;
}
.page-header .entry-header.blue-line-image .header_wrap {
  position: relative;
  display: block;
  width: 100%;
}
.page-header .entry-header.blue-line-image .header_wrap .header-top_main {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  min-height: calc(100vw * 400 / 1920);
  padding: 0 4.0em;
  z-index: 10;
}
.page-header .entry-header.blue-line-image .header_wrap .header-top_main .top-title {
  flex-grow: 0;
  position: relative;
  display: block;
  width: 100%;
  max-width: 1300px;
  margin: 0 auto;
}
.page-header .entry-header.blue-line-image .header_wrap .header-top_main .top-title .title_wrap {
  position: relative;
  display: block;
}

.page-header .entry-header.blue-line-image .header_wrap .header-top-breadcrumb {
  position: relative;
  display: block;
  width: 100%;
  z-index: 10;
}

.page-header .entry-header.blue-line-image .header_wrap .header-top-image {
  position: relative;
  display: block;
  width: 100%;
  padding: 0 4.0em;
}
.page-header .entry-header.blue-line-image .header_wrap .header-top-image .image-wrap {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  padding-top: calc(100% * 1 / 3);
  border-radius: 1.0em;
  overflow: hidden;
}
.page-header .entry-header.blue-line-image .header_wrap .header-top-image .image-wrap img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .page-header:has(.blue-line-image)::after {
    /*top: 22%;*/
    bottom: calc(100% * 1 / 2 - 1.0em);
    right: 15%;
    width: 25%;
    padding: 0;
    padding-top: 25%;
  }
  .page-header .entry-header.blue-line-image .header_wrap :is(.header-top_main, .header-top-image) {
    padding: 0 2.0em;
  }
  .page-header .entry-header.blue-line-image .header_wrap .header-top_main {
    min-height: calc(100vw * 400 / 1280);
  }
  .page-header .entry-header.blue-line-image .header_wrap .header-top-image .image-wrap {
    padding-top: calc(100% * 1 / 2);
  }
}
@media screen and (max-width: 567px) {}




/* ##############################################
##
##  ページヘッダー｜施設紹介｜各施設｜ページ冒頭（header-image-facility.php）
##
############################################## */
/* ページヘッダー｜施設紹介｜各施設｜ページ冒頭（header-image-facility.php） */
.page-header.facility {
  /* facility_color_setting.php 内で色の可変制御 */
  /* background-color: var(--color-biz-XXXXXX); */
}
.page-header.facility .entry-header {
  padding: 0 4.0em 4.0em;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .page-header.facility .entry-header {
    padding: 0 2.0em 3.0em;
  }
}
@media screen and (max-width: 567px) {}

/* ページヘッダー｜施設紹介｜各施設｜ページ冒頭｜見出し・アイコン（header-image-facility.php） */
.page-header.facility .hero_head {
  position: relative;
  display: flex;
  gap: 1.0em;
  align-items: flex-end;
  max-width: 1200px;
  padding: 0;
  padding-top: 2.0em;
  margin: 0 auto;
}
.page-header.facility .hero_head .hero-title {
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 0%;
  position: relative;
  display: block;
  min-width: 0;
}
.page-header.facility .hero_head .hero-title h1 {
  font-size: 2.7em;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: var(--color-univ-white);
}
.page-header.facility .hero_head .hero-title h1 span {
  position: relative;
  display: inline-block;
}
.page-header.facility .hero_head .hero-title h1 .hero-dept {
  /*font-size: 0.83em;*/
  font-size: 0.8em;
}
.page-header.facility .hero_head .hero-icon {
  position: relative;
  display: inline-flex;
  gap: 0.5em;
  flex-wrap: wrap;
  flex-shrink: 0;
  max-width: calc((75px * 4) + (0.5em * 3));
}
.page-header.facility .hero_head .hero-icon .icon-image {
  flex-grow: 0;
  position: relative;
  display: block;
  width: 100%;
  max-width: 75px;
}
.page-header.facility .hero_head .hero-icon .icon-image img {
  position: relative;
  display: block;
  width: 100%;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .page-header.facility .hero_head {
    flex-direction: column;
    align-items: flex-start;
    padding-top: 1.0em;
  }
  .page-header.facility .hero_head :is(.hero-title, .hero-icon) {
    width: 100%;
  }
  .page-header.facility .hero_head .hero-title h1 {
    font-size: 2.0em;
    line-height: 1.6;
  }
  .page-header.facility .hero_head .hero-icon {
    max-width: initial;
  }
  .page-header.facility .hero_head .hero-icon .icon-image {
    width: calc((100% - 0.5em * 4) / 5);
  }
}
@media screen and (max-width: 567px) {}




/* ##############################################
##
##  フッター（footer.php）
##
############################################## */
/* フッター｜共通部分上部（問い合わせ下部余白）（footer.php） */
:root {
  --radius-ft-over: 2.5em;
  /* border-radius: var(--radius-fieldover); */
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  :root {
    --radius-ft-over: 2.0em;
  }
}
@media screen and (max-width: 567px) {
  :root {
    --radius-ft-over: 1.5em;
  }
}

/* フッター｜お問い合わせ（通常・採用情報）（footer.php） */
:is(.ft-contact-rec, .ft-contact-std) {
  position: relative;
  display: block;
  width: 100%;
  padding: 2.0em;
  padding-top: calc(2 * var(--radius-ft-over));
  padding-bottom: calc(3 * var(--radius-ft-over));
}
:is(.ft-contact-rec, .ft-contact-std) :is(a, a:hover) {
  transition: all 0.1s;
}

/* フッター｜お問い合わせ（通常）※採用情報以外（footer.php） */
.ft-contact-std {
  color: var(--color-univ-white);
  background-color: var(--color-univ-brown);
}
.ft-contact-std .std-wrap {
  position: relative;
  display: flex;
  gap: calc(2 * var(--radius-ft-over));
  width: 100%;
  max-width: 1300px;
  margin: 0 auto;
}
.ft-contact-std .std-wrap::before {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  width: 1.5px;
  height: 100%;
  content: '';
  background-color: var(--color-univ-olivegray);
}
.ft-contact-std .std-wrap .wrap_body {
  flex-grow: 1;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1.0em;
  width: 100%;
}
.ft-contact-std .std-wrap .wrap_body :is(.body_title, .body_btn) {
  flex-grow: 0;
}
.ft-contact-std .std-wrap .wrap_body .body_text {
  flex-grow: 1;
}

.ft-contact-std .std-wrap .wrap_body .body_title {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  min-height: 3.0em;
  padding: 0;
  padding-left: 3.75em;
  line-height: 1.5;
}
.ft-contact-std .std-wrap .wrap_body:is(.phone, .mail) .body_title::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  width: 3.0em;
  padding: 0;
  padding-top: 3.0em;
  background-color: var(--color-univ-yellow);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  border-radius: 50%;
  content: '';
}
.ft-contact-std .std-wrap .wrap_body.phone .body_title::before {
  background-image: url('../images/ico_ftr_contact_phone.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_ftr_contact_phone.svg'); */
}
.ft-contact-std .std-wrap .wrap_body.mail .body_title::before {
  background-image: url('../images/ico_ftr_contact_mail.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_ftr_contact_mail.svg'); */
}
.ft-contact-std .std-wrap .wrap_body .body_title span {
  font-weight: 500;
  font-size: 1.6em;
}

.ft-contact-std .std-wrap .wrap_body .body_text {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.ft-contact-std .std-wrap .wrap_body .body_text span {
  display: inline-block;
  position: relative;
}

.ft-contact-std .std-wrap .wrap_body .body_btn {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.ft-contact-std .std-wrap .wrap_body .body_btn a {
  display: inline-block;
  position: relative;
  width: 100%;
  color: var(--color-univ-brown);
  background-color: var(--color-univ-white);
  border-radius: 0.25em;
  box-shadow: none;
  font-size: 1.0em;
  text-decoration: none;
  padding: 1.25em 1.5em;
  padding-left: 3.75em;
}
.ft-contact-std .std-wrap .wrap_body .body_btn a:hover {
  color: var(--color-univ-yellow);
}
.ft-contact-std .std-wrap .wrap_body .body_btn a::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 1.0em;
  transform: translate(0, -50%);
  width: 2.0em;
  height: 2.0em;
  padding: 0;
  content: '';
  background-image: url('../images/ico_btn_2.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_btn_2.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .ft-contact-std .std-wrap {
    flex-direction: column;
    gap: calc(2 * 1.5 * var(--radius-ft-over));
  }
  .ft-contact-std .std-wrap::before {
    display: none;
  }
  .ft-contact-std .std-wrap .wrap_body.mail::before {
    display: block;
    position: absolute;
    top: calc(-1 * 1.5 * var(--radius-ft-over));
    left: 0;
    transform: translate(0, -50%);
    width: 100%;
    height: 1.5px;
    content: '';
    background-color: var(--color-univ-olivegray);
  }
  .ft-contact-std .std-wrap .wrap_body .body_title span {
    font-size: 1.4em;
  }
}
@media screen and (max-width: 567px) {}

/* フッター｜お問い合わせ（採用情報）（footer.php） */
.ft-contact-rec {
  color: var(--color-univ-brown);
  background-color: transparent;
  z-index: 0;
}
.ft-contact-rec::before,
.ft-contact-rec::after {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
}
.ft-contact-rec::before {
  /* ダミー画像（要差し替え） */
  background-image: url('../images/rec-top_work-env_DSC1895.jpg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/rec-top_work-env_DSC1895.jpg'); */
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  mix-blend-mode: multiply;
  z-index: -1;
}
.ft-contact-rec::after {
  background-color: var(--color-univ-brown);
  z-index: -2;
}

.ft-contact-rec .rec-wrap {
  position: relative;
  display: flex;
  gap: 0.25em;
  width: 100%;
  max-width: 1300px;
  margin: 0 auto;
}
.ft-contact-rec .rec-wrap .wrap_body {
  flex-grow: 1;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1.0em;
  width: 100%;
  padding: 2.0em;
}
.ft-contact-rec .rec-wrap .wrap_body::before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  background-color: var(--color-univ-white);
  opacity: 0.8;
}
.ft-contact-rec .rec-wrap .wrap_body.contact {}
.ft-contact-rec .rec-wrap .wrap_body.visit {}

.ft-contact-rec .rec-wrap .wrap_body :is(.body_title, .body_btn_wrap) {
  flex-grow: 0;
}
.ft-contact-rec .rec-wrap .wrap_body .body_text {
  flex-grow: 1;
}

.ft-contact-rec .rec-wrap .wrap_body .body_title {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  padding: 0;
  line-height: 1.5;
}
.ft-contact-rec .rec-wrap .wrap_body .body_title span {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-size: 1.6em;
}

.ft-contact-rec .rec-wrap .wrap_body .body_text {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.ft-contact-rec .rec-wrap .wrap_body .body_text span {
  display: inline-block;
  position: relative;
}

.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap {
  position: relative;
  display: flex;
  gap: 0.25em;
  justify-content: flex-start;
}
.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap :is(.btn_phone, .btn_mail, .btn_visit) {
  position: relative;
  display: flex;
  width: 100%;
  max-width: calc((100% - 0.25em) / 2);
}
.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap .btn_phone {}
.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap .btn_mail {}
.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap .btn_visit {}

.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap :is(.btn_phone, .btn_mail, .btn_visit) a {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  background-color: var(--color-univ-brown);
  border-radius: 0.25em;
  box-shadow: none;
  font-size: 1.0em;
  text-decoration: none;
  padding: 1.25em 3.5em;
}
.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap .btn_phone a {}
.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap .btn_mail a {}
.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap .btn_visit a {
  padding-left: 1.5em;
}
.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap :is(.btn_phone, .btn_mail, .btn_visit) a:not(:hover) {
  color: var(--color-univ-white)!important;
}
.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap :is(.btn_phone, .btn_mail, .btn_visit) a:hover {
  color: var(--color-univ-yellow);
}
.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap :is(.btn_phone, .btn_mail, .btn_visit) a::before {
  position: absolute;
  top: 50%;
  left: 0.5em;
  transform: translate(0, -50%);
  width: 3.0em;
  padding: 0;
  padding-top: 3.0em;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
}
.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap .btn_phone a::before {
  background-image: url('../images/ico_ftr_contact_phone_white.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_ftr_contact_phone_white.svg'); */
}
.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap .btn_mail a::before {
  background-image: url('../images/ico_ftr_contact_mail_white.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_ftr_contact_mail_white.svg'); */
}
.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap :is(.btn_phone, .btn_mail) a::before {
  display: block;
}
.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap .btn_visit a::before {
  display: none;
}
.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap :is(.btn_phone, .btn_mail, .btn_visit) a::after {
  position: absolute;
  top: 50%;
  right: 0.75em;
  transform: translate(0, -50%);
  width: 1.5em;
  padding: 0;
  padding-top: 1.5em;
  background-color: var(--color-rec-main);
  border-radius: 0.25em;
  background-image: url('../images/ico_arrow_r_white.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_white.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
}
.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap .btn_phone a::after {
  display: none;
}
.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap :is(.btn_mail, .btn_visit) a::after {
  display: block;
}
.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap :is(.btn_phone, .btn_mail, .btn_visit) a span {
  font-size: 0.87em;
}
.ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap .btn_phone a span {
  display: inline-block;
  transform: scale(1.5);
  transform-origin: center left;
}
@media screen and (max-width: 1023px) {
  .ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap {
    flex-direction: column;
    align-items: center;
  }
  .ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap :is(.btn_phone, .btn_mail, .btn_visit) {
    max-width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .ft-contact-rec .rec-wrap {
    flex-direction: column;
  }
  .ft-contact-rec .rec-wrap .wrap_body .body_title span {
    font-size: 1.4em;
  }
  .ft-contact-rec .rec-wrap .wrap_body .body_btn_wrap :is(.btn_phone, .btn_mail, .btn_visit) a span {
    font-size: 1.0em;
  }
}
@media screen and (max-width: 567px) {}


/* フッター｜共通（footer.php） */
footer {
  position: relative;
  display: block;
  width: 100%;
  color: var(--color-univ-brown);
  background-color: var(--color-univ-bg-beige);
  padding-top: 2.0em;
  padding-left: 4.0em;
  padding-right: 4.0em;
  padding-bottom: 6.0em;
}
footer::after {
  display: block;
  position: absolute;
  left: 0;
  top: 1px;
  transform: translate(0%, -100%);
  width: 100%;
  height: calc(var(--radius-ft-over) + 1px);
  background-color: var(--color-univ-bg-beige);
  border-top-left-radius: var(--radius-ft-over);
  border-top-right-radius: var(--radius-ft-over);
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  content: '';
  overflow: hidden;
}
footer .ft-wrap {
  position: relative;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  gap: 2.0em;
  width: 100%;
  max-width: 1300px;
  padding: 0;
  margin: 0 auto;
}
footer .ft-wrap :is(.ft-logo-wrap, .ft-nav-wrap) {
  flex-grow: 0;
}
footer .ft-wrap .ft-hr {
  position: relative;
  display: block;
  border: none;
  border-top: 1px solid var(--color-univ-olivegray);
  margin: 0;
  margin-top: 3.0em;
  margin-bottom: 3.0em;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  footer {
    padding-left: 2.0em;
    padding-right: 2.0em;
    padding-bottom: 5.5em;
  }
}
@media screen and (max-width: 567px) {}

footer .ft-wrap :is(.ft-nav-wrap, .ft-bottom-wrap) ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
footer .ft-wrap :is(.ft-nav-wrap, .ft-bottom-wrap) a {
  color: var(--color-univ-brown);
  text-decoration: none;
  text-decoration-thickness: 0;
}
footer .ft-wrap :is(.ft-nav-wrap, .ft-bottom-wrap) ul a {
  font-size: 0.9em;
}
footer .ft-wrap :is(.ft-nav-wrap, .ft-bottom-wrap) a:hover {
  text-decoration: underline 1px solid;
  text-decoration-thickness: 1px;
}
footer .ft-wrap :is(.ft-nav-wrap, .ft-bottom-wrap) ul li a {
  display: block;
  position: relative;
  line-height: 1.5;
  padding-left: 1.5em;
}
footer .ft-wrap :is(.ft-nav-wrap, .ft-bottom-wrap) ul li a::before {
  display: block;
  position: absolute;
  top: 0.85em;
  left: 0.5em;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 0.4em;
  height: 0.4em;
  content: '';
  border: 0;
  border-top: 1.5px solid var(--color-univ-brown);
  border-right: 1.5px solid var(--color-univ-brown);
}
/* 事業一覧、法人案内 */
footer .ft-wrap :is(.ft-nav-wrap, .ft-bottom-wrap) ul.univ-blue li a::before {
  border-top: 1.5px solid var(--color-univ-blue);
  border-right: 1.5px solid var(--color-univ-blue);
}
/* 採用情報 */
footer .ft-wrap :is(.ft-nav-wrap, .ft-bottom-wrap) ul.rec-main li a::before {
  border-top: 1.5px solid var(--color-rec-main);
  border-right: 1.5px solid var(--color-rec-main);
}
/* アイコン｜共通 */
footer .ft-wrap :is(.ft-nav-wrap, .ft-bottom-wrap) ul li:is(.home_top-page, .akebono-shop) a::before {
  top: 0.75em;
  left: 0.5em;
  transform: translate(-50%, -50%) rotate(0deg);
  width: 1.3em;
  height: 1.3em;
  border: 0;
}
/* アイコン｜トップページ（ホーム）*/
footer .ft-wrap :is(.ft-nav-wrap, .ft-bottom-wrap) ul li.home_top-page a::before {
  content: url('../images/ico_ftr_home.svg');
  /*content: url('<?php echo get_template_directory_uri(); ?>/images/ico_ftr_home.svg');*/
}
/* アイコン｜あけぼのショップ（カート）*/
footer .ft-wrap :is(.ft-nav-wrap, .ft-bottom-wrap) ul li.akebono-shop a::before {
  content: url('../images/ico_ftr_cart.svg');
  /*content: url('<?php echo get_template_directory_uri(); ?>/images/ico_ftr_cart.svg');*/
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

footer .ft-wrap .ft-nav-wrap {}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

footer .ft-wrap .ft-logo-wrap {
  position: relative;
  display: flex;
  gap: 2.0em;
}
footer .ft-wrap .ft-logo-wrap .logo {
  flex-grow: 0;
}
footer .ft-wrap .ft-logo-wrap .addr {
  flex-grow: 1;
}
footer .ft-wrap .ft-logo-wrap .ft-bnr {
  flex-grow: 0;
}

footer .ft-wrap .ft-logo-wrap .logo {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: max-content;
  max-width: 200px;
}
footer .ft-wrap .ft-logo-wrap .logo a {
  position: relative;
  display: block;
}
footer .ft-wrap .ft-logo-wrap .logo a img {
  position: relative;
  display: block;
  user-select: none;
}
footer .ft-wrap .ft-logo-wrap .addr {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
footer .ft-wrap .ft-logo-wrap .addr p {
  text-align: left;
  line-height: 1.6;
  font-size: 0.8em;
}
footer .ft-wrap .ft-logo-wrap .addr p span {
  position: relative;
  display: inline-block;
}
footer .ft-wrap .ft-logo-wrap .addr p a .googlemap {
  color: var(--color-univ-olivegray);
}
footer .ft-wrap .ft-logo-wrap .addr p a .googlemap::after {
  position: relative;
  display: inline-block;
  width: 1.0em;
  content: url('../images/ico_ftr_external.svg');
  /*content: url('<?php echo get_template_directory_uri(); ?>/images/ico_ftr_external.svg');*/
  margin-left: 0.25em;
}
footer .ft-wrap .ft-logo-wrap .ft-bnr {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 0.5em;
  padding: 0;
  margin: 0;
}
footer .ft-wrap .ft-logo-wrap .ft-bnr a {
  position: relative;
  display: block;
  width: max-content;
}
footer .ft-wrap .ft-logo-wrap .ft-bnr a img {
  position: relative;
  display: block;
  width: 100%;
  max-width: 180px;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  footer .ft-wrap .ft-logo-wrap {
    flex-direction: column;
  }
  footer .ft-wrap .ft-logo-wrap .logo {
    width: 100%;
    max-width: initial;
  }
  footer .ft-wrap .ft-logo-wrap .logo a {
    width: 100%;
    max-width: 300px;
  }
  footer .ft-wrap .ft-logo-wrap .addr {
    justify-content: flex-start;
    width: 100%;
  }
  footer .ft-wrap .ft-logo-wrap .addr p {
    position: relative;
    display: block;
    width: max-content;
    max-width: 100%;
    margin: 0 auto;
  }
  footer .ft-wrap .ft-logo-wrap .ft-bnr {
    gap: 1.0em;
  }
  footer .ft-wrap .ft-logo-wrap .ft-bnr a {
    width: calc((100% - 1.0em * 1) / 2 );
  }
  footer .ft-wrap .ft-logo-wrap .ft-bnr a img {
    max-width: initial;
  }
}
@media screen and (max-width: 567px) {}

footer .ft-wrap .ft-nav-wrap {
  position: relative;
  display: block;
  width: 100%;
}
footer .ft-wrap .ft-nav-wrap nav {
  position: relative;
  display: flex;
  gap: 3.0em;
  width: 100%;
}
footer .ft-wrap .ft-nav-wrap nav .nav-list-wrap {
  flex-grow: 0;
  position: relative;
  display: flex;
  gap: 3.0em;
}
footer .ft-wrap .ft-nav-wrap nav .nav-list-wrap:first-child {
  flex-grow: 1;
}
footer .ft-wrap .ft-nav-wrap nav .nav-list-wrap .nav-list-wrap-column {
  flex-grow: 1;
  position: relative;
  display: block;
}
footer .ft-wrap .ft-nav-wrap nav .nav-list-wrap .nav-list-wrap-column .nav-menu-title {
  position: relative;
  display: block;
  width: 100%;
  margin: 0;
  margin-bottom: 1.0em;
}
footer .ft-wrap .ft-nav-wrap nav .nav-list-wrap .nav-list-wrap-column .nav-menu-title span {
  font-weight: 500;
}
footer .ft-wrap .ft-nav-wrap nav .nav-list-wrap .nav-list-wrap-column ul.ft-nav-menu-list {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.5em;
}
footer .ft-wrap .ft-nav-wrap nav .nav-list-wrap .nav-list-wrap-column ul.ft-nav-menu-list li {
  position: relative;
  display: block;
  width: 100%;
  margin: 0;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  footer .ft-wrap .ft-nav-wrap nav {
    flex-direction: column;
  }
  footer .ft-wrap .ft-nav-wrap nav .nav-list-wrap {
    flex-direction: column;
  }
}
@media screen and (max-width: 567px) {}

footer .ft-wrap .ft-bottom-wrap {
  position: relative;
  display: flex;
  justify-content: space-between;
  gap: 2.0em;
  width: 100%;
  max-width: 1300px;
  padding: 0;
  margin: 0 auto;
}
footer .ft-wrap .ft-bottom-wrap .ft-bottom-menu {
  flex-grow: 1;
}
footer .ft-wrap .ft-bottom-wrap .ft-copyright {
  flex-grow: 0;
}

footer .ft-wrap .ft-bottom-wrap .ft-bottom-menu {
  position: relative;
  display: flex;
  padding: 0;
  margin: 0;
}
footer .ft-wrap .ft-bottom-wrap .ft-bottom-menu .ft-bottom-menu-list {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em 2.0em;
  width: 100%;
  padding: 0;
  margin: 0;
}
footer .ft-wrap .ft-bottom-wrap .ft-bottom-menu .ft-bottom-menu-list li {
  position: relative;
  display: block;
  width: max-content;
  max-width: 100%;
}
footer .ft-wrap .ft-bottom-wrap .ft-copyright {
  position: relative;
  display: block;
  width: max-content;
  max-width: 100%;
}
footer .ft-wrap .ft-bottom-wrap .ft-copyright span {
  position: relative;
  display: block;
  font-size: 0.8em;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  footer .ft-wrap .ft-bottom-wrap {
    flex-direction: column;
  }
  footer .ft-wrap .ft-bottom-wrap .ft-bottom-menu {
    flex-direction: column;
  }
  footer .ft-wrap .ft-bottom-wrap .ft-copyright {
    margin: 0 auto;
  }
}
@media screen and (max-width: 567px) {}




/* ##############################################
##
##  固定ページ（page.php）
##  投稿ページ（single.php）
##
############################################## */
/* 固定ページ｜共通（pg_default.php） */
/* 投稿ページ｜共通（sg_default.php） */
.page-content.pg_default {
  position: relative;
  display: block;
  width: 100%;
  margin: 0;
}
.page-content.pg_default .entry-content {
  padding: 6.0em 4.0em 6.0em;
}
.page-content.pg_default .entry-content .container {
  max-width: 1100px;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .page-content.pg_default .entry-content {
    padding: 5.0em 2.0em 5.0em;
  }
}
@media screen and (max-width: 567px) {}


/* カスタム投稿ページ｜施設紹介（sg_facility.php） */
.page-content.pg_default.sg_facility .entry-content .container {
  max-width: 1200px;
}


/* 投稿ページ｜見出し（sg_default.php） */
.sg_default .container:has(.single_header-info) {
  margin-bottom: 4.0em;
}
.sg_default h1.title {
  position: relative;
  display: inline-block;
  line-height: 1.5;
  font-weight: 500;
  font-size: 1.9em;
  color: var(--color-univ-blue);
  margin: 0;
  margin-bottom: 0.5em;
}
.sg_default .single_header-info {}
.sg_default .single_header-info .header-info_wrap {}
.sg_default .single_header-info .header-info_wrap .cat {
  position: relative;
  display: inline-block;
  width: max-content;
  max-width: 100%;
  text-align: center;
  line-height: 1.5;
  font-size: 0.8em;
  color: var(--color-univ-blue);
  background-color: var(--color-univ-blue_lighttone);
  border: 1px solid var(--color-univ-blue_paletone);
  border-radius: 0.25em;
  padding: 0.2em 0.75em 0.3em;
  margin: 0;
  margin-right: 0.75em;
}
.sg_default .single_header-info .header-info_wrap .time {
  position: relative;
  display: inline-block;
  line-height: 1.5;
  font-size: 0.8em;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .sg_default .container:has(.single_header-info) {
    margin-bottom: 3.0em;
  }
  .sg_default h1.title {
    font-size: 1.7em;
  }
}
@media screen and (max-width: 567px) {}

/* 投稿ページ｜フッター（sg_default.php） */
.page-footer.sg_default {
  position: relative;
  display: block;
  width: 100%;
  padding: 0 4.0em 6.0em;
  line-height: 1.5;
}
.page-footer.sg_default .entry-footer {
  position: relative;
  display: block;
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .page-footer.sg_default {
    padding: 0 2.0em 5.0em;
  }
}
@media screen and (max-width: 567px) {}

/* 投稿ページ｜フッター｜ページネーション（sg_default.php） */
.page-footer.sg_default .entry-footer .pagenation.single-pn {
  position: relative;
  display: flex;
  gap: 1.5em;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: 0;
}
.page-footer.sg_default .entry-footer .pagenation.single-pn a {
  flex-grow: 0;
  position: relative;
  display: block;
  width: max-content;
  max-width: 100%;
  margin: 0;
  padding: 0;
  color: var(--color-univ-brown);
  transition: 0.1s;
}
.page-footer.sg_default .entry-footer .pagenation.single-pn a:hover {
  color: var(--color-univ-yellow);
}
.page-footer.sg_default .entry-footer .pagenation.single-pn a .sigle-angle-left {}
.page-footer.sg_default .entry-footer .pagenation.single-pn a .sigle-angle-right {}


/* 検索ページ｜フッター（srch_default.php） */
.page-footer.srch_default {
  position: relative;
  display: block;
  width: 100%;
  padding: 0 4.0em 6.0em;
  line-height: 1.5;
}
.page-footer.srch_default .entry-footer {
  position: relative;
  display: block;
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .page-footer.srch_default {
    padding: 0 2.0em 5.0em;
  }
}
@media screen and (max-width: 567px) {}

.srch_default .p-navi:has(.wp-pagenavi) {
  padding-bottom: 0;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .srch_default .p-navi:has(.wp-pagenavi) {
    padding-bottom: 0em;
  }
}
@media screen and (max-width: 567px) {}




/* ##############################################
##
##  検索ページ
##  （search.php、srch_default.php）
##
############################################## */
/* 検索ページ｜メイン｜検索フォーム設置 */
.search-result-searchform {
  display: block;
  width: max-content;
  max-width: 100%;
  padding: 0;
  margin: 0 auto;
}
.search-result-searchform .searchform-box {
  display: block;
  margin: 0 auto;
  width: 100%;
}

/* 検索ページ｜メイン｜結果 */
.search-result-head {
  display: block;
  position: relative;
  width: 100%;
  font-size: 1.3em;
  text-align: center;
  color: var(--color-univ-brown);
  margin: 2.0em 0;
}

/* 検索ページ｜メイン｜リスト */
.search-result-list {
  display: block;
  position: relative;
  width: 100%;
  list-style-type: none!important;
  padding: 0!important;
  margin: 0!important;
}
.search-result-list li {
  display: block;
  position: relative;
  width: 100%;
  padding: 0!important;
  margin: 0!important;
  border-top: 1px solid var(--color-univ-olivegray);
  border-left: none;
  border-right: none;
  border-bottom: none;
}
.search-result-list li:last-child {
  border-bottom: 1px solid var(--color-univ-olivegray);
}
.search-result-list li a {
  display: block;
  position: relative;
  width: 100%;
  padding: 1.0em 1.5em;
  margin: 0;
  line-height: 1.5;
  text-decoration: none;
  transition: 0.15s;
}
.search-result-list li a:hover {}
.search-result-list li a .title {
  display: inline-block;
  position: relative;
  font-weight: 400;
  font-size: 1.0em;
  color: var(--color-univ-brown);
  margin-right: 1.0em;
  transition: 0.15s;
}
.search-result-list li a:hover .title {
  color: var(--color-univ-yellow);
}
.search-result-list li a .link {
  display: inline-block;
  position: relative;
  font-weight: 300;
  font-size: 0.9em;
  color: var(--color-univ-lightolive);
}

@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .search-result-list li a {
    padding: 1.0em 1.0em;
  }
  .search-result-list li a .title {
    display: block;
    width: 100%;
    margin-right: 0;
  }
  .search-result-list li a .link {
    display: block;
    width: 100%;
    margin-top: 0.25em;
  }
}
@media screen and (max-width: 567px) {}




/* ##############################################
##
##  エディタ（エレメント）用
##
############################################## */
/* マージン margin （上下） */
.mt-0 { margin-top: 0!important; }
.mt-1 { margin-top: 1.0em!important; }
.mt-2 { margin-top: 2.0em!important; }
.mt-3 { margin-top: 3.0em!important; }
.mt-4 { margin-top: 4.0em!important; }
.mt-5 { margin-top: 5.0em!important; }
.mt-6 { margin-top: 6.0em!important; }
.mt-7 { margin-top: 7.0em!important; }
.mt-8 { margin-top: 8.0em!important; }
.mb-0 { margin-bottom: 0!important; }
.mb-1 { margin-bottom: 1.0em!important; }
.mb-2 { margin-bottom: 2.0em!important; }
.mb-3 { margin-bottom: 3.0em!important; }
.mb-4 { margin-bottom: 4.0em!important; }
.mb-5 { margin-bottom: 5.0em!important; }
.mb-6 { margin-bottom: 6.0em!important; }
.mb-7 { margin-bottom: 7.0em!important; }
.mb-8 { margin-bottom: 8.0em!important; }

.mt-05 { margin-top: 0.5em!important; }
.mt-15 { margin-top: 1.5em!important; }
.mt-25 { margin-top: 2.5em!important; }
.mt-35 { margin-top: 3.5em!important; }
.mt-45 { margin-top: 4.5em!important; }
.mt-55 { margin-top: 5.5em!important; }
.mt-65 { margin-top: 6.5em!important; }
.mt-75 { margin-top: 7.5em!important; }
.mt-85 { margin-top: 8.5em!important; }
.mb-05 { margin-bottom: 0.5em!important; }
.mb-15 { margin-bottom: 1.5em!important; }
.mb-25 { margin-bottom: 2.5em!important; }
.mb-35 { margin-bottom: 3.5em!important; }
.mb-45 { margin-bottom: 4.5em!important; }
.mb-55 { margin-bottom: 5.5em!important; }
.mb-65 { margin-bottom: 6.5em!important; }
.mb-75 { margin-bottom: 7.5em!important; }
.mb-85 { margin-bottom: 8.5em!important; }

/* パディング padding （上下・左右） */
.py-0 { padding-top: 0; padding-bottom: 0; }
.py-1 { padding-top: 1.0em; padding-bottom: 1.0em; }
.py-2 { padding-top: 2.0em; padding-bottom: 2.0em; }
.py-3 { padding-top: 3.0em; padding-bottom: 3.0em; }
.py-4 { padding-top: 4.0em; padding-bottom: 4.0em; }
.py-5 { padding-top: 5.0em; padding-bottom: 5.0em; }
.py-6 { padding-top: 6.0em; padding-bottom: 6.0em; }
.py-7 { padding-top: 7.0em; padding-bottom: 7.0em; }
.py-8 { padding-top: 8.0em; padding-bottom: 8.0em; }
.px-0 { padding-left: 0; padding-right: 0; }
.px-1 { padding-left: 1.0em; padding-right: 1.0em; }
.px-2 { padding-left: 2.0em; padding-right: 2.0em; }
.px-3 { padding-left: 3.0em; padding-right: 3.0em; }
.px-4 { padding-left: 4.0em; padding-right: 4.0em; }
.px-5 { padding-left: 5.0em; padding-right: 5.0em; }
.px-5 { padding-left: 6.0em; padding-right: 6.0em; }
.px-5 { padding-left: 7.0em; padding-right: 7.0em; }
.px-5 { padding-left: 8.0em; padding-right: 8.0em; }

.py-05 { padding-top: 0.5em; padding-bottom: 0.5em; }
.py-15 { padding-top: 1.5em; padding-bottom: 1.5em; }
.py-25 { padding-top: 2.5em; padding-bottom: 2.5em; }
.py-35 { padding-top: 3.5em; padding-bottom: 3.5em; }
.py-45 { padding-top: 4.5em; padding-bottom: 4.5em; }
.py-55 { padding-top: 5.5em; padding-bottom: 5.5em; }
.py-65 { padding-top: 6.5em; padding-bottom: 6.5em; }
.py-75 { padding-top: 7.5em; padding-bottom: 7.5em; }
.py-85 { padding-top: 8.5em; padding-bottom: 8.5em; }
.px-05 { padding-left: 0.5em; padding-right: 0.5em; }
.px-15 { padding-left: 1.5em; padding-right: 1.5em; }
.px-25 { padding-left: 2.5em; padding-right: 2.5em; }
.px-35 { padding-left: 3.5em; padding-right: 3.5em; }
.px-45 { padding-left: 4.5em; padding-right: 4.5em; }
.px-55 { padding-left: 5.5em; padding-right: 5.5em; }
.px-65 { padding-left: 6.5em; padding-right: 6.5em; }
.px-75 { padding-left: 7.5em; padding-right: 7.5em; }
.px-85 { padding-left: 8.5em; padding-right: 8.5em; }

.pt-0 { padding-top: 0; }
.pt-1 { padding-top: 1.0em; }
.pt-2 { padding-top: 2.0em; }
.pt-3 { padding-top: 3.0em; }
.pt-4 { padding-top: 4.0em; }
.pt-5 { padding-top: 5.0em; }
.pt-6 { padding-top: 6.0em; }
.pt-7 { padding-top: 7.0em; }
.pt-8 { padding-top: 8.0em; }
.pt-05 { padding-top: 0.5em; }
.pt-15 { padding-top: 1.5em; }
.pt-25 { padding-top: 2.5em; }
.pt-35 { padding-top: 3.5em; }
.pt-45 { padding-top: 4.5em; }
.pt-55 { padding-top: 5.5em; }
.pt-65 { padding-top: 6.5em; }
.pt-75 { padding-top: 6.5em; }
.pt-85 { padding-top: 6.5em; }

.pb-0 { padding-bottom: 0; }
.pb-1 { padding-bottom: 1.0em; }
.pb-2 { padding-bottom: 2.0em; }
.pb-3 { padding-bottom: 3.0em; }
.pb-4 { padding-bottom: 4.0em; }
.pb-5 { padding-bottom: 5.0em; }
.pb-6 { padding-bottom: 6.0em; }
.pb-7 { padding-bottom: 7.0em; }
.pb-8 { padding-bottom: 8.0em; }
.pb-05 { padding-bottom: 0.5em; }
.pb-15 { padding-bottom: 1.5em; }
.pb-25 { padding-bottom: 2.5em; }
.pb-35 { padding-bottom: 3.5em; }
.pb-45 { padding-bottom: 4.5em; }
.pb-55 { padding-bottom: 5.5em; }
.pb-65 { padding-bottom: 6.5em; }
.pb-75 { padding-bottom: 7.5em; }
.pb-85 { padding-bottom: 8.5em; }




/* ##############################################
##
##  施設紹介｜各施設（/facilities/GENRE/XXXXXX/）
##
############################################## */
/* 施設紹介｜各施設｜施設紹介 */
#main_content_body .introduction {
  padding: 3.0em 3.0em;
  border-radius: 1.0em;
  background-color: var(--color-univ-ico-beige_tp-99);
}
#main_content_body .introduction:has(+ .introduction) {
  margin-bottom: 1.5em!important;
}
#main_content_body .introduction + .introduction {
  margin-top: 1.5em!important;
}
#main_content_body .introduction img {
  border-radius: 0.5em;
  overflow: hidden;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #main_content_body .introduction {
    padding: 1.5em 1.5em;
  }
}
@media screen and (max-width: 567px) {}

@media screen and (min-width: 1024px) {}
@media screen and (min-width: 768px) {
  #main_content_body .introduction :where(.wp-block-columns.is-layout-flex) {
    gap: 2.0em!important;
  }
}
@media screen and (min-width: 568px) {}


/* 施設紹介｜各施設｜表組｜年間行事とクラブ活動（#main_content_body .summary table） */
#main_content_body .summary table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 10px!important;
  margin: 2.0em 0;
}
#main_content_body .summary table :is(thead, tbody) :is(th, td) {
  min-width: initial!important;
  border-top: none!important;
  border-left: none!important;
  border-bottom: none!important;
}
#main_content_body .summary table :is(thead, tbody) tr:first-child :is(th, td) {
  border-top: none!important;
}
#main_content_body .summary table :is(thead, tbody) :is(th, td) {
  padding: 0.5em 1.0em 0.65em!important;
}
#main_content_body .summary table :is(thead, tbody) th {
  width: max-content!important;
}
#main_content_body .summary table tbody {
  border-top: none!important;
  border-left: none!important;
  border-right: none!important;
  border-bottom: none!important;
}
#main_content_body .summary table tbody th,
#main_content_body .summary table tbody th p {
  color: var(--color-univ-black);
}
#main_content_body .summary table tbody th {
  font-weight: 400;
  text-align: center;
  background-color: var(--color-univ-white)!important;
}
#main_content_body .summary table tbody td {
  background-color: transparent!important;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {
  #main_content_body .summary table :is(thead, tbody) th {
    padding: 0.35em 0.5em 0.5em!important;
  }
  #main_content_body .summary table :is(thead, tbody) td {
    padding: 0.5em 1.0em 0.65em!important;
  }
}


/* 施設紹介｜各施設｜年間行事（#main_content_body .activity） */
#main_content_body .activity {
  padding: 3.0em 3.0em;
  border-radius: 1.0em;
  background-color: var(--color-univ-white);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #main_content_body .activity {
    padding: 1.5em 1.5em;
  }
}
@media screen and (max-width: 567px) {}


/* 施設紹介｜各施設｜表組｜年間行事（#main_content_body .activity table） */
#main_content_body .activity table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 1.5px!important;
  margin: 2.0em 0;
  background-color: var(--color-univ-lightolive)!important; 
}
#main_content_body .activity table :is(thead, tbody) :is(th, td) {
  min-width: initial!important;
  border-top: 10px solid var(--color-univ-white)!important;
  border-left: none!important;
  border-bottom: 10px solid var(--color-univ-white)!important;
}
#main_content_body .activity table :is(thead, tbody) tr:first-child :is(th, td) {
  border-top: 10px solid var(--color-univ-white)!important;
}
#main_content_body .activity table :is(thead, tbody) th {
  padding: 0.35em 0.5em 0.5em!important;
  width: 4.0em!important;
  font-family: "Barlow", "Noto Sans JP", sans-serif;
}
#main_content_body .activity table :is(thead, tbody) td {
  padding: 0.5em 1.0em 0.65em!important;
}
#main_content_body .activity table tbody {
  border-top: none!important;
  border-left: none!important;
  border-right: none!important;
  border-bottom: none!important;
}
#main_content_body .activity table tbody th,
#main_content_body .activity table tbody th p {
  /* facility_color_setting.php 内で色の可変制御 */
  /* color: var(--color-biz-XXXXXX); */
}
#main_content_body .activity table tbody th {
  font-size: 1.5em;
  text-align: center;
  background-color: var(--color-univ-bg-lightgray)!important;
}
#main_content_body .activity table tbody td {
  background-color: var(--color-univ-white)!important;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {
  #main_content_body .activity table tbody th {
    font-size: 1.25em;
  }
  #main_content_body .activity table :is(thead, tbody) th {
    padding: 0.35em 0.5em 0.5em!important;
  }
  #main_content_body .activity table :is(thead, tbody) td {
    padding: 0.5em 1.0em 0.65em!important;
  }
}


/* 施設紹介｜各施設｜紹介見出し（#main_content_body） */
#main_content_body :is(h4, h5, h6).sub-en {
  position: relative;
}
#main_content_body :is(h4, h5, h6).sub-en::before {
  position: relative;
  display: block;
  content: 'About Us';
  font-family: "Josefin Sans", sans-serif;
  font-weight: 400;
  font-size: 0.6em;
}


/* 施設紹介｜各施設｜表組｜バス時刻表・見出し（#main_content_body p.am, #main_content_body p.pm） */
#main_content_body p:is(.am, .pm) {
  position: relative;
  display: block;
  width: max-content;
  padding: 0.25em 1.5em;
  color: var(--color-univ-white);
  border-radius: 0.25em;
}
#main_content_body p.am::before,
#main_content_body p.pm::before {
  display: block;
  position: absolute;
  top: calc(100% - 1px);
  left: 1.0em;
  width: 0.75em;
  height: 0.75em;
  clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
  content: '';
}
#main_content_body p.am,
#main_content_body p.am::before {
  /* facility_color_setting.php 内で色の可変制御 */
  /* background-color: var(--color-biz-XXXXXX); */
  background-color: var(--color-univ-black) /* デフォルト ※確認用 */
}
#main_content_body p.pm,
#main_content_body p.pm::before {
  background-color: var(--color-univ-yellow);
}


/* 施設紹介｜各施設｜表組｜一日の流れ（#main_content_body .am, #main_content_body .pm） */
#main_content_body :is(.am, .pm) table {
  border-collapse: separate;
  border-spacing: 0 0.5em!important;
}
#main_content_body :is(.am, .pm) table :is(thead, tbody) :is(th, td) {
  border-top: none!important;
}
#main_content_body :is(.am, .pm) table thead {
  border-top: none!important;
}
#main_content_body :is(.am, .pm) table tbody {
  border-top: none!important;
  border-bottom: none!important;
}
#main_content_body .am table tbody th,
#main_content_body .am table tbody th p {
  /* facility_color_setting.php 内で色の可変制御 */
  /* color: var(--color-biz-XXXXXX)!important; */
}
#main_content_body .pm table tbody th,
#main_content_body .pm table tbody th p {
  color: var(--color-univ-yellow)!important;
}
#main_content_body :is(.am, .pm) table tbody :is(th, td) {
  background-color: var(--color-univ-bg-lightgray)!important;
}
#main_content_body :is(.am, .pm) table tbody th {
  width: max-content;
  max-width: 100%;
  border-top-left-radius: 0.5em;
  border-bottom-left-radius: 0.5em;
}
#main_content_body :is(.am, .pm) table tbody td:last-child {
  width: 100%;
  max-width: 100%;
  border-top-right-radius: 0.5em;
  border-bottom-right-radius: 0.5em;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  /* 施設紹介｜各施設｜表組｜一日の流れ（スマートフォン・タブレットで縦に並べる）（.is-stacked-on-mobile） */
  #main_content_body :is(.am, .pm) table.is-stacked-on-mobile :is(thead, tbody) tr:first-child :is(th, td) {
    border-top: none!important;
  }
  #main_content_body :is(.am, .pm) table.is-stacked-on-mobile tbody th {
    border-top-left-radius: 0.5em;
    border-top-right-radius: 0.5em;
    border-bottom-left-radius: 0;
  }
  #main_content_body :is(.am, .pm) table.is-stacked-on-mobile tbody td:last-child {
    border-top-right-radius: 0;
    border-bottom-left-radius: 0.5em;
    border-bottom-right-radius: 0.5em;
  }
}
@media screen and (max-width: 567px) {}
#main_content_body .wp-block-flexible-table-block-table:is(.am, .pm) {
  margin: 1.0em 0;
}


/* 施設紹介｜各施設｜表組｜バス時刻表（#main_content_body .bus-table） */
#main_content_body .bus-table table :is(thead, tbody) :is(th, td) {
  min-width: initial;
}
#main_content_body .bus-table table tbody td {
  width: max-content;
  max-width: 100%;
}
#main_content_body .bus-table table thead :is(th, td),
#main_content_body .bus-table table thead :is(th, td) p {
  color: var(--color-univ-white)!important;
  background-color: var(--color-univ-olivegray)!important;
}
#main_content_body .bus-table table tbody th,
#main_content_body .bus-table table tbody th p {
  color: var(--color-univ-brown)!important;
}
#main_content_body .bus-table table tbody th {
  background-color: var(--color-univ-ico-beige)!important;
}


/* 施設紹介｜各施設｜写真（ブロックカラム）（#main_content_body） */
.wp-block-columns.is-layout-flex:is(.intro-photo, .flow-photo, .activity-photo) img {
  border-radius: 0.5em;
  overflow: hidden;
}
.wp-block-columns.is-layout-flex:is(.intro-photo, .flow-photo, .activity-photo) p {
  font-size: 0.9em;
  padding: 0 0.5em;
  margin-top: 0.5em;
}
@media screen and (min-width: 1024px) {}
@media screen and (min-width: 768px) {
  .wp-block-columns.is-layout-flex:is(.intro-photo, .flow-photo, .activity-photo) {
    gap: 1.0em!important;
  }
}
@media screen and (min-width: 568px) {}


/* 施設紹介｜各施設｜ページ冒頭（inner_facility_hero.php） */
.facility_hero {
  position: relative;
  display: block;
  margin: 0;
  margin-bottom: 8.0em;
}
.facility_hero:not(:has(.hero_main)) {
  /*margin-bottom: 5.0em;*/
  margin-bottom: 0;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* 施設紹介｜各施設｜ページ冒頭｜見出し・アイコン（inner_facility_hero.php） */
/*
.facility_hero .hero_head {
  position: relative;
  display: flex;
  gap: 1.0em;
  align-items: flex-end;
  margin: 0;
  margin-bottom: 2.0em;
}
.facility_hero .hero_head .hero-title {
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 0%;
  position: relative;
  display: block;
  min-width: 0;
}
.facility_hero .hero_head .hero-title h1 {
  font-size: 2.7em;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: var(--color-univ-brown);
}
.facility_hero .hero_head .hero-title h1 span {
  position: relative;
  display: inline-block;
}
.facility_hero .hero_head .hero-title h1 .hero-dept {
  font-size: 0.83em;
}
.facility_hero .hero_head .hero-icon {
  position: relative;
  display: inline-flex;
  gap: 0.5em;
  flex-wrap: wrap;
  flex-shrink: 0;
  max-width: calc((75px * 4) + (0.5em * 3));
}
.facility_hero .hero_head .hero-icon .icon-image {
  flex-grow: 0;
  position: relative;
  display: block;
  width: 100%;
  max-width: 75px;
}
.facility_hero .hero_head .hero-icon .icon-image img {
  position: relative;
  display: block;
  width: 100%;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .facility_hero .hero_head {
    flex-direction: column;
    align-items: flex-start;
  }
  .facility_hero .hero_head :is(.hero-title, .hero-icon) {
    width: 100%;
  }
  .facility_hero .hero_head .hero-title h1 {
    font-size: 2.0em;
    line-height: 1.6;
  }
  .facility_hero .hero_head .hero-icon {
    max-width: initial;
  }
  .facility_hero .hero_head .hero-icon .icon-image {
    width: calc((100% - 0.5em * 4) / 5);
  }
}
@media screen and (max-width: 567px) {}
*/

/* 施設紹介｜各施設｜ページ冒頭｜メイン（写真・メニュー）（inner_facility_hero.php） */
.facility_hero .hero_main {
  position: relative;
  display: flex;
  gap: 1.0em;
}
.facility_hero .hero_main .hero-image {
  flex-grow: 0;
}
.facility_hero .hero_main .hero-menu {
  flex-grow: 1;
}

.facility_hero .hero_main .hero-image {
  position: relative;
  display: block;
  width: 100%;
  max-width: 850px;
}
.facility_hero .hero_main .hero-image .image {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  padding-top: calc(100% * 9 / 16);
  border-radius: 1.0em;
  overflow: hidden;
}
.facility_hero .hero_main .hero-image .image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.facility_hero .hero_main .hero-menu {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0;
  /*min-width: max-content;*/
}
.facility_hero .hero_main .hero-menu .menu-title {
  flex-grow: 0;
}
.facility_hero .hero_main .hero-menu .menu-list {
  flex-grow: 1;
}
.facility_hero .hero_main .hero-menu .menu-title {
  position: relative;
  display: block;
  width: 100%;
  padding: 0.75em 1.0em 0.6em;
  border-top-left-radius: 1.0em;
  border-top-right-radius: 1.0em;
  /* facility_color_setting.php 内で色の可変制御 */
  /* background-color: var(--color-biz-XXXXXX); */
}
.facility_hero .hero_main .hero-menu .menu-title span {
  position: relative;
  display: inline-block;
  width: max-content;
  max-width: 100%;
  font-family: "Josefin Sans", sans-serif;
  font-weight: 400;
  font-size: 1.1em;
  color: var(--color-univ-white);
}
.facility_hero .hero_main .hero-menu .menu-title span::before {
  position: relative;
  display: inline-block;
  width: 1.07em;
  padding-right: 0.5em;
  content: url('../images/ico_facil-hero_menu.svg');
  /*content: url('<?php echo get_template_directory_uri(); ?>/images/ico_facil-hero_menu.svg');*/
}
.facility_hero .hero_main .hero-menu .menu-list {
  position: relative;
  display: block;
  list-style-type: none;
  margin: 0!important;
  padding: 0.75em 1.0em 0.6em!important;
  border: 0;
  border-top: 1px solid var(--color-univ-ico-beige);
  border-bottom-left-radius: 1.0em;
  border-bottom-right-radius: 1.0em;
  background-color: var(--color-univ-white);
}
.facility_hero .hero_main .hero-menu .menu-list :is(.item-link, .item-anc, .item-link_blank) {
  position: relative;
  display: block;
  margin: 0!important;
  padding: 0!important;
  border: 0;
  border-bottom: 1px solid var(--color-univ-ico-beige);
}
.facility_hero .hero_main .hero-menu .menu-list :is(.item-link, .item-anc, .item-link_blank):last-child {
  border-bottom: 0;
}
.facility_hero .hero_main .hero-menu .menu-list .item-link::before,
.facility_hero .hero_main .hero-menu .menu-list .item-anc::before,
.facility_hero .hero_main .hero-menu .menu-list .item-link_blank::before {
  display: none!important;
}
.facility_hero .hero_main .hero-menu .menu-list :is(.item-link, .item-anc, .item-link_blank) a {
  position: relative;
  display: block;
  width: 100%;
  text-decoration: none;
  padding-top: 0.5em!important;
  padding-left: 0!important;
  padding-right: 2.0em!important;
  padding-bottom: 0.5em!important;
}
.facility_hero .hero_main .hero-menu .menu-list :is(.item-link, .item-anc, .item-link_blank) a:not(:hover) {
  color: var(--color-univ-brown)!important;
}
.facility_hero .hero_main .hero-menu .menu-list :is(.item-link, .item-anc, .item-link_blank) a:hover {}
.facility_hero .hero_main .hero-menu .menu-list :is(.item-link, .item-anc, .item-link_blank) a::after {
  display: block;
  position: absolute;
  top: calc(50% + 0.05em);
  right: 0;
  width: 0.9em;
  transform: translate(0, -50%);
  transition: all 0.2s;
}
.facility_hero .hero_main .hero-menu .menu-list .item-link a::after {
  content: url('../images/ico_facil-hero_arrow_r.svg');
  /*content: url('<?php echo get_template_directory_uri(); ?>/images/ico_facil-hero_arrow_r.svg');*/
}
.facility_hero .hero_main .hero-menu .menu-list .item-anc a::after {
  content: url('../images/ico_facil-hero_arrow_b.svg');
  /*content: url('<?php echo get_template_directory_uri(); ?>/images/ico_facil-hero_arrow_b.svg');*/
}
.facility_hero .hero_main .hero-menu .menu-list .item-link_blank a::after {
  content: url('../images/ico_facil-hero_arrow_r.svg');
  /*content: url('<?php echo get_template_directory_uri(); ?>/images/ico_facil-hero_arrow_r.svg');*/
  /*content: url('../images/ico_facil-hero_arrow_tr.svg');*/
  /*content: url('<?php echo get_template_directory_uri(); ?>/images/ico_facil-hero_arrow_tr.svg');*/
}
.facility_hero .hero_main .hero-menu .menu-list .item-link a:hover::after {
  transform: translate(35%, -50%);
}
.facility_hero .hero_main .hero-menu .menu-list .item-anc a:hover::after {
  transform: translate(0, -35%);
}
.facility_hero .hero_main .hero-menu .menu-list .item-link_blank a:hover::after {
  transform: translate(35%, -65%);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .facility_hero .hero_main {
    flex-direction: column;
  }
  .facility_hero .hero_main .hero-image .image {
    padding-top: calc(100% * 2 / 3);
  }
  .facility_hero .hero_main .hero-menu {
    width: 100%;
  }
}
@media screen and (max-width: 567px) {}

/* 施設紹介｜各施設｜次項目の背景（inner_facility_hero.php） */
/* ※main.js で表示位置・幅・高さ制御 */
.facility_bg-float {
  display: block;
  position: absolute;
  /*top: ;*/
  left: 50%;
  transform: translate(-50%, 0);
  /*width: 100vw;*/
  content: '';
  padding: 0;
  /*padding-top: calc(100vw * 400 / 1280);*/
  /*padding-top: calc(100vw * 400 / 1920);*/
  margin: 0;
  background-image: url('../images/bg_bird-cloud_1.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/bg_bird-cloud_1.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: top center;
  z-index: 0;
}
.facility_bg-float ~ * {
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .facility_bg-float {
    background-image: url('../images/bg_bird-cloud_sp_1.svg');
    /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/bg_bird-cloud_sp_1.svg'); */
  }
}
@media screen and (max-width: 567px) {}

.facility_hero:empty {
  margin: 0!important;
}
.facility_bg-float + * {
  margin-top: 0!important;
}


/* 施設紹介｜各施設｜sidebar 制御用（inner_facility_chain.php） */
.facility_chain {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 4.0em;
  margin: 0;
  margin-top: 8.0em;
}
.facility_chain .f-side {
  flex-grow: 0;
}
.facility_chain .f-content {
  flex-grow: 1;
}
.facility_chain .f-side {
  position: sticky;
  /* ※main.js で top 位置制御 */
  /*top: 100px;*/
  width: 200px;
  flex-shrink: 0;
}
.facility_chain .f-side .f-side-list {
  position: relative;
  display: block;
}
.facility_chain .f-side .f-side-list li {
  position: relative;
  display: block;
}
.facility_chain .f-side .f-side-list li::before {
  display: none!important;
}
.facility_chain .f-side .f-side-list li::after {
  display: none;
  position: absolute;
  top: 0.95em;
  left: -1.25em;
  transform: translate(0, -50%);
  width: 0.55em;
  height: 0.55em;
  /* facility_color_setting.php 内で色の可変制御 */
  /*background-color: var(--color-univ-gray); */
  border-radius: 50%;
  content: '';
  margin: 0;
  padding: 0;
}
.facility_chain .f-side .f-side-list li:has(a.this-anchor)::after {
  display: block;
}
.facility_chain .f-side .f-side-list li a {
  text-decoration: none;
}
.facility_chain .f-side .f-side-list li a:not(.this-anchor) {
  color: var(--color-univ-gray)!important;
}
.facility_chain .f-side .f-side-list li a.this-anchor {
  font-weight: 500;
  color: var(--color-univ-brown)!important;
}
.facility_chain .f-side .f-side-list li a:hover {}
.facility_chain .f-content {}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .facility_chain {
    flex-direction: column;
    /*gap: 3.0em;*/
    gap: 0;
  }
  .facility_chain .f-side {
    position: relative;
    top: initial;
    width: 100%;
  }
  .facility_chain .f-side .f-side-list {
    display: none;
  }
}
@media screen and (max-width: 567px) {}


/* 施設紹介｜各施設｜ご利用までの流れ（inner_facility_guide_flow.php） */
.facility_guide_flow {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1.0em;
  padding: 2.0em 3.0em;
  border-radius: 1.0em;
  background-color: var(--color-univ-white);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .facility_guide_flow {
    /*padding: 1.0em 1.5em;*/
    padding: 1.5em 1.5em;
  }
}
@media screen and (max-width: 567px) {}

.facility_guide_flow .flow_item {
  position: relative;
  display: flex;
  gap: 2.0em;
  padding: 1.5em 2.0em;
  border-radius: 0.25em;
  background-color: var(--color-univ-bg-lightgray);
}
.facility_guide_flow .flow_item .flow_item_main {
  flex-grow: 0;
}
.facility_guide_flow .flow_item .flow_item_sub {
  flex-grow: 1;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .facility_guide_flow .flow_item {
    flex-direction: column;
    gap: 1.0em;
    /*padding: 1.0em 1.5em;*/
    padding: 1.5em 1.5em;
  }
}
@media screen and (max-width: 567px) {}

.facility_guide_flow .flow_item :is(.flow_item_main, .flow_item_sub) {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.facility_guide_flow .flow_item .flow_item_main {
  gap: 2.0em;
}
.facility_guide_flow .flow_item .flow_item_main .item_main_icon {
  flex-grow: 0;
}
.facility_guide_flow .flow_item .flow_item_main .item_main_title {
  flex-grow: 1;
}
.facility_guide_flow .flow_item .flow_item_main .item_main_icon {
  position: relative;
  display: block;
  width: max-content;
  max-width: 100%;
}
.facility_guide_flow .flow_item .flow_item_main .item_main_icon .icon {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 5.0em;
  height: 5.0em;
  /* facility_color_setting.php 内で色の可変制御 */
  /* background-color: var(--color-biz-XXXXXX); */
  border-radius: 50%;
}
.facility_guide_flow .flow_item .flow_item_main .item_main_icon .icon::after {
  position: absolute;
  top: calc(100% - 0.25em);
  left: 50%;
  transform: translate(-50%, 0%);
  width: 1.0em;
  height: 1.0em;
  clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
  content: '';
  /* facility_color_setting.php 内で色の可変制御 */
  /* background-color: var(--color-biz-XXXXXX); */
}
.facility_guide_flow .flow_item:last-child .flow_item_main .item_main_icon .icon::after {
  display: none;
}
.facility_guide_flow .flow_item .flow_item_main .item_main_icon .icon img {
  position: relative;
  display: block;
  max-width: 80%;
  opacity: 0.8;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .facility_guide_flow .flow_item :is(.flow_item_main, .flow_item_sub) {
    width: 100%;
  }
  .facility_guide_flow .flow_item .flow_item_main {
    gap: 1.5em;
  }
  .facility_guide_flow .flow_item .flow_item_main .item_main_icon .icon {
    width: 4.0em;
    height: 4.0em;
  }
  .facility_guide_flow .flow_item .flow_item_main .item_main_icon .icon::after {
    width: 0.75em;
    height: 0.75em;
  }
}
@media screen and (max-width: 567px) {}

.facility_guide_flow .flow_item .flow_item_main .item_main_title {
  position: relative;
  display: block;
  min-width: 10.0em;
}
.facility_guide_flow .flow_item .flow_item_main .item_main_title span {
  position: relative;
}
.facility_guide_flow .flow_item .flow_item_main .item_main_title .serial-num {
  display: inline-block;
  font-family: "Barlow", sans-serif;
  font-weight: 500;
  /* facility_color_setting.php 内で色の可変制御 */
  /* color: var(--color-biz-XXXXXX); */
}
.facility_guide_flow .flow_item .flow_item_main .item_main_title .serial-num::before,
.facility_guide_flow .flow_item .flow_item_main .item_main_title .serial-num::after {
  display: inline-block;
  width: 0.25em;
  height: 0.9em;
  transform: translate(0%, 0.15em);
  border: 1.5px solid;
  content: '';
}
.facility_guide_flow .flow_item .flow_item_main .item_main_title .serial-num::before {
  border-right: none;
  margin-right: 0.35em;
}
.facility_guide_flow .flow_item .flow_item_main .item_main_title .serial-num::after {
  border-left: none;
  margin-left: 0.35em;
}
.facility_guide_flow .flow_item .flow_item_main .item_main_title .title {
  display: block;
  font-weight: 500;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .facility_guide_flow .flow_item .flow_item_main .item_main_title {
    min-width: initial;
  }
}
@media screen and (max-width: 567px) {}

.facility_guide_flow .flow_item .flow_item_sub {}
.facility_guide_flow .flow_item .flow_item_sub ul {}
.facility_guide_flow .flow_item .flow_item_sub ul li {}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}


/* 施設紹介｜各施設｜こども園（園のマークについて：説明） */
#main_content_body ul.about_kodomoen li:nth-of-type(1)::before {
  background-color: #FFF697;
  /*border: 1.5px solid #FFF697;*/
}
#main_content_body ul.about_kodomoen li:nth-of-type(2)::before {
  background-color: #54C2F0;
  /*border: 1.5px solid #54C2F0;*/
}
#main_content_body ul.about_kodomoen li:nth-of-type(3)::before {
  background-color: #F09DC1;
  /*border: 1.5px solid #F09DC1;*/
}
#main_content_body ul.about_kodomoen li:nth-of-type(4)::before {
  background-color: #87C796;
  /*border: 1.5px solid #87C796;*/
}
#main_content_body ul.about_kodomoen li:nth-of-type(5)::before {
  background-color: #B4B4B5;
  /*border: 1.5px solid #B4B4B5;*/
}
#main_content_body ul.about_kodomoen li::before {
  width: calc(0.55em + 1.5px * 2);
  height: calc(0.55em + 1.5px * 2);
  border: 1.5px solid var(--color-univ-white);
}


/* 施設紹介｜各施設｜子ページ タイル（inner_facility_children.php） */
.facility_children {
  position: relative;
  display: block;
  margin: 0;
  margin-top: 6.0em;
  margin-bottom: 6.0em;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* 施設紹介｜各施設｜子ページ タイル｜本体（inner_facility_children.php） */
.facility_children .f-children_body {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 2.0em;
  margin: 0;
  margin-top: 3.0em;
}
.facility_children .f-children_body .f-children_items {
  position: relative;
  display: flex;
  width: calc((100% - 2.0em * 2) / 3);
}
.facility_children .f-children_body .f-children_items a {
  flex-grow: 1;
  position: relative;
  display: flex;
  flex-direction: column;
  text-decoration: none;
}
.facility_children .f-children_body .f-children_items a:hover {
  color: var(--color-univ-yellow);
}

.facility_children .f-children_body .f-children_items a .item-image {
  flex-grow: 0;
  position: relative;
  display: block;
  width: 100%;
  margin: 0;
}
.facility_children .f-children_body .f-children_items a .item-image .image {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  padding-top: calc(100% * 2 / 3);
  border-radius: 0.5em;
  overflow: hidden;
}
.facility_children .f-children_body .f-children_items a .item-image .image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.facility_children .f-children_body .f-children_items a .item-title {
  flex-grow: 0;
  position: relative;
  display: block;
  padding: 0;
  padding-right: 2.5em;
  margin: 0;
  margin-top: 0.5em;
}
.facility_children .f-children_body .f-children_items a .item-title::after {
  display: block;
  position: absolute;
  top: calc(50% + 0.05em);
  right: 0;
  width: 0.9em;
  transform: translate(0, -50%);
  content: url('../images/ico_facil-hero_arrow_r.svg');
  /* content: url('<?php echo get_template_directory_uri(); ?>/images/ico_facil-hero_arrow_r.svg'); */
  transition: all 0.2s;
}
.facility_children .f-children_body .f-children_items a:hover .item-title::after {
  transform: translate(35%, -50%);
}
.facility_children .f-children_body .f-children_items a .item-title span {
  position: relative;
  display: block;
  font-size: 1.1em;
  font-weight: 500;
  line-height: 1.5;
  transition: all 0.1s;
}
.facility_children .f-children_body .f-children_items a:not(:hover) .item-title span {
  color: var(--color-univ-brown);
}

.facility_children .f-children_body .f-children_items a .item-summary {
  flex-grow: 1;
  position: relative;
  display: block;
  margin: 0;
  margin-top: 0.25em;
}
.facility_children .f-children_body .f-children_items a .item-summary span {
  position: relative;
  display: block;
  font-size: 0.9em;
  font-weight: 400;
  transition: all 0.1s;
}
.facility_children .f-children_body .f-children_items a:not(:hover) .item-summary span {
  color: var(--color-univ-olivegray);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .facility_children .f-children_body {
    flex-direction: column;
  }
  .facility_children .f-children_body .f-children_items {
    width: 100%;
  }
}
@media screen and (max-width: 567px) {}


/* 施設紹介｜事業一覧（achv_facilities.php） */
.achv_facility_wrap {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  margin-top: 4.0em;
}
.achv_facility_wrap a {
  text-decoration: none;
}
.achv_facility_wrap .wrap_body {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
}
.achv_facility_wrap .wrap_body .body_items {
  position: relative;
  display: flex;
  gap: 3.0em;
  flex-wrap: wrap;
}
.achv_facility_wrap .wrap_body .body_items .item {
  position: relative;
  display: flex;
  gap: 1.5em;
  flex-direction: column;
  width: 100%;
  max-width: calc((100% - 3.0em * 2) / 3);
  background-color: var(--color-univ-white);
  border-radius: 0.5em;
  padding: 2.0em;
  margin: 0;
}
.achv_facility_wrap .wrap_body .body_items .item :is(.title, .summary) {
  flex-grow: 0;
}
.achv_facility_wrap .wrap_body .body_items .item .children {
  flex-grow: 1;
}
.achv_facility_wrap .wrap_body .body_items .item .title {
  position: relative;
  display: flex;
  width: 100%;
  padding: 0;
  padding-bottom: 0.75em;
  border: 0;
  border-bottom: 1.5px solid var(--color-univ-ico-beige);
}
.achv_facility_wrap .wrap_body .body_items .item .title a {
  flex-grow: 1;
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  padding: 0;
  padding-right: 2.5em;
}
.achv_facility_wrap .wrap_body .body_items .item .title a::after {
  display: block;
  position: absolute;
  top: calc(50% + 0.05em);
  right: 0;
  width: 0.9em;
  transform: translate(0, -50%);
  content: url('../images/ico_facil-hero_arrow_r.svg');
  /* content: url('<?php echo get_template_directory_uri(); ?>/images/ico_facil-hero_arrow_r.svg'); */
  transition: all 0.2s;
}
.achv_facility_wrap .wrap_body .body_items .item .title a:hover::after {
  transform: translate(35%, -50%);
}
.achv_facility_wrap .wrap_body .body_items .item .title a span {
  flex-grow: 0;
  position: relative;
  display: block;
  width: max-content;
  max-width: 100%;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-size: 1.15em;
  line-height: 1.5;
}
.achv_facility_wrap .wrap_body .body_items .item .title a:not(:hover) span {
  color: var(--color-univ-brown);
}
.achv_facility_wrap .wrap_body .body_items .item .summary {
  position: relative;
  display: block;
  width: 100%;
  border: 0;
  border-bottom: 1.5px solid var(--color-univ-ico-beige);
}
.achv_facility_wrap .wrap_body .body_items .item .summary p {
  font-size: 0.83em;
}
.achv_facility_wrap .wrap_body .body_items .item .summary p span {
  color: var(--color-univ-olivegray);
}
.achv_facility_wrap .wrap_body .body_items .item .children {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.5em;
  width: 100%;
  padding: 0;
  padding-top: 0.75em;
  border: 0;
}
.achv_facility_wrap .wrap_body .body_items .item .children .child {
  position: relative;
  display: flex;
  width: 100%;
}
.achv_facility_wrap .wrap_body .body_items .item .children .child a {
  flex-grow: 1;
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  padding: 0;
  padding-right: 2.5em;
}
.achv_facility_wrap .wrap_body .body_items .item .children .child a::after {
  display: block;
  position: absolute;
  top: calc(50% + 0.05em);
  right: 0;
  width: 0.9em;
  transform: translate(0, -50%);
  content: url('../images/ico_facil-hero_arrow_r.svg');
  /* content: url('<?php echo get_template_directory_uri(); ?>/images/ico_facil-hero_arrow_r.svg'); */
  transition: all 0.2s;
}
.achv_facility_wrap .wrap_body .body_items .item .children .child a:hover::after {
  transform: translate(35%, -50%);
}
.achv_facility_wrap .wrap_body .body_items .item .children .child a span {
  flex-grow: 0;
  position: relative;
  display: block;
  width: max-content;
  max-width: 100%;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-size: 0.9em;
  line-height: 1.5;
}
.achv_facility_wrap .wrap_body .body_items .item .children .child a:not(:hover) span {
  color: var(--color-univ-brown);
}
@media screen and (max-width: 1023px) {
  .achv_facility_wrap .wrap_body .body_items {
    gap: 2.0em;
  }
  .achv_facility_wrap .wrap_body .body_items .item {
    max-width: calc((100% - 2.0em * 1) / 2);
  }
}
@media screen and (max-width: 767px) {
  .achv_facility_wrap .wrap_body .body_items {
    gap: 1.5em;
  }
  .achv_facility_wrap .wrap_body .body_items .item {
    max-width: calc((100% - 1.5em * 0) / 1);
  }
}
@media screen and (max-width: 567px) {}

/* 施設紹介｜事業一覧｜事業別カラー｜共通（achv_facilities.php） */
.achv_facility_wrap .item::before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 1.5em;
  content: '';
  padding: 0;
  padding-top: 1.5em;
  border-top-left-radius: 0.5em;
  clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
}
.achv_facility_wrap .child-text {
  padding-left: 1.5em;
}
.achv_facility_wrap .child-text::before {
  display: block;
  position: absolute;
  top: 0.35em;
  left: 0;
  width: 0.9em;
  content: '';
  padding: 0;
  padding-top: 0.9em;
  border-radius: 50%;
}
.achv_facility_wrap :is(.item, .child-text)::before {
  background-color: var(--color-univ-ico-gray);
}
/* 施設紹介｜事業一覧｜事業別カラー｜養護老人ホーム // 向陽苑（崎浦・木曳野） */
.achv_facility_wrap :is(.item, .child-text).biz-koyoen::before {
  background-color: var(--color-biz-koyoen);
}
/* 施設紹介｜事業一覧｜事業別カラー｜特別養護老人ホーム・短期入所サービス // 万陽苑（従来型） */
.achv_facility_wrap :is(.item, .child-text).biz-manyoen-conv::before {
  background-color: var(--color-biz-manyoen-conv);
}
/* 施設紹介｜事業一覧｜事業別カラー｜居宅介護支援、通所介護サービス、サービス付き高齢者向け住宅 // 在宅事業推進局 */
.achv_facility_wrap :is(.item, .child-text).biz-zaitaku::before {
  background-color: var(--color-biz-zaitaku);
}
/* 施設紹介｜事業一覧｜事業別カラー｜救護施設 // 三陽ホーム */
.achv_facility_wrap :is(.item, .child-text).biz-sanyo::before {
  background-color: var(--color-biz-sanyo);
}
/* 施設紹介｜事業一覧｜事業別カラー｜障害者福祉施設、障害者グループホーム // ハビリポート（若葉・若竹） */
.achv_facility_wrap :is(.item, .child-text).biz-habili::before {
  background-color: var(--color-biz-habili);
}
/* 施設紹介｜事業一覧｜事業別カラー｜就労継続支援B型 // あけぼの作業所 */
.achv_facility_wrap :is(.item, .child-text).biz-akebono::before {
  background-color: var(--color-biz-akebono);
}
/* 施設紹介｜事業一覧｜事業別カラー｜認定こども園 // みずきこども園 */
.achv_facility_wrap :is(.item, .child-text).biz-kodomoen::before {
  background-color: var(--color-biz-kodomoen);
}
/* 施設紹介｜事業一覧｜事業別カラー｜その他 // 陽風園 */
.achv_facility_wrap :is(.item, .child-text).biz-yofuen::before {
  background-color: var(--color-biz-yofuen);
}
/* 施設紹介｜事業一覧｜事業別カラー｜第二万陽苑 // 第二万陽苑 */
.achv_facility_wrap :is(.item, .child-text).biz-manyoen-2::before {
  background-color: var(--color-biz-manyoen-2);
}
/* 施設紹介｜事業一覧｜事業別カラー｜第三万陽苑 // 第三万陽苑 */
.achv_facility_wrap :is(.item, .child-text).biz-manyoen-3::before {
  background-color: var(--color-biz-manyoen-3);
}
/* 施設紹介｜事業一覧｜事業別カラー｜陽風園診療所 // 診療所 */
.achv_facility_wrap :is(.item, .child-text).biz-shinryo::before {
  background-color: var(--color-biz-shinryo);
}




/* ##############################################
##
##  採用情報トップページ（achv_rec-top.php）
##  採用情報｜メニュー等（general_recruit.php） 
##  採用情報（single-recruit.php）
##  採用情報｜先輩の声｜個人（tpl_recruit-personnel.php）
##
############################################## */

/* ##############################################
## 採用情報トップページ（achv_rec-top.php）
############################################## */

/* ##############################################
## 採用情報トップページ｜共通（#achv-recruit） 
############################################## */
/* 採用情報トップページ｜共通（見出し・英語表記）（#achv-recruit） */
#achv-recruit :is(h2, h4).sub-en {
  position: relative;
  font-size: 1.0em;
  color: var(--color-univ-brown);
}
#achv-recruit :is(h2, h4).sub-en.white {
  color: var(--color-univ-white);
}
#achv-recruit :is(h2, h4).sub-en span {
  display: inline-block;
}
/* data-en="XXXXXX" 文字列可変 */
#achv-recruit :is(h2, h4).sub-en::before {
  position: relative;
  display: block;
  content: attr(data-en);
  font-family: "Josefin Sans", sans-serif;
  font-weight: 400;
  font-size: 1.0em;
}
#achv-recruit h2.sub-en span {
  font-size: 2.2em;
  line-height: 1.5;
}
#achv-recruit h4.sub-en span {
  font-size: 1.7em;
  line-height: 1.6;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit h2.sub-en span {
    font-size: 2.1em;
  }
  #achv-recruit h4.sub-en span {
    font-size: 1.5em;
  }
}
@media screen and (max-width: 567px) {}

/* 採用情報トップページ｜共通（rec-bg1背景・テクスチャー）（#achv-recruit） */
#achv-recruit .bg-tex-rec-bg1 {
  background-color: var(--color-rec-bg1);
  background-image: url('../images/bg_rec_texture.jpg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/bg_rec_texture.jpg'); */
  background-blend-mode: multiply;
  background-repeat: repeat;
  /*background-size: 800px;*/
}

/* 採用情報トップページ｜共通ボタン（テンプレート用）（#achv-recruit） */
#achv-recruit .general_buttons.recruit {
  display: flex;
  flex-wrap: wrap;
  gap: 1.0em;
  justify-content: center;
  width: 100%;
  margin: 2.0em auto;
}
#achv-recruit .general_buttons.recruit a.button {
  display: inline-block;
  position: relative;
  width: max-content;
  min-width: 250px;
  max-width: 100%;
  border-radius: 0.25em;
  box-shadow: none;
  font-size: 1.0em;
  text-decoration: none;
  text-align: center;
  color: var(--color-univ-white);
  padding: 1.25em 1.5em;
  padding-right: 3.5em;
  transition: 0.15s;
}
#achv-recruit .general_buttons.recruit a.button span {}
#achv-recruit .general_buttons.recruit a.button:hover {
  color: var(--color-univ-yellow);
}
#achv-recruit .general_buttons.recruit a.button:hover span {}
#achv-recruit .general_buttons.recruit a.button::before {
  display: none;
}
#achv-recruit .general_buttons.recruit a.button::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 0.75em;
  transform: translate(0, -50%);
  width: 1.5em;
  padding: 0;
  padding-top: 1.5em;
  background-color: var(--color-rec-main);
  border-radius: 0.25em;
  background-image: url('../images/ico_arrow_r_white.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_white.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .general_buttons.recruit a.button {
    padding: 1.0em 1.5em;
  }
}
@media screen and (max-width: 567px) {}


/* ##############################################
## 採用情報｜メニュー等（general_recruit.php） 
############################################## */
/* 採用情報｜メニュー等｜エントリー（general_recruit.php） */
.general-entry {
  /* top は main.js で header 高さを読み込み */
  /*top: 100px;*/
}
.rec-top_general-entry {
  display: block;
  position: fixed;
  right: 0;
  width: fit-content;
  padding: 0;
  margin: 0;
  z-index: 100;
}
.rec-top_general-entry .general-entry__body {
  position: relative;
  display: flex;
  gap: 0;
  padding: 0;
  padding-top: 1.0em;
  margin: 0;
}
.rec-top_general-entry .general-entry__body .general-entry__body-wrap {
  position: relative;
  display: flex;
  gap: 0;
  padding: 0;
  margin: 0;
  animation: recGeneralFade1 1.0s ease-out forwards;
  opacity: 0;
}
@keyframes recGeneralFade1 {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1.0;
  }
}
.rec-top_general-entry .general-entry__body .general-entry__body-wrap a {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.25em;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  line-height: 1.5;
  background-color: var(--color-rec-main);
  border-top-left-radius: 0.5em;
  border-bottom-left-radius: 0.5em;
  padding: 0.75em;
  margin: 0;
  transition: padding 0.35s ease, gap 0.35s ease, background-color 0.2s ease;
}
.rec-top_general-entry .general-entry__body .general-entry__body-wrap a:hover {
  background-color: var(--color-rec-bg1);
}
.rec-top_general-entry .general-entry__body .general-entry__body-wrap a :is(.entry-jp, .entry-en, .entry-btn) {
  position: relative;
  display: block;
  width: max-content;
  max-width: 100%;
}
.rec-top_general-entry .general-entry__body .general-entry__body-wrap a :is(.entry-jp, .entry-en, .entry-btn) span {
  position: relative;
  display: block;
}
.rec-top_general-entry .general-entry__body .general-entry__body-wrap a .entry-jp span {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-size: 0.7em;
  color: var(--color-univ-brown);
  transition: font-size 0.35s ease;
}
.rec-top_general-entry .general-entry__body .general-entry__body-wrap a .entry-en {
  transition: opacity 0.25s ease, max-height 0.25s ease;
  max-height: 2em;
  overflow: hidden;
}
.rec-top_general-entry .general-entry__body .general-entry__body-wrap a .entry-en span {
  font-family: "Josefin Sans", sans-serif;
  font-weight: 400;
  font-size: 1.1em;
  color: var(--color-univ-brown);
}
.rec-top_general-entry .general-entry__body .general-entry__body-wrap a .entry-btn span {
  width: 1.5em;
  padding: 0;
  padding-top: 1.5em;
  background-color: var(--color-univ-white);
  border-radius: 0.25em;
  background-image: url('../images/ico_arrow_r_brown.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_brown.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}

/* 採用情報トップページ｜メニュー等｜エントリー（スクロール後の動作｜縮小） */
.is-fixed .rec-top_general-entry {}
.is-fixed .rec-top_general-entry .general-entry__body .general-entry__body-wrap a {
  gap: 0.5em;
  padding: 0.75em 0.5em;
}
.is-fixed .rec-top_general-entry .general-entry__body .general-entry__body-wrap a .entry-jp {
  display: flex;
  justify-content: center;
  width: 100%;
  margin: 0 auto;
}
.is-fixed .rec-top_general-entry .general-entry__body .general-entry__body-wrap a .entry-jp span {
  writing-mode: vertical-rl;
  font-size: 0.8em;
  transition-delay: 0.08s;
  display: inline-block;
  text-align: center;
}
.is-fixed .rec-top_general-entry .general-entry__body .general-entry__body-wrap a .entry-en {
  opacity: 0;
  max-height: 0;
  max-width: 0%;
}
.is-fixed .rec-top_general-entry .general-entry__body .general-entry__body-wrap a .entry-en span {
  font-size: 0em;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}


/* 採用情報｜メニュー等｜採用情報トップメニュー（general_recruit.php） */
.rec-top_general-menu {
  display: block;
  position: fixed;
  left: 4.0em;
  bottom: 2.0em;
  width: fit-content;
  line-height: 1.5;
  z-index: 100;
  transition: 0.2s;
}
.rec-top_general-menu .general-menu__body {
  position: relative;
  display: flex;
  gap: 0;
  animation: recGeneralFade2 1.0s ease-out forwards;
  opacity: 0;
}
@keyframes recGeneralFade2 {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1.0;
  }
}
.rec-top_general-menu .general-menu__body .general-menu__body-wrap {
  position: relative;
  display: flex;
  gap: 1.0em;
  flex-wrap: wrap;
  background-color: var(--color-univ-white);
  border-radius: 1.75em;
  padding: 0.75em 1.5em 0.75em;
  margin: 0;
  transition: 0.2s;
}
.rec-top_general-menu .general-menu__body .general-menu__body-wrap .item {
  position: relative;
  display: flex;
  gap: 0;
}
.rec-top_general-menu .general-menu__body .general-menu__body-wrap .item a {
  position: relative;
  display: flex;
  gap: 0;
  align-items: center;
  text-decoration: none;
}
.rec-top_general-menu .general-menu__body .general-menu__body-wrap .item a :is(.anc, .btn) {
  position: relative;
  display: block;
  font-size: 0.8em;
  transition: 0.1s;
}
.rec-top_general-menu .general-menu__body .general-menu__body-wrap .item a .anc {
  color: var(--color-univ-brown);
}
.rec-top_general-menu .general-menu__body .general-menu__body-wrap .item a .btn {
  color: var(--color-rec-btn-text);
  background-color: var(--color-rec-btn-bg);
  border-radius: 1.25em;
  border: 1.5px solid var(--color-rec-btn-bg);
  padding: 0.35em 1.25em 0.5em;
}
.rec-top_general-menu .general-menu__body .general-menu__body-wrap .item a:hover .anc {
  color: var(--color-univ-yellow);
}
.rec-top_general-menu .general-menu__body .general-menu__body-wrap .item a:hover .btn {
  background-color: var(--color-univ-white);
}
/* 採用情報トップページ｜メニュー等｜エントリー（スクロール後の動作｜下端に移動） */
.is-fixed .rec-top_general-menu {
  bottom: 0;
}
.is-fixed .rec-top_general-menu .general-menu__body .general-menu__body-wrap {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .rec-top_general-menu {
    display: none;
  }
}
@media screen and (max-width: 567px) {}

/* ハンバーガーメニューを開いた際は表示しない */
.hamburger-menu-open .rec-top_general-entry,
.hamburger-menu-open .rec-top_general-menu {
  display: none;
}



/* ##############################################
## 採用情報トップページ｜ファーストビュー（rec-top_hero.php） 
############################################## */
/* 採用情報トップページ｜ファーストビュー（rec-top_hero.php） */
#achv-recruit .rec-top_hero {
  position: relative;
  display: block;
  width: 100%;
  overflow: hidden;
  z-index: 100;
}
#achv-recruit .rec-top_hero .hero__body {
  position: relative;
  display: block;
  width: 100%;
  padding: 0 2.0em 2.0em;
}
#achv-recruit .rec-top_hero .hero__body .hero__body-wrap {
  position: relative;
  display: block;
  width: 100%;
  z-index: 0;
}
#achv-recruit .rec-top_hero .hero__body .hero__body-wrap::before {}

/* 採用情報トップページ｜ファーストビュー｜メイン */
#achv-recruit .hero__main {
  position: relative;
  display: block;
  z-index: 100;
}
#achv-recruit .hero__main .hero__main-wrap {
  position: relative;
  display: block;
}

/* 採用情報トップページ｜ファーストビュー｜メイン｜背景 */
#achv-recruit .rec-top_hero .hero__body .hero__body-wrap .hero__main-background {
  display: block;
  position: absolute;
  top: 1.0em;
  left: 0;
  width: 100%;
  height: calc(100% - 1.0em);
  border-radius: 3.0em;
  background-color: var(--color-rec-bg1);
  overflow: hidden;
  z-index: 0;
}
#achv-recruit .rec-top_hero .hero__body .hero__body-wrap .hero__main-background::before {
  display: block;
  position: absolute;
  inset: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url('../images/bg_rec_texture.jpg') repeat;
  /* background: url('<?php echo get_template_directory_uri(); ?>/images/bg_rec_texture.jpg') repeat; */
  /* background-size: 800px auto; */
  mix-blend-mode: multiply;
  pointer-events: none;
  content: '';
  z-index: 0;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .rec-top_hero .hero__body .hero__body-wrap .hero__main-background {
    top: 2.0em;
    height: calc(100% - 2.0em);
    border-radius: 2.0em;
  }
}
@media screen and (max-width: 567px) {}

/* 採用情報トップページ｜ファーストビュー｜メイン｜紙吹雪（小） */
#achv-recruit .hero__main .hero__main-wrap .hero__main-confetti_small {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#achv-recruit .hero__main .hero__main-wrap .hero__main-confetti_small .confetti_small {
  display: block;
  position: absolute;
  top: 0%;
  width: 25%;
  height: 80%;
  transform: translate(-50%, -2.0em);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: top center;
  opacity: 0;
  animation: recHeroFadeSmall 3.5s ease-out forwards;
}
@keyframes recHeroFadeSmall {
  0% {
    transform: translate(-50%, -2.0em);
    opacity: 0;
  }
  60% {
    transform: translate(-50%, -0.25em);
    opacity: 1.0;
  }
  100% {
    transform: translate(-50%, 0);
    opacity: 1.0;
  }
}
#achv-recruit .hero__main .hero__main-wrap .hero__main-confetti_small .confetti_small.item-1 {
  left: 5%;
  background-image: url('../images/rec-top_hero-confetti_small_1.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/rec-top_hero-confetti_small_1.svg'); */
}
#achv-recruit .hero__main .hero__main-wrap .hero__main-confetti_small .confetti_small.item-2 {
  left: 35%;
  background-image: url('../images/rec-top_hero-confetti_small_2.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/rec-top_hero-confetti_small_2.svg'); */
}
#achv-recruit .hero__main .hero__main-wrap .hero__main-confetti_small .confetti_small.item-3 {
  left: 65%;
  background-image: url('../images/rec-top_hero-confetti_small_3.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/rec-top_hero-confetti_small_3.svg'); */
}
#achv-recruit .hero__main .hero__main-wrap .hero__main-confetti_small .confetti_small.item-4 {
  left: 95%;
  background-image: url('../images/rec-top_hero-confetti_small_4.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/rec-top_hero-confetti_small_4.svg'); */
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .hero__main .hero__main-wrap .hero__main-confetti_small .confetti_small {
    height: 100%;
  }
  #achv-recruit .hero__main .hero__main-wrap .hero__main-confetti_small .confetti_small.item-1 {
    left: 0%;
  }
  #achv-recruit .hero__main .hero__main-wrap .hero__main-confetti_small .confetti_small.item-2 {
    left: 30%;
  }
  #achv-recruit .hero__main .hero__main-wrap .hero__main-confetti_small .confetti_small.item-3 {
    left: 70%;
  }
  #achv-recruit .hero__main .hero__main-wrap .hero__main-confetti_small .confetti_small.item-4 {
    left: 100%;
  }
}
@media screen and (max-width: 567px) {}

/* 採用情報トップページ｜ファーストビュー｜メイン｜紙吹雪（大） */
#achv-recruit .hero__main .hero__main-wrap .hero__main-confetti_large {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 150;
}
#achv-recruit .hero__main .hero__main-wrap .hero__main-confetti_large .confetti_large {
  display: block;
  position: absolute;
  width: 5.0em;
  height: 5.0em;
  transform: translate(-50%, -2.0em);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: top center;
  animation: recHeroFadeLarge 3.5s ease-out forwards;
  opacity: 0;
  filter: blur(0);
}
@keyframes recHeroFadeLarge {
  0% {
    transform: translate(-50%, -2.0em);
    opacity: 0;
    filter: blur(0);
  }
  50% {
    transform: translate(-50%, -2.0em);
    opacity: 0;
    filter: blur(0);
  }
  75% {
    filter: blur(0);
  }
  100% {
    transform: translate(-50%, 0);
    opacity: 1.0;
    filter: blur(5px);
  }
}
#achv-recruit .hero__main .hero__main-wrap .hero__main-confetti_large .confetti_large.item-1 {
  top: 15%;
  left: 7%;
  background-image: url('../images/rec-top_hero-confetti_large_orange.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/rec-top_hero-confetti_large_orange.svg'); */
}
#achv-recruit .hero__main .hero__main-wrap .hero__main-confetti_large .confetti_large.item-2 {
  top: 0%;
  left: 80%;
  background-image: url('../images/rec-top_hero-confetti_large_yellow.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/rec-top_hero-confetti_large_yellow.svg'); */
}
#achv-recruit .hero__main .hero__main-wrap .hero__main-confetti_large .confetti_large.item-3 {
  top: 60%;
  left: 98%;
  background-image: url('../images/rec-top_hero-confetti_large_orange.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/rec-top_hero-confetti_large_orange.svg'); */
}

/* 採用情報トップページ｜ファーストビュー｜メイン｜スライド */
#achv-recruit .hero__main .hero__main-wrap .hero__main-slide {
  position: relative;
  display: flex;
  gap: 0;
  white-space: nowrap;
  will-change: transform;
}
#achv-recruit .hero__main .hero__main-wrap .hero__main-slide .main-slide-item {
  flex: 0 0 calc((100% - 2.0em * 2) / 3); /* 画面幅 */
  position: relative;
  display: flex;
  padding: 0 1.0em;
  margin: 0;
}
#achv-recruit .hero__main .hero__main-wrap .hero__main-slide .main-slide-item .item-wrap {
  position: relative;
  display: flex;
  width: 100%;
  background-image: url('../images/rec-top_hero-slide-spotlight.png');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/rec-top_hero-slide-spotlight.png'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: top center;
  padding: 0;
  padding-top: calc(100% * 1 / 3);
}
#achv-recruit .hero__main .hero__main-wrap .hero__main-slide .main-slide-item .item-wrap .image {
  position: relative;
  display: flex;
  width: 100%;
  padding: 0;
  padding-top: calc(100% * 2 / 3);
  border-radius: 50%;
  overflow: hidden;
}
#achv-recruit .hero__main .hero__main-wrap .hero__main-slide .main-slide-item .item-wrap .image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .hero__main .hero__main-wrap .hero__main-slide .main-slide-item {
    flex: 0 0 100%; /* 画面幅 */
  }
}
@media screen and (max-width: 567px) {}

/* 採用情報トップページ｜ファーストビュー｜メイン｜インフォ */
#achv-recruit .hero__main .hero__main-wrap .hero__main-info {
  position: relative;
  display: flex;
  gap: 2.0em;
  align-items: center;
  width: 100%;
  padding: 2.0em;
  margin: 0;
  z-index: 200;
}
#achv-recruit .hero__main .hero__main-wrap .hero__main-info .main-info-btn {
  flex-grow: 1;
}
#achv-recruit .hero__main .hero__main-wrap .hero__main-info .main-info-btn .btn-rec-hero {
  position: relative;
  display: block;
  width: 2.0em;
  padding-top: 2.0em;
  background-color: var(--color-univ-white);
  background-image: url('../images/rec-top_btn-hero-slide_pause.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/rec-top_btn-hero-slide_pause.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  border-radius: 0.25em;
  cursor: pointer;
  z-index: 200;
  /*transition: 0.15s;*/
}
#achv-recruit .hero__main .hero__main-wrap .hero__main-info .main-info-btn .btn-rec-hero.pause {
  background-image: url('../images/rec-top_btn-hero-slide_play.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/rec-top_btn-hero-slide_play.svg'); */
}
#achv-recruit .hero__main .hero__main-wrap .hero__main-info .main-info-title {
  flex-grow: 0;
}
#achv-recruit .hero__main .hero__main-wrap .hero__main-info .main-info-title p {
  position: relative;
  display: block;
  line-height: 1.5;
}
#achv-recruit .hero__main .hero__main-wrap .hero__main-info .main-info-title p span {
  position: relative;
  display: block;
  width: max-content;
  max-width: 100%;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-size: 2.0em;
  color: var(--color-univ-brown);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .hero__main .hero__main-wrap .hero__main-info {
    flex-direction: column;
    gap: 2.0em;
  }
  #achv-recruit .hero__main .hero__main-wrap .hero__main-info :is(.main-info-btn, .main-info-title) {
    width: 100%;
  }
  #achv-recruit .hero__main .hero__main-wrap .hero__main-info .main-info-title p span {
    font-size: 1.7em;
  }
}
@media screen and (max-width: 567px) {}


/* ##############################################
## 採用情報トップページ｜お知らせ（rec-top_notice.php） 
############################################## */
/* 採用情報トップページ｜お知らせ（rec-top_notice.php） */
#achv-recruit .rec-top_notice {
  position: relative;
  display: block;
  width: 100%;
}
#achv-recruit .rec-top_notice .notice__body {
  position: relative;
  display: block;
  width: 100%;
  padding: 6.0em 4.0em 0;
  margin: 0;
}
#achv-recruit .rec-top_notice .notice__body .notice__body-wrap {
  position: relative;
  display: flex;
  gap: 4.0em;
  width: 100%;
  max-width: 1400px;
  background-color: var(--color-univ-white);
  border-radius: 3.0em;
  padding: 3.0em 3.0em;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .rec-top_notice .notice__body {
    padding: 5.0em 2.0em 0;
  }
  #achv-recruit .rec-top_notice .notice__body .notice__body-wrap {
    flex-direction: column;
    gap: 2.0em;
  }
  #achv-recruit .rec-top_notice .notice__body .notice__body-wrap {
    border-radius: 2.0em;
    padding: 2.0em 2.0em;
  }
}
@media screen and (max-width: 567px) {}

/* 採用情報トップページ｜お知らせ｜タイトル */
#achv-recruit .notice__title-wrap {
  flex-grow: 0;
  position: relative;
  display: flex;
  gap: 2.0em;
  flex-direction: column;
}
#achv-recruit .notice__title {}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .notice__title-wrap {
    width: 100%;
  }
}
@media screen and (max-width: 567px) {}

/* 採用情報トップページ｜お知らせ｜メイン */
#achv-recruit .notice__main {
  flex-grow: 1;
  position: relative;
}
#achv-recruit .notice__main .notice__main-wrap {
  position: relative;
  width: 100%;
}

@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* 採用情報トップページ｜お知らせ｜メイン｜リスト */
#achv-recruit .notice__main .notice__main-wrap .items {
  /* ul */
  list-style-type: none;
  position: relative;
  /*display: block;*/
  width: 100%;
  padding: 0;
  margin: 0;
}
#achv-recruit .notice__main .notice__main-wrap .item-wrap {
  /* li */
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
}
#achv-recruit .notice__main .notice__main-wrap .item-wrap a {
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  row-gap: 0.5em;
  column-gap: 1.5em;
  width: 100%;
  text-decoration: none;
  border: none;
  border-bottom: 1px solid var(--color-univ-olivegray);
  padding: 1.0em 0;
  padding-right: 3.0em;
  margin: 0;
}
#achv-recruit .notice__main .notice__main-wrap .item-wrap a.no-event {
  padding-right: 0;
  pointer-events: none!important;
}
#achv-recruit .notice__main .notice__main-wrap .item-wrap a::before {
  display: block;
  position: absolute;
  top: 50%;
  right: 0.5em;
  transform: translate(0, -50%);
  width: 1.5em;
  padding: 0;
  padding-top: 1.5em;
  background-color: var(--color-rec-main);
  border-radius: 0.25em;
  background-image: url('../images/ico_arrow_r_white.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_white.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
  /*transition: 0.15s;*/
}
#achv-recruit .notice__main .notice__main-wrap .item-wrap a.no-event::before {
  display: none;
}
#achv-recruit .notice__main .notice__main-wrap .item-wrap a:hover::before {
  /*right: 0;*/
}
#achv-recruit .notice__main .notice__main-wrap .item-wrap a .item-date {
  flex-grow: 0;
  position: relative;
  display: flex;
  align-items: center;
  min-width: 5.0em;
}
#achv-recruit .notice__main .notice__main-wrap .item-wrap a :is(.item-date, .item-cat, .item-title) span {
  position: relative;
  display: block;
  line-height: 1.5;
  transition: 0.15s;
}
#achv-recruit .notice__main .notice__main-wrap .item-wrap a .item-date span {
  /*color: var(--color-univ-brown);*/
  color: var(--color-rec-spot);
}
#achv-recruit .notice__main .notice__main-wrap .item-wrap a:not(.no-event):hover .item-date span {
  color: var(--color-univ-yellow);
}
#achv-recruit .notice__main .notice__main-wrap .item-wrap a .item-cat {
  flex-grow: 0;
  position: relative;
  display: flex;
  align-items: center;
  min-width: 8.0em;
}
#achv-recruit .notice__main .notice__main-wrap .item-wrap a .item-cat span {
  width: 100%;
  text-align: center;
  font-size: 0.8em;
  color: var(--color-rec-text);
  background-color: var(--color-rec-bg2);
  border: 1px solid var(--color-rec-bg1);
  border-radius: 0.25em;
  padding: 0.2em 0.75em 0.3em;
}
#achv-recruit .notice__main .notice__main-wrap .item-wrap a:not(.no-event):hover .item-cat span {
  color: var(--color-rec-text);
}
#achv-recruit .notice__main .notice__main-wrap .item-wrap a .item-title {
  flex-grow: 1;
  position: relative;
  display: flex;
  align-items: center;
}
#achv-recruit .notice__main .notice__main-wrap .item-wrap a .item-title span {
  color: var(--color-univ-brown);
}
#achv-recruit .notice__main .notice__main-wrap .item-wrap a:not(.no-event):hover .item-title span {
  color: var(--color-univ-yellow);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .notice__main .notice__main-wrap .item-wrap a .item-title {
    width: 100%;
  }
}
@media screen and (max-width: 567px) {}


/* ##############################################
## 採用情報トップページ｜メッセージ（rec-top_message.php） 
############################################## */
/* 採用情報トップページ｜メッセージ（rec-top_message.php） */
#achv-recruit .rec-top_message {
  position: relative;
  display: block;
  width: 100%;
  z-index: 100;
}
#achv-recruit .rec-top_message .message__body {
  position: relative;
  display: block;
  width: 100%;
  padding: 4.0em 0;
  margin: 0;
}
#achv-recruit .rec-top_message .message__body .message__body-wrap {
  position: relative;
  display: block;
  width: 100%;
  max-width: 1400px;
  min-height: 40vh;
  padding: 0 4.0em;
  margin: 0 auto;
  z-index: 10;
}
#achv-recruit .rec-top_message .message__body .message__body-wrap::before,
#achv-recruit .rec-top_message .message__body .message__body-wrap::after {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('../images/rec-top_stage-curtain.png');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/rec-top_stage-curtain.png'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: top left;
  content: '';
}
#achv-recruit .rec-top_message .message__body .message__body-wrap::before {
  transform: scale(1, 1);
}
#achv-recruit .rec-top_message .message__body .message__body-wrap::after {
  transform: scale(-1, 1);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .rec-top_message .message__body .message__body-wrap {
    padding: 0 2.0em;
  }
}
@media screen and (max-width: 567px) {}

/* 採用情報トップページ｜メッセージ｜メイン */
#achv-recruit .message__main {
  position: relative;
  display: flex;
  gap: 0;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding: 2.0em 0;
  z-index: 100;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .message__main {
    padding: 5.0em 0 2.0em;
  }
}
@media screen and (max-width: 567px) {}

#achv-recruit .message__main .message__main-wrap {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
}
#achv-recruit .message__main .message__main-wrap::before,
#achv-recruit .message__main .message__main-wrap::after {
  display: block;
  position: absolute;
  top: 0;
  width: 25%;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: top left;
  padding-top: calc(25% * 6 / 5);
  content: '';
  z-index: 70;
  transform: translate(0, -2.0em);
  opacity: 0;
  /* transition: 2.0s ease-in-out; */
}
#achv-recruit .message__main .message__main-wrap::before {
  left: 0;
  background-image: url('../images/rec-top_stage-confetti_left.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/rec-top_stage-confetti_left.svg'); */
}
#achv-recruit .message__main .message__main-wrap::after {
  right: 0;
  background-image: url('../images/rec-top_stage-confetti_right.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/rec-top_stage-confetti_right.svg'); */
}
#achv-recruit .message__main .message__main-wrap .main-title {
  position: relative;
  display: block;
  /*width: 100%;*/
  width: 80%;
  /*max-width: 1000px;*/
  max-width: 800px;
  margin: 0 auto;
  z-index: 150;
}
#achv-recruit .message__main .message__main-wrap .main-title::before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('../images/rec-top_stage-title_light.png');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/rec-top_stage-title_light.png'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
  filter: blur(5px);
  opacity: 0;
  /*transition: 1.0s ease-out;*/
}
#achv-recruit .message__main .message__main-wrap .main-title img {
  position: relative;
  display: block;
  width: 100%;
}
#achv-recruit .message__main .message__main-wrap .main-lead {
  position: relative;
  display: block;
  width: 100%;
  padding: 0 1.5em;
  margin: 0;
  margin-top: 2.0em;
  z-index: 150;
}
#achv-recruit .message__main .message__main-wrap .main-lead p {
  text-align: center;
}
#achv-recruit .message__main .message__main-wrap .main-lead p span {
  position: relative;
  display: inline-block;
}

/* アニメーション｜紙吹雪 */
.is-rec-msg-scrl #achv-recruit .message__main .message__main-wrap::before,
.is-rec-msg-scrl #achv-recruit .message__main .message__main-wrap::after {
  animation: fadeLate2 3.5s ease-out forwards;
  /* transform: translate(0, 0); */
  /* opacity: 1.0; */
}
@keyframes fadeLate2 {
  0% {
    transform: translate(0, -2.0em);
    opacity: 0;
  }
  50% {
    transform: translate(0, -2.0em);
    opacity: 0;
  }
  75% {
    filter: blur(0);
  }
  100% {
    transform: translate(0, 0);
    opacity: 1.0;
    filter: blur(2px);
  }
}
/* アニメーション｜スポットライト */
.is-rec-msg-scrl #achv-recruit .message__main .message__main-wrap .main-title::before {
  animation: fadeLate1 1.7s ease-out forwards;
  /*filter: blur(0);*/
  /*opacity: 1.0;*/
}
@keyframes fadeLate1 {
  0% {
    filter: blur(5px);
    opacity: 0;
  }
  50% {
    filter: blur(5px);
    opacity: 0;
  }
  100% {
    filter: blur(0);
    opacity: 1.0;
  }
}
/* アニメーション｜カーテン */
#achv-recruit .rec-top_message .message__body .message__body-wrap {
    overflow: hidden;
}
#achv-recruit .rec-top_message .message__body .message__body-wrap::before,
#achv-recruit .rec-top_message .message__body .message__body-wrap::after {
  transition: 1.0s ease-in-out;
}
#achv-recruit .rec-top_message .message__body .message__body-wrap::before {
  transform: scale(1, 1) translate(0, 0);
}
#achv-recruit .rec-top_message .message__body .message__body-wrap::after {
  transform: scale(-1, 1) translate(0, 0);
}
.is-rec-msg-scrl #achv-recruit .rec-top_message .message__body .message__body-wrap::before {
  transform: scale(1, 1) translate(-3.0em, 0);
}
.is-rec-msg-scrl #achv-recruit .rec-top_message .message__body .message__body-wrap::after {
  transform: scale(-1, 1) translate(-3.0em, 0);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .message__main .message__main-wrap::before,
  #achv-recruit .message__main .message__main-wrap::after {
    width: 35%;
    padding-top: calc(35% * 6 / 5);
  }
}
@media screen and (max-width: 567px) {}


/* 採用情報トップページ｜メッセージ｜フィラー */
#achv-recruit .rec-top_message__filler {
  position: relative;
  display: block;
  width: 100%;
  background-color: var(--color-rec-bg1);
  background-image: url('../images/bg_rec_texture.jpg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/bg_rec_texture.jpg'); */
  background-blend-mode: multiply;
  background-repeat: repeat;
  /*background-size: 800px;*/
  padding: 0;
  padding-top: var(--radius-ft-over);
  margin: 0;
}
#achv-recruit .rec-top_message__filler::after {
  display: block;
  position: absolute;
  left: 0;
  top: -1px;
  /*transform: translate(0%, -100%);*/
  width: 100%;
  height: calc(var(--radius-ft-over) + 1px);
  background-color: var(--color-univ-bg-beige);
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-left-radius: var(--radius-ft-over);
  border-bottom-right-radius: var(--radius-ft-over);
  content: '';
  overflow: hidden;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}


/* ##############################################
## 採用情報トップページ｜職場を知る（rec-top_workplace.php、rec-top_workplace-item.php） 
############################################## */
/* 採用情報トップページ｜職場を知る（rec-top_workplace.php） */
/* （トップページ｜事業一覧 から一部の色・体裁を変更） */
#achv-recruit .top_facil {
  background-color: var(--color-rec-bg1);
  /* background-image: url('../images/bg_rec_texture.jpg'); */
  background-image: initial;
  background-repeat: initial;
  background-size: initial;
  background-position: initial;
}
#achv-recruit .top_facil::before {
  content: '';
  position: absolute;
  inset: 0;
  background: url('../images/bg_rec_texture.jpg') repeat;
  /* background: url('<?php echo get_template_directory_uri(); ?>/images/bg_rec_texture.jpg') repeat; */
  /*background-size: 800px auto;*/
  mix-blend-mode: multiply;
  pointer-events: none;
}

/* 採用情報トップページ｜職場を知る｜タイトル */
#achv-recruit .workplace__title {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  margin-bottom: 2.0em;
}
#achv-recruit .workplace__title-wrap {
  position: relative;
  display: flex;
  gap: 4.0em;
  width: 100%;
}
#achv-recruit .workplace__title-wrap :is(.wrap-title, .wrap-lead) {
  flex-grow: 1;
  position: relative;
  display: flex;
  align-items: center;
  width: 50%;
}
#achv-recruit .workplace__title-wrap .wrap-title {
  min-width: max-content;
}
#achv-recruit .workplace__title-wrap .wrap-lead {}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .top_facil {
    background-size: auto;
  }
  #achv-recruit .workplace__title-wrap {
    flex-direction: column;
    gap: 2.0em;
  }
  #achv-recruit .workplace__title-wrap :is(.wrap-title, .wrap-lead) {
    width: 100%;
  }
}
@media screen and (max-width: 567px) {}

/* 採用情報トップページ｜職場を知る｜タブ切替（top_facil.php） */
#achv-recruit .top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item {
  background-color: var(--color-rec-bg2);
}
#achv-recruit .top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item.is-active {
  background-color: var(--color-univ-white);
}
#achv-recruit .top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item .item-name {
  color: var(--color-rec-text);
}
#achv-recruit .top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item.is-active .item-name {
  color: var(--color-univ-brown);
}
#achv-recruit .top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item .item-count {
  color: var(--color-rec-text);
}
#achv-recruit .top_facil .top_facil__wrap .top_facil__main .top_facil__side .top_facil__side-item.is-active .item-count {
  color: var(--color-univ-brown);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* 採用情報トップページ｜職場を知る｜タブ切替（「すべて表示」制御）｜グラデーションぼかし（rec-top_workplace.php） */
#achv-recruit .top_facil__all-inner.is-collapsed::after {
  background: linear-gradient(to bottom, var(--color-univ-white_tp-00) 0%, var(--color-univ-white_tp-7f) 50%, var(--color-rec-bg1) 100% );
}
/* 採用情報トップページ｜職場を知る｜タブ切替（「すべて表示」制御）｜ボタン（rec-top_workplace.php） */
#achv-recruit .top_facil__more-btn {
  background-color: var(--color-univ-brown);
  color: var(--color-univ-white);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}


/* ##############################################
## 採用情報トップページ｜仕事を知る（rec-top_job.php） 
############################################## */
/* 採用情報トップページ｜仕事を知る（rec-top_job.php） */
#achv-recruit .rec-top_job {
  position: relative;
  display: block;
  width: 100%;
}
#achv-recruit .rec-top_job .job__body {
  position: relative;
  display: block;
  width: 100%;
  padding: 6.0em 4.0em;
  margin: 0;
}
#achv-recruit .rec-top_job .job__body .job__body-wrap {
  position: relative;
  display: flex;
  gap: 2.0em;
  flex-direction: column;
  width: 100%;
  padding: 0;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .rec-top_job .job__body {
    padding: 6.0em 2.0em;
  }
}
@media screen and (max-width: 567px) {}

/* 採用情報トップページ｜仕事を知る｜タイトル */
#achv-recruit .job__title {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
}
#achv-recruit .job__title-wrap {
  position: relative;
  display: flex;
  gap: 4.0em;
  width: 100%;
  max-width: 1400px;
  padding: 0;
  margin: 0 auto;
}
#achv-recruit .job__title-wrap :is(.wrap-title, .wrap-btn) {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0;
  justify-content: center;
}
#achv-recruit .job__title-wrap .wrap-title {
  flex-grow: 1;
  align-items: flex-start;
}
#achv-recruit .job__title-wrap .wrap-btn {
  flex-grow: 0;
  align-items: flex-end;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .job__title-wrap {
    flex-direction: column;
    gap: 2.0em;
  }
  #achv-recruit .job__title-wrap :is(.wrap-title, .wrap-btn) {
    width: 100%;
  }
  #achv-recruit .job__title-wrap .wrap-btn {
    align-items: center;
  }
}
@media screen and (max-width: 567px) {}


/* ##############################################
## 採用情報トップページ｜先輩の声（rec-top_voice.php） 
############################################## */
/* 採用情報トップページ｜先輩の声（rec-top_voice.php） */
#achv-recruit .rec-top_voice {
  position: relative;
  display: block;
  width: 100%;
  overflow: hidden;
}
#achv-recruit .rec-top_voice .voice__body {
  position: relative;
  display: block;
  width: 100%;
  /*padding: 6.0em 4.0em;*/
  padding: 4.0em 4.0em;
  margin: 0;
}
#achv-recruit .rec-top_voice .voice__body .voice__body-wrap {
  position: relative;
  display: flex;
  gap: 2.0em;
  flex-direction: column;
  width: 100%;
  padding: 0;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .rec-top_voice .voice__body {
    /*padding: 5.0em 2.0em;*/
    padding: 4.0em 2.0em;
  }
}
@media screen and (max-width: 567px) {}

/* 採用情報トップページ｜先輩の声｜タイトル */
#achv-recruit .voice__title {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
}
#achv-recruit .voice__title-wrap {
  position: relative;
  display: flex;
  gap: 4.0em;
  width: 100%;
  max-width: 1400px;
  padding: 0;
  margin: 0 auto;
}
#achv-recruit .voice__title-wrap :is(.wrap-title, .wrap-btn) {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0;
  justify-content: center;
}
#achv-recruit .voice__title-wrap .wrap-title {
  flex-grow: 1;
  align-items: flex-start;
}
#achv-recruit .voice__title-wrap .wrap-btn {
  flex-grow: 0;
  align-items: flex-end;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .voice__title-wrap {
    flex-direction: column;
    gap: 2.0em;
  }
  #achv-recruit .voice__title-wrap :is(.wrap-title, .wrap-btn) {
    width: 100%;
  }
  #achv-recruit .voice__title-wrap .wrap-btn {
    align-items: center;
  }
}
@media screen and (max-width: 567px) {}

/* 採用情報トップページ｜先輩の声｜メイン */
#achv-recruit .voice__main {
  position: relative;
  display: block;
  width: 100%;
  max-width: 1400px;
  padding: 0;
  margin: 0 auto;
  /*overflow: hidden;*/
}
#achv-recruit .voice__main .voice__main-carousel {
  position: relative;
  display: flex;
  gap: 2.0em;
  width: 100%;
  padding: 0;
  margin: 0;
}
#achv-recruit .voice__main .voice__main-carousel .voice__main-cell {
  flex: 0 0 calc((100% - 2.0em * 2) / 3);
  position: relative;
  display: flex;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .voice__main {
    border-radius: 0.5em;
    overflow: hidden;
  }
  #achv-recruit .voice__main .voice__main-carousel {
    gap: 0;
  }
  #achv-recruit .voice__main .voice__main-carousel .voice__main-cell {
    flex: 0 0 100%;
  }
}
@media screen and (max-width: 567px) {}

#achv-recruit .voice__main .voice__main-carousel .voice__main-cell a {
  flex-grow: 1;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1.0em;
  width: 100%;
  text-decoration: none;
  padding: 0;
}
#achv-recruit .voice__main .voice__main-carousel .voice__main-cell a .image-wrap {
  flex-grow: 0;
  position: relative;
  display: block;
  width: 100%;
  background-color: var(--color-rec-bg1);
  background-image: url('../images/bg_rec_texture.jpg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/bg_rec_texture.jpg'); */
  background-blend-mode: multiply;
  background-repeat: repeat;
  /*background-size: 800px;*/
  border-radius: 0.5em;
  padding: 0;
  padding-top: 1.0em;
  overflow: hidden;
}
#achv-recruit .voice__main .voice__main-carousel .voice__main-cell a .image-wrap::before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('../images/rec-top_voice_spotlight.png');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/rec-top_voice_spotlight.png'); */
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
  content: '';
  opacity: 0.5;
  transition: opacity 0.15s ease-out;
}
#achv-recruit .voice__main .voice__main-carousel .voice__main-cell a:hover .image-wrap::before {
  opacity: 1.0;
  transition: opacity 0.15s ease-in;
}
#achv-recruit .voice__main .voice__main-carousel .voice__main-cell a .image-wrap .image {
  flex-grow: 1;
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  padding-top: calc(100% * 4 / 5);
  margin: 0;
}
#achv-recruit .voice__main .voice__main-carousel .voice__main-cell a .image-wrap .image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: top center;
}
#achv-recruit .voice__main .voice__main-carousel .voice__main-cell a .info {
  flex-grow: 1;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  column-gap: 1.0em;
  row-gap: 0.25em;
  align-items: baseline;
  align-content: flex-start;
  justify-content: flex-start;
  width: 100%;
  line-height: 1.5;
}
#achv-recruit .voice__main .voice__main-carousel .voice__main-cell a .info :is(.job, .dept, .joined, .name) {
  flex-grow: 0;
  position: relative;
  display: block;
  transition: 0.15s;
}
#achv-recruit .voice__main .voice__main-carousel .voice__main-cell a .info :is(.job, .dept, .joined) {
  width: max-content;
  max-width: 100%;
  font-size: 0.9em;
}
#achv-recruit .voice__main .voice__main-carousel .voice__main-cell a .info :is(.dept, .joined, .name) {
  color: var(--color-univ-brown);
}
#achv-recruit .voice__main .voice__main-carousel .voice__main-cell a .info .job {
  color: var(--color-univ-white);
  background-color: var(--color-rec-main);
  border-radius: 0.25em;
  padding: 0.25em 0.5em;
}
#achv-recruit .voice__main .voice__main-carousel .voice__main-cell a .info .dept {}
#achv-recruit .voice__main .voice__main-carousel .voice__main-cell a .info .joined {}
#achv-recruit .voice__main .voice__main-carousel .voice__main-cell a .info .name {
  width: 100%;
  font-size: 1.1em;
}
#achv-recruit .voice__main .voice__main-carousel .voice__main-cell a:hover .info :is(.dept, .joined, .name) {
  color: var(--color-univ-yellow);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .voice__main .voice__main-carousel .voice__main-cell a .image-wrap {
    border-radius: 0;
  }
}
@media screen and (max-width: 567px) {}

/* 採用情報トップページ｜先輩の声｜制御 */
#achv-recruit .voice__main .voice__main-ctrl-wrap {
  position: relative;
  display: flex;
  gap: 2.0em;
  align-items: center;
  padding: 0;
  margin: 0;
  margin-top: 1.0em;
}
/* 採用情報トップページ｜先輩の声｜制御（矢印） */
#achv-recruit .voice__main .voice__main-ctrl-wrap .voice__main-arrow-wrap {
  flex-grow: 0;
  position: relative;
  display: flex;
  gap: 1.0em;
  padding: 0;
  margin: 0;
}
#achv-recruit .voice__main .voice__main-ctrl-wrap .voice__main-arrow-wrap .voice__main-arrow {
  flex-grow: 0;
}
#achv-recruit .voice__main .voice__main-ctrl-wrap .voice__main-arrow-wrap .voice__main-arrow :is(.prev, .next) {
  position: relative;
  display: block;
  width: 3.0em;
  padding: 0;
  padding-top: 3.0em;
  background-color: var(--color-univ-white);
  border-radius: 50%;
  cursor: pointer;
  transition: 0.15s;
}
#achv-recruit .voice__main .voice__main-ctrl-wrap .voice__main-arrow-wrap .voice__main-arrow :is(.prev, .next)::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 50%;
  height: 50%;
  background-image: url('../images/ico_arrow_r_olivegray.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_olivegray.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
  transition: 0.1s;
}
#achv-recruit .voice__main .voice__main-ctrl-wrap .voice__main-arrow-wrap .voice__main-arrow .prev::before {
  transform: translate(-50%, -50%) scale(-1, 1);
}
#achv-recruit .voice__main .voice__main-ctrl-wrap .voice__main-arrow-wrap .voice__main-arrow .next::before {
  transform: translate(-50%, -50%) scale(1, 1);
}
#achv-recruit .voice__main .voice__main-ctrl-wrap .voice__main-arrow-wrap .voice__main-arrow :is(.prev, .next):hover {
  background-color: var(--color-rec-main);
}
#achv-recruit .voice__main .voice__main-ctrl-wrap .voice__main-arrow-wrap .voice__main-arrow :is(.prev, .next):hover::before {
  background-image: url('../images/ico_arrow_r_white.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_white.svg'); */
}
/* 採用情報トップページ｜先輩の声｜制御（ドット） */
#achv-recruit .voice__main .voice__main-ctrl-wrap .voice__main-dots-wrap {
  flex-grow: 1;
  position: relative;
  display: flex;
  gap: 0;
  width: 100%;
  padding: 0;
  margin: 0;
}
#achv-recruit .voice__main .voice__main-ctrl-wrap .voice__main-dots-wrap .voice__main-dot {
  flex-grow: 1;
  position: relative;
  display: flex;
  gap: 0;
  width: 100%;
  padding: 1.25em 0;
  margin: 0;
  cursor: pointer;
}
#achv-recruit .voice__main .voice__main-ctrl-wrap .voice__main-dots-wrap .voice__main-dot.is-active {}
#achv-recruit .voice__main .voice__main-ctrl-wrap .voice__main-dots-wrap .voice__main-dot .dot {
  flex-grow: 1;
  display: block;
  position: relative;
  width: 100%;
  background-color: var(--color-univ-white);
  border-radius: 0;
  padding: 0;
  padding-top: 2px;
  margin: 0;
  transition: 0.3s;
}
#achv-recruit .voice__main .voice__main-ctrl-wrap .voice__main-dots-wrap .voice__main-dot.is-active .dot {
  background-color: var(--color-rec-main);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* 採用情報トップページ｜先輩の声｜メイン（スライド制御用）（.slide__main） */
.slide__main {}
.slide__main-carousel {
  /* gap: 2.0em; */
  will-change: transform;
}
.slide__main-carousel .carousel-cell {
  /* flex: 0 0 calc((100% - 2.0em * 2) / 3); */
}
.slide__main .slide__main-arrow {}
.slide__main .slide__main-arrow .arrow-prev {}
.slide__main .slide__main-arrow .arrow-prev {}
.slide__main-dots {}
.dots-dot {}
.dots-dot.is-active {}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .slide__main-carousel {
    /* gap: 0; */
  }
  .slide__main-carousel .carousel-cell {
    /* flex: 0 0 100%; */
  }
}
@media screen and (max-width: 567px) {}


/* ##############################################
## 採用情報トップページ｜働く環境を知る（rec-top_work-env.php） 
############################################## */
/* 採用情報トップページ｜働く環境を知る（rec-top_work-env.php） */
#achv-recruit .rec-top_work-env {
  position: relative;
  display: block;
  width: 100%;
}
#achv-recruit .rec-top_work-env .work-env__body {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  padding-top: 6.0em;
  margin: 0;
}
#achv-recruit .rec-top_work-env .work-env__body .work-env__body-wrap {
  position: relative;
  display: flex;
  gap: 2.0em;
  flex-direction: column;
  width: 100%;
  padding: 0;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .rec-top_work-env .work-env__body {
    padding-top: 5.0em;
  }
}
@media screen and (max-width: 567px) {}

/* 採用情報トップページ｜働く環境を知る｜タイトル */
#achv-recruit .work-env__title {
  position: relative;
  display: block;
  width: 100%;
  padding: 0 4.0em;
  margin: 0;
}
#achv-recruit .work-env__title-wrap {
  position: relative;
  display: flex;
  gap: 4.0em;
  width: 100%;
  max-width: 1400px;
  padding: 0;
  margin: 0 auto;
}
#achv-recruit .work-env__title-wrap :is(.wrap-title, .wrap-lead) {
  flex-grow: 1;
  position: relative;
  display: flex;
  align-items: center;
  width: 50%;
}
#achv-recruit .work-env__title-wrap .wrap-title {
  min-width: max-content;
}
#achv-recruit .work-env__title-wrap .wrap-lead {}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .work-env__title {
    padding: 0 2.0em;
  }
  #achv-recruit .work-env__title-wrap {
    flex-direction: column;
    gap: 2.0em;
  }
  #achv-recruit .work-env__title-wrap :is(.wrap-title, .wrap-lead) {
    width: 100%;
  }
}
@media screen and (max-width: 567px) {}

/* 採用情報トップページ｜働く環境を知る｜メイン */
#achv-recruit .work-env__main {
  position: relative;
  display: block;
  width: 100%;
  z-index: 100;
}
#achv-recruit .work-env__main .work-env__main-wrap {
  position: relative;
  display: flex;
  gap: 0.5em;
  width: 100%;
}
#achv-recruit .work-env__main .work-env__main-wrap .main-btn {
  flex-grow: 1;
  position: relative;
  display: flex;
  width: calc((100% - (0.5em * 1)) / 2);
  height: 25vw;
}
#achv-recruit .work-env__main .work-env__main-wrap .main-btn.hukuri {}
#achv-recruit .work-env__main .work-env__main-wrap .main-btn.skillup {}
#achv-recruit .work-env__main .work-env__main-wrap .main-btn::before {
  display: block;
  position: absolute;
  bottom: 0.25em;
  right: 0.25em;
  width: 1.5em;
  padding: 0;
  padding-top: 1.5em;
  background-image: url('../images/ico_arrow_r_olivegray.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_olivegray.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
  z-index: 110;
}
#achv-recruit .work-env__main .work-env__main-wrap .main-btn::after {
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 2.0em;
  padding: 0;
  padding-top: 2.0em;
  background-color: var(--color-univ-bg-beige);
  border-top-left-radius: 0.5em;
  content: '';
  z-index: 100;
}
#achv-recruit .work-env__main .work-env__main-wrap .main-btn a {
  flex-grow: 1;
  position: relative;
  display: flex;
  align-items: flex-end;
  width: 100%;
  text-decoration: none;
  line-height: 1.5;
  border-radius: 0.5em;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  padding: 1.5em 2.0em;
  overflow: hidden;
  z-index: 50;
}
#achv-recruit .work-env__main .work-env__main-wrap .main-btn:first-of-type a {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
#achv-recruit .work-env__main .work-env__main-wrap .main-btn:last-of-type a {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
#achv-recruit .work-env__main .work-env__main-wrap .main-btn.hukuri a {
  background-image: url('../images/rec-top_work-env_DSC1895.jpg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/rec-top_work-env_DSC1895.jpg'); */
}
#achv-recruit .work-env__main .work-env__main-wrap .main-btn.skillup a {
  background-image: url('../images/rec-top_work-env_32752772_s.jpg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/rec-top_work-env_32752772_s.jpg'); */
}
#achv-recruit .work-env__main .work-env__main-wrap .main-btn a::after {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-univ-black);
  content: '';
  opacity: 0.3;
  z-index: 100;
  transition: 0.25s;
}
#achv-recruit .work-env__main .work-env__main-wrap .main-btn a:hover::after {
  opacity: 0.1;
}
#achv-recruit .work-env__main .work-env__main-wrap .main-btn a .sub-en-child {
  position: relative;
  display: block;
  color: var(--color-univ-white);
  font-size: 1.2em;
  transition: 0.15s;
  z-index: 150;
}
#achv-recruit .work-env__main .work-env__main-wrap .main-btn a .sub-en-child::before {
  position: relative;
  display: block;
  content: attr(data-en);
  font-family: "Josefin Sans", sans-serif;
  font-weight: 400;
  font-size: 0.8em;
  padding: 0;
  margin: 0;
  margin-bottom: 0.25em;
  transition: 0.15s;
}
#achv-recruit .work-env__main .work-env__main-wrap .main-btn a:hover .sub-en-child {
  color: var(--color-univ-yellow);
}
#achv-recruit .work-env__main .work-env__main-wrap .main-btn a:hover .sub-en-child::before {}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .work-env__main .work-env__main-wrap {
    /*flex-direction: column;*/
  }
  #achv-recruit .work-env__main .work-env__main-wrap .main-btn {
    /*width: calc((100% - (0.5em * 0)) / 1);*/
    height: 50vw;
  }
}
@media screen and (max-width: 567px) {}


/* ##############################################
## 採用情報トップページ｜募集要項（rec-top_guidelines.php） 
############################################## */
/* 採用情報トップページ｜募集要項（rec-top_guidelines.php） */
#achv-recruit .rec-top_guidelines {
  position: relative;
  display: block;
  width: 100%;
}
#achv-recruit .rec-top_guidelines .guidelines__body {
  position: relative;
  display: block;
  width: 100%;
  padding: 6.0em 4.0em;
  margin: 0;
}
#achv-recruit .rec-top_guidelines .guidelines__body .guidelines__body-wrap {
  position: relative;
  display: flex;
  gap: 2.0em;
  flex-direction: column;
  width: 100%;
  max-width: 1400px;
  border-radius: 3.0em;
  background-color: var(--color-rec-bg1);
  background-image: url('../images/bg_rec_texture.jpg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/bg_rec_texture.jpg'); */
  background-blend-mode: multiply;
  background-repeat: repeat;
  /*background-size: 800px;*/
  padding: 3.0em 3.0em;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .rec-top_guidelines .guidelines__body {
    padding: 5.0em 2.0em;
  }
  #achv-recruit .rec-top_guidelines .guidelines__body .guidelines__body-wrap {
    border-radius: 2.0em;
    padding: 2.0em 2.0em;
  }
}
@media screen and (max-width: 567px) {}

/* 採用情報トップページ｜募集要項｜タイトル（rec-top_guidelines.php） */
#achv-recruit .guidelines__title {
  position: relative;
  display: block;
  width: 100%;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* 採用情報トップページ｜募集要項｜メイン（rec-top_guidelines.php） */
#achv-recruit .guidelines__main {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
}
#achv-recruit .guidelines__main .guidelines__main-wrap {
  position: relative;
  display: flex;
  gap: 0.5em;
  flex-wrap: wrap;
  width: 100%;
  padding: 0;
  margin: 0;
}
#achv-recruit .guidelines__main .guidelines__main-wrap .main-btn {
  flex-grow: 1;
  position: relative;
  display: flex;
  width: calc((100% - (0.5em * 2)) / 3);
}
#achv-recruit .guidelines__main .guidelines__main-wrap .main-btn.large {
  width: 100%;
}
#achv-recruit .guidelines__main .guidelines__main-wrap .main-btn a {
  flex-grow: 1;
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  text-decoration: none;
  line-height: 1.5;
  background-color: var(--color-univ-brown);
  border-radius: 0.5em;
  padding: 1.5em 2.0em;
}
#achv-recruit .guidelines__main .guidelines__main-wrap .main-btn a::after {
  display: block;
  position: absolute;
  bottom: 0.5em;
  right: 0.5em;
  width: 1.5em;
  padding: 0;
  padding-top: 1.5em;
  background-color: var(--color-rec-main);
  border-radius: 0.25em;
  background-image: url('../images/ico_arrow_r_white.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_white.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
}
#achv-recruit .guidelines__main .guidelines__main-wrap .main-btn a .sub-en-child {
  position: relative;
  display: block;
  color: var(--color-univ-white);
  transition: 0.15s;
}
#achv-recruit .guidelines__main .guidelines__main-wrap .main-btn a .sub-en-child::before {
  position: relative;
  display: block;
  content: attr(data-en);
  font-family: "Josefin Sans", sans-serif;
  font-weight: 400;
  font-size: 0.8em;
  padding: 0;
  margin: 0;
  margin-bottom: 0.25em;
  transition: 0.15s;
}
#achv-recruit .guidelines__main .guidelines__main-wrap .main-btn a:hover .sub-en-child {
  color: var(--color-univ-yellow);
}
#achv-recruit .guidelines__main .guidelines__main-wrap .main-btn a:hover .sub-en-child::before {}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-recruit .guidelines__main .guidelines__main-wrap .main-btn {
    width: 100%;
  }
}
@media screen and (max-width: 567px) {}


/* ##############################################
## 採用情報（single-recruit.php）
############################################## */


/* ##############################################
## 採用情報｜先輩の声｜個人（tpl_recruit-personnel.php）
############################################## */
.rec-personnel {
  position: relative;
  display: block;
  width: 100%;
}
/* 採用情報｜先輩の声｜個人｜メイン（tpl_recruit-personnel.php） */
.rec-personnel .rec-personnel__hero {
  position: relative;
  display: block;
  width: 100%;
  background-color: var(--color-rec-bg1);
  background-image: url('../images/bg_rec_texture.jpg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/bg_rec_texture.jpg'); */
  background-blend-mode: multiply;
  background-repeat: repeat;
  /*background-size: 800px;*/
  border-radius: 3.0em;
  padding: 1.5em 3.0em;
  margin: 0;
  margin-bottom: 6.0em;
}
.rec-personnel .rec-personnel__hero .rec-personnel__hero-wrap {
  position: relative;
  display: flex;
  gap: 3.0em;
  width: 100%;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .rec-personnel .rec-personnel__hero {
    border-radius: 1.5em;
    padding: 1.5em 1.5em;
    margin-bottom: 4.0em;
  }
  .rec-personnel .rec-personnel__hero .rec-personnel__hero-wrap {
    flex-direction: column;
    gap: 2.0em;
  }
}
@media screen and (max-width: 567px) {}

.rec-personnel .rec-personnel__hero-wrap .rec-personnel__hero-image {
  flex-grow: 0;
  position: relative;
  display: flex;
  width: 100%;
  max-width: 300px;
  margin: 0 auto;
}
.rec-personnel .rec-personnel__hero-wrap .rec-personnel__hero-image .image {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  padding-top: calc(100% * 3 / 2);
}
.rec-personnel .rec-personnel__hero-wrap .rec-personnel__hero-image .image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .rec-personnel .rec-personnel__hero-wrap .rec-personnel__hero-image .image {
    padding-top: calc(100% * 1 / 1);
  }
  .rec-personnel .rec-personnel__hero-wrap .rec-personnel__hero-image .image img {
    object-fit: cover;
    object-position: top center;
  }
}
@media screen and (max-width: 567px) {}

.rec-personnel .rec-personnel__hero-wrap .rec-personnel__hero-info {
  flex-grow: 1;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1.5em;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
}
.rec-personnel .rec-personnel__hero-wrap .rec-personnel__hero-info .job {
  flex-grow: 0;
}
.rec-personnel .rec-personnel__hero-wrap .rec-personnel__hero-info .job span {
  position: relative;
  display: block;
  width: max-content;
  max-width: 100%;
  font-weight: 500;
  line-height: 1.5;
  color: var(--color-univ-white);
  background-color: var(--color-univ-brown);
  border-radius: 0.25em;
  padding: 0.25em 0.75em 0.35em;
}
.rec-personnel .rec-personnel__hero-wrap .rec-personnel__hero-info .title {
  flex-grow: 0;
}
.rec-personnel .rec-personnel__hero-wrap .rec-personnel__hero-info .title span {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-size: 2.0em;
  text-align: left;
  line-height: 1.5;
  color: var(--color-univ-brown);
}
.rec-personnel .rec-personnel__hero-wrap .rec-personnel__hero-info .person {
  flex-grow: 0;
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  background-color: var(--color-univ-white);
  border-radius: 1.0em;
  padding: 1.5em;
  margin: 0;
}
.rec-personnel .rec-personnel__hero-wrap .rec-personnel__hero-info .person .text {
  flex-grow: 1;
}
.rec-personnel .rec-personnel__hero-wrap .rec-personnel__hero-info .person .text span {
  display: inline-block;
}
.rec-personnel .rec-personnel__hero-wrap .rec-personnel__hero-info .person .text .name {
  font-weight: 500;
  font-size: 1.1em;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .rec-personnel .rec-personnel__hero-wrap .rec-personnel__hero-info .person {
    border-radius: 0.5em;
    padding: 1.0em;
  }
  .rec-personnel .rec-personnel__hero-wrap .rec-personnel__hero-info .title span {
    font-size: 1.7em;
  }
}
@media screen and (max-width: 567px) {}




/* ##############################################
##
##  お問い合わせフォーム｜Contact Form 7
##
############################################## */




/* ##############################################
##
##  固定ページ｜広報誌
##  固定ページ｜広報誌｜共通（最新号・バックナンバー）
##  （pg_newsletter.php、loop_nl-item.php）
##
############################################## */
/* 固定ページ｜広報誌（pg_newsletter.php） */
.pg_newsletter {
  position: relative;
  display: block;
  width: 100%;
}

/* 固定ページ｜広報誌｜共通（最新号・バックナンバー）（pg_newsletter.php） */
.pg_newsletter .nl-items {
  position: relative;
  display: flex;
  gap: 2.0em;
  width: 100%;
}
@media screen and (max-width: 1023px) {
  .pg_newsletter .nl-items {
    gap: 1.5em;
  }
}
@media screen and (max-width: 767px) {
  .pg_newsletter .nl-items {
    gap: 1.0em;
  }
}
@media screen and (max-width: 567px) {}

/* 固定ページ｜広報誌｜最新号（loop_nl-item.php） */
/* 固定ページ｜広報誌｜バックナンバー（loop_nl-item.php） */
.pg_newsletter .nl-items .nl-item {
  position: relative;
  display: flex;
}
.pg_newsletter .nl-items .nl-item a {
  position: relative;
  display: flex;
  gap: 0.5em;
  flex-direction: column;
  width: 100%;
  line-height: 1.5;
  text-decoration: none;
}
.pg_newsletter .nl-items .nl-item a:hover {}
.pg_newsletter .nl-items .nl-item a .image {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  padding-top: calc(100% * sqrt(2));
  margin: 0;
  overflow: hidden;
}
.pg_newsletter .nl-items .nl-item a .image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.0);
  opacity: 1.0;
  transition: all 0.3s;
}
.pg_newsletter .nl-items .nl-item a:hover .image img {
  transform: scale(1.03);
  opacity: 0.8;
}
.pg_newsletter .nl-items .nl-item a .text {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  padding-right: 1.5em;
  margin: 0;
}
.pg_newsletter .nl-items .nl-item a .text::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 0.25em;
  transform: translate(0, -50%);
  width: 1.5em;
  padding: 0;
  padding-top: 1.5em;
  margin: 0;
  background-image: url('../images/ico_arrow_r_olivegray.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_olivegray.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
  transition: all 0.2s;
}
.pg_newsletter .nl-items .nl-item a:hover .text::after {
  right: 0;
}
.pg_newsletter .nl-items .nl-item a .text :is(.title, .date) {
  position: relative;
  display: block;
  width: 100%;
}
.pg_newsletter .nl-items .nl-item a .text :is(.title, .date) span {
  position: relative;
  display: inline-block;
  width: 100%;
}
.pg_newsletter .nl-items .nl-item a .text .title {}
.pg_newsletter .nl-items .nl-item a .text .title span {
  font-size: 0.9em;
}
.pg_newsletter .nl-items .nl-item a .text .date {}
.pg_newsletter .nl-items .nl-item a .text .date span {
  font-size: 0.9em;
}

/* 固定ページ｜広報誌｜最新号（loop_nl-item.php） */
.pg_newsletter .nl-items.newer {
  justify-content: center;
}
.pg_newsletter .nl-items.newer .nl-item {
  width: 100%;
  max-width: 350px;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* 固定ページ｜広報誌｜バックナンバー（loop_nl-item.php） */
.pg_newsletter .nl-items.backnumber {
  flex-wrap: wrap;
}
.pg_newsletter .nl-items.backnumber .nl-item {
  width: calc((100% - 2.0em * 4) / 5);
}
@media screen and (max-width: 1023px) {
  .pg_newsletter .nl-items.backnumber .nl-item {
    width: calc((100% - 1.5em * 3) / 4);
  }
}
@media screen and (max-width: 767px) {
  .pg_newsletter .nl-items.backnumber .nl-item {
    width: calc((100% - 1.0em * 1) / 2);
  }
}
@media screen and (max-width: 567px) {}




/* ##############################################
##
##  アーカイブページ｜お知らせ（achv_notice-list.php）
##  固定ページ｜お知らせ（pg_notice-all.php）
##
############################################## */
/* お知らせ｜メイン（.pg_notice） */
.pg_notice {}

/* お知らせ｜メイン｜カテゴリタブ */
.notice-tab {
  position: relative;
  display: flex;
  width: 100%;
  margin-bottom: 2.0em
}
.notice-tab .notice-tab__wrap {
  flex-grow: 1;
  position: relative;
  display: flex;
  width: 100%;
}
.notice-tab .notice-tab__wrap ul.notice-tab__items {
  flex-grow: 1;
  list-style-type: none;
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 0.5em;
  padding: 0;
  margin: 0;
}
.notice-tab .notice-tab__wrap ul.notice-tab__items li.notice-tab__item {
  flex-grow: 0;
  width: max-content;
  max-width: 100%;
}
.notice-tab .notice-tab__wrap ul.notice-tab__items li.notice-tab__item a {
  text-decoration: none;
}
.notice-tab .notice-tab__wrap ul.notice-tab__items li.notice-tab__item a span {
  position: relative;
  display: block;
  line-height: 1.5;
  font-size: 0.8em;
  border-radius: 1.25em;
  width: max-content;
  max-width: 100%;
  padding: 0.15em 0.75em 0.25em;
  margin: 0;
  transition: all 0.1s;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* お知らせ｜メイン｜カテゴリタブ（選択中） */
.notice-tab .notice-tab__wrap ul.notice-tab__items li.notice-tab__item a span {
  color: var(--color-univ-olivegray);
  background-color: var(--color-univ-white);
  border: 1px solid var(--color-univ-olivegray);
}
.notice-tab .notice-tab__wrap ul.notice-tab__items li.notice-tab__item a.this span {
  color: var(--color-univ-white);
  background-color: var(--color-univ-brown);
  border: 1px solid var(--color-univ-brown);
}

/* お知らせ｜メイン｜一覧リスト */
.notice-body {
  position: relative;
  display: flex;
  width: 100%;
}
.notice-body .notice-list {
  flex-grow: 1;
  position: relative;
  display: flex;
  width: 100%;
}
.notice-body .notice-list ul.notice-list__items {
  list-style-type: none;
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
}
.notice-body .notice-list ul.notice-list__items li.notice-list__item {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
}
.notice-body .notice-list ul.notice-list__items li.notice-list__item a {
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  row-gap: 0.5em;
  column-gap: 1.5em;
  width: 100%;
  text-decoration: none;
  border: none;
  border-bottom: 1px solid var(--color-univ-olivegray);
  padding: 1.0em 0;
  padding-right: 3.0em;
  margin: 0;
}
.notice-body .notice-list ul.notice-list__items li.notice-list__item a.no-event {
  padding-right: 0;
  pointer-events: none!important;
}
.notice-body .notice-list ul.notice-list__items li.notice-list__item a::before {
  display: block;
  position: absolute;
  top: 50%;
  right: 0.25em;
  transform: translate(0, -50%);
  width: 1.5em;
  padding: 0;
  padding-top: 1.5em;
  background-image: url('../images/ico_arrow_r_olivegray.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_olivegray.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
  transition: 0.15s;
}
.notice-body .notice-list ul.notice-list__items li.notice-list__item a.no-event::before {
  display: none;
}
.notice-body .notice-list ul.notice-list__items li.notice-list__item a:hover::before {
  right: 0;
}
.notice-body .notice-list ul.notice-list__items li.notice-list__item a .item-date {
  flex-grow: 0;
  position: relative;
  display: flex;
  align-items: center;
  min-width: 5.0em;
}
.notice-body .notice-list ul.notice-list__items li.notice-list__item a :is(.item-date, .item-cat, .item-title) span {
  position: relative;
  display: block;
  line-height: 1.5;
  transition: 0.15s;
}
.notice-body .notice-list ul.notice-list__items li.notice-list__item a .item-date span {
  color: var(--color-univ-brown);
}
.notice-body .notice-list ul.notice-list__items li.notice-list__item a:not(.no-event):hover .item-date span {
  color: var(--color-univ-yellow);
}
.notice-body .notice-list ul.notice-list__items li.notice-list__item a .item-cat {
  flex-grow: 0;
  position: relative;
  display: flex;
  align-items: center;
  min-width: 8.0em;
}
.notice-body .notice-list ul.notice-list__items li.notice-list__item a .item-cat span {
  width: 100%;
  text-align: center;
  font-size: 0.8em;
  color: var(--color-univ-blue);
  background-color: var(--color-univ-blue_lighttone);
  border: 1px solid var(--color-univ-blue_paletone);
  border-radius: 0.25em;
  padding: 0.2em 0.75em 0.3em;
}
.notice-body .notice-list ul.notice-list__items li.notice-list__item a:not(.no-event):hover .item-cat span {
  color: var(--color-univ-blue_paletone);
}
.notice-body .notice-list ul.notice-list__items li.notice-list__item a .item-title {
  flex-grow: 1;
  position: relative;
  display: flex;
  align-items: center;
}
.notice-body .notice-list ul.notice-list__items li.notice-list__item a .item-title span {
  color: var(--color-univ-brown);
}
.notice-body .notice-list ul.notice-list__items li.notice-list__item a:not(.no-event):hover .item-title span {
  color: var(--color-univ-yellow);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .notice-body .notice-list ul.notice-list__items li.notice-list__item a {
    column-gap: 1.0em;
  }
  .notice-body .notice-list ul.notice-list__items li.notice-list__item a .item-title {
    width: 100%;
  }
}
@media screen and (max-width: 567px) {}




/* ##############################################
##
##  サイトマップ（hierarchical-sitemap.php）
##
############################################## */
.hs-section {
  font-size: 0.9em;
}
.hs-section.hs-section-cpt-top {
  margin-bottom: 1.5em
}
.hs-section a {
  text-decoration: none;
}
.hs-section a:hover {
  text-decoration: underline 1px solid;
}

.hs-section ul:is(.parent, .children) {
  padding-left: 1.25em;
}
.hs-section ul:is(.parent, .children) li {
  padding-left: 0;
  break-inside: avoid;
}
.hs-section ul.parent {
  margin: 0.5em 0!important;
}
.hs-section ul.children {
  margin: 0.5em 0!important;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/*
.sitemap_list.col2 .wsp-container ul:not(.children) {
  column-count: 2; -webkit-column-count: 2; -moz-column-count: 2;
  column-gap: 2.0em;
  row-gap: 0;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {
  .sitemap_list.col2 .wsp-container ul:not(.children) {
    column-count: 1; -webkit-column-count: 1; -moz-column-count: 1;
  }
}
*/




/* ##############################################
##
##  404ページ（404.php）
##
############################################## */




/* ##############################################
##
##  Lightbox（代替テキスト表示）｜Simple Lightbox（プラグイン）
##
############################################## */
#slb_viewer_wrap .slb_theme_slb_default .slb_data_title,
#slb_viewer_wrap .slb_theme_slb_default .slb_group_status {
  font-family: "Noto Sans JP", sans-serif!important;
  font-style: normal!important;
  /*font-size: 1.0em!important;*/
  font-size: 1.3em!important;
  padding-top: 0.5em;
}
#slb_viewer_wrap .slb_theme_slb_default .slb_data_title {
  font-weight: 500!important;
  color: var(--color-univ-brown);
}
#slb_viewer_wrap .slb_theme_slb_default .slb_group_status {
  font-weight: 400!important;
  color: var(--color-univ-olivegray)!important;
  padding-left: 0.5em;
}
#slb_viewer_wrap .slb_theme_slb_default .slb_data_title *,
#slb_viewer_wrap .slb_theme_slb_default .slb_group_status * {
  font-weight: inherit;
  font-size: inherit;
  color: inherit;
}




/* ##############################################
##
##  クリッカブルマップ（イメージマップ）
##  ※イメージマップ（.map-img-wrap）内の画像 Lightbox表示（main.js）
##
############################################## */
.map-img-wrap {
  display: block;
  position: relative;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
  z-index: 1;
}
.map-img-wrap img {
  display: block;
  position: relative;
  width: 100%;
  max-width: 100%;
}
.map-img-wrap svg {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}

/* イメージマップ内 Lightbox */
html {
  /* スクロールバーの安定化 */
  scrollbar-gutter: stable;
}

.map-lightbox {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.8);
  display: flex;
  align-items: center;
  justify-content: center;
  /*z-index: 9999;*/
  z-index: 10000000;
  opacity: 0;
  transition: opacity 0.2s ease;
  /*cursor: zoom-out;*/
  cursor: pointer;
}

.map-lightbox.is-show {
  opacity: 1;
}

.map-lightbox__inner {
  position: relative;
  max-width: 90vw;
  max-height: 90vh;
}

.map-lightbox__inner .btn-close {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 1.5em;
  height: 1.5em;
  background-color: var(--color-univ-white);
}
.map-lightbox__inner .btn-close::before,
.map-lightbox__inner .btn-close::after {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1.0em;
  height: 1.5px;
  background-color: var(--color-univ-black);
  content: '';
}
.map-lightbox__inner .btn-close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.map-lightbox__inner .btn-close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.map-lightbox__inner img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

body.is-lightbox-open {
  overflow: hidden;
}




/* ##############################################
##
##  あけぼのショップ（achv_akebono-shop.php、sg_akebono_main.php）
##  あけぼのショップ｜メニュー等（general_recruit.php） 
##  ショートコード（inner_akebono_item_details.php、inner_akebono_items.php）
##
############################################## */

/* ##############################################
## あけぼのショップ｜共通（achv_akebono-shop.php、sg_akebono_main.php）
############################################## */
/* あけぼのショップ（achv_akebono-shop.php、sg_akebono_main.php） */
.sg_akebono {}

/* あけぼのショップ｜メイン｜sidebar（achv_akebono-shop.php、sg_akebono_main.php） */
.sg_akebono .main-wrap .main-wrap__sidebar {}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* あけぼのショップ｜メイン｜content（achv_akebono-shop.php、sg_akebono_main.php） */
.sg_akebono .main-wrap .main-wrap__content {}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}


/* ##############################################
## あけぼのショップ｜トップページ｜共通（見出し・英語表記）（achv_akebono-shop.php）
############################################## */
/* あけぼのショップ｜トップページ｜共通（見出し・英語表記）（#achv-akebono-shop） */
#achv-akebono-shop :is(h2, h4).sub-en {
  position: relative;
  font-size: 1.0em;
  color: var(--color-univ-brown);
}
#achv-akebono-shop :is(h2, h4).sub-en.white {
  color: var(--color-univ-white);
}
#achv-akebono-shop :is(h2, h4).sub-en span {
  display: inline-block;
}
/* data-en="XXXXXX" 文字列可変 */
#achv-akebono-shop :is(h2, h4).sub-en::before {
  position: relative;
  display: block;
  content: attr(data-en);
  font-family: "Josefin Sans", sans-serif;
  font-weight: 400;
  font-size: 1.0em;
}
#achv-akebono-shop h2.sub-en span {
  font-size: 2.2em;
  line-height: 1.5;
}
#achv-akebono-shop h4.sub-en span {
  font-size: 1.7em;
  line-height: 1.6;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-akebono-shop h2.sub-en span {
    font-size: 2.1em;
  }
  #achv-akebono-shop h4.sub-en span {
    font-size: 1.5em;
  }
}
@media screen and (max-width: 567px) {}


/* ##############################################
## あけぼのショップ｜トップページ｜ファーストビュー（achv_akebono-shop.php）
############################################## */
/* あけぼのショップ｜トップページ｜ファーストビュー（achv_akebono-shop.php） */
#achv-akebono-shop .hero-wrap {
  display: block;
  position: relative;
  width: 100%;
  background: var(--color-univ-ico-beige);
  padding: 0 4.0em;
  margin: 0;
}
#achv-akebono-shop .hero-wrap .hero-body {
  display: block;
  position: relative;
  width: 100%;
  max-width: 1400px;
  padding: 0;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-akebono-shop .hero-wrap {
    padding: 0 2.0em;
  }
}
@media screen and (max-width: 567px) {}

/* スライド表示用（slide-fade_dots 流用） */
/* あけぼのショップ｜トップページ｜ファーストビュー｜スライド */
#achv-akebono-shop .hero-wrap .hero-body .slide_body {
  width: 100%;
  overflow: initial;
}
#achv-akebono-shop .hero-wrap .hero-body .slide_body .slide_carousels {
  padding-top: calc(100% * 506 / 1118);
}
#achv-akebono-shop .hero-wrap .hero-body .slide_body .slide_carousels .carousel_image {
  border-radius: 0;
}
#achv-akebono-shop .hero-wrap .hero-body .slide_body .slide_carousels .carousel_image.active {}
#achv-akebono-shop .hero-wrap .hero-body .slide_body .slide_body .slide_carousels .carousel_image img {}
#achv-akebono-shop .hero-wrap .hero-body .slide_body .slide_dots {
  position: absolute;
  top: calc(100% + 0.5em);
  right: 0;
  margin-top: 0;
  z-index: 100;
}
#achv-akebono-shop .hero-wrap .hero-body .slide_body .slide_dots .carousel_dot span {
  background-color: var(--color-univ-ico-beige);
}
#achv-akebono-shop .hero-wrap .hero-body .slide_body .slide_dots .carousel_dot.active span {
  background-color: var(--color-biz-akebono);
}
/* 静止表示（スライドなし）用（slide-fade_dots 流用） */
/* あけぼのショップ｜トップページ｜ファーストビュー｜スライド（static） */
#achv-akebono-shop .hero-wrap .hero-body .slide_body_none {
  width: 100%;
}
#achv-akebono-shop .hero-wrap .hero-body .slide_body_none .static_image {
  padding-top: calc(100% * 506 / 1118);
  border-radius: 0;
}
#achv-akebono-shop .hero-wrap .hero-body .slide_body_none .static_image img {}


/* ##############################################
## あけぼのショップ｜トップページ｜おすすめ商品（achv_akebono-shop.php）
############################################## */
/* あけぼのショップ｜トップページ｜おすすめ商品（#achv-akebono-shop） */
#achv-akebono-shop .akebono_recommend {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  margin-top: 6.0em;
}
#achv-akebono-shop .akebono_recommend .akebono_recommend-wrap {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  margin-top: 2.0em;
}


/* ##############################################
## あけぼのショップ｜トップページ｜お知らせ（achv_akebono-shop.php）
############################################## */
/* あけぼのショップ｜トップページ｜お知らせ（#achv-akebono-shop） */
#achv-akebono-shop .akebono_notice {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  margin-top: 6.0em;
}
#achv-akebono-shop .akebono_notice .notice__body {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
}
#achv-akebono-shop .akebono_notice .notice__body .notice__body-wrap {
  position: relative;
  display: flex;
  gap: 4.0em;
  width: 100%;
  max-width: 1400px;
  background-color: var(--color-univ-white);
  border-radius: 3.0em;
  padding: 3.0em 3.0em;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-akebono-shop .akebono_notice .notice__body .notice__body-wrap {
    flex-direction: column;
    gap: 2.0em;
  }
  #achv-akebono-shop .akebono_notice .notice__body .notice__body-wrap {
    border-radius: 2.0em;
    padding: 2.0em 2.0em;
  }
}
@media screen and (max-width: 567px) {}

/* あけぼのショップ｜トップページ｜お知らせ｜タイトル */
#achv-akebono-shop .notice__title-wrap {
  flex-grow: 0;
  position: relative;
  display: flex;
  gap: 2.0em;
  flex-direction: column;
}
#achv-akebono-shop .notice__title {}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-akebono-shop .notice__title-wrap {
    width: 100%;
  }
}
@media screen and (max-width: 567px) {}

/* あけぼのショップ｜トップページ｜お知らせ｜メイン */
#achv-akebono-shop .notice__main {
  flex-grow: 1;
  position: relative;
}
#achv-akebono-shop .notice__main .notice__main-wrap {
  position: relative;
  width: 100%;
}

@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* あけぼのショップ｜トップページ｜お知らせ｜メイン｜リスト */
#achv-akebono-shop .notice__main .notice__main-wrap .items {
  /* ul */
  list-style-type: none;
  position: relative;
  /*display: block;*/
  width: 100%;
  padding: 0;
  margin: 0;
}
#achv-akebono-shop .notice__main .notice__main-wrap .item-wrap {
  /* li */
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
}
#achv-akebono-shop .notice__main .notice__main-wrap .item-wrap a {
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  row-gap: 0.5em;
  column-gap: 1.5em;
  width: 100%;
  text-decoration: none;
  border: none;
  border-bottom: 1px solid var(--color-univ-olivegray);
  padding: 1.0em 0;
  padding-right: 3.0em;
  margin: 0;
}
#achv-akebono-shop .notice__main .notice__main-wrap .item-wrap a.no-event {
  padding-right: 0;
  pointer-events: none!important;
}
#achv-akebono-shop .notice__main .notice__main-wrap .item-wrap a::before {
  display: block;
  position: absolute;
  top: 50%;
  right: 0.5em;
  transform: translate(0, -50%);
  width: 1.5em;
  padding: 0;
  padding-top: 1.5em;
  background-image: url('../images/ico_arrow_r_olivegray.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_olivegray.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  content: '';
  transition: 0.15s;
}
#achv-akebono-shop .notice__main .notice__main-wrap .item-wrap a.no-event::before {
  display: none;
}
#achv-akebono-shop .notice__main .notice__main-wrap .item-wrap a:hover::before {
  right: 0;
}
#achv-akebono-shop .notice__main .notice__main-wrap .item-wrap a .item-date {
  flex-grow: 0;
  position: relative;
  display: flex;
  align-items: center;
  min-width: 5.0em;
}
#achv-akebono-shop .notice__main .notice__main-wrap .item-wrap a :is(.item-date, .item-cat, .item-title) span {
  position: relative;
  display: block;
  line-height: 1.5;
  transition: 0.15s;
}
#achv-akebono-shop .notice__main .notice__main-wrap .item-wrap a .item-date span {
  color: var(--color-univ-brown);
}
#achv-akebono-shop .notice__main .notice__main-wrap .item-wrap a:not(.no-event):hover .item-date span {
  color: var(--color-univ-yellow);
}
#achv-akebono-shop .notice__main .notice__main-wrap .item-wrap a .item-cat {
  flex-grow: 0;
  position: relative;
  display: flex;
  align-items: center;
  min-width: 8.0em;
}
#achv-akebono-shop .notice__main .notice__main-wrap .item-wrap a .item-cat span {
  width: 100%;
  text-align: center;
  font-size: 0.8em;
  color: var(--color-biz-akebono);
  background-color: var(--color-univ-white);
  border: 1px solid var(--color-biz-akebono);
  border-radius: 0.25em;
  padding: 0.2em 0.75em 0.3em;
}
#achv-akebono-shop .notice__main .notice__main-wrap .item-wrap a:not(.no-event):hover .item-cat span {
  color: var(--color-univ-brown);
}
#achv-akebono-shop .notice__main .notice__main-wrap .item-wrap a .item-title {
  flex-grow: 1;
  position: relative;
  display: flex;
  align-items: center;
}
#achv-akebono-shop .notice__main .notice__main-wrap .item-wrap a .item-title span {
  color: var(--color-univ-brown);
}
#achv-akebono-shop .notice__main .notice__main-wrap .item-wrap a:not(.no-event):hover .item-title span {
  color: var(--color-univ-yellow);
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  #achv-akebono-shop .notice__main .notice__main-wrap .item-wrap a .item-title {
    width: 100%;
  }
}
@media screen and (max-width: 567px) {}


/* ##############################################
##  あけぼのショップ｜メニュー等（general_akebono-shop.php）
############################################## */
/* あけぼのショップ｜メニュー等｜注文フォーム（general_akebono-shop.php） */
.general-entry {
  /* top は main.js で header 高さを読み込み */
  /*top: 100px;*/
}
.akebono-shop_general-entry {
  display: block;
  position: fixed;
  right: 0;
  width: fit-content;
  padding: 0;
  margin: 0;
  z-index: 100;
}
.akebono-shop_general-entry .general-entry__body {
  position: relative;
  display: flex;
  gap: 0;
  padding: 0;
  padding-top: 1.0em;
  margin: 0;
}
.akebono-shop_general-entry .general-entry__body .general-entry__body-wrap {
  position: relative;
  display: flex;
  gap: 0;
  padding: 0;
  margin: 0;
  animation: recGeneralFade1 1.0s ease-out forwards;
  opacity: 0;
}
@keyframes recGeneralFade1 {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1.0;
  }
}
.akebono-shop_general-entry .general-entry__body .general-entry__body-wrap a {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.25em;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  line-height: 1.5;
  background-color: var(--color-biz-akebono);
  border-top-left-radius: 0.5em;
  border-bottom-left-radius: 0.5em;
  padding: 0.75em;
  margin: 0;
  transition: padding 0.35s ease, gap 0.35s ease, background-color 0.2s ease;
}
.akebono-shop_general-entry .general-entry__body .general-entry__body-wrap a:hover {
  background-color: var(--color-univ-yellow);
}
.akebono-shop_general-entry .general-entry__body .general-entry__body-wrap a :is(.entry-jp, .entry-en, .entry-btn) {
  position: relative;
  display: block;
  width: max-content;
  max-width: 100%;
}
.akebono-shop_general-entry .general-entry__body .general-entry__body-wrap a :is(.entry-jp, .entry-en, .entry-btn) span {
  position: relative;
  display: block;
}
.akebono-shop_general-entry .general-entry__body .general-entry__body-wrap a .entry-jp span {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-size: 0.7em;
  color: var(--color-univ-white);
  transition: font-size 0.35s ease;
}
.akebono-shop_general-entry .general-entry__body .general-entry__body-wrap a .entry-en {
  transition: opacity 0.25s ease, max-height 0.25s ease;
  max-height: 2em;
  overflow: hidden;
}
.akebono-shop_general-entry .general-entry__body .general-entry__body-wrap a .entry-en span {
  font-family: "Josefin Sans", sans-serif;
  font-weight: 400;
  font-size: 1.1em;
  color: var(--color-univ-white);
}
.akebono-shop_general-entry .general-entry__body .general-entry__body-wrap a .entry-btn span {
  width: 1.5em;
  padding: 0;
  padding-top: 1.5em;
  background-color: var(--color-univ-white);
  border-radius: 0.25em;
  background-image: url('../images/ico_arrow_r_brown.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_arrow_r_brown.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}

/* 採用情報トップページ｜メニュー等｜エントリー（スクロール後の動作｜縮小） */
.is-fixed .akebono-shop_general-entry {}
.is-fixed .akebono-shop_general-entry .general-entry__body .general-entry__body-wrap a {
  gap: 0.5em;
  padding: 0.75em 0.5em;
}
.is-fixed .akebono-shop_general-entry .general-entry__body .general-entry__body-wrap a .entry-jp {
  display: flex;
  justify-content: center;
  width: 100%;
  margin: 0 auto;
}
.is-fixed .akebono-shop_general-entry .general-entry__body .general-entry__body-wrap a .entry-jp span {
  writing-mode: vertical-rl;
  font-size: 0.8em;
  transition-delay: 0.08s;
  display: inline-block;
  text-align: center;
}
.is-fixed .akebono-shop_general-entry .general-entry__body .general-entry__body-wrap a .entry-en {
  opacity: 0;
  max-height: 0;
  max-width: 0%;
}
.is-fixed .akebono-shop_general-entry .general-entry__body .general-entry__body-wrap a .entry-en span {
  font-size: 0em;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* ハンバーガーメニューを開いた際は表示しない */
.hamburger-menu-open .akebono-shop_general-entry {
  display: none;
}


/* ##############################################
## ショートコード（inner_akebono_item_details.php）
############################################## */
/* ※ショートコード（inner_akebono_item_details.php） */
/* あけぼのショップ｜商品情報（inner_akebono_item_details.php） */
.item-details {
  position: relative;
  display: flex;
  gap: 2.0em;
  margin-bottom: 4.0em;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .item-details {
    flex-direction: column;
  }
}
@media screen and (max-width: 567px) {}

.item-details :is(.item-details__gallery, .item-details__info) {
  flex-grow: 1;
  position: relative;
  display: block;
  width: 100%;
}
.item-details .item-details__gallery {}
.item-details .item-details__gallery .gallery-main {
  position: relative;
}
.item-details .item-details__gallery .gallery-main .image {
  /*position: relative;*/
  display: block;
  width: 100%;
  padding-top: 100%;
  transition: opacity 0.4s;
}
.item-details .item-details__gallery .gallery-main .image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 0.25em;
  object-fit: cover;
}
.item-details .item-details__gallery .gallery-thumbs {
  position: relative;
  display: flex;
  gap: 0.5em;
  margin-top: 0.5em;
}
.item-details .item-details__gallery .gallery-thumbs .thumbnail {
  position: relative;
  display: block;
  width: 100%;
  max-width: calc((100% - (0.5em * 2)) / 3);
  cursor: pointer;
}
.item-details .item-details__gallery .gallery-thumbs .thumbnail .image {
  position: relative;
  display: block;
  width: 100%;
  padding-top: 100%;
}
.item-details .item-details__gallery .gallery-thumbs .thumbnail .image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 0.25em;
  object-fit: cover;
}

.item-details .item-details__info {
  color: var(--color-univ-brown);
}
.item-details .item-details__info .info-title {
  line-height: 1.5;
  margin-bottom: 1.0em;
}
.item-details .item-details__info .info-title span {
  font-weight: 500;
  font-size: 1.6em;
}
.item-details .item-details__info .info-price {
  margin-bottom: 1.0em;
}
.item-details .item-details__info .info-price span.price {
  font-weight: 500;
  font-size: 1.4em;
}
.item-details .item-details__info .info-price span.yen {
  font-weight: 500;
}
.item-details .item-details__info .info-item {
  margin-bottom: 1.0em;
}
.item-details .item-details__info .info-item span {
  position: relative;
  display: block;
  width: max-content;
  max-width: 100%;
  font-size: 0.9em;
  line-height: 1.5;
  border: 1px solid;
  border-radius: 0.25em;
  padding: 0.1em 0.75em 0.2em;
  margin: 0;
}
.item-details .item-details__info .info-summary {
  position: relative;
  display: block;
  width: 100%;
  line-height: 1.5;
  background-color: var(--color-univ-white);
  border-radius: 0.5em;
  padding: 1.0em 1.5em;
  margin: 0;
  margin-bottom: 1.0em;
}
.item-details .item-details__info .info-summary span {}

.item-details .item-details__info .info-date {
  margin: 0;
}
.item-details .item-details__info .info-date span {
  position: relative;
  display: block;
  width: max-content;
  max-width: 100%;
  font-size: 0.9em;
  line-height: 1.5;
  padding: 0;
  margin: 0;
}

/* あけぼのショップ｜商品情報（inner_akebono_item_details.php）｜ギャラリー（main.js） */
.item-details .item-details__gallery .gallery-main .image {
  position: absolute;
  inset: 0;
  opacity: 0;
}
.item-details .item-details__gallery .gallery-main .image.is-active {
  position: relative;
  opacity: 1.0;
}
/* あけぼのショップ｜商品情報（inner_akebono_item_details.php）｜サムネイル（main.js） */
.item-details .item-details__gallery .gallery-thumbs .thumbnail {
  opacity: 1.0;
}
.item-details .item-details__gallery .gallery-thumbs .thumbnail.is-selected {
  opacity: 0.5;
}


/* ##############################################
## ショートコード（inner_akebono_items.php）
############################################## */
/* ※ショートコード（inner_akebono_items.php） */
/* あけぼのショップ｜商品一覧（inner_akebono_items.php） */
:root {
  --akebono-items-gap : 2.0em;
  /* var(--akebono-items-gap) */
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  /*
  :root {
    --akebono-items-gap : 1.5em;
  }
  */
}
@media screen and (max-width: 567px) {}

.akebono_items-wrap {
  position: relative;
  display: flex;
  gap: var(--akebono-items-gap);
  flex-wrap: wrap;
  width: 100%;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

/* あけぼのショップ｜商品一覧｜タイル表示（loop_ake-item.php） */
.akebono_items-wrap .items-wrap__tile {
  flex-grow: 1;
  position: relative;
  display: flex;
  width: 100%;
  max-width: calc((100% - var(--akebono-items-gap) * 2) / 3);
}
.akebono_items-wrap .items-wrap__tile a.item-tile {
  flex-grow: 1;
  position: relative;
  display: flex;
  gap: 0.5em;
  flex-direction: column;
  width: 100%;
  text-decoration: none;
}
.akebono_items-wrap .items-wrap__tile a.item-tile,
.akebono_items-wrap .items-wrap__tile a.item-tile span {
  transition: 0.2s;
}
.akebono_items-wrap .items-wrap__tile a.item-tile:not(:hover),
.akebono_items-wrap .items-wrap__tile a.item-tile:not(:hover) span {
  color: var(--color-univ-brown);
}
.akebono_items-wrap .items-wrap__tile a.item-tile:hover,
.akebono_items-wrap .items-wrap__tile a.item-tile:hover span {
  color: var(--color-univ-yellow);
}
@media screen and (max-width: 1023px) {
  .akebono_items-wrap .items-wrap__tile {
    max-width: calc((100% - var(--akebono-items-gap) * 1) / 2);
  }
}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {
  .akebono_items-wrap .items-wrap__tile {
    max-width: calc((100% - var(--akebono-items-gap) * 0) / 1);
  }
}

.akebono_items-wrap .items-wrap__tile a.item-tile .item-tile__image {
  flex-grow: 0;
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
}
.akebono_items-wrap .items-wrap__tile a.item-tile .item-tile__image .image {
  position: relative;
  display: block;
  width: 100%;
  padding-top: 100%;
}
.akebono_items-wrap .items-wrap__tile a.item-tile .item-tile__image .image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 0.25em;
  object-fit: cover;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}

.akebono_items-wrap .items-wrap__tile a.item-tile .item-tile__info {
  flex-grow: 1;
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
}
.akebono_items-wrap .items-wrap__tile a.item-tile .item-tile__info .info-summary {
  flex-grow: 1;
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  line-height: 1.5;
  background-color: var(--color-univ-white);
  border-radius: 0.25em;
  padding: 0.5em 1.0em;
  margin: 0;
  margin-bottom: 0.5em;
}
.akebono_items-wrap .items-wrap__tile a.item-tile .item-tile__info .info-summary span {
  font-size: 0.9em;
}
.akebono_items-wrap .items-wrap__tile a.item-tile .item-tile__info .info-title {
  flex-grow: 0;
  position: relative;
  display: block;
  width: 100%;
  margin-bottom: 0.5em;
}
.akebono_items-wrap .items-wrap__tile a.item-tile .item-tile__info .info-title span {
  font-weight: 500;
  font-size: 1.1em;
}
.akebono_items-wrap .items-wrap__tile a.item-tile .item-tile__info .info-price {
  flex-grow: 0;
  position: relative;
  display: block;
  width: 100%;
  margin-bottom: 0.5em;
}
.akebono_items-wrap .items-wrap__tile a.item-tile .item-tile__info .info-price span.price {
  font-weight: 500;
  font-size: 1.0em;
}
.akebono_items-wrap .items-wrap__tile a.item-tile .item-tile__info .info-price span.yen {
  font-weight: 500;
  font-size: 0.8em;
}
.akebono_items-wrap .items-wrap__tile a.item-tile .item-tile__info .info-item {
  flex-grow: 0;
  position: relative;
  display: block;
  width: 100%;
  margin-bottom: 0.5em;
}
.akebono_items-wrap .items-wrap__tile a.item-tile .item-tile__info .info-item span {
  position: relative;
  display: block;
  width: max-content;
  max-width: 100%;
  font-size: 0.8em;
  line-height: 1.5;
  border: 1px solid;
  border-radius: 0.25em;
  padding: 0.1em 0.75em 0.2em;
  margin: 0;
}
.akebono_items-wrap .items-wrap__tile a.item-tile .item-tile__info .info-date {
  flex-grow: 0;
  position: relative;
  display: block;
  width: 100%;
}
.akebono_items-wrap .items-wrap__tile a.item-tile .item-tile__info .info-date span {
  position: relative;
  display: block;
  width: max-content;
  max-width: 100%;
  font-size: 0.8em;
  line-height: 1.5;
  padding: 0;
  margin: 0;
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {}
@media screen and (max-width: 567px) {}


/* あけぼのショップ｜ご注文フォーム（.postid-2281） */
.akebono_form-tel-icon a {
  position: relative;
  display: inline-block;
  width: max-content;
  max-width: 100%;
  font-weight: 500;
  font-size: 2.5em;
  letter-spacing: 0.07em;
  line-height: 1.5;
  text-decoration: none;
  color: var(--color-univ-brown);
  padding: 0;
  padding-left: 2.0em;
  margin: 0;
}
.akebono_form-tel-icon a::before {
  display: block;
  position: absolute;
  top: calc(50% + 0.1em);
  left: 0;
  transform: translate(0, -50%);
  width: 1.5em;
  padding-top: 1.5em;
  background-color: var(--color-univ-yellow);
  background-image: url('../images/ico_ftr_contact_phone.svg');
  /* background-image: url('<?php echo get_template_directory_uri(); ?>/images/ico_ftr_contact_phone.svg'); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  border-radius: 50%;
  content: '';
}
@media screen and (max-width: 1023px) {}
@media screen and (max-width: 767px) {
  .akebono_form-tel-icon a {
    font-size: 2.0em;
  }
}
@media screen and (max-width: 567px) {}

/* あけぼのショップ｜ご注文フォーム（.postid-2281） */
.postid-2281 .forminator-row .item_wrap {
  position: relative;
  display: flex;
  flex-direction: row;
  gap: 1.0em;
  padding: 0;
  margin: 0;
}
.postid-2281 .forminator-row .item_image {
  flex-grow: 0;
  position: relative;
  display: block;
  width: 100px;
  min-width: 100px;
  padding: 0;
  padding-top: 100px;
  margin: 0;
}
.postid-2281 .forminator-row .item_image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0.25em;
}
.postid-2281 .forminator-row .item_name {
  flex-grow: 0;
  display: block;
  width: 100%;
  font-size: 0.9em;
  padding: 0;
  margin: 0;
}
@media screen and (max-width: 1023px) {
  .postid-2281 .forminator-row .item_wrap {
    flex-direction: column;
  }
}
@media screen and (max-width: 767px) {
  .postid-2281 .forminator-row .item_wrap {
    flex-direction: row;
  }
}
@media screen and (max-width: 567px) {}

.postid-2281 h2.forminator-title {
  display: block;
  position: relative;
  text-align: left;
  width: 100%;
  font-family: "Zen Maru Gothic", sans-serif!important;
  font-weight: 500!important;
  font-size: 2.4em!important;
  line-height: 1.5!important;
  letter-spacing: 0.05em!important;
  color: var(--color-univ-brown)!important;
  padding: 24px 0 0!important;
  margin: 0!important;
  /*margin-top: 3.5em!important;*/
  margin-top: 2.0em!important;
  margin-bottom: 1.0em!important;
}
