@charset "UTF-8";
/*
style
*/
* {
  margin: 0;
  padding: 0;
}

html, body, input, textarea, button {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 1rem;
  color: #111;
}

html {
  scroll-behavior: smooth;
}

:target {
  scroll-margin-top: 79px;
}
@media screen and (max-width: 1050px) {
  :target {
    scroll-margin-top: 50px;
  }
}

body {
  background: #fff;
  color: #111;
  line-height: 1.5;
  overflow-wrap: break-word;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 1rem;
  margin: 0;
}

a {
  color: #111;
  text-underline-position: under;
}

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

.for-tablet {
  display: none;
}
@media screen and (max-width: 1050px) {
  .for-tablet {
    display: block;
  }
}

.for-mobile {
  display: none;
}
@media screen and (max-width: 780px) {
  .for-mobile {
    display: block;
  }
}

.for-mobile-mini {
  display: none;
}
@media screen and (max-width: 359px) {
  .for-mobile-mini {
    display: block;
  }
}

.wrapper {
  position: relative;
}

@keyframes animation_fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* header */
.header {
  width: 100%;
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(16px);
  height: 79px;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 9990;
}
@media screen and (max-width: 1050px) {
  .header {
    transition: height 0.2s ease-in-out;
    height: 50px;
  }
}
@media screen and (max-width: 1050px) {
  .header:has(:checked) {
    height: 100vh;
    transition: height 0.5s ease-in-out, background-color 0.5s linear;
  }
}

.header__inner {
  max-width: 1328px;
  height: 100%;
  margin-right: auto;
  margin-left: auto;
  padding: 0 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 1050px) {
  .header__inner {
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    padding: 12.5px 24px;
    overflow-y: auto;
  }
  .header__inner::-webkit-scrollbar {
    background: rgba(0, 0, 0, 0);
    width: 8px;
    height: 8px;
  }
  .header__inner::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0);
    border-radius: 16px;
  }
}

.header__sitename-inner {
  width: 283px;
  height: 0;
  padding-top: 25px;
  overflow: hidden;
  color: transparent;
  background: url(../img/logo-black.png) no-repeat 0 50%;
  background-size: 100% auto;
}
@media screen and (max-width: 780px) {
  .header__sitename-inner {
    width: 200px;
  }
}

input[type=checkbox] {
  display: none;
}

@media screen and (max-width: 1050px) {
  .header__nav {
    display: none;
  }
}
:checked ~ .header__nav {
  display: block;
}
@media screen and (max-width: 1050px) {
  :checked ~ .header__nav {
    margin-top: 50px;
    margin-bottom: 50px;
  }
}

.header__link-list-001 {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: flex-end;
  gap: 16px;
}
@media screen and (max-width: 1260px) {
  .header__link-list-001 {
    gap: 0;
  }
}
@media screen and (max-width: 1050px) {
  .header__link-list-001 {
    flex-direction: column;
    justify-content: flex-start;
    gap: 16px;
  }
}
.header__link-list-001 li {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
@media screen and (max-width: 1050px) {
  .header__link-list-001 li {
    display: block;
    text-align: center;
  }
}
.header__link-list-001 li a {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px;
  font-size: min(0.75rem, 1vw);
  font-weight: 400;
  color: #111;
  text-decoration: none;
  opacity: 1;
}
@media screen and (hover: hover) {
  .header__link-list-001 li a {
    transition: opacity 0.5s;
  }
  .header__link-list-001 li a:hover {
    opacity: 0.6;
  }
}
@media screen and (max-width: 1260px) {
  .header__link-list-001 li a {
    gap: 5px;
  }
}
@media screen and (max-width: 1050px) {
  .header__link-list-001 li a {
    gap: 10px;
    font-size: 1rem;
  }
}
.header__link-list-001 li a:before {
  content: "";
  display: inline-block;
  width: 9px;
  height: 0;
  padding-top: 9px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%229%22%20height%3D%229%22%20viewBox%3D%220%200%209%209%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M4.50007%200C4.43701%204.38475%204.38469%204.43694%200%204.5C4.38469%204.56306%204.43694%204.61525%204.5%209C4.56306%204.61525%204.61531%204.56306%209%204.5C4.61531%204.43694%204.56313%204.38475%204.50007%200Z%22%20fill%3D%22%23111111%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 100% auto;
}
@media screen and (max-width: 1050px) {
  .header__link-list-001 li a:before {
    width: 12px;
    padding-top: 12px;
  }
}

.header-menu__toggle {
  display: none;
  width: 40px;
  height: 0;
  padding-top: 40px;
  color: transparent;
  overflow: hidden;
  cursor: pointer;
  position: fixed;
  top: 5px;
  right: 18px;
  z-index: 9999;
  background: url(../img/menu-icon.svg) no-repeat 0 0;
  background-size: 100% auto;
}
:checked ~ .header-menu__toggle {
  background-image: url(../img/close_icon.svg);
}
@media screen and (max-width: 1050px) {
  .header-menu__toggle {
    display: block;
  }
}
@media screen and (max-width: 780px) {
  .header-menu__toggle {
    top: 5px;
  }
}

/* ------------------------- */
.contents {
  margin-top: 79px;
}
@media screen and (max-width: 1050px) {
  .contents {
    margin-top: 50px;
  }
}

/* CTA */
.section__cta {
  background: #f7f7f7;
  padding: 100px 40px;
}
@media screen and (max-width: 780px) {
  .section__cta {
    padding: 50px 30px;
  }
}

.cta__content {
  background: #fff;
  max-width: 1220px;
  margin-right: auto;
  margin-left: auto;
  padding: 80px 40px;
}
@media screen and (max-width: 780px) {
  .cta__content {
    padding: 40px 30px;
  }
}

.cta__title {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 780px) {
  .cta__title {
    font-size: 6.1538461538vw;
    margin-bottom: 1.25rem;
  }
}
.cta__text-001 {
  margin-bottom: 2.5rem;
  line-height: 1.8;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .cta__text-001 {
    margin-bottom: 1.25rem;
    text-align: left;
  }
}
.cta__link {
  display: block;
}

.entry-001__button {
  text-align: center;
}

.entry-001__button-item {
  display: inline-block;
  vertical-align: top;
}
.entry-001__button-item a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  vertical-align: top;
  padding: 24px 40px;
  border-radius: 4px;
  background: #BB272D;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  line-height: 1;
  text-decoration: none;
}
@media screen and (max-width: 500px) {
  .entry-001__button-item a {
    gap: 6px;
    padding: 24px 15px 24px 20px;
  }
}
.entry-001__button-item a span {
  display: inline-block;
  text-align: left;
}
.entry-001__button-item a em {
  display: inline-block;
  font-style: normal;
}
.entry-001__button-item a:after {
  content: "";
  display: block;
  width: 35px;
  height: 11px;
  background: url(../img/arrow-001.svg) no-repeat 0 50%;
  background-size: 100% auto;
}
@media screen and (hover: hover) {
  .entry-001__button-item a {
    transition: transform 0.5s;
  }
  .entry-001__button-item a:hover {
    transform: scale(1.05);
    transform-origin: 50% 50%;
  }
}

/* ------------------------- */
/* intro */
.section__intro {
  background: #fff;
  overflow: hidden;
}

.intro__mission {
  max-width: 1440px;
  position: relative;
  overflow: hidden;
}
.intro__mission:after {
  content: "";
  display: block;
  width: 100%;
  height: 0;
  padding-top: 32.7083333333%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
}
.intro__mission.effect.on:after {
  background: url(../img/intro_mission_text-001.png) no-repeat 0 0;
  background-size: 100% auto;
}
@media screen and (max-width: 1050px) {
  .intro__mission.effect.on:after {
    background-size: 110% auto;
  }
}

.intro__mission-text {
  position: relative;
  z-index: 0;
  margin: 5px;
  height: 0;
  padding-top: 31%;
  color: transparent;
  overflow: hidden;
}
.effect.on .intro__mission-text {
  background: url(../img/img-home-image-01.jpg) no-repeat 0 0;
  background-size: cover;
}

.intro__mission-text--dummy {
  width: 100%;
  position: absolute;
  top: 23%;
  left: 2.2%;
  z-index: 5;
}
@media screen and (max-width: 1050px) {
  .intro__mission-text--dummy {
    top: 25.3%;
    left: 2.42%;
  }
}
.effect.on .intro__mission-text--dummy span {
  display: inline-block;
  vertical-align: top;
  position: relative;
  width: 8.3333333333%;
  height: 0;
  padding-top: 7.9861111111%;
  transform: skewX(-10deg);
  margin-bottom: 1.9%;
}
@media screen and (max-width: 1050px) {
  .effect.on .intro__mission-text--dummy span {
    width: 9.1666666667%;
    padding-top: 8.7847222222%;
  }
}
.effect.on .intro__mission-text--dummy span:nth-of-type(1) {
  margin-left: 2%;
}
@media screen and (max-width: 1050px) {
  .effect.on .intro__mission-text--dummy span:nth-of-type(1) {
    margin-left: 2.2%;
  }
}
.effect.on .intro__mission-text--dummy span:nth-of-type(2) {
  width: 8.125%;
}
@media screen and (max-width: 1050px) {
  .effect.on .intro__mission-text--dummy span:nth-of-type(2) {
    width: 8.9375%;
  }
}
.effect.on .intro__mission-text--dummy span::before, .effect.on .intro__mission-text--dummy span::after {
  content: "";
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.effect.on .intro__mission-text--dummy span::before {
  transform: scale(1, 1);
  animation: 0.4s ease-in-out 1 normal forwards mission_text_before;
  background-color: rgba(17, 17, 17, 0.75);
}
.effect.on .intro__mission-text--dummy span::after {
  transform: scale(1, 1);
  animation: 0.7s ease-in-out 1 normal forwards mission_text_after;
  background-color: rgba(17, 17, 17, 0.75);
}
.effect.on .intro__mission-text--dummy span:nth-of-type(1)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(1)::after {
  animation-delay: 0.1s;
}
.effect.on .intro__mission-text--dummy span:nth-of-type(2)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(2)::after {
  animation-delay: 0.2s;
}
.effect.on .intro__mission-text--dummy span:nth-of-type(3)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(3)::after {
  animation-delay: 0.3s;
}
.effect.on .intro__mission-text--dummy span:nth-of-type(4)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(4)::after {
  animation-delay: 0.4s;
}
.effect.on .intro__mission-text--dummy span:nth-of-type(5)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(5)::after {
  animation-delay: 0.5s;
}
.effect.on .intro__mission-text--dummy span:nth-of-type(6)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(6)::after {
  animation-delay: 0.6s;
}
.effect.on .intro__mission-text--dummy span:nth-of-type(7)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(7)::after {
  animation-delay: 0.7s;
}
.effect.on .intro__mission-text--dummy span:nth-of-type(8)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(8)::after {
  animation-delay: 0.8s;
}
.effect.on .intro__mission-text--dummy span:nth-of-type(9)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(9)::after {
  animation-delay: 0.9s;
}
.effect.on .intro__mission-text--dummy span:nth-of-type(10)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(10)::after {
  animation-delay: 1s;
}
.effect.on .intro__mission-text--dummy span:nth-of-type(11)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(11)::after {
  animation-delay: 1.1s;
}
.effect.on .intro__mission-text--dummy span:nth-of-type(12)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(12)::after {
  animation-delay: 1.2s;
}
.effect.on .intro__mission-text--dummy span:nth-of-type(13)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(13)::after {
  animation-delay: 1.3s;
}
.effect.on .intro__mission-text--dummy span:nth-of-type(14)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(14)::after {
  animation-delay: 1.4s;
}
.effect.on .intro__mission-text--dummy span:nth-of-type(15)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(15)::after {
  animation-delay: 1.5s;
}
.effect.on .intro__mission-text--dummy span:nth-of-type(16)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(16)::after {
  animation-delay: 1.6s;
}
.effect.on .intro__mission-text--dummy span:nth-of-type(17)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(17)::after {
  animation-delay: 1.7s;
}
.effect.on .intro__mission-text--dummy span:nth-of-type(18)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(18)::after {
  animation-delay: 1.8s;
}
.effect.on .intro__mission-text--dummy span:nth-of-type(19)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(19)::after {
  animation-delay: 1.9s;
}
.effect.on .intro__mission-text--dummy span:nth-of-type(20)::before, .effect.on .intro__mission-text--dummy span:nth-of-type(20)::after {
  animation-delay: 2s;
}

@keyframes mission_text_before {
  0% {
    transform: scale(1, 1);
    transform-origin: 100% 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 100% 100%;
  }
}
@keyframes mission_text_after {
  0% {
    transform: scale(1, 1);
    transform-origin: 100% 100%;
  }
  100% {
    transform: scale(0, 1);
    transform-origin: 100% 100%;
  }
}
.intro__content {
  padding: 0 40px 100px;
}
@media screen and (max-width: 780px) {
  .intro__content {
    padding: 0 30px 50px;
  }
}

.intro__title span {
  display: block;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (max-width: 780px) {
  .intro__title span {
    font-size: 2rem;
  }
}
@media screen and (max-width: 500px) {
  .intro__title span {
    font-size: 1.5rem;
  }
}

.intro__list-001 {
  list-style-type: none;
  margin: 0;
  padding: 0;
  margin: 40px 0 80px;
}
@media screen and (max-width: 780px) {
  .intro__list-001 {
    margin: 15px 0 40px;
  }
}
.intro__list-001 li {
  list-style-type: none;
  margin: 0;
  padding: 0;
  font-size: 2.25rem;
  font-weight: 700;
  color: #fff;
  line-height: 2;
}
.intro__list-001 li + li {
  margin-top: 0.6666666667rem;
}
@media screen and (max-width: 1100px) {
  .intro__list-001 li:nth-of-type(3) {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
}
@media screen and (max-width: 780px) {
  .intro__list-001 li {
    font-size: clamp(1.5rem, 0.607rem + 2.86vw, 2rem);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
}
@media screen and (max-width: 500px) {
  .intro__list-001 li {
    font-size: clamp(1rem, -0.286rem + 5.71vw, 1.5rem);
  }
}
@media screen and (max-width: 359px) {
  .intro__list-001 li {
    font-size: clamp(0.875rem, -0.125rem + 5vw, 1rem);
  }
}

.intro__list-item-text-001 {
  background: #111;
  display: inline-block;
  vertical-align: top;
  overflow: hidden;
  white-space: nowrap;
}

.intro__list-item-text-002 {
  background: #111;
  display: inline-block;
  vertical-align: top;
  overflow: hidden;
  white-space: nowrap;
}
.intro__list-item-text-002 em {
  display: block;
  font-style: normal;
  padding-right: 16px;
  padding-left: 16px;
  margin-left: -800px;
}
.effect.on .intro__list-item-text-002 em {
  animation: 1s ease-in-out 0s 1 normal forwards intro_list_item;
}
@media screen and (max-width: 1100px) {
  li:nth-of-type(3) .intro__list-item-text-002 em {
    padding-left: 25px;
  }
}
@media screen and (max-width: 780px) {
  .intro__list-item-text-002 em {
    padding-left: 25px;
  }
}
@media screen and (max-width: 1100px) {
  li:nth-of-type(3) .intro__list-item-text-002 {
    margin-top: -6px;
  }
}
@media screen and (max-width: 780px) {
  .intro__list-item-text-002 {
    margin-top: -6px;
  }
}

.intro__list-001 li:nth-of-type(1).effect.on .intro__list-item-text-002 em {
  animation-delay: 0.1s;
}
.intro__list-001 li:nth-of-type(2).effect.on .intro__list-item-text-002 em {
  animation-delay: 0.2s;
}
.intro__list-001 li:nth-of-type(3).effect.on .intro__list-item-text-002 em {
  animation-delay: 0.3s;
}
.intro__list-001 li:nth-of-type(4).effect.on .intro__list-item-text-002 em {
  animation-delay: 0.4s;
}
.intro__list-001 li:nth-of-type(5).effect.on .intro__list-item-text-002 em {
  animation-delay: 0.5s;
}

@keyframes intro_list_item {
  0% {
    margin-left: -800px;
  }
  100% {
    margin-left: -15px;
  }
}
/* ------------------------- */
.section__title {
  padding: 80px 0 0;
  margin-bottom: 60px;
}
.section__title span {
  display: block;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 780px) {
  .section__title span {
    font-size: clamp(2rem, 1.143rem + 3.81vw, 3rem);
  }
}

.section__content {
  margin-top: 60px;
  padding-bottom: 80px;
}

/* ------------------------- */
/* 募集背景 */
.section__background {
  background: #f7f7f7;
  padding: 100px 40px;
}
@media screen and (max-width: 780px) {
  .section__background {
    padding: 50px 30px;
  }
}
@media screen and (max-width: 780px) {
  .section__background .section__title {
    padding-top: 40px;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 780px) {
  .section__background .section__content {
    padding-bottom: 40px;
    margin-top: 30px;
  }
}

.section__background-inner {
  background: #fff;
  max-width: 1220px;
  margin-right: auto;
  margin-left: auto;
}

.background_text p {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 2.2;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .background_text p {
    font-size: clamp(0.75rem, 0.321rem + 1.9vw, 1.25rem);
  }
}
@media screen and (max-width: 359px) {
  .background_text p {
    font-size: clamp(0.625rem, -0.375rem + 5vw, 0.75rem);
  }
}
.background_text p + p {
  margin-top: 2.75rem;
}
@media screen and (max-width: 780px) {
  .background_text p + p {
    margin-top: 1.5rem;
  }
}
.background_text .highlight {
  display: inline-block;
  position: relative;
}
.background_text .highlight:before {
  content: "";
  display: block;
  background: #111;
  position: absolute;
  top: 50%;
  left: 0;
  width: 0%;
  height: 1.75rem;
  transform: translateY(-50%);
}
.background_text .highlight strong {
  font-weight: 700;
  position: relative;
  z-index: 10;
  color: #fff;
  mix-blend-mode: difference;
}
.background_text .highlight.effect.on:before {
  animation: 0.5s ease-in-out 0.5s 1 normal forwards background_text_highlight;
}

@keyframes background_text_highlight {
  0% {
    width: 0%;
  }
  100% {
    width: 100%;
  }
}
/* ------------------------- */
.area-001 {
  background: url(../img/area_bg-001.jpg) repeat 50% 0;
  background-size: 1440px auto;
}

@keyframes heading_underline_001 {
  0% {
    width: 0%;
  }
  100% {
    width: 100%;
  }
}
/* ------------------------- */
/* 成長機会 */
.section__chance {
  padding: 0 40px;
}
@media screen and (max-width: 780px) {
  .section__chance {
    padding: 0 30px;
  }
}
@media screen and (max-width: 780px) {
  .section__chance .section__title {
    padding-top: 60px;
    margin-bottom: 30px;
  }
}
.section__chance .section__content {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  max-width: 1080px;
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 20px;
}
@media screen and (max-width: 780px) {
  .section__chance .section__content {
    flex-direction: column;
    margin-top: 30px;
  }
}

.chance__item {
  width: calc((100% - 24px) / 2);
  background: url(../img/img-home-image-01.jpg) no-repeat 50% 50%;
  background-size: cover;
  padding: 4px;
}
@media screen and (max-width: 780px) {
  .chance__item {
    width: 100%;
  }
}

.chance__item-inner {
  background: #fff;
  padding: 28px;
  height: 100%;
}
@media screen and (max-width: 500px) {
  .chance__item-inner {
    padding: 24px;
  }
}

.chance__item-title {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.8;
  text-align: center;
  position: relative;
  margin-bottom: 24px;
}
.chance__item-title span {
  display: block;
  padding-bottom: 24px;
}
.chance__item-title:after {
  content: "";
  display: block;
  width: 0%;
  height: 0;
  padding-top: 2px;
  background: #111;
  border-radius: 999px;
}
.effect.on .chance__item-title:after {
  animation: 0.5s ease-in-out 0.5s 1 normal forwards heading_underline_001;
}

.chance__item-caption p {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
  margin-bottom: 24px;
}
@media screen and (max-width: 780px) {
  .chance__item-caption p {
    font-size: clamp(1rem, 0.769rem + 0.99vw, 1.25rem);
    margin-bottom: 16px;
  }
}

.chance__item-content p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2.2;
  letter-spacing: 0.04em;
  text-align: left;
}
.chance__item-content p strong {
  font-weight: 700;
}

/* ------------------------- */
/* キャリア・報酬 */
.section__career {
  padding: 0 40px;
}
@media screen and (max-width: 780px) {
  .section__career {
    padding: 0 30px;
  }
}
@media screen and (max-width: 780px) {
  .section__career .section__title {
    padding-top: 50px;
    margin-bottom: 30px;
  }
}
.section__career .section__content {
  max-width: 1080px;
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 20px;
}
@media screen and (max-width: 780px) {
  .section__career .section__content {
    margin-top: 30px;
  }
}

.career__item {
  width: 100%;
  background: url(../img/img-home-image-01.jpg) no-repeat 50% 50%;
  background-size: cover;
  padding: 4px;
}

.career__item + .career__item {
  margin-top: 24px;
}

.career__item-inner {
  background: #fff;
  padding: 28px;
  height: 100%;
}
@media screen and (max-width: 500px) {
  .career__item-inner {
    padding: 24px;
  }
}

.career__item-caption {
  text-align: left;
  margin-bottom: 6px;
}
.career__item-caption p {
  display: inline-block;
  background: #111;
  border-radius: 999px;
  padding: 7px 16px 9px;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  line-height: 1;
}

.career__item-title {
  font-size: 1.54375rem;
  font-weight: 700;
  line-height: 1.4;
  text-align: left;
  position: relative;
  margin-bottom: 24px;
}
@media screen and (max-width: 780px) {
  .career__item-title {
    margin-bottom: 16px;
  }
}
.career__item-title span {
  display: block;
  padding-bottom: 6px;
}
.career__item-title:after {
  content: "";
  display: block;
  width: 0%;
  height: 0;
  padding-top: 2px;
  background: #111;
  border-radius: 999px;
}
.effect.on .career__item-title:after {
  animation: 0.5s ease-in-out 0.5s 1 normal forwards heading_underline_001;
}

.career__item-content p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2.2;
  letter-spacing: 0.04em;
  text-align: left;
}
.career__item-content p strong {
  font-weight: 700;
}
.career__item-content p.career__item-content-note {
  background: #f7f7f7;
  padding: 12px 16px;
  margin-top: 24px;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .career__item-content p.career__item-content-note {
    margin-top: 16px;
  }
}

/* ------------------------- */
/* 求める人材像 */
.section__talent {
  padding: 0 40px;
}
@media screen and (max-width: 780px) {
  .section__talent {
    padding: 0 30px;
  }
}
@media screen and (max-width: 780px) {
  .section__talent .section__title {
    padding-top: 50px;
    margin-bottom: 30px;
  }
}
.section__talent .section__content {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  row-gap: 48px;
  max-width: 1080px;
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 100px;
}
@media screen and (max-width: 780px) {
  .section__talent .section__content {
    padding-bottom: 50px;
    margin-top: 40px;
  }
}

.talent__subtitle {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.04em;
  text-align: center;
  margin-top: 4px;
}

.talent__item {
  width: calc((100% - 64px) / 3);
  background: url(../img/img-home-image-01.jpg) no-repeat 50% 50%;
  background-size: cover;
  padding: 4px;
}
@media screen and (max-width: 1050px) {
  .talent__item {
    width: calc((100% - 32px) / 2);
  }
}
@media screen and (max-width: 780px) {
  .talent__item {
    width: 100%;
  }
}

.talent__item-inner {
  background: #fff;
  padding: 28px 20px 20px;
  height: 100%;
  position: relative;
}

.talent__item-caption {
  position: absolute;
  top: 0;
  left: 0;
  transform: translateY(calc(-50% - 2px));
  width: 100%;
  text-align: center;
}
.talent__item-caption p {
  display: inline-block;
  background: #111;
  border-radius: 999px;
  padding: 7px 16px 9px;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  line-height: 1;
}

.talent__item-title {
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
  position: relative;
  margin-bottom: 24px;
}
@media screen and (max-width: 500px) {
  .talent__item-title {
    font-size: min(5.2vw, 1.375rem);
    margin-bottom: 16px;
  }
}
.talent__item-title span {
  display: block;
  padding-bottom: 24px;
}
@media screen and (max-width: 500px) {
  .talent__item-title span {
    padding-bottom: 16px;
  }
}
.talent__item-title:after {
  content: "";
  display: block;
  width: 0%;
  height: 0;
  padding-top: 2px;
  background: #111;
  border-radius: 999px;
}
.effect.on .talent__item-title:after {
  animation: 0.5s ease-in-out 0.5s 1 normal forwards heading_underline_001;
}

.talent__item-content {
  padding: 0 8px;
}
@media screen and (max-width: 780px) {
  .talent__item-content {
    padding: 0;
  }
}
.talent__item-content p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.04em;
  text-align: left;
}
.talent__item-content p strong {
  font-weight: 700;
}

/* ------------------------- */
/* 事業概要 */
@media screen and (max-width: 780px) {
  .section__business .section__title {
    padding-top: 60px;
    margin-bottom: 30px;
  }
}
.section__business .section__content {
  padding-bottom: 0;
}
@media screen and (max-width: 780px) {
  .section__business .section__content {
    margin-top: 30px;
  }
}

.business__subtitle span {
  display: block;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  letter-spacing: 0.04em;
}

.business__box-001 {
  display: flex;
  justify-content: center;
  margin-top: 67px;
}
@media screen and (max-width: 780px) {
  .business__box-001 {
    flex-direction: column;
    align-items: center;
    margin-top: 30px;
    padding-right: 6px;
    padding-left: 6px;
  }
}

.business__vision,
.business__mission {
  padding: 24px;
}
.business__vision .business__subtitle,
.business__mission .business__subtitle {
  margin-bottom: -0.25rem;
}
.business__vision .business__subtitle span,
.business__mission .business__subtitle span {
  text-align: left;
  line-height: 1;
}

.business__vision-content,
.business__mission-content {
  padding: 12px 24px;
  background: #111;
}
.business__vision-content p,
.business__mission-content p {
  display: block;
  font-size: 1.375rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.4;
}
.business__vision-content p span,
.business__mission-content p span {
  display: inline-block;
}

/* ------------------------- */
/* Client */
.business__client {
  margin: 100px 0;
  padding: 0 40px;
}
@media screen and (max-width: 780px) {
  .business__client {
    margin: 50px 0;
    padding: 0 30px;
  }
}

.business__client-list {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  max-width: 1220px;
  margin: 40px auto;
}

.business__client-list-item {
  width: calc((100% - 20px) / 2);
  background-color: #f7f7f7;
  padding: 8px 20px 20px;
}
@media screen and (max-width: 500px) {
  .business__client-list-item {
    width: 100%;
  }
}
.business__client-list-item ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.business__client-list-item ul li {
  list-style-type: none;
  margin: 0;
  padding: 0;
  width: calc((100% - 20px) / 3);
}

.business__client-list-title {
  margin-bottom: 10px;
}
.business__client-list-title span {
  display: block;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.8;
  text-align: center;
  letter-spacing: 0.04em;
}

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

.business__client-more-item {
  display: inline-block;
  vertical-align: top;
}
.business__client-more-item a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  vertical-align: top;
  padding: 24px 40px;
  border-radius: 4px;
  background: #111;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  line-height: 1;
  text-decoration: none;
}
@media screen and (max-width: 500px) {
  .business__client-more-item a {
    gap: 6px;
    padding: 24px 15px 24px 20px;
  }
}
.business__client-more-item a:after {
  content: "";
  display: block;
  width: 35px;
  height: 11px;
  background: url(../img/arrow-001.svg) no-repeat 0 50%;
  background-size: 100% auto;
}
@media screen and (hover: hover) {
  .business__client-more-item a {
    transition: transform 0.5s;
  }
  .business__client-more-item a:hover {
    transform: scale(1.05);
    transform-origin: 50% 50%;
  }
}

/* ------------------------- */
/* Service */
.business__service {
  margin: 100px 0;
}
@media screen and (max-width: 780px) {
  .business__service {
    margin: 80px 0;
  }
}

.business__service-caption {
  display: block;
  margin: 72px 0;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.8;
  text-align: center;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 780px) {
  .business__service-caption {
    margin: 26px 0 36px;
  }
}
.business__service-caption strong {
  display: inline-block;
  background: #111;
  padding: 8px;
  font-size: 1.875rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.8;
  margin-top: 1.25rem;
}
@media screen and (max-width: 780px) {
  .business__service-caption strong {
    font-size: 1.25rem;
    padding-right: 0;
    padding-left: 0;
    margin-top: 0.5rem;
  }
}

.business__service-image {
  max-width: 1160px;
  margin-right: auto;
  margin-left: auto;
}

.business__service-image-inner {
  width: 100%;
  height: 0;
  padding-top: 50.6896551724%;
  background: url(../img/business_service_img-001.png) no-repeat 0 0;
  background-size: 100% auto;
  position: relative;
}

.business__service-image-title {
  position: absolute;
  top: 0;
  left: 0;
  width: 24.4907407407%;
  height: 0;
  padding-top: 13.3796296296%;
  margin-top: 20.6018518519%;
  margin-left: 37.8240740741%;
  overflow: hidden;
  color: transparent;
  opacity: 0;
}

.business__service-image-item {
  position: absolute;
  top: 0;
  left: 0;
}
.business__service-image-item.item-001 {
  margin-top: 4.4827586207%;
  margin-left: 15%;
}
.business__service-image-item.item-002 {
  margin-top: 4.4827586207%;
  margin-left: 65.775862069%;
}
.business__service-image-item.item-002 .business__service-image-item-text {
  margin-left: min(3.6206896552vw, 42px);
}
.business__service-image-item.item-003 {
  margin-top: 31.2931034483%;
  margin-left: 15%;
}
.business__service-image-item.item-004 {
  margin-top: 31.2931034483%;
  margin-left: 65.3448275862%;
}
.business__service-image-item.item-004 .business__service-image-item-title {
  margin-left: min(4.5689655172vw, 53px);
}

.business__service-image-item-title {
  margin-bottom: min(0.8620689655vw, 10px);
}
.business__service-image-item-title span {
  display: block;
  font-size: min(2.0689655172vw, 24px);
  font-weight: 900;
  line-height: 1.3;
}

.business__service-image-item-text {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.business__service-image-item-text li {
  list-style-type: none;
  margin: 0;
  padding: 0;
  font-size: min(1.3793103448vw, 16px);
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.02em;
}
.business__service-image-item-text li:before {
  content: "- ";
}

/* ------------------------- */
/* Cases */
.business__cases {
  display: none !important;
  padding: 0 40px;
}
@media screen and (max-width: 780px) {
  .business__cases {
    padding: 0 30px;
  }
}

.business__cases-list {
  display: flex;
  justify-content: center;
  gap: 24px;
  margin: 40px auto 32px;
}
@media screen and (max-width: 780px) {
  .business__cases-list {
    flex-direction: column;
    margin-top: 32px;
  }
}

.business__cases-list-item {
  width: 100%;
  max-width: 320px;
}
@media screen and (max-width: 780px) {
  .business__cases-list-item {
    max-width: unset;
  }
}
.business__cases-list-item a {
  display: block;
  background: #f7f7f7;
  padding: 16px;
  height: 100%;
  color: #111;
  text-decoration: none;
}
@media screen and (hover: hover) {
  .business__cases-list-item a {
    opacity: 1;
    transition: opacity 0.5s;
  }
  .business__cases-list-item a:hover {
    opacity: 0.6;
  }
}

.business__cases-list-item-img {
  width: 100%;
  height: 0;
  padding-top: 69.4444444444%;
  overflow: hidden;
  position: relative;
  margin-bottom: 8px;
}
.business__cases-list-item-img img {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(1);
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.business__cases-list-item-date {
  margin: 4px 0;
}
.business__cases-list-item-date p {
  font-size: 0.625rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.04em;
}

.business__cases-list-item-title span {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
}

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

.business__cases-more-item {
  display: inline-block;
  vertical-align: top;
}
.business__cases-more-item a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  vertical-align: top;
  padding: 24px 40px;
  border-radius: 4px;
  background: #111;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  line-height: 1;
  text-decoration: none;
}
@media screen and (max-width: 500px) {
  .business__cases-more-item a {
    gap: 6px;
    padding: 24px 15px 24px 20px;
  }
}
.business__cases-more-item a:after {
  content: "";
  display: block;
  width: 35px;
  height: 11px;
  background: url(../img/arrow-001.svg) no-repeat 0 50%;
  background-size: 100% auto;
}
@media screen and (hover: hover) {
  .business__cases-more-item a {
    transition: transform 0.5s;
  }
  .business__cases-more-item a:hover {
    transform: scale(1.05);
    transform-origin: 50% 50%;
  }
}

/* ------------------------- */
/* Team */
.business__team {
  margin: 100px 0;
  padding: 0 40px;
}
@media screen and (max-width: 780px) {
  .business__team {
    margin: 80px 0;
    padding: 0 30px;
  }
}

.business__team-caption {
  margin-top: 8px;
}
.business__team-caption p {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.04em;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .business__team-caption p {
    font-size: 1.75rem;
  }
}
.business__team-caption p span {
  display: inline-block;
}

.business__team-tag {
  max-width: 800px;
  margin: 40px auto;
}
.business__team-tag ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 40px;
  row-gap: 20px;
}
@media screen and (max-width: 780px) {
  .business__team-tag ul {
    gap: 10px;
    row-gap: 10px;
  }
}
.business__team-tag ul li {
  list-style-type: none;
  margin: 0;
  padding: 0;
  background: #f7f7f7;
  padding: 8px 12px;
  border-radius: 8px;
}
@media screen and (max-width: 780px) {
  .business__team-tag ul li {
    padding-top: 5px;
  }
}
.business__team-tag ul li span {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 780px) {
  .business__team-tag ul li span {
    font-size: 0.75rem;
  }
}

.business__team-more {
  display: flex;
  justify-content: center;
  gap: 24px;
  max-width: 980px;
  margin: 40px auto;
}
@media screen and (max-width: 780px) {
  .business__team-more {
    flex-direction: column;
    align-items: center;
  }
}

.business__team-more-item {
  flex: 1;
  display: block;
}
.business__team-more-item a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  vertical-align: top;
  padding: 24px 40px;
  border-radius: 4px;
  background: #111;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  line-height: 1;
  text-decoration: none;
}
@media screen and (max-width: 500px) {
  .business__team-more-item a {
    gap: 6px;
    padding: 24px 15px 24px 20px;
  }
}
.business__team-more-item a em {
  display: inline-block;
  font-style: normal;
}
.business__team-more-item a:after {
  content: "";
  display: block;
  width: 35px;
  height: 11px;
  background: url(../img/arrow-001.svg) no-repeat 0 50%;
  background-size: 100% auto;
}
@media screen and (hover: hover) {
  .business__team-more-item a {
    transition: transform 0.5s;
  }
  .business__team-more-item a:hover {
    transform: scale(1.05);
    transform-origin: 50% 50%;
  }
}
@media screen and (max-width: 780px) {
  .business__team-more-item a {
    display: inline-flex;
  }
}

.business__team-office {
  max-width: 980px;
  margin: 40px auto;
}
.business__team-office ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
  gap: 24px;
  margin: 40px auto 100px;
}
@media screen and (max-width: 780px) {
  .business__team-office ul {
    flex-direction: column;
    margin-bottom: 50px;
  }
}
.business__team-office ul li {
  list-style-type: none;
  margin: 0;
  padding: 0;
  flex: 1;
  border: 2px solid #111;
  padding: 16px 16px 0;
}

.business__team-office-item-inner {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.business__team-office-name {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.6;
  text-align: center;
  margin-bottom: 1rem;
}

.business__team-office-address {
  flex: 1;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
  text-align: center;
}
@media screen and (max-width: 1050px) {
  .business__team-office-address {
    text-align: left;
  }
}

.business__team-office-map {
  transform: translateY(calc(50% + 1px));
  width: 100%;
  text-align: center;
}
.business__team-office-map a {
  display: inline-flex;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  gap: 4px;
  vertical-align: top;
  padding: 4px 24px;
  border-radius: 4px;
  background: #111;
  font-size: 0.875rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.8;
  letter-spacing: 0.04em;
  text-decoration: none;
}
.business__team-office-map a:after {
  content: "";
  display: block;
  width: 14px;
  height: 14px;
  background: url(../img/arrow-002.svg) no-repeat 0 50%;
  background-size: 100% auto;
}
@media screen and (hover: hover) {
  .business__team-office-map a {
    transition: transform 0.5s;
  }
  .business__team-office-map a:hover {
    transform: scale(1.05);
    transform-origin: 50% 50%;
  }
}

/* ------------------------- */
/* Feature */
.business__feature {
  margin: 100px 0;
  padding: 0 40px;
}
@media screen and (max-width: 780px) {
  .business__feature {
    margin: 95px 0 50px;
    padding: 0 30px;
  }
}

.business__feature-list {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  max-width: 1220px;
  margin: 40px auto;
}
@media screen and (max-width: 780px) {
  .business__feature-list {
    margin-top: 32px;
  }
}

.business__feature-list-item {
  width: calc((100% - 24px) / 2);
  border: 2px solid #111;
  padding: 34px 24px 32px;
}
@media screen and (max-width: 780px) {
  .business__feature-list-item {
    width: 100%;
  }
}

.business__feature-list-title {
  margin-bottom: 13px;
  text-align: center;
}
.business__feature-list-title span {
  display: inline-block;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.05em;
  padding-bottom: 13px;
}
@media screen and (max-width: 1050px) {
  .business__feature-list-title span {
    font-size: clamp(1.5rem, 0.056rem + 2.96vw, 2rem);
  }
}
@media screen and (max-width: 780px) {
  .business__feature-list-title span {
    font-size: 1.5rem;
  }
}
.business__feature-list-title:after {
  content: "";
  display: block;
  width: 100%;
  height: 0;
  padding-top: 2px;
  background: #111;
  border-radius: 999px;
}

.business__feature-list-text p {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.04em;
  text-align: center;
}
@media screen and (max-width: 1050px) {
  .business__feature-list-text p {
    font-size: 1rem;
    text-align: left;
  }
}
.business__feature-list-text p strong {
  font-weight: 700;
}
@media screen and (max-width: 1050px) {
  .business__feature-list-text p br {
    display: none;
  }
}

/* ------------------------- */
/* 人事ブログ */
.section__blog {
  padding: 20px 40px 0;
}
@media screen and (max-width: 780px) {
  .section__blog {
    padding: 0 30px 0;
  }
}

.blog__list {
  display: flex;
  justify-content: center;
  gap: 24px;
  margin: 40px auto 32px;
}
@media screen and (max-width: 780px) {
  .blog__list {
    flex-direction: column;
    margin-top: 32px;
  }
}

.blog__list-item {
  width: 100%;
  max-width: 320px;
}
@media screen and (max-width: 780px) {
  .blog__list-item {
    max-width: unset;
  }
}
.blog__list-item a {
  display: block;
  background: #f7f7f7;
  padding: 16px;
  height: 100%;
  color: #111;
  text-decoration: none;
}
@media screen and (hover: hover) {
  .blog__list-item a {
    opacity: 1;
    transition: opacity 0.5s;
  }
  .blog__list-item a:hover {
    opacity: 0.6;
  }
}

.blog__list-item-img {
  width: 100%;
  height: 0;
  padding-top: 69.4444444444%;
  overflow: hidden;
  position: relative;
  margin-bottom: 8px;
}
.blog__list-item-img img {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(1);
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.blog__list-item-date {
  margin: 4px 0;
}
.blog__list-item-date p {
  font-size: 0.625rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.04em;
}

.blog__list-item-title span {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
}

.blog__more {
  text-align: center;
}

.blog__more-item {
  display: inline-block;
  vertical-align: top;
}
.blog__more-item a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  vertical-align: top;
  padding: 24px 40px;
  border-radius: 4px;
  background: #111;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  line-height: 1;
  text-decoration: none;
}
@media screen and (max-width: 500px) {
  .blog__more-item a {
    gap: 6px;
    padding: 24px 15px 24px 20px;
  }
}
.blog__more-item a:after {
  content: "";
  display: block;
  width: 35px;
  height: 11px;
  background: url(../img/arrow-001.svg) no-repeat 0 50%;
  background-size: 100% auto;
}
@media screen and (hover: hover) {
  .blog__more-item a {
    transition: transform 0.5s;
  }
  .blog__more-item a:hover {
    transform: scale(1.05);
    transform-origin: 50% 50%;
  }
}

/* ------------------------- */
/* ReGACY Journal */
.section__journal {
  padding: 20px 40px 0;
}
@media screen and (max-width: 780px) {
  .section__journal {
    padding: 0 30px 0;
  }
}

.journal__list {
  display: flex;
  justify-content: flex-start;
  gap: 24px;
  margin: 40px auto 32px;
  width: 100%;
  max-width: 1008px;
}
@media screen and (max-width: 780px) {
  .journal__list {
    flex-direction: column;
    margin-top: 32px;
  }
}

.journal__list-item {
  width: 100%;
  max-width: 320px;
}
@media screen and (max-width: 780px) {
  .journal__list-item {
    max-width: unset;
  }
}
.journal__list-item a {
  display: block;
  background: #f7f7f7;
  padding: 16px;
  height: 100%;
  color: #111;
  text-decoration: none;
}
@media screen and (hover: hover) {
  .journal__list-item a {
    opacity: 1;
    transition: opacity 0.5s;
  }
  .journal__list-item a:hover {
    opacity: 0.6;
  }
}

.journal__list-item-img {
  width: 100%;
  height: 0;
  padding-top: 69.4444444444%;
  overflow: hidden;
  position: relative;
  margin-bottom: 8px;
}
.journal__list-item-img img {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(1);
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.journal__list-item-date {
  margin: 4px 0;
}
.journal__list-item-date p {
  font-size: 0.625rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.04em;
}

.journal__list-item-title span {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
}

.journal__more {
  text-align: center;
}

.journal__more-item {
  display: inline-block;
  vertical-align: top;
}
.journal__more-item a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  vertical-align: top;
  padding: 24px 40px;
  border-radius: 4px;
  background: #111;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  line-height: 1;
  text-decoration: none;
}
@media screen and (max-width: 500px) {
  .journal__more-item a {
    gap: 6px;
    padding: 24px 15px 24px 20px;
  }
}
.journal__more-item a:after {
  content: "";
  display: block;
  width: 35px;
  height: 11px;
  background: url(../img/arrow-001.svg) no-repeat 0 50%;
  background-size: 100% auto;
}
@media screen and (hover: hover) {
  .journal__more-item a {
    transition: transform 0.5s;
  }
  .journal__more-item a:hover {
    transform: scale(1.05);
    transform-origin: 50% 50%;
  }
}

/* ------------------------- */
/* 組織の特徴 */ /* 数値で見るReGACY */
.section__organization {
  padding: 100px 40px 80px;
  overflow: hidden;
}
@media screen and (max-width: 780px) {
  .section__organization {
    padding: 80px 30px 50px;
  }
}
.section__blog + .section__organization,
.section__journal + .section__organization {
  padding-top: 0;
}
@media screen and (max-width: 780px) {
  .section__blog + .section__organization,
  .section__journal + .section__organization {
    padding-top: 0;
  }
}
@media screen and (max-width: 780px) {
  .section__organization .section__title {
    padding-top: 0;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 780px) {
  .section__organization .section__content {
    margin-top: 30px;
    padding-bottom: 0;
  }
}

.organization__subtitle span {
  display: block;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 780px) {
  .organization__subtitle span {
    font-size: clamp(1.5rem, 0.643rem + 3.81vw, 2.5rem);
  }
}

/* ------------------------- */
/* 社員について */
.organization__data {
  margin-bottom: 160px;
}
@media screen and (max-width: 780px) {
  .organization__data {
    margin-bottom: 60px;
  }
}

.organization__data-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 40px;
  max-width: 1220px;
  margin: 64px auto 0;
}
@media screen and (max-width: 780px) {
  .organization__data-list {
    margin-top: 40px;
  }
}

.organization__data-list-item {
  background-color: #f7f7f7;
  width: calc((100% - 40px) / 2);
}
.organization__data-list-item:nth-of-type(1) {
  width: calc((100% - 40px) * 2 / 3);
}
@media screen and (max-width: 1300px) {
  .organization__data-list-item:nth-of-type(1) {
    width: 100%;
  }
}

.organization__data-list-item:nth-of-type(2) {
  width: calc((100% - 40px) * 1 / 3);
}
@media screen and (max-width: 780px) {
  .organization__data-list-item:nth-of-type(2) {
    width: 100%;
  }
}

.organization__data-list-item:nth-of-type(3) {
  width: calc((100% - 40px) / 2);
}
@media screen and (max-width: 1300px) {
  .organization__data-list-item:nth-of-type(3) {
    width: calc((100% - 40px) * 2 / 3);
  }
}
@media screen and (max-width: 780px) {
  .organization__data-list-item:nth-of-type(3) {
    width: 100%;
  }
}

.organization__data-list-item:nth-of-type(4) {
  width: calc((100% - 40px) / 2);
}
@media screen and (max-width: 1300px) {
  .organization__data-list-item:nth-of-type(4) {
    width: 100%;
  }
}

.organization__data-list-item ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.organization__data-list-item ul li {
  list-style-type: none;
  margin: 0;
  padding: 0;
  width: calc((100% - 20px) / 3);
}

.organization__data-list-title {
  padding-top: 24px;
}
.organization__data-list-title span {
  display: block;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.8;
  text-align: center;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 780px) {
  .organization__data-list-title span {
    font-size: clamp(1.5rem, 1.071rem + 1.9vw, 2rem);
  }
}

.organization__data-list-subtitle {
  display: block;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.8;
  text-align: center;
  letter-spacing: 0.04em;
}

.organization__data-list-content-note {
  display: block;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: right;
  width: 100%;
}

.organization__data-countup {
  font-size: 6.25rem;
  font-family: "Noto Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  font-weight: 700;
  line-height: 1;
  overflow: hidden;
}

.animation_countup_item {
  display: inline-block;
}

.organization__data-text .unit {
  font-size: 3.125rem;
  font-weight: 700;
  line-height: 1;
}

.organization__data-list-item.item-001 .organization__data-list-content-wrapper {
  display: flex;
  justify-content: center;
  gap: 40px;
}
@media screen and (max-width: 780px) {
  .organization__data-list-item.item-001 .organization__data-list-content-wrapper {
    flex-direction: column;
    gap: 0;
  }
}

.organization__data-list-item.item-001 .organization__data-list-content {
  position: relative;
  margin-bottom: 24px;
}
@media screen and (max-width: 840px) {
  .organization__data-list-item.item-001 .organization__data-list-content {
    zoom: 0.9;
  }
}
@media screen and (max-width: 500px) {
  .organization__data-list-item.item-001 .organization__data-list-content {
    zoom: 0.8;
  }
}
@media screen and (max-width: 359px) {
  .organization__data-list-item.item-001 .organization__data-list-content {
    zoom: 0.7;
  }
}
.organization__data-list-item.item-001 h5 {
  opacity: 0;
  position: absolute;
  top: 97px;
  left: 0;
  z-index: 100;
  width: 100%;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.8;
  text-align: center;
  letter-spacing: 0.04em;
}
.organization__data-list-item.item-001 .organization__data-list-content.effect.on h5 {
  animation: 0.5s ease-in-out 0.05s 1 normal forwards animation_fadein;
}

.organization__data-list-item.item-001 .organization__data-graph {
  position: relative;
  z-index: 0;
  width: 334px;
  margin: 0.5rem auto 0;
}
.organization__data-list-item.item-001 .organization__data-graph canvas {
  width: 334px;
  height: 334px;
}
.organization__data-list-item.item-001 .organization__data-graph-label {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
}
.organization__data-list-item.item-001 .organization__data-graph-label dl {
  position: relative;
  width: 100%;
  height: 100%;
}
.organization__data-list-item.item-001 .organization__data-graph-label dt,
.organization__data-list-item.item-001 .organization__data-graph-label dd {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  font-size: 1.25rem;
  font-weight: 700;
  color: #fff;
  line-height: 1;
}
.organization__data-list-item.item-001 .organization__data-graph-label .item-001-graph-label-001 {
  margin-top: 70px;
  margin-left: 102px;
}
.organization__data-list-item.item-001 .organization__data-graph-label .item-001-graph-label-002 {
  margin-top: 70px;
  margin-left: -102px;
}
.organization__data-list-item.item-001 .organization__data-graph-label .item-001-graph-value-001 {
  margin-top: 98px;
  margin-left: 120px;
}
.organization__data-list-item.item-001 .organization__data-graph-label .item-001-graph-value-002 {
  margin-top: 98px;
  margin-left: -120px;
}
.organization__data-list-item.item-001 .organization__data-list-content.effect .organization__data-graph-label {
  opacity: 0;
}
.organization__data-list-item.item-001 .organization__data-list-content.effect.on .organization__data-graph-label {
  animation: 0.5s ease-in-out 2s 1 normal forwards animation_fadein;
}
.organization__data-list-item.item-001 .organization__data-text {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  margin-top: 16px;
}
.organization__data-list-item.item-001 .organization__data-text p {
  margin-bottom: 0.125rem;
}
.organization__data-list-item.item-001 .organization__data-list-content.effect.on .organization__data-text {
  animation: 0.5s ease-in-out 0.05s 1 normal forwards animation_fadein;
}

.organization__data-list-item.item-002 .organization__data-list-content {
  text-align: center;
  margin: 7px 0 40px;
}
.organization__data-list-item.item-002 .organization__data-text {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  opacity: 0;
}
@media screen and (max-width: 780px) {
  .organization__data-list-item.item-002 .organization__data-text {
    zoom: 0.8;
  }
}
@media screen and (max-width: 359px) {
  .organization__data-list-item.item-002 .organization__data-text {
    zoom: 0.7;
  }
}
.organization__data-list-item.item-002 .organization__data-text h5 {
  display: block;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.8;
  text-align: left;
  letter-spacing: 0.04em;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}
.organization__data-list-item.item-002 .organization__data-text .organization__data-list-content-note {
  margin-top: 0.375rem;
  margin-bottom: 0.5625rem;
}
.organization__data-list-item.item-002 .organization__data-list-content.effect.on .organization__data-text {
  animation: 0.5s ease-in-out 0.05s 1 normal forwards animation_fadein;
}

.organization__data-list-item.item-002 .organization__data-text p + h5 {
  margin-top: 1.25rem;
}

.organization__data-list-item.item-003 .organization__data-text {
  text-align: center;
  opacity: 0;
}
.organization__data-list-item.item-003 .organization__data-text p {
  white-space: nowrap;
}
@media screen and (max-width: 780px) {
  .organization__data-list-item.item-003 .organization__data-text .organization__data-countup {
    letter-spacing: -0.025em;
  }
}
@media screen and (max-width: 780px) {
  .organization__data-list-item.item-003 .organization__data-text {
    zoom: 0.8;
  }
}
@media screen and (max-width: 359px) {
  .organization__data-list-item.item-003 .organization__data-text {
    zoom: 0.7;
  }
}
.organization__data-list-item.item-003 .organization__data-list-content.effect.on .organization__data-text {
  animation: 0.5s ease-in-out 0.05s 1 normal forwards animation_fadein;
}
.organization__data-list-item.item-003 .organization__data-img {
  max-width: 332px;
  margin: 0 auto;
  padding: 6px 24px 24px;
}

.organization__data-list-item.item-004 {
  background-image: url(../img/organization_data_item-004_img.svg);
  background-repeat: no-repeat;
  background-position: 50% 100%;
  background-size: 380px auto;
}
@media screen and (max-width: 780px) {
  .organization__data-list-item.item-004 {
    background-size: 300px auto;
  }
}
.organization__data-list-item.item-004 .organization__data-text {
  margin-top: 2rem;
  padding-bottom: 1.25rem;
  opacity: 0;
}
@media screen and (max-width: 780px) {
  .organization__data-list-item.item-004 .organization__data-text {
    zoom: 0.8;
  }
}
@media screen and (max-width: 359px) {
  .organization__data-list-item.item-004 .organization__data-text {
    zoom: 0.7;
  }
}
.organization__data-list-item.item-004 .organization__data-text dl {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: 16px;
}
@media screen and (max-width: 780px) {
  .organization__data-list-item.item-004 .organization__data-text dl {
    gap: 8px;
    zoom: 0.8;
  }
}
.organization__data-list-item.item-004 .organization__data-text dl + dl {
  margin-top: 2.1875rem;
}
.organization__data-list-item.item-004 .organization__data-text dt {
  display: flex;
  align-items: flex-end;
  padding-bottom: 0.25rem;
}
.organization__data-list-item.item-004 .organization__data-text .month-number {
  display: inline-block;
  vertical-align: top;
  font-size: 3.5rem;
  font-family: "Noto Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  font-weight: 700;
  line-height: 1;
}
.organization__data-list-item.item-004 .organization__data-text .month-unit {
  display: inline-block;
  vertical-align: top;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
  padding-bottom: 0.375rem;
}
.organization__data-list-item.item-004 .organization__data-text dd {
  text-align: right;
}
.organization__data-list-item.item-004 .organization__data-text dd .unit {
  display: inline-block;
  margin-left: 0.25rem;
}
.organization__data-list-item.item-004 .organization__data-list-content.effect.on .organization__data-text {
  animation: 0.5s ease-in-out 0.05s 1 normal forwards animation_fadein;
}

.organization__data-list-item.item-005 .organization__data-list-content {
  position: relative;
  margin-top: 26px;
  margin-bottom: 24px;
}
@media screen and (max-width: 840px) {
  .organization__data-list-item.item-005 .organization__data-list-content {
    zoom: 0.9;
  }
}
@media screen and (max-width: 500px) {
  .organization__data-list-item.item-005 .organization__data-list-content {
    zoom: 0.8;
  }
}
@media screen and (max-width: 359px) {
  .organization__data-list-item.item-005 .organization__data-list-content {
    zoom: 0.7;
  }
}
.organization__data-list-item.item-005 .organization__data-graph {
  position: relative;
  z-index: 0;
  width: 240px;
  margin: 0.5rem auto 0;
}
.organization__data-list-item.item-005 .organization__data-graph canvas {
  width: 240px;
  height: 240px;
}
.organization__data-list-item.item-005 .organization__data-text {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 240px;
}
.organization__data-list-item.item-005 .organization__data-text dl {
  position: relative;
  width: 100%;
  height: 100%;
}
.organization__data-list-item.item-005 .organization__data-text dt,
.organization__data-list-item.item-005 .organization__data-text dd {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  white-space: nowrap;
}
.organization__data-list-item.item-005 .organization__data-text dt {
  display: block;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
}
.organization__data-list-item.item-005 .organization__data-text dd {
  color: #fff;
}
.organization__data-list-item.item-005 .organization__data-text dd strong {
  font-size: 3.125rem;
  font-family: "Noto Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  font-weight: 700;
  line-height: 1;
  overflow: hidden;
}
.organization__data-list-item.item-005 .organization__data-text .unit {
  font-size: 1rem;
}
.organization__data-list-item.item-005 .organization__data-text .item-005-graph-label-001 {
  margin-top: -89px;
  margin-left: 119px;
}
.organization__data-list-item.item-005 .organization__data-text .item-005-graph-value-001 {
  margin-top: -39px;
  margin-left: 58px;
}
.organization__data-list-item.item-005 .organization__data-text .item-005-graph-label-002 {
  margin-top: 77px;
  margin-left: 132px;
}
.organization__data-list-item.item-005 .organization__data-text .item-005-graph-value-002 {
  margin-top: 63px;
  margin-left: 27px;
}
.organization__data-list-item.item-005 .organization__data-text .item-005-graph-label-003 {
  margin-top: -55px;
  margin-left: -142px;
}
.organization__data-list-item.item-005 .organization__data-text .item-005-graph-value-003 {
  margin-top: 4px;
  margin-left: -64px;
}
.organization__data-list-item.item-005 .organization__data-text .item-005-graph-label-004 {
  margin-top: -128px;
  margin-left: -64px;
}
.organization__data-list-item.item-005 .organization__data-text .item-005-graph-value-004 {
  margin-top: -70px;
  margin-left: -38px;
}
.organization__data-list-item.item-005 .organization__data-list-content.effect .organization__data-text {
  opacity: 0;
}
.organization__data-list-item.item-005 .organization__data-list-content.effect.on .organization__data-text {
  animation: 0.5s ease-in-out 2s 1 normal forwards animation_fadein;
}
.organization__data-list-item.item-005 .organization__data-list-content-note {
  margin-top: 0.75rem;
  padding-right: 24px;
}

/* ------------------------- */
/* 働き方・福利厚生 */
.organization__benefits {
  margin: 100px 0 0;
}
@media screen and (max-width: 780px) {
  .organization__benefits {
    margin-top: 75px;
  }
}

.organization__benefits-list {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  max-width: 1220px;
  margin: 80px auto 0;
}
@media screen and (max-width: 780px) {
  .organization__benefits-list {
    margin-top: 40px;
  }
}

.organization__benefits-list-item {
  background-color: #f7f7f7;
  width: calc((100% - 24px) / 2);
  padding: 26px 20px 20px;
}
@media screen and (max-width: 780px) {
  .organization__benefits-list-item {
    width: 100%;
  }
}

.organization__benefits-list-title {
  margin-bottom: 10px;
  text-align: left;
}
.organization__benefits-list-title span {
  display: inline-block;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 780px) {
  .organization__benefits-list-title span {
    font-size: 1.5rem;
  }
}

.organization__benefits-list-text p {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.04em;
  text-align: left;
}
@media screen and (max-width: 780px) {
  .organization__benefits-list-text p {
    font-size: 1rem;
  }
}
.organization__benefits-list-text p strong {
  font-weight: 700;
}

/* ------------------------- */
/* footer */
.footer {
  background: #111;
  color: #fff;
  padding: 40px 0;
}

.footer__inner {
  max-width: 1200px;
  height: 100%;
  margin-right: auto;
  margin-left: auto;
  padding: 0 40px;
}
@media screen and (max-width: 780px) {
  .footer__inner {
    padding-right: 30px;
    padding-left: 30px;
  }
}

.footer__content-001 {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 1300px) {
  .footer__content-001 {
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
    gap: 20px;
  }
}

.footer__sitename-inner {
  width: 283px;
  height: 0;
  padding-top: 25px;
  overflow: hidden;
  color: transparent;
  background: url(../img/logo-white.png) no-repeat 0 0;
  background-size: 100% auto;
}
@media screen and (max-width: 359px) {
  .footer__sitename-inner {
    width: 200px;
  }
}

.footer__link-list-001 {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: flex-end;
  gap: 16px;
}
@media screen and (max-width: 1050px) {
  .footer__link-list-001 {
    flex-direction: column;
    justify-content: flex-start;
    gap: 0;
  }
}
.footer__link-list-001 li {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
@media screen and (max-width: 1050px) {
  .footer__link-list-001 li {
    display: block;
    text-align: center;
  }
}
.footer__link-list-001 li a {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px;
  font-size: 0.75rem;
  font-weight: 400;
  color: #fff;
  text-decoration: none;
  opacity: 1;
}
@media screen and (hover: hover) {
  .footer__link-list-001 li a {
    transition: opacity 0.5s;
  }
  .footer__link-list-001 li a:hover {
    opacity: 0.6;
  }
}
.footer__link-list-001 li a:before {
  content: "";
  display: inline-block;
  width: 9px;
  height: 0;
  padding-top: 9px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%229%22%20height%3D%229%22%20viewBox%3D%220%200%209%209%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M4.50007%200C4.43701%204.38475%204.38469%204.43694%200%204.5C4.38469%204.56306%204.43694%204.61525%204.5%209C4.56306%204.61525%204.61531%204.56306%209%204.5C4.61531%204.43694%204.56313%204.38475%204.50007%200Z%22%20fill%3D%22%23FFFFFF%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 100% auto;
}

.footer__content-002 {
  border-top: 1px solid rgba(255, 255, 255, 0.24);
  margin-top: 24px;
  padding-top: 35px;
}
@media screen and (max-width: 780px) {
  .footer__content-002 {
    padding-top: 24px;
  }
}
.footer__content-002 ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 24px;
}
@media screen and (max-width: 780px) {
  .footer__content-002 ul {
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
    padding: 0 24px;
  }
}
.footer__content-002 ul li {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.footer__content-002 ul li a {
  font-size: 0.75rem;
  font-weight: 300;
  color: #fff;
  line-height: 1;
  letter-spacing: 0.04em;
  text-decoration: none;
  opacity: 1;
}
@media screen and (hover: hover) {
  .footer__content-002 ul li a {
    transition: opacity 0.5s;
  }
  .footer__content-002 ul li a:hover {
    opacity: 0.6;
  }
}

.footer__copyright {
  font-size: 0.5rem;
  font-weight: 300;
  color: #fff;
  line-height: 2.2;
  letter-spacing: 0.1em;
  position: fixed;
  left: 0;
  bottom: 0;
  transform: translate(0, -300px) rotate(90deg);
  transform-origin: 0 100%;
  text-align: right;
  width: 300px;
  padding: 0.5rem;
  mix-blend-mode: difference;
}

/* ------------------------- */
.entry-fixed {
  width: 200px;
  height: 200px;
  border-radius: 999px;
  position: fixed;
  right: 0;
  bottom: 35px;
  z-index: 999;
  transform: translate(110px, 0);
}
@media screen and (max-width: 780px) {
  .entry-fixed {
    width: 150px;
    height: 150px;
    transform: translate(82px, 0);
  }
}
@media screen and (max-width: 500px) {
  .entry-fixed {
    width: 100px;
    height: 100px;
    transform: translate(55px, 0);
  }
}
.entry-fixed a {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  height: 100%;
  background: #BB272D;
  border-radius: 999px;
  position: relative;
  padding-left: 35px;
  transform: scale(1);
  transform-origin: 50% 50%;
  box-shadow: 0 0 24px rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 780px) {
  .entry-fixed a {
    padding-left: 26px;
    box-shadow: 0 0 18px rgba(0, 0, 0, 0.2);
  }
}
@media screen and (max-width: 500px) {
  .entry-fixed a {
    padding-left: 17px;
    box-shadow: 0 0 12px rgba(0, 0, 0, 0.2);
  }
}
.entry-fixed a span {
  display: block;
  width: 35px;
  height: 0;
  padding-top: 134px;
  background: url(../img/entry-fixed_button_text-001.png) no-repeat 0 0;
  background-size: 100% auto;
  overflow: hidden;
}
@media screen and (max-width: 780px) {
  .entry-fixed a span {
    width: 26px;
    padding-top: 100px;
  }
}
@media screen and (max-width: 500px) {
  .entry-fixed a span {
    width: 18px;
    padding-top: 67px;
  }
}
@media screen and (hover: hover) {
  .entry-fixed a {
    transition: transform 0.5s;
  }
  .entry-fixed a:hover {
    transform: scale(1.1);
    transform-origin: 50% 50%;
  }
}