@charset "UTF-8";
/*--------------------------------------------------------------
# Foundation 初期化や各タグの基本的なスタイルなど
--------------------------------------------------------------*/
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
@import "https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Anton&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@700&display=swap");
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

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

nav ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

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

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

del {
  text-decoration: line-through;
}

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

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

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

input,
select {
  vertical-align: middle;
}

/*
 * icons
 * -------------------------------------------------------------------
 */
/*
 * Fonts
 * -------------------------------------------------------------------
 */
/*
 * HTML
 * -------------------------------------------------------------------
 */
html {
  font-size: 62.5%;
  margin: 0;
  width: 100%;
  height: 100%;
  scroll-padding-top: 140px;
}

body {
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 1.6rem;
  line-height: 1.6;
  letter-spacing: 0.05rem;
  margin: 0;
  width: 100%;
  height: 100%;
  background-color: #fafafa;
}

@media (min-width: 768px) {
  .sp {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .pc {
    display: none !important;
  }
}

@media (min-width: 1024px) or (max-width: 768px) {
  .tb {
    display: none !important;
  }
}

.entry-btn {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 100;
}

.text-left {
  text-align: left;
}

.text-center {
  text-align: center;
}

.text-bold {
  font-weight: 800;
}

/*
 * wrapper
 * -------------------------------------------------------------------
 */
.wrapper {
  background-color: #ffffff;
  display: block;
  margin: 90px auto 0;
  padding: 0px;
  width: 100%;
}
.wrapper section {
  display: grid;
  justify-items: center;
  width: 100%;
  /*> [class*="-container"] {
    margin-top: 6.57%;
  }*/
}
.wrapper section .wrap {
  width: 100%;
}

/*
* セカンドページ
*-------------------------------------------------------------------
*/
.page .wrapper {
  position: relative;
}
.page .pagemv {
  /* ----- パンくずリストは components/_breadcrumb.scss ----- */
}
.page .pagemv [class$=-pagemv-container] {
  display: flex;
  align-items: center;
  width: 100%;
  height: 50vh;
  background-size: cover;
  /*&::before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    padding-bottom: 43.07%;
  }*/
}
.page .pagemv-wrap {
  display: inline-block;
  background: rgba(255, 255, 255, 0.8);
  padding: 1rem 3rem 1rem 5rem;
  line-height: 3rem;
}
@media screen and (min-width: 1024px) {
  .page .pagemv-wrap {
    padding: 4rem 7rem 4rem 11.5rem;
    line-height: 7rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .page .pagemv-wrap {
    padding: 2rem 5rem 2rem 8rem;
    line-height: 6rem;
  }
}
.page .pagemv-title {
  font-family: "roboto", sans-serif;
  font-size: clamp(36px, 8vw, 75px);
  color: #fe2b38;
  font-weight: 600;
  text-align: left;
}
.page .pagemv-title::first-letter {
  color: #fe2b38;
}
.page .pagemv-subtitle {
  margin-top: 10px;
  font-size: clamp(15px, 2.189vw, 24px);
  font-weight: 700;
  text-align: left;
}
.page .content [class$=-container] {
  width: 100%;
  margin-bottom: 40px;
}
.page .content [class$=-container] [class$=-wrapper] {
  margin: 0 auto;
  width: 80%;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .page .content [class$=-container] [class$=-wrapper] {
    width: 90%;
  }
}
.page .content [class$=-container] [class$=-wrapper] p {
  text-align: left;
}
.page .content [class$=-container] [class$=-small_wrap] {
  margin: 0 auto;
  width: 90%;
}
@media screen and (min-width: 1024px) {
  .page .content [class$=-container] [class$=-small_wrap] {
    width: 60%;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .page .content [class$=-container] [class$=-small_wrap] {
    width: 80%;
  }
}
.page .content [class$=-container] [class$=-big_wrap] {
  margin: 0 auto;
  width: 100%;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .page .content [class$=-container] [class$=-big_wrap] {
    width: 90%;
  }
}
.page .content [class$=-container] [class$=-detail] {
  display: grid;
  grid-template-columns: 30% 70%;
  background-color: #676767;
  border: solid 1px #676767;
  border-bottom: none;
  text-align: left;
}
@media screen and (min-width: 1024px) {
  .page .content [class$=-container] [class$=-detail] {
    grid-template-columns: 20% 80%;
  }
}
.page .content [class$=-container] [class$=-detail] > div {
  padding: 10px;
}
@media screen and (min-width: 1024px) {
  .page .content [class$=-container] [class$=-detail] > div {
    padding: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .page .content [class$=-container] [class$=-detail] > div {
    padding: 15px;
  }
}
.page .content [class$=-container] [class$=-detail] > div:nth-of-type(2n-1) {
  background-color: #eeeeee;
  border-bottom: solid 1px #676767;
  border-right: solid 1px #676767;
}
.page .content [class$=-container] [class$=-detail] > div:nth-of-type(2n) {
  background-color: white;
  border-bottom: solid 1px #676767;
}
.page .content [class$=-container] [class$=-detail] > div .date {
  text-align: right;
}
.page .content [class$=-container] .title {
  display: inline-block;
  position: relative;
  font-size: clamp(20px, 2.189vw, 30px);
  font-weight: 700;
  margin: 40px auto 60px;
  padding-bottom: 20px;
  text-align: center;
}
.page .content [class$=-container] .title::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #fe2b38;
  transform-origin: 50% 100%;
  transform: scaleX(0.8);
}
.page .content [class$=-container] .title2 {
  font-family: "roboto", sans-serif;
  font-size: clamp(30px, 2.189vw, 42px);
  font-weight: 700;
  margin: 0 auto 3rem;
}
.page .content [class$=-container] .title3 {
  font-family: "roboto", sans-serif;
  font-size: clamp(16px, 2.189vw, 20px);
  font-weight: 700;
  margin: 0 auto 20px;
}

/*
* 下部エントリー
*-------------------------------------------------------------------
*/
.entry {
  background-color: #fe2b38;
  width: 100%;
  height: 350px;
  display: flex;
  text-align: center;
  color: #ffffff;
  justify-content: center;
  font-size: clamp(18px, 5vw, 32px);
}
.entry::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  padding-bottom: 25.55%;
}
@media screen and (max-width: 767px) {
  .entry {
    height: 185px;
  }
}
.entry .entry-container {
  margin-top: 44px;
  font-size: 3.7rem;
  font-weight: bold;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .entry .entry-container {
    margin-top: 30px;
    font-size: 2.7rem;
  }
}
.entry img {
  display: block;
  width: 900px;
  max-width: 80vw;
  margin: 4rem auto 0;
}
@media screen and (max-width: 767px) {
  .entry img {
    max-width: 310px;
    margin: 2rem auto 2rem;
  }
}

/*--------------------------------------------------------------
# global 変数定義など
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Layouts サイト共通部分に当たるスタイル
--------------------------------------------------------------*/
.l-header {
  width: 100%;
  height: 90px;
  position: relative;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  background-color: #ffffff;
  z-index: 100;
  display: flex;
}
.l-header::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  padding-bottom: 90px;
}
.l-header .l-header__container {
  width: 100%;
  max-width: 100%;
  display: grid;
  height: 90px;
  margin: 0 auto;
  align-items: center;
  grid-template-columns: 22% 1fr 10%;
  grid-template-rows: 90px;
  grid-template-areas: "l-header__branding l-header__nav l-header__btn";
}
@media screen and (max-width: 767px) {
  .l-header .l-header__container {
    grid-template-columns: 80% 1fr;
    grid-template-rows: 90px;
    grid-template-areas: "l-header__branding menu-btn";
  }
}
.l-header .l-header__container .l-header__branding {
  grid-area: l-header__branding;
  justify-self: left;
  margin: 15px 0 0 31px;
}
.l-header .l-header__container .l-header__branding .l-header__brand {
  margin: 0;
  font-weight: bold;
  letter-spacing: 0.05em;
  white-space: nowrap;
}
.l-header .l-header__container .l-header__branding .l-header__brand img {
  width: 230px;
  height: 28px;
  object-fit: cover;
  margin: 0;
}
.l-header .l-header__container .menu-btn {
  grid-area: menu-btn;
  display: grid;
  justify-items: center;
}
.l-header .l-header__container .l-header__nav {
  grid-area: l-header__nav;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 3rem 3rem;
  gap: 0px 0px;
  justify-content: flex-end;
  align-items: center;
  grid-template-areas: "gaibu_link" "navbar-nav";
}
@media screen and (max-width: 767px) {
  .l-header .l-header__container .l-header__nav {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: 90px;
  }
}
.l-header .l-header__container .l-header__nav .gaibu_link {
  grid-area: gaibu_link;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin: 0 40px 20px 0;
  font-size: 1.3rem;
}
.l-header .l-header__container .l-header__nav .gaibu_link a .material-symbols-outlined {
  color: #fe2b38;
  font-size: 1.8rem;
  padding-left: 12px;
  margin-right: 13px;
  vertical-align: -3px;
}
.l-header .l-header__container .l-header__nav .l-header__menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
@media screen and (max-width: 767px) {
  .l-header .l-header__container .l-header__nav .l-header__menu {
    flex-direction: column;
    align-items: flex-start;
  }
}
.l-header .l-header__container .l-header__nav .l-header__menu .l-header__menu-item {
  position: relative;
  color: #222222;
  padding: 10px clamp(7px, -21.248px + 3.68vw, 29px) 0;
  min-width: 80px;
  font-size: clamp(1.3rem, 0.9152rem + 0.5vw, 1.6rem);
  white-space: nowrap;
}
.l-header .l-header__container .l-header__nav .l-header__menu .l-header__menu-item:hover:after {
  opacity: 1;
  width: 100%;
}
.l-header .l-header__container .l-header__nav .l-header__menu .l-header__menu-item .arrow::after {
  content: "";
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid #ff0000;
  transform: rotate(0deg);
}
.l-header .l-header__container .l-header__nav .l-header__menu .l-header__menu-item:hover .l-header-sub__menu {
  visibility: visible;
  opacity: 1;
  transform: scaleY(1);
}
@media screen and (max-width: 767px) {
  .l-header .l-header__container .l-header__nav .l-header__menu .l-header__menu-item {
    padding: 4px 10px 4px;
  }
}
@media screen and (max-width: 767px) {
  .l-header .l-header__container .l-header__nav .l-header__menu .l-header__link {
    padding: 4px 10px 4px;
  }
}
.l-header .l-header__container .l-header__nav .l-header__menu .l-header__link.mark-triangle {
  position: relative;
}
.l-header .l-header__container .l-header__nav .l-header__menu .l-header__link.mark-triangle.mark-triangle::after {
  content: "";
  display: block;
  position: absolute;
  width: 0;
  height: 0;
  top: 45%;
  right: -15px;
  border-style: solid;
  border-width: 9px 6px 0 6px;
  border-color: #fe2b38 transparent transparent transparent;
}
@media screen and (max-width: 767px) {
  .l-header .l-header__container .l-header__nav .l-header__menu .l-header__link.mark-triangle.mark-triangle::after {
    content: none;
  }
}
.l-header .l-header__container .l-header__nav .l-header__menu .l-header-sub__menu {
  box-sizing: border-box;
  position: absolute;
  top: 48px;
  left: 0;
  width: 100%;
  height: auto;
  background-color: #fe2b38;
  color: #fff;
  font-size: 14px;
  padding: 24px 18px 20px;
  z-index: -1;
  visibility: hidden;
  opacity: 0;
  transform: scaleY(0);
  transform-origin: center top;
  transition: all 0.5s;
}
@media screen and (max-width: 767px) {
  .l-header .l-header__container .l-header__nav .l-header__menu .l-header-sub__menu {
    position: initial;
    width: 300px;
    visibility: visible;
    opacity: 1;
    transform: scaleY(1);
    background-color: #fafafa;
    padding: 6px 18px;
  }
}
.l-header .l-header__container .l-header__nav .l-header__menu .l-header-sub__menu .l-header__sub-menu-item {
  white-space: wrap;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .l-header .l-header__container .l-header__nav .l-header__menu .l-header-sub__menu .l-header__sub-menu-item {
    margin-bottom: 10px;
  }
}
.l-header .l-header__container .l-header__nav .l-header__menu .l-header-sub__menu .l-header__sub-menu-item:last-child {
  margin-bottom: 0;
}
.l-header .l-header__container .l-header__nav .l-header__menu .l-header-sub__menu .l-header__sub-menu-item a {
  font-size: 14px;
  color: #fff;
}
.l-header .l-header__container .l-header__nav .l-header__menu .l-header-sub__menu .l-header__sub-menu-item a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 767px) {
  .l-header .l-header__container .l-header__nav .l-header__menu .l-header-sub__menu .l-header__sub-menu-item a {
    display: inline;
    font-size: 12px;
    color: #222222;
    padding: 0px;
  }
}
.l-header .l-header__container .l-header__nav .l-header__menu .l-header-sub__menu .l-header__sub-menu-item::before {
  content: "-";
  padding-right: 5px;
}
@media screen and (max-width: 767px) {
  .l-header .l-header__container .l-header__nav .l-header__menu .l-header-sub__menu .l-header__sub-menu-item::before {
    color: #222222;
  }
}
@media screen and (max-width: 767px) {
  .l-header .l-header__container .menu-content {
    left: 100%;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    z-index: 80;
    background-color: #fafafa;
    transition: all 0.5s;
  }
  .l-header .l-header__container .menu-content ul {
    padding: 70px 10px 0;
  }
  .l-header .l-header__container .menu-content ul li {
    list-style: none;
  }
  .l-header .l-header__container .menu-content ul li a {
    display: block;
    width: 100%;
    font-size: 15px;
    box-sizing: border-box;
    color: #222222;
    text-decoration: none;
    padding: 9px 15px 10px 0;
    position: relative;
  }
}
.l-header .l-header__container .l-header__btn {
  grid-area: l-header__btn;
  background-color: #fe2b38;
  display: grid;
  justify-content: center;
  align-items: center;
  width: 100%;
  text-align: center;
  width: 140px;
  width: clamp(80px, 0.184rem + 10.03vw, 140px);
  height: 100%;
  position: absolute;
  bottom: 0;
  right: 0;
  top: 0;
}
.l-header .l-header__container .l-header__btn a {
  color: #ffffff;
}

@media screen and (max-width: 767px) {
  .l-hamburger-menu {
    justify-self: center;
  }
  .menu-btn {
    display: grid;
    height: 60px;
    width: 60px;
    justify-content: center;
    align-items: center;
    z-index: 90;
    background-color: #fe2b38;
    position: relative;
  }
  .menu-btn span,
  .menu-btn span::before,
  .menu-btn span::after {
    content: "";
    display: block;
    height: 3px;
    width: 25px;
    border-radius: 3px;
    background-color: #ffffff;
    position: absolute;
  }
  .menu-btn span::before {
    bottom: 8px;
  }
  .menu-btn span::after {
    top: 8px;
  }
  #menu-btn-check:checked ~ .menu-btn span {
    background-color: rgba(255, 255, 255, 0);
  }
  #menu-btn-check:checked ~ .menu-btn span::before {
    bottom: 0;
    transform: rotate(45deg);
  }
  #menu-btn-check:checked ~ .menu-btn span::after {
    top: 0;
    transform: rotate(-45deg);
  }
}
#menu-btn-check:checked ~ .menu-content {
  left: 0 !important;
}

#menu-btn-check {
  display: none;
}

.entry-btn a img {
  width: 60px;
  height: 245px;
  object-fit: cover;
}

.footer-container {
  display: flex;
  position: relative;
  background-color: #333333;
  width: 100%;
  color: #ffffff;
  padding-top: 35px;
  justify-content: center;
}
.footer-container::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  padding-bottom: 25.28%;
}
.footer-container .wrap {
  width: 84.6%;
}
.footer-wrap {
  margin: 2rem 0 5rem;
  display: grid;
  justify-content: flex-end;
  grid-template-columns: 90%;
  grid-template-rows: repeat(4, max-content);
  gap: 3rem 0;
  justify-content: center;
  grid-template-areas: "footer-info" "footer-bnr" "footer-cat" "footer-navi";
}
@media screen and (min-width: 1024px) {
  .footer-wrap {
    grid-template-columns: repeat(3, 30%);
    gap: 0px 3rem;
    grid-template-areas: "footer-info footer-cat footer-bnr" "footer-navi footer-navi footer-navi";
  }
}
.footer-info {
  grid-area: footer-info;
  text-align: center;
}
@media screen and (min-width: 1024px) {
  .footer-info {
    text-align: start;
  }
}
.footer-info img {
  width: 100%;
  max-width: 205px;
  height: auto;
}
.footer-info .footer-info__address {
  font-style: normal;
  margin-top: 24px;
  font-size: 13px;
  letter-spacing: 0.05em;
}
.footer-info .footer-info__tel {
  margin-top: 3px;
  font-size: 13px;
  line-height: 2;
  letter-spacing: 0.05em;
}
.footer-sns {
  margin: 36px 0;
  text-align: center;
}
@media screen and (min-width: 1024px) {
  .footer-sns {
    text-align: left;
  }
}
.footer-sns a {
  margin-right: 15px;
}
.footer-sns a i {
  font-size: 3rem;
  font-weight: 400;
  color: #ffffff;
}
.footer-cat {
  grid-area: footer-cat;
  display: grid;
  grid-template-columns: repeat(2, 50%);
  justify-content: center;
  font-size: 1.3rem;
}
.footer-cat ul {
  margin: 0 auto;
  letter-spacing: 0.05em;
  white-space: nowrap;
}
.footer-cat ul li:not(:first-child) {
  margin-top: 15px;
}
.footer-cat ul li a {
  color: #ccc;
}
@media screen and (min-width: 1024px) {
  .footer-cat ul {
    margin-top: -4px;
    margin-left: 68px;
  }
}
.footer-bnr {
  grid-area: footer-bnr;
  display: grid;
  justify-content: center;
  max-width: 265px;
  justify-self: end;
  margin-top: -7px;
  margin: 0 auto;
}
@media screen and (min-width: 1024px) {
  .footer-bnr {
    margin: 0;
  }
}
.footer-navi {
  grid-area: footer-navi;
  margin: 0 auto;
}
@media screen and (min-width: 1024px) {
  .footer-navi {
    margin: 0;
  }
}
.footer-navi ul {
  display: grid;
  grid-template-columns: repeat(3, max-content);
  justify-content: flex-start;
  gap: 42px;
  font-size: 13px;
  padding: 3px 0;
}
.footer-navi ul li a {
  color: #ccc;
}
@media screen and (max-width: 767px) {
  .footer-navi ul {
    grid-template-columns: 1fr;
    grid-auto-columns: auto;
    gap: 20px;
  }
}
.footer-copy {
  padding: 1.6rem 0;
  color: #ccc;
  font-size: 1.1rem;
  text-align: center;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  position: absolute;
  top: auto;
  bottom: 72%;
  left: 15px;
  margin-top: -40%;
}
@media screen and (min-width: 1024px) {
  .footer-copy {
    top: 42px;
    left: 3.5%;
    bottom: auto;
    margin-top: -10%;
  }
}

/*--------------------------------------------------------------
# page ページ単体で使用するスタイル
--------------------------------------------------------------*/
.mv {
  padding-bottom: 6px;
  margin-bottom: 80px;
  /*background-size: contain;
  background-position: left $header_height;*/
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 767px) {
  .mv {
    margin-bottom: 40px;
  }
}
.mv-container {
  position: relative;
  width: 100%;
  max-height: 750px;
  padding-top: 6rem;
  /*@include boxheight(55.33%);
  @include mq(sp) {
    padding-top: 6rem;
  }
  @include mq(pc) {
    grid-template-rows: 1fr;
  }*/
}
.mv-container .scroll-down {
  position: absolute;
  left: 50%;
  bottom: 10px;
  height: 70px;
}
.mv-container .scroll-down span {
  position: absolute;
  left: -15px;
  top: -20px;
  color: #fafafa;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
}
.mv-container .scroll-down::after {
  content: "";
  position: absolute;
  top: 0;
  width: 1px;
  height: 50px;
  background: #fafafa;
  animation: scrollMove 2s ease-in-out infinite;
  opacity: 0;
}
@keyframes scrollMove {
  0% {
    height: 0;
    top: 0;
    opacity: 0;
  }
  30% {
    height: 50px;
    opacity: 1;
  }
  100% {
    height: 0;
    top: 50px;
    opacity: 0;
  }
}
.mv-container .mv-txt {
  margin-top: 382px;
  margin-top: 28%;
  /*@include mq(sp) {
    top: 20%;
    text-align: center;
  }
  @include mq(tb_up) {
    left: 7.08%;
    bottom: 15.04%;
  }*/
  /*
  [class*="mv-"] {
    transform: skewX(-25deg);
    background-color: rgba(255, 255, 255, 0.8);
    margin: 1rem 0 0 3rem;
    font-size: clamp(18px, 5vw, 51px);
    font-weight: 700;
    padding: 0.5rem 3rem;
    height: 5.91%;
    > p {
      transform: none;
    }
  }
  img {
    width: 100%;
  }
  */
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .mv-container .mv-txt {
    margin-top: 25%;
  }
}
@media screen and (max-width: 767px) {
  .mv-container .mv-txt {
    margin-top: 16%;
  }
}
.mv-container .mv-txt_up {
  width: fit-content;
  padding: 0 20px 0 15px;
  position: relative;
  z-index: 2;
  text-align: center;
  font-size: clamp(4.5rem, 2.7024rem + 2.34vw, 5.9rem);
  font-weight: 700;
  margin: 0 0 3rem 9.5rem;
  line-height: 1.4;
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .mv-container .mv-txt_up {
    margin: 0 0 1rem 9.5rem;
  }
}
@media screen and (max-width: 767px) {
  .mv-container .mv-txt_up {
    margin: 0 auto 1rem;
    font-size: clamp(1.5rem, 0.9008rem + 4.69vw, 4.5rem);
  }
}
.mv-container .mv-txt_up::before {
  content: "";
  width: auto;
  position: absolute;
  z-index: -1;
  transform: skewX(-12deg);
  background-color: rgba(255, 255, 255, 0.8);
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.mv-container .mv-txt_down {
  width: fit-content;
  padding: 0 20px 0 15px;
  position: relative;
  z-index: 2;
  text-align: center;
  font-size: clamp(4.5rem, 2.7024rem + 2.34vw, 5.9rem);
  font-weight: 700;
  margin-left: 16.5rem;
  line-height: 1.4;
  margin-top: 35px;
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .mv-container .mv-txt_down {
    margin-top: 18px;
  }
}
@media screen and (max-width: 767px) {
  .mv-container .mv-txt_down {
    font-size: clamp(1.5rem, 0.9008rem + 4.69vw, 4.5rem);
    margin: 0 auto 0;
  }
}
.mv-container .mv-txt_down::before {
  content: "";
  width: auto;
  position: absolute;
  z-index: -1;
  transform: skewX(-12deg);
  background-color: rgba(255, 255, 255, 0.8);
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.mv-container .mv-bg-slider {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
}
.mv-container .mv-bg-slider .mv-bg-slider__item {
  width: 100%;
}
.mv-container .mv-bg-slider .mv-bg-slider__item .mv-slider-image {
  width: 100%;
  object-fit: cover;
}
.mv-container .mv-bg-slider .slick-dots {
  position: absolute;
  bottom: 40px;
  right: 0;
  width: 30%;
}
@media screen and (max-width: 767px) {
  .mv-container .mv-bg-slider .slick-dots {
    top: 20px;
  }
}
.mv-container .mv-bg-slider .slick-dots .slick-active {
  position: relative;
}
.mv-container .mv-bg-slider .slick-dots .slick-active button::before {
  color: #fe2b38;
}
.mv-container .mv-bg-slider .slick-dots .slick-active button::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 45px;
  height: 45px;
  border: 1px solid #fe2b38;
  border-radius: 50%;
}
@media screen and (max-width: 767px) {
  .mv-container .mv-bg-slider .slick-dots .slick-active button::after {
    width: 25px;
    height: 25px;
  }
}

.message {
  background-color: #ffffff;
}
.message-container {
  background: #ffffff url("../../assets/img/top/HKR-fellow.jpg") no-repeat;
  background-position: center bottom;
  background-size: 100%;
}
@media screen and (min-width: 1024px) {
  .message-container {
    background-position: center bottom;
    background-size: contain;
    padding-bottom: 500px;
  }
}
.message-title {
  font-family: "Roboto", sans-serif;
  font-size: clamp(36px, 8vw, 81px);
  color: #ffffff;
  line-height: 9rem;
  font-weight: 900;
  text-align: left;
}
.message-subtitle {
  font-size: clamp(15px, 2.189vw, 26px);
  font-weight: 700;
  line-height: 8.5rem;
  text-align: left;
  margin-bottom: 7px;
  letter-spacing: normal;
}
@media screen and (max-width: 767px) {
  .message-subtitle {
    line-height: 5rem;
  }
}
.message-txt {
  font-size: 1.5rem;
  margin: 0rem auto 15rem;
  line-height: 2.13;
  letter-spacing: 0.13em;
  width: 80%;
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .message-txt {
    margin: 2rem auto 20rem;
    line-height: 2.5rem;
  }
}
@media screen and (max-width: 767px) {
  .message-txt {
    margin: 2rem auto 20rem;
    line-height: 2rem;
  }
}
@media screen and (min-width: 1024px) {
  .message-txt {
    width: 59%;
  }
}
.message-readmore {
  margin-top: 33px;
  font-weight: bold;
  padding-right: 11px;
}
.message-readmore .readmore {
  display: flex;
  justify-content: right;
  align-items: center;
  gap: 20px;
  /*.icon_wrap {
    width: 5rem;
    position: absolute;
    right: 0;
    top: 0;
    .material-symbols-outlined {
      display: grid;
      grid-template-areas: "gaibu_link";
      align-items: center;
      &.fontx2 {
        font-size: 4rem;
      }
      &.white {
        position: absolute;
        top: 8px;
        right: 18px;
      }
    }
  }*/
}
.message-readmore .readmore .circle {
  width: 6rem;
  height: 6rem;
  border-radius: 50%;
  border: solid 1px #fe2b38;
  position: relative;
}
.message-readmore .readmore .circle::after {
  content: "→";
  font-size: 1.6rem;
  color: #fe2b38;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.person {
  background-color: #ffffff;
}
@media screen and (min-width: 1024px) {
  .person {
    margin-top: 50px;
  }
}
.person-container {
  display: flex;
  width: 85%;
  padding-bottom: 8%;
}
.person-container::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  padding-bottom: 30%;
}
@media screen and (min-width: 1024px) {
  .person-container {
    width: 100%;
    margin-top: 0px;
  }
}
.person-subtitle {
  font-size: clamp(16px, 1.072rem + 1.7vw, 34px);
  font-weight: 700;
  line-height: 10rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .person-subtitle {
    line-height: 5rem;
  }
}
.person-wrapper {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  gap: 3rem 0px;
  margin: 37px auto;
  width: 85%;
}
@media screen and (min-width: 1024px) {
  .person-wrapper {
    grid-template-columns: repeat(3, 32.3%);
    grid-template-rows: 66.35%;
    gap: 0px 4rem;
    justify-content: center;
  }
}
.person-wrapper article {
  position: relative;
  padding: 20px 50px 42px 31px;
  min-height: 350px;
  height: fit-content;
}
@media screen and (max-width: 767px) {
  .person-wrapper article {
    padding: 20px 20px 42px 0;
  }
}
.person-wrapper article .wrap {
  padding: 0 10px;
  color: #222222;
  line-height: 2;
}
.person-wrapper article::before, .person-wrapper article::after {
  content: "";
  width: 6rem;
  height: 6rem;
  position: absolute;
}
.person-wrapper article::before {
  border-left: solid 2px #fe2b38;
  border-top: solid 2px #fe2b38;
  top: 0;
  left: 0;
}
.person-wrapper article::after {
  border-right: solid 2px #fe2b38;
  border-bottom: solid 2px #fe2b38;
  bottom: 0;
  right: 0;
}
.person-wrapper article .wrap-title {
  font-size: 1.9rem;
  color: #fe2b38;
  text-align: center;
  font-weight: bold;
}
.person-wrapper article .wrap-title span {
  display: grid;
  justify-content: center;
  align-items: center;
  font-size: 8rem;
  line-height: 8rem;
  color: #ffffff;
}
.person-wrapper article p {
  margin: 7px 0 13px;
  font-size: 2.3rem;
  font-weight: 700;
  text-align: center;
  line-height: 6rem;
}
@media screen and (min-width: 1024px) {
  .person-wrapper article p {
    white-space: nowrap;
  }
}

#about {
  background-color: #fafafa;
}

.about-title {
  position: relative;
  display: inline-block;
  top: -5rem;
  left: 10%;
  font-family: "Roboto", sans-serif;
  font-size: clamp(36px, 8vw, 81px);
  color: #ffffff;
  line-height: 9rem;
  font-weight: 900;
  text-align: left;
  margin-right: auto;
}
.about-container {
  width: 90%;
  margin-top: 0px;
}
@media screen and (min-width: 1024px) {
  .about-container {
    margin-top: -70px;
    width: 100%;
  }
}
.about-container > .wrap {
  width: 100%;
}
.about .wrap2 {
  display: flex;
}
.about .wrap2::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  padding-bottom: 45.28%;
}
.about-btnmenu {
  width: 100%;
  display: grid;
  justify-content: center;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr repeat(2, 300px);
  gap: 3rem 0rem;
  margin: 6.5rem 0;
  grid-template-areas: "about-subtitle" "about-company" "about-job";
}
@media screen and (min-width: 1024px) {
  .about-btnmenu {
    grid-template-columns: repeat(2, 37.5%);
    grid-template-rows: 13% 64% 13%;
    gap: 1rem 8rem;
    grid-template-areas: "about-subtitle about-job" "about-company about-job" "about-company .";
  }
}
.about-subtitle {
  grid-area: about-subtitle;
  font-size: clamp(15px, 2.189vw, 26px);
  font-weight: 700;
  line-height: 8.5rem;
  text-align: left;
  display: grid;
  align-self: left;
  margin-top: -46px;
}
@media screen and (max-width: 767px) {
  .about-subtitle {
    line-height: 5rem;
  }
}
.about-company {
  grid-area: about-company;
  background: #fafafa url("../../assets/img/top/link-company.jpg") no-repeat;
}
.about-job {
  grid-area: about-job;
  background: #fafafa url("../../assets/img/top/link-job.jpg") no-repeat;
}
.about .backfilter {
  background-position: center bottom;
  background-size: cover;
  border-radius: 20px;
  position: relative;
  cursor: pointer;
}
.about .backfilter::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0.1);
  border-radius: 20px;
  cursor: pointer;
}
.about-txt {
  font-weight: 700;
  position: absolute;
  bottom: 0;
  left: 0;
  line-height: 4rem;
  margin: 3.8rem 4rem;
  font-size: 3rem;
  text-align: left;
}
.about-txt span {
  display: block;
  font-family: "Roboto", sans-serif;
  font-size: 1.7rem;
  font-weight: 900;
}
.about .circle-position {
  position: absolute;
  bottom: 0;
  right: -10px;
  margin: 4rem;
}
.about .circle {
  width: 6rem;
  height: 6rem;
  border-radius: 50%;
  border: solid 1px #ffffff;
  position: relative;
}
.about .circle::after {
  content: "→";
  font-size: 1.6rem;
  color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.about-other {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: repeat(3, 140px);
  align-items: center;
  justify-content: center;
  gap: 10rem;
  min-height: 550px;
}
@media screen and (min-width: 1024px) {
  .about-other {
    gap: 4rem;
    grid-template-columns: repeat(3, 25%);
    grid-template-rows: 7rem;
    height: 7rem;
    min-height: 13rem;
  }
}
.about-other > div {
  border-radius: 8px;
  position: relative;
  padding: 3rem;
  border-radius: 8px;
  border: 1px solid #fe2b38;
  height: 100%;
  align-items: center;
  display: grid;
  font-size: 2.2rem;
  font-weight: bold;
}
.about-other-history {
  background: #ffffff url("../../assets/img/top/photo_about03.png") no-repeat;
  background-size: 60%;
  background-position: right -40% center;
}
.about-other-math {
  background: #ffffff url("../../assets/img/top/img_about01.png") no-repeat;
  background-size: 30%;
  background-position: right 8% center;
}
.about-other-online {
  background: #ffffff url("../../assets/img/top/img_about02.png") no-repeat;
  background-size: 30%;
  background-position: right center;
}

.people {
  background-color: #ffffff;
}
@media screen and (min-width: 1024px) {
  .people {
    min-height: 952px;
  }
}
.people-container {
  display: flex;
  width: 90%;
  margin: 0 auto;
  padding-top: 173px;
}
.people-container::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  padding-bottom: 57.43%;
}
@media screen and (min-width: 1024px) {
  .people-container {
    max-height: 512px;
  }
}
.people-title {
  font-family: "Roboto", sans-serif;
  font-size: clamp(36px, 8vw, 81px);
  color: #ffffff;
  line-height: 9rem;
  font-weight: 900;
  text-align: center;
  line-height: 0;
}
@media screen and (max-width: 767px) {
  .people-title {
    line-height: 4rem;
  }
}
.people-title p {
  font-size: clamp(18px, 10vw, 7rem);
}
.people-title .red {
  font-size: clamp(18px, 10vw, 8rem);
  display: block;
  position: relative;
  top: -62px;
}
.people-subtitle {
  font-size: clamp(15px, 2.189vw, 26px);
  font-weight: 700;
  line-height: 8.5rem;
  text-align: center;
  line-height: 1.3;
}
@media screen and (max-width: 767px) {
  .people-subtitle {
    line-height: 5rem;
  }
}
.people-wrapper {
  margin-top: 50px;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: repeat(4, 1fr);
  gap: 0;
  justify-content: center;
}
@media screen and (min-width: 1024px) {
  .people-wrapper {
    grid-template-columns: repeat(4, 22%);
    grid-template-rows: 378px;
    gap: 0 4.5rem;
  }
}
.people-wrapper article:not(:first-child) {
  margin-top: 3rem;
}
@media screen and (min-width: 1024px) {
  .people-wrapper article:not(:first-child) {
    margin-top: 0;
  }
}
.people-wrapper article .people-detail__img {
  overflow: hidden;
  border-radius: 20px;
}
@media screen and (min-width: 1024px) {
  .people-wrapper article .people-detail__img {
    height: 380px;
    width: 270px;
  }
}
.people-wrapper article .people-detail__img img {
  aspect-ratio: 4/3;
  width: 100%;
  object-fit: cover;
  object-position: 50% 0%;
  border-radius: 20px;
}
@media screen and (min-width: 1024px) {
  .people-wrapper article .people-detail__img img {
    height: 100%;
    width: 100%;
    width: 270px;
    object-fit: cover;
    object-position: 50% 50%;
    transform: scale(120%);
  }
}
.people-wrapper article .people-detail__lead {
  font-weight: 700;
  text-align: left;
  line-height: 2rem;
  margin-top: 24px;
  font-size: 1.8rem;
}
.people-wrapper article .people-detail__initial {
  margin-top: 16px;
  font-size: 1.4rem;
  color: #676767;
  font-weight: bold;
}
.people-wrapper article .people-detail__department {
  margin-top: 19px;
  color: #fe2b38;
  padding: 1px 1rem;
  border: 1px solid #fe2b38;
  border-radius: 999px;
  margin-right: 1rem;
  min-width: 60px;
  display: inline-block;
  font-size: 1.4rem;
  text-align: center;
}
.people-wrapper article .people-detail__year {
  color: #676767;
  margin-left: 5px;
  font-size: 1.3rem;
}
.people-btn {
  padding: 1.5rem 2rem;
  width: 50%;
  position: relative;
  color: #fe2b38;
  border: 1px solid #fe2b38;
  border-radius: 40px;
  line-height: 3rem;
  max-height: 30px;
  margin: 6rem auto 3rem;
  text-align: center;
}
@media screen and (min-width: 1024px) {
  .people-btn {
    padding: 1.4rem 2rem;
    width: 16%;
    margin: 10rem auto 3rem;
  }
}
.people-btn span {
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translate(0, -50%);
}
.people-detail1 img {
  object-position: 23% 100%;
}
@media screen and (min-width: 1024px) {
  .people-detail1 img {
    transform: scale(3.7);
    padding: 10px 0 0 0;
  }
}
.people-detail2 img {
  object-position: 0% 100%;
}
@media screen and (min-width: 1024px) {
  .people-detail2 img {
    transform: scale(3.6);
    padding: 25px 0 0 0;
    object-position: -61% 100%;
  }
}
.people-detail3 img {
  object-position: 107% 100%;
}
@media screen and (min-width: 1024px) {
  .people-detail3 img {
    transform: scale(3.6);
    padding: 32px 0 0 0;
  }
}
.people-detail4 img {
  object-position: 79% 100%;
}
@media screen and (min-width: 1024px) {
  .people-detail4 img {
    transform: scale(3.9);
    padding: 19px 0 0 0;
  }
}

.workplace {
  background: #fafafa url("../../assets/img/top/bg_workplace01.png") no-repeat;
  background-size: 100%;
}
@media screen and (min-width: 1024px) {
  .workplace {
    grid-template-rows: 670px;
  }
}
.workplace-container {
  padding-top: 6.5rem;
  width: 100%;
  justify-content: center;
  display: flex;
}
.workplace-container::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  padding-bottom: 56.3%;
}
@media screen and (min-width: 1024px) {
  .workplace-container {
    max-height: 700px;
  }
}
.workplace-title {
  font-family: "Roboto", sans-serif;
  font-size: clamp(36px, 8vw, 81px);
  color: #ffffff;
  line-height: 9rem;
  font-weight: 900;
  text-align: center;
}
.workplace-subtitle {
  font-size: clamp(15px, 2.189vw, 26px);
  font-weight: 700;
  line-height: 8.5rem;
  text-align: center;
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .workplace-subtitle {
    line-height: 5rem;
  }
}
.workplace-menu {
  width: 90%;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: repeat(3, 30%);
  gap: 3rem 0;
  justify-content: center;
  margin: 0 auto 10rem;
}
@media screen and (min-width: 1024px) {
  .workplace-menu {
    width: 100%;
    grid-template-columns: repeat(3, 25.5%);
    grid-template-rows: 1fr;
    gap: 0px 3rem;
  }
}
.workplace-menu article {
  position: relative;
  height: 100%;
}
.workplace-menu article .border-wrap {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 240px 65px;
  border-radius: 8px;
  border: 1px solid #fe2b38;
  border-radius: 8px;
}
.workplace-menu article .workplace-text {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 700;
  background-color: #ffffff;
  padding: 2rem 1rem 2rem 2.3rem;
  border-radius: 0 0 8px 8px;
  text-align: left;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
}
.workplace-menu article img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  border-radius: 8px 8px 0 0;
}
.workplace-menu-detail1 img {
  object-position: 54% 100%;
}
.workplace-menu-detail2 img {
  object-position: 54% 100%;
}
.workplace-menu-detail3 img {
  object-position: 54% 100%;
}

@media screen and (min-width: 1024px) {
  .infomation {
    padding: 52px 0px;
  }
}
.infomation-container {
  width: 100%;
  text-align: center;
  position: relative;
}
.infomation .wrap {
  width: 100%;
}
.infomation-title {
  font-family: "Roboto", sans-serif;
  font-size: clamp(36px, 8vw, 81px);
  color: #ffffff;
  line-height: 9rem;
  font-weight: 900;
  text-align: center;
  font-size: clamp(1.8rem, 10vw, 4.8rem);
  letter-spacing: 0.04em;
}
.infomation-subtitle {
  font-size: clamp(15px, 2.189vw, 22px);
  font-weight: 700;
  line-height: 8.5rem;
  text-align: center;
  line-height: 0;
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .infomation-subtitle {
    line-height: 5rem;
  }
}
.infomation-wrap {
  display: grid;
  justify-content: center;
  grid-template-columns: 1fr;
  grid-template-rows: repeat(3, 70px);
  gap: 2rem 0px;
  margin: 6rem auto 3rem;
}
@media screen and (min-width: 1024px) {
  .infomation-wrap {
    grid-template-columns: repeat(3, 25%);
    grid-template-rows: 100px;
    gap: 0px 3rem;
  }
}
.infomation .infomation-link {
  display: block;
  width: 100%;
  max-width: 360px;
  margin: 0 auto;
}
.infomation-detail {
  padding: 0 2rem;
  height: 100%;
  width: calc(90% - 4rem);
  text-align: left;
  position: relative;
  background-color: #eeeeee;
  font-size: 2.2rem;
  font-weight: bold;
  margin: 0 auto;
  line-height: 2rem;
  display: grid;
  align-items: center;
  justify-content: center;
  grid-template-columns: 80% 20%;
  grid-template-rows: 1fr;
  border-radius: 8px;
}
@media screen and (min-width: 1024px) {
  .infomation-detail {
    width: calc(100% - 4rem);
  }
}
.infomation-detail span {
  color: #fe2b38;
}
.infomation .infomation-detail__icon {
  color: #fff;
  position: relative;
  font-size: 2rem;
  position: absolute;
  z-index: 1;
  top: 50%;
  right: 24px;
  transform: translateY(-50%);
}
.infomation .infomation-detail__icon::before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-color: #fe2b38;
  position: absolute;
  top: 50%;
  left: -5px;
  transform: translateY(-50%);
  z-index: -1;
}
.infomation .intern {
  max-width: 700px;
  width: 100%;
  margin: 3rem auto;
}
@media screen and (max-width: 767px) {
  .infomation .intern {
    width: 90%;
  }
}

.president-pagemv-container {
  background: #fafafa url("../../assets/img/message/message-mv.jpg") no-repeat center center/cover;
  height: 623.7px !important;
}
@media screen and (max-width: 767px) {
  .president-pagemv-container {
    background: #fafafa url("../../assets/img/message/message-mv.jpg") no-repeat center left 65%/cover;
  }
}

@media screen and (min-width: 1024px) {
  .president .pagemv-wrap {
    padding: 2.4rem 8.7rem 2.4rem 10.9rem;
    margin-top: -60px;
  }
}
@media screen and (max-width: 767px) {
  .president .pagemv-wrap {
    margin-top: 160px;
  }
}
.president .pagemv-title {
  font-family: "roboto", sans-serif;
  font-size: clamp(36px, 8vw, 76px);
}
.president .pagemv-subtitle {
  margin-top: 8px;
  font-size: clamp(15px, 2.189vw, 24px);
  font-weight: 700;
  text-align: left;
}
.president .content, .president .breadcrumb {
  background-color: white;
}
.president-container p {
  margin-bottom: 20px;
}
.president-name {
  font-family: "Josefin Sans", "Noto Sans JP", "Noto Serif JP", sans-serif !important;
}
.president-name .post, .president-name .name {
  width: 100%;
  margin-bottom: 10px;
  text-align: right !important;
}
.president-name .name {
  font-size: 2.5rem;
}
.president .content .president-wrapper {
  margin-top: 25px !important;
}
@media screen and (min-width: 1024px) {
  .president .content .president-small_wrap {
    width: 73% !important;
  }
}
.president .content .president-small_wrap p {
  line-height: 2.3;
  letter-spacing: 0.05em;
}
.president .content .president-small_wrap .president-name {
  text-align: right;
  margin-top: 30px;
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
}
.president .content .president-small_wrap .president-name .post {
  font-weight: bold;
}
.president .content .president-small_wrap .president-name .name {
  font-size: 2.5rem;
  line-height: 1;
}

.about-pagemv-container {
  background: #fafafa url("../../assets/img/about/about-mv.jpg") no-repeat center center/cover;
  height: 500px !important;
}

.page.about .content,
.page.about .breadcrumb {
  background-color: white;
}
@media screen and (min-width: 1024px) {
  .page.about .about-wrapper {
    width: 100% !important;
  }
}
.page.about-container p {
  margin-bottom: 20px;
}
.page.about .about-other {
  margin-top: 10px;
}
.page.about .about-other > div {
  text-align: left;
}

.workplace-pagemv-container {
  background: #fafafa url("../../assets/img/environment/environment-mv.jpg") no-repeat center center/cover;
  height: 500px !important;
}
.workplace-pagemv-container .pagemv-wrap {
  padding: 5rem 5rem 3rem 11rem;
}
@media screen and (max-width: 767px) {
  .workplace-pagemv-container .pagemv-wrap {
    padding: 5rem 5rem 3rem 2rem;
  }
}
.workplace-pagemv-container .pagemv-title {
  font-size: clamp(36px, 8vw, 81px);
}

.page.workplace .content,
.page.workplace .breadcrumb {
  background-color: white;
}
.page.workplace .workplace-container {
  padding-top: 0;
}
.page.workplace .menu-wrap {
  width: 100%;
}
.page.workplace .title2 {
  position: relative;
  margin-top: 12rem !important;
}
.page.workplace .title2::before {
  content: "";
  position: absolute;
  top: -90px;
  left: 50%;
  transform: translateX(-50%);
  width: 2px;
  height: 70px;
  background-color: #fe2b38;
  animation: title2Move 2s ease-in-out infinite;
  opacity: 0;
}
@keyframes title2Move {
  0% {
    height: 0;
    top: -90px;
    opacity: 0;
  }
  30% {
    height: 70px;
    opacity: 1;
  }
  100% {
    height: 0;
    top: -20px;
    opacity: 0;
  }
}
.page.workplace .heading {
  font-size: clamp(16px, 2.189vw, 30px);
  font-weight: 700;
  margin-bottom: 4rem;
}

img {
  width: 100%;
}

.company-pagemv-container {
  background: #fafafa url("../../assets/img/company/company-mv.jpg") no-repeat center center/cover;
}

.text-left {
  text-align: left;
}

.company .company-pagemv-container {
  height: 500px !important;
}
@media screen and (min-width: 1024px) {
  .company .pagemv-wrap {
    padding: 5rem 8rem 3rem 11.5rem;
  }
}
.company .pagemv-subtitle {
  font-size: clamp(15px, 2.189vw, 22px);
}
.company .content,
.company .breadcrumb {
  background-color: white;
}
.company .content {
  padding-top: 99px;
}
@media screen and (max-width: 767px) {
  .company .content {
    padding-top: 30px;
  }
}
.company .title2 {
  font-size: clamp(3rem, 2.1964rem + 1.7vw, 4.8rem) !important;
  letter-spacing: 0.1em;
}
.company .red-edging {
  margin-right: 0.5rem;
}
.company-container p {
  margin-bottom: 20px;
}
.company-container p.text-note {
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
.company .policy-contents {
  margin: 66px auto 0;
  max-width: 1440px;
  display: grid;
  grid-template-columns: repeat(2, 50%);
  row-gap: 9rem;
  margin-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .company .policy-contents {
    grid-template-columns: 1fr;
    row-gap: 7rem;
  }
}
.company .policy-contents .image.first {
  padding-right: 9rem;
}
@media screen and (max-width: 767px) {
  .company .policy-contents .image.first {
    padding-right: 0;
    grid-column: 1/2;
    grid-row: 2/3;
  }
}
.company .policy-contents .image.second {
  padding-left: 9.3rem;
}
@media screen and (max-width: 767px) {
  .company .policy-contents .image.second {
    padding-left: 0;
    order: 1;
    grid-column: 1/2;
    grid-row: 4/5;
  }
}
.company .policy-contents .text.first {
  padding: 5rem 8rem 0 0;
}
@media screen and (max-width: 767px) {
  .company .policy-contents .text.first {
    padding: 0;
    grid-column: 1/2;
    grid-row: 1/2;
  }
}
.company .policy-contents .text.second {
  padding: 3rem 0 0 8rem;
}
@media screen and (max-width: 767px) {
  .company .policy-contents .text.second {
    padding: 0;
    order: 2;
    grid-column: 1/2;
    grid-row: 3/4;
  }
}
.company .policy-contents .text .heading {
  font-size: clamp(16px, 2.189vw, 30px);
  font-weight: 700;
  margin-bottom: 4rem;
  position: relative;
  z-index: 0;
}
.company .policy-contents .text .heading .number {
  position: absolute;
  font-size: 8rem;
  color: #ffffff;
}
.company .policy-contents .text .heading .number.first {
  top: -60px;
  left: 0;
  z-index: -1;
}
.company .policy-contents .text .heading .number.second {
  top: -60px;
  left: 0;
  z-index: -1;
}
.company .policy-contents .text .heading .heading-text {
  line-height: 1.9;
  letter-spacing: 0.12em;
}
.company .policy-contents .text .heading .heading-text.first {
  margin-left: -30px;
}
.company .policy-contents .text .heading .heading-text.second {
  margin-left: -62px;
}
.company-slide {
  width: 100%;
  height: 423px;
  display: grid;
  grid-template-columns: repeat(4, auto);
}
.company-slide .company-slider__item img {
  width: 413px;
  height: 423px;
  object-fit: cover;
  height: 100%;
  max-height: 400px;
  max-height: 400px;
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .company-slide .company-slider__item img {
    width: 340px;
    height: 350px;
  }
}
@media screen and (max-width: 767px) {
  .company-slide .company-slider__item img {
    width: 330px;
    height: 250px;
  }
}
.company .see-more {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  padding: 6rem 0;
}
.company .see-more .circle {
  width: 6rem;
  height: 6rem;
  border-radius: 50%;
  border: solid 1px #fe2b38;
  position: relative;
}
.company .see-more .circle::after {
  content: "→";
  font-size: 1.6rem;
  color: #fe2b38;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.company-business {
  background-color: #eeeeee;
  padding: 19rem 0;
}
@media screen and (max-width: 767px) {
  .company-business {
    padding: 4rem 0;
  }
}
.company-business .business-header {
  width: 100% !important;
}
.company-business .business-header img {
  width: 20%;
}
@media screen and (max-width: 767px) {
  .company-business .business-header {
    display: none;
  }
}
.company-business .business-header,
.company-business .company-small_wrap {
  position: relative;
  z-index: 1;
}
.company-business [class^=image-] {
  position: absolute;
  z-index: -1;
}
.company-business .image-1 {
  max-width: 14%;
  top: -98px;
  left: 16rem;
}
.company-business .image-2 {
  max-width: 19%;
  top: 153px;
  left: -3px;
}
.company-business .image-3 {
  max-width: 18%;
  top: -90px;
  right: 126px;
}
.company-business .image-4 {
  max-width: 15%;
  top: 263px;
  right: 47px;
}
.company-business .heading {
  font-size: clamp(16px, 2.189vw, 30px);
  font-weight: 700;
  margin-bottom: 4rem;
  margin-top: 100px;
  margin-bottom: 0;
  letter-spacing: 0.1em;
}
.company-business .heading.num-plus {
  position: relative;
  z-index: 0;
}
.company-business .heading .number {
  position: absolute;
  top: -60px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 8rem;
  z-index: -1;
}
.company-business .text-left {
  width: 100%;
  max-width: 700px;
  margin: 46px auto 0;
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
.company-core {
  max-width: 920px;
  background-color: white;
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px 50px;
  padding: 2rem 40px 50px;
  margin: 4rem auto;
}
@media screen and (min-width: 1024px) {
  .company-core {
    grid-template-columns: repeat(2, auto);
  }
}
@media screen and (max-width: 767px) {
  .company-core {
    padding: 2rem 15px 30px;
  }
}
@media screen and (min-width: 1024px) {
  .company-core .grid-merged {
    grid-column: 1/3;
  }
}
.company-core .heading {
  margin-top: 9px;
  padding-bottom: 10px;
}
.company-core .heading img {
  width: 435px;
  height: 240px;
  object-fit: cover;
}
.company-core .heading.small {
  margin-top: 17px;
  font-size: 1.75rem;
  line-height: 1.75;
}
.company-core .text-left {
  margin-top: 8px;
  font-size: 1.4rem;
  line-height: 2;
  letter-spacing: 0.05em;
  text-align: left;
}
.company .main-product {
  display: flex;
  flex-direction: column;
  width: auto;
  max-width: 900px;
  margin: 51px auto 0;
  padding: 28px 50px 39px;
  border: 2px solid #fe2b38;
  border-radius: 20px;
  gap: 4.5rem;
}
.company .main-product .round-frame {
  display: inline-block;
  background-color: white;
  color: #fe2b38;
  font-size: 1.2rem;
  font-weight: 800;
  padding: 0rem 1.5rem;
  margin-bottom: 6rem;
  border: solid 3px #fe2b38;
  border-radius: 20px;
}
@media screen and (max-width: 767px) {
  .company .main-product {
    padding: 28px 15px 30px;
  }
}
@media screen and (min-width: 1024px) {
  .company .main-product {
    flex-direction: row;
  }
}
.company .main-product img {
  width: 100%;
  height: 318px;
  object-fit: cover;
}
@media screen and (min-width: 1024px) {
  .company .main-product img {
    width: 80%;
    width: 415px;
  }
}
.company .main-product .title3 {
  font-size: clamp(16px, 2.189vw, 24px) !important;
  letter-spacing: 0.07em;
  margin-bottom: 0 !important;
}
.company .main-product .heading {
  font-size: clamp(16px, 2.189vw, 29px);
  margin-top: 12px;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
.company .main-product .note {
  margin-top: 21px;
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0.06em;
}
.company-challenge {
  margin-top: 120px;
}
@media screen and (min-width: 1024px) {
  .company-challenge .company-small_wrap {
    width: 64% !important;
  }
}
.company-challenge .heading {
  line-height: 1.8;
  letter-spacing: 0.12em;
  margin-top: 0;
}
.company-challenge .text-left {
  margin-top: 38px;
  width: 100%;
  letter-spacing: 0.055em;
}
.company-challenge .image {
  width: 100%;
  max-width: 1000px;
  margin: 40px auto 0;
}
.company-product {
  margin-top: 76px;
}
.company-product .title {
  margin: 0 auto !important;
  font-size: clamp(20px, 2.189vw, 27px) !important;
  padding-bottom: 35px !important;
}
.company-product .title::after {
  width: 80px !important;
  bottom: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}
.company-product .product {
  margin: 42px auto 0;
  width: 100%;
  max-width: 1440px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 65px;
  color: white;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .company-product .product {
    grid-template-columns: 1fr;
  }
}
.company-product .product [class^=product-] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 63px 30px 75px 45px;
  border-radius: 20px;
  font-size: 3rem;
}
.company-product .product [class^=product-] .circle {
  width: 6rem;
  height: 6rem;
  border-radius: 50%;
  border: solid 1px #ffffff;
  position: relative;
}
.company-product .product [class^=product-] .circle::after {
  content: "→";
  font-size: 1.6rem;
  color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.company-product .product-info {
  background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), url("../../assets/img/company/products.png") center/cover no-repeat;
}
.company-product .product-tech {
  background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), url("../../assets/img/company/technical.png") center/cover no-repeat;
}
.company-goal {
  margin-top: 45px;
}
.company-goal .title2 {
  position: relative;
  margin-top: 12rem !important;
}
.company-goal .title2::before {
  content: "";
  position: absolute;
  top: -90px;
  left: 50%;
  transform: translateX(-50%);
  width: 2px;
  height: 70px;
  background-color: #fe2b38;
  animation: title2Move 2s ease-in-out infinite;
  opacity: 0;
}
@keyframes title2Move {
  0% {
    height: 0;
    top: -90px;
    opacity: 0;
  }
  30% {
    height: 70px;
    opacity: 1;
  }
  100% {
    height: 0;
    top: -20px;
    opacity: 0;
  }
}
.company-goal .title2 {
  margin: 0 !important;
}
.company-goal .heading {
  font-size: clamp(16px, 2.189vw, 30px);
  font-weight: 700;
  margin-bottom: 4rem;
  margin-top: 40px;
  margin-bottom: 0;
  font-size: clamp(16px, 2.189vw, 32px);
}
.company-goal .title2 {
  margin: 0 !important;
}
.company-goal .text-left {
  width: 100%;
  max-width: 694px;
  margin: 28px auto 0;
  line-height: 1.9;
  letter-spacing: 0;
  font-size: 1.58rem;
}
.company-goal .goal-image {
  display: grid;
  grid-template-columns: repeat(2, auto);
  gap: 2rem;
  margin: 48px auto 60px;
  max-width: 1000px;
}
@media screen and (max-width: 767px) {
  .company-goal .goal-image {
    grid-template-columns: 1fr;
  }
}
.company-goal .club-activities {
  width: auto;
  max-width: 900px;
  margin: 68px auto 0;
  padding: 28px 50px 49px;
  border: 2px solid #fe2b38;
  border-radius: 20px;
}
.company-goal .club-activities .round-frame {
  display: inline-block;
  background-color: white;
  color: #fe2b38;
  font-size: 1.2rem;
  font-weight: 800;
  padding: 0rem 1.5rem;
  margin-bottom: 6rem;
  border: solid 3px #fe2b38;
  border-radius: 20px;
}
@media screen and (max-width: 767px) {
  .company-goal .club-activities {
    padding: 28px 15px 49px;
  }
}
.company-goal .club-activities .title3 {
  font-size: clamp(16px, 2.189vw, 24px) !important;
  letter-spacing: 0.07em;
  margin-bottom: 0 !important;
}
.company-goal .club-activities .heading {
  margin-top: 16px;
  margin-bottom: 0;
  font-size: clamp(16px, 2.189vw, 32px);
}
.company-goal .club-activities .text-left {
  margin-top: 20px;
  width: 100%;
  max-width: 100%;
}
.company-goal .club-image {
  display: grid;
  grid-template-columns: repeat(3, auto);
  gap: 30px;
  margin-top: 35px;
}
@media screen and (max-width: 767px) {
  .company-goal .club-image {
    grid-template-columns: repeat(2, auto);
  }
}
.company-knowledge {
  margin-top: 84px;
}
.company-knowledge .title {
  margin: 0 auto !important;
  font-size: clamp(20px, 2.189vw, 27px) !important;
  padding-bottom: 35px !important;
}
.company-knowledge .title::after {
  width: 80px !important;
  bottom: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}
.company-knowledge .knowledge {
  margin: 42px auto 0;
  width: 100%;
  max-width: 1440px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 34px;
}
@media screen and (max-width: 767px) {
  .company-knowledge .knowledge {
    grid-template-columns: 1fr;
  }
}
.company-knowledge .knowledge [class^=knowledge-] {
  padding: 69px 19px 75px 22px;
  border-radius: 20px;
  display: flex;
  position: relative;
  justify-content: space-between;
  align-items: center;
}
.company-knowledge .knowledge [class^=knowledge-] .circle {
  width: 6rem;
  height: 6rem;
  border-radius: 50%;
  border: solid 1px #ffffff;
  position: relative;
}
.company-knowledge .knowledge [class^=knowledge-] .circle::after {
  content: "→";
  font-size: 1.6rem;
  color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.company-knowledge .knowledge [class^=knowledge-] .text-left {
  font-size: 2.8rem;
  color: #ffffff;
  font-weight: 700;
  line-height: 1;
  margin: 0;
}
@media screen and (max-width: 767px) {
  .company-knowledge .knowledge [class^=knowledge-] .text-left {
    line-height: 1.3;
  }
}
.company-knowledge .knowledge [class^=knowledge-] .circle {
  flex-shrink: 0;
  width: 50px;
  height: 50px;
}
.company-knowledge .knowledge-1 {
  background: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url("../../assets/img/company/link-workplace02.jpg") center/cover no-repeat;
}
.company-knowledge .knowledge-1:hover {
  background: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1)), url("../../assets/img/company/link-workplace02.jpg") center/cover no-repeat;
}
.company-knowledge .knowledge-2 {
  background: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url("../../assets/img/company/link-training02.jpg") center/cover no-repeat;
}
.company-knowledge .knowledge-2:hover {
  background: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1)), url("../../assets/img/company/link-training02.jpg") center/cover no-repeat;
}
.company-knowledge .knowledge-3 {
  background: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url("../../assets/img/company/link-welfare02.jpg") center/cover no-repeat;
}
.company-knowledge .knowledge-3:hover {
  background: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1)), url("../../assets/img/company/link-welfare02.jpg") center/cover no-repeat;
}

.job-pagemv-container {
  background: #fafafa url("../../assets/img/job/job-mv.jpg") no-repeat center center/cover;
  height: 500px !important;
}

.job .pagemv-wrap {
  padding: 3rem 20.6rem 3rem 11rem;
}
@media screen and (max-width: 767px) {
  .job .pagemv-wrap {
    padding: 5rem 10.6rem 3rem 3rem;
  }
}
.job .content, .job .breadcrumb {
  background-color: white;
}
.job .breadcrumb {
  padding-bottom: 33px;
}
.job .job-small_wrap {
  width: 75% !important;
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
.job-container .job-menu {
  display: grid;
  grid-template-columns: repeat(4, 4fr);
  margin-bottom: 62px;
  margin-top: 40px;
  gap: 1.5rem;
  gap: 20px;
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .job-container .job-menu {
    grid-template-columns: repeat(2, 2fr);
  }
}
@media screen and (max-width: 767px) {
  .job-container .job-menu {
    grid-template-columns: 1fr;
  }
}
.job-container .job-menu a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  border: solid 3px #fe2b38;
  border-radius: 40px;
  padding: 0.2rem 3rem;
  line-height: 5rem;
  color: #fe2b38;
  font-weight: 700;
}
.job-container .job-menu a {
  padding: 0.2rem 0.5rem;
}
.job-image {
  display: grid;
  grid-template-columns: repeat(2, auto);
}
.job-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4rem;
  margin-bottom: 12rem;
}
@media screen and (min-width: 1024px) {
  .job-content {
    grid-template-columns: 54% 39%;
    gap: 8rem;
  }
}
.job-content_text {
  text-align: left;
}
.job-content_text .heading {
  font-size: clamp(16px, 2.189vw, 30px);
  font-weight: 700;
  margin-bottom: 4rem;
  position: relative;
  z-index: 0;
}
.job-content_text .heading .number {
  position: absolute;
  font-size: 8rem;
  color: #ffffff;
  top: -50px;
  left: 0;
  z-index: -1;
}
.job-content_text .heading-text {
  margin-left: 6rem;
}
.job .job-content {
  margin-top: 72px;
}
.job .job-content_text {
  margin-top: 24px;
}
.job .job-content_text .heading-text {
  margin-left: 90px;
  font-size: 3.7rem;
}
.job .job-content_text p {
  margin-top: 58px;
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
.job-people {
  width: 100%;
  position: relative;
  align-self: start;
  z-index: 2;
  border: 2px solid #fe2b38;
  border-radius: 20px;
}
.job-people .round-frame {
  display: inline-block;
  background-color: white;
  color: #fe2b38;
  font-size: 1.2rem;
  font-weight: 800;
  padding: 0rem 1.5rem;
  margin-bottom: 6rem;
  border: solid 3px #fe2b38;
  border-radius: 20px;
}
.job-people_heading {
  width: auto;
  position: absolute;
  top: 0;
  left: 0;
  color: white;
  z-index: 1;
  font-size: clamp(1.1rem, 0.8144rem + 0.89vw, 1.5rem);
  font-weight: 700;
  letter-spacing: 0.12em;
  padding: 1rem 3.1rem 0.8rem 2.3rem;
}
@media screen and (max-width: 767px) {
  .job-people_heading {
    padding: 1rem 2.1rem 0.8rem 1.3rem;
  }
}
.job-people_heading::before {
  content: "";
  width: auto;
  background-color: #fe2b38;
  position: absolute;
  top: -1px;
  bottom: 0;
  left: -2px;
  right: 0;
  clip-path: polygon(0 0, 100% 0, 93% 100%, 0% 100%);
  border-top-left-radius: 20px;
  z-index: -1;
}
.job-people_detail {
  display: grid;
  grid-template-columns: repeat(2, auto);
  gap: 2.6rem;
  padding: 68px 29px 31px 19px;
}
@media screen and (max-width: 767px) {
  .job-people_detail {
    gap: 1rem;
    padding: 50px 10px 20px 10px;
  }
}
.job-people_detail:not(:first-of-type) {
  padding: 28px 29px 31px 19px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .job-people_detail:not(:first-of-type) {
    gap: 1rem;
    padding: 50px 10px 20px 10px;
  }
}
.job-people_detail:not(:first-of-type)::before {
  content: "";
  display: block;
  height: 1px;
  background-color: #C0C0C0;
  position: absolute;
  top: 0;
  left: 19px;
  right: 29px;
}
@media screen and (max-width: 767px) {
  .job-people_detail:not(:first-of-type)::before {
    left: 10px;
    right: 10px;
  }
}
.job-people_detail [class^=image-] {
  width: 130px;
  height: 120px;
  border-radius: 20px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .job-people_detail [class^=image-] {
    width: 90px;
    height: 80px;
  }
}
.job-people_detail [class^=image-] img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: relative;
}
.job-people_detail .image-1 img, .job-people_detail .image-4 img {
  transform: scale(1.1);
  top: 0;
  left: 0;
}
.job-people_detail .image-2 img {
  transform: scale(3.2);
  top: 34px;
  left: -33px;
}
@media screen and (max-width: 767px) {
  .job-people_detail .image-2 img {
    transform: scale(3.4);
    top: 27px;
    left: -22px;
  }
}
.job-people_detail .image-3 img {
  transform: scale(3.9);
  top: 32px;
  left: 90px;
}
@media screen and (max-width: 767px) {
  .job-people_detail .image-3 img {
    left: 62px;
  }
}
.job-people_detail .heading {
  font-weight: 800;
  margin-bottom: 1rem;
  letter-spacing: 0.05em;
}
.job-people_detail .name {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  margin-top: 19px;
}
.job-people_detail .name p {
  font-size: 1.2rem;
}
.job-people_detail .name .circle {
  width: 6rem;
  height: 6rem;
  border-radius: 50%;
  border: solid 1px #fe2b38;
  position: relative;
}
.job-people_detail .name .circle::after {
  content: "→";
  font-size: 1.6rem;
  color: #fe2b38;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.job-people_detail .circle {
  width: 30px !important;
  height: 30px !important;
}
.job-people_image {
  width: 130px;
  height: 120px;
  border-radius: 20px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .job-people_image {
    width: 90px;
    height: 80px;
  }
}
.job-people_image img {
  transform: scale(1.1);
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: relative;
}

.fellow-pagemv-container {
  background: #fafafa url("../../assets/img/people/people-mv.jpg") no-repeat center center/cover;
  height: 500px !important;
}
.fellow-pagemv-container .pagemv-wrap {
  padding: 5rem 4.5rem 3rem 11rem;
}
@media screen and (max-width: 767px) {
  .fellow-pagemv-container .pagemv-wrap {
    padding: 5rem 5rem 3rem 2rem;
  }
}
.fellow-pagemv-container .pagemv-title {
  letter-spacing: 0.07em;
}

.fellow .content, .fellow .breadcrumb {
  background-color: white;
}
.fellow .breadcrumb {
  padding-bottom: 0;
}
.fellow .content {
  padding-top: 33px;
}
.fellow .fellow-text {
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
.fellow-photo {
  width: 88.5%;
  display: grid;
  grid-template-columns: repeat(4, 4fr);
  row-gap: 26px;
  column-gap: 43px;
  line-height: 4rem;
  margin: 51px auto 0;
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .fellow-photo {
    grid-template-columns: repeat(2, 2fr);
  }
}
@media screen and (max-width: 767px) {
  .fellow-photo {
    grid-template-columns: 1fr;
    row-gap: 0;
  }
}
.fellow-photo_content {
  text-align: left;
  padding-bottom: 20px;
}
.fellow-photo_content .fellow-photo__img {
  border-radius: 20px;
  aspect-ratio: 270/380;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .fellow-photo_content .fellow-photo__img {
    aspect-ratio: 4/3;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .fellow-photo_content .fellow-photo__img {
    aspect-ratio: 4/3;
  }
}
.fellow-photo_content .fellow-photo__img img {
  width: 100%;
  object-fit: cover;
}
.fellow-photo_content .heading {
  font-size: clamp(16px, 1.8vw, 24px);
  font-weight: 700;
  margin-bottom: 0;
  margin-top: 24px;
  font-size: clamp(1.6rem, 1.0016rem + 0.58vw, 1.8rem);
  line-height: 1.3;
}
.fellow-photo_content .initial {
  margin-top: 16px;
  line-height: 1;
}
.fellow-photo_content .detail {
  margin-top: 21px;
  display: flex;
  gap: 2rem;
}
.fellow-photo_content .detail .round-frame {
  display: inline-block;
  background-color: white;
  color: #fe2b38;
  font-size: 1.2rem;
  font-weight: 800;
  padding: 0rem 1.5rem;
  margin-bottom: 6rem;
  border: solid 3px #fe2b38;
  border-radius: 20px;
}
.fellow-photo_content .detail .round-frame {
  border-width: 1px;
  line-height: 1;
  padding: 7px 0;
  text-align: center;
  min-width: 80px;
  margin-bottom: 0;
}
.fellow-photo_content .detail .year {
  font-size: 1.3rem;
  line-height: 2;
  font-weight: bold;
}
.interview-pagemv-container {
  height: 631px !important;
  align-items: start !important;
  position: relative;
}
.interview-pagemv-container .mv-interview-image {
  height: 631px !important;
  text-align: center;
}
.interview-pagemv-container .mv-interview-image img {
  height: 100%;
  object-fit: cover;
}
.interview-pagemv-container .pagemv-wrap {
  position: absolute;
  top: 295px;
  left: 0px;
  padding: 1.2rem 6.7rem 4rem 8.4rem !important;
}
@media screen and (max-width: 767px) {
  .interview-pagemv-container .pagemv-wrap {
    padding: 1rem 1rem 4rem 1.5rem !important;
  }
}
.interview-pagemv-container .pagemv-wrap ul {
  margin-top: 45px;
}
.interview-pagemv-container .pagemv-wrap ul li {
  line-height: 2.2rem;
  font-size: 1.4rem;
}
.interview-pagemv-container .pagemv-interview {
  display: flex;
}
.interview-pagemv-container .pagemv-symbol {
  font-size: 2rem;
  font-weight: 600;
  color: #fe2b38;
  margin: 0 0.5rem 2rem 0;
}
.interview-pagemv-container .pagemv-number {
  font-family: "roboto", sans-serif;
  font-size: clamp(36px, 8vw, 48px);
  color: #fe2b38;
  font-weight: 600;
  margin-right: 2rem;
}
.interview-pagemv-container .pagemv-name {
  align-self: center;
}
@media screen and (max-width: 767px) {
  .interview-pagemv-container .pagemv-name span {
    display: block;
  }
}
.interview-pagemv-container .pagemv-title2 {
  font-size: clamp(16px, 4vw, 36px);
  font-weight: 600;
  text-align: left;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .interview-pagemv-container .pagemv-title2 {
    line-height: 4rem;
  }
}
.interview-pagemv-container .pagemv ul {
  line-height: 2.5rem;
  margin-top: 42px;
}

.interview .content, .interview .breadcrumb {
  background-color: white;
}
.interview .breadcrumb {
  padding-bottom: 0;
}
@media screen and (min-width: 1024px) {
  .interview .content {
    position: relative;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .interview .content {
    position: relative;
  }
}
.interview .interview-content1 {
  padding-bottom: 105px;
}
.interview-text {
  display: inline-block;
  background-color: white;
  font-family: "roboto", sans-serif;
  font-size: clamp(3.6rem, -0.9408rem + 12.11vw, 15.6rem);
  font-weight: 600;
  line-height: 1;
  text-stroke: 1px #C6C6C6 !important;
  -webkit-text-stroke: 1px #C6C6C6 !important;
  position: absolute;
  top: 47px;
  right: 22px;
  z-index: 0;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 767px) {
  .interview-text {
    display: none;
  }
}
.interview-big_wrap {
  background-color: #eeeeee;
  padding: 4rem 0;
  margin: 0 auto;
}
.interview-small_wrap {
  text-align: left !important;
  width: 58.6% !important;
  margin: 0 auto;
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .interview-small_wrap {
    width: 70% !important;
  }
}
@media screen and (max-width: 767px) {
  .interview-small_wrap {
    width: 90% !important;
  }
}
.interview-small_wrap .heading {
  position: relative;
  font-size: clamp(16px, 1.8vw, 24px);
  font-weight: 700;
  margin-bottom: 4rem;
  margin-bottom: 36px;
}
.interview-small_wrap .heading::after {
  content: "";
  position: absolute;
  width: 10rem;
  height: 1px;
  background-color: #fe2b38;
  left: -13rem;
  top: 50%;
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .interview-small_wrap .heading::after {
    width: 5rem;
    left: -6rem;
  }
}
@media screen and (max-width: 767px) {
  .interview-small_wrap .heading::after {
    top: auto;
    left: 0;
    bottom: -0.5rem;
  }
}
.interview-small_wrap .note {
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
.interview-small_wrap .heading2 {
  font-size: clamp(16px, 1.8vw, 24px);
  font-weight: 700;
  margin-bottom: 4rem;
  margin-bottom: 60px;
}
@media screen and (max-width: 767px) {
  .interview-small_wrap .heading2 {
    margin-bottom: 40px;
  }
}
.interview-small_wrap .heading3 {
  font-size: clamp(16px, 1.8vw, 18px);
  font-weight: 700;
  margin-bottom: 0;
}
.interview-small_wrap .heading4 {
  font-size: clamp(16px, 1.8vw, 21px);
  font-weight: 700;
  margin-bottom: 18px;
}
.interview-small_wrap .career-title {
  width: calc(100% - 42px);
  position: relative;
  display: flex;
  align-items: center;
  gap: 27px;
  left: 42px;
  top: 35px;
}
@media screen and (max-width: 767px) {
  .interview-small_wrap .career-title {
    top: 20px;
  }
}
.interview-small_wrap .career-title_en {
  font-family: "roboto", sans-serif;
  font-size: clamp(24px, 5vw, 45px);
  font-weight: 600;
  letter-spacing: 0.04em;
}
.interview-small_wrap .career-title_en::first-letter {
  color: #fe2b38;
}
.interview-small_wrap .schedule-title {
  position: relative;
  top: -10rem;
  left: 0;
  font-family: "roboto", sans-serif;
  font-size: clamp(36px, 8vw, 71px);
  font-weight: 600;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .interview-small_wrap .schedule-title {
    top: -4rem;
  }
}
.interview-small_wrap .schedule-title::first-letter {
  color: #fe2b38;
}
.interview-small_wrap .box {
  width: calc(100% - 84px);
  background-color: #eeeeee;
  border-radius: 20px;
  padding: 52px 36px 42px 44px;
  text-align: left;
  font-size: 1.4rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
.interview-small_wrap .story {
  margin-top: 71px;
}
.interview-small_wrap .schedule-details {
  margin-top: -10rem;
}
@media screen and (max-width: 767px) {
  .interview-small_wrap .schedule-details {
    margin-top: -4rem;
  }
}
.interview-small_wrap .image {
  margin-top: 62px;
}
.interview-small_wrap .schedule-content {
  display: grid;
  align-items: start;
  grid-template-columns: 108px 1fr;
  column-gap: 33px;
}
@media screen and (max-width: 767px) {
  .interview-small_wrap .schedule-content {
    grid-template-columns: 1fr;
    row-gap: 4rem;
  }
}
.interview-small_wrap .schedule-content_time {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.2rem 3rem;
  color: #fe2b38;
  font-weight: 700;
  line-height: 5rem;
  border: solid 3px #fe2b38;
  border-radius: 40px;
  box-sizing: border-box;
  width: 100%;
  border-width: 2px;
  padding: 11px 2px;
  text-align: center;
  line-height: 1;
}
.interview-small_wrap .schedule-content_border {
  margin: 0 auto;
  width: 0.01rem;
  height: 10rem;
  border: dashed 1px #fe2b38;
}
@media screen and (max-width: 767px) {
  .interview-small_wrap .schedule-content_border {
    display: none;
  }
}
.interview-small_wrap .schedule-content .action {
  font-size: 1.4rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
  padding-bottom: 46px;
}
@media screen and (max-width: 767px) {
  .interview-small_wrap .schedule-content .action {
    padding-bottom: 20px;
  }
}

.training-pagemv-container {
  background: #fafafa url("../../assets/img/training/training-mv.jpg") no-repeat center center/cover;
  height: 500px !important;
}
.training-pagemv-container .pagemv-wrap {
  padding: 5rem 5.5rem 3rem 11rem;
}
@media screen and (max-width: 767px) {
  .training-pagemv-container .pagemv-wrap {
    padding: 5rem 5rem 3rem 2rem;
  }
}
.training-pagemv-container .pagemv-title {
  letter-spacing: 0.07em;
}

.training-container section {
  padding-bottom: 6rem;
}
.training .breadcrumb, .training-big_wrap {
  background-color: #ffffff;
}
@media screen and (max-width: 767px) {
  .training .width-100 {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .training .width-90 {
    width: 90%;
  }
}
.training-small_wrap {
  margin: 0 auto;
  width: 58.6% !important;
  padding-bottom: 65px;
}
.training-small_wrap .title {
  text-align: center;
  margin: 0 !important;
  font-size: 3.1rem !important;
  letter-spacing: 0.1em;
}
.training-small_wrap .title::after {
  width: 80px !important;
  bottom: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}
.training-small_wrap p {
  margin-top: 14px;
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0.05em;
  text-align: left;
}
.training-wrapper {
  width: 73.3% !important;
  padding-bottom: 21px;
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .training-wrapper {
    width: 90% !important;
  }
}
@media screen and (max-width: 767px) {
  .training-wrapper {
    width: 90% !important;
  }
}
.training-wrapper .title {
  margin: 56px auto 0 !important;
  font-size: clamp(20px, 2.189vw, 29px) !important;
  padding-bottom: 32px !important;
}
.training-wrapper .title::after {
  width: 80px !important;
  bottom: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}
.training-complete {
  margin-top: 69px;
  display: grid;
  grid-template-columns: auto auto;
  gap: 50px 65px;
}
@media screen and (max-width: 767px) {
  .training-complete {
    grid-template-columns: 100%;
  }
}
.training-complete .training-image {
  width: 316px;
  height: 230px;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .training-complete .training-image {
    width: 100%;
  }
}
.training-complete .heading {
  font-size: clamp(15px, 2.189vw, 25px);
  font-weight: 700;
  padding-bottom: 2rem;
  line-height: 1;
}
.training-complete .note {
  margin-top: 13px;
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
.training-schedule {
  padding-bottom: 81px !important;
}
.training-schedule .title {
  margin: 53px auto 0 !important;
  font-size: clamp(20px, 2.189vw, 29px) !important;
  padding-bottom: 32px !important;
}
.training-schedule .title::after {
  width: 80px !important;
  bottom: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}
.training-schedule .training-schedule_img {
  margin-top: 42px;
  width: 73%;
}
@media screen and (max-width: 767px) {
  .training-schedule .training-schedule_img {
    width: 90%;
  }
}
.training-schedule .training-schedule_img img {
  width: 100%;
  max-width: 100%;
  height: auto;
}
.training-system {
  padding-bottom: 81px !important;
}
.training-system .title {
  margin: 53px auto 0 !important;
  font-size: clamp(20px, 2.189vw, 29px) !important;
  padding-bottom: 32px !important;
}
@media screen and (max-width: 767px) {
  .training-system .title {
    margin: 20px auto 0 !important;
  }
}
.training-system .title::after {
  width: 80px !important;
  bottom: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}
.training-system .training-system_img {
  margin-top: 41px;
  padding: 0 30px;
}
.training-system .training-system_img img {
  width: 90%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .training-system .training-system_img img {
    width: 100%;
  }
}

.welfare-pagemv-container {
  background: #fafafa url("../../assets/img/welfare/welfare-mv.jpg") no-repeat center center/cover;
  height: 500px !important;
}
@media screen and (max-width: 767px) {
  .welfare-pagemv-container {
    background: #fafafa url("../../assets/img/welfare/welfare-mv.jpg") no-repeat center right 20%/cover;
  }
}
.welfare-pagemv-container .pagemv-wrap {
  padding: 5rem 5.5rem 3rem 11rem;
}
@media screen and (max-width: 767px) {
  .welfare-pagemv-container .pagemv-wrap {
    padding: 5rem 5rem 3rem 2rem;
  }
}
.welfare-pagemv-container .pagemv-subtitle {
  letter-spacing: 0.05em;
}

.welfare .content, .welfare .breadcrumb {
  background-color: white;
}
.welfare .breadcrumb {
  padding-bottom: 0;
}
.welfare .content {
  padding-top: 33px;
}
.welfare-small_wrap {
  width: 58.5% !important;
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0.05em;
  padding-bottom: 65px !important;
}
@media screen and (max-width: 767px) {
  .welfare-small_wrap {
    width: 90% !important;
  }
}
.welfare-wrapper {
  width: 73% !important;
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .welfare-wrapper {
    width: 90% !important;
  }
}
@media screen and (max-width: 767px) {
  .welfare-wrapper {
    width: 90% !important;
  }
}
.welfare-wrapper .title {
  font-size: clamp(2rem, 1.584rem + 1.11vw, 3.1rem) !important;
  letter-spacing: 0.1em;
  margin: 53px auto 0 !important;
}
.welfare-wrapper .title::after {
  width: 80px !important;
  bottom: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}
.welfare-content {
  margin-top: 33px;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, 3fr);
  gap: 2rem;
}
@media screen and (max-width: 767px) {
  .welfare-content {
    grid-template-columns: 1fr;
  }
}
.welfare-content .contents {
  background-color: white;
}
.welfare-content .contents img {
  width: 100%;
}
.welfare .content-text {
  padding: 15px 19px 27px;
}
.welfare .content-text .heading {
  width: 100%;
  text-align: center !important;
  font-size: clamp(15px, 2.189vw, 21px);
  font-weight: 600;
  margin-bottom: 1rem;
}
.welfare .content-text .note {
  margin-top: 19px;
  font-size: 1.4rem;
  line-height: 1.9;
  letter-spacing: 0.05em;
  text-align: left;
}
.welfare-small_wrap {
  padding-bottom: 6rem;
}
.welfare-other {
  margin-top: 53px;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(4, 4fr);
  gap: 2rem;
  padding-bottom: 79px;
}
@media screen and (max-width: 767px) {
  .welfare-other {
    grid-template-columns: repeat(2, 2fr);
  }
}
.welfare-other .other-contents {
  background-color: white;
  padding: 2rem;
}
.welfare-other .other-contents .other-contents__img {
  margin: 0 auto;
}
.welfare-other .other-contents .other-contents__img img {
  width: 100%;
}
.welfare-other .other-contents .heading {
  width: 100%;
  text-align: center !important;
  font-size: 1.6rem;
  font-weight: 600;
}
.welfare-other .other-contents:nth-child(1) .other-contents__img {
  width: 40%;
  margin-top: 11px;
}
.welfare-other .other-contents:nth-child(1) .heading {
  padding-top: 17px;
}
.welfare-other .other-contents:nth-child(2) .other-contents__img {
  width: 38%;
  margin-top: 13px;
}
.welfare-other .other-contents:nth-child(2) .heading {
  padding-top: 19px;
}
.welfare-other .other-contents:nth-child(3) .other-contents__img {
  width: 36%;
  margin-top: 7px;
}
.welfare-other .other-contents:nth-child(3) .heading {
  padding-top: 19px;
}
.welfare-other .other-contents:nth-child(4) .other-contents__img {
  width: 45%;
  margin-top: 11px;
}
.welfare-other .other-contents:nth-child(4) .heading {
  padding-top: 13px;
}
.welfare-sample {
  display: grid;
  grid-template-columns: repeat(3, 3fr);
  width: 100%;
}
.welfare-sample img {
  width: 100%;
}
.welfare-details {
  margin-top: 72px;
  padding: 0 100px;
  text-align: center;
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .welfare-details {
    padding: 0 30px;
  }
}
@media screen and (max-width: 767px) {
  .welfare-details {
    padding: 0 15px;
  }
}
.welfare-details .title {
  margin: 0 !important;
  padding-bottom: 33px !important;
  font-size: clamp(20px, 2.189vw, 29px) !important;
}
.welfare-details .title::after {
  width: 80px !important;
  bottom: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}
@media screen and (max-width: 767px) {
  .welfare-details .scroll {
    width: 90vw;
    height: 70vh;
    overflow: scroll;
  }
}
.welfare-details .welfare-table {
  width: 100%;
  max-width: 1100px;
  margin: 40px auto 0;
  border-collapse: collapse;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .welfare-details .welfare-table {
    white-space: nowrap; /* 折り返されないように */
    -webkit-overflow-scrolling: touch; /* スマホでスムーズにスクロールできるように */
  }
}
.welfare-details .welfare-table th, .welfare-details .welfare-table td {
  border: 1px solid #676767;
  font-size: 1.5rem;
  line-height: 2.02;
  letter-spacing: 0.05em;
  padding: 0 15px;
  vertical-align: middle;
}
.welfare-details .welfare-table th {
  background-color: #EEE;
  width: 142px;
  padding: 27px 25px;
}
.welfare-details .welfare-table td {
  background-color: #ffffff;
  padding: 27px 31px;
}

.requirement-pagemv-container {
  background: #fafafa url("../../assets/img/requirement/requirement-mv.jpg") no-repeat center center/cover;
  height: 500px !important;
}
.requirement-pagemv-container .pagemv-wrap {
  padding: 5rem 5rem 3rem 11rem;
}
@media screen and (max-width: 767px) {
  .requirement-pagemv-container .pagemv-wrap {
    padding: 5rem 5rem 3rem 2rem;
  }
}
.requirement-pagemv-container .pagemv-title {
  letter-spacing: 0.07em;
}
.requirement-pagemv-container .breadcrumb {
  padding-bottom: 0;
}

.requirement .content, .requirement .breadcrumb {
  background-color: white;
}
.requirement .breadcrumb {
  padding-bottom: 0;
}
.requirement .content {
  padding-top: 33px;
}
.requirement .requirement-small_wrap {
  width: 73.5% !important;
}
.requirement .requirement-container__lead {
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
.requirement .title {
  margin: 70px auto 0 !important;
  padding-bottom: 32px !important;
}
.requirement .title::after {
  width: 80px !important;
  bottom: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}
.requirement-details {
  width: 91.5%;
  max-width: 1000px;
  margin: 40px auto 0;
  padding-bottom: 5px;
}
@media screen and (max-width: 767px) {
  .requirement-details {
    width: 90vw;
    height: 70vh;
    overflow: scroll;
  }
}
.requirement-details .requirement-detail__table {
  table-layout: fixed;
  width: 100%;
  border-collapse: collapse;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .requirement-details .requirement-detail__table {
    table-layout: auto;
    white-space: nowrap; /* 折り返されないように */
    -webkit-overflow-scrolling: touch; /* スマホでスムーズにスクロールできるように */
  }
}
.requirement-details .requirement-detail__table th, .requirement-details .requirement-detail__table td {
  border: 1px solid #676767;
  font-size: 1.5rem;
  line-height: 2.02;
  letter-spacing: 0.05em;
  padding: 0 15px;
  vertical-align: top;
}
.requirement-details .requirement-detail__table th {
  background-color: #EEE;
  width: 142px;
  padding: 27px 25px;
}
.requirement-details .requirement-detail__table td {
  background-color: #ffffff;
  padding: 27px 31px;
  line-height: 2;
}
.requirement-details .requirement-detail__table td ol {
  margin-top: -5px;
  line-height: 2.4;
}
.requirement-details .requirement-detail__table .date {
  text-align: right !important;
}
.requirement-details .requirement-detail__table .requirement-detail_treatment {
  width: 100%;
  max-width: 100%;
  overflow: scroll;
}
.requirement-details .requirement-detail_treatment_table {
  width: 742px;
  margin: 10px auto 19px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .requirement-details .requirement-detail_treatment_table {
    margin: 0 auto 0 0;
  }
}
.requirement-details .requirement-detail_treatment_table th {
  width: auto;
  padding: 5px 25px;
}
.requirement-details .requirement-detail_treatment_table td {
  padding: 6px 25px;
}

.flow-pagemv-container {
  background: #fafafa url("../../assets/img/flow/flow-mv.jpg") no-repeat center center/cover;
  height: 500px !important;
}
.flow-pagemv-container .pagemv-wrap {
  padding: 5rem 13rem 3rem 11rem;
}
@media screen and (max-width: 767px) {
  .flow-pagemv-container .pagemv-wrap {
    padding: 5rem 5rem 3rem 2rem;
  }
}
.flow-pagemv-container .pagemv-title {
  letter-spacing: 0.07em;
}
.flow-pagemv-container .breadcrumb {
  padding-bottom: 0;
}

.flow .content, .flow .breadcrumb {
  background-color: white;
}
.flow .breadcrumb {
  padding-bottom: 0;
}
.flow .content {
  padding-top: 33px;
}
.flow-wrapper {
  width: 98% !important;
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .flow-wrapper {
    width: 90% !important;
  }
}
@media screen and (max-width: 767px) {
  .flow-wrapper {
    width: 90% !important;
  }
}
.flow .flow-container__lead {
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
.flow .box:nth-of-type(1) {
  margin-top: 73px;
}
.flow .number {
  font-family: "roboto", sans-serif;
  font-size: 6rem;
  font-weight: bold;
  line-height: 6rem;
  margin-right: 2rem;
}
@media screen and (max-width: 767px) {
  .flow .number {
    display: block;
    margin-right: 0;
  }
}
.flow .text {
  margin-left: 27px;
  font-size: clamp(16px, 2.189vw, 25px);
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .flow .text {
    margin-left: 0;
  }
}
.flow .arrow {
  width: 0;
  height: 0;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-bottom: 20px solid #ff0000;
  transform: rotate(180deg);
  margin: 0 auto 20px;
  border-left-width: 30px;
  border-right-width: 30px;
}
.flow .box {
  width: calc(100% - 66px);
  display: flex;
  align-items: center;
  background-color: #eeeeee;
  border-radius: 8px;
  padding: 23px 33px 25px;
  margin-bottom: 21px;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .flow .box {
    display: block;
    text-align: center;
    padding: 13px 33px 15px;
  }
}
.flow .title {
  font-size: clamp(20px, 2.189vw, 29px) !important;
  margin: 66px auto 0 !important;
  padding-bottom: 33px !important;
}
.flow .title::after {
  width: 80px !important;
  bottom: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}
.flow .flow-details {
  width: 100%;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .flow .flow-details {
    width: 90vw;
    height: 70vh;
    overflow: scroll;
  }
}
.flow .flow-details__table {
  margin: 0 auto;
  width: 75%;
  max-width: 1100px;
  border-collapse: collapse;
  text-align: left;
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .flow .flow-details__table {
    width: 85%;
  }
}
@media screen and (max-width: 767px) {
  .flow .flow-details__table {
    table-layout: auto;
    white-space: nowrap; /* 折り返されないように */
    -webkit-overflow-scrolling: touch; /* スマホでスムーズにスクロールできるように */
  }
}
.flow .flow-details__table th, .flow .flow-details__table td {
  border: 1px solid #676767;
  font-size: 1.5rem;
  line-height: 2.02;
  letter-spacing: 0.05em;
  padding: 0 15px;
  vertical-align: top;
}
.flow .flow-details__table th {
  background-color: #EEE;
  width: 168px;
  padding: 27px 25px 27px 32px;
}
.flow .flow-details__table td {
  background-color: #ffffff;
  padding: 27px 31px;
  line-height: 2;
}

.faq-pagemv-container {
  background: #fafafa url("../../assets/img/faq/faq-mv.jpg") no-repeat center center/cover;
  height: 500px !important;
}
.faq-pagemv-container .pagemv-wrap {
  padding: 5rem 18rem 3rem 11rem;
}
@media screen and (max-width: 767px) {
  .faq-pagemv-container .pagemv-wrap {
    padding: 5rem 5rem 3rem 2rem;
  }
}
.faq-pagemv-container .pagemv-title {
  font-size: clamp(36px, 8vw, 80px);
  letter-spacing: 0.07em;
}
.faq-pagemv-container .breadcrumb {
  padding-bottom: 0;
}

.faq-small_wrap p {
  display: inline-block;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
}

.faq .content, .faq .breadcrumb {
  background-color: white;
}
.faq .breadcrumb {
  padding-bottom: 0;
}
.faq .content {
  padding-top: 35px;
}
.faq .faq-wrapper {
  width: 73% !important;
  max-width: 1400px;
}
@media screen and (max-width: 767px) {
  .faq .faq-wrapper {
    width: 90% !important;
  }
}
.faq .anchor {
  display: flex;
  justify-content: center;
  margin-top: 40px;
  gap: 1.5rem;
  margin-top: 22px;
}
@media screen and (max-width: 767px) {
  .faq .anchor {
    flex-direction: column;
    align-items: center;
  }
}
.faq .anchor a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  border: solid 3px #fe2b38;
  border-radius: 40px;
  padding: 0.2rem 3rem;
  line-height: 5rem;
  color: #fe2b38;
  font-weight: 700;
}
.faq .anchor .anchor__link {
  width: 100%;
  max-width: 200px;
  border: solid 2px #fe2b38;
  text-align: center;
  position: relative;
}
.faq .anchor .anchor__link .material-symbols-outlined {
  position: absolute;
  top: 50%;
  right: 14px;
  transform: translateY(-50%);
  font-size: 21px;
}
.faq .title {
  font-size: clamp(20px, 2.189vw, 29px) !important;
  margin: 0 auto 40px !important;
  padding-bottom: 33px !important;
}
.faq .title::after {
  width: 80px !important;
  bottom: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}
.faq .graduate {
  margin-top: 61px;
}
.faq .halfway {
  margin-top: 68px;
}
.faq .box {
  width: calc(100% - 40px);
  display: flex;
  align-items: center;
  flex-direction: column;
  background-color: #eeeeee;
  border-radius: 8px;
  padding: 0 20px 0;
  margin-bottom: 28px;
  text-align: left;
}
.faq .box p {
  width: 100%;
  display: flex;
  justify-content: start;
  margin: 10px;
}
@media screen and (max-width: 767px) {
  .faq .box p {
    display: block;
  }
}
.faq .box p.q-area {
  align-items: center;
  padding: 19px 0;
  cursor: pointer;
  position: relative;
}
.faq .box p.q-area::before, .faq .box p.q-area::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 19px;
  transform: translateY(-50%);
  width: 30px;
  height: 1px;
  background-color: #fe2b38;
}
@media screen and (max-width: 767px) {
  .faq .box p.q-area::before, .faq .box p.q-area::after {
    width: 20px;
    top: 26px;
    right: 5px;
    transform: translateY(0);
  }
}
.faq .box p.q-area::after {
  transform: rotate(90deg);
}
.faq .box p.q-area.is-open::after {
  transform: rotate(0);
}
.faq .box p.a-area {
  padding-bottom: 40px;
}
.faq .box p .q {
  color: #fe2b38;
}
.faq .box p .q-text {
  font-size: 1.8rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  padding-right: 60px;
}
.faq .box p .a-text {
  font-size: 1.4rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
.faq .box p .q, .faq .box p .a {
  width: 62px;
  font-family: "roboto", sans-serif;
  font-size: clamp(24px, 8vw, 38px);
  font-weight: 600;
  line-height: 1;
  padding: 0 14px 0 2px;
  text-align: center;
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .faq .box p .q, .faq .box p .a {
    display: block;
    margin-right: 2rem;
  }
}
.faq .box p .symbol {
  color: #fe2b38;
  font-size: clamp(24px, 8vw, 48px);
  font-weight: normal;
  margin-left: auto;
}

.career-pagemv-container {
  background: #fafafa url("../../assets/img/career/career-mv.jpg") no-repeat center center/cover;
  height: 500px !important;
}
.career-pagemv-container .pagemv-wrap {
  padding: 5rem 18rem 3rem 11rem;
}
@media screen and (max-width: 767px) {
  .career-pagemv-container .pagemv-wrap {
    padding: 5rem 5rem 3rem 2rem;
  }
}
.career-pagemv-container .pagemv-title {
  letter-spacing: 0.07em;
}
.career-pagemv-container .breadcrumb {
  padding-bottom: 0;
}

.career .content, .career .breadcrumb {
  background-color: white;
}
.career .breadcrumb {
  padding-bottom: 0;
}
.career .content {
  padding-top: 35px;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .career .content {
    padding-top: 55px;
  }
}
.career .content .en-title {
  display: inline-block;
  text-align: center;
  position: absolute;
  font-family: "roboto", sans-serif;
  font-size: clamp(36px, 10vw, 140px);
  font-weight: 700;
  line-height: 10rem;
  width: 100%;
  top: 4rem;
  left: 0;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .career .content .en-title {
    line-height: 5rem;
  }
}
.career .career-lead {
  margin-top: 91px;
}
.career .career-lead .heading {
  margin-bottom: 0;
  font-size: clamp(2.4rem, 2.0336rem + 1.15vw, 3.6rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.05em;
}
.career .career-lead .note {
  margin-top: 51px;
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .career .career-lead .note {
    text-align: left;
  }
}
.career-small_wrap {
  width: 63% !important;
}
@media screen and (max-width: 767px) {
  .career-small_wrap {
    width: 100% !important;
  }
}
.career-small_wrap .heading {
  font-size: clamp(16px, 2.189vw, 30px);
  font-weight: 700;
  margin-bottom: 4rem;
}
.career-image_1 {
  border-radius: 20px;
  width: 100%;
  height: 300px;
  background: url("../../assets/img/career/career-01.jpg") left/cover no-repeat;
}
@media screen and (min-width: 1024px) {
  .career-image_1 {
    height: 114%;
  }
}
.career-image_2 {
  border-radius: 20px;
  width: 100%;
  height: 300px;
  background: url("../../assets/img/career/career-02.jpg") center/cover no-repeat;
}
@media screen and (min-width: 1024px) {
  .career-image_2 {
    height: 114%;
  }
}
.career-image_3 {
  border-radius: 20px;
  width: 100%;
  height: 300px;
  background: url("../../assets/img/career/career-03.jpg") right/cover no-repeat;
}
@media screen and (min-width: 1024px) {
  .career-image_3 {
    height: 114%;
  }
}
.career .career-content__title {
  padding-bottom: 33px !important;
  margin-bottom: 0 !important;
}
.career .career-content__title::after {
  width: 80px !important;
  bottom: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}
.career-content {
  margin-top: 63px;
  display: grid;
  grid-template-columns: 1fr;
  column-gap: 0;
  row-gap: 137px;
}
@media screen and (min-width: 1024px) {
  .career-content {
    grid-template-columns: 60% 40%;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .career-content {
    row-gap: 60px;
  }
}
@media screen and (max-width: 767px) {
  .career-content {
    row-gap: 30px;
  }
}
.career-content .heading {
  font-size: clamp(16px, 2.189vw, 30px);
  font-weight: 700;
  margin-bottom: 4rem;
  margin-top: 40px;
  margin-bottom: 0;
  position: relative;
  z-index: 0;
}
.career-content .heading .number {
  position: absolute;
  font-family: "roboto", sans-serif;
  font-size: 14rem;
  color: #ffffff;
  top: -97px;
  left: -8px;
  z-index: -1;
}
.career-content .heading .text {
  font-size: clamp(2.4rem, 1.9104rem + 1.53vw, 4rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: left;
  margin-left: 9rem;
}
.career-content .note {
  margin-top: 70px;
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0em;
  padding-right: 58px;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .career-content .note {
    padding-right: 0;
  }
}
.career-big_wrap.career-box {
  background: linear-gradient(to bottom, #FFF 0, #FFF 21%, #f1f1f1 21%, #f1f1f1 100%);
  margin-top: 53px;
  padding-bottom: 85px;
}
@media screen and (min-width: 1024px) {
  .career .base-pos {
    position: relative;
  }
}
.career-btn {
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr;
}
@media screen and (min-width: 1024px) {
  .career-btn {
    top: -40rem;
    left: 0;
  }
}
@media screen and (min-width: 1024px) {
  .career-btn {
    width: 100%;
    grid-template-columns: repeat(2, 2fr);
    column-gap: 80px;
  }
}
.career-btn > a {
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 271px 29px 112px 34px;
  border-radius: 20px;
  width: calc(100% - 8rem);
  height: 20rem;
}
@media screen and (min-width: 1024px) {
  .career-btn > a {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .career-btn > a {
    margin: 2rem auto;
    height: 15rem;
    width: 100%;
    padding: 100px 20px 112px 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .career-btn > a {
    margin: 2rem auto;
  }
}
.career-btn > a .circle {
  width: 6rem;
  height: 6rem;
  border-radius: 50%;
  border: solid 1px #ffffff;
  position: relative;
}
.career-btn > a .circle::after {
  content: "→";
  font-size: 1.6rem;
  color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.career-btn > a .circle {
  margin-top: 8px;
}
.career-btn_company {
  background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), url("../../assets/img/career/link-company.jpg") center/cover no-repeat;
}
@media screen and (min-width: 1024px) {
  .career-btn_company {
    margin-top: 8rem;
  }
}
.career-btn_job {
  background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), url("../../assets/img/career/link-job.jpg") center/cover no-repeat;
}
.career-btn_txt span {
  display: block;
  line-height: 3rem;
  font-weight: 700;
}
.career-btn_txt span:nth-of-type(1) {
  font-size: 3.2rem;
  letter-spacing: 0.05em;
}
.career-btn_txt span:nth-of-type(2) {
  margin-top: 20px;
  font-size: 1.7rem;
}
.career-about {
  margin-top: 75px;
}
.career-about_other {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}
@media screen and (min-width: 1024px) {
  .career-about_other {
    grid-template-columns: repeat(3, 3fr);
    gap: 4rem;
  }
}
.career-about_other > div {
  border-radius: 20px;
  border: 2px solid #fe2b38;
  padding: 50px 1.5rem;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.2rem;
  text-align: left;
}
.career-about_history {
  background: #ffffff url("../../assets/img/top/photo_about03.png") no-repeat;
  background-size: 60%;
  background-position: right -40% center;
}
.career-about_math {
  background: #ffffff url("../../assets/img/top/img_about01.png") no-repeat;
  background-size: 30%;
  background-position: right 8% center;
}
.career-about_online {
  background: #ffffff url("../../assets/img/top/img_about02.png") no-repeat;
  background-size: 30%;
  background-position: right center;
}

.career-wrapper {
  margin-bottom: 60px !important;
}

.form-pagemv-container {
  background: #fafafa url("../../assets/img/faq/faq-mv.jpg") no-repeat center center/cover;
  height: 500px !important;
}
.form-pagemv-container .pagemv-wrap {
  padding: 5rem 18rem 3rem 11rem;
}
@media screen and (max-width: 767px) {
  .form-pagemv-container .pagemv-wrap {
    padding: 5rem 5rem 3rem 2rem;
  }
}
.form-pagemv-container .pagemv-title {
  font-size: clamp(36px, 8vw, 80px);
  letter-spacing: 0.07em;
}
.form-pagemv-container .breadcrumb {
  padding-bottom: 0;
}

.form .content [class$=-container] [class$=-wrapper] p.text-center {
  text-align: center;
}

.office-pagemv-container {
  background: #fafafa url("../../assets/img/workplace/workplace-mv.jpg") no-repeat center center/cover;
  height: 500px !important;
}
.office-pagemv-container .pagemv-wrap {
  padding: 5rem 6.5rem 3rem 11rem;
}
@media screen and (max-width: 767px) {
  .office-pagemv-container .pagemv-wrap {
    padding: 5rem 5rem 3rem 2rem;
  }
}
.office-pagemv-container .pagemv-title {
  font-size: clamp(36px, 8vw, 81px);
}

.office .content, .office .breadcrumb {
  background-color: white;
}
.office .breadcrumb {
  padding-bottom: 0;
}
.office-menu {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 40px;
  gap: 1.5rem;
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .office-menu {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 767px) {
  .office-menu {
    grid-template-columns: 1fr;
  }
}
.office-menu a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  border: solid 3px #fe2b38;
  border-radius: 40px;
  padding: 0.2rem 3rem;
  line-height: 5rem;
  color: #fe2b38;
  font-weight: 700;
}
.office .office-link {
  position: relative;
  padding: 0.2rem 2rem 0.2rem 0.5rem;
}
.office .office-link .office-link__icon {
  font-size: 1.8rem;
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
}
.office .plant-inaba {
  margin-top: 58px;
}
.office .plant-xxxxx {
  margin-top: 58px;
}
.office .office-big_wrap {
  margin: 170px auto 0 !important;
}
.office .title2 {
  position: relative;
  margin-top: 12rem !important;
}
.office .title2::before {
  content: "";
  position: absolute;
  top: -90px;
  left: 50%;
  transform: translateX(-50%);
  width: 2px;
  height: 70px;
  background-color: #fe2b38;
  animation: title2Move 2s ease-in-out infinite;
  opacity: 0;
}
@keyframes title2Move {
  0% {
    height: 0;
    top: -90px;
    opacity: 0;
  }
  30% {
    height: 70px;
    opacity: 1;
  }
  100% {
    height: 0;
    top: -20px;
    opacity: 0;
  }
}
.office .title2 {
  margin-top: 0 !important;
  font-size: clamp(3rem, 2.1964rem + 1.7vw, 4.8rem) !important;
  letter-spacing: 0.1em;
  margin-bottom: 0 !important;
}
.office .heading {
  font-size: clamp(16px, 2.189vw, 30px);
  font-weight: 700;
  margin-bottom: 4rem;
  font-size: clamp(16px, 2.189vw, 27px);
  margin: 15px auto 0 !important;
}
.office-slide {
  margin-top: 52px;
  margin-bottom: 140px;
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, auto);
  height: 423px;
  z-index: 1;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .office-slide {
    grid-template-columns: repeat(1, auto);
  }
}
.office-slide .slick-arrow {
  z-index: 10;
}
.office-slide .slick-prev {
  left: 20px;
}
.office-slide .slick-prev::before {
  font-size: 60px;
  color: #fe2b38;
}
.office-slide .slick-next {
  right: 60px;
}
.office-slide .slick-next::before {
  font-size: 60px;
  color: #fe2b38;
}
.office-slide .office-slide__item {
  width: 413px;
}
.office-slide .office-slide__item img {
  width: 413px;
  height: 423px;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .office-slide .office-slide__item img {
    min-height: 0;
    max-height: 100vw;
  }
  .office-slide .office-slide__item img:not(:first-child) {
    display: none;
  }
}
.office-slide .circle-paint {
  position: absolute;
  top: 33%;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background-color: #fe2b38;
  color: #ffffff;
  font-size: 1.2rem;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .office-slide .circle-paint {
    width: 44px;
    height: 44px;
  }
}
.office-slide .circle-paint.left {
  left: 8rem;
}
@media screen and (max-width: 767px) {
  .office-slide .circle-paint.left {
    left: 3rem;
  }
}
.office-slide .circle-paint.left::after {
  content: "←";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.office-slide .circle-paint.right {
  right: 8rem;
}
@media screen and (max-width: 767px) {
  .office-slide .circle-paint.right {
    right: 3rem;
  }
}
.office-slide .circle-paint.right::after {
  content: "→";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.offic-slide-wrapper {
  width: 100%;
  max-height: 423px;
}

.office-slider {
  width: 100%;
  height: 100%;
}

.office-slider__item {
  width: 412px;
  max-height: 423px;
}

.ofice-slide__image {
  width: 412px;
  object-fit: cover;
}

.saiyo-pagemv-container {
  background: #fafafa url("../../assets/img/saiyo/mv_01.png") no-repeat center center/cover;
  height: 500px !important;
}
@media screen and (max-width: 767px) {
  .saiyo-pagemv-container {
    background: #fafafa url("../../assets/img/saiyo/mv_01.png") no-repeat center right 30%/cover;
  }
}
.saiyo-pagemv-container .pagemv-wrap {
  padding: 5rem 5rem 3rem 11rem;
}
@media screen and (max-width: 767px) {
  .saiyo-pagemv-container .pagemv-wrap {
    padding: 5rem 5rem 3rem 2rem;
  }
}
.saiyo-pagemv-container .pagemv-title {
  font-size: clamp(36px, 8vw, 81px);
}

.page.saiyo .content,
.page.saiyo .breadcrumb {
  background-color: white;
}
.page.saiyo .workplace-container {
  padding-top: 0;
}
.page.saiyo .menu-wrap {
  width: 100%;
  padding-bottom: 100px;
  background: linear-gradient(to bottom, #FFF 0, #FFF 30%, #f1f1f1 30%, #f1f1f1 100%);
}
@media screen and (max-width: 767px) {
  .page.saiyo .menu-wrap {
    background: #f1f1f1;
    padding-bottom: 40px;
  }
}
.page.saiyo .heading {
  font-size: clamp(16px, 2.189vw, 30px);
  font-weight: 700;
  margin-bottom: 4rem;
}
.page.saiyo .saiyo-menu {
  margin: 0 auto;
  width: 85%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 30px;
}
@media screen and (max-width: 767px) {
  .page.saiyo .saiyo-menu {
    padding-top: 30px;
    flex-direction: column;
    width: 90%;
  }
}
.page.saiyo .border-wrap {
  width: 100%;
  max-width: 346px;
  border-radius: 20px;
  overflow: hidden;
}
.page.saiyo .border-wrap img {
  aspect-ratio: 346/240;
  border-radius: 0;
}
.page.saiyo .border-wrap .saiyo-detail__text {
  position: relative;
  left: 0;
  top: -13px;
  padding: 28px 10px 18px 25px;
  background-color: #ffffff;
  position: relative;
  overflow: hidden;
  border-radius: 0 0 20px 20px;
}
.page.saiyo .border-wrap .topic {
  margin-top: 10px;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.05em;
}
.page.saiyo .border-wrap .material-symbols-outlined {
  position: absolute;
  top: calc(50% + 6px);
  right: 0;
  transform: translateY(-50%);
  width: 30px;
  font-size: 22px;
}

/*--------------------------------------------------------------
# Components 最小パーツに当たるスタイル
--------------------------------------------------------------*/
.button-detail {
  display: flex;
  flex-wrap: wrap;
  max-width: 60rem;
  margin: 0 auto;
}
.button-detail .button-detail__button--next, .button-detail .button-detail__button--prev, .button-detail .button-detail__button--back, .button-detail .button-detail__button {
  margin-bottom: 2.4rem;
  padding: 1.6rem 2.4rem;
  border-radius: 0.4rem;
  background: #eeeeee;
  color: #222222;
}
.button-detail .button-detail__button--next:hover, .button-detail .button-detail__button--prev:hover, .button-detail .button-detail__button--back:hover, .button-detail .button-detail__button:hover, .button-detail .button-detail__button--next:focus, .button-detail .button-detail__button--prev:focus, .button-detail .button-detail__button--back:focus, .button-detail .button-detail__button:focus {
  background: #ffffff;
  color: #ffffff;
}
.button-detail__button--back {
  width: 100%;
}
.button-detail__button--back:before {
  margin-right: 0.8rem;
}
.button-detail__button--prev {
  width: 100%;
}
@media screen and (min-width: 1024px) {
  .button-detail__button--prev {
    width: calc(50% - 15px);
    margin-right: 15px;
  }
}
.button-detail__button--prev:before {
  margin-right: 0.8rem;
}
.button-detail__button--next {
  width: 100%;
}
@media screen and (min-width: 1024px) {
  .button-detail__button--next {
    width: calc(50% - 15px);
    margin-left: 15px;
  }
}
.button-detail__button--next:after {
  margin-left: 0.8rem;
}

.breadcrumb {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 6rem;
  height: auto;
  padding-bottom: 20px;
  text-align: right;
}
.breadcrumb p {
  width: 90%;
  font-size: 1.3rem;
}
@media screen and (min-width: 1024px) {
  .breadcrumb {
    padding-bottom: 40px;
  }
}

@media screen and (min-width: 1024px) {
  .form__form-group {
    display: flex;
  }
}
.form__form-group-title {
  padding: 1rem;
}
@media screen and (min-width: 1024px) {
  .form__form-group-title {
    width: 260px;
    padding: 1.6rem;
  }
}
.form__form-group-content {
  padding: 1rem;
  display: flex;
}
@media screen and (min-width: 1024px) {
  .form__form-group-content {
    width: calc(100% - 260px);
    padding: 1.6rem;
  }
}
.form .form__label--required, .form .form__label--itemname, .form .form__label {
  display: inline-block;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.08em;
}
.form__label--itemname {
  color: #222222;
}
.form__label--required {
  margin-left: 0.4rem;
  padding: 0.4em 0.6em;
  border-radius: 3px;
  background: #fafafa;
  color: #676767;
  font-size: 1.4rem;
}
.form__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.form__list-item {
  margin-bottom: 0.6rem;
}
.form .form__input--check, .form .form__input--radio, .form .form__input--select, .form .form__input--textarea-half, .form .form__input--textarea, .form .form__input--text-half, .form .form__input--text, .form .form__input {
  position: relative;
  width: 100%;
  padding: 0.4rem;
}
.form .form__input--select select, .form__input--select .form select, .form .form__input--textarea-half textarea, .form__input--textarea-half .form textarea, .form .form__input--textarea textarea, .form__input--textarea .form textarea, .form .form__input--text-half input, .form__input--text-half .form input, .form .form__input--text input, .form__input--text .form input {
  display: inline-flex;
  align-items: center;
  position: relative;
  width: 100%;
  margin: 0;
  border: 2px solid #efefef;
  background: #ffffff;
  font-weight: 400;
  font-size: 1.6rem;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  /* 旧Edge対応 */
  /* IE対応 */
}
.form .form__input--select select::-ms-expand, .form__input--select .form select::-ms-expand, .form .form__input--textarea-half textarea::-ms-expand, .form__input--textarea-half .form textarea::-ms-expand, .form .form__input--textarea textarea::-ms-expand, .form__input--textarea .form textarea::-ms-expand, .form .form__input--text-half input::-ms-expand, .form__input--text-half .form input::-ms-expand, .form .form__input--text input::-ms-expand, .form__input--text .form input::-ms-expand {
  display: none;
}
.form .form__input--select select::placeholder, .form__input--select .form select::placeholder, .form .form__input--textarea-half textarea::placeholder, .form__input--textarea-half .form textarea::placeholder, .form .form__input--textarea textarea::placeholder, .form__input--textarea .form textarea::placeholder, .form .form__input--text-half input::placeholder, .form__input--text-half .form input::placeholder, .form .form__input--text input::placeholder, .form__input--text .form input::placeholder {
  color: #cccccc;
}
.form .form__input--select select::-ms-input-placeholder, .form__input--select .form select::-ms-input-placeholder, .form .form__input--textarea-half textarea::-ms-input-placeholder, .form__input--textarea-half .form textarea::-ms-input-placeholder, .form .form__input--textarea textarea::-ms-input-placeholder, .form__input--textarea .form textarea::-ms-input-placeholder, .form .form__input--text-half input::-ms-input-placeholder, .form__input--text-half .form input::-ms-input-placeholder, .form .form__input--text input::-ms-input-placeholder, .form__input--text .form input::-ms-input-placeholder {
  color: #cccccc;
}
.form .form__input--select select:-ms-input-placeholder, .form__input--select .form select:-ms-input-placeholder, .form .form__input--textarea-half textarea:-ms-input-placeholder, .form__input--textarea-half .form textarea:-ms-input-placeholder, .form .form__input--textarea textarea:-ms-input-placeholder, .form__input--textarea .form textarea:-ms-input-placeholder, .form .form__input--text-half input:-ms-input-placeholder, .form__input--text-half .form input:-ms-input-placeholder, .form .form__input--text input:-ms-input-placeholder, .form__input--text .form input:-ms-input-placeholder {
  color: #cccccc;
}
.form .form__input--text-half input, .form__input--text-half .form input, .form .form__input--text input, .form__input--text .form input {
  padding: 0.8rem 1.6rem;
  transition: border-color 0.4s;
}
.form .form__input--text-half input:focus, .form__input--text-half .form input:focus, .form .form__input--text input:focus, .form__input--text .form input:focus {
  border: 2px solid #ffffff;
}
.form .form__input--textarea-half textarea, .form__input--textarea-half .form textarea, .form .form__input--textarea textarea, .form__input--textarea .form textarea {
  padding: 1.6rem;
  transition: border-color 0.4s;
}
.form .form__input--textarea-half textarea:focus, .form__input--textarea-half .form textarea:focus, .form .form__input--textarea textarea:focus, .form__input--textarea .form textarea:focus {
  border: 2px solid #ffffff;
}
.form__input--text-half {
  max-width: 50%;
}
.form__input--textarea-half {
  max-width: 50%;
}
.form__input--select {
  max-width: 300px;
}
.form__input--select select {
  padding: 0.8rem 2.4rem 0.8rem 1.6rem;
  cursor: pointer;
}
.form__input--select::after {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 12px;
  bottom: 0;
  z-index: 1;
  width: 0;
  height: 0;
  margin: auto 0;
  border-width: 6px 4px 0;
  border-style: solid;
  border-color: #cccccc transparent transparent transparent;
  content: "";
  pointer-events: none;
}
.form__input--radio {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
}
.form__input--radio .radio-icon {
  display: inline-block;
  position: relative;
  width: 2.5rem;
  height: 2.5rem;
  margin-right: 0.8rem;
  border: 1px solid #cccccc;
  border-radius: 50%;
}
.form__input--radio .radio-icon:before {
  opacity: 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 1.5rem;
  height: 1.5rem;
  margin: auto;
  border-radius: 50%;
  background: #ffffff;
  content: "";
  transition: opacity 0.4s;
}
.form__input--radio .radio-text {
  color: #cccccc;
  transition: color 0.4s;
}
.form__input--radio .radio-input:checked + .radio-icon {
  border-color: #ffffff;
}
.form__input--radio .radio-input:checked + .radio-icon:before {
  opacity: 1;
}
.form__input--radio .radio-input:checked ~ .radio-text {
  color: #ffffff;
}
.form__input--check {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
}
.form__input--check .check-icon {
  display: inline-block;
  position: relative;
  width: 2.5rem;
  height: 2.5rem;
  margin-right: 0.8rem;
  border: 2px solid #cccccc;
}
.form__input--check .check-icon:after {
  opacity: 0;
  position: absolute;
  top: 0.5rem;
  left: 0.3rem;
  width: 1.6rem;
  height: 0.8rem;
  border-bottom: 2px solid transparent;
  border-left: 2px solid transparent;
  content: "";
  transition: opacity 0.4s;
}
.form__input--check .check-text {
  color: #cccccc;
  transition: color 0.4s;
}
.form__input--check .check-input:checked + .check-icon {
  border-color: #ffffff;
}
.form__input--check .check-input:checked + .check-icon:after {
  opacity: 1;
  transform: rotate(-45deg);
  border-bottom: 2px solid #ffffff;
  border-left: 2px solid #ffffff;
}
.form__input--check .check-input:checked ~ .check-text {
  color: #ffffff;
}

.c-form {
  box-sizing: border-box;
  font-size: 16px;
  width: 100%;
  margin: 0 auto 80px;
  border-top: 1px solid #DCDCDC;
}
.c-form__container {
  max-width: calc(100% - 60px);
  width: 100%;
  margin: 0 auto;
  padding: 0 30px;
}
@media screen and (min-width: 1024px) {
  .c-form__container {
    max-width: 960px;
  }
}
.c-form__title {
  font-size: 21px;
  font-weight: 600;
}
.c-form__title + p {
  margin-top: 30px;
}
.c-form__listItem {
  padding: 24px 0;
  border-bottom: 1px solid #dcdcdc;
}
@media screen and (min-width: 1024px) {
  .c-form__listItem {
    display: grid;
    grid-template-columns: 1fr 2fr;
  }
}
.c-form__listItem ::placeholder {
  color: #ccc;
  font-family: Roboto;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 200%;
}
@media screen and (min-width: 1024px) {
  .c-form__listItem:has(.alert) .c-form__label {
    color: #FE2B38;
  }
}
.c-form__label {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 9px 0;
}
@media screen and (min-width: 1024px) {
  .c-form__label {
    width: 300px;
  }
}
@media screen and (max-width: 767px) {
  .c-form__label {
    font-size: 12px;
  }
}
.c-form__inputArea textarea, .c-form__inputArea input[type=text] {
  box-sizing: border-box;
  font-size: inherit;
  line-height: 1.5;
  width: 100%;
  padding: 12px;
  border-radius: 6px;
  border: 1px solid #DCDCDC;
  background: #ffffff;
  box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.1) inset;
}
.c-form__inputArea input[type=text] {
  height: 42px;
}
@media screen and (min-width: 1024px) {
  .c-form__inputArea input[type=text] {
    max-width: 450px;
  }
}
.c-form__inputArea.w100 input[type=text] {
  max-width: 100%;
}
.c-form__nameFields {
  gap: 24px;
}
@media screen and (min-width: 1024px) {
  .c-form__nameFields {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
.c-form__nameFields input[type=text] {
  width: 100%;
}
.c-form__postField input[type=text] {
  width: 200px;
  margin-right: 18px;
}
.c-form__postField .small {
  margin-right: 16px;
  display: inline-block;
  font-size: 1.3rem;
}
.c-form__addFields {
  gap: 17px;
}
@media screen and (min-width: 1024px) {
  .c-form__addFields {
    display: grid;
  }
}
@media screen and (min-width: 1024px) {
  .c-form__addFields input[type=text] {
    width: 300px;
  }
}
.c-form__addField {
  width: 100%;
}
@media screen and (min-width: 1024px) {
  .c-form__addField {
    display: flex;
    max-width: 450px;
  }
}
.c-form__addField .c-form__label {
  width: 100px;
}
.c-form__selectField .c-form__selectWrapper {
  position: relative;
  display: flex;
}
@media screen and (min-width: 1024px) {
  .c-form__selectField .c-form__selectWrapper {
    width: 200px;
  }
}
.c-form__selectField .c-form__selectWrapper select {
  width: 100%;
  height: 42px;
  padding: 0px 12px;
  border: 1px solid #DCDCDC;
  background: #ffffff;
  color: #666;
  font-size: 16px;
  font-weight: 400;
  line-height: 200%;
  appearance: none;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .c-form__selectField .c-form__selectWrapper select {
    font-size: 12px;
  }
}
.c-form__selectField .c-form__selectWrapper option {
  border: 1px solid #DCDCDC;
  background: #ffffff;
  color: #666;
}
.c-form__selectField .c-form__selectWrapper::before {
  position: absolute;
  content: "";
  top: 50%;
  right: 12px;
  margin-top: -3px;
  display: inline-block;
  width: 12px;
  height: 12px;
  border: 3px solid #FE2B38;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  transform: translateY(-50%) rotate(135deg);
  pointer-events: none;
}
.c-form__buttonGroup {
  display: flex;
  justify-content: center;
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .c-form__buttonGroup {
    flex-flow: column;
  }
}
.c-form__button--submit, .c-form__button--back {
  position: relative;
  box-sizing: border-box;
  padding: 20px 100px;
  margin-bottom: 20px;
  width: 100%;
  border: none;
  color: #ffffff;
  text-align: center;
  font-size: 16px;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 1.6px;
  transition: 0.3s;
}
@media screen and (min-width: 1024px) {
  .c-form__button--submit, .c-form__button--back {
    margin: 12px;
    width: 336px;
  }
}
.c-form__button--submit::before, .c-form__button--back::before {
  position: absolute;
  content: "";
  top: 50%;
  margin-top: -4px;
  width: 14px;
  height: 9px;
}
.c-form__button--submit:hover, .c-form__button--back:hover {
  transition: 0.3s;
  opacity: 0.7;
}
.c-form__button--submit {
  background: #FE2B38;
}
.c-form__button--submit::before {
  background: url(../../../assets/img/common/icon_arrow01.svg) no-repeat;
  right: 20px;
}
.c-form__button--back {
  background: #808080;
}
.c-form__button--back::before {
  background: url(../../../assets/img/common/icon_arrow01.svg) no-repeat;
  left: 20px;
  transform: rotate(180deg);
}
.c-form__value {
  padding: 9px 0;
  color: #000;
  font-weight: 400;
}
.c-form__alertText {
  margin-top: 4px;
  color: #FE2B38;
  font-size: 11px;
  font-weight: 700;
  line-height: 180%;
}
@media screen and (min-width: 1024px) {
  .c-form .alert .c-form__label, .c-form .alert.c-form__addField .c-form__label {
    color: #FE2B38;
  }
}
.c-form .alert input[type=text], .c-form .alert.optional input[type=text],
.c-form .alert textarea {
  border: 1px solid #FE2B38;
  background: #FFF5F6;
  color: #FE2B38;
}
.c-form .alert select {
  border: 1px solid #FE2B38;
  background: #FFF5F6;
  color: #FE2B38;
}
.c-form .c-form__listItem .c-form__label {
  color: #000000;
}
.c-form .optional .c-form__label {
  color: #000;
}
.c-form .optional input[type=text] {
  border: 1px solid #DCDCDC;
  background: #ffffff;
  box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.1) inset;
}
.c-form .required {
  margin: 2px 12px 0 0;
  padding: 2px 8px;
  gap: 10px;
  font-weight: 600;
  border-radius: 4px;
  background: #FFE1E2;
  color: #FE2B38;
  font-size: 11px;
  font-weight: 700;
  line-height: 180%;
}
@media screen and (max-width: 767px) {
  .c-form .required {
    margin: 0;
  }
}
.c-form .visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  clip: rect(0, 0, 0, 0);
  overflow: hidden;
  white-space: nowrap;
  border: 0;
}
@media screen and (max-width: 767px) {
  .c-form.confirm .c-form__nameFields {
    display: flex;
  }
}

.pagenation__list,
.pagenation .page-numbers {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.pagenation__list-item,
.pagenation .page-numbers > li {
  margin: 0.3rem;
}
.pagenation .pagenation__link--next, .pagenation .pagenation__link.next,
.pagenation .page-numbers > li > a--next, .pagenation .pagenation__link--prev, .pagenation .pagenation__link.prev,
.pagenation .page-numbers > li > a--prev, .pagenation .pagenation__link,
.pagenation .page-numbers > li > a {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1.2rem 1.6rem;
  border-radius: 6px;
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 1;
  text-align: center;
  cursor: pointer;
}
.pagenation__link,
.pagenation .page-numbers > li > a {
  background-color: #eeeeee;
  color: #222222;
}
.pagenation__link:hover, .pagenation__link:focus,
.pagenation .page-numbers > li > a:hover,
.pagenation .page-numbers > li > a:focus {
  background-color: #ffffff;
  color: #ffffff;
}
.pagenation__link--prev, .pagenation__link.prev,
.pagenation .page-numbers > li > a--prev,
.pagenation .page-numbers > li > a.prev {
  min-width: 12rem;
  background-color: #eeeeee;
  color: #222222;
}
.pagenation__link--prev:before, .pagenation__link.prev:before,
.pagenation .page-numbers > li > a--prev:before,
.pagenation .page-numbers > li > a.prev:before {
  display: inline-block;
  margin-right: 0.6rem;
  transition: transform 0.2s;
}
.pagenation__link--prev:hover, .pagenation__link--prev:focus, .pagenation__link.prev:hover, .pagenation__link.prev:focus,
.pagenation .page-numbers > li > a--prev:hover,
.pagenation .page-numbers > li > a--prev:focus,
.pagenation .page-numbers > li > a.prev:hover,
.pagenation .page-numbers > li > a.prev:focus {
  background-color: #ffffff;
  color: #ffffff;
}
.pagenation__link--prev:hover:before, .pagenation__link--prev:focus:before, .pagenation__link.prev:hover:before, .pagenation__link.prev:focus:before,
.pagenation .page-numbers > li > a--prev:hover:before,
.pagenation .page-numbers > li > a--prev:focus:before,
.pagenation .page-numbers > li > a.prev:hover:before,
.pagenation .page-numbers > li > a.prev:focus:before {
  transform: translateX(-4px);
}
.pagenation__link--next, .pagenation__link.next,
.pagenation .page-numbers > li > a--next,
.pagenation .page-numbers > li > a.next {
  min-width: 12rem;
  background-color: #eeeeee;
  color: #222222;
}
.pagenation__link--next:after, .pagenation__link.next:after,
.pagenation .page-numbers > li > a--next:after,
.pagenation .page-numbers > li > a.next:after {
  display: inline-block;
  margin-left: 0.6rem;
  transition: transform 0.2s;
}
.pagenation__link--next:hover, .pagenation__link--next:focus, .pagenation__link.next:hover, .pagenation__link.next:focus,
.pagenation .page-numbers > li > a--next:hover,
.pagenation .page-numbers > li > a--next:focus,
.pagenation .page-numbers > li > a.next:hover,
.pagenation .page-numbers > li > a.next:focus {
  background-color: #ffffff;
  color: #ffffff;
}
.pagenation__link--next:hover:after, .pagenation__link--next:focus:after, .pagenation__link.next:hover:after, .pagenation__link.next:focus:after,
.pagenation .page-numbers > li > a--next:hover:after,
.pagenation .page-numbers > li > a--next:focus:after,
.pagenation .page-numbers > li > a.next:hover:after,
.pagenation .page-numbers > li > a.next:focus:after {
  transform: translateX(4px);
}
.pagenation .pagenation__text--dots, .pagenation .pagenation__text.dots,
.pagenation .page-numbers > li > span--dots, .pagenation .pagenation__text--current, .pagenation .pagenation__text.current,
.pagenation .page-numbers > li > span--current, .pagenation .pagenation__text,
.pagenation .page-numbers > li > span {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1.2rem 1.6rem;
  border-radius: 6px;
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 1;
  text-align: center;
}
.pagenation__text,
.pagenation .page-numbers > li > span {
  background-color: #eeeeee;
  color: #222222;
}
.pagenation__text--current, .pagenation__text.current,
.pagenation .page-numbers > li > span--current,
.pagenation .page-numbers > li > span.current {
  background-color: #ffffff;
  color: #ffffff;
}
.pagenation__text--dots, .pagenation__text.dots,
.pagenation .page-numbers > li > span--dots,
.pagenation .page-numbers > li > span.dots {
  background-color: #eeeeee;
  color: #222222;
}

li {
  list-style: none;
}

a {
  text-decoration: none;
  outline: none;
  color: #222222;
}
a:hover {
  color: #676767;
}

/*--------------------------------------------------------------
# Utilities 微調整等で使用するスタイル
--------------------------------------------------------------*/
.red {
  color: #fe2b38;
}

.white {
  color: #ffffff;
}

.grey-light {
  background-color: #eeeeee;
}

.red-edging {
  -webkit-text-stroke: 1px #fe2b38;
  text-stroke: 1px #fe2b38;
  color: transparent;
}

.gray-edging {
  -webkit-text-stroke: 1px #eeeeee;
  text-stroke: 1px #eeeeee;
  color: transparent;
}/*# sourceMappingURL=style.css.map */